Changeset 1733 for trunk/admin/stats.php


Ignore:
Timestamp:
Jan 18, 2007, 10:05:39 AM (17 years ago)
Author:
plg
Message:

Bug fixed: infinite loop in history statistics summary when no data to
display.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/admin/stats.php

    r1729 r1733  
    438438}
    439439
    440 if (!isset($min_x) and !isset($max_x))
     440if (!isset($min_x) and !isset($max_x) and count($datas) > 0)
    441441{
    442442  $min_x = min(array_keys($datas));
     
    444444}
    445445
    446 for ($i = $min_x; $i <= $max_x; $i++)
    447 {
    448   if (!isset($datas[$i]))
    449   {
    450     $datas[$i] = 0;
    451   }
    452 
    453   $url = null;
    454 
    455   if (isset($page['day']))
    456   {
    457     $value = $i.' '.l10n('hour');
    458   }
    459   else if (isset($page['month']))
    460   {
    461     $url =
    462       PHPWG_ROOT_PATH.'admin.php'
    463       .'?page=stats'
    464       .'&amp;year='.$page['year']
    465       .'&amp;month='.$page['month']
    466       .'&amp;day='.$i
    467       ;
    468 
    469     $time = mktime(12, 0, 0, $page['month'], $i, $page['year']);
     446if (count($datas) > 0)
     447{
     448  for ($i = $min_x; $i <= $max_x; $i++)
     449  {
     450    if (!isset($datas[$i]))
     451    {
     452      $datas[$i] = 0;
     453    }
     454 
     455    $url = null;
     456 
     457    if (isset($page['day']))
     458    {
     459      $value = $i.' '.l10n('hour');
     460    }
     461    else if (isset($page['month']))
     462    {
     463      $url =
     464        PHPWG_ROOT_PATH.'admin.php'
     465        .'?page=stats'
     466        .'&amp;year='.$page['year']
     467        .'&amp;month='.$page['month']
     468        .'&amp;day='.$i
     469        ;
     470 
     471      $time = mktime(12, 0, 0, $page['month'], $i, $page['year']);
     472     
     473      $value = $i.' ('.$lang['day'][date('w', $time)].')';
     474    }
     475    else if (isset($page['year']))
     476    {
     477      $url =
     478        PHPWG_ROOT_PATH.'admin.php'
     479        .'?page=stats'
     480        .'&amp;year='.$page['year']
     481        .'&amp;month='.$i
     482        ;
     483     
     484      $value = $lang['month'][$i];
     485    }
     486    else
     487    {
     488      // at least the year is defined
     489      $url =
     490        PHPWG_ROOT_PATH.'admin.php'
     491        .'?page=stats'
     492        .'&amp;year='.$i
     493        ;
     494     
     495      $value = $i;
     496    }
     497 
     498    if ($datas[$i] != 0 and isset($url))
     499    {
     500      $value = '<a href="'.$url.'">'.$value.'</a>';
     501    }
    470502   
    471     $value = $i.' ('.$lang['day'][date('w', $time)].')';
    472   }
    473   else if (isset($page['year']))
    474   {
    475     $url =
    476       PHPWG_ROOT_PATH.'admin.php'
    477       .'?page=stats'
    478       .'&amp;year='.$page['year']
    479       .'&amp;month='.$i
    480       ;
    481    
    482     $value = $lang['month'][$i];
    483   }
    484   else
    485   {
    486     // at least the year is defined
    487     $url =
    488       PHPWG_ROOT_PATH.'admin.php'
    489       .'?page=stats'
    490       .'&amp;year='.$i
    491       ;
    492    
    493     $value = $i;
    494   }
    495 
    496   if ($datas[$i] != 0 and isset($url))
    497   {
    498     $value = '<a href="'.$url.'">'.$value.'</a>';
    499   }
    500  
    501   $template->assign_block_vars(
    502     'statrow',
    503     array(
    504       'VALUE' => $value,
    505       'PAGES' => $datas[$i],
    506       'WIDTH' => ceil(($datas[$i] * $max_width) / $max_pages ),
    507       )
    508     );
     503    $template->assign_block_vars(
     504      'statrow',
     505      array(
     506        'VALUE' => $value,
     507        'PAGES' => $datas[$i],
     508        'WIDTH' => ceil(($datas[$i] * $max_width) / $max_pages ),
     509        )
     510      );
     511  }
    509512}
    510513
Note: See TracChangeset for help on using the changeset viewer.