]> git.vanrenterghem.biz Git - www.vanrenterghem.biz.git/blob - phpBB2/templates/Helius/jumpbox.tpl
7987347c5a35945a85d7953579ba9e3a7391a005
[www.vanrenterghem.biz.git] / phpBB2 / templates / Helius / jumpbox.tpl
1 <!-- BEGIN switch_xs_enabled -->\r
2 <?php\r
3 \r
4 //\r
5 // This will convert simple select box to nicer one with <optgroup> tags.\r
6 //\r
7 \r
8 $str = $this->vars['S_JUMPBOX_SELECT'];\r
9 $options = array();\r
10 // getting header\r
11 $pos = strpos($str, '<option');\r
12 if($pos > 0)\r
13 {\r
14         $start = substr($str, 0, $pos);\r
15         $str = substr($str, $pos, strlen($str));\r
16 }\r
17 else\r
18 {\r
19         $start = 0;\r
20 }\r
21 // getting footer\r
22 $str = strrev($str);\r
23 $pos = strpos($str, strrev('</option>'));\r
24 if($pos > 0)\r
25 {\r
26         $end = strrev(substr($str, 0, $pos));\r
27         $str = substr($str, $pos, strlen($str));\r
28 }\r
29 else\r
30 {\r
31         $end = '';\r
32 }\r
33 $str = trim(strrev($str));\r
34 // getting all options\r
35 while(strlen($str) > 0)\r
36 {\r
37         $pos = strpos($str, '</option>');\r
38         if($pos > 0)\r
39         {\r
40                 $pos += 9;\r
41                 $item = trim(substr($str, 0, $pos));\r
42                 $str = trim(substr($str, $pos, strlen($str)));\r
43         }\r
44         else\r
45         {\r
46                 $item = $str;\r
47                 $str = '';\r
48         }\r
49         $value = '';\r
50         $text = '';\r
51         $selected = false;\r
52         $pos = strpos($item, '>') + 1;\r
53         // getting text\r
54         $text = substr($item, $pos, strlen($item));\r
55         $item = substr($item, 0, $pos);\r
56         $pos = strpos($text, '<');\r
57         if($pos)\r
58         {\r
59                 $text = substr($text, 0, $pos);\r
60         }\r
61         // checking if item is selected\r
62         if(strpos($str1, ' selected'))\r
63         {\r
64                 $selected = true;\r
65         }\r
66         // getting value\r
67         $pos = strpos($item, 'value="');\r
68         if($pos)\r
69         {\r
70                 $pos += 7;\r
71                 $str1 = substr($item, $pos, strlen($item));\r
72                 $pos = strpos($str1, '"');\r
73                 $value = substr($str1, 0, $pos);\r
74         }\r
75         $options[] = array(\r
76                 'text'          => $text,\r
77                 'value'         => $value,\r
78                 'selected'      => $selected\r
79                 );\r
80 }\r
81 \r
82 $text = $start;\r
83 $group = 0;\r
84 for($i=0; $i<count($options); $i++)\r
85 {\r
86         $item = $options[$i];\r
87         if(($item['value'] == -1) && ($item['text'] === '&nbsp;'))\r
88         {\r
89                 if($group)\r
90                 {\r
91                         $text .= '</optgroup>';\r
92                         $group = false;\r
93                 }\r
94                 if(count($options) - $i >= 2)\r
95                 {\r
96                         $item = $options[$i+1];\r
97                         $i+=2;\r
98                         $group = true;\r
99                         $text .= '<optgroup label="' . $item['text'] . '">';\r
100                 }\r
101         }\r
102         else\r
103         {\r
104                 $text .= '<option value="' . $item['value'] . '"';\r
105                 if($item['selected'])\r
106                 {\r
107                         $text .= ' selected="selected"';\r
108                 }\r
109                 $text .= '>' . $item['text'] . '</option>';\r
110         }\r
111 }\r
112 if($group)\r
113 {\r
114         $text .= '</optgroup>';\r
115 }\r
116 $text .= $end;\r
117 $this->vars['S_JUMPBOX_SELECT'] = $text;\r
118 \r
119 ?>\r
120 <!-- END switch_xs_enabled -->\r
121 <table cellspacing="0" cellpadding="0" border="0">\r
122 <tr> \r
123 <form method="get" name="jumpbox" action="{S_JUMPBOX_ACTION}" onsubmit="if(document.jumpbox.f.value == -1){return false;}">\r
124         <td nowrap="nowrap">{S_JUMPBOX_SELECT}&nbsp;<input type="submit" value="{L_GO}" class="liteoption" />&nbsp;</td>\r
125 </form>\r
126 </tr>\r
127 </table>