WordPress.org

Make WordPress Core

Changeset 18198


Ignore:
Timestamp:
06/08/11 17:39:12 (3 years ago)
Author:
nacin
Message:

Twenty Eleven: Properly handle the default link color for the dark theme. props dcowgill for the patch refresh. fixes #17351.

Location:
trunk/wp-content/themes/twentyeleven/inc
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-content/themes/twentyeleven/inc/theme-options.js

    r17754 r18198  
    99 
    1010    $(document).ready( function() { 
     11        $('#default-color').wrapInner('<a href="#" />'); 
     12 
    1113        farbtastic = $.farbtastic('#colorPickerDiv', pickColor); 
    1214 
     
    3234            $('#colorPickerDiv').hide(); 
    3335        }); 
     36 
     37        $('#default-color a').click( function(e) { 
     38            pickColor( '#' + this.innerHTML.replace(/[^a-fA-F0-9]/, '') ); 
     39            e.preventDefault(); 
     40        }); 
     41 
     42        $('.image-radio-option input:radio').change( function() { 
     43            var currentDefault = $('#default-color a'), 
     44                newDefault; 
     45            if ( $('#link-color').val() !== currentDefault.text() ) 
     46                return; 
     47            newDefault = $(this).next().val(); 
     48            currentDefault.text( newDefault ); 
     49            pickColor( newDefault ); 
     50        }); 
    3451    }); 
    3552})(jQuery); 
  • trunk/wp-content/themes/twentyeleven/inc/theme-options.php

    r18181 r18198  
    119119            'label' => __( 'Light', 'twentyeleven' ), 
    120120            'thumbnail' => get_template_directory_uri() . '/inc/images/light.png', 
     121            'default_link_color' => '#1b8be0', 
    121122        ), 
    122123        'dark' => array( 
     
    124125            'label' => __( 'Dark', 'twentyeleven' ), 
    125126            'thumbnail' => get_template_directory_uri() . '/inc/images/dark.png', 
     127            'default_link_color' => '#e4741f', 
    126128        ), 
    127129    ); 
     
    165167    $default_theme_options = array( 
    166168        'color_scheme' => 'light', 
    167         'link_color'   => '#1b8be0', 
     169        'link_color'   => twentyeleven_get_default_link_color( 'light' ), 
    168170        'theme_layout' => 'content-sidebar', 
    169171    ); 
    170172 
    171173    return apply_filters( 'twentyeleven_default_theme_options', $default_theme_options ); 
     174} 
     175 
     176/** 
     177 * Returns the default link color for Twenty Eleven, based on color scheme. 
     178 * 
     179 * @since Twenty Eleven 1.0 
     180 * 
     181 * @param $string $color_scheme Color scheme. Defaults to the active color scheme. 
     182 * @return $string Color. 
     183*/ 
     184function twentyeleven_get_default_link_color( $color_scheme = null ) { 
     185    if ( null === $color_scheme ) { 
     186        $options = twentyeleven_get_theme_options(); 
     187        $color_scheme = $options['color_scheme']; 
     188    } 
     189 
     190    $color_schemes = twentyeleven_color_schemes(); 
     191    if ( ! isset( $color_schemes[ $color_scheme ] ) ) 
     192        return false; 
     193 
     194    return $color_schemes[ $color_scheme ]['default_link_color']; 
    172195} 
    173196 
     
    206229                        <fieldset><legend class="screen-reader-text"><span><?php _e( 'Color Scheme', 'twentyeleven' ); ?></span></legend> 
    207230                        <?php 
    208                             foreach ( twentyeleven_color_schemes() as $color ) { 
     231                            foreach ( twentyeleven_color_schemes() as $scheme ) { 
    209232                                ?> 
    210233                                <div class="layout"> 
    211234                                <label class="description"> 
    212                                     <input type="radio" name="twentyeleven_theme_options[color_scheme]" value="<?php echo esc_attr( $color['value'] ); ?>" <?php checked( $options['color_scheme'], $color['value'] ); ?> /> 
     235                                    <input type="radio" name="twentyeleven_theme_options[color_scheme]" value="<?php echo esc_attr( $scheme['value'] ); ?>" <?php checked( $options['color_scheme'], $scheme['value'] ); ?> /> 
     236                                    <input type="hidden" id="default-color-<?php echo esc_attr( $scheme['value'] ); ?>" value="<?php echo esc_attr( $scheme['default_link_color'] ); ?>" /> 
    213237                                    <span> 
    214                                         <img src="<?php echo esc_url( $color['thumbnail'] ); ?>" alt=""/> 
    215                                         <?php echo $color['label']; ?> 
     238                                        <img src="<?php echo esc_url( $scheme['thumbnail'] ); ?>" width="136" height="122" alt="" /> 
     239                                        <?php echo $scheme['label']; ?> 
    216240                                    </span> 
    217241                                </label> 
     
    232256                            <div id="colorPickerDiv" style="z-index: 100; background:#eee; border:1px solid #ccc; position:absolute; display:none;"></div> 
    233257                            <br /> 
    234                             <small class="description"><?php printf( __( 'Default color: %s', 'twentyeleven' ), $default_options['link_color'] ); ?></small> 
     258                            <span><?php printf( __( 'Default color: %s', 'twentyeleven' ), '<span id="default-color">' . twentyeleven_get_default_link_color( $options['color_scheme'] ) . '</span>' ); ?></span>  
    235259                        </fieldset> 
    236260                    </td> 
     
    247271                                    <input type="radio" name="twentyeleven_theme_options[theme_layout]" value="<?php echo esc_attr( $layout['value'] ); ?>" <?php checked( $options['theme_layout'], $layout['value'] ); ?> /> 
    248272                                    <span> 
    249                                         <img src="<?php echo esc_url( $layout['thumbnail'] ); ?>" alt=""/> 
     273                                        <img src="<?php echo esc_url( $layout['thumbnail'] ); ?>" width="136" height="122" alt="" /> 
    250274                                        <?php echo $layout['label']; ?> 
    251275                                    </span> 
     
    280304    if ( isset( $input['color_scheme'] ) && array_key_exists( $input['color_scheme'], twentyeleven_color_schemes() ) ) 
    281305        $output['color_scheme'] = $input['color_scheme']; 
     306         
     307    // Our defaults for the link color may have changed, based on the color scheme.  
     308    $output['link_color'] = $defaults['link_color'] = twentyeleven_get_default_link_color( $output['color_scheme'] ); 
    282309 
    283310    // Link color must be 3 or 6 hexadecimal characters 
Note: See TracChangeset for help on using the changeset viewer.