]> git.andy128k.dev Git - ipf-legacy-orm.git/commitdiff
misc
authoravl <alex.litovchenko@gmail.com>
Tue, 8 Sep 2009 18:06:07 +0000 (21:06 +0300)
committeravl <alex.litovchenko@gmail.com>
Tue, 8 Sep 2009 18:06:07 +0000 (21:06 +0300)
ipf/orm/utils.php

index 371f5bea67beb4195a6053a57a629f37864c5ea6..72c2a1a9af546d2a7a613df125526618d7923aaa 100644 (file)
@@ -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;
+    }
 }