WordPress.org

Make WordPress Core

Changeset 13685


Ignore:
Timestamp:
03/12/10 21:57:52 (4 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.