Blame view

plugins/function.randomize.php 948 Bytes
42868d70   andryeyev   Создал GIT
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
  <?php
  function smarty_function_randomize($params, &$smarty) {
  	if (!isset($params['var']) || strlen($params['var']) <= 0) {
  		return ;
  	}
  	
  	if (isset($params['from']) && is_array($params['from']) && count($params['from']) > 1) {
  		if (isset($params['sub_place']) && is_numeric($params['sub_place'])) {
  			$temp = array();
  			foreach ($params['from'] as $key => $value) {
  				if ($value['sub_place'] == $params['sub_place']) {
  					$temp[$key] = $value;
  				}
  			}
  			
  			if (count($temp) == 1) {
  				$temp = array_keys($temp);
  				$smarty->assign($params['var'], $temp[0]);
  			} elseif (count($temp) > 1) {
  				$temp = array_keys($temp);
  				$smarty->assign($params['var'], $temp[rand(0, count($temp) - 1)]);
  			} else {
  				$smarty->assign($params['var'], rand(0, (count($params['from']) - 1)));
  			}
  		} else {
  			$smarty->assign($params['var'], rand(0, (count($params['from']) - 1)));
  		}
  	} else {
  		$smarty->assign($params['var'], 0);
  	}
  }
  ?>