[ Index ]
 

Code source de phpMyVisites 2.3

Accédez au Source d'autres logiciels libres

Classes | Fonctions | Variables | Constantes | Tables

title

Body

[fermer]

/libs/smarty/plugins/ -> function.counter.php (source)

   1  <?php
   2  /**

   3   * Smarty plugin

   4   * @package Smarty

   5   * @subpackage plugins

   6   */
   7  
   8  
   9  /**

  10   * Smarty {counter} function plugin

  11   *

  12   * Type:     function<br>

  13   * Name:     counter<br>

  14   * Purpose:  print out a counter value

  15   * @link http://smarty.php.net/manual/en/language.function.counter.php {counter}

  16   *       (Smarty online manual)

  17   * @param array parameters

  18   * @param Smarty

  19   * @return string|null

  20   */
  21  function smarty_function_counter($params, &$smarty)
  22  {
  23      static $counters = array();
  24  
  25      $name = (isset($params['name'])) ? $params['name'] : 'default';
  26      if (!isset($counters[$name])) {
  27          $counters[$name] = array(
  28              'start'=>1,
  29              'skip'=>1,
  30              'direction'=>'up',
  31              'count'=>1
  32              );
  33      }
  34      $counter =& $counters[$name];
  35  
  36      if (isset($params['start'])) {
  37          $counter['start'] = $counter['count'] = (int)$params['start'];
  38      }
  39  
  40      if (!empty($params['assign'])) {
  41          $counter['assign'] = $params['assign'];
  42      }
  43  
  44      if (isset($counter['assign'])) {
  45          $smarty->assign($counter['assign'], $counter['count']);
  46      }
  47      
  48      if (isset($params['print'])) {
  49          $print = (bool)$params['print'];
  50      } else {
  51          $print = empty($counter['assign']);
  52      }
  53  
  54      if ($print) {
  55          $retval = $counter['count'];
  56      } else {
  57          $retval = null;
  58      }
  59  
  60      if (isset($params['skip'])) {
  61          $counter['skip'] = $params['skip'];
  62      }
  63      
  64      if (isset($params['direction'])) {
  65          $counter['direction'] = $params['direction'];
  66      }
  67  
  68      if ($counter['direction'] == "down")
  69          $counter['count'] -= $counter['skip'];
  70      else
  71          $counter['count'] += $counter['skip'];
  72      
  73      return $retval;
  74      
  75  }
  76  
  77  /* vim: set expandtab: */

  78  
  79  ?>


Généré le : Mon Nov 26 14:10:01 2007 par Balluche grâce à PHPXref 0.7
  Clicky Web Analytics