| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | <?php | 
					
						
							|  |  |  | /** | 
					
						
							| 
									
										
										
										
											2010-08-17 15:39:51 +00:00
										 |  |  |  * Smarty plugin | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2010-08-17 15:39:51 +00:00
										 |  |  |  * @package Smarty | 
					
						
							|  |  |  |  * @subpackage PluginsFunction | 
					
						
							|  |  |  |  */ | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  | /** | 
					
						
							|  |  |  |  * @ignore | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | require_once(SMARTY_PLUGINS_DIR . 'shared.escape_special_chars.php'); | 
					
						
							|  |  |  | /** | 
					
						
							|  |  |  |  * @ignore | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | require_once(SMARTY_PLUGINS_DIR . 'shared.make_timestamp.php'); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | /** | 
					
						
							| 
									
										
										
										
											2010-08-17 15:39:51 +00:00
										 |  |  |  * Smarty {html_select_time} function plugin | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |  * | 
					
						
							| 
									
										
										
										
											2010-08-17 15:39:51 +00:00
										 |  |  |  * Type:     function<br> | 
					
						
							|  |  |  |  * Name:     html_select_time<br> | 
					
						
							|  |  |  |  * Purpose:  Prints the dropdowns for time selection | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |  * | 
					
						
							|  |  |  |  * @link http://www.smarty.net/manual/en/language.function.html.select.time.php {html_select_time} | 
					
						
							| 
									
										
										
										
											2010-08-17 15:39:51 +00:00
										 |  |  |  *          (Smarty online manual) | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |  * @author Roberto Berto <roberto@berto.net> | 
					
						
							|  |  |  |  * @author Monte Ohrt <monte AT ohrt DOT com> | 
					
						
							|  |  |  |  * @param array                    $params   parameters | 
					
						
							|  |  |  |  * @param Smarty_Internal_Template $template template object | 
					
						
							|  |  |  |  * @return string | 
					
						
							| 
									
										
										
										
											2010-08-17 15:39:51 +00:00
										 |  |  |  * @uses smarty_make_timestamp() | 
					
						
							|  |  |  |  */ | 
					
						
							| 
									
										
										
										
											2010-11-12 23:42:32 +00:00
										 |  |  | function smarty_function_html_select_time($params, $template) | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | { | 
					
						
							|  |  |  |     $prefix = "Time_"; | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |     $field_array = null; | 
					
						
							|  |  |  |     $field_separator = "\n"; | 
					
						
							|  |  |  |     $option_separator = "\n"; | 
					
						
							|  |  |  |     $time = null; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     $display_hours = true; | 
					
						
							|  |  |  |     $display_minutes = true; | 
					
						
							|  |  |  |     $display_seconds = true; | 
					
						
							|  |  |  |     $display_meridian = true; | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |     $hour_format = '%02d'; | 
					
						
							|  |  |  |     $hour_value_format = '%02d'; | 
					
						
							|  |  |  |     $minute_format = '%02d'; | 
					
						
							|  |  |  |     $minute_value_format = '%02d'; | 
					
						
							|  |  |  |     $second_format = '%02d'; | 
					
						
							|  |  |  |     $second_value_format = '%02d'; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     $hour_size = null; | 
					
						
							|  |  |  |     $minute_size = null; | 
					
						
							|  |  |  |     $second_size = null; | 
					
						
							|  |  |  |     $meridian_size = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     $all_empty = null; | 
					
						
							|  |  |  |     $hour_empty = null; | 
					
						
							|  |  |  |     $minute_empty = null; | 
					
						
							|  |  |  |     $second_empty = null; | 
					
						
							|  |  |  |     $meridian_empty = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     $all_id = null; | 
					
						
							|  |  |  |     $hour_id = null; | 
					
						
							|  |  |  |     $minute_id = null; | 
					
						
							|  |  |  |     $second_id = null; | 
					
						
							|  |  |  |     $meridian_id = null; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     $use_24_hours = true; | 
					
						
							|  |  |  |     $minute_interval = 1; | 
					
						
							|  |  |  |     $second_interval = 1; | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |     $extra_attrs = ''; | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     $all_extra = null; | 
					
						
							|  |  |  |     $hour_extra = null; | 
					
						
							|  |  |  |     $minute_extra = null; | 
					
						
							|  |  |  |     $second_extra = null; | 
					
						
							|  |  |  |     $meridian_extra = null; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     foreach ($params as $_key => $_value) { | 
					
						
							|  |  |  |         switch ($_key) { | 
					
						
							|  |  |  |             case 'time': | 
					
						
							| 
									
										
										
										
											2011-10-20 13:31:25 +00:00
										 |  |  |                 if (!is_array($_value) && $_value !== null) { | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |                     $time = smarty_make_timestamp($_value); | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |                 break; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             case 'prefix': | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |             case 'field_array': | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |             case 'field_separator': | 
					
						
							|  |  |  |             case 'option_separator': | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |             case 'all_extra': | 
					
						
							|  |  |  |             case 'hour_extra': | 
					
						
							|  |  |  |             case 'minute_extra': | 
					
						
							|  |  |  |             case 'second_extra': | 
					
						
							|  |  |  |             case 'meridian_extra': | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |             case 'all_empty': | 
					
						
							|  |  |  |             case 'hour_empty': | 
					
						
							|  |  |  |             case 'minute_empty': | 
					
						
							|  |  |  |             case 'second_empty': | 
					
						
							|  |  |  |             case 'meridian_empty': | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             case 'all_id': | 
					
						
							|  |  |  |             case 'hour_id': | 
					
						
							|  |  |  |             case 'minute_id': | 
					
						
							|  |  |  |             case 'second_id': | 
					
						
							|  |  |  |             case 'meridian_id': | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             case 'hour_format': | 
					
						
							|  |  |  |             case 'hour_value_format': | 
					
						
							|  |  |  |             case 'minute_format': | 
					
						
							|  |  |  |             case 'minute_value_format': | 
					
						
							|  |  |  |             case 'second_format': | 
					
						
							|  |  |  |             case 'second_value_format': | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |                 $$_key = (string)$_value; | 
					
						
							|  |  |  |                 break; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             case 'display_hours': | 
					
						
							|  |  |  |             case 'display_minutes': | 
					
						
							|  |  |  |             case 'display_seconds': | 
					
						
							|  |  |  |             case 'display_meridian': | 
					
						
							|  |  |  |             case 'use_24_hours': | 
					
						
							|  |  |  |                 $$_key = (bool)$_value; | 
					
						
							|  |  |  |                 break; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             case 'minute_interval': | 
					
						
							|  |  |  |             case 'second_interval': | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  |             case 'hour_size': | 
					
						
							|  |  |  |             case 'minute_size': | 
					
						
							|  |  |  |             case 'second_size': | 
					
						
							|  |  |  |             case 'meridian_size': | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |                 $$_key = (int)$_value; | 
					
						
							|  |  |  |                 break; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |             default: | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |                 if (!is_array($_value)) { | 
					
						
							|  |  |  |                     $extra_attrs .= ' ' . $_key . '="' . smarty_function_escape_special_chars($_value) . '"'; | 
					
						
							|  |  |  |                 } else { | 
					
						
							|  |  |  |                     trigger_error("html_select_date: extra attribute '$_key' cannot be an array", E_USER_NOTICE); | 
					
						
							|  |  |  |                 } | 
					
						
							|  |  |  |                 break; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |     if (isset($params['time']) && is_array($params['time'])) { | 
					
						
							|  |  |  |         if (isset($params['time'][$prefix . 'Hour'])) { | 
					
						
							|  |  |  |             // $_REQUEST[$field_array] given
 | 
					
						
							|  |  |  |             foreach (array('H' => 'Hour',  'i' => 'Minute', 's' => 'Second') as $_elementKey => $_elementName) { | 
					
						
							|  |  |  |                 $_variableName = '_' . strtolower($_elementName); | 
					
						
							|  |  |  |                 $$_variableName = isset($params['time'][$prefix . $_elementName]) | 
					
						
							|  |  |  |                     ? $params['time'][$prefix . $_elementName] | 
					
						
							|  |  |  |                     : date($_elementKey); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             $_meridian = isset($params['time'][$prefix . 'Meridian']) | 
					
						
							|  |  |  |                 ? (' ' . $params['time'][$prefix . 'Meridian']) | 
					
						
							|  |  |  |                 : ''; | 
					
						
							|  |  |  |             $time = strtotime( $_hour . ':' . $_minute . ':' . $_second . $_meridian ); | 
					
						
							|  |  |  |             list($_hour, $_minute, $_second) = $time = explode('-', date('H-i-s', $time)); | 
					
						
							|  |  |  |         } elseif (isset($params['time'][$field_array][$prefix . 'Hour'])) { | 
					
						
							|  |  |  |             // $_REQUEST given
 | 
					
						
							|  |  |  |             foreach (array('H' => 'Hour',  'i' => 'Minute', 's' => 'Second') as $_elementKey => $_elementName) { | 
					
						
							|  |  |  |                 $_variableName = '_' . strtolower($_elementName); | 
					
						
							|  |  |  |                 $$_variableName = isset($params['time'][$field_array][$prefix . $_elementName]) | 
					
						
							|  |  |  |                     ? $params['time'][$field_array][$prefix . $_elementName] | 
					
						
							|  |  |  |                     : date($_elementKey); | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             $_meridian = isset($params['time'][$field_array][$prefix . 'Meridian']) | 
					
						
							|  |  |  |                 ? (' ' . $params['time'][$field_array][$prefix . 'Meridian']) | 
					
						
							|  |  |  |                 : ''; | 
					
						
							|  |  |  |             $time = strtotime( $_hour . ':' . $_minute . ':' . $_second . $_meridian ); | 
					
						
							|  |  |  |             list($_hour, $_minute, $_second) = $time = explode('-', date('H-i-s', $time)); | 
					
						
							|  |  |  |         } else { | 
					
						
							|  |  |  |             // no date found, use NOW
 | 
					
						
							|  |  |  |             list($_year, $_month, $_day) = $time = explode('-', date('Y-m-d')); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } elseif ($time === null) { | 
					
						
							| 
									
										
										
										
											2011-11-25 17:06:30 +00:00
										 |  |  |         if (array_key_exists('time', $params)) { | 
					
						
							|  |  |  |             $_hour = $_minute = $_second = $time = null; | 
					
						
							|  |  |  |         } else { | 
					
						
							|  |  |  |             list($_hour, $_minute, $_second) = $time = explode('-', date('H-i-s')); | 
					
						
							|  |  |  |         } | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |     } else { | 
					
						
							|  |  |  |         list($_hour, $_minute, $_second) = $time = explode('-', date('H-i-s', $time)); | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |     // generate hour <select>
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     if ($display_hours) { | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |         $_html_hours = ''; | 
					
						
							|  |  |  |         $_extra = ''; | 
					
						
							|  |  |  |         $_name = $field_array ? ($field_array . '[' . $prefix . 'Hour]') : ($prefix . 'Hour'); | 
					
						
							|  |  |  |         if ($all_extra) { | 
					
						
							|  |  |  |             $_extra .= ' ' . $all_extra; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         if ($hour_extra) { | 
					
						
							|  |  |  |             $_extra .= ' ' . $hour_extra; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $_html_hours = '<select name="' . $_name . '"'; | 
					
						
							|  |  |  |         if ($hour_id !== null || $all_id !== null) { | 
					
						
							|  |  |  |             $_html_hours .= ' id="' . smarty_function_escape_special_chars( | 
					
						
							|  |  |  |                 $hour_id !== null ? ( $hour_id ? $hour_id : $_name ) : ( $all_id ? ($all_id . $_name) : $_name ) | 
					
						
							|  |  |  |             ) . '"'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         if ($hour_size) { | 
					
						
							|  |  |  |             $_html_hours .= ' size="' . $hour_size . '"'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         $_html_hours .= $_extra . $extra_attrs . '>' . $option_separator; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (isset($hour_empty) || isset($all_empty)) { | 
					
						
							|  |  |  |             $_html_hours .= '<option value="">' . ( isset($hour_empty) ? $hour_empty : $all_empty ) . '</option>' . $option_separator; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $start = $use_24_hours ? 0 : 1; | 
					
						
							|  |  |  |         $end = $use_24_hours ? 23 : 12; | 
					
						
							|  |  |  |         for ($i=$start; $i <= $end; $i++) { | 
					
						
							|  |  |  |             $_val = sprintf('%02d', $i); | 
					
						
							|  |  |  |             $_text = $hour_format == '%02d' ? $_val : sprintf($hour_format, $i); | 
					
						
							|  |  |  |             $_value = $hour_value_format == '%02d' ? $_val : sprintf($hour_value_format, $i); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-10-20 13:31:25 +00:00
										 |  |  |             if (!$use_24_hours) { | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |                 $_hour12 = $_hour == 0 | 
					
						
							|  |  |  |                     ? 12 | 
					
						
							|  |  |  |                     : ($_hour <= 12 ? $_hour : $_hour -12); | 
					
						
							|  |  |  |             } | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-10-20 13:31:25 +00:00
										 |  |  |             $selected = $_hour !== null ? ($use_24_hours ? $_hour == $_val : $_hour12 == $_val) : null; | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |             $_html_hours .= '<option value="' . $_value . '"' | 
					
						
							|  |  |  |                 . ($selected ? ' selected="selected"' : '') | 
					
						
							|  |  |  |                 . '>' . $_text . '</option>' . $option_separator; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $_html_hours .= '</select>'; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // generate minute <select>
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     if ($display_minutes) { | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |         $_html_minutes = ''; | 
					
						
							|  |  |  |         $_extra = ''; | 
					
						
							|  |  |  |         $_name = $field_array ? ($field_array . '[' . $prefix . 'Minute]') : ($prefix . 'Minute'); | 
					
						
							|  |  |  |         if ($all_extra) { | 
					
						
							|  |  |  |             $_extra .= ' ' . $all_extra; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         if ($minute_extra) { | 
					
						
							|  |  |  |             $_extra .= ' ' . $minute_extra; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $_html_minutes = '<select name="' . $_name . '"'; | 
					
						
							|  |  |  |         if ($minute_id !== null || $all_id !== null) { | 
					
						
							|  |  |  |             $_html_minutes .= ' id="' . smarty_function_escape_special_chars( | 
					
						
							|  |  |  |                 $minute_id !== null ? ( $minute_id ? $minute_id : $_name ) : ( $all_id ? ($all_id . $_name) : $_name ) | 
					
						
							|  |  |  |             ) . '"'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         if ($minute_size) { | 
					
						
							|  |  |  |             $_html_minutes .= ' size="' . $minute_size . '"'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         $_html_minutes .= $_extra . $extra_attrs . '>' . $option_separator; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (isset($minute_empty) || isset($all_empty)) { | 
					
						
							|  |  |  |             $_html_minutes .= '<option value="">' . ( isset($minute_empty) ? $minute_empty : $all_empty ) . '</option>' . $option_separator; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-10-20 13:31:25 +00:00
										 |  |  |         $selected = $_minute !== null ? ($_minute - $_minute % $minute_interval) : null; | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |         for ($i=0; $i <= 59; $i += $minute_interval) { | 
					
						
							|  |  |  |             $_val = sprintf('%02d', $i); | 
					
						
							|  |  |  |             $_text = $minute_format == '%02d' ? $_val : sprintf($minute_format, $i); | 
					
						
							|  |  |  |             $_value = $minute_value_format == '%02d' ? $_val : sprintf($minute_value_format, $i); | 
					
						
							|  |  |  |             $_html_minutes .= '<option value="' . $_value . '"' | 
					
						
							| 
									
										
										
										
											2011-10-20 13:31:25 +00:00
										 |  |  |                 . ($selected === $i ? ' selected="selected"' : '') | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |                 . '>' . $_text . '</option>' . $option_separator; | 
					
						
							|  |  |  |         } | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |         $_html_minutes .= '</select>'; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     // generate second <select>
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     if ($display_seconds) { | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |         $_html_seconds = ''; | 
					
						
							|  |  |  |         $_extra = ''; | 
					
						
							|  |  |  |         $_name = $field_array ? ($field_array . '[' . $prefix . 'Second]') : ($prefix . 'Second'); | 
					
						
							|  |  |  |         if ($all_extra) { | 
					
						
							|  |  |  |             $_extra .= ' ' . $all_extra; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         if ($second_extra) { | 
					
						
							|  |  |  |             $_extra .= ' ' . $second_extra; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $_html_seconds = '<select name="' . $_name . '"'; | 
					
						
							|  |  |  |         if ($second_id !== null || $all_id !== null) { | 
					
						
							|  |  |  |             $_html_seconds .= ' id="' . smarty_function_escape_special_chars( | 
					
						
							|  |  |  |                 $second_id !== null ? ( $second_id ? $second_id : $_name ) : ( $all_id ? ($all_id . $_name) : $_name ) | 
					
						
							|  |  |  |             ) . '"'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         if ($second_size) { | 
					
						
							|  |  |  |             $_html_seconds .= ' size="' . $second_size . '"'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         $_html_seconds .= $_extra . $extra_attrs . '>' . $option_separator; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (isset($second_empty) || isset($all_empty)) { | 
					
						
							|  |  |  |             $_html_seconds .= '<option value="">' . ( isset($second_empty) ? $second_empty : $all_empty ) . '</option>' . $option_separator; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-10-20 13:31:25 +00:00
										 |  |  |         $selected = $_second !== null ? ($_second - $_second % $second_interval) : null; | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |         for ($i=0; $i <= 59; $i += $second_interval) { | 
					
						
							|  |  |  |             $_val = sprintf('%02d', $i); | 
					
						
							|  |  |  |             $_text = $second_format == '%02d' ? $_val : sprintf($second_format, $i); | 
					
						
							|  |  |  |             $_value = $second_value_format == '%02d' ? $_val : sprintf($second_value_format, $i); | 
					
						
							|  |  |  |             $_html_seconds .= '<option value="' . $_value . '"' | 
					
						
							| 
									
										
										
										
											2011-10-20 13:31:25 +00:00
										 |  |  |                 . ($selected === $i ? ' selected="selected"' : '') | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |                 . '>' . $_text . '</option>' . $option_separator; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $_html_seconds .= '</select>'; | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |     // generate meridian <select>
 | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  |     if ($display_meridian && !$use_24_hours) { | 
					
						
							| 
									
										
										
										
											2011-09-16 14:19:56 +00:00
										 |  |  |         $_html_meridian = ''; | 
					
						
							|  |  |  |         $_extra = ''; | 
					
						
							|  |  |  |         $_name = $field_array ? ($field_array . '[' . $prefix . 'Meridian]') : ($prefix . 'Meridian'); | 
					
						
							|  |  |  |         if ($all_extra) { | 
					
						
							|  |  |  |             $_extra .= ' ' . $all_extra; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         if ($meridian_extra) { | 
					
						
							|  |  |  |             $_extra .= ' ' . $meridian_extra; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $_html_meridian = '<select name="' . $_name . '"'; | 
					
						
							|  |  |  |         if ($meridian_id !== null || $all_id !== null) { | 
					
						
							|  |  |  |             $_html_meridian .= ' id="' . smarty_function_escape_special_chars( | 
					
						
							|  |  |  |                 $meridian_id !== null ? ( $meridian_id ? $meridian_id : $_name ) : ( $all_id ? ($all_id . $_name) : $_name ) | 
					
						
							|  |  |  |             ) . '"'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         if ($meridian_size) { | 
					
						
							|  |  |  |             $_html_meridian .= ' size="' . $meridian_size . '"'; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |         $_html_meridian .= $_extra . $extra_attrs . '>' . $option_separator; | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if (isset($meridian_empty) || isset($all_empty)) { | 
					
						
							|  |  |  |             $_html_meridian .= '<option value="">' . ( isset($meridian_empty) ? $meridian_empty : $all_empty ) . '</option>' . $option_separator; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         $_html_meridian .= '<option value="am"'. ($_hour < 12 ? ' selected="selected"' : '') .'>AM</option>' . $option_separator | 
					
						
							|  |  |  |             . '<option value="pm"'. ($_hour < 12 ? '' : ' selected="selected"') .'>PM</option>' . $option_separator | 
					
						
							|  |  |  |             . '</select>'; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     $_html = ''; | 
					
						
							|  |  |  |     foreach (array('_html_hours', '_html_minutes', '_html_seconds', '_html_meridian') as $k) { | 
					
						
							|  |  |  |         if (isset($$k)) { | 
					
						
							|  |  |  |             if ($_html) { | 
					
						
							|  |  |  |                 $_html .= $field_separator; | 
					
						
							|  |  |  |             } | 
					
						
							|  |  |  |             $_html .= $$k; | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     return $_html; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2009-03-22 16:09:05 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-08-17 15:39:51 +00:00
										 |  |  | ?>
 |