r1456 + done with getRSUforRack()
authorDenis Ovsienko <infrastation@yandex.ru>
Sat, 29 Dec 2007 12:35:11 +0000 (12:35 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Sat, 29 Dec 2007 12:35:11 +0000 (12:35 +0000)
inc/functions.php

index 2866b8567f9eaca7ab9afef3d33313f308aed560..92e28afe3155ee391b01fdda19ef42b19b740beb 100644 (file)
@@ -1063,16 +1063,17 @@ function buildVServiceName ($vsinfo = NULL)
 // (T + W + U) / (height * 3 - A)
 function getRSUforRack ($rack_id = 0)
 {
-       if ($rack_id = 0)
+       if ($rack_id == 0)
        {
                showError ('Invalid argument', __FUNCTION__);
                return NULL;
        }
-       $rackdata = getRackData ($rack_id);
-       $n_T = $n_W = $n_U = $n_A = 0;
-echo '<pre>';
-print_r ($rackData);
-echo '</pre>';
+       $data = getRackData ($rack_id);
+       $counter = array ('A' => 0, 'U' => 0, 'T' => 0, 'W' => 0);
+       for ($unit_no = $data['height']; $unit_no > 0; $unit_no--)
+               for ($locidx = 0; $locidx < 3; $locidx++)
+                       $counter[$data[$unit_no][$locidx]['state']]++;
+       return ($counter['T'] + $counter['W'] + $counter['U']) / ($data['height'] * 3 - $counter['A']);
 }
 
 ?>