r2759 - listCells(): push whole cell to autotag generator
authorDenis Ovsienko <infrastation@yandex.ru>
Sat, 16 May 2009 15:08:36 +0000 (15:08 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Sat, 16 May 2009 15:08:36 +0000 (15:08 +0000)
 - spotEntity(): idem
 - generateEntityAutoTags(): save on getObjectInfo() and getResidentRacksData() calls

inc/database.php
inc/functions.php

index 14c3829..f0c554b 100644 (file)
@@ -312,6 +312,7 @@ function listCells ($realm, $parent_id = 0)
                switch ($realm)
                {
                case 'ipv4net':
+               case 'object':
                        $ret[$entity_id]['atags'] = generateEntityAutoTags ($realm, $ret[$entity_id]);
                        break;
                default:
@@ -387,6 +388,7 @@ function spotEntity ($realm, $id)
        switch ($realm)
        {
        case 'ipv4net':
+       case 'object':
                $ret['atags'] = generateEntityAutoTags ($realm, $ret);
                break;
        default:
index d7da3d1..48b2e89 100644 (file)
@@ -969,14 +969,14 @@ function generateEntityAutoTags ($entity_realm = '', $bypass_value = '')
                        $ret[] = array ('tag' => '$rackid_' . $bypass_value);
                        $ret[] = array ('tag' => '$any_rack');
                        break;
-               case 'object':
-                       $oinfo = getObjectInfo ($bypass_value, FALSE);
-                       $ret[] = array ('tag' => '$id_' . $bypass_value);
+               case 'object': // during transition bypass is already the whole structure
+                       $oinfo = $bypass_value;
+                       $ret[] = array ('tag' => '$id_' . $oinfo['id']);
                        $ret[] = array ('tag' => '$typeid_' . $oinfo['objtype_id']);
                        $ret[] = array ('tag' => '$any_object');
                        if (validTagName ('$cn_' . $oinfo['name']))
                                $ret[] = array ('tag' => '$cn_' . $oinfo['name']);
-                       if (!count (getResidentRacksData ($bypass_value, FALSE)))
+                       if (!strlen ($oinfo['rack_id']))
                                $ret[] = array ('tag' => '$unmounted');
                        break;
                case 'ipv4net': // during transition bypass is already the whole structure