<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><style type="text/css"><!--
#msg dl { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fc0 solid; padding: 6px; }
#msg ul, pre { overflow: auto; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<title>[14439] trunk: More menu improvements.</title>
</head>
<body>

<div id="msg">
<dl>
<dt>Revision</dt> <dd><a href="http://trac.wordpress.org/changeset/14439">14439</a></dd>
<dt>Author</dt> <dd>nacin</dd>
<dt>Date</dt> <dd>2010-05-04 10:01:15 +0000 (Tue, 04 May 2010)</dd>
</dl>

<h3>Log Message</h3>
<pre>More menu improvements. Add link that adds a menu item to the home page, make empty menu dropzone slightly larger, limit selected items to the active tab. props koopersmith and ptahdunbar. see <a href="http://trac.wordpress.org/ticket/13220">#13220</a>.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkwpadmincssnavmenucss">trunk/wp-admin/css/nav-menu.css</a></li>
<li><a href="#trunkwpadmincssnavmenudevcss">trunk/wp-admin/css/nav-menu.dev.css</a></li>
<li><a href="#trunkwpadminincludesnavmenuphp">trunk/wp-admin/includes/nav-menu.php</a></li>
<li><a href="#trunkwpadminjsnavmenudevjs">trunk/wp-admin/js/nav-menu.dev.js</a></li>
<li><a href="#trunkwpadminjsnavmenujs">trunk/wp-admin/js/nav-menu.js</a></li>
<li><a href="#trunkwpincludesscriptloaderphp">trunk/wp-includes/script-loader.php</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkwpadmincssnavmenucss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/nav-menu.css (14438 => 14439)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/nav-menu.css        2010-05-04 08:54:35 UTC (rev 14438)
+++ trunk/wp-admin/css/nav-menu.css        2010-05-04 10:01:15 UTC (rev 14439)
</span><span class="lines">@@ -1 +1 @@
</span><del>-html,body{min-width:950px;}#nav-menus-frame{margin-left:300px;}#wpbody-content #menu-settings-column{display:block;width:281px;margin-left:-300px;clear:both;float:left;padding-top:24px;}.no-js #wpbody-content #menu-settings-column{padding-top:31px;}#menu-settings-column .inside{padding:0 10px;}#menu-settings-column .handlediv{background:url(&quot;../images/menu-bits.gif&quot;) no-repeat scroll 0 -110px;}#wpbody{position:relative;}#menu-management-liquid{float:left;min-width:100%;}#menu-management{position:relative;margin-right:20px;margin-top:-3px;width:100%;}#menu-management .menu-edit{margin-bottom:20px;}#nav-menu-header,#post-body{border-color:#ccc;border-style:solid;}#nav-menu-header{background:url(&quot;../images/gray-grad.png&quot;) repeat-x scroll left top #dfdfdf;border-width:1px 1px 0 1px;-moz-border-radius-topleft:6px;-webkit-border-top-left-radius:6px;-khtml-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-topright:6px;-webkit-border-top-right-radius:6px;-khtml-border-top-right-radius:6px;border-top-right-radius:6px;}#post-body{background:#fff;padding:0 0 10px 10px;border-width:0 1px 1px 1px;-moz-border-radius-bottomleft:6px;-webkit-border-bottom-left-radius:6px;-khtml-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-moz-border-radius-bottomright:6px;-webkit-border-bottom-right-radius:6px;-khtml-border-bottom-right-radius:6px;border-bottom-right-radius:6px;}#post-body-content{position:relative;}.post-body-plain{padding:10px 10px 0 0;}#menu-management .menu-add-new abbr{font-weight:bold;}#menu-management .nav-tabs-nav{margin:0 20px;}#menu-management .nav-tabs-arrow{width:10px;padding:0 5px 4px;cursor:pointer;position:absolute;top:0;line-height:22px;font-size:18px;text-shadow:0 1px 0 #fff;}#menu-management .nav-tabs-arrow a{color:#C1C1C1;}#menu-management .nav-tabs-arrow a:hover{color:#D54E21;}#menu-management .nav-tabs-arrow a:active{color:#464646;}#menu-management .nav-tabs-arrow-left{left:0;}#menu-management .nav-tabs-arrow-right{right:0;text-align:right;}#menu-management .nav-tabs-wrapper{width:100%;height:28px;margin-bottom:-1px;overflow:hidden;}#menu-management .nav-tabs{padding-left:30px;padding-right:10px;}.js #menu-management .nav-tabs{float:left;margin-left:0;margin-right:-400px;}#menu-management .nav-tab{margin-bottom:0;background:#f4f4f4;font-weight:bold;border-color:#dfdfdf;}#menu-management .nav-tab-active{background:#ececec;border-color:#ccc;border-bottom-color:#ececec;}#select-nav-menu-container{text-align:right;padding:0 10px 3px 10px;margin-bottom:5px;}#select-nav-menu{width:100px;display:inline;}#menu-management #major-publishing-actions #delete-action{float:right;margin-right:10px;}#menu-name-label{margin-top:-2px;}#wpbody .open-label{display:inline-block;}#wpbody .open-label span{padding-right:10px;}.js .input-with-default-title{color:#aaa;font-style:italic;}#menu-management .inside{padding:0 10px;}.postbox .howto input{width:180px;float:right;}.customlinkdiv .howto input{width:210px;}.add-menu-item-view-all{height:400px;}#side-sortables .potential-menu-item{margin-left:0;position:relative;margin:6px 0;}#side-sortables .potential-menu-item ul{margin-left:0;}#side-sortables .potential-menu-item li{cursor:move;padding:1px 6px;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;-khtml-border-radius:4px;}.potential-menu-item li{background:#eee;border:1px solid #dfdfdf;color:#646464;}.potential-menu-item li:hover{color:#222;border-color:#ccc;background:#f9f9f9;}.selected-menu-item li{background:#FFFFE0;border-color:#E6DB55;}.selected-menu-item li:hover{background:#ffffbe;border-color:#e2d537;}.potential-menu-item .item-controls,.potential-menu-item .menu-item-transport{display:none;}.potential-menu-item .ui-draggable-dragging div,.potential-menu-item .menu-item-handle .item-controls{display:block;}#side-sortables .new-menu-item,#side-sortables .new-menu-item li,#side-sortables .additional-menu-items li{background:transparent;border:0;}#side-sortables .additional-menu-items li{margin-top:13px;}.item-edit img.waiting{display:block;}#menu-container .submit{margin:0 0 10px;padding:0;}.submitdelete,.submitclose{font-size:11px;}#cancel-save{color:#f00;text-decoration:underline;font-size:11px;margin-left:20px;margin-top:5px;}#cancel-save:hover{background-color:#F00;color:#fff;}.list-controls{float:left;margin-top:5px;}.add-to-menu{float:right;}.postbox img.waiting{display:none;vertical-align:middle;}.button-controls{margin:10px 0;}.show-all,.hide-all{cursor:pointer;}.hide-all{display:none;}#create-menu-name{width:159px;}#manage-menu .inside{padding:0;}#available-links dt{display:block;}#add-custom-link .howto{font-size:11px;}#add-custom-link label span{display:block;float:left;margin-top:5px;padding-right:5px;}.menu-item-textbox{width:180px;}.howto span{margin-top:4px;display:block;float:left;}.quick-search{width:190px;}.list-wrap{display:none;clear:both;margin-bottom:10px;}.list-container{max-height:200px;overflow-y:auto;padding:10px 10px 5px;border:1px solid #DFDFDF;-moz-border-radius:4px;}.postbox p.submit{margin-bottom:0;}.list li{display:none;margin:0;margin-bottom:5px;}.list li .menu-item-title{cursor:pointer;display:block;}.list li .menu-item-title input{margin-right:3px;margin-top:-3px;}#menu-container .inside{padding-bottom:10px;}.menu{padding-top:1em;}.menu ul{width:100%;}.menu li{margin-bottom:0;}.menu-item-bar{clear:both;line-height:1.5em;position:relative;margin-top:13px;}.menu-item-handle{background:url(&quot;../images/gray-grad.png&quot;) repeat-x scroll left top #DFDFDF;border:1px solid #E6E6E6;position:relative;padding-left:10px;height:auto;width:400px;line-height:35px;text-shadow:0 1px 0 #FFF;font-weight:bold;overflow:hidden;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;-khtml-border-radius:6px;}.menu-item-edit-active .menu-item-handle{-moz-border-radius:6px 6px 0 0;-webkit-border-top-right-radius:6px;-webkit-border-top-left-radius:6px;-khtml-border-top-right-radius:6px;-khtml-border-top-left-radius:6px;border-top-right-radius:6px;border-top-left-radius:6px;}.js .menu-item-handle{cursor:move;}.menu li.deleting .menu-item-handle{background-color:#faa;}.menu-item-handle .item-title{padding:7px 0;line-height:20px;display:block;margin-right:13em;}li.menu-item.ui-sortable-helper dl{margin-top:0;}li.menu-item.ui-sortable-helper .menu-item-transport dl{margin-top:13px;}.menu .sortable-placeholder{height:35px;width:410px;margin-top:13px;}.menu-item-depth-0{margin-left:0;}.menu-item-depth-1{margin-left:30px;}.menu-item-depth-2{margin-left:60px;}.menu-item-depth-3{margin-left:90px;}.menu-item-depth-4{margin-left:120px;}.menu-item-depth-5{margin-left:150px;}.menu-item-depth-6{margin-left:180px;}.menu-item-depth-7{margin-left:210px;}.menu-item-depth-8{margin-left:240px;}.menu-item-depth-9{margin-left:270px;}.menu-item-depth-10{margin-left:300px;}.menu-item-depth-11{margin-left:330px;}.menu-item-depth-0 .menu-item-transport{margin-left:0;}.menu-item-depth-1 .menu-item-transport{margin-left:-30px;}.menu-item-depth-2 .menu-item-transport{margin-left:-60px;}.menu-item-depth-3 .menu-item-transport{margin-left:-90px;}.menu-item-depth-4 .menu-item-transport{margin-left:-120px;}.menu-item-depth-5 .menu-item-transport{margin-left:-150px;}.menu-item-depth-6 .menu-item-transport{margin-left:-180px;}.menu-item-depth-7 .menu-item-transport{margin-left:-210px;}.menu-item-depth-8 .menu-item-transport{margin-left:-240px;}.menu-item-depth-9 .menu-item-transport{margin-left:-270px;}.menu-item-depth-10 .menu-item-transport{margin-left:-300px;}.menu-item-depth-11 .menu-item-transport{margin-left:-330px;}.item-type{text-transform:uppercase;font-size:11px;color:#999;padding-right:10px;}.item-controls{font-size:11px;position:absolute;right:20px;top:-1px;}.item-controls a{text-decoration:none;}.item-controls a:hover{cursor:pointer;}.item-controls .item-order{padding-right:10px;}.item-controls .item-order a{font-weight:bold;}body.js .item-order{display:none;}.item-controls .menu-item-delete:hover{color:#f00;}.item-edit{background:url(&quot;../images/menu-bits.gif&quot;) no-repeat scroll 0 -105px;position:absolute;right:-20px;top:0;display:block;width:23px;height:36px;overflow:hidden;text-indent:-999em;border-bottom:1px solid #eee;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-left-radius:3px;border-bottom-left-radius:3px;}.menu-item-settings{background:#F9F9F9;width:400px;padding:10px 0 10px 10px;border:solid #E6E6E6;border-width:0 1px 1px 1px;-moz-border-radius:0 0 6px 6px;-webkit-border-bottom-right-radius:6px;-webkit-border-bottom-left-radius:6px;-khtml-border-bottom-right-radius:6px;-khtml-border-bottom-left-radius:6px;}.menu-item-settings.menu-item-edit-active{display:block;}.menu-item-settings.menu-item-edit-inactive{display:none;}.add-menu-item-pagelinks{margin:.5em auto;text-align:center;}.link-to-original{display:block;margin:0 0 10px;padding:3px 5px 5px;font-size:11px;color:#777;font-style:italic;border:1px solid #dfdfdf;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;-khtml-border-radius:6px;}.link-to-original a{padding-left:4px;font-style:normal;}.hidden-field{display:none;}.menu-item-settings .description-thin,.menu-item-settings .description-wide{margin-right:10px;float:left;}.description-thin{width:190px;height:40px;}.description-wide{width:390px;}.menu-item-actions{padding-top:15px;line-height:25px;}.save-menu-item{padding-left:10px;float:right;}#cancel-save{cursor:pointer;}#cancel-save:hover{color:#fff!important;}#update-menu-item{color:#fff!important;}#update-menu-item:hover,#update-menu-item:active,#update-menu-item:focus{color:#eaf2fa!important;border-color:#13455b!important;}.major-publishing-actions{padding:5px 10px;border-bottom:1px solid #eee;}.major-publishing-actions .publishing-action{text-align:right;float:right;line-height:23px;}.major-publishing-actions .delete-action{line-height:25px;vertical-align:middle;text-align:left;float:right;padding-right:15px;}.menu-name-label span{font-size:11px;font-style:normal;}.submitbox .submitclose{color:#21759B;border-bottom:1px solid #21759B;padding:1px 2px;text-decoration:none;}.submitbox .submitclose:hover{background:#21759B;color:#fff;}#nav-menus-frame:after,.menu-item-settings:after,.button-controls:after,#menu-item-url-wrap:after,#menu-item-name-wrap:after{content:&quot;.&quot;;display:block;height:0;clear:both;visibility:hidden;}#nav-menus-frame,.menu-item-settings,.button-controls,#menu-item-url-wrap,#menu-item-name-wrap{display:block;}
</del><span class="cx">\ No newline at end of file
</span><ins>+html,body{min-width:950px;}#nav-menus-frame{margin-left:300px;}#wpbody-content #menu-settings-column{display:block;width:281px;margin-left:-300px;clear:both;float:left;padding-top:24px;}.no-js #wpbody-content #menu-settings-column{padding-top:31px;}#menu-settings-column .inside{padding:0 10px;}#menu-settings-column .handlediv{background:url(&quot;../images/menu-bits.gif&quot;) no-repeat scroll 0 -110px;}#wpbody{position:relative;}#menu-management-liquid{float:left;min-width:100%;}#menu-management{position:relative;margin-right:20px;margin-top:-3px;width:100%;}#menu-management .menu-edit{margin-bottom:20px;}#nav-menu-header,#post-body{border-color:#ccc;border-style:solid;}#nav-menu-header{background:url(&quot;../images/gray-grad.png&quot;) repeat-x scroll left top #dfdfdf;border-width:1px 1px 0 1px;-moz-border-radius-topleft:6px;-webkit-border-top-left-radius:6px;-khtml-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-topright:6px;-webkit-border-top-right-radius:6px;-khtml-border-top-right-radius:6px;border-top-right-radius:6px;}#post-body{background:#fff;padding:0 0 10px 10px;border-width:0 1px 1px 1px;-moz-border-radius-bottomleft:6px;-webkit-border-bottom-left-radius:6px;-khtml-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-moz-border-radius-bottomright:6px;-webkit-border-bottom-right-radius:6px;-khtml-border-bottom-right-radius:6px;border-bottom-right-radius:6px;}#post-body-content{position:relative;}.post-body-plain{padding:10px 10px 0 0;}#menu-management .menu-add-new abbr{font-weight:bold;}#menu-management .nav-tabs-nav{margin:0 20px;}#menu-management .nav-tabs-arrow{width:10px;padding:0 5px 4px;cursor:pointer;position:absolute;top:0;line-height:22px;font-size:18px;text-shadow:0 1px 0 #fff;}#menu-management .nav-tabs-arrow a{color:#C1C1C1;}#menu-management .nav-tabs-arrow a:hover{color:#D54E21;}#menu-management .nav-tabs-arrow a:active{color:#464646;}#menu-management .nav-tabs-arrow-left{left:0;}#menu-management .nav-tabs-arrow-right{right:0;text-align:right;}#menu-management .nav-tabs-wrapper{width:100%;height:28px;margin-bottom:-1px;overflow:hidden;}#menu-management .nav-tabs{padding-left:30px;padding-right:10px;}.js #menu-management .nav-tabs{float:left;margin-left:0;margin-right:-400px;}#menu-management .nav-tab{margin-bottom:0;background:#f4f4f4;font-weight:bold;border-color:#dfdfdf;}#menu-management .nav-tab-active{background:#ececec;border-color:#ccc;border-bottom-color:#ececec;}#select-nav-menu-container{text-align:right;padding:0 10px 3px 10px;margin-bottom:5px;}#select-nav-menu{width:100px;display:inline;}#menu-management #major-publishing-actions #delete-action{float:right;margin-right:10px;}#menu-name-label{margin-top:-2px;}#wpbody .open-label{display:inline-block;}#wpbody .open-label span{padding-right:10px;}.js .input-with-default-title{color:#aaa;font-style:italic;}#menu-management .inside{padding:0 10px;}.postbox .howto input{width:180px;float:right;}.customlinkdiv .howto input{width:210px;}.add-menu-item-view-all{height:400px;}#side-sortables .potential-menu-item{margin-left:0;position:relative;margin:6px 0;}#side-sortables .potential-menu-item ul{margin-left:0;}#side-sortables .potential-menu-item li{cursor:move;padding:1px 6px;border-radius:4px;-webkit-border-radius:4px;-moz-border-radius:4px;-khtml-border-radius:4px;}.potential-menu-item li{background:#eee;border:1px solid #dfdfdf;color:#646464;}.potential-menu-item li:hover{color:#222;border-color:#ccc;background:#f9f9f9;}.selected-menu-item li{background:#FFFFE0;border-color:#E6DB55;}.selected-menu-item li:hover{background:#ffffbe;border-color:#e2d537;}.potential-menu-item .item-controls,.potential-menu-item .menu-item-transport{display:none;}.potential-menu-item .ui-draggable-dragging div,.potential-menu-item .menu-item-handle .item-controls{display:block;}#side-sortables .new-menu-item,#side-sortables .new-menu-item li,#side-sortables .additional-menu-items li{background:transparent;border:0;}#side-sortables .additional-menu-items li{margin-top:13px;}.item-edit img.waiting{display:block;}#menu-container .submit{margin:0 0 10px;padding:0;}.submitdelete,.submitclose{font-size:11px;}#cancel-save{color:#f00;text-decoration:underline;font-size:11px;margin-left:20px;margin-top:5px;}#cancel-save:hover{background-color:#F00;color:#fff;}.list-controls{float:left;margin-top:5px;}.add-to-menu{float:right;}.postbox img.waiting{display:none;vertical-align:middle;}.button-controls{margin:10px 0;}.show-all,.hide-all{cursor:pointer;}.hide-all{display:none;}#create-menu-name{width:159px;}#manage-menu .inside{padding:0;}#available-links dt{display:block;}#add-custom-link .howto{font-size:11px;}#add-custom-link label span{display:block;float:left;margin-top:5px;padding-right:5px;}.menu-item-textbox{width:180px;}.howto span{margin-top:4px;display:block;float:left;}.quick-search{width:190px;}.list-wrap{display:none;clear:both;margin-bottom:10px;}.list-container{max-height:200px;overflow-y:auto;padding:10px 10px 5px;border:1px solid #DFDFDF;-moz-border-radius:4px;}.postbox p.submit{margin-bottom:0;}.list li{display:none;margin:0;margin-bottom:5px;}.list li .menu-item-title{cursor:pointer;display:block;}.list li .menu-item-title input{margin-right:3px;margin-top:-3px;}#menu-container .inside{padding-bottom:10px;}.menu{padding-top:1em;}#menu-to-edit{padding:1em 0;}.menu ul{width:100%;}.menu li{margin-bottom:0;}.menu-item-bar{clear:both;line-height:1.5em;position:relative;margin-top:13px;}.menu-item-handle{background:url(&quot;../images/gray-grad.png&quot;) repeat-x scroll left top #DFDFDF;border:1px solid #E6E6E6;position:relative;padding-left:10px;height:auto;width:400px;line-height:35px;text-shadow:0 1px 0 #FFF;font-weight:bold;overflow:hidden;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;-khtml-border-radius:6px;}.menu-item-edit-active .menu-item-handle{-moz-border-radius:6px 6px 0 0;-webkit-border-top-right-radius:6px;-webkit-border-top-left-radius:6px;-khtml-border-top-right-radius:6px;-khtml-border-top-left-radius:6px;border-top-right-radius:6px;border-top-left-radius:6px;}.js .menu-item-handle{cursor:move;}.menu li.deleting .menu-item-handle{background-color:#faa;}.menu-item-handle .item-title{padding:7px 0;line-height:20px;display:block;margin-right:13em;}li.menu-item.ui-sortable-helper dl{margin-top:0;}li.menu-item.ui-sortable-helper .menu-item-transport dl{margin-top:13px;}.menu .sortable-placeholder{height:35px;width:410px;margin-top:13px;}.menu-item-depth-0{margin-left:0;}.menu-item-depth-1{margin-left:30px;}.menu-item-depth-2{margin-left:60px;}.menu-item-depth-3{margin-left:90px;}.menu-item-depth-4{margin-left:120px;}.menu-item-depth-5{margin-left:150px;}.menu-item-depth-6{margin-left:180px;}.menu-item-depth-7{margin-left:210px;}.menu-item-depth-8{margin-left:240px;}.menu-item-depth-9{margin-left:270px;}.menu-item-depth-10{margin-left:300px;}.menu-item-depth-11{margin-left:330px;}.menu-item-depth-0 .menu-item-transport{margin-left:0;}.menu-item-depth-1 .menu-item-transport{margin-left:-30px;}.menu-item-depth-2 .menu-item-transport{margin-left:-60px;}.menu-item-depth-3 .menu-item-transport{margin-left:-90px;}.menu-item-depth-4 .menu-item-transport{margin-left:-120px;}.menu-item-depth-5 .menu-item-transport{margin-left:-150px;}.menu-item-depth-6 .menu-item-transport{margin-left:-180px;}.menu-item-depth-7 .menu-item-transport{margin-left:-210px;}.menu-item-depth-8 .menu-item-transport{margin-left:-240px;}.menu-item-depth-9 .menu-item-transport{margin-left:-270px;}.menu-item-depth-10 .menu-item-transport{margin-left:-300px;}.menu-item-depth-11 .menu-item-transport{margin-left:-330px;}.item-type{text-transform:uppercase;font-size:11px;color:#999;padding-right:10px;}.item-controls{font-size:11px;position:absolute;right:20px;top:-1px;}.item-controls a{text-decoration:none;}.item-controls a:hover{cursor:pointer;}.item-controls .item-order{padding-right:10px;}.item-controls .item-order a{font-weight:bold;}body.js .item-order{display:none;}.item-controls .menu-item-delete:hover{color:#f00;}.item-edit{background:url(&quot;../images/menu-bits.gif&quot;) no-repeat scroll 0 -105px;position:absolute;right:-20px;top:0;display:block;width:23px;height:36px;overflow:hidden;text-indent:-999em;border-bottom:1px solid #eee;-moz-border-radius-bottomleft:3px;-webkit-border-bottom-left-radius:3px;-khtml-border-bottom-left-radius:3px;border-bottom-left-radius:3px;}.menu-item-settings{background:#F9F9F9;width:400px;padding:10px 0 10px 10px;border:solid #E6E6E6;border-width:0 1px 1px 1px;-moz-border-radius:0 0 6px 6px;-webkit-border-bottom-right-radius:6px;-webkit-border-bottom-left-radius:6px;-khtml-border-bottom-right-radius:6px;-khtml-border-bottom-left-radius:6px;}.menu-item-settings.menu-item-edit-active{display:block;}.menu-item-settings.menu-item-edit-inactive{display:none;}.add-menu-item-pagelinks{margin:.5em auto;text-align:center;}.link-to-original{display:block;margin:0 0 10px;padding:3px 5px 5px;font-size:11px;color:#777;font-style:italic;border:1px solid #dfdfdf;border-radius:6px;-webkit-border-radius:6px;-moz-border-radius:6px;-khtml-border-radius:6px;}.link-to-original a{padding-left:4px;font-style:normal;}.hidden-field{display:none;}.menu-item-settings .description-thin,.menu-item-settings .description-wide{margin-right:10px;float:left;}.description-thin{width:190px;height:40px;}.description-wide{width:390px;}.menu-item-actions{padding-top:15px;line-height:25px;}.save-menu-item{padding-left:10px;float:right;}#cancel-save{cursor:pointer;}#cancel-save:hover{color:#fff!important;}#update-menu-item{color:#fff!important;}#update-menu-item:hover,#update-menu-item:active,#update-menu-item:focus{color:#eaf2fa!important;border-color:#13455b!important;}.major-publishing-actions{padding:5px 10px;border-bottom:1px solid #eee;}.major-publishing-actions .publishing-action{text-align:right;float:right;line-height:23px;}.major-publishing-actions .delete-action{line-height:25px;vertical-align:middle;text-align:left;float:right;padding-right:15px;}.menu-name-label span{font-size:11px;font-style:normal;}.submitbox .submitclose{color:#21759B;border-bottom:1px solid #21759B;padding:1px 2px;text-decoration:none;}.submitbox .submitclose:hover{background:#21759B;color:#fff;}#nav-menus-frame:after,.menu-item-settings:after,.button-controls:after,#menu-item-url-wrap:after,#menu-item-name-wrap:after{content:&quot;.&quot;;display:block;height:0;clear:both;visibility:hidden;}#nav-menus-frame,.menu-item-settings,.button-controls,#menu-item-url-wrap,#menu-item-name-wrap{display:block;}
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpadmincssnavmenudevcss"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/css/nav-menu.dev.css (14438 => 14439)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/css/nav-menu.dev.css        2010-05-04 08:54:35 UTC (rev 14438)
+++ trunk/wp-admin/css/nav-menu.dev.css        2010-05-04 10:01:15 UTC (rev 14439)
</span><span class="lines">@@ -313,6 +313,10 @@
</span><span class="cx">         padding-top:1em;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+#menu-to-edit {
+        padding: 1em 0;
+}
+
</ins><span class="cx"> .menu ul { width: 100%; }
</span><span class="cx"> .menu ul.sub-menu {
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkwpadminincludesnavmenuphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/includes/nav-menu.php (14438 => 14439)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/includes/nav-menu.php        2010-05-04 08:54:35 UTC (rev 14438)
+++ trunk/wp-admin/includes/nav-menu.php        2010-05-04 10:01:15 UTC (rev 14439)
</span><span class="lines">@@ -314,19 +314,16 @@
</span><span class="cx">         wp_nav_menu_post_type_meta_boxes();
</span><span class="cx">         wp_nav_menu_taxonomy_meta_boxes();
</span><span class="cx"> 
</span><del>-
</del><span class="cx">         // Register advanced menu items (columns)
</span><span class="cx">         add_filter( 'manage_nav-menus_columns', 'wp_nav_menu_manage_columns');
</span><span class="cx"> 
</span><span class="cx">         add_filter( 'columns_prefs_header', create_function( '', &quot;return __('Show advanced menu properties');&quot; ));
</span><span class="cx"> 
</span><del>-
-
</del><span class="cx">         // If first time editing, disable advanced items by default.
</span><span class="cx">         if( false === get_user_option( 'managenav-menuscolumnshidden' ) ) {
</span><span class="cx">                 $user = wp_get_current_user();
</span><del>-                update_user_option($user-&gt;ID, &quot;managenav-menuscolumnshidden&quot;,
-                        array ( 0 =&gt; 'link-target', 1 =&gt; 'css-classes', 2 =&gt; 'xfn', 3 =&gt; 'description', ),
</del><ins>+                update_user_option($user-&gt;ID, 'managenav-menuscolumnshidden',
+                        array( 0 =&gt; 'link-target', 1 =&gt; 'css-classes', 2 =&gt; 'xfn', 3 =&gt; 'description', ),
</ins><span class="cx">                         true);
</span><span class="cx">         }
</span><span class="cx"> }
</span><span class="lines">@@ -449,6 +446,9 @@
</span><span class="cx">                         &lt;/p&gt;
</span><span class="cx"> 
</span><span class="cx">                 &lt;p class=&quot;button-controls&quot;&gt;
</span><ins>+                        &lt;span class=&quot;list-controls&quot;&gt;
+                                &lt;a href=&quot;#&quot; class=&quot;select-all add-home-link&quot;&gt;&lt;?php _e('Add Home Link'); ?&gt;&lt;/a&gt;
+                        &lt;/span&gt;
</ins><span class="cx">                         &lt;span class=&quot;add-to-menu&quot;&gt;
</span><span class="cx">                                 &lt;img class=&quot;waiting&quot; src=&quot;&lt;?php echo esc_url( admin_url( 'images/wpspin_light.gif' ) ); ?&gt;&quot; alt=&quot;&quot; /&gt;
</span><span class="cx">                                 &lt;input type=&quot;submit&quot; class=&quot;button-secondary&quot; value=&quot;&lt;?php esc_attr_e('Add to Menu'); ?&gt;&quot; name=&quot;add-custom-menu-item&quot; /&gt;
</span></span></pre></div>
<a id="trunkwpadminjsnavmenudevjs"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/js/nav-menu.dev.js (14438 => 14439)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/js/nav-menu.dev.js        2010-05-04 08:54:35 UTC (rev 14438)
+++ trunk/wp-admin/js/nav-menu.dev.js        2010-05-04 10:01:15 UTC (rev 14439)
</span><span class="lines">@@ -182,6 +182,8 @@
</span><span class="cx"> 
</span><span class="cx">                         this.attachTabsPanelListeners();
</span><span class="cx"> 
</span><ins>+                        this.attachHomeLinkListener();
+
</ins><span class="cx">                         if( menuList.length ) // If no menu, we're in the + tab.
</span><span class="cx">                                 this.initSortables();
</span><span class="cx"> 
</span><span class="lines">@@ -190,6 +192,8 @@
</span><span class="cx">                         this.initTabManager();
</span><span class="cx">                         
</span><span class="cx">                         this.initAddMenuItemDraggables();
</span><ins>+                        
+                        this.checkForEmptyMenu();
</ins><span class="cx">                 },
</span><span class="cx"> 
</span><span class="cx">                 initToggles : function() {
</span><span class="lines">@@ -349,7 +353,7 @@
</span><span class="cx">                                         // Set us to be the ajax target
</span><span class="cx">                                         targetList = target.children('.menu-item-transport');
</span><span class="cx">                                         // Get all checked elements and assemble selected items.
</span><del>-                                        items = menuItems.filter('.selected-menu-item').children().not( ui.helper ).clone();
</del><ins>+                                        items = li.parents('.tabs-panel').find('.selected-menu-item').children().not( ui.helper ).clone();
</ins><span class="cx">                                         ui.helper.children('.additional-menu-items').append( items );
</span><span class="cx">                                         // This class tells the sortables to treat it as a new item.
</span><span class="cx">                                         ui.helper.addClass('new-menu-item');
</span><span class="lines">@@ -372,7 +376,7 @@
</span><span class="cx">                                 stop: function(e, ui) {
</span><span class="cx">                                         // Reset the targetList and unselect the menu items
</span><span class="cx">                                         targetList = menuList;
</span><del>-                                        menuItems.filter('.selected-menu-item').deselectItem();
</del><ins>+                                        $(e.target).parents('.tabs-panel').find('.selected-menu-item').deselectItem();
</ins><span class="cx">                                 }
</span><span class="cx">                         });
</span><span class="cx">                 },
</span><span class="lines">@@ -478,9 +482,10 @@
</span><span class="cx">                         });
</span><span class="cx">                 },
</span><span class="cx">                 
</span><del>-                addCustomLink : function() {
-                        var url = $('#custom-menu-item-url').val(),
-                        label = $('#custom-menu-item-name').val(),
</del><ins>+                addCustomLink : function(url, label, addToTop) {
+                        var url = url || $('#custom-menu-item-url').val(),
+                        label = label || $('#custom-menu-item-name').val(),
+                        addToTop = addToTop || false,
</ins><span class="cx">                         menu = $('#menu').val(),
</span><span class="cx">                         nonce = $('#menu-settings-column-nonce').val(),
</span><span class="cx">                         params = {},
</span><span class="lines">@@ -506,15 +511,31 @@
</span><span class="cx">                                 }
</span><span class="cx">                         };
</span><span class="cx">                         
</span><del>-                        processMethod = that.eventAddMenuItem;
-                        
</del><ins>+                        processMethod = addToTop ? that.addMenuItemToTop : that.addMenuItemToBottom;
+
</ins><span class="cx">                         $.post( ajaxurl, params, function(menuMarkup) {
</span><span class="cx">                                 processMethod.call(that, menuMarkup, params);
</span><span class="cx">                                 
</span><span class="cx">                                 // Remove the ajax spinner
</span><span class="cx">                                 $('.customlinkdiv img.waiting').hide();
</span><ins>+
+                                // Reset the form
+                                wpNavMenu.resetCustomLinkForm();
</ins><span class="cx">                         });
</span><span class="cx">                 },
</span><ins>+                
+                resetCustomLinkForm : function() {
+                        // set custom link form back to defaults
+                        $('#custom-menu-item-name').val('').blur();
+                        $('#custom-menu-item-url').val('http://');
+                },
+                
+                attachHomeLinkListener : function() {
+                        $('.add-home-link', '.customlinkdiv').click(function(e) {
+                                wpNavMenu.addCustomLink( navMenuL10n.homeurl, navMenuL10n.home, true);
+                                return false;
+                        });
+                },
</ins><span class="cx"> 
</span><span class="cx">                 attachTabsPanelListeners : function() {
</span><span class="cx">                         $('#menu-settings-column').bind('click', function(e) {
</span><span class="lines">@@ -726,11 +747,10 @@
</span><span class="cx"> 
</span><span class="cx">                 eventOnClickMenuDelete : function(clickedEl) {
</span><span class="cx">                         // Delete warning AYS
</span><del>-                        if ( confirm( navMenuL10n.warnDeleteMenu ) ) {
</del><ins>+                        if ( confirm( navMenuL10n.warnDeleteMenu ) )
</ins><span class="cx">                                 return true;
</span><del>-                        } else {
</del><ins>+                        else
</ins><span class="cx">                                 return false;
</span><del>-                        }
</del><span class="cx">                 },
</span><span class="cx"> 
</span><span class="cx">                 eventOnClickMenuItemDelete : function(clickedEl) {
</span><span class="lines">@@ -768,16 +788,17 @@
</span><span class="cx">                  *
</span><span class="cx">                  * @param string id The id of the metabox
</span><span class="cx">                  */
</span><del>-                addItemsToMenu : function(id) {
</del><ins>+                addItemsToMenu : function(id, addToTop) {
</ins><span class="cx">                         var items = $( '.tabs-panel-active .categorychecklist li input:checked', '#' + id),
</span><span class="cx">                         menu = $('#menu').val(),
</span><span class="cx">                         nonce = $('#menu-settings-column-nonce').val(),
</span><span class="cx">                         params = {},
</span><span class="cx">                         that = this,
</span><ins>+                        addToTop = addToTop || false,
</ins><span class="cx">                         processMethod = function(){},
</span><span class="cx">                         re = new RegExp('menu-item\\[(\[^\\]\]*)');
</span><span class="cx">                         
</span><del>-                        processMethod = that.eventAddMenuItem;
</del><ins>+                        processMethod = addToTop ? that.addMenuItemToTop : that.addMenuItemToBottom;
</ins><span class="cx">                         
</span><span class="cx">                         // If no items are checked, bail.
</span><span class="cx">                         if ( !items.length )
</span><span class="lines">@@ -806,7 +827,7 @@
</span><span class="cx">                                 });
</span><span class="cx"> 
</span><span class="cx">                                 // Uncheck the item
</span><del>-                                $(this).attr('checked', false);
</del><ins>+                                $(this).parent().prev().deselectItem();
</ins><span class="cx">                         });
</span><span class="cx"> 
</span><span class="cx">                         // Remove the ajax spinner
</span><span class="lines">@@ -819,9 +840,13 @@
</span><span class="cx">                  * @param string menuMarkup The text server response of menu item markup.
</span><span class="cx">                  * @param object req The request arguments.
</span><span class="cx">                  */
</span><del>-                eventAddMenuItem : function( menuMarkup, req ) {
</del><ins>+                addMenuItemToBottom : function( menuMarkup, req ) {
</ins><span class="cx">                         $(menuMarkup).hideAdvancedMenuItemFields().appendTo( targetList );
</span><span class="cx">                 },
</span><ins>+                
+                addMenuItemToTop : function( menuMarkup, req ) {
+                        $(menuMarkup).hideAdvancedMenuItemFields().prependTo( targetList );
+                },
</ins><span class="cx"> 
</span><span class="cx">                 /**
</span><span class="cx">                  * Process the quick search response into a search result
</span><span class="lines">@@ -886,12 +911,21 @@
</span><span class="cx">                 removeMenuItem : function(el) {
</span><span class="cx">                         el = $(el)
</span><span class="cx">                         var children = el.childMenuItems();
</span><ins>+                        var that = this;
</ins><span class="cx"> 
</span><span class="cx">                         el.addClass('deleting').fadeOut( 350 , function() {
</span><span class="cx">                                 el.remove();
</span><span class="cx">                                 children.shiftDepthClass(-1).updateParentMenuItemDBId();
</span><span class="cx">                                 recalculateMenuItemPositions();
</span><ins>+                                that.checkForEmptyMenu();
</ins><span class="cx">                         });
</span><ins>+                },
+                
+                checkForEmptyMenu : function() {
+                        if( menuList.children().length ) return;
+                        menuList.height(80).one('sortstop', function(){
+                                $(this).height('auto');
+                        });
</ins><span class="cx">                 }
</span><span class="cx">         }
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkwpadminjsnavmenujs"></a>
<div class="modfile"><h4>Modified: trunk/wp-admin/js/nav-menu.js (14438 => 14439)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-admin/js/nav-menu.js        2010-05-04 08:54:35 UTC (rev 14438)
+++ trunk/wp-admin/js/nav-menu.js        2010-05-04 10:01:15 UTC (rev 14439)
</span><span class="lines">@@ -1 +1 @@
</span><del>-var WPNavMenuHandler=function(d){var h={},f=30,c=11,k=function(m,q,n,p){if(m&amp;&amp;m[0]){var o=d.parseJSON(m[0]);if(o.post_title){if(o.ID&amp;&amp;o.post_type){h[o.post_title]={ID:o.ID,object_type:o.post_type}}return o.post_title}}},l=function(m,q,n,p){if(m&amp;&amp;m[0]){var o=d.parseJSON(m[0]);if(o.post_title){return o.post_title}}},b=function(s,r){if(!s){return false}r=r||document;var n=[&quot;menu-item-db-id&quot;,&quot;menu-item-object-id&quot;,&quot;menu-item-object&quot;,&quot;menu-item-parent-id&quot;,&quot;menu-item-position&quot;,&quot;menu-item-type&quot;,&quot;menu-item-append&quot;,&quot;menu-item-title&quot;,&quot;menu-item-url&quot;,&quot;menu-item-description&quot;,&quot;menu-item-attr-title&quot;,&quot;menu-item-target&quot;,&quot;menu-item-classes&quot;,&quot;menu-item-xfn&quot;],m={},o=r.getElementsByTagName(&quot;input&quot;),q=o.length,p,t=document.getElementById(&quot;nav-menu-meta-object-id&quot;).value;while(q--){p=n.length;while(p--){if(o[q]&amp;&amp;o[q].name&amp;&amp;&quot;menu-item[&quot;+s+&quot;][&quot;+n[p]+&quot;]&quot;==o[q].name){m[n[p]]=o[q].value}}}return m},a=function(){g.find(&quot;.menu-item-data-position&quot;).val(function(m){return m+1})},e=function(m){return m*f},i=function(m){return Math.floor(m/f)},g,j;d.fn.extend({menuItemDepth:function(){return i(this.eq(0).css(&quot;margin-left&quot;).slice(0,-2))},updateDepthClass:function(n,m){return this.each(function(){var o=d(this);m=m||o.menuItemDepth();d(this).removeClass(&quot;menu-item-depth-&quot;+m).addClass(&quot;menu-item-depth-&quot;+n)})},shiftDepthClass:function(m){return this.each(function(){var n=d(this),o=n.menuItemDepth();d(this).removeClass(&quot;menu-item-depth-&quot;+o).addClass(&quot;menu-item-depth-&quot;+(o+m))})},childMenuItems:function(){var m=d();this.each(function(){var n=d(this),p=n.menuItemDepth(),o=n.next();while(o.length&amp;&amp;o.menuItemDepth()&gt;p){m=m.add(o);o=o.next()}});return m},updateParentMenuItemDBId:function(){return this.each(function(){var o=d(this),m=o.find(&quot;.menu-item-data-parent-id&quot;),p=o.menuItemDepth(),n=o.prev();if(p==0){m.val(0)}else{while(n.menuItemDepth()!=p-1){n=n.prev()}m.val(n.find(&quot;.menu-item-data-object-id&quot;).val())}})},hideAdvancedMenuItemFields:function(){return this.each(function(){var m=d(this);d(&quot;.hide-column-tog&quot;).not(&quot;:checked&quot;).each(function(){m.find(&quot;.field-&quot;+d(this).val()).addClass(&quot;hidden-field&quot;)})})},selectItem:function(){return this.each(function(){d(this).addClass(&quot;selected-menu-item&quot;).next().children(&quot;input&quot;).attr(&quot;checked&quot;,&quot;checked&quot;)})},deselectItem:function(){return this.each(function(){d(this).removeClass(&quot;selected-menu-item&quot;).next().children(&quot;input&quot;).removeAttr(&quot;checked&quot;)})},toggleItem:function(){return this.each(function(){var m=d(this);if(m.hasClass(&quot;selected-menu-item&quot;)){m.deselectItem()}else{m.selectItem()}})}});return{init:function(){g=d(&quot;#menu-to-edit&quot;);j=g;this.attachMenuEditListeners();this.attachMenuMetaListeners(document.getElementById(&quot;nav-menu-meta&quot;));this.attachTabsPanelListeners();if(g.length){this.initSortables()}this.initToggles();this.initTabManager();this.initAddMenuItemDraggables()},initToggles:function(){postboxes.add_postbox_toggles(&quot;nav-menus&quot;);columns.useCheckboxesForHidden();columns.checked=function(m){d(&quot;.field-&quot;+m).removeClass(&quot;hidden-field&quot;)};columns.unchecked=function(m){d(&quot;.field-&quot;+m).addClass(&quot;hidden-field&quot;)};g.hideAdvancedMenuItemFields()},initSortables:function(){var s=0,r,q,m,p=g.offset().left,t,o;g.sortable({handle:&quot;.menu-item-handle&quot;,placeholder:&quot;sortable-placeholder&quot;,start:function(C,B){var A,v,z,y,w,x;o=B.item.children(&quot;.menu-item-transport&quot;);t=(B.helper.hasClass(&quot;new-menu-item&quot;));r=(t)?0:B.item.menuItemDepth();n(B,r);if(!t){y=(B.item.next()[0]==B.placeholder[0])?B.item.next():B.item;w=y.childMenuItems();o.append(w)}u(B);v=o.outerHeight();v+=(v&gt;0)?(B.placeholder.css(&quot;margin-top&quot;).slice(0,-2)*1):0;v+=B.helper.outerHeight();v-=2;B.placeholder.height(v);x=r;if(!t){w.each(function(){var D=d(this).menuItemDepth();x=(D&gt;x)?D:x})}z=B.helper.find(&quot;.menu-item-handle&quot;).outerWidth();z+=e(x-r);z-=2;B.placeholder.width(z)},stop:function(y,x){var w,v=s-r;w=o.children().insertAfter(x.item);if(t){x.item.remove();if(v!=0){w.shiftDepthClass(v)}w.updateParentMenuItemDBId()}else{if(v!=0){x.item.updateDepthClass(s);w.shiftDepthClass(v)}x.item.updateParentMenuItemDBId()}a()},change:function(w,v){if(!v.placeholder.parent().hasClass(&quot;menu&quot;)){v.placeholder.appendTo(g)}u(v)},sort:function(w,v){var x=i(v.helper.offset().left-p);if(x&lt;q){x=q}else{if(x&gt;m){x=m}}if(x!=s){n(v,x)}},receive:function(w,v){o=v.sender.children(&quot;.menu-item-transport&quot;)}});function u(x){var w=x.placeholder.prev(),v=x.placeholder.next(),y;if(w[0]==x.item[0]){w=w.prev()}if(v[0]==x.item[0]){v=v.next()}q=(v.length)?v.menuItemDepth():0;if(w.length){m=((y=w.menuItemDepth()+1)&gt;c)?c:y}else{m=0}}function n(v,w){v.placeholder.updateDepthClass(w,s);s=w}},initAddMenuItemDraggables:function(){var m=d(&quot;.potential-menu-item&quot;);m.click(function(n){d(this).toggleItem()}).children().draggable({helper:&quot;clone&quot;,connectToSortable:&quot;ul#menu-to-edit&quot;,distance:5,zIndex:100,start:function(s,q){var r=d(s.target),p=r.parent(),n=p.parent(),o;p.selectItem();j=r.children(&quot;.menu-item-transport&quot;);o=m.filter(&quot;.selected-menu-item&quot;).children().not(q.helper).clone();q.helper.children(&quot;.additional-menu-items&quot;).append(o);q.helper.addClass(&quot;new-menu-item&quot;);q.helper.children(&quot;div&quot;).hide();o.first().css(&quot;margin-top&quot;,0);o.children(&quot;div&quot;).addClass(&quot;menu-item-handle&quot;);q.helper.children(&quot;div&quot;).addClass(&quot;hidden-handle&quot;);n.parents(&quot;.inside&quot;).find(&quot;.add-to-menu input&quot;).click();q.helper.width(q.helper.width());q.helper.height(q.helper.height())},stop:function(o,n){j=g;m.filter(&quot;.selected-menu-item&quot;).deselectItem()}})},attachMenuEditListeners:function(){var m=this;d(&quot;#update-nav-menu&quot;).bind(&quot;click&quot;,function(n){if(n.target&amp;&amp;n.target.className){if(-1!=n.target.className.indexOf(&quot;item-edit&quot;)){return m.eventOnClickEditLink(n.target)}else{if(-1!=n.target.className.indexOf(&quot;menu-delete&quot;)){return m.eventOnClickMenuDelete(n.target)}else{if(-1!=n.target.className.indexOf(&quot;item-delete&quot;)){return m.eventOnClickMenuItemDelete(n.target)}else{if(-1!=n.target.className.indexOf(&quot;item-close&quot;)){return m.eventOnClickCloseLink(n.target)}}}}}})},setupInputWithDefaultTitle:function(){var m=&quot;input-with-default-title&quot;;d(&quot;.&quot;+m).each(function(){var p=d(this),o=p.attr(&quot;title&quot;),n=p.val();p.data(m,o);if(&quot;&quot;==n){p.val(o)}else{if(o==n){return}else{p.removeClass(m)}}}).focus(function(){var n=d(this);if(n.val()==n.data(m)){n.val(&quot;&quot;).removeClass(m)}}).blur(function(){var n=d(this);if(&quot;&quot;==n.val()){n.val(n.data(m)).addClass(m)}})},attachMenuMetaListeners:function(m){if(!m){return}var n=this;this.setupInputWithDefaultTitle();d(&quot;input.quick-search&quot;).each(function(o,p){n.setupQuickSearchEventListeners(p)});d(m).click(function(p){var o=d(p.target).parent().parent().parent();if(d(p.target).is(&quot;input&quot;)&amp;&amp;d(p.target).hasClass(&quot;button-secondary&quot;)&amp;&amp;!d(p.target).hasClass(&quot;quick-search-submit&quot;)){if(d(o).hasClass(&quot;customlinkdiv&quot;)){n.addCustomLink()}else{if(d(o).hasClass(&quot;posttypediv&quot;)||d(o).hasClass(&quot;taxonomydiv&quot;)){n.addItemsToMenu(d(o).attr(&quot;id&quot;))}}return false}else{if(d(p.target).is(&quot;input&quot;)&amp;&amp;d(p.target).hasClass(&quot;quick-search-submit&quot;)){n.quickSearch(d(o).attr(&quot;id&quot;));return false}}})},quickSearch:function(u){var o=d(&quot;#&quot;+u+&quot; .quick-search&quot;).attr(&quot;name&quot;),r=d(&quot;#&quot;+u+&quot; .quick-search&quot;).val(),t=d(&quot;#menu&quot;).val(),n=d(&quot;#menu-settings-column-nonce&quot;).val(),s={},p=this,m=function(){};m=p.processQuickSearchQueryResponse;s={action:&quot;menu-quick-search&quot;,&quot;response-format&quot;:&quot;markup&quot;,menu:t,&quot;menu-settings-column-nonce&quot;:n,q:r,type:o};d.post(ajaxurl,s,function(q){m.call(p,q,s)})},addCustomLink:function(){var o=d(&quot;#custom-menu-item-url&quot;).val(),n=d(&quot;#custom-menu-item-name&quot;).val(),s=d(&quot;#menu&quot;).val(),p=d(&quot;#menu-settings-column-nonce&quot;).val(),r={},q=this,m=function(){};if(&quot;&quot;==o||&quot;http://&quot;==o){return false}d(&quot;.customlinkdiv img.waiting&quot;).show();r={action:&quot;add-menu-item&quot;,menu:s,&quot;menu-settings-column-nonce&quot;:p,&quot;menu-item&quot;:{&quot;-1&quot;:{&quot;menu-item-type&quot;:&quot;custom&quot;,&quot;menu-item-url&quot;:o,&quot;menu-item-title&quot;:n}}};m=q.eventAddMenuItem;d.post(ajaxurl,r,function(t){m.call(q,t,r);d(&quot;.customlinkdiv img.waiting&quot;).hide()})},attachTabsPanelListeners:function(){d(&quot;#menu-settings-column&quot;).bind(&quot;click&quot;,function(r){if(r.target&amp;&amp;r.target.className&amp;&amp;-1!=r.target.className.indexOf(&quot;nav-tab-link&quot;)){var o,u=/#(.*)$/.exec(r.target.href),t,m=d(r.target).parents(&quot;.inside&quot;).first()[0],q=m?m.getElementsByTagName(&quot;input&quot;):[],p=q.length;while(p--){q[p].checked=false}d(&quot;.tabs-panel&quot;,m).each(function(){if(this.className){this.className=this.className.replace(&quot;tabs-panel-active&quot;,&quot;tabs-panel-inactive&quot;)}});d(&quot;.tabs&quot;,m).each(function(){this.className=this.className.replace(&quot;tabs&quot;,&quot;&quot;)});r.target.parentNode.className+=&quot; tabs&quot;;if(u&amp;&amp;u[1]){o=document.getElementById(u[1]);if(o){o.className=o.className.replace(&quot;tabs-panel-inactive&quot;,&quot;tabs-panel-active&quot;)}}return false}else{if(r.target&amp;&amp;r.target.className&amp;&amp;-1!=r.target.className.indexOf(&quot;select-all&quot;)){var n=/#(.*)$/.exec(r.target.href),s;if(n&amp;&amp;n[1]){s=d(&quot;#&quot;+n[1]+&quot; .tabs-panel-active .potential-menu-item&quot;);if(s.length===s.filter(&quot;.selected-menu-item&quot;).length){s.deselectItem()}else{s.selectItem()}return false}}}})},initTabManager:function(){var r=d(&quot;.nav-tabs-wrapper&quot;),s=r.children(&quot;.nav-tabs&quot;),q=s.children(&quot;.nav-tab-active&quot;),u=s.children(&quot;.nav-tab&quot;),o=0,v,p,t,n;resizing=false;function m(){p=r.offset().left;v=p+r.width();q.makeTabVisible()}d.fn.extend({makeTabVisible:function(){var x=this.eq(0),y,w;if(!x.length){return}y=x.offset().left;w=y+x.outerWidth();if(w&gt;v){s.animate({&quot;margin-left&quot;:&quot;+=&quot;+(v-w)+&quot;px&quot;,},&quot;fast&quot;)}else{if(y&lt;p){s.animate({&quot;margin-left&quot;:&quot;-=&quot;+(y-p)+&quot;px&quot;,},&quot;fast&quot;)}}return x},isTabVisible:function(){var x=this.eq(0),y=x.offset().left,w=y+x.outerWidth();return(w&lt;=v&amp;&amp;y&gt;=p)?true:false}});u.each(function(){o+=d(this).outerWidth(true)});if(o&lt;=r.width()-s.css(&quot;padding-left&quot;).slice(0,-2)-s.css(&quot;padding-right&quot;).slice(0,-2)){return}s.css({&quot;margin-right&quot;:(-1*o)+&quot;px&quot;,padding:0,});t=d('&lt;div class=&quot;nav-tabs-arrow nav-tabs-arrow-left&quot;&gt;&lt;a&gt;&amp;laquo;&lt;/a&gt;&lt;/div&gt;');n=d('&lt;div class=&quot;nav-tabs-arrow nav-tabs-arrow-right&quot;&gt;&lt;a&gt;&amp;raquo;&lt;/a&gt;&lt;/div&gt;');r.wrap('&lt;div class=&quot;nav-tabs-nav&quot;/&gt;').parent().prepend(t).append(n);m();d(window).resize(function(){if(resizing){return}resizing=true;setTimeout(function(){m();resizing=false},1000)});d.each([{arrow:t,next:&quot;next&quot;,last:&quot;first&quot;,operator:&quot;+=&quot;,},{arrow:n,next:&quot;prev&quot;,last:&quot;last&quot;,operator:&quot;-=&quot;,}],function(){var w=this;this.arrow.mousedown(function(){var y=u[w.last](),x=function(){if(!y.isTabVisible()){s.animate({&quot;margin-left&quot;:w.operator+&quot;90px&quot;,},300,&quot;linear&quot;,x)}};x()}).mouseup(function(){var y,x;s.stop(true);y=u[w.last]();while((x=y[w.next]())&amp;&amp;x.length&amp;&amp;!x.isTabVisible()){y=x}y.makeTabVisible()})})},setupQuickSearchEventListeners:function(m){var n=this;d(m).autocomplete(ajaxurl+&quot;?action=menu-quick-search&amp;type=&quot;+m.name,{delay:500,formatItem:k,formatResult:l,minchars:2,multiple:false}).bind(&quot;blur&quot;,function(q){var o=h[this.value],p=this;if(o){d.post(ajaxurl+&quot;?action=menu-quick-search&amp;type=get-post-item&amp;response-format=markup&quot;,o,function(s){n.processQuickSearchQueryResponse.call(n,s,o);h[p.value]=false})}})},eventOnClickEditLink:function(m){var o,n=/#(.*)$/.exec(m.href);if(n&amp;&amp;n[1]){o=d(&quot;#&quot;+n[1]);if(0!=o.length){if(o.hasClass(&quot;menu-item-edit-inactive&quot;)){o.slideDown(&quot;fast&quot;).siblings(&quot;dl&quot;).andSelf().removeClass(&quot;menu-item-edit-inactive&quot;).addClass(&quot;menu-item-edit-active&quot;)}else{o.slideUp(&quot;fast&quot;).siblings(&quot;dl&quot;).andSelf().removeClass(&quot;menu-item-edit-active&quot;).addClass(&quot;menu-item-edit-inactive&quot;)}return false}}},eventOnClickCloseLink:function(m){d(m).closest(&quot;.menu-item-settings&quot;).siblings(&quot;dl&quot;).find(&quot;.item-edit&quot;).click();return false},eventOnClickMenuDelete:function(m){if(confirm(navMenuL10n.warnDeleteMenu)){return true}else{return false}},eventOnClickMenuItemDelete:function(m){var p,o,n=this;if(confirm(navMenuL10n.warnDeleteMenuItem)){o=/_wpnonce=([a-zA-Z0-9]*)$/.exec(m.href);if(o&amp;&amp;o[1]){p=parseInt(m.id.replace(&quot;delete-&quot;,&quot;&quot;),10);d.post(ajaxurl,{action:&quot;delete-menu-item&quot;,&quot;menu-item&quot;:p,_wpnonce:o[1]},function(q){if(&quot;1&quot;==q){n.removeMenuItem(document.getElementById(&quot;menu-item-&quot;+p))}});return false}return true}else{return false}},addItemsToMenu:function(t){var n=d(&quot;.tabs-panel-active .categorychecklist li input:checked&quot;,&quot;#&quot;+t),s=d(&quot;#menu&quot;).val(),p=d(&quot;#menu-settings-column-nonce&quot;).val(),r={},q=this,m=function(){},o=new RegExp(&quot;menu-item\\[([^\\]]*)&quot;);m=q.eventAddMenuItem;if(!n.length){return false}d(&quot;#&quot;+t+&quot; img.waiting&quot;).show();d(n).each(function(){listItemDBIDMatch=o.exec(d(this).attr(&quot;name&quot;));listItemDBID=&quot;undefined&quot;==typeof listItemDBIDMatch[1]?0:parseInt(listItemDBIDMatch[1],10);listItemData=b(listItemDBID);r={action:&quot;add-menu-item&quot;,menu:s,&quot;menu-settings-column-nonce&quot;:p,&quot;menu-item&quot;:{}};r[&quot;menu-item&quot;][listItemDBID]=listItemData;d.post(ajaxurl,r,function(u){m.call(q,u,r)});d(this).attr(&quot;checked&quot;,false)});d(&quot;#&quot;+t+&quot; img.waiting&quot;).hide()},eventAddMenuItem:function(m,n){d(m).hideAdvancedMenuItemFields().appendTo(j)},processQuickSearchQueryResponse:function(q,v){if(!v){v={}}var n=document.createElement(&quot;ul&quot;),m=document.getElementById(&quot;nav-menu-meta&quot;),r,u,o,w,s,t=new RegExp(&quot;menu-item\\[([^\\]]*)&quot;),p;o=t.exec(q);if(o&amp;&amp;o[1]){s=o[1];while(m.elements[&quot;menu-item[&quot;+s+&quot;][menu-item-type]&quot;]){s--}if(s!=o[1]){q=q.replace(new RegExp(&quot;menu-item\\[&quot;+o[1]+&quot;\\]&quot;,&quot;g&quot;),&quot;menu-item[&quot;+s+&quot;]&quot;)}}n.innerHTML=q;u=n.getElementsByTagName(&quot;li&quot;);if(u[0]&amp;&amp;v.object_type){p=document.getElementById(v.object_type+&quot;-search-checklist&quot;);if(p){p.appendChild(u[0])}}else{if(v.type){o=/quick-search-(posttype|taxonomy)-([a-zA-Z_-]*)/.exec(v.type);if(o&amp;&amp;o[2]){p=document.getElementById(o[2]+&quot;-search-checklist&quot;);if(p){r=u.length;if(!r){w=document.createElement(&quot;li&quot;);w.appendChild(document.createTextNode(navMenuL10n.noResultsFound));p.appendChild(w)}while(r--){p.appendChild(u[r])}}}}}},removeMenuItem:function(n){n=d(n);var m=n.childMenuItems();n.addClass(&quot;deleting&quot;).fadeOut(350,function(){n.remove();m.shiftDepthClass(-1).updateParentMenuItemDBId();a()})}}};var wpNavMenu=new WPNavMenuHandler(jQuery);jQuery(function(){wpNavMenu.init()});
</del><span class="cx">\ No newline at end of file
</span><ins>+var WPNavMenuHandler=function(d){var h={},f=30,c=11,k=function(m,q,n,p){if(m&amp;&amp;m[0]){var o=d.parseJSON(m[0]);if(o.post_title){if(o.ID&amp;&amp;o.post_type){h[o.post_title]={ID:o.ID,object_type:o.post_type}}return o.post_title}}},l=function(m,q,n,p){if(m&amp;&amp;m[0]){var o=d.parseJSON(m[0]);if(o.post_title){return o.post_title}}},b=function(s,r){if(!s){return false}r=r||document;var n=[&quot;menu-item-db-id&quot;,&quot;menu-item-object-id&quot;,&quot;menu-item-object&quot;,&quot;menu-item-parent-id&quot;,&quot;menu-item-position&quot;,&quot;menu-item-type&quot;,&quot;menu-item-append&quot;,&quot;menu-item-title&quot;,&quot;menu-item-url&quot;,&quot;menu-item-description&quot;,&quot;menu-item-attr-title&quot;,&quot;menu-item-target&quot;,&quot;menu-item-classes&quot;,&quot;menu-item-xfn&quot;],m={},o=r.getElementsByTagName(&quot;input&quot;),q=o.length,p,t=document.getElementById(&quot;nav-menu-meta-object-id&quot;).value;while(q--){p=n.length;while(p--){if(o[q]&amp;&amp;o[q].name&amp;&amp;&quot;menu-item[&quot;+s+&quot;][&quot;+n[p]+&quot;]&quot;==o[q].name){m[n[p]]=o[q].value}}}return m},a=function(){g.find(&quot;.menu-item-data-position&quot;).val(function(m){return m+1})},e=function(m){return m*f},i=function(m){return Math.floor(m/f)},g,j;d.fn.extend({menuItemDepth:function(){return i(this.eq(0).css(&quot;margin-left&quot;).slice(0,-2))},updateDepthClass:function(n,m){return this.each(function(){var o=d(this);m=m||o.menuItemDepth();d(this).removeClass(&quot;menu-item-depth-&quot;+m).addClass(&quot;menu-item-depth-&quot;+n)})},shiftDepthClass:function(m){return this.each(function(){var n=d(this),o=n.menuItemDepth();d(this).removeClass(&quot;menu-item-depth-&quot;+o).addClass(&quot;menu-item-depth-&quot;+(o+m))})},childMenuItems:function(){var m=d();this.each(function(){var n=d(this),p=n.menuItemDepth(),o=n.next();while(o.length&amp;&amp;o.menuItemDepth()&gt;p){m=m.add(o);o=o.next()}});return m},updateParentMenuItemDBId:function(){return this.each(function(){var o=d(this),m=o.find(&quot;.menu-item-data-parent-id&quot;),p=o.menuItemDepth(),n=o.prev();if(p==0){m.val(0)}else{while(n.menuItemDepth()!=p-1){n=n.prev()}m.val(n.find(&quot;.menu-item-data-object-id&quot;).val())}})},hideAdvancedMenuItemFields:function(){return this.each(function(){var m=d(this);d(&quot;.hide-column-tog&quot;).not(&quot;:checked&quot;).each(function(){m.find(&quot;.field-&quot;+d(this).val()).addClass(&quot;hidden-field&quot;)})})},selectItem:function(){return this.each(function(){d(this).addClass(&quot;selected-menu-item&quot;).next().children(&quot;input&quot;).attr(&quot;checked&quot;,&quot;checked&quot;)})},deselectItem:function(){return this.each(function(){d(this).removeClass(&quot;selected-menu-item&quot;).next().children(&quot;input&quot;).removeAttr(&quot;checked&quot;)})},toggleItem:function(){return this.each(function(){var m=d(this);if(m.hasClass(&quot;selected-menu-item&quot;)){m.deselectItem()}else{m.selectItem()}})}});return{init:function(){g=d(&quot;#menu-to-edit&quot;);j=g;this.attachMenuEditListeners();this.attachMenuMetaListeners(document.getElementById(&quot;nav-menu-meta&quot;));this.attachTabsPanelListeners();this.attachHomeLinkListener();if(g.length){this.initSortables()}this.initToggles();this.initTabManager();this.initAddMenuItemDraggables();this.checkForEmptyMenu()},initToggles:function(){postboxes.add_postbox_toggles(&quot;nav-menus&quot;);columns.useCheckboxesForHidden();columns.checked=function(m){d(&quot;.field-&quot;+m).removeClass(&quot;hidden-field&quot;)};columns.unchecked=function(m){d(&quot;.field-&quot;+m).addClass(&quot;hidden-field&quot;)};g.hideAdvancedMenuItemFields()},initSortables:function(){var s=0,r,q,m,p=g.offset().left,t,o;g.sortable({handle:&quot;.menu-item-handle&quot;,placeholder:&quot;sortable-placeholder&quot;,start:function(C,B){var A,v,z,y,w,x;o=B.item.children(&quot;.menu-item-transport&quot;);t=(B.helper.hasClass(&quot;new-menu-item&quot;));r=(t)?0:B.item.menuItemDepth();n(B,r);if(!t){y=(B.item.next()[0]==B.placeholder[0])?B.item.next():B.item;w=y.childMenuItems();o.append(w)}u(B);v=o.outerHeight();v+=(v&gt;0)?(B.placeholder.css(&quot;margin-top&quot;).slice(0,-2)*1):0;v+=B.helper.outerHeight();v-=2;B.placeholder.height(v);x=r;if(!t){w.each(function(){var D=d(this).menuItemDepth();x=(D&gt;x)?D:x})}z=B.helper.find(&quot;.menu-item-handle&quot;).outerWidth();z+=e(x-r);z-=2;B.placeholder.width(z)},stop:function(y,x){var w,v=s-r;w=o.children().insertAfter(x.item);if(t){x.item.remove();if(v!=0){w.shiftDepthClass(v)}w.updateParentMenuItemDBId()}else{if(v!=0){x.item.updateDepthClass(s);w.shiftDepthClass(v)}x.item.updateParentMenuItemDBId()}a()},change:function(w,v){if(!v.placeholder.parent().hasClass(&quot;menu&quot;)){v.placeholder.appendTo(g)}u(v)},sort:function(w,v){var x=i(v.helper.offset().left-p);if(x&lt;q){x=q}else{if(x&gt;m){x=m}}if(x!=s){n(v,x)}},receive:function(w,v){o=v.sender.children(&quot;.menu-item-transport&quot;)}});function u(x){var w=x.placeholder.prev(),v=x.placeholder.next(),y;if(w[0]==x.item[0]){w=w.prev()}if(v[0]==x.item[0]){v=v.next()}q=(v.length)?v.menuItemDepth():0;if(w.length){m=((y=w.menuItemDepth()+1)&gt;c)?c:y}else{m=0}}function n(v,w){v.placeholder.updateDepthClass(w,s);s=w}},initAddMenuItemDraggables:function(){var m=d(&quot;.potential-menu-item&quot;);m.click(function(n){d(this).toggleItem()}).children().draggable({helper:&quot;clone&quot;,connectToSortable:&quot;ul#menu-to-edit&quot;,distance:5,zIndex:100,start:function(s,q){var r=d(s.target),p=r.parent(),n=p.parent(),o;p.selectItem();j=r.children(&quot;.menu-item-transport&quot;);o=n.parents(&quot;.tabs-panel&quot;).find(&quot;.selected-menu-item&quot;).children().not(q.helper).clone();q.helper.children(&quot;.additional-menu-items&quot;).append(o);q.helper.addClass(&quot;new-menu-item&quot;);q.helper.children(&quot;div&quot;).hide();o.first().css(&quot;margin-top&quot;,0);o.children(&quot;div&quot;).addClass(&quot;menu-item-handle&quot;);q.helper.children(&quot;div&quot;).addClass(&quot;hidden-handle&quot;);n.parents(&quot;.inside&quot;).find(&quot;.add-to-menu input&quot;).click();q.helper.width(q.helper.width());q.helper.height(q.helper.height())},stop:function(o,n){j=g;d(o.target).parents(&quot;.tabs-panel&quot;).find(&quot;.selected-menu-item&quot;).deselectItem()}})},attachMenuEditListeners:function(){var m=this;d(&quot;#update-nav-menu&quot;).bind(&quot;click&quot;,function(n){if(n.target&amp;&amp;n.target.className){if(-1!=n.target.className.indexOf(&quot;item-edit&quot;)){return m.eventOnClickEditLink(n.target)}else{if(-1!=n.target.className.indexOf(&quot;menu-delete&quot;)){return m.eventOnClickMenuDelete(n.target)}else{if(-1!=n.target.className.indexOf(&quot;item-delete&quot;)){return m.eventOnClickMenuItemDelete(n.target)}else{if(-1!=n.target.className.indexOf(&quot;item-close&quot;)){return m.eventOnClickCloseLink(n.target)}}}}}})},setupInputWithDefaultTitle:function(){var m=&quot;input-with-default-title&quot;;d(&quot;.&quot;+m).each(function(){var p=d(this),o=p.attr(&quot;title&quot;),n=p.val();p.data(m,o);if(&quot;&quot;==n){p.val(o)}else{if(o==n){return}else{p.removeClass(m)}}}).focus(function(){var n=d(this);if(n.val()==n.data(m)){n.val(&quot;&quot;).removeClass(m)}}).blur(function(){var n=d(this);if(&quot;&quot;==n.val()){n.val(n.data(m)).addClass(m)}})},attachMenuMetaListeners:function(m){if(!m){return}var n=this;this.setupInputWithDefaultTitle();d(&quot;input.quick-search&quot;).each(function(o,p){n.setupQuickSearchEventListeners(p)});d(m).click(function(p){var o=d(p.target).parent().parent().parent();if(d(p.target).is(&quot;input&quot;)&amp;&amp;d(p.target).hasClass(&quot;button-secondary&quot;)&amp;&amp;!d(p.target).hasClass(&quot;quick-search-submit&quot;)){if(d(o).hasClass(&quot;customlinkdiv&quot;)){n.addCustomLink()}else{if(d(o).hasClass(&quot;posttypediv&quot;)||d(o).hasClass(&quot;taxonomydiv&quot;)){n.addItemsToMenu(d(o).attr(&quot;id&quot;))}}return false}else{if(d(p.target).is(&quot;input&quot;)&amp;&amp;d(p.target).hasClass(&quot;quick-search-submit&quot;)){n.quickSearch(d(o).attr(&quot;id&quot;));return false}}})},quickSearch:function(u){var o=d(&quot;#&quot;+u+&quot; .quick-search&quot;).attr(&quot;name&quot;),r=d(&quot;#&quot;+u+&quot; .quick-search&quot;).val(),t=d(&quot;#menu&quot;).val(),n=d(&quot;#menu-settings-column-nonce&quot;).val(),s={},p=this,m=function(){};m=p.processQuickSearchQueryResponse;s={action:&quot;menu-quick-search&quot;,&quot;response-format&quot;:&quot;markup&quot;,menu:t,&quot;menu-settings-column-nonce&quot;:n,q:r,type:o};d.post(ajaxurl,s,function(q){m.call(p,q,s)})},addCustomLink:function(o,n,p){var o=o||d(&quot;#custom-menu-item-url&quot;).val(),n=n||d(&quot;#custom-menu-item-name&quot;).val(),p=p||false,t=d(&quot;#menu&quot;).val(),q=d(&quot;#menu-settings-column-nonce&quot;).val(),s={},r=this,m=function(){};if(&quot;&quot;==o||&quot;http://&quot;==o){return false}d(&quot;.customlinkdiv img.waiting&quot;).show();s={action:&quot;add-menu-item&quot;,menu:t,&quot;menu-settings-column-nonce&quot;:q,&quot;menu-item&quot;:{&quot;-1&quot;:{&quot;menu-item-type&quot;:&quot;custom&quot;,&quot;menu-item-url&quot;:o,&quot;menu-item-title&quot;:n}}};m=p?r.addMenuItemToTop:r.addMenuItemToBottom;d.post(ajaxurl,s,function(u){m.call(r,u,s);d(&quot;.customlinkdiv img.waiting&quot;).hide();wpNavMenu.resetCustomLinkForm()})},resetCustomLinkForm:function(){d(&quot;#custom-menu-item-name&quot;).val(&quot;&quot;).blur();d(&quot;#custom-menu-item-url&quot;).val(&quot;http://&quot;)},attachHomeLinkListener:function(){d(&quot;.add-home-link&quot;,&quot;.customlinkdiv&quot;).click(function(m){wpNavMenu.addCustomLink(navMenuL10n.homeurl,navMenuL10n.home,true);return false})},attachTabsPanelListeners:function(){d(&quot;#menu-settings-column&quot;).bind(&quot;click&quot;,function(r){if(r.target&amp;&amp;r.target.className&amp;&amp;-1!=r.target.className.indexOf(&quot;nav-tab-link&quot;)){var o,u=/#(.*)$/.exec(r.target.href),t,m=d(r.target).parents(&quot;.inside&quot;).first()[0],q=m?m.getElementsByTagName(&quot;input&quot;):[],p=q.length;while(p--){q[p].checked=false}d(&quot;.tabs-panel&quot;,m).each(function(){if(this.className){this.className=this.className.replace(&quot;tabs-panel-active&quot;,&quot;tabs-panel-inactive&quot;)}});d(&quot;.tabs&quot;,m).each(function(){this.className=this.className.replace(&quot;tabs&quot;,&quot;&quot;)});r.target.parentNode.className+=&quot; tabs&quot;;if(u&amp;&amp;u[1]){o=document.getElementById(u[1]);if(o){o.className=o.className.replace(&quot;tabs-panel-inactive&quot;,&quot;tabs-panel-active&quot;)}}return false}else{if(r.target&amp;&amp;r.target.className&amp;&amp;-1!=r.target.className.indexOf(&quot;select-all&quot;)){var n=/#(.*)$/.exec(r.target.href),s;if(n&amp;&amp;n[1]){s=d(&quot;#&quot;+n[1]+&quot; .tabs-panel-active .potential-menu-item&quot;);if(s.length===s.filter(&quot;.selected-menu-item&quot;).length){s.deselectItem()}else{s.selectItem()}return false}}}})},initTabManager:function(){var r=d(&quot;.nav-tabs-wrapper&quot;),s=r.children(&quot;.nav-tabs&quot;),q=s.children(&quot;.nav-tab-active&quot;),u=s.children(&quot;.nav-tab&quot;),o=0,v,p,t,n;resizing=false;function m(){p=r.offset().left;v=p+r.width();q.makeTabVisible()}d.fn.extend({makeTabVisible:function(){var x=this.eq(0),y,w;if(!x.length){return}y=x.offset().left;w=y+x.outerWidth();if(w&gt;v){s.animate({&quot;margin-left&quot;:&quot;+=&quot;+(v-w)+&quot;px&quot;,},&quot;fast&quot;)}else{if(y&lt;p){s.animate({&quot;margin-left&quot;:&quot;-=&quot;+(y-p)+&quot;px&quot;,},&quot;fast&quot;)}}return x},isTabVisible:function(){var x=this.eq(0),y=x.offset().left,w=y+x.outerWidth();return(w&lt;=v&amp;&amp;y&gt;=p)?true:false}});u.each(function(){o+=d(this).outerWidth(true)});if(o&lt;=r.width()-s.css(&quot;padding-left&quot;).slice(0,-2)-s.css(&quot;padding-right&quot;).slice(0,-2)){return}s.css({&quot;margin-right&quot;:(-1*o)+&quot;px&quot;,padding:0,});t=d('&lt;div class=&quot;nav-tabs-arrow nav-tabs-arrow-left&quot;&gt;&lt;a&gt;&amp;laquo;&lt;/a&gt;&lt;/div&gt;');n=d('&lt;div class=&quot;nav-tabs-arrow nav-tabs-arrow-right&quot;&gt;&lt;a&gt;&amp;raquo;&lt;/a&gt;&lt;/div&gt;');r.wrap('&lt;div class=&quot;nav-tabs-nav&quot;/&gt;').parent().prepend(t).append(n);m();d(window).resize(function(){if(resizing){return}resizing=true;setTimeout(function(){m();resizing=false},1000)});d.each([{arrow:t,next:&quot;next&quot;,last:&quot;first&quot;,operator:&quot;+=&quot;,},{arrow:n,next:&quot;prev&quot;,last:&quot;last&quot;,operator:&quot;-=&quot;,}],function(){var w=this;this.arrow.mousedown(function(){var y=u[w.last](),x=function(){if(!y.isTabVisible()){s.animate({&quot;margin-left&quot;:w.operator+&quot;90px&quot;,},300,&quot;linear&quot;,x)}};x()}).mouseup(function(){var y,x;s.stop(true);y=u[w.last]();while((x=y[w.next]())&amp;&amp;x.length&amp;&amp;!x.isTabVisible()){y=x}y.makeTabVisible()})})},setupQuickSearchEventListeners:function(m){var n=this;d(m).autocomplete(ajaxurl+&quot;?action=menu-quick-search&amp;type=&quot;+m.name,{delay:500,formatItem:k,formatResult:l,minchars:2,multiple:false}).bind(&quot;blur&quot;,function(q){var o=h[this.value],p=this;if(o){d.post(ajaxurl+&quot;?action=menu-quick-search&amp;type=get-post-item&amp;response-format=markup&quot;,o,function(s){n.processQuickSearchQueryResponse.call(n,s,o);h[p.value]=false})}})},eventOnClickEditLink:function(m){var o,n=/#(.*)$/.exec(m.href);if(n&amp;&amp;n[1]){o=d(&quot;#&quot;+n[1]);if(0!=o.length){if(o.hasClass(&quot;menu-item-edit-inactive&quot;)){o.slideDown(&quot;fast&quot;).siblings(&quot;dl&quot;).andSelf().removeClass(&quot;menu-item-edit-inactive&quot;).addClass(&quot;menu-item-edit-active&quot;)}else{o.slideUp(&quot;fast&quot;).siblings(&quot;dl&quot;).andSelf().removeClass(&quot;menu-item-edit-active&quot;).addClass(&quot;menu-item-edit-inactive&quot;)}return false}}},eventOnClickCloseLink:function(m){d(m).closest(&quot;.menu-item-settings&quot;).siblings(&quot;dl&quot;).find(&quot;.item-edit&quot;).click();return false},eventOnClickMenuDelete:function(m){if(confirm(navMenuL10n.warnDeleteMenu)){return true}else{return false}},eventOnClickMenuItemDelete:function(m){var p,o,n=this;if(confirm(navMenuL10n.warnDeleteMenuItem)){o=/_wpnonce=([a-zA-Z0-9]*)$/.exec(m.href);if(o&amp;&amp;o[1]){p=parseInt(m.id.replace(&quot;delete-&quot;,&quot;&quot;),10);d.post(ajaxurl,{action:&quot;delete-menu-item&quot;,&quot;menu-item&quot;:p,_wpnonce:o[1]},function(q){if(&quot;1&quot;==q){n.removeMenuItem(document.getElementById(&quot;menu-item-&quot;+p))}});return false}return true}else{return false}},addItemsToMenu:function(n,m){var s=d(&quot;.tabs-panel-active .categorychecklist li input:checked&quot;,&quot;#&quot;+n),o=d(&quot;#menu&quot;).val(),r=d(&quot;#menu-settings-column-nonce&quot;).val(),p={},q=this,m=m||false,t=function(){},u=new RegExp(&quot;menu-item\\[([^\\]]*)&quot;);t=m?q.addMenuItemToTop:q.addMenuItemToBottom;if(!s.length){return false}d(&quot;#&quot;+n+&quot; img.waiting&quot;).show();d(s).each(function(){listItemDBIDMatch=u.exec(d(this).attr(&quot;name&quot;));listItemDBID=&quot;undefined&quot;==typeof listItemDBIDMatch[1]?0:parseInt(listItemDBIDMatch[1],10);listItemData=b(listItemDBID);p={action:&quot;add-menu-item&quot;,menu:o,&quot;menu-settings-column-nonce&quot;:r,&quot;menu-item&quot;:{}};p[&quot;menu-item&quot;][listItemDBID]=listItemData;d.post(ajaxurl,p,function(v){t.call(q,v,p)});d(this).parent().prev().deselectItem()});d(&quot;#&quot;+n+&quot; img.waiting&quot;).hide()},addMenuItemToBottom:function(m,n){d(m).hideAdvancedMenuItemFields().appendTo(j)},addMenuItemToTop:function(m,n){d(m).hideAdvancedMenuItemFields().prependTo(j)},processQuickSearchQueryResponse:function(q,v){if(!v){v={}}var n=document.createElement(&quot;ul&quot;),m=document.getElementById(&quot;nav-menu-meta&quot;),r,u,o,w,s,t=new RegExp(&quot;menu-item\\[([^\\]]*)&quot;),p;o=t.exec(q);if(o&amp;&amp;o[1]){s=o[1];while(m.elements[&quot;menu-item[&quot;+s+&quot;][menu-item-type]&quot;]){s--}if(s!=o[1]){q=q.replace(new RegExp(&quot;menu-item\\[&quot;+o[1]+&quot;\\]&quot;,&quot;g&quot;),&quot;menu-item[&quot;+s+&quot;]&quot;)}}n.innerHTML=q;u=n.getElementsByTagName(&quot;li&quot;);if(u[0]&amp;&amp;v.object_type){p=document.getElementById(v.object_type+&quot;-search-checklist&quot;);if(p){p.appendChild(u[0])}}else{if(v.type){o=/quick-search-(posttype|taxonomy)-([a-zA-Z_-]*)/.exec(v.type);if(o&amp;&amp;o[2]){p=document.getElementById(o[2]+&quot;-search-checklist&quot;);if(p){r=u.length;if(!r){w=document.createElement(&quot;li&quot;);w.appendChild(document.createTextNode(navMenuL10n.noResultsFound));p.appendChild(w)}while(r--){p.appendChild(u[r])}}}}}},removeMenuItem:function(n){n=d(n);var m=n.childMenuItems();var o=this;n.addClass(&quot;deleting&quot;).fadeOut(350,function(){n.remove();m.shiftDepthClass(-1).updateParentMenuItemDBId();a();o.checkForEmptyMenu()})},checkForEmptyMenu:function(){if(g.children().length){return}g.height(80).one(&quot;sortstop&quot;,function(){d(this).height(&quot;auto&quot;)})}}};var wpNavMenu=new WPNavMenuHandler(jQuery);jQuery(function(){wpNavMenu.init()});
</ins><span class="cx">\ No newline at end of file
</span></span></pre></div>
<a id="trunkwpincludesscriptloaderphp"></a>
<div class="modfile"><h4>Modified: trunk/wp-includes/script-loader.php (14438 => 14439)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/wp-includes/script-loader.php        2010-05-04 08:54:35 UTC (rev 14438)
+++ trunk/wp-includes/script-loader.php        2010-05-04 10:01:15 UTC (rev 14439)
</span><span class="lines">@@ -395,6 +395,8 @@
</span><span class="cx">                 // Custom Navigation
</span><span class="cx">                 $scripts-&gt;add( 'nav-menu', &quot;/wp-admin/js/nav-menu$suffix.js&quot;, false, '20100504' );
</span><span class="cx">                 $scripts-&gt;localize( 'nav-menu', 'navMenuL10n', array(
</span><ins>+                        'home' =&gt; _x('Home', 'nav menu home label'),
+                        'homeurl' =&gt; home_url('/'),
</ins><span class="cx">                         'custom' =&gt; _x('Custom', 'menu nav item type'),
</span><span class="cx">                         'thickbox' =&gt; _x('Edit Menu Item', 'Thickbox Title'),
</span><span class="cx">                         'edit' =&gt; _x('Edit', 'menu item edit text'),
</span></span></pre>
</div>
</div>

</body>
</html>