AJS.$(function(){function initCascadingSelect(el){AJS.$(el||document.body).find("div.aui-field-cascadingselect").add("tr.aui-field-cascadingselect").add("td.aui-field-cascadingselect").each(function(){var $container=AJS.$(this),parent=$container.find(".cascadingselect-parent"),parentOptions=parent.find("option"),oldClass="",child=$container.find(".cascadingselect-child"),childOptions=child.find("option"),selectedChild=child.find(":selected");function update(){var currentClass=parent.find("option:selected").attr("class");if(currentClass!==oldClass){child.find("option").remove();childOptions.filter("."+parent.find("option:selected").attr("class")).appendTo(child);if(selectedChild.hasClass(parent.find("option:selected").attr("class"))){child.val(selectedChild.val())}else{child.val(child.find("option:first").val())}oldClass=currentClass}}parent.bind("cascadingSelectChanged",update).change(function(){AJS.$(this).trigger("cascadingSelectChanged")}).trigger("cascadingSelectChanged")})}initCascadingSelect();AJS.$(document).bind("dialogContentReady",function(e,dialog){initCascadingSelect(dialog.get$popupContent())})});
AJS.$(function(){function initDatePicker(el){AJS.$(el||document.body).find("div.aui-field-datepicker").add("tr.aui-field-datepicker").add("td.aui-field-datepicker").each(function(){var $container=AJS.$(this),field=$container.find("input:text"),defaultCheckbox=$container.find("#useCurrentDate"),params=AJS.parseOptionsFromFieldset($container.find("fieldset.datepicker-params"));params.context=el;Calendar.setup(params);function toggleField(){field.attr("disabled",defaultCheckbox.is(":checked"))}if(defaultCheckbox.length){toggleField();defaultCheckbox.click(toggleField)}})}initDatePicker();AJS.$(document).bind("dialogContentReady",function(e,dialog){initDatePicker(dialog.get$popupContent())})});
AJS.$(function(){function initGroupPicker(el){AJS.$(el||document.body).find("div.aui-field-grouppicker").add("tr.aui-field-grouppicker").add("td.aui-field-grouppicker").each(function(){var $container=AJS.$(this),trigger=$container.find("a.grouppicker-trigger"),url=trigger.attr("href");function openGroupPickerWindow(e){e.preventDefault();window.open(url,"GroupPicker","status=yes,resizable=yes,top=100,left=200,width=580,height=750,scrollbars=yes")}trigger.click(openGroupPickerWindow)})}initGroupPicker();AJS.$(document).bind("dialogContentReady",function(e,dialog){initGroupPicker(dialog.get$popupContent())})});
jira.app.findLabelsFieldsetAndConvertToPicker=function(){function createPicker($fieldset){var opts=AJS.parseOptionsFromFieldset($fieldset),$select=AJS.$("#"+opts.id),issueId=opts.issueId,data={};if(/customfield_\d/.test($select.attr("id"))){data.customFieldId=parseInt($select.attr("id").replace("customfield_",""),10)}new AJS.LabelPicker({element:$select,ajaxOptions:{url:contextPath+"/rest/api/1.0/labels"+(issueId?"/"+issueId:"")+"/suggest",data:data}})}function locateFieldset(parent){var $parent=AJS.$(parent),$fieldset;if($parent.is(FIELDSET_SELECTOR)){$fieldset=$parent}else{$fieldset=$parent.find(FIELDSET_SELECTOR)}return $fieldset}var DEFAULT_SELECTORS=["div.aui-field-labelpicker","td.aui-field-labelpicker","tr.aui-field-labelpicker"],FIELDSET_SELECTOR="fieldset.labelpicker-params";return function(context,selector){selector=selector||DEFAULT_SELECTORS.join(", ");AJS.$(selector,context).each(function(){var $fieldset=locateFieldset(this);if($fieldset.length){createPicker($fieldset)}else{AJS.log("jira.app.findLabelsFieldsetAndConvertToPicker: Tried to create label picker using ["+selector+"] "+"however selector does not match or could not find <fieldset>")}})}}();
jira.app.findComponentSelectAndConvertToPicker=function(){function createPicker($selectField){new AJS.MultiSelect({element:$selectField,itemAttrDisplayed:"label",errorMessage:AJS.params.multiselectComponentsError})}function locateSelect(parent){var $parent=AJS.$(parent),$selectField;if($parent.is("select")){$selectField=$parent}else{$selectField=$parent.find("select")}return $selectField}var DEFAULT_SELECTORS=["div.aui-field-componentspicker.frother-control-renderer","td.aui-field-componentspicker.frother-control-renderer","tr.aui-field-componentspicker.frother-control-renderer"];return function(context,selector){selector=selector||DEFAULT_SELECTORS.join(", ");AJS.$(selector,context).each(function(){var $selectField=locateSelect(this);if($selectField.length){createPicker($selectField)}else{AJS.log("jira.app.convertToComponentPicker: Tried to create version picker using ["+selector+"] "+"however selector does not match or could not find <select>")}})}}();
jira.app.findVersionSelectAndConvertToPicker=function(){function createPicker($selectField){new AJS.MultiSelect({element:$selectField,itemAttrDisplayed:"label",errorMessage:AJS.params.multiselectVersionsError})}function locateSelect(parent){var $parent=AJS.$(parent),$selectField;if($parent.is("select")){$selectField=$parent}else{$selectField=$parent.find("select")}return $selectField}var DEFAULT_SELECTORS=["div.aui-field-versionspicker.frother-control-renderer","td.aui-field-versionspicker.frother-control-renderer","tr.aui-field-versionspicker.frother-control-renderer"];return function(context,selector){selector=selector||DEFAULT_SELECTORS.join(", ");AJS.$(selector,context).each(function(){var $selectField=locateSelect(this);if($selectField.length){createPicker($selectField)}else{AJS.log("jira.app.convertToVersionPicker: Tried to create version picker using ["+selector+"] "+"however selector does not match or could not find <select>")}})}}();
AJS.$(document).bind("dialogContentReady",function(e,dialog){jira.app.findVersionSelectAndConvertToPicker(dialog.get$popupContent());jira.app.findComponentSelectAndConvertToPicker(dialog.get$popupContent());jira.app.findLabelsFieldsetAndConvertToPicker(dialog.get$popupContent())});AJS.$(function(){jira.app.findVersionSelectAndConvertToPicker();jira.app.findComponentSelectAndConvertToPicker();jira.app.findLabelsFieldsetAndConvertToPicker()});

