web/wp-admin/options-general.php
changeset 194 32102edaa81b
parent 136 bde1974c263b
child 204 09a1c134465b
equal deleted inserted replaced
193:2f6f6f7551ca 194:32102edaa81b
     7  */
     7  */
     8 
     8 
     9 /** WordPress Administration Bootstrap */
     9 /** WordPress Administration Bootstrap */
    10 require_once('./admin.php');
    10 require_once('./admin.php');
    11 
    11 
    12 if ( ! current_user_can('manage_options') )
    12 if ( ! current_user_can( 'manage_options' ) )
    13 	wp_die(__('You do not have sufficient permissions to manage options for this blog.'));
    13 	wp_die( __( 'You do not have sufficient permissions to manage options for this site.' ) );
    14 
    14 
    15 $title = __('General Settings');
    15 $title = __('General Settings');
    16 $parent_file = 'options-general.php';
    16 $parent_file = 'options-general.php';
    17 /* translators: date and time format for exact current time, mainly about timezones, see http://php.net/date */
    17 /* translators: date and time format for exact current time, mainly about timezones, see http://php.net/date */
    18 $timezone_format = _x('Y-m-d G:i:s', 'timezone date format');
    18 $timezone_format = _x('Y-m-d G:i:s', 'timezone date format');
    19 
    19 
    20 /**
    20 /**
    21  * Display JavaScript on the page.
    21  * Display JavaScript on the page.
    22  *
    22  *
    23  * @package WordPress
    23  * @package WordPress
    24  * @subpackage General_Settings_Panel
    24  * @subpackage General_Settings_Screen
    25  */
    25  */
    26 function add_js() {
    26 function add_js() {
    27 ?>
    27 ?>
    28 <script type="text/javascript">
    28 <script type="text/javascript">
    29 //<![CDATA[
    29 //<![CDATA[
    30 	jQuery(document).ready(function($){
    30 	jQuery(document).ready(function($){
    31 		$("input[name='date_format']").click(function(){
    31 		$("input[name='date_format']").click(function(){
    32 			if ( "date_format_custom_radio" != $(this).attr("id") )
    32 			if ( "date_format_custom_radio" != $(this).attr("id") )
    33 				$("input[name='date_format_custom']").val( $(this).val() );
    33 				$("input[name='date_format_custom']").val( $(this).val() ).siblings('.example').text( $(this).siblings('span').text() );
    34 		});
    34 		});
    35 		$("input[name='date_format_custom']").focus(function(){
    35 		$("input[name='date_format_custom']").focus(function(){
    36 			$("#date_format_custom_radio").attr("checked", "checked");
    36 			$("#date_format_custom_radio").attr("checked", "checked");
    37 		});
    37 		});
    38 
    38 
    39 		$("input[name='time_format']").click(function(){
    39 		$("input[name='time_format']").click(function(){
    40 			if ( "time_format_custom_radio" != $(this).attr("id") )
    40 			if ( "time_format_custom_radio" != $(this).attr("id") )
    41 				$("input[name='time_format_custom']").val( $(this).val() );
    41 				$("input[name='time_format_custom']").val( $(this).val() ).siblings('.example').text( $(this).siblings('span').text() );
    42 		});
    42 		});
    43 		$("input[name='time_format_custom']").focus(function(){
    43 		$("input[name='time_format_custom']").focus(function(){
    44 			$("#time_format_custom_radio").attr("checked", "checked");
    44 			$("#time_format_custom_radio").attr("checked", "checked");
       
    45 		});
       
    46 		$("input[name='date_format_custom'], input[name='time_format_custom']").change( function() {
       
    47 			var format = $(this);
       
    48 			format.siblings('img').css('visibility','visible');
       
    49 			$.post(ajaxurl, {
       
    50 					action: 'date_format_custom' == format.attr('name') ? 'date_format' : 'time_format',
       
    51 					date : format.val()
       
    52 				}, function(d) { format.siblings('img').css('visibility','hidden'); format.siblings('.example').text(d); } );
    45 		});
    53 		});
    46 	});
    54 	});
    47 //]]>
    55 //]]>
    48 </script>
    56 </script>
    49 <?php
    57 <?php
    50 }
    58 }
    51 add_filter('admin_head', 'add_js');
    59 add_action('admin_head', 'add_js');
       
    60 
       
    61 $options_help = '<p>' . __('The fields on this screen determine some of the basics of your site setup.') . '</p>' .
       
    62 	'<p>' . __('Most themes display the site title at the top of every page, in the title bar of the browser, and as the identifying name for syndicated feeds. The tagline is also displayed by many themes.') . '</p>';
       
    63 
       
    64 if ( ! is_multisite() ) {
       
    65 	$options_help .= '<p>' . __('The WordPress URL and the Site URL can be the same (example.com) or different; for example, having the WordPress core files (example.com/wordpress) in a subdirectory instead of the root directory.') . '</p>' .
       
    66 		'<p>' . __('If you want site visitors to be able to register themselves, as opposed to by the site administrator, check the membership box. A default user role can be set for all new users, whether self-registered or registered by the site admin.') . '</p>';
       
    67 }
       
    68 
       
    69 $options_help .= '<p>' . __('UTC means Coordinated Universal Time.') . '</p>' .
       
    70 	'<p>' . __( 'You must click the Save Changes button at the bottom of the screen for new settings to take effect.' ) . '</p>';
       
    71 
       
    72 get_current_screen()->add_help_tab( array(
       
    73 	'id'      => 'overview',
       
    74 	'title'   => __('Overview'),
       
    75 	'content' => $options_help,
       
    76 ) );
       
    77 
       
    78 get_current_screen()->set_help_sidebar(
       
    79 	'<p><strong>' . __('For more information:') . '</strong></p>' .
       
    80 	'<p>' . __('<a href="http://codex.wordpress.org/Settings_General_Screen" target="_blank">Documentation on General Settings</a>') . '</p>' .
       
    81 	'<p>' . __('<a href="http://wordpress.org/support/" target="_blank">Support Forums</a>') . '</p>'
       
    82 );
    52 
    83 
    53 include('./admin-header.php');
    84 include('./admin-header.php');
    54 ?>
    85 ?>
    55 
    86 
    56 <div class="wrap">
    87 <div class="wrap">
    60 <form method="post" action="options.php">
    91 <form method="post" action="options.php">
    61 <?php settings_fields('general'); ?>
    92 <?php settings_fields('general'); ?>
    62 
    93 
    63 <table class="form-table">
    94 <table class="form-table">
    64 <tr valign="top">
    95 <tr valign="top">
    65 <th scope="row"><label for="blogname"><?php _e('Blog Title') ?></label></th>
    96 <th scope="row"><label for="blogname"><?php _e('Site Title') ?></label></th>
    66 <td><input name="blogname" type="text" id="blogname" value="<?php form_option('blogname'); ?>" class="regular-text" /></td>
    97 <td><input name="blogname" type="text" id="blogname" value="<?php form_option('blogname'); ?>" class="regular-text" /></td>
    67 </tr>
    98 </tr>
    68 <tr valign="top">
    99 <tr valign="top">
    69 <th scope="row"><label for="blogdescription"><?php _e('Tagline') ?></label></th>
   100 <th scope="row"><label for="blogdescription"><?php _e('Tagline') ?></label></th>
    70 <td><input name="blogdescription" type="text" id="blogdescription"  value="<?php form_option('blogdescription'); ?>" class="regular-text" />
   101 <td><input name="blogdescription" type="text" id="blogdescription" value="<?php form_option('blogdescription'); ?>" class="regular-text" />
    71 <span class="description"><?php _e('In a few words, explain what this blog is about.') ?></span></td>
   102 <p class="description"><?php _e('In a few words, explain what this site is about.') ?></p></td>
    72 </tr>
   103 </tr>
    73 <tr valign="top">
   104 <?php if ( !is_multisite() ) { ?>
    74 <th scope="row"><label for="siteurl"><?php _e('WordPress address (URL)') ?></label></th>
   105 <tr valign="top">
    75 <td><input name="siteurl" type="text" id="siteurl" value="<?php form_option('siteurl'); ?>" class="regular-text code<?php if ( defined( 'WP_SITEURL' ) ) : ?> disabled" disabled="disabled"<?php else: ?>"<?php endif; ?> /></td>
   106 <th scope="row"><label for="siteurl"><?php _e('WordPress Address (URL)') ?></label></th>
    76 </tr>
   107 <td><input name="siteurl" type="text" id="siteurl" value="<?php form_option('siteurl'); ?>"<?php disabled( defined( 'WP_SITEURL' ) ); ?> class="regular-text code<?php if ( defined( 'WP_SITEURL' ) ) echo ' disabled' ?>" /></td>
    77 <tr valign="top">
   108 </tr>
    78 <th scope="row"><label for="home"><?php _e('Blog address (URL)') ?></label></th>
   109 <tr valign="top">
    79 <td><input name="home" type="text" id="home" value="<?php form_option('home'); ?>" class="regular-text code<?php if ( defined( 'WP_HOME' ) ) : ?> disabled" disabled="disabled"<?php else: ?>"<?php endif; ?> />
   110 <th scope="row"><label for="home"><?php _e('Site Address (URL)') ?></label></th>
    80 <span class="description"><?php _e('Enter the address here if you want your blog homepage <a href="http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory">to be different from the directory</a> you installed WordPress.'); ?></span></td>
   111 <td><input name="home" type="text" id="home" value="<?php form_option('home'); ?>"<?php disabled( defined( 'WP_HOME' ) ); ?> class="regular-text code<?php if ( defined( 'WP_HOME' ) ) echo ' disabled' ?>" />
    81 </tr>
   112 <p class="description"><?php _e('Enter the address here if you want your site homepage <a href="http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory">to be different from the directory</a> you installed WordPress.'); ?></p></td>
    82 <tr valign="top">
   113 </tr>
    83 <th scope="row"><label for="admin_email"><?php _e('E-mail address') ?> </label></th>
   114 <tr valign="top">
    84 <td><input name="admin_email" type="text" id="admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text" />
   115 <th scope="row"><label for="admin_email"><?php _e('E-mail Address') ?> </label></th>
    85 <span class="description"><?php _e('This address is used for admin purposes, like new user notification.') ?></span></td>
   116 <td><input name="admin_email" type="text" id="admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text ltr" />
       
   117 <p class="description"><?php _e('This address is used for admin purposes, like new user notification.') ?></p></td>
    86 </tr>
   118 </tr>
    87 <tr valign="top">
   119 <tr valign="top">
    88 <th scope="row"><?php _e('Membership') ?></th>
   120 <th scope="row"><?php _e('Membership') ?></th>
    89 <td> <fieldset><legend class="screen-reader-text"><span><?php _e('Membership') ?></span></legend><label for="users_can_register">
   121 <td> <fieldset><legend class="screen-reader-text"><span><?php _e('Membership') ?></span></legend><label for="users_can_register">
    90 <input name="users_can_register" type="checkbox" id="users_can_register" value="1" <?php checked('1', get_option('users_can_register')); ?> />
   122 <input name="users_can_register" type="checkbox" id="users_can_register" value="1" <?php checked('1', get_option('users_can_register')); ?> />
    95 <th scope="row"><label for="default_role"><?php _e('New User Default Role') ?></label></th>
   127 <th scope="row"><label for="default_role"><?php _e('New User Default Role') ?></label></th>
    96 <td>
   128 <td>
    97 <select name="default_role" id="default_role"><?php wp_dropdown_roles( get_option('default_role') ); ?></select>
   129 <select name="default_role" id="default_role"><?php wp_dropdown_roles( get_option('default_role') ); ?></select>
    98 </td>
   130 </td>
    99 </tr>
   131 </tr>
       
   132 <?php } else { ?>
       
   133 <tr valign="top">
       
   134 <th scope="row"><label for="new_admin_email"><?php _e('E-mail Address') ?> </label></th>
       
   135 <td><input name="new_admin_email" type="text" id="new_admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text ltr" />
       
   136 <p class="description"><?php _e('This address is used for admin purposes. If you change this we will send you an e-mail at your new address to confirm it. <strong>The new address will not become active until confirmed.</strong>') ?></p>
       
   137 <?php
       
   138 $new_admin_email = get_option( 'new_admin_email' );
       
   139 if ( $new_admin_email && $new_admin_email != get_option('admin_email') ) : ?>
       
   140 <div class="updated inline">
       
   141 <p><?php printf( __('There is a pending change of the admin e-mail to <code>%1$s</code>. <a href="%2$s">Cancel</a>'), esc_html( $new_admin_email ), esc_url( admin_url( 'options.php?dismiss=new_admin_email' ) ) ); ?></p>
       
   142 </div>
       
   143 <?php endif; ?>
       
   144 </td>
       
   145 </tr>
       
   146 <?php } ?>
   100 <tr>
   147 <tr>
   101 <?php
   148 <?php
   102 if ( !wp_timezone_supported() ) : // no magic timezone support here
       
   103 ?>
       
   104 <th scope="row"><label for="gmt_offset"><?php _e('Timezone') ?> </label></th>
       
   105 <td>
       
   106 <select name="gmt_offset" id="gmt_offset">
       
   107 <?php
       
   108 $current_offset = get_option('gmt_offset');
       
   109 $offset_range = array (-12, -11.5, -11, -10.5, -10, -9.5, -9, -8.5, -8, -7.5, -7, -6.5, -6, -5.5, -5, -4.5, -4, -3.5, -3, -2.5, -2, -1.5, -1, -0.5,
       
   110 	0, 0.5, 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5, 5.5, 5.75, 6, 6.5, 7, 7.5, 8, 8.5, 8.75, 9, 9.5, 10, 10.5, 11, 11.5, 12, 12.75, 13, 13.75, 14);
       
   111 foreach ( $offset_range as $offset ) {
       
   112 	if ( 0 < $offset )
       
   113 		$offset_name = '+' . $offset;
       
   114 	elseif ( 0 == $offset )
       
   115 		$offset_name = '';
       
   116 	else
       
   117 		$offset_name = (string) $offset;
       
   118 
       
   119 	$offset_name = str_replace(array('.25','.5','.75'), array(':15',':30',':45'), $offset_name);
       
   120 
       
   121 	$selected = '';
       
   122 	if ( $current_offset == $offset ) {
       
   123 		$selected = " selected='selected'";
       
   124 		$current_offset_name = $offset_name;
       
   125 	}
       
   126 	echo "<option value=\"" . esc_attr($offset) . "\"$selected>" . sprintf(__('UTC %s'), $offset_name) . '</option>';
       
   127 }
       
   128 ?>
       
   129 </select>
       
   130 <?php _e('hours'); ?>
       
   131 <span id="utc-time"><?php printf(__('<abbr title="Coordinated Universal Time">UTC</abbr> time is <code>%s</code>'), date_i18n( $time_format, false, 'gmt')); ?></span>
       
   132 <?php if ($current_offset) : ?>
       
   133 	<span id="local-time"><?php printf(__('UTC %1$s is <code>%2$s</code>'), $current_offset_name, date_i18n($time_format)); ?></span>
       
   134 <?php endif; ?>
       
   135 <br />
       
   136 <span class="description"><?php _e('Unfortunately, you have to manually update this for Daylight Savings Time. Lame, we know, but will be fixed in the future.'); ?></span>
       
   137 </td>
       
   138 <?php
       
   139 else: // looks like we can do nice timezone selection!
       
   140 $current_offset = get_option('gmt_offset');
   149 $current_offset = get_option('gmt_offset');
   141 $tzstring = get_option('timezone_string');
   150 $tzstring = get_option('timezone_string');
   142 
   151 
   143 $check_zone_info = true;
   152 $check_zone_info = true;
   144 
   153 
   145 // Remove old Etc mappings.  Fallback to gmt_offset.
   154 // Remove old Etc mappings. Fallback to gmt_offset.
   146 if ( false !== strpos($tzstring,'Etc/GMT') )
   155 if ( false !== strpos($tzstring,'Etc/GMT') )
   147 	$tzstring = '';
   156 	$tzstring = '';
   148 
   157 
   149 if (empty($tzstring)) { // set the Etc zone if no timezone string exists
   158 if ( empty($tzstring) ) { // Create a UTC+- zone if no timezone string exists
   150 	$check_zone_info = false;
   159 	$check_zone_info = false;
   151 	if ( 0 == $current_offset )
   160 	if ( 0 == $current_offset )
   152 		$tzstring = 'UTC+0';
   161 		$tzstring = 'UTC+0';
   153 	elseif ($current_offset < 0)
   162 	elseif ($current_offset < 0)
   154 		$tzstring = 'UTC' . $current_offset;
   163 		$tzstring = 'UTC' . $current_offset;
   162 
   171 
   163 <select id="timezone_string" name="timezone_string">
   172 <select id="timezone_string" name="timezone_string">
   164 <?php echo wp_timezone_choice($tzstring); ?>
   173 <?php echo wp_timezone_choice($tzstring); ?>
   165 </select>
   174 </select>
   166 
   175 
   167     <span id="utc-time"><?php printf(__('<abbr title="Coordinated Universal Time">UTC</abbr> time is <code>%s</code>'), date_i18n($timezone_format, false, 'gmt')); ?></span>
   176 	<span id="utc-time"><?php printf(__('<abbr title="Coordinated Universal Time">UTC</abbr> time is <code>%s</code>'), date_i18n($timezone_format, false, 'gmt')); ?></span>
   168 <?php if (get_option('timezone_string')) : ?>
   177 <?php if ( get_option('timezone_string') || !empty($current_offset) ) : ?>
   169 	<span id="local-time"><?php printf(__('Local time is <code>%1$s</code>'), date_i18n($timezone_format)); ?></span>
   178 	<span id="local-time"><?php printf(__('Local time is <code>%1$s</code>'), date_i18n($timezone_format)); ?></span>
   170 <?php endif; ?>
   179 <?php endif; ?>
   171 <br />
   180 <p class="description"><?php _e('Choose a city in the same timezone as you.'); ?></p>
   172 <span class="description"><?php _e('Choose a city in the same timezone as you.'); ?></span>
   181 <?php if ($check_zone_info && $tzstring) : ?>
   173 <br />
   182 <br />
   174 <span>
   183 <span>
   175 <?php if ($check_zone_info && $tzstring) : ?>
       
   176 	<?php
   184 	<?php
   177 	$now = localtime(time(),true);
   185 	// Set TZ so localtime works.
   178 	if ($now['tm_isdst']) _e('This timezone is currently in daylight savings time.');
   186 	date_default_timezone_set($tzstring);
   179 	else _e('This timezone is currently in standard time.');
   187 	$now = localtime(time(), true);
       
   188 	if ( $now['tm_isdst'] )
       
   189 		_e('This timezone is currently in daylight saving time.');
       
   190 	else
       
   191 		_e('This timezone is currently in standard time.');
   180 	?>
   192 	?>
   181 	<br />
   193 	<br />
   182 	<?php
   194 	<?php
   183 	if (function_exists('timezone_transitions_get')) {
   195 	$allowed_zones = timezone_identifiers_list();
   184 		$dateTimeZoneSelected = new DateTimeZone($tzstring);
   196 
   185 		foreach (timezone_transitions_get($dateTimeZoneSelected) as $tr) {
   197 	if ( in_array( $tzstring, $allowed_zones) ) {
   186 			if ($tr['ts'] > time()) {
   198 		$found = false;
       
   199 		$date_time_zone_selected = new DateTimeZone($tzstring);
       
   200 		$tz_offset = timezone_offset_get($date_time_zone_selected, date_create());
       
   201 		$right_now = time();
       
   202 		foreach ( timezone_transitions_get($date_time_zone_selected) as $tr) {
       
   203 			if ( $tr['ts'] > $right_now ) {
   187 			    $found = true;
   204 			    $found = true;
   188 				break;
   205 				break;
   189 			}
   206 			}
   190 		}
   207 		}
   191 
   208 
   192 		if ( isset($found) && $found === true ) {
   209 		if ( $found ) {
   193 			echo ' ';
   210 			echo ' ';
   194 			$message = $tr['isdst'] ?
   211 			$message = $tr['isdst'] ?
   195 				__('Daylight savings time begins on: <code>%s</code>.') :
   212 				__('Daylight saving time begins on: <code>%s</code>.') :
   196 				__('Standard time begins  on: <code>%s</code>.');
   213 				__('Standard time begins on: <code>%s</code>.');
   197 			printf( $message, date_i18n(get_option('date_format').' '.get_option('time_format'), $tr['ts'] ) );
   214 			// Add the difference between the current offset and the new offset to ts to get the correct transition time from date_i18n().
       
   215 			printf( $message, date_i18n(get_option('date_format') . ' ' . get_option('time_format'), $tr['ts'] + ($tz_offset - $tr['offset']) ) );
   198 		} else {
   216 		} else {
   199 			_e('This timezone does not observe daylight savings time.');
   217 			_e('This timezone does not observe daylight saving time.');
   200 		}
   218 		}
   201 	}
   219 	}
       
   220 	// Set back to UTC.
       
   221 	date_default_timezone_set('UTC');
   202 	?>
   222 	?>
   203 	</span>
   223 	</span>
   204 <?php endif; ?>
   224 <?php endif; ?>
   205 </td>
   225 </td>
   206 
   226 
   207 <?php endif; ?>
       
   208 </tr>
   227 </tr>
   209 <tr>
   228 <tr>
   210 <th scope="row"><?php _e('Date Format') ?></th>
   229 <th scope="row"><?php _e('Date Format') ?></th>
   211 <td>
   230 <td>
   212 	<fieldset><legend class="screen-reader-text"><span><?php _e('Date Format') ?></span></legend>
   231 	<fieldset><legend class="screen-reader-text"><span><?php _e('Date Format') ?></span></legend>
   217 		'Y/m/d',
   236 		'Y/m/d',
   218 		'm/d/Y',
   237 		'm/d/Y',
   219 		'd/m/Y',
   238 		'd/m/Y',
   220 	) );
   239 	) );
   221 
   240 
   222 	$custom = TRUE;
   241 	$custom = true;
   223 
   242 
   224 	foreach ( $date_formats as $format ) {
   243 	foreach ( $date_formats as $format ) {
   225 		echo "\t<label title='" . esc_attr($format) . "'><input type='radio' name='date_format' value='" . esc_attr($format) . "'";
   244 		echo "\t<label title='" . esc_attr($format) . "'><input type='radio' name='date_format' value='" . esc_attr($format) . "'";
   226 		if ( get_option('date_format') === $format ) { // checked() uses "==" rather than "==="
   245 		if ( get_option('date_format') === $format ) { // checked() uses "==" rather than "==="
   227 			echo " checked='checked'";
   246 			echo " checked='checked'";
   228 			$custom = FALSE;
   247 			$custom = false;
   229 		}
   248 		}
   230 		echo ' /> ' . date_i18n( $format ) . "</label><br />\n";
   249 		echo ' /> <span>' . date_i18n( $format ) . "</span></label><br />\n";
   231 	}
   250 	}
   232 
   251 
   233 	echo '	<label><input type="radio" name="date_format" id="date_format_custom_radio" value="\c\u\s\t\o\m"';
   252 	echo '	<label><input type="radio" name="date_format" id="date_format_custom_radio" value="\c\u\s\t\o\m"';
   234 	checked( $custom );
   253 	checked( $custom );
   235 	echo '/> ' . __('Custom:') . ' </label><input type="text" name="date_format_custom" value="' . esc_attr( get_option('date_format') ) . '" class="small-text" /> ' . date_i18n( get_option('date_format') ) . "\n";
   254 	echo '/> ' . __('Custom:') . ' </label><input type="text" name="date_format_custom" value="' . esc_attr( get_option('date_format') ) . '" class="small-text" /> <span class="example"> ' . date_i18n( get_option('date_format') ) . "</span> <img class='ajax-loading' src='" . esc_url( admin_url( 'images/wpspin_light.gif' ) ) . "' />\n";
   236 
   255 
   237 	echo "\t<p>" . __('<a href="http://codex.wordpress.org/Formatting_Date_and_Time">Documentation on date formatting</a>. Click &#8220;Save Changes&#8221; to update sample output.') . "</p>\n";
   256 	echo "\t<p>" . __('<a href="http://codex.wordpress.org/Formatting_Date_and_Time">Documentation on date and time formatting</a>.') . "</p>\n";
   238 ?>
   257 ?>
   239 	</fieldset>
   258 	</fieldset>
   240 </td>
   259 </td>
   241 </tr>
   260 </tr>
   242 <tr>
   261 <tr>
   249 		__('g:i a'),
   268 		__('g:i a'),
   250 		'g:i A',
   269 		'g:i A',
   251 		'H:i',
   270 		'H:i',
   252 	) );
   271 	) );
   253 
   272 
   254 	$custom = TRUE;
   273 	$custom = true;
   255 
   274 
   256 	foreach ( $time_formats as $format ) {
   275 	foreach ( $time_formats as $format ) {
   257 		echo "\t<label title='" . esc_attr($format) . "'><input type='radio' name='time_format' value='" . esc_attr($format) . "'";
   276 		echo "\t<label title='" . esc_attr($format) . "'><input type='radio' name='time_format' value='" . esc_attr($format) . "'";
   258 		if ( get_option('time_format') === $format ) { // checked() uses "==" rather than "==="
   277 		if ( get_option('time_format') === $format ) { // checked() uses "==" rather than "==="
   259 			echo " checked='checked'";
   278 			echo " checked='checked'";
   260 			$custom = FALSE;
   279 			$custom = false;
   261 		}
   280 		}
   262 		echo ' /> ' . date_i18n( $format ) . "</label><br />\n";
   281 		echo ' /> <span>' . date_i18n( $format ) . "</span></label><br />\n";
   263 	}
   282 	}
   264 
   283 
   265 	echo '	<label><input type="radio" name="time_format" id="time_format_custom_radio" value="\c\u\s\t\o\m"';
   284 	echo '	<label><input type="radio" name="time_format" id="time_format_custom_radio" value="\c\u\s\t\o\m"';
   266 	checked( $custom );
   285 	checked( $custom );
   267 	echo '/> ' . __('Custom:') . ' </label><input type="text" name="time_format_custom" value="' . esc_attr( get_option('time_format') ) . '" class="small-text" /> ' . date_i18n( get_option('time_format') ) . "\n";
   286 	echo '/> ' . __('Custom:') . ' </label><input type="text" name="time_format_custom" value="' . esc_attr( get_option('time_format') ) . '" class="small-text" /> <span class="example"> ' . date_i18n( get_option('time_format') ) . "</span> <img class='ajax-loading' src='" . esc_url( admin_url( 'images/wpspin_light.gif' ) ) . "' />\n";
       
   287 	;
   268 ?>
   288 ?>
   269 	</fieldset>
   289 	</fieldset>
   270 </td>
   290 </td>
   271 </tr>
   291 </tr>
   272 <tr>
   292 <tr>
   279 endfor;
   299 endfor;
   280 ?>
   300 ?>
   281 </select></td>
   301 </select></td>
   282 </tr>
   302 </tr>
   283 <?php do_settings_fields('general', 'default'); ?>
   303 <?php do_settings_fields('general', 'default'); ?>
       
   304 <?php
       
   305 	$languages = get_available_languages();
       
   306 	if ( is_multisite() && !empty( $languages ) ):
       
   307 ?>
       
   308 	<tr valign="top">
       
   309 		<th width="33%" scope="row"><?php _e('Site Language') ?></th>
       
   310 		<td>
       
   311 			<select name="WPLANG" id="WPLANG">
       
   312 				<?php mu_dropdown_languages( $languages, get_option('WPLANG') ); ?>
       
   313 			</select>
       
   314 		</td>
       
   315 	</tr>
       
   316 <?php
       
   317 	endif;
       
   318 ?>
   284 </table>
   319 </table>
   285 
   320 
   286 <?php do_settings_sections('general'); ?>
   321 <?php do_settings_sections('general'); ?>
   287 
   322 
   288 <p class="submit">
   323 <?php submit_button(); ?>
   289 <input type="submit" name="Submit" class="button-primary" value="<?php esc_attr_e('Save Changes') ?>" />
       
   290 </p>
       
   291 </form>
   324 </form>
   292 
   325 
   293 </div>
   326 </div>
   294 
   327 
   295 <?php include('./admin-footer.php') ?>
   328 <?php include('./admin-footer.php') ?>