Skip to:
Content

BuddyPress.org

Changeset 8180


Ignore:
Timestamp:
03/27/2014 09:40:20 PM (10 years ago)
Author:
imath
Message:

In Profile fields management screens, make sure the cancelled field options are not saved

When editing fields using options such as select boxes, radio boxes, check boxes, etc. when an admin cancelled one or more options, they were still saved. This make sure cancelled options are fully removed before the profile field is edited.

Fixes #5453

Location:
trunk/bp-xprofile/admin/js
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/bp-xprofile/admin/js/admin.js

    r7285 r8180  
    8080
    8181    document.getElementById( id ).style.display = "none";
    82     document.getElementById( id ).value = '';
     82    // the field id is [fieldtype]option[iterator] and not [fieldtype]div[iterator]
     83    field_id = id.replace( 'div', 'option' );
     84    document.getElementById( field_id ).value = '';
    8385}
    8486
  • trunk/bp-xprofile/admin/js/admin.min.js

    r7287 r8180  
    1 function add_option(g){var j=document.getElementById(g+"_more");var l=document.getElementById(g+"_option_number").value;var a=document.createElement("p");var h=document.createElement("input");var k=document.createElement("span");var e=document.createTextNode("\u00A0\u039E\u00A0");var b=document.createElement("input");var f=document.createElement("span");var d=document.createTextNode(" Default Value ");a.setAttribute("id",g+"_div"+l);a.setAttribute("class","sortable");h.setAttribute("type","text");h.setAttribute("name",g+"_option["+l+"]");h.setAttribute("id",g+"_option"+l);k.appendChild(e);if(g=="checkbox"||g=="multiselectbox"){b.setAttribute("type","checkbox");b.setAttribute("name","isDefault_"+g+"_option["+l+"]")}else{b.setAttribute("type","radio");b.setAttribute("name","isDefault_"+g+"_option")}b.setAttribute("value",l);f.appendChild(d);var c=document.createElement("a");var i=document.createTextNode("[x]");c.setAttribute("href","javascript:hide('"+g+"_div"+l+"')");c.setAttribute("class","delete");c.appendChild(i);a.appendChild(k);a.appendChild(h);a.appendChild(document.createTextNode(" "));a.appendChild(b);a.appendChild(f);a.appendChild(c);j.appendChild(a);enableSortableFieldOptions(g);document.getElementById(g+"_option"+l).focus();l++;document.getElementById(g+"_option_number").value=l}function show_options(a){document.getElementById("radio").style.display="none";document.getElementById("selectbox").style.display="none";document.getElementById("multiselectbox").style.display="none";document.getElementById("checkbox").style.display="none";if(a=="radio"){document.getElementById("radio").style.display=""}if(a=="selectbox"){document.getElementById("selectbox").style.display=""}if(a=="multiselectbox"){document.getElementById("multiselectbox").style.display=""}if(a=="checkbox"){document.getElementById("checkbox").style.display=""}}function hide(a){if(!document.getElementById(a)){return false}document.getElementById(a).style.display="none";document.getElementById(a).value=""}var fixHelper=function(b,a){a.children().each(function(){jQuery(this).width(jQuery(this).width())});return a};function enableSortableFieldOptions(a){if(jQuery("#"+a+" p.sortable").length>1){jQuery(".bp-options-box").sortable({items:"p.sortable",tolerance:"pointer",axis:"y",handle:"span"});jQuery(".sortable span").css("cursor","move")}}function destroySortableFieldOptions(){jQuery(".bp-options-box").sortable("destroy");jQuery(".sortable span").css("cursor","default")}jQuery(document).ready(function(){jQuery("#bp-xprofile-add-field #title").focus();jQuery("a.ajax-option-delete").on("click",function(){var d=this.id.split("-");d=d[1];jQuery.post(ajaxurl,{action:"xprofile_delete_option",cookie:encodeURIComponent(document.cookie),_wpnonce:jQuery("input#_wpnonce").val(),option_id:d},function(e){})});jQuery('[id^="sort_order_"]').change(function(){if(jQuery(this).val()!="custom"){destroySortableFieldOptions()}else{enableSortableFieldOptions(jQuery("#fieldtype :selected").val())}});jQuery("ul#field-group-tabs").show();jQuery("ul#field-group-tabs").sortable({cursor:"move",axis:"x",opacity:0.6,items:"li",tolerance:"pointer",update:function(){jQuery.post(ajaxurl,{action:"xprofile_reorder_groups",cookie:encodeURIComponent(document.cookie),_wpnonce_reorder_groups:jQuery("input#_wpnonce_reorder_groups").val(),group_order:jQuery(this).sortable("serialize")},function(d){})}}).disableSelection();jQuery("fieldset.field-group").sortable({cursor:"move",opacity:0.3,items:"fieldset",tolerance:"pointer",update:function(){jQuery.post(ajaxurl,{action:"xprofile_reorder_fields",cookie:encodeURIComponent(document.cookie),_wpnonce_reorder_fields:jQuery("input#_wpnonce_reorder_fields").val(),field_order:jQuery(this).sortable("serialize"),field_group_id:jQuery(this).attr("id")},function(d){})}}).disableSelection().css("cursor","move");enableSortableFieldOptions(jQuery("#fieldtype :selected").val());var b;var a=jQuery("#tabs").tabs();c(a);function c(d){b=jQuery("ul:first li",d).droppable({accept:".connectedSortable fieldset",hoverClass:"ui-state-hover",activeClass:"ui-state-acceptable",touch:"pointer",tolerance:"pointer",drop:function(g,h){var e=jQuery(this);var f=jQuery(e.find("a").attr("href")).find(".connectedSortable");jQuery(e).removeClass("drop-candidate");h.draggable.hide("slow",function(){d.tabs("option","active",b.index(e));jQuery(this).appendTo(f).show("slow").animate({opacity:"1"},500);f=jQuery(e.find("a").attr("href")).find(".connectedSortable");jQuery(f).find("p.nofields").hide("slow");jQuery.post(ajaxurl,{action:"xprofile_reorder_fields",cookie:encodeURIComponent(document.cookie),_wpnonce_reorder_fields:jQuery("input#_wpnonce_reorder_fields").val(),field_order:jQuery(f).sortable("serialize"),field_group_id:jQuery(f).attr("id")},function(i){})})},over:function(e,f){jQuery(this).addClass("drop-candidate")},out:function(e,f){jQuery(this).removeClass("drop-candidate")}})}});
     1function add_option(e){var t=document.getElementById(e+"_more");var n=document.getElementById(e+"_option_number").value;var r=document.createElement("p");var i=document.createElement("input");var s=document.createElement("span");var o=document.createTextNode(" Ξ ");var u=document.createElement("input");var a=document.createElement("span");var f=document.createTextNode(" Default Value ");r.setAttribute("id",e+"_div"+n);r.setAttribute("class","sortable");i.setAttribute("type","text");i.setAttribute("name",e+"_option["+n+"]");i.setAttribute("id",e+"_option"+n);s.appendChild(o);if(e=="checkbox"||e=="multiselectbox"){u.setAttribute("type","checkbox");u.setAttribute("name","isDefault_"+e+"_option["+n+"]")}else{u.setAttribute("type","radio");u.setAttribute("name","isDefault_"+e+"_option")}u.setAttribute("value",n);a.appendChild(f);var l=document.createElement("a");var c=document.createTextNode("[x]");l.setAttribute("href","javascript:hide('"+e+"_div"+n+"')");l.setAttribute("class","delete");l.appendChild(c);r.appendChild(s);r.appendChild(i);r.appendChild(document.createTextNode(" "));r.appendChild(u);r.appendChild(a);r.appendChild(l);t.appendChild(r);enableSortableFieldOptions(e);document.getElementById(e+"_option"+n).focus();n++;document.getElementById(e+"_option_number").value=n}function show_options(e){document.getElementById("radio").style.display="none";document.getElementById("selectbox").style.display="none";document.getElementById("multiselectbox").style.display="none";document.getElementById("checkbox").style.display="none";if(e=="radio")document.getElementById("radio").style.display="";if(e=="selectbox")document.getElementById("selectbox").style.display="";if(e=="multiselectbox")document.getElementById("multiselectbox").style.display="";if(e=="checkbox")document.getElementById("checkbox").style.display=""}function hide(e){if(!document.getElementById(e))return false;document.getElementById(e).style.display="none";field_id=e.replace("div","option");document.getElementById(field_id).value=""}function enableSortableFieldOptions(e){if(jQuery("#"+e+" p.sortable").length>1){jQuery(".bp-options-box").sortable({items:"p.sortable",tolerance:"pointer",axis:"y",handle:"span"});jQuery(".sortable span").css("cursor","move")}}function destroySortableFieldOptions(){jQuery(".bp-options-box").sortable("destroy");jQuery(".sortable span").css("cursor","default")}var fixHelper=function(e,t){t.children().each(function(){jQuery(this).width(jQuery(this).width())});return t};jQuery(document).ready(function(){function n(t){e=jQuery("ul:first li",t).droppable({accept:".connectedSortable fieldset",hoverClass:"ui-state-hover",activeClass:"ui-state-acceptable",touch:"pointer",tolerance:"pointer",drop:function(n,r){var i=jQuery(this);var s=jQuery(i.find("a").attr("href")).find(".connectedSortable");jQuery(i).removeClass("drop-candidate");r.draggable.hide("slow",function(){t.tabs("option","active",e.index(i));jQuery(this).appendTo(s).show("slow").animate({opacity:"1"},500);s=jQuery(i.find("a").attr("href")).find(".connectedSortable");jQuery(s).find("p.nofields").hide("slow");jQuery.post(ajaxurl,{action:"xprofile_reorder_fields",cookie:encodeURIComponent(document.cookie),_wpnonce_reorder_fields:jQuery("input#_wpnonce_reorder_fields").val(),field_order:jQuery(s).sortable("serialize"),field_group_id:jQuery(s).attr("id")},function(e){})})},over:function(e,t){jQuery(this).addClass("drop-candidate")},out:function(e,t){jQuery(this).removeClass("drop-candidate")}})}jQuery("#bp-xprofile-add-field #title").focus();jQuery("a.ajax-option-delete").on("click",function(){var e=this.id.split("-");e=e[1];jQuery.post(ajaxurl,{action:"xprofile_delete_option",cookie:encodeURIComponent(document.cookie),_wpnonce:jQuery("input#_wpnonce").val(),option_id:e},function(e){})});jQuery('[id^="sort_order_"]').change(function(){if(jQuery(this).val()!="custom"){destroySortableFieldOptions()}else{enableSortableFieldOptions(jQuery("#fieldtype :selected").val())}});jQuery("ul#field-group-tabs").show();jQuery("ul#field-group-tabs").sortable({cursor:"move",axis:"x",opacity:.6,items:"li",tolerance:"pointer",update:function(){jQuery.post(ajaxurl,{action:"xprofile_reorder_groups",cookie:encodeURIComponent(document.cookie),_wpnonce_reorder_groups:jQuery("input#_wpnonce_reorder_groups").val(),group_order:jQuery(this).sortable("serialize")},function(e){})}}).disableSelection();jQuery("fieldset.field-group").sortable({cursor:"move",opacity:.3,items:"fieldset",tolerance:"pointer",update:function(){jQuery.post(ajaxurl,{action:"xprofile_reorder_fields",cookie:encodeURIComponent(document.cookie),_wpnonce_reorder_fields:jQuery("input#_wpnonce_reorder_fields").val(),field_order:jQuery(this).sortable("serialize"),field_group_id:jQuery(this).attr("id")},function(e){})}}).disableSelection().css("cursor","move");enableSortableFieldOptions(jQuery("#fieldtype :selected").val());var e;var t=jQuery("#tabs").tabs();n(t)})
Note: See TracChangeset for help on using the changeset viewer.