From 8bdef03667bb52f16d9fa1fba3efd3f82cf4a576 Mon Sep 17 00:00:00 2001 From: avl Date: Tue, 8 Sep 2009 21:06:07 +0300 Subject: [PATCH] misc --- ipf/orm/utils.php | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/ipf/orm/utils.php b/ipf/orm/utils.php index 371f5be..72c2a1a 100644 --- a/ipf/orm/utils.php +++ b/ipf/orm/utils.php @@ -124,6 +124,25 @@ class IPF_ORM_Utils { return implode("\n",$r); } - + static function setOrd($obj, $field_name='ord', $where=null, $params=null){ + $res = null; + if ($where){ + $res = IPF_ORM_Query::create() + ->select("max($field_name) as max_ord") + ->from($obj->getTable()->getClassnameToReturn()) + ->where($where, $params) + ->execute(); + } + else{ + $res = IPF_ORM_Query::create() + ->select("max($field_name) as max_ord") + ->from($obj->getTable()->getClassnameToReturn()) + ->execute(); + } + if (isset($res[0]['max_ord'])) + $obj->$field_name = (int)$res[0]->max_ord + 1; + else + $obj->$field_name = 1; + } } -- 2.49.0