1: <?php
2:
3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
18:
19: function smarty_function_legacy_category_select($params, &$smarty)
20: {
21: $selectHtml = '';
22:
23: $tree = $params['tree'];
24: $selectedValue = $params['selectedValue'];
25: $canSelectBranch = isset($params['canSelectBranch']) ? $params['canSelectBranch'] : true;
26:
27: foreach(array_keys($tree) as $key){
28: $pkey = $tree[$key]->getPrimary();
29: $d = method_exists($tree[$key], 'getDepth') ? $tree[$key]->getDepth() : 0;
30: if($selectedValue==$tree[$key]->getShow($pkey)){
31: $optionTag = '<option value="'.$tree[$key]->getShow($pkey).'" selected="selected"%s>';
32: }
33: else{
34: $optionTag = '<option value="' .$tree[$key]->getShow($pkey). '"%s>';
35: }
36: $disabled = null;
37: if($canSelectBranch===false){
38: if(isset($tree[$key+1]) && $tree[$key+1]->getDepth()>$d){
39: $disabled = ' disabled="disabled"';
40: }
41: }
42: $selectHtml .= sprintf($optionTag, $disabled);
43: for($i=0;$i<$d;$i++){
44: $selectHtml .= '-';
45: }
46: $selectHtml .= $tree[$key]->getShow('title') .'</option>';
47: }
48:
49: echo $selectHtml;
50: }
51: ?>
52: