[ Index ]

PHP Cross Reference of Wordpress 2.9.1

title

Body

[close]

/wp-admin/ -> options-general.php (source)

   1  <?php
   2  /**
   3   * General settings administration panel.
   4   *
   5   * @package WordPress
   6   * @subpackage Administration
   7   */
   8  
   9  /** WordPress Administration Bootstrap */
  10  require_once ('./admin.php');
  11  
  12  if ( ! current_user_can('manage_options') )
  13      wp_die(__('You do not have sufficient permissions to manage options for this blog.'));
  14  
  15  $title = __('General Settings');
  16  $parent_file = 'options-general.php';
  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');
  19  
  20  /**
  21   * Display JavaScript on the page.
  22   *
  23   * @package WordPress
  24   * @subpackage General_Settings_Panel
  25   */
  26  function add_js() {
  27  ?>
  28  <script type="text/javascript">
  29  //<![CDATA[
  30      jQuery(document).ready(function($){
  31          $("input[name='date_format']").click(function(){
  32              if ( "date_format_custom_radio" != $(this).attr("id") )
  33                  $("input[name='date_format_custom']").val( $(this).val() );
  34          });
  35          $("input[name='date_format_custom']").focus(function(){
  36              $("#date_format_custom_radio").attr("checked", "checked");
  37          });
  38  
  39          $("input[name='time_format']").click(function(){
  40              if ( "time_format_custom_radio" != $(this).attr("id") )
  41                  $("input[name='time_format_custom']").val( $(this).val() );
  42          });
  43          $("input[name='time_format_custom']").focus(function(){
  44              $("#time_format_custom_radio").attr("checked", "checked");
  45          });
  46      });
  47  //]]>
  48  </script>
  49  <?php
  50  }
  51  add_filter('admin_head', 'add_js');
  52  
  53  include ('./admin-header.php');
  54  ?>
  55  
  56  <div class="wrap">
  57  <?php screen_icon(); ?>
  58  <h2><?php echo esc_html( $title ); ?></h2>
  59  
  60  <form method="post" action="options.php">
  61  <?php settings_fields('general'); ?>
  62  
  63  <table class="form-table">
  64  <tr valign="top">
  65  <th scope="row"><label for="blogname"><?php _e('Blog Title') ?></label></th>
  66  <td><input name="blogname" type="text" id="blogname" value="<?php form_option('blogname'); ?>" class="regular-text" /></td>
  67  </tr>
  68  <tr valign="top">
  69  <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" />
  71  <span class="description"><?php _e('In a few words, explain what this blog is about.') ?></span></td>
  72  </tr>
  73  <tr valign="top">
  74  <th scope="row"><label for="siteurl"><?php _e('WordPress address (URL)') ?></label></th>
  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>
  76  </tr>
  77  <tr valign="top">
  78  <th scope="row"><label for="home"><?php _e('Blog address (URL)') ?></label></th>
  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; ?> />
  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>
  81  </tr>
  82  <tr valign="top">
  83  <th scope="row"><label for="admin_email"><?php _e('E-mail address') ?> </label></th>
  84  <td><input name="admin_email" type="text" id="admin_email" value="<?php form_option('admin_email'); ?>" class="regular-text" />
  85  <span class="description"><?php _e('This address is used for admin purposes, like new user notification.') ?></span></td>
  86  </tr>
  87  <tr valign="top">
  88  <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">
  90  <input name="users_can_register" type="checkbox" id="users_can_register" value="1" <?php checked('1', get_option('users_can_register')); ?> />
  91  <?php _e('Anyone can register') ?></label>
  92  </fieldset></td>
  93  </tr>
  94  <tr valign="top">
  95  <th scope="row"><label for="default_role"><?php _e('New User Default Role') ?></label></th>
  96  <td>
  97  <select name="default_role" id="default_role"><?php wp_dropdown_roles( get_option('default_role') ); ?></select>
  98  </td>
  99  </tr>
 100  <tr>
 101  <?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');
 141  $tzstring = get_option('timezone_string');
 142  
 143  $check_zone_info = true;
 144  
 145  // Remove old Etc mappings.  Fallback to gmt_offset.
 146  if ( false !== strpos($tzstring,'Etc/GMT') )
 147      $tzstring = '';
 148  
 149  if (empty($tzstring)) { // set the Etc zone if no timezone string exists
 150      $check_zone_info = false;
 151      if ( 0 == $current_offset )
 152          $tzstring = 'UTC+0';
 153      elseif ($current_offset < 0)
 154          $tzstring = 'UTC' . $current_offset;
 155      else
 156          $tzstring = 'UTC+' . $current_offset;
 157  }
 158  
 159  ?>
 160  <th scope="row"><label for="timezone_string"><?php _e('Timezone') ?></label></th>
 161  <td>
 162  
 163  <select id="timezone_string" name="timezone_string">
 164  <?php echo wp_timezone_choice($tzstring); ?>
 165  </select>
 166  
 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>
 168  <?php if (get_option('timezone_string')) : ?>
 169      <span id="local-time"><?php printf(__('Local time is <code>%1$s</code>'), date_i18n($timezone_format)); ?></span>
 170  <?php endif; ?>
 171  <br />
 172  <span class="description"><?php _e('Choose a city in the same timezone as you.'); ?></span>
 173  <br />
 174  <span>
 175  <?php if ($check_zone_info && $tzstring) : ?>
 176      <?php
 177      $now = localtime(time(),true);
 178      if ($now['tm_isdst']) _e('This timezone is currently in daylight savings time.');
 179      else _e('This timezone is currently in standard time.');
 180      ?>
 181      <br />
 182      <?php
 183      if (function_exists('timezone_transitions_get')) {
 184          $dateTimeZoneSelected = new DateTimeZone($tzstring);
 185          foreach (timezone_transitions_get($dateTimeZoneSelected) as $tr) {
 186              if ($tr['ts'] > time()) {
 187                  $found = true;
 188                  break;
 189              }
 190          }
 191  
 192          if ( isset($found) && $found === true ) {
 193              echo ' ';
 194              $message = $tr['isdst'] ?
 195                  __('Daylight savings time begins on: <code>%s</code>.') :
 196                  __('Standard time begins  on: <code>%s</code>.');
 197              printf( $message, date_i18n(get_option('date_format').' '.get_option('time_format'), $tr['ts'] ) );
 198          } else {
 199              _e('This timezone does not observe daylight savings time.');
 200          }
 201      }
 202      ?>
 203      </span>
 204  <?php endif; ?>
 205  </td>
 206  
 207  <?php endif; ?>
 208  </tr>
 209  <tr>
 210  <th scope="row"><?php _e('Date Format') ?></th>
 211  <td>
 212      <fieldset><legend class="screen-reader-text"><span><?php _e('Date Format') ?></span></legend>
 213  <?php
 214  
 215      $date_formats = apply_filters( 'date_formats', array(
 216          __('F j, Y'),
 217          'Y/m/d',
 218          'm/d/Y',
 219          'd/m/Y',
 220      ) );
 221  
 222      $custom = TRUE;
 223  
 224      foreach ( $date_formats as $format ) {
 225          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 "==="
 227              echo " checked='checked'";
 228              $custom = FALSE;
 229          }
 230          echo ' /> ' . date_i18n( $format ) . "</label><br />\n";
 231      }
 232  
 233      echo '    <label><input type="radio" name="date_format" id="date_format_custom_radio" value="\c\u\s\t\o\m"';
 234      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";
 236  
 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";
 238  ?>
 239      </fieldset>
 240  </td>
 241  </tr>
 242  <tr>
 243  <th scope="row"><?php _e('Time Format') ?></th>
 244  <td>
 245      <fieldset><legend class="screen-reader-text"><span><?php _e('Time Format') ?></span></legend>
 246  <?php
 247  
 248      $time_formats = apply_filters( 'time_formats', array(
 249          __('g:i a'),
 250          'g:i A',
 251          'H:i',
 252      ) );
 253  
 254      $custom = TRUE;
 255  
 256      foreach ( $time_formats as $format ) {
 257          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 "==="
 259              echo " checked='checked'";
 260              $custom = FALSE;
 261          }
 262          echo ' /> ' . date_i18n( $format ) . "</label><br />\n";
 263      }
 264  
 265      echo '    <label><input type="radio" name="time_format" id="time_format_custom_radio" value="\c\u\s\t\o\m"';
 266      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";
 268  ?>
 269      </fieldset>
 270  </td>
 271  </tr>
 272  <tr>
 273  <th scope="row"><label for="start_of_week"><?php _e('Week Starts On') ?></label></th>
 274  <td><select name="start_of_week" id="start_of_week">
 275  <?php
 276  for ($day_index = 0; $day_index <= 6; $day_index++) :
 277      $selected = (get_option('start_of_week') == $day_index) ? 'selected="selected"' : '';
 278      echo "\n\t<option value='" . esc_attr($day_index) . "' $selected>" . $wp_locale->get_weekday($day_index) . '</option>';
 279  endfor;
 280  ?>
 281  </select></td>
 282  </tr>
 283  <?php do_settings_fields('general', 'default'); ?>
 284  </table>
 285  
 286  <?php do_settings_sections('general'); ?>
 287  
 288  <p class="submit">
 289  <input type="submit" name="Submit" class="button-primary" value="<?php esc_attr_e('Save Changes') ?>" />
 290  </p>
 291  </form>
 292  
 293  </div>
 294  
 295  <?php include ('./admin-footer.php') ?>


Generated: Fri Jan 8 00:19:48 2010 Cross-referenced by PHPXref 0.7