WordPress.org

Plugin Directory

Changeset 503692


Ignore:
Timestamp:
02/11/12 17:30:11 (2 years ago)
Author:
GaryJ
Message:

Release 1.3.0

Location:
genesis-admin-bar-plus/trunk
Files:
2 added
2 edited

Legend:

Unmodified
Added
Removed
  • genesis-admin-bar-plus/trunk/genesis-admin-bar-plus.php

    r435247 r503692  
    66 * @author      Gary Jones 
    77 * 
     8 * @wordpress 
    89 * Plugin Name: Genesis Admin Bar Plus 
    9  * Version:     1.2.5 
     10 * Version:     1.3.0 
    1011 * Plugin URI:  http://code.garyjones.co.uk/plugins/genesis-admin-bar-plus/ 
    1112 * Description: The plugin adds resources links related the <a href="http://genesis-theme-framework.com/">Genesis Theme</a> to the admin bar. It is a complete rewrite, effectively forked from <a href="http://profiles.wordpress.org/users/DeFries/">DeFries</a>' <a href="http://wordpress.org/extend/plugins/genesis-admin-bar-addition/">Genesis Admin Bar Addition</a>. See the readme for how to add specific support boards and other items to the menu. 
     
    3233 * present in WordPress 3.1 and above. 
    3334 * 
     35 * @package GenesisAdminBarPlus 
     36 * @author  Gary Jones 
     37 * 
    3438 * @since 1.0.0 
    3539 */ 
     
    3943     * Prefix to ensure IDs are unique. 
    4044     * 
     45     * @since 1.0.0 
     46     * 
    4147     * @var string 
    4248     */ 
    43     var $prefix = 'genesis-admin-bar-plus-'; 
    44  
    45     /** 
     49    public $prefix = 'genesis-admin-bar-plus-'; 
     50 
     51    /** 
     52     * Holds an instance of the Menu class. 
     53     * 
     54     * @since 1.0.0 
     55     * 
     56     * @var Genesis_Admin_Bar_Plus_Menu 
     57     */ 
     58    public $menu; 
     59 
     60    /** 
     61     * Holds array of menu items. 
     62     * 
     63     * @since 1.0.0 
     64     * 
     65     * @var array Menu Items collection once finally pulled from Genesis_Admin_Bar_Plus. 
     66     */ 
     67    public $menu_items = array(); 
     68 
     69    /** 
     70     * Create Genesis menu item reference. 
     71     * 
     72     * @since 1.0.0 
     73     * 
     74     * @var string 
     75     */ 
     76    public $genesis; 
     77 
     78    /** 
     79     * Create support menu item reference. 
     80     * 
     81     * @since 1.0.0 
     82     * 
     83     * @var string 
     84     */ 
     85    public $support; 
     86 
     87    /** 
     88     * Create development menu item reference. 
     89     * 
     90     * @since 1.0.0 
     91     * 
     92     * @var string 
     93     */ 
     94    public $dev; 
     95 
     96    /** 
     97     * Create Studiopress menu item reference. 
     98     * 
     99     * @since 1.0.0 
     100     * 
     101     * @var string 
     102     */ 
     103    public $studiopress; 
     104 
     105    /** 
     106     * Create settings menu item reference. 
     107     * 
     108     * @since 1.0.0 
     109     * 
     110     * @var string 
     111     */ 
     112    public $settings; 
     113 
     114    /** 
     115     * The translation gettext domain for the plugin. 
     116     * 
     117     * @since 1.0.0 
     118     * 
     119     * @var string Translation domain 
     120     */ 
     121    public $domain = 'genesis-admin-bar-plus'; 
     122 
     123    /** 
     124     * Holds copy of instance, so other plugins can remove our hooks. 
     125     * 
     126     * @since 1.0.0 
     127     * 
    46128     * @var Genesis_Admin_Bar_Plus 
    47129     */ 
    48     var $menu; 
    49  
    50     /** 
    51      * @var Array Menu Items collection once finally pulled from Genesis_Admin_Bar_Plus 
    52      */ 
    53     var $menu_items = array(); 
    54  
    55     /**#@+ 
    56      * Create parent menu item references. 
    57      * 
    58      * @var type 
    59      */ 
    60     var $genesis; 
    61     var $support; 
    62     var $dev; 
    63     var $studiopress; 
    64     var $settings; 
    65     /**#@-*/ 
    66  
    67     /** 
    68      * The translation gettext domain for the plugin. 
    69      * 
    70      * @since 1.0.0 
    71      * 
    72      * @var string Translation domain 
    73      */ 
    74     var $domain = 'genesis-admin-bar-plus'; 
    75  
    76     /** 
    77      * Holds copy of instance, so other plugins can remove our hooks. 
    78      * 
    79      * @since 1.0.0 
    80      * @link  http://core.trac.wordpress.org/attachment/ticket/16149/query-standard-format-posts.php 
    81      * @link  http://twitter.com/#!/markjaquith/status/66862769030438912 
    82      * 
    83      * @var   Genesis_Admin_Bar_Plus 
    84      */ 
    85     static $instance; 
    86  
    87     /** 
    88      * Constructor. 
    89      * 
    90      * @since 1.0.0 
    91      */ 
    92     function __construct() { 
     130    public static $instance; 
     131 
     132    /** 
     133     * Assign copy of self, load translation ifles, and hook in other functions. 
     134     * 
     135     * @since 1.0.0 
     136     */ 
     137    public function __construct() { 
    93138 
    94139        self::$instance = $this; 
     140 
     141        if ( ! load_plugin_textdomain( $this->domain, false, '/wp-content/languages/' ) ) 
     142            load_plugin_textdomain( $this->domain, false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' ); 
     143 
    95144        add_action( 'init', array( &$this, 'init' ) ); 
    96145 
    97         // Ensure plugin is translatable 
    98         if( ! load_plugin_textdomain( $this->domain, false, '/wp-content/languages/' ) ) 
    99             load_plugin_textdomain( $this->domain, false, dirname( plugin_basename( __FILE__ ) ) . '/languages/' ); 
    100  
    101146    } 
    102147 
     
    106151     * @since 1.0.0 
    107152     */ 
    108     function init() { 
     153    public function init() { 
    109154 
    110155        // Populate parent menu references 
     
    122167        add_action( 'wp_head', array( &$this, 'style' ) ); 
    123168        add_action( 'admin_head', array( &$this, 'style' ) ); 
    124         add_action( 'admin_bar_menu', array( &$this, 'set_default_menu_items' ), 95 ); 
     169        add_action( 'admin_bar_menu', array( &$this, 'set_menu_items' ), 95 ); 
    125170        add_action( 'admin_bar_menu', array( &$this, 'add_menus' ), 96 ); 
    126171 
     
    138183     * @since 1.0.0 
    139184     */ 
    140     function set_default_menu_items() { 
     185    public function set_menu_items() { 
    141186 
    142187        $menu = $this->menu; 
    143188 
    144189        // Add top-level Genesis item 
    145         $menu->add_item( 'genesis', array( 
    146             'title'    => __( 'Genesis', $this->domain ), 
    147             'href'     => '', 
    148             'position' => 0, 
    149             'meta'     => array( 'class' => 'gabp-icon-genesis gabp-no-link', 'target' => '', 'html' => '<span class="gabp-icon"></span>' ) 
    150         ) ); 
     190        $menu->add_item( 
     191            'genesis', 
     192            array( 
     193                'title'    => '<span class="ab-icon"></span><span class="ab-label">' . _x( 'Genesis', 'admin bar menu group label', $this->domain ) . '</span>', 
     194                'href'     => '', 
     195                'position' => 0, 
     196            ) 
     197        ); 
    151198 
    152199        // Add Genesis menu items 
    153         $menu->add_item( 'support', array( 
    154             'parent'   => $this->genesis, 
    155             'title'    => __( 'Genesis Support', $this->domain ), 
    156             'href'     => 'http://www.studiopress.com/support', 
    157             'position' => 10 
    158         ) ); 
    159         $menu->add_item( 'dev', array( 
    160             'parent'   => $this->genesis, 
    161             'title'    => __( 'Genesis Codex', $this->domain ), 
    162             'href'     => 'http://dev.studiopress.com/', 
    163             'position' => 20 
    164         ) ); 
    165         $menu->add_item( 'studiopress', array( 
    166             'parent'   => $this->genesis, 
    167             'title'    => __( 'StudioPress', $this->domain ), 
    168             'href'     => 'http://www.studiopress.com/', 
    169             'position' => 30 
    170         ) ); 
     200        $menu->add_item( 
     201            'support', 
     202            array( 
     203                'parent'   => $this->genesis, 
     204                'title'    => __( 'Genesis Support', $this->domain ), 
     205                'href'     => 'http://www.studiopress.com/support', 
     206                'position' => 10, 
     207            ) 
     208        ); 
     209        $menu->add_item( 
     210            'dev', 
     211            array( 
     212                'parent'   => $this->genesis, 
     213                'title'    => __( 'Genesis Tutorials', $this->domain ), 
     214                'href'     => 'http://www.studiopress.com/tutorials', 
     215                'position' => 20, 
     216            ) 
     217        ); 
     218        $menu->add_item( 
     219            'studiopress', 
     220            array( 
     221                'parent'   => $this->genesis, 
     222                'title'    => __( 'StudioPress', $this->domain ), 
     223                'href'     => 'http://www.studiopress.com/', 
     224                'position' => 30, 
     225            ) 
     226        ); 
    171227 
    172228        // Add Support submenu items 
    173229        $boards = $this->get_support_boards(); 
    174         $i = 0; 
    175         foreach( $boards as $key => $board ) { 
     230        $board_count = 0; 
     231        foreach ( $boards as $key => $board ) { 
    176232            if ( current_theme_supports( 'gabp-support-' . $key ) ) { 
    177                 $menu->add_item( $key . '-support', array( 
    178                     'parent'   => $this->support, 
    179                     'title'    => $board[0], 
    180                     'href'     => 'http://www.studiopress.com/support/forumdisplay.php?f=' . $this->get_support_board( $key ), 
    181                     'position' => 10 + 2 * $i 
    182                 ) ); 
    183             } 
    184             $i++; 
     233                $menu->add_item( 
     234                    $key . '-support', 
     235                    array( 
     236                        'parent'   => $this->support, 
     237                        'title'    => $board[0], 
     238                        'href'     => 'http://www.studiopress.com/support/forumdisplay.php?f=' . $this->get_support_board( $key ), 
     239                        'position' => 10 + 2 * $board_count, 
     240                    ) 
     241                ); 
     242            } 
     243            $board_count++; 
    185244        } 
    186245 
    187         // Add Codex / Dev submenu items 
    188 //      $menu->add_item( 'sitemap', array( 
    189 //          'parent'   => $this->dev, 
    190 //          'title'    => __( 'Dev.StudioPress Sitemap', $this->domain ), 
    191 //          'href'     => 'http://dev.studiopress.com/sitemap', 
    192 //          'position' => 10 
    193 //      ) ); 
    194         $menu->add_item( 'hooks', array( 
    195             'parent'   => $this->dev, 
    196             'title'    => __( 'Action Hooks Reference', $this->domain ), 
    197             'href'     => 'http://dev.studiopress.com/hook-reference', 
    198             'position' => 20 
    199         ) ); 
    200         $menu->add_item( 'filters', array( 
    201             'parent'   => $this->dev, 
    202             'title'    => __( 'Filter Hooks Reference', $this->domain ), 
    203             'href'     => 'http://dev.studiopress.com/filter-reference', 
    204             'position' => 30 
    205         ) ); 
    206 //      $menu->add_item( 'functions', array( 
    207 //          'parent'   => $this->dev, 
    208 //          'title'    => __( 'Functions Reference', $this->domain ), 
    209 //          'href'     => 'http://dev.studiopress.com/function-reference', 
    210 //          'position' => 40 
    211 //      ) ); 
    212         $menu->add_item( 'shortcodes', array( 
    213             'parent'   => $this->dev, 
    214             'title'    => __( 'Shortcodes Reference', $this->domain ), 
    215             'href'     => 'http://dev.studiopress.com/shortcode-reference', 
    216             'position' => 50 
    217         ) ); 
    218         $menu->add_item( 'visual', array( 
    219             'parent'   => $this->dev, 
    220             'title'    => __( 'Visual Markup Guide', $this->domain ), 
    221             'href'     => 'http://dev.studiopress.com/visual-markup-guide', 
    222             'position' => 60 
    223         ) ); 
     246        // Add Tutorials submenu items 
     247        $menu->add_item( 
     248            'hooks', 
     249            array( 
     250                'parent'   => $this->dev, 
     251                'title'    => __( 'Action Hooks Reference', $this->domain ), 
     252                'href'     => 'http://www.studiopress.com/tutorials/hook-reference', 
     253                'position' => 20, 
     254            ) 
     255        ); 
     256        $menu->add_item( 
     257            'filters', 
     258            array( 
     259                'parent'   => $this->dev, 
     260                'title'    => __( 'Filter Hooks Reference', $this->domain ), 
     261                'href'     => 'http://www.studiopress.com/tutorials/filter-reference', 
     262                'position' => 30, 
     263            ) 
     264        ); 
     265        $menu->add_item( 
     266            'visual-hooks', 
     267            array( 
     268                'parent'   => $this->dev, 
     269                'title'    => __( 'Visual Hooks Guide', $this->domain ), 
     270                'href'     => 'http://genesistutorials.com/visual-hook-guide', 
     271                'position' => 35, 
     272            ) 
     273        ); 
     274//      $menu->add_item( 
     275//          'functions', 
     276//          array( 
     277//              'parent'   => $this->dev, 
     278//              'title'    => __( 'Functions Reference', $this->domain ), 
     279//              'href'     => 'http://dev.studiopress.com/function-reference', 
     280//              'position' => 40, 
     281//          ) 
     282//      ); 
     283        $menu->add_item( 
     284            'shortcodes', 
     285            array( 
     286                'parent'   => $this->dev, 
     287                'title'    => __( 'Shortcodes Reference', $this->domain ), 
     288                'href'     => 'http://www.studiopress.com/tutorials/shortcode-reference', 
     289                'position' => 50, 
     290            ) 
     291        ); 
     292        $menu->add_item( 
     293            'visual', 
     294            array( 
     295                'parent'   => $this->dev, 
     296                'title'    => __( 'Visual Markup Guide', $this->domain ), 
     297                'href'     => 'http://www.studiopress.com/tutorials/visual-markup-guide', 
     298                'position' => 60, 
     299            ) 
     300        ); 
    224301 
    225302        // Add StudioPress submenu items 
    226         $menu->add_item( 'themes', array( 
    227             'parent'   => $this->studiopress, 
    228             'title'    => __( 'Themes', $this->domain ), 
    229             'href'     => 'http://www.studiopress.com/themes', 
    230             'position' => 10 
    231         ) ); 
    232         $menu->add_item( 'plugins', array( 
    233             'parent'   => $this->studiopress, 
    234             'title'    => __( 'Plugins', $this->domain ), 
    235             'href'     => 'http://www.studiopress.com/plugins', 
    236             'position' => 20 
    237         ) ); 
    238         $menu->add_item( 'faqs', array( 
    239             'parent'   => $this->studiopress, 
    240             'title'    => __( '<abbr title="Frequently asked question">FAQ</abbr>s', $this->domain ), 
    241             'href'     => '', 
    242             'position' => 30, 
    243             'meta'     => array( 'target' => '', 'class' => 'gabp-no-link' ) 
    244         ) ); 
     303        $menu->add_item( 
     304            'themes', 
     305            array( 
     306                'parent'   => $this->studiopress, 
     307                'title'    => __( 'Themes', $this->domain ), 
     308                'href'     => 'http://www.studiopress.com/themes', 
     309                'position' => 10, 
     310            ) 
     311        ); 
     312        $menu->add_item( 
     313            'plugins', 
     314            array( 
     315                'parent'   => $this->studiopress, 
     316                'title'    => __( 'Plugins', $this->domain ), 
     317                'href'     => 'http://www.studiopress.com/plugins', 
     318                'position' => 20, 
     319            ) 
     320        ); 
     321        $menu->add_item( 
     322            'faqs', 
     323            array( 
     324                'parent'   => $this->studiopress, 
     325                'title'    => __( '<abbr title="Frequently asked question">FAQ</abbr>s', $this->domain ), 
     326                'href'     => '', 
     327                'position' => 30, 
     328                'meta'     => array( 'target' => '', 'class' => 'gabp-no-link' ), 
     329            ) 
     330        ); 
     331        $menu->add_item( 
     332            'showcase', 
     333            array( 
     334                'parent'   => $this->studiopress, 
     335                'title'    => __( 'Showcase', $this->domain ), 
     336                'href'     => 'http://www.studiopress.com/showcase', 
     337                'position' => 40, 
     338            ) 
     339        ); 
    245340 
    246341        // Add FAQs sub-submenu items 
    247         $menu->add_item( 'general-faqs', array( 
    248             'parent'   => $this->faqs, 
    249             'title'    => __( 'General <abbr>FAQ</abbr>s', $this->domain ), 
    250             'href'     => 'http://www.studiopress.com/general-faqs', 
    251             'position' => 10 
    252         ) ); 
    253         $menu->add_item( 'support-faqs', array( 
    254             'parent'   => $this->faqs, 
    255             'title'    => __( 'Support <abbr>FAQ</abbr>s', $this->domain ), 
    256             'href'     => 'http://www.studiopress.com/support-faqs', 
    257             'position' => 20 
    258         ) ); 
    259         $menu->add_item( 'theme-faqs', array( 
    260             'parent'   => $this->faqs, 
    261             'title'    => __( 'Theme <abbr>FAQ</abbr>s', $this->domain ), 
    262             'href'     => 'http://www.studiopress.com/theme-faqs', 
    263             'position' => 30 
    264         ) ); 
     342        $menu->add_item( 
     343            'general-faqs', 
     344            array( 
     345                'parent'   => $this->faqs, 
     346                'title'    => __( 'General <abbr>FAQ</abbr>s', $this->domain ), 
     347                'href'     => 'http://www.studiopress.com/general-faqs', 
     348                'position' => 10, 
     349            ) 
     350        ); 
     351        $menu->add_item( 
     352            'support-faqs', 
     353            array( 
     354                'parent'   => $this->faqs, 
     355                'title'    => __( 'Support <abbr>FAQ</abbr>s', $this->domain ), 
     356                'href'     => 'http://www.studiopress.com/support-faqs', 
     357                'position' => 20, 
     358            ) 
     359        ); 
     360        $menu->add_item( 
     361            'theme-faqs', 
     362            array( 
     363                'parent'   => $this->faqs, 
     364                'title'    => __( 'Theme <abbr>FAQ</abbr>s', $this->domain ), 
     365                'href'     => 'http://www.studiopress.com/theme-faqs', 
     366                'position' => 30, 
     367            ) 
     368        ); 
    265369 
    266370        // Add Settings menu only if Genesis or a child theme is active 
    267371        if ( defined( 'GENESIS_SETTINGS_FIELD' ) ) { 
    268  
    269372            // Add Settings menu item 
    270             $menu->add_item( 'settings', array( 
    271                 'parent'   => $this->genesis, 
    272                 'title'    => __( 'Settings', $this->domain ), 
    273                 'href'     => is_admin() ? menu_page_url( 'genesis', false ) : admin_url( add_query_arg( 'page', 'genesis', 'admin.php' ) ), 
    274                 'position' => 40, 
    275                 'meta'     => array( 'target' => '' ) 
    276             ) ); 
     373            $menu->add_item( 
     374                'settings', 
     375                array( 
     376                    'parent'   => $this->genesis, 
     377                    'title'    => __( 'Settings', $this->domain ), 
     378                    'href'     => is_admin() ? menu_page_url( 'genesis', false ) : admin_url( add_query_arg( 'page', 'genesis', 'admin.php' ) ), 
     379                    'position' => 40, 
     380                    'meta'     => array( 'target' => '' ), 
     381                ) 
     382            ); 
    277383 
    278384            // Add Settings submenu items 
    279             $menu->add_item( 'theme-settings', array( 
    280                 'parent'   => $this->settings, 
    281                 'title'    => __( 'Theme Settings', $this->domain ), 
    282                 'href'     => is_admin() ? menu_page_url( 'genesis', false ) : admin_url( add_query_arg( 'page', 'genesis', 'admin.php' ) ), 
    283                 'position' => 10, 
    284                 'meta'     => array( 'target' => '' ) 
    285             ) ); 
    286             $menu->add_item( 'seo-settings', array( 
    287                 'parent'   => $this->settings, 
    288                 'title'    => __( 'SEO Settings', $this->domain ), 
    289                 'href'     => is_admin() ? menu_page_url( 'seo-settings', false ) : admin_url( add_query_arg( 'page', 'seo-settings', 'admin.php' ) ), 
    290                 'position' => 20, 
    291                 'meta'     => array( 'target' => '' ) 
    292             ) ); 
     385            $menu->add_item( 
     386                'theme-settings', 
     387                array( 
     388                    'parent'   => $this->settings, 
     389                    'title'    => __( 'Theme Settings', $this->domain ), 
     390                    'href'     => is_admin() ? menu_page_url( 'genesis', false ) : admin_url( add_query_arg( 'page', 'genesis', 'admin.php' ) ), 
     391                    'position' => 10, 
     392                    'meta'     => array( 'target' => '' ), 
     393                ) 
     394            ); 
     395            $menu->add_item( 
     396                'seo-settings', 
     397                array( 
     398                    'parent'   => $this->settings, 
     399                    'title'    => __( 'SEO Settings', $this->domain ), 
     400                    'href'     => is_admin() ? menu_page_url( 'seo-settings', false ) : admin_url( add_query_arg( 'page', 'seo-settings', 'admin.php' ) ), 
     401                    'position' => 20, 
     402                    'meta'     => array( 'target' => '' ), 
     403                ) 
     404            ); 
    293405 
    294406            // Add Prose Design Settings if Prose is active 
    295407            if ( defined( 'PROSE_DOMAIN' ) ) { 
    296                 $menu->add_item( 'design-settings', array( 
    297                     'parent'   => $this->settings, 
    298                     'title'    => __( 'Design Settings', $this->domain ), 
    299                     'href'     => is_admin() ? menu_page_url( 'design-settings', false ) : admin_url( add_query_arg( 'page', 'design-settings', 'admin.php' ) ), 
    300                     'position' => 30, 
    301                     'meta'     => array( 'target' => '' ) 
    302                 ) ); 
     408                $menu->add_item( 
     409                    'design-settings', 
     410                    array( 
     411                        'parent'   => $this->settings, 
     412                        'title'    => __( 'Design Settings', $this->domain ), 
     413                        'href'     => is_admin() ? menu_page_url( 'design-settings', false ) : admin_url( add_query_arg( 'page', 'design-settings', 'admin.php' ) ), 
     414                        'position' => 30, 
     415                        'meta'     => array( 'target' => '' ), 
     416                    ) 
     417                ); 
    303418            } 
    304419 
    305420            // Add GenesisConnect Settings if active 
    306421            if ( ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'genesisconnect/genesisconnect.php' ) ) || function_exists( 'genesisconnect_init' ) ) { 
    307                 $menu->add_item( 'genesisconnect', array( 
    308                     'parent'   => $this->settings, 
    309                     'title'    => __( 'GenesisConnect', $this->domain ), 
    310                     'href'     => is_admin() ? menu_page_url( 'connect-settings', false ) : admin_url( add_query_arg( 'page', 'connect-settings', 'admin.php' ) ), 
    311                     'position' => 40, 
    312                     'meta'     => array( 'target' => '' ) 
    313                 ) ); 
     422                $menu->add_item( 
     423                    'genesisconnect', 
     424                    array( 
     425                        'parent'   => $this->settings, 
     426                        'title'    => __( 'GenesisConnect', $this->domain ), 
     427                        'href'     => is_admin() ? menu_page_url( 'connect-settings', false ) : admin_url( add_query_arg( 'page', 'connect-settings', 'admin.php' ) ), 
     428                        'position' => 40, 
     429                        'meta'     => array( 'target' => '' ), 
     430                    ) 
     431                ); 
    314432            } 
    315433 
    316434            // Add Simple Breadcrumbs Settings if active 
    317435            if ( ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'genesis-simple-breadcrumbs/plugin.php' ) ) || function_exists( 'gsb_settings_init' ) ) { 
    318                 $menu->add_item( 'simple-breadcrumbs', array( 
    319                     'parent'   => $this->settings, 
    320                     'title'    => __( 'Simple Breadcrumbs', $this->domain ), 
    321                     'href'     => is_admin() ? menu_page_url( 'gsb', false ) : admin_url( add_query_arg( 'page', 'gsb', 'admin.php' ) ), 
    322                     'position' => 45, 
    323                     'meta'     => array( 'target' => '' ) 
    324                 ) ); 
     436                $menu->add_item( 
     437                    'simple-breadcrumbs', 
     438                    array( 
     439                        'parent'   => $this->settings, 
     440                        'title'    => __( 'Simple Breadcrumbs', $this->domain ), 
     441                        'href'     => is_admin() ? menu_page_url( 'gsb', false ) : admin_url( add_query_arg( 'page', 'gsb', 'admin.php' ) ), 
     442                        'position' => 45, 
     443                        'meta'     => array( 'target' => '' ), 
     444                    ) 
     445                ); 
    325446            } 
    326447 
    327448            // Add Simple Edits Settings if active 
    328449            if ( ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'genesis-simple-edits/plugin.php' ) ) || defined( 'GSE_SETTINGS_FIELD' ) ) { 
    329                 $menu->add_item( 'simple-edits', array( 
    330                     'parent'   => $this->settings, 
    331                     'title'    => __( 'Simple Edits', $this->domain ), 
    332                     'href'     => is_admin() ? menu_page_url( 'genesis-simple-edits', false ) : admin_url( add_query_arg( 'page', 'genesis-simple-edits', 'admin.php' ) ), 
    333                     'position' => 50, 
    334                     'meta'     => array( 'target' => '' ) 
    335                 ) ); 
     450                $menu->add_item( 
     451                    'simple-edits', 
     452                    array( 
     453                        'parent'   => $this->settings, 
     454                        'title'    => __( 'Simple Edits', $this->domain ), 
     455                        'href'     => is_admin() ? menu_page_url( 'genesis-simple-edits', false ) : admin_url( add_query_arg( 'page', 'genesis-simple-edits', 'admin.php' ) ), 
     456                        'position' => 50, 
     457                        'meta'     => array( 'target' => '' ), 
     458                    ) 
     459                ); 
    336460            } 
    337461 
    338462            // Add Simple Hooks Settings if active 
    339463            if ( ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'genesis-simple-hooks/plugin.php' ) ) || defined( 'SIMPLEHOOKS_SETTINGS_FIELD' ) ) { 
    340                 $menu->add_item( 'simple-hooks', array( 
    341                     'parent'   => $this->settings, 
    342                     'title'    => __( 'Simple Hooks', $this->domain ), 
    343                     'href'     => is_admin() ? menu_page_url( 'simplehooks', false ) : admin_url( add_query_arg( 'page', 'simplehooks', 'admin.php' ) ), 
    344                     'position' => 60, 
    345                     'meta'     => array( 'target' => '' ) 
    346                 ) ); 
     464                $menu->add_item( 
     465                    'simple-hooks', 
     466                    array( 
     467                        'parent'   => $this->settings, 
     468                        'title'    => __( 'Simple Hooks', $this->domain ), 
     469                        'href'     => is_admin() ? menu_page_url( 'simplehooks', false ) : admin_url( add_query_arg( 'page', 'simplehooks', 'admin.php' ) ), 
     470                        'position' => 60, 
     471                        'meta'     => array( 'target' => '' ), 
     472                    ) 
     473                ); 
    347474            } 
    348475 
     
    351478            // Add Simple Sidebars Settings if active 
    352479            if ( ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'genesis-simple-sidebars/plugin.php' ) ) || defined( 'SS_SETTINGS_FIELD' ) ) { 
    353                 $menu->add_item( 'simple-sidebars', array( 
    354                     'parent'   => $this->settings, 
    355                     'title'    => __( 'Simple Sidebars', $this->domain ), 
    356                     'href'     => is_admin() ? menu_page_url( 'simple-sidebars', false ) : admin_url( add_query_arg( 'page', 'simple-sidebars', 'admin.php' ) ), 
    357                     'position' => 70, 
    358                     'meta'     => array( 'target' => '' ) 
    359                 ) ); 
     480                $menu->add_item( 
     481                    'simple-sidebars', 
     482                    array( 
     483                        'parent'   => $this->settings, 
     484                        'title'    => __( 'Simple Sidebars', $this->domain ), 
     485                        'href'     => is_admin() ? menu_page_url( 'simple-sidebars', false ) : admin_url( add_query_arg( 'page', 'simple-sidebars', 'admin.php' ) ), 
     486                        'position' => 70, 
     487                        'meta'     => array( 'target' => '' ), 
     488                    ) 
     489                ); 
    360490            } 
    361491 
    362492            // Add Simple URLs Settings if active 
    363493            if ( ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'simple-urls/plugin.php' ) ) || class_exists( 'SimpleURLs' ) ) { 
    364                 $menu->add_item( 'simple-urls', array( 
    365                     'parent'   => $this->settings, 
    366                     'title'    => __( 'Simple URLs', $this->domain ), 
    367                     'href'     => admin_url( add_query_arg( 'post_type', 'surl', 'edit.php' ) ), 
    368                     'position' => 80, 
    369                     'meta'     => array( 'target' => '' ) 
    370                 ) ); 
     494                $menu->add_item( 
     495                    'simple-urls', 
     496                    array( 
     497                        'parent'   => $this->settings, 
     498                        'title'    => __( 'Simple URLs', $this->domain ), 
     499                        'href'     => admin_url( add_query_arg( 'post_type', 'surl', 'edit.php' ) ), 
     500                        'position' => 80, 
     501                        'meta'     => array( 'target' => '' ), 
     502                    ) 
     503                ); 
    371504            } 
    372505 
    373506            // Add Genesis Slider Settings if active 
    374507            if ( ( function_exists( 'is_plugin_active' ) && is_plugin_active( 'genesis-slider/plugin.php' ) ) || class_exists( 'Genesis_SliderWidget' ) ) { 
    375                 $menu->add_item( 'genesis-slider', array( 
    376                     'parent'   => $this->settings, 
    377                     'title'    => __( 'Genesis Slider', $this->domain ), 
    378                     'href'     => is_admin() ? menu_page_url( 'genesis_slider', false ) : admin_url( add_query_arg( 'page', 'genesis_slider', 'admin.php' ) ), 
    379                     'position' => 90, 
    380                     'meta'     => array( 'target' => '' ) 
    381                 ) ); 
     508                $menu->add_item( 
     509                    'genesis-slider', 
     510                    array( 
     511                        'parent'   => $this->settings, 
     512                        'title'    => __( 'Genesis Slider', $this->domain ), 
     513                        'href'     => is_admin() ? menu_page_url( 'genesis_slider', false ) : admin_url( add_query_arg( 'page', 'genesis_slider', 'admin.php' ) ), 
     514                        'position' => 90, 
     515                        'meta'     => array( 'target' => '' ), 
     516                    ) 
     517                ); 
    382518            } 
    383519 
     
    391527    /** 
    392528     * Ensure that child item has a minimum position equal to that of its parent. 
    393      * Recursive function. Private. 
     529     * Recursive function. 
    394530     * 
    395531     * @since  1.1.0 
    396532     * 
    397      * @param  string $id Menu item ID 
    398      * @param  array $menu_items Menu item arguments 
     533     * @param  string $menu_item_id Menu item ID. 
     534     * @param  array  $menu_items   Menu item arguments. 
     535     * 
    399536     * @return array 
    400537     */ 
    401     function _pre_sort( $id ) { 
     538    private function _pre_sort( $menu_item_id ) { 
    402539 
    403540        /** Get the menu item arguments */ 
    404         $menu_item = $this->menu_items[$id]; 
     541        $menu_item = $this->menu_items[$menu_item_id]; 
    405542 
    406543        /** Stop recursion on items already recursed */ 
     
    414551        /** Easter Egg - give position of child items as 0, and get random order! */ 
    415552        if ( 0 == $menu_item['position'] ) 
    416             $this->menu_items[$id]['position'] = mt_rand( 1, 99 ); 
     553            $this->menu_items[$menu_item_id]['position'] = mt_rand( 1, 99 ); 
    417554 
    418555        /** Get the parent menu item ID */ 
     
    423560 
    424561        /** Add recursion flag */ 
    425         $this->menu_items[$id]['pre_sorted'] = true; 
     562        $this->menu_items[$menu_item_id]['pre_sorted'] = true; 
    426563 
    427564        /** If the parent menu item has it's own parent, recurse this function */ 
     
    433570 
    434571        /** Add parent item position to child position */ 
    435         $this->menu_items[$id]['position'] = $this->menu_items[$id]['position'] + $parent_item['position']; 
    436  
    437     } 
    438  
    439     /** 
    440      * Helper function to sort the menu items by position. Private. 
    441      * 
    442      * @since 1.0.0 
    443      */ 
    444     function _sort( $a, $b ) { 
    445  
    446         $ap = (int) $a['position']; 
    447         $bp = (int) $b['position']; 
    448  
    449         if ( $ap == $bp ) { 
     572        $this->menu_items[$menu_item_id]['position'] = $this->menu_items[$menu_item_id]['position'] + $parent_item['position']; 
     573 
     574    } 
     575 
     576    /** 
     577     * Helper function to sort the menu items by position. 
     578     * 
     579     * @since 1.0.0 
     580     * 
     581     * @param integer $a 
     582     * @param integer $b 
     583     * 
     584     * @return integer Returns 1 or -1. 
     585     */ 
     586    private function _sort( $item_a, $item_b ) { 
     587 
     588        $item_a_position = (int) $item_a['position']; 
     589        $item_b_position = (int) $item_b['position']; 
     590 
     591        if ( $item_a_position == $item_b_position ) { 
    450592            return 0; 
    451593        } 
    452         return ( $ap > $bp ) ? +1 : -1; 
     594        return ( $item_a_position > $item_b_position ) ? 1 : -1; 
    453595 
    454596    } 
     
    461603     * 
    462604     * @since 1.0.0 
     605     * 
    463606     * @uses  Genesis_Admin_Bar_Plus::sort() Helper function for uasort() 
    464607     * @uses  Genesis_Admin_Bar_Plus_Menu::get_items() Return default menu items 
     
    467610     * @global WP_Admin_Bar $wp_admin_bar 
    468611     */ 
    469     function add_menus() { 
     612    public function add_menus() { 
    470613 
    471614        global $wp_admin_bar; 
     
    484627        // Loop through menu items 
    485628        foreach ( $this->menu_items as $id => $menu_item ) { 
    486  
    487629            // Add in item ID 
    488630            $menu_item['id'] = $this->prefix . $id; 
     
    516658     * @return array Array of support boards. 
    517659     */ 
    518     function get_support_boards() { 
     660    public function get_support_boards() { 
    519661 
    520662        $boards = array( 
     
    523665            'agency'             => array( __( 'Agency Child Theme', $this->domain ), 119 ), 
    524666            'agentpress'         => array( __( 'AgentPress Child Theme', $this->domain ), 86 ), 
     667            'agentpress2'        => array( __( 'AgentPress 2 Child Theme', $this->domain ), 188 ), 
    525668            'amped'              => array( __( 'Amped Child Theme', $this->domain ), 93 ), 
    526669            'associate'          => array( __( 'Associate Child Theme', $this->domain ), 174 ), 
     670            'backcountry'        => array( __( 'Backcountry Child Theme', $this->domain ), 195 ), 
     671            'balance'            => array( __( 'Balance Child Theme', $this->domain ), 201 ), 
    527672            'beecrafty'          => array( __( 'BeeCrafty Child Theme', $this->domain ), 138 ), 
    528673            'blingless'          => array( __( 'Blingless Child Theme', $this->domain ), 181 ), 
    529674            'blissful'           => array( __( 'Blissful Child Theme', $this->domain ), 169 ), 
    530675            'church'             => array( __( 'Church Child Theme', $this->domain ), 124 ), 
     676            'clip-cart'          => array( __( 'Clip Cart Child Theme', $this->domain ), 196 ), 
    531677            'corporate'          => array( __( 'Corporate Child Theme', $this->domain ), 109 ), 
     678            'cre8tive-burst'     => array( __( 'Cre8tive Burst Child Theme', $this->domain ), 200 ), 
    532679            'crystal'            => array( __( 'Crystal Child Theme', $this->domain ), 160 ), 
     680            'curtail'            => array( __( 'Crystal Child Theme', $this->domain ), 191 ), 
    533681            'delicious'          => array( __( 'Delicious Child Theme', $this->domain ), 130 ), 
     682            'driskill'           => array( __( 'Driskill Child Theme', $this->domain ), 189 ), 
    534683            'education'          => array( __( 'Education Child Theme', $this->domain ), 126 ), 
     684            'eleven40'           => array( __( 'eleven40 Child Theme', $this->domain ), 199 ), 
    535685            'elle'               => array( __( 'Elle Child Theme', $this->domain ), 176 ), 
    536686            'enterprise'         => array( __( 'Enterprise Child Theme', $this->domain ), 102 ), 
     
    542692            'focus'              => array( __( 'Focus Child Theme', $this->domain ), 167 ), 
    543693            'freelance'          => array( __( 'Freelance Child Theme', $this->domain ), 121 ), 
     694            'generate'           => array( __( 'Generate Child Theme', $this->domain ), 197 ), 
    544695            'going-green'        => array( __( 'Going Green Child Theme', $this->domain ), 116 ), 
    545696            'landscape'          => array( __( 'Landscape Child Theme', $this->domain ), 108 ), 
     
    547698            'legacy'             => array( __( 'Legacy Child Theme', $this->domain ), 184 ), 
    548699            'lifestyle'          => array( __( 'Lifestyle Child Theme', $this->domain ), 92 ), 
     700            'luscious'           => array( __( 'Luscious Child Theme', $this->domain ), 190 ), 
    549701            'magazine'           => array( __( 'Magazine Child Theme', $this->domain ), 128 ), 
    550702            'manhattan'          => array( __( 'Manhattan Child Theme', $this->domain ), 152 ), 
     
    560712            'pixel-happy'        => array( __( 'Pixel Happy Child Theme', $this->domain ), 87 ), 
    561713            'platinum'           => array( __( 'Platinum Child Theme', $this->domain ), 73 ), 
     714            'politica'           => array( __( 'Politica Child Theme', $this->domain ), 192 ), 
    562715            'pretty-young-thing' => array( __( 'Pretty Young Thing Child Theme', $this->domain ), 166 ), 
    563716            'prose'              => array( __( 'Prose Child Theme', $this->domain ), 147 ), 
     717            'pure-elegance'      => array( __( 'Pure Elegance Child Theme', $this->domain ), 198 ), 
     718            'scribble'           => array( __( 'Scribble Child Theme', $this->domain ), 186 ), 
    564719            'serenity'           => array( __( 'Serenity Child Theme', $this->domain ), 84 ), 
    565             'scribble'           => array( __( 'Scribble Child Theme', $this->domain ), 186 ), 
    566720            'sleek'              => array( __( 'Sleek Child Theme', $this->domain ), 132 ), 
    567721            'social-eyes'        => array( __( 'Social Eyes Child Theme', $this->domain ), 165 ), 
     
    572726            'translations'       => array( __( 'Genesis Translations', $this->domain ), 168 ), 
    573727            'plugins'            => array( __( 'StudioPress Plugins', $this->domain ), 142 ), 
    574             'genesisconnect'     => array( __( 'GenesisConnect', $this->domain ), 155 ) 
    575         ); 
     728            'genesisconnect'     => array( __( 'GenesisConnect', $this->domain ), 155 ), 
     729        ); 
     730 
    576731        return (array) apply_filters( 'gabp_support_boards', $boards ); 
    577732 
     
    585740     * 
    586741     * @param  string $name Lowercase, hyphen-spaced theme name, e.g. family-tree. 
     742     * 
    587743     * @return integer|boolean Support board ID, or false if board not found. 
    588744     */ 
    589     function get_support_board( $name ) { 
     745    public function get_support_board( $name ) { 
    590746 
    591747        $boards = $this->get_support_boards(); 
     
    607763     * @since 1.0.0 
    608764     */ 
    609     function style() { 
     765    public function style() { 
    610766 
    611767        if ( ! is_admin_bar_showing() ) 
     
    623779                width: 7px; 
    624780            } 
    625             #wpadminbar .menupop>a[target=_blank]:after { 
     781            #wpadminbar .menupop > a[target=_blank]:after { 
    626782                display: none; 
    627783            } 
    628             #wpadminbar .gabp-no-link>a { 
    629                 cursor: default; 
     784            #wpadminbar abbr { 
     785                color: #333; 
     786                text-shadow: none; 
     787            } 
     788            #wpadminbar a > abbr { 
     789                color: #21759b; 
    630790            } 
    631791            <?php 
    632792            if ( defined( 'GENESIS_SETTINGS_FIELD' ) ) { 
    633793            ?> 
    634             #wpadminbar .gabp-icon-genesis>a span { 
    635                 padding-left: 20px; 
    636             } 
    637             #wpadminbar .gabp-icon-genesis { 
    638                 position: relative; 
    639             } 
    640             #wpadminbar .gabp-icon { 
    641                 background: url(<?php echo PARENT_URL; ?>/images/genesis.gif) center center no-repeat; 
    642                 display: block; 
    643                 height: 16px; 
    644                 left: 0.85em; 
    645                 position: absolute; 
    646                 top: 0.5em; 
    647                 width: 16px; 
     794            #wp-admin-bar-genesis-admin-bar-plus-genesis > .ab-item .ab-icon { 
     795                background: url(<?php echo PARENT_URL; ?>/images/genesis.gif) no-repeat center; 
    648796            } 
    649797            <?php if ( is_RTL() ) { ?> 
     
    654802                margin-right: 5px; 
    655803            } 
    656             #wpadminbar .gabp-icon { 
    657                 left: auto; 
    658                 right: 0.85em; 
    659             } 
    660             #wpadminbar .gabp-icon-genesis>a span { 
    661                 padding-right: 20px !important; 
    662             } 
    663804            <?php } 
    664805            } ?> 
     
    673814     * Can be activated by uncommenting the line near the top of this file. 
    674815     * 
    675      * @since  1.1.0 
     816     * @since 1.1.0 
    676817     * 
    677818     * @return boolean 
    678819     */ 
    679     function is_debug() { 
    680  
    681         if (  ( defined( 'GABP_DEBUG') && GABP_DEBUG ) || ( isset( $_GET['gabp-debug'] ) ) ) 
     820    public function is_debug() { 
     821 
     822        if ( ( defined( 'GABP_DEBUG' ) && GABP_DEBUG ) || ( isset( $_GET['gabp-debug'] ) ) ) 
    682823            return true; 
    683824        return false; 
     
    695836 
    696837    /** 
    697      * Holds menu items. Private. 
     838     * Holds menu items. 
    698839     * 
    699840     * @var array 
    700841     */ 
    701     var $menu_items = array(); 
     842    private $menu_items = array(); 
    702843 
    703844    /** 
    704845     * Assign the menu item to the array using the ID as the key. Public. 
     846     * 
     847     * @since 1.0.0 
     848     * 
     849     * @param string $id   Menu item identifier. 
     850     * @param array  $args Menu item arguments. 
     851     */ 
     852    public function add_item( $menu_item_id, $args ) { 
     853 
     854        $this->menu_items[$menu_item_id] = $args; 
     855 
     856    } 
     857 
     858    /** 
     859     * Retrieve single menu item. 
     860     * 
     861     * @since  1.1.0 
     862     * 
     863     * @param  string $id Menu item identifier 
     864     * @return array Menu item arguments 
     865     */ 
     866    public function get_item( $menu_item_id ) { 
     867 
     868        if( isset( $this->menu_items[$menu_item_id] ) ) 
     869            return $this->menu_items[$menu_item_id]; 
     870        return false; 
     871 
     872    } 
     873 
     874    /** 
     875     * Edit the menu item arguments, merging with the existing values. Public. 
    705876     * 
    706877     * @since 1.0.0 
     
    709880     * @param array $args Menu item arguments 
    710881     */ 
    711     function add_item( $id, $args ) { 
    712  
    713         $this->menu_items[$id] = $args; 
    714  
    715     } 
    716  
    717     /** 
    718      * Retrieve single menu item. 
    719      * 
    720      * @since  1.1.0 
    721      * 
    722      * @param  string $id Menu item identifier 
    723      * @return array Menu item arguments 
    724      */ 
    725     function get_item( $id ) { 
    726  
    727         if( isset( $this->menu_items[$id] ) ) 
    728             return $this->menu_items[$id]; 
    729         return false; 
    730  
    731     } 
    732  
    733     /** 
    734      * Edit the menu item arguments, merging with the existing values. Public. 
     882    public function edit_item( $menu_item_id, $args ) { 
     883 
     884        $this->menu_items[$menu_item_id] = wp_parse_args( $args, $this->menu_items[$menu_item_id] ); 
     885 
     886    } 
     887 
     888    /** 
     889     * Remove the menu item from the array using the ID as the key. Public. 
    735890     * 
    736891     * @since 1.0.0 
    737892     * 
    738893     * @param string $id Menu item identifier 
    739      * @param array $args Menu item arguments 
    740      */ 
    741     function edit_item( $id, $args ) { 
    742  
    743         $this->menu_items[$id] = wp_parse_args( $args, $this->menu_items[$id] ); 
    744  
    745     } 
    746  
    747     /** 
    748      * Remove the menu item from the array using the ID as the key. Public. 
    749      * 
    750      * @since 1.0.0 
    751      * 
    752      * @param string $id Menu item identifier 
    753      */ 
    754     function remove_item( $id ) { 
    755  
    756         if( isset( $this->menu_items[$id] ) ) 
    757             unset( $this->menu_items[$id] ); 
     894     */ 
     895    public function remove_item( $menu_item_id ) { 
     896 
     897        if( isset( $this->menu_items[$menu_item_id] ) ) 
     898            unset( $this->menu_items[$menu_item_id] ); 
    758899 
    759900    } 
     
    766907     * @return array All menu items 
    767908     */ 
    768     function get_items() { 
     909    public function get_items() { 
    769910 
    770911        return $this->menu_items; 
  • genesis-admin-bar-plus/trunk/readme.txt

    r435247 r503692  
    33Donate link: http://code.garyjones.co.uk/donate/ 
    44Tags: admin bar, genesis 
    5 Requires at least: 3.1 
    6 Tested up to: 3.2.1 
    7 Stable tag: 1.2.5 
     5Requires at least: 3.3 
     6Tested up to: 3.3.1 
     7Stable tag: 1.3.0 
    88 
    99Adds resource links related to the Genesis Framework to the admin bar. 
     
    2121 
    2222This plugin is conceptual fork of the Genesis Admin Bar Addition plugin, re-written from scratch, adding new features. 
     23 
     24Please report issues at https://github.com/GaryJones/Genesis-Admin-Bar-Plus/issues and not the WP Forums. 
    2325 
    2426== Installation == 
     
    4143You can also add a reference to another board via the `gabp_support_boards` filter. 
    4244 
    43 = What Settings links are supported? = 
     45= What settings links are supported? = 
    4446The following theme and plugins, when active, have a link to their settings page added to the Settings submenu: 
    4547 
     
    6769== Changelog == 
    6870 
     71= 1.3.0 = 
     72* Added Italian language files to the plugin (props [http://gidibao.net/](Gianni Diurno)) 
     73* Added support for AgentPress 2, Backcountry, Balance, eleven40, Generate and Luscious themes. 
     74* Added support for Clip Cart, Cre8tive Burst, Curtail, Driskill, Politica and Pure Elegance Marketplace themes. 
     75* Improved icon markup and styles to match how WP 3.3 does it, which fixes overlapping icon issue. 
     76* Improved properties and methods by declaring public or private visibility. 
     77* Fixed to use new /tutorials links as StudioPress re-arrange their site. 
     78* Fixed to use stricter code standards above and beyond WP CS. 
     79 
    6980= 1.2.5 = 
    7081* Added support for Fashionista, Modern Blogger (both Marketplace) and Scribble themes. 
    71 * Added updated German language files back in with the plugin. 
     82* Added updated German language files back in with the plugin (props [http://deckerweb.de/material/sprachdateien/genesis-plugins/](David Decker)) 
    7283* Improved a few strings to use the plugin text domain to avoid conflicts. 
    7384* Improved readme descriptions. 
     
    121132* Included .pot file for translations. 
    122133* Added German translation files (props [deckerweb.de](http://deckerweb.de/material/sprachdateien/genesis-plugins/)). 
    123  
     134/)). 
    124135= 1.0 = 
    125136* First public version. 
     
    228239 
    229240* Deutsch: http://deckerweb.de/material/sprachdateien/genesis-plugins/#genesis-admin-bar-plus 
     241* Italiano: http://gidibao.net/ 
Note: See TracChangeset for help on using the changeset viewer.