[cxtest-cvs] Peter Nociar : Fixed broken product-error-ratio page

Jozef Stefanka jstefanka at codeweavers.com
Thu May 15 09:40:57 CDT 2008


Module: cxtest
Branch: master
Commit: 62a7b55f6fc3b3315c83d5eb74c074c3b2c920e8
URL:    http://foghorn.codeweavers.com/git/cxtest/cxtest.git/?a=commit;h=62a7b55f6fc3b3315c83d5eb74c074c3b2c920e8

Author: Peter Nociar <peter.nociar at ifne.eu>
Date:   Thu May 15 16:37:31 2008 +0200

Fixed broken product-error-ratio page

Some additional fixing cause the first patch broke some other pages

---

 web/product-error-ratio.php |   34 ++++++++++++++++------------------
 1 files changed, 16 insertions(+), 18 deletions(-)

diff --git a/web/product-error-ratio.php b/web/product-error-ratio.php
index 3aa8272..e19145e 100644
--- a/web/product-error-ratio.php
+++ b/web/product-error-ratio.php
@@ -38,10 +38,11 @@
       $record = mysql_fetch_array($result);
       $product_name=$record['name'];
       $product_ver_mask = getProductVerMask($product_name);
+      $product_ver_first_char_pos = strlen($product_ver_mask) - $default_num_of_product_ver + 1;
    }
 
    $product_ver_from = date('y',$time_from).date('m',$time_from).date('d',$time_from);
-   $product_ver_to   = date('y',$time_to).date('m',$time_to).date('d',$time_to);;
+   $product_ver_to   = date('y',$time_to).date('m',$time_to).date('d',$time_to);
    $product_from = getProductName($product_name, $product_ver_from);
    $product_to   = getProductName($product_name, $product_ver_to);
 
@@ -50,7 +51,8 @@
       $product_ver_to = $_GET['product_ver'];
       $product_from = getProductName($product_name, $_GET['product_ver']);
       $product_to   = getProductName($product_name, $_GET['product_ver']);
-      $time_from=mktime(0,0,0,substr($_GET['product_ver'],2,2),substr($_GET['product_ver'],4,2),substr($_GET['product_ver'],0,2));
+      $product_date_from_ver = substr($_GET['product_ver'],$product_ver_first_char_pos,$default_num_of_product_ver);
+      $time_from=mktime(0,0,0,substr($product_date_from_ver,2,2),substr($product_date_from_ver,4,2),substr($product_date_from_ver,0,2));
       $time_to = $time_from;
    }
 
@@ -204,12 +206,12 @@
                       package_to_product.id_product = '.$id_product.'
                       AND result.id_product = '.$id_product.'
                       AND product_ver LIKE "'.(empty($product_ver_mask) ? "%" : str_replace("V", "_", $product_ver_mask)) .'"
-                      AND SUBSTRING(product_ver,1,'.$default_num_of_product_ver.') >= '.$product_ver_from.'
-                      AND SUBSTRING(product_ver,1,'.$default_num_of_product_ver.') <= '.$product_ver_to.'
+                      AND product_ver >= '.$product_ver_from.'
+                      AND product_ver <= '.$product_ver_to.'
                       AND package.report = 1
                       AND package.type_ = "'.$type.'"
-                      AND (package.supp_from IS NULL OR UNIX_TIMESTAMP(package.supp_from) <= SUBSTRING(product_ver,1,'.$default_num_of_product_ver.'))
-                      AND (package.supp_to IS NULL OR UNIX_TIMESTAMP(package.supp_to) >= SUBSTRING(product_ver,1,'.$default_num_of_product_ver.'))';
+                      AND (package.supp_from IS NULL OR UNIX_TIMESTAMP(package.supp_from) <= SUBSTRING(product_ver,'.$product_ver_first_char_pos.','.$default_num_of_product_ver.'))
+                      AND (package.supp_to IS NULL OR UNIX_TIMESTAMP(package.supp_to) >= SUBSTRING(product_ver,'.$product_ver_first_char_pos.','.$default_num_of_product_ver.'))';
 //                      AND result.status_ = "FAIL" AND failure.type_ = "'.$failure_type.'"';
          // package select
          $sql='
@@ -434,8 +436,8 @@
                       id_product = '.$id_product.'
                       AND status_ <> "UNABLE"
                       AND product_ver LIKE "'.(empty($product_ver_mask) ? "%" : str_replace("V", "_", $product_ver_mask)) .'"
-                      AND SUBSTRING(product_ver,1,'.$default_num_of_product_ver.') >= '.$product_ver_from.'
-                      AND SUBSTRING(product_ver,1,'.$default_num_of_product_ver.') <= '.$product_ver_to.$q_packages;
+                      AND SUBSTRING(product_ver,'.$product_ver_first_char_pos.','.$default_num_of_product_ver.') >= '.$product_ver_from.'
+                      AND SUBSTRING(product_ver,'.$product_ver_first_char_pos.','.$default_num_of_product_ver.') <= '.$product_ver_to.$q_packages;
          // package select
          $sql='
                SELECT
@@ -658,8 +660,8 @@
                       id_product = '.$id_product.'
                       AND status_ <> "UNABLE"
                       AND product_ver LIKE "'.(empty($product_ver_mask) ? "%" : str_replace("V", "_", $product_ver_mask)) .'"
-                      AND SUBSTRING(product_ver,1,'.$default_num_of_product_ver.') >= '.$product_ver_from.'
-                      AND SUBSTRING(product_ver,1,'.$default_num_of_product_ver.') <= '.$product_ver_to.$q_packages;
+                      AND product_ver >= '.$product_ver_from.'
+                      AND product_ver <= '.$product_ver_to.$q_packages;
          // package select
          $sql='
                SELECT
@@ -960,16 +962,11 @@
    printf('Point mouse cursor to <span style="color: red;">*</span> mark to receive explanation of exact column meaning<br>');
    printf('Numbers do not include Japan versions of products (i.e. Word 2003 Japanese) and games (i.e. World of Warcraft)<br><br>');
 
-   $product_ver_first_char_pos = strlen($product_ver_mask) - $default_num_of_product_ver + 1;
-
-   if($product_ver_first_char_pos < 1)
-   {
-      $product_ver_first_char_pos = 1;
-   }
    $sql='
 	SELECT
 		id_result,
-		SUBSTRING(product_ver,'.$product_ver_first_char_pos.','.$default_num_of_product_ver.') AS product_ver,
+/*		SUBSTRING(product_ver,'.$product_ver_first_char_pos.','.$default_num_of_product_ver.') AS product_ver, */
+                product_ver AS product_ver,
 		COUNT(DISTINCT(IF(package.report=1 AND result.status_ = "FAIL" AND package.type_ = "INSTALL" AND failure.type_ = "Product",package.id_package,NULL))) AS no_fail_install,
 		COUNT(DISTINCT(IF(package.report=1 AND result.status_ = "FAIL" AND package.type_ = "TEST" AND failure.type_ = "Product",package.id_package,NULL))) AS no_fail_test,
                 COUNT(DISTINCT(IF(package.report=1 AND result.status_ = "FAIL" AND package.type_ = "INSTALL" AND failure.type_ = "CxTest",package.id_package,NULL))) AS no_fail_install_cxtest,
@@ -1005,6 +1002,7 @@
    $background="#ffffff";
    while ($record=mysql_fetch_array($results)) {
       unset($packages);
+      $product_date_from_ver = substr($record['product_ver'],$product_ver_first_char_pos,$default_num_of_product_ver);
       $ppp=split(",",$record['installs']);
       //echo '<br>INSTALLER : '.count($ppp);
       for ($i=0; $i<count($ppp); $i++) {
@@ -1024,7 +1022,7 @@
          $packages[$ppp[$i]]++;
       }
       //echo '<br>';
-      $product_time=mktime(0,0,0,substr($record['product_ver'],2,2),substr($record['product_ver'],4,2),substr($record['product_ver'],0,2));
+      $product_time=mktime(0,0,0,substr($product_date_from_ver,2,2),substr($product_date_from_ver,4,2),substr($product_date_from_ver,0,2));
       // get # of supported INSTALL and TEST
       $sql='
            SELECT




More information about the cxtest-cvs mailing list