WordPress.org

Make WordPress Core

Changeset 13685


Ignore:
Timestamp:
03/12/2010 09:57:52 PM (10 years ago)
Author:
ryan
Message:

Always use lowercase strings or menu type. Don't double save custom link menu items (remove the AJAX save). see #12566

Location:
trunk
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/admin-ajax.php

    r13551 r13685  
    477477    _wp_ajax_delete_comment_response( $comment->comment_ID );
    478478    die( '0' );
    479     break;
    480 case 'add-menu-link':
    481     if ( !current_user_can( 'manage_links' ) )
    482         die('-1');
    483    
    484     $link_url = isset($_POST['link_url']) ? $_POST['link_url'] : false;
    485     $link_name = isset($_POST['link_name']) ? $_POST['link_name'] : false;
    486    
    487     if ( !$link_url || !$link_name )
    488         die('-1');
    489    
    490     $post = array( 'post_type' => 'nav_menu_item', 'post_title' => $link_name, 'ping_status' => false, 'post_excerpt' => '', 'post_content' => '' );
    491     $db_id = wp_insert_post( $post );
    492 
    493     update_post_meta( $db_id, 'menu_type', 'custom' );
    494     update_post_meta( $db_id, 'object_id', '' );
    495     update_post_meta( $db_id, 'menu_new_window', 0 );
    496     update_post_meta( $db_id, 'menu_link', esc_url_raw( $link_url ) );
    497    
    498     echo $db_id;
    499479    break;
    500480case 'add-link-category' : // On the Fly
  • trunk/wp-admin/js/nav-menu-default-items.dev.js

    r13651 r13685  
    7777        $(this).siblings('.show-all').show();
    7878    });
    79    
     79
    8080    // Add menu item to queue
    8181    $('.list input').click(function(){
    82        
     82
    8383        var item_type = jQuery(this).parent().siblings('.item-type').val();
    8484        var item_title = jQuery(this).parent().siblings('.item-title').val();
     
    9090        return wp_update_queue( $(this), item_type, item_title, item_url, item_id, item_parent_id, item_description );
    9191    });
    92    
     92
    9393    // Add queued menu items into the menu
    9494    $('.enqueue a').click(function(){
    9595        return wp_add_queued_items_to_menu(this);
    9696    });
    97    
     97
    9898    // Create the link, add it to the menu + available links section
    9999    $('#add-custom-link .add-to-menu a').click(function(){
     
    106106        if ( 'http://' == link_url || 'Menu Item' == link_name )
    107107            return;
    108        
    109         // Parameters to send off
    110         params = {
    111             action: 'add-menu-link',
    112             link_url: link_url,
    113             link_name: link_name,
    114         };
    115        
    116         // save the link
    117         $.post( ajaxurl, params, function(response) {
    118             if ( null == response || '-1' == response )
    119                 return false;
    120            
    121             params.link_id = response;
    122            
    123             // add it to the available links section
    124             // wp_update_links_list( params );
    125            
    126             // and update the Menu with the new link
    127             wp_add_item_to_menu( 'Custom', params.link_name, params.link_url, params.link_id, 0, '' );
    128         }, 'json');
     108
     109        // and update the Menu with the new link
     110        wp_add_item_to_menu( 'custom', link_name, link_url, 0, 0, '' );
    129111    });
    130112});
  • trunk/wp-admin/js/nav-menu-default-items.js

    r13651 r13685  
    1 jQuery(document).ready(function(a){wp_drag_and_drop();wp_update_post_data();a("#save_menu").click(function(){return wp_update_post_data()});a(".quick-search").click(function(){a(this).attr("value","")});a(".quick-search-submit").click(function(){a(this).siblings(".quick-search").search()});a("#menu-container .item-edit").click(function(){return wp_edit_menu_item(a(this).attr("value"))});a("#menu-container .item-delete").live("click",function(){return wp_remove_menu_item(a(this).attr("value"))});a("#update-menu-item").click(function(){wp_update_menu_item();tb_remove();var b=a("#edit-item-id").val();a("#menu-"+b+" dt:first").animate({backgroundColor:"#FFFF33"},{duration:"normal",complete:function(){jQuery(this).css("backgroundColor","")}})});a("#cancel-save").click(function(){return tb_remove()});a(".show-all").click(function(){a(this).offsetParent().find("#add-buttons-actions").attr("style","margin-bottom: 10px;");a(this).offsetParent().find(".list-wrap").css("display","block");a(this).siblings(".quick-search").attr("value","");a(this).offsetParent().find(".list-wrap li").css("display","block");a(this).hide();a(this).siblings(".hide-all").show()});a(".hide-all").click(function(){a(this).offsetParent().find("#add-buttons-actions").attr("style","margin-bottom: 0px;");a(this).offsetParent().find(".list-wrap").css("display","none");a(this).siblings(".quick-search").attr("value","Search");a(this).offsetParent().find(".list-wrap li").css("display","none");a(this).hide();a(this).siblings(".show-all").show()});a(".list input").click(function(){var d=jQuery(this).parent().siblings(".item-type").val();var g=jQuery(this).parent().siblings(".item-title").val();var c=jQuery(this).parent().siblings(".item-url").val();var e=jQuery(this).parent().siblings(".item-dbid").val();var b=jQuery(this).parent().siblings(".item-parent").val();var f=jQuery(this).parent().siblings(".item-description").val();return wp_update_queue(a(this),d,g,c,e,b,f)});a(".enqueue a").click(function(){return wp_add_queued_items_to_menu(this)});a("#add-custom-link .add-to-menu a").click(function(){var b=a(this).offsetParent().find("#menu-item-url").val();var c=a(this).offsetParent().find("#menu-item-name").val();wp_add_queued_items_to_menu(this);if("http://"==b||"Menu Item"==c){return}params={action:"add-menu-link",link_url:b,link_name:c,};a.post(ajaxurl,params,function(d){if(null==d||"-1"==d){return false}params.link_id=d;wp_add_item_to_menu("Custom",params.link_name,params.link_url,params.link_id,0,"")},"json")})});
     1jQuery(document).ready(function(a){wp_drag_and_drop();wp_update_post_data();a("#save_menu").click(function(){return wp_update_post_data()});a(".quick-search").click(function(){a(this).attr("value","")});a(".quick-search-submit").click(function(){a(this).siblings(".quick-search").search()});a("#menu-container .item-edit").click(function(){return wp_edit_menu_item(a(this).attr("value"))});a("#menu-container .item-delete").live("click",function(){return wp_remove_menu_item(a(this).attr("value"))});a("#update-menu-item").click(function(){wp_update_menu_item();tb_remove();var b=a("#edit-item-id").val();a("#menu-"+b+" dt:first").animate({backgroundColor:"#FFFF33"},{duration:"normal",complete:function(){jQuery(this).css("backgroundColor","")}})});a("#cancel-save").click(function(){return tb_remove()});a(".show-all").click(function(){a(this).offsetParent().find("#add-buttons-actions").attr("style","margin-bottom: 10px;");a(this).offsetParent().find(".list-wrap").css("display","block");a(this).siblings(".quick-search").attr("value","");a(this).offsetParent().find(".list-wrap li").css("display","block");a(this).hide();a(this).siblings(".hide-all").show()});a(".hide-all").click(function(){a(this).offsetParent().find("#add-buttons-actions").attr("style","margin-bottom: 0px;");a(this).offsetParent().find(".list-wrap").css("display","none");a(this).siblings(".quick-search").attr("value","Search");a(this).offsetParent().find(".list-wrap li").css("display","none");a(this).hide();a(this).siblings(".show-all").show()});a(".list input").click(function(){var d=jQuery(this).parent().siblings(".item-type").val();var g=jQuery(this).parent().siblings(".item-title").val();var c=jQuery(this).parent().siblings(".item-url").val();var e=jQuery(this).parent().siblings(".item-dbid").val();var b=jQuery(this).parent().siblings(".item-parent").val();var f=jQuery(this).parent().siblings(".item-description").val();return wp_update_queue(a(this),d,g,c,e,b,f)});a(".enqueue a").click(function(){return wp_add_queued_items_to_menu(this)});a("#add-custom-link .add-to-menu a").click(function(){var b=a(this).offsetParent().find("#menu-item-url").val();var c=a(this).offsetParent().find("#menu-item-name").val();wp_add_queued_items_to_menu(this);if("http://"==b||"Menu Item"==c){return}wp_add_item_to_menu("custom",c,b,0,0,"")})});
  • trunk/wp-admin/nav-menus.php

    r13544 r13685  
    129129        $parent_id = isset( $_POST['item-parent'.$k] )? $_POST['item-parent'.$k] : 0;
    130130        $custom_title = isset( $_POST['item-title'.$k] )?  $_POST['item-title'.$k] : '';
    131         $custom_linkurl = ( isset( $_POST['item-url'.$k] ) && 'custom' == $_POST['linktype'.$k] ) ? $_POST['item-url'.$k] : '';
     131        $custom_linkurl = ( isset( $_POST['item-url'.$k] ) && 'custom' == $_POST['item-type'.$k] ) ? $_POST['item-url'.$k] : '';
    132132        $custom_description = isset( $_POST['item-description'.$k] )? $_POST['item-description'.$k] : '';
    133133
  • trunk/wp-includes/nav-menu-template.php

    r13532 r13685  
    199199           
    200200            // Menu Item Settings
    201             $item .= '<input type="hidden" class="item-type" value="'. esc_attr( $menu_item->append ) .'" />';
     201            $item .= '<input type="hidden" class="item-type" value="'. esc_attr( $menu_item->type ) .'" />';
    202202            $item .= '<input type="hidden" class="item-title" value="'. esc_attr( $menu_item->title ) .'" />';
    203203            $item .= '<input type="hidden" class="item-url" value="'. esc_attr( $menu_item->link ) .'" />';
Note: See TracChangeset for help on using the changeset viewer.