r1326 + added object stats
authorDenis Ovsienko <infrastation@yandex.ru>
Wed, 28 Nov 2007 20:08:14 +0000 (20:08 +0000)
committerDenis Ovsienko <infrastation@yandex.ru>
Wed, 28 Nov 2007 20:08:14 +0000 (20:08 +0000)
inc/database.php
inc/interface.php

index c5478e7b2af2bcd0aa07ba6554fb65e00126d2c5..bd7f3ada577c764d4a1b2ec11c7ef10b7447969c 100644 (file)
@@ -1356,14 +1356,14 @@ function getDictStats ()
        $query =
                "select chapter_no, chapter_name, count(dict_key) as wc from " .
                "Chapter natural left join Dictionary group by chapter_no";
-       $result = $dbxlink->query ($query);
-       if ($result == NULL)
+       $result1 = $dbxlink->query ($query);
+       if ($result1 == NULL)
        {
-               showError ('SQL query failed in getDictStats()');
+               showError ('SQL query #1 failed in getDictStats()');
                return NULL;
        }
        $tc = $tw = $uc = $uw = 0;
-       while ($row = $result->fetch (PDO::FETCH_ASSOC))
+       while ($row = $result1->fetch (PDO::FETCH_ASSOC))
        {
                $tc++;
                $tw += $row['wc'];;
@@ -1372,12 +1372,34 @@ function getDictStats ()
                $uc++;
                $uw += $row['wc'];;
        }
-       $result->closeCursor();
+       $result1->closeCursor();
+       $query = "select count(attr_id) as attrc from RackObject as ro left join " .
+               "AttributeValue as av on ro.id = av.object_id group by ro.id";
+       $result2 = $dbxlink->query ($query);
+       if ($result2 == NULL)
+       {
+               showError ('SQL query #2 failed in getDictStats()');
+               return NULL;
+       }
+       $to = $ta = $so = 0;
+       while ($row = $result2->fetch (PDO::FETCH_ASSOC))
+       {
+               $to++;
+               if ($row['attrc'] != 0)
+               {
+                       $so++;
+                       $ta += $row['attrc'];
+               }
+       }
+       $result2->closeCursor();
        $ret = array();
        $ret['Total chapters in dictionary'] = $tc;
        $ret['Total words in dictionary'] = $tw;
        $ret['User chapters'] = $uc;
        $ret['Words in user chapters'] = $uw;
+       $ret['Total objects'] = $to;
+       $ret['Objects with stickers'] = $so;
+       $ret['Total stickers attached']  = $ta;
        return $ret;
 }
 
index 9995ce215a18f17e436c4d49d8d587cf29731308..00d7fc8addfa6c5987d3b2189775bebc10cc9456 100644 (file)
@@ -2873,7 +2873,7 @@ function renderReportSummary ()
 {
        echo "<table width='100%'>\n";
        echo "<tr><td class=pcleft>\n";
-       startPortlet ("Dictionary stats");
+       startPortlet ("Dictionary/objects stats");
        echo "<table>\n";
        foreach (getDictStats() as $header => $data)
        {