Revision: 341 http://opencsw.svn.sourceforge.net/opencsw/?rev=341&view=rev Author: wbonnet Date: 2011-02-27 21:24:28 +0000 (Sun, 27 Feb 2011)
Log Message: ----------- Add uwatch statistics Modified Paths: -------------- web/wordpresscsw/tools/statistics/db-common.php Added Paths: ----------- web/wordpresscsw/tools/statistics/qaUwatchErrors.php Modified: web/wordpresscsw/tools/statistics/db-common.php =================================================================== --- web/wordpresscsw/tools/statistics/db-common.php 2011-02-27 16:53:31 UTC (rev 340) +++ web/wordpresscsw/tools/statistics/db-common.php 2011-02-27 21:24:28 UTC (rev 341) @@ -306,5 +306,36 @@ return $statCreationUpdate ; } + + // ----------------------------------------------------------------------------------------------------------------------- + // + // Get the number of uwatch errors for the last 12 rolling months + // + // ----------------------------------------------------------------------------------------------------------------------- + function getUwatchErrorsOverLastYear() { + + // Initialize the variables + $statUwatch = array(); // array of data that will be returned to caller + $statIndex = 0; // current index + + for ($i = 0 ; $i < 52 ; $i ++) { + $statUwatch[$i][0] = 0; + $statUwatch[$i][1] = 2; + $statUwatch[$i][2] = 2011; + } + + // Define the query used to retrieve the packages from the database + $sqlQuery = "select STU_UWATCH_ERROR_COUNT, STU_MONTH, STU_YEAR from QA_STATS_UWATCH order by ID_STU desc limit 0,52;" ; + + // Execute the query to retrieve the row to update + $this->execQuery($sqlQuery); + + // Check if there is a result + while ($row = mysql_fetch_array($this->result)) { + $statUwatch[$statIndex++] = $row; // Yes there is a record, thus copy it to the array + } + + return $statUwatch ; + } } ?> Added: web/wordpresscsw/tools/statistics/qaUwatchErrors.php =================================================================== --- web/wordpresscsw/tools/statistics/qaUwatchErrors.php (rev 0) +++ web/wordpresscsw/tools/statistics/qaUwatchErrors.php 2011-02-27 21:24:28 UTC (rev 341) @@ -0,0 +1,94 @@ +<?php + + // Includes the graphics library + require_once "Artichow/LinePlot.class.php"; + + // Include the database parameters + require("db-common.php"); + + // Defines the function to call for label output + function setMonth($value) { + global $stats, $labelHashMap; + + date_default_timezone_set('Europe/Paris'); + $str = date('M', mktime(0,0,0, $stats[51 - $value][1], 1)) . " '"; + $str .= date('y', mktime(0,0,0,0,1, $stats[51 - $value][2] + 1)); + + if (array_key_exists( $str, $labelHashMap)) { + return ""; + } else { + $labelHashMap["$str"] = "1"; + return $str; + } + } + + function setNumber($value) { + return round($value); + } + + function labelFormat($value) { + return $value; + } + + // Initialize the array hashmap + $labelHashMap = array() ; + + // Initialization of the graphics + $graph = new Graph(800, 480); + $graph->setAntiAliasing(FALSE); + + $group = new PlotGroup; + $group->grid->setType(Line::DASHED); + + $group->setPadding(40, NULL, 20, NULL); + + $group->axis->left->setLabelNumber(8); + $group->axis->left->setLabelPrecision(1); + $group->axis->left->setTickStyle(Tick::OUT); + + // Statistics array population + $statPackage = array(); // Initialize the number of packages array + + // Create the DAO object + $statDAO = new mysqlDAO(); + + // Connect to database + $statDAO->connect(); + + // Retrieve the statistics from the database + $stats = $statDAO->getUwatchErrorsOverLastYear(); + + // Disconnect from database + $statDAO->disconnect(); + + for ($idxCounter = 51 ; $idxCounter >= 0 ; $idxCounter--) { // Loop used to copy data + $statPackage[$idxCounter] = $stats[51 - $idxCounter][0]; // into the creation array + } + + $plot = new LinePlot($statPackage); + + $plot->label->setFont(new Tuffy(7)); + $plot->label->setPadding(1, 1, 1, 1); + $plot->label->setCallbackFunction("labelFormat"); + $plot->label->setBackgroundColor( + new Color(227, 223, 241, 15) + ); + $plot->setColor(new Red()); + $plot->setFillColor(new LightRed(80)); + + $plot->mark->setType(Mark::CIRCLE); + $plot->mark->setFill(new MidRed); + $plot->mark->setSize(6); + + $group->legend->add($plot, "Number of uWatch errors", Legend::MARK); + $group->legend->setPosition(0.35, 0.15); + $group->add($plot); + + $group->axis->bottom->label->setCallbackFunction('setMonth'); + $group->axis->left->label->setCallbackFunction('setNumber'); + + $graph->add($group); + + $graph->draw(); + +?> Property changes on: web/wordpresscsw/tools/statistics/qaUwatchErrors.php ___________________________________________________________________ Added: svn:executable + * This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. _______________________________________________ devel mailing list devel@lists.opencsw.org https://lists.opencsw.org/mailman/listinfo/devel