;(function($,_,undefined){"use strict";ips.controller.register('gallery.front.submit.chooseCategory',{_chosen:false,initialize:function(){this.on('nodeItemSelected','[data-name="image_category"]',this.chooseCategory);this.on('nodeSelectedChanged','[data-name="image_category"]',this.chooseCategoryInitially);this.on('click','[data-action="continueNoAlbum"]',this.continueNoAlbum);},chooseCategoryInitially:function(e,data){if(this._chosen){return;}
if(!_.isArray(data.selectedItems)){return;}
var id=data.selectedItems[0];if(!_.isUndefined(id)){this._chosen=true;this.showAlbumOptions(id);}},chooseCategory:function(e,data){if(this._chosen){return;}
this._chosen=true;this.showAlbumOptions(data.id);},continueNoAlbum:function(e){e.preventDefault();$(e.currentTarget).closest('form').submit();},showAlbumOptions:function(id){var self=this;this.scope.addClass('ipsLoading');ips.getAjax()(ips.getSetting('baseURL')+'index.php?app=gallery&module=gallery&controller=submit&_step=choose_album&chosenCategory='+id+'&album='+this.scope.attr('data-preselected-album')).done(function(response){if(response){if(response.indexOf('gallery.front.submit.wizard')!==-1){self.trigger('updateWizard.gallery',{contents:response});}else{self.scope.removeClass('ipsLoading').html(response);$(document).trigger('contentChange',[self.scope]);}}else{self.scope.removeClass('ipsLoading');self.scope.find('[data-role="continueCategory"]').show();}}).fail(function(err){self.scope.removeClass('ipsLoading');self.scope.find('[data-role="continueCategory"]').show();});},});}(jQuery,_));;
;(function($,_,undefined){"use strict";ips.controller.register('gallery.front.submit.existingAlbums',{initialize:function(){this.on('click','#elGallerySubmit_albumChooser > li',this.clickAlbum);this.setup();},setup:function(){this._checkSelected();},clickAlbum:function(e){$(e.currentTarget).find('input[type="radio"]').prop('checked',true);this._checkSelected();},_checkSelected:function(){if(this.scope.find('input[name="existing_album"]:checked').length){this.scope.find('button[type="submit"]').prop('disabled',false);}else{this.scope.find('button[type="submit"]').prop('disabled',true);}}});}(jQuery,_));;
;(function($,_,undefined){"use strict";ips.controller.register('gallery.front.submit.imageInfo',{_index:null,initialize:function(){this.on('click','[data-action="addCopyright"]',this.toggleField);this.on('click','[data-action="addCredit"]',this.toggleField);this.on('click','[data-role="saveAndDoPrev"]',this.submitAndDoPrev);this.on('click','[data-role="saveAndDoNext"]',this.submitAndDoNext);this.on('submitWithoutRedirect.gallerySubmit',this.submitAndDoNothing);this.setup();},setup:function(){this._focusPrimaryField();this._index=this.scope.attr('data-index');},submitAndDoNothing:function(e,data){if(data.index!=this._index){return;}
this._submitForm();},submitAndDoPrev:function(e){e.preventDefault();this._submitForm('prev');},submitAndDoNext:function(e){e.preventDefault();this._submitForm('next');},toggleField:function(e){var type=$(e.currentTarget).attr('data-opens');this.scope.find('[data-role="'+type+'"]').slideDown().find(':input').first().focus();$(e.currentTarget).closest('li').remove();},_submitForm:function(direction){var self=this;var form=this.scope.find('form');form.find('button[type="submit"]').prop('disabled',true);this.trigger('formLoading.gallerySubmit');ips.ui.editor.getObj(this.scope.find('[data-ipsEditor]')).saveAndClearAutosave();ips.getAjax()(form.attr('action'),{data:form.serialize()+'&submitButton='+direction,dataType:'json',method:form.attr('method')}).done(function(response){ips.ui.editor.getObj(self.scope.find('[data-ipsEditor]')).destruct();self.trigger('formSaved.gallerySubmit',{index:self._index,response:response});}).fail(function(jqXHR,textStatus,errorThrown){self.trigger('formError.gallerySubmit',{index:self._index,response:jqXHR.responseText});});},_focusPrimaryField:function(){this.scope.find('[data-role="captionRow"] input[type="text"]').focus();}});}(jQuery,_));;
;(function($,_,undefined){"use strict";ips.controller.register('gallery.front.submit.main',{_slider:null,_infoPanel:null,_editForm:null,_switchToAfterLoad:null,initialize:function(){this.on('formLoading.gallerySubmit',this.formLoading);this.on('formSaved.gallerySubmit',this.formSaved);this.on('formError.gallerySubmit',this.formError);this.on('submit','[data-role="allImagesForm"]',this.finishEditing);this.on('click','[data-role="imageThumb"]',this.switchToImage);this.setup();},setup:function(){this._slider=this.scope.find('[data-role="imageSlider"]');this._infoPanel=this.scope.find('[data-role="infoPanel"]');this._editForm=this.scope.find('[data-role="editForm"]');},switchToImage:function(e){e.preventDefault();var image=$(e.currentTarget);var index=image.attr('data-index');var url=image.find('a').attr('href');var currentIndex=this._slider.find('.cGallerySubmit_current').attr('data-index');this._markImageDone(currentIndex);this._switchToAfterLoad={index:index,url:url};this._makeThumbActive(index);this.triggerOn('gallery.front.submit.imageInfo','submitWithoutRedirect.gallerySubmit',{index:currentIndex});},finishEditing:function(e){if($(e.currentTarget).attr('data-bypassChecks')){return;}
e.stopPropagation();e.preventDefault();var currentIndex=this._slider.find('.cGallerySubmit_current').attr('data-index');this._switchToAfterLoad={finish:true};if(_.isUndefined(currentIndex)){this._doFinish();return;}
this.triggerOn('gallery.front.submit.imageInfo','submitWithoutRedirect.gallerySubmit',{index:currentIndex});},formError:function(e,data){Debug.error(data.response);this._infoPanel.removeClass('ipsLoading');this._editForm.html(data.response).fadeIn('fast',function(){$(document).trigger('contentChange',[self._infoPanel]);});this._makeThumbActive(data.index);self._switchToAfterLoad=null;},formSaved:function(e,data){var self=this;var doneFunc=function(info){self._infoPanel.removeClass('ipsLoading');self._editForm.html(info.form).fadeIn('fast',function(){$(document).trigger('contentChange',[self._infoPanel]);});if(info.success){self._markImageDone(data.index);}};if(this._switchToAfterLoad!==null){if(!_.isUndefined(this._switchToAfterLoad.finish)){doneFunc({form:data.response.form,index:data.response.index,success:data.response.success});this._doFinish();}else{ips.getAjax()(this._switchToAfterLoad.url).done(function(response){var html=$('<div/>').html(response).find('[data-role="editForm"]').html();doneFunc({form:html,index:self._switchToAfterLoad.index});self._switchToAfterLoad=null;})}}else{doneFunc({form:data.response.form,index:data.response.index,success:data.response.success});self._makeThumbActive(data.response.done?null:data.response.index);self._switchToAfterLoad=null;}},formLoading:function(e,data){this._editForm.hide();this._infoPanel.addClass('ipsLoading');},_doFinish:function(){var self=this;var form=this.scope.find('[data-role="allImagesForm"]');var unsavedCount=this._slider.find('li:not( .cGallerySubmit_done )').length;if(unsavedCount){ips.ui.alert.show({type:'confirm',icon:'warn',message:ips.getString('images_without_data',{count:ips.pluralize(ips.getString('count_image'),unsavedCount)}),subText:ips.getString('images_without_data_desc'),callbacks:{ok:function(){form.attr('data-bypassChecks',true).submit();},cancel:function(){self._switchToAfterLoad=null;}}});}else{form.attr('data-bypassChecks',true).submit();}},_markImageDone:function(index){if(index!==-1){this._slider.find('[data-index="'+index+'"]').addClass('cGallerySubmit_done');}},_makeThumbActive:function(index){this._slider.find('[data-role="imageThumb"]').removeClass('cGallerySubmit_current');if(_.isNull(index)){return;}
var nextItem=this._slider.find('[data-index="'+index+'"]');nextItem.addClass('cGallerySubmit_current');if(ips.utils.responsive.enabled()&&ips.utils.responsive.currentIs('phone')){var scrollLeft=this._slider.scrollLeft();var nextOffset=nextItem.position()['left']+scrollLeft;var nextMargin=parseInt(nextItem.css('margin-right'));this._slider.animate({scrollLeft:(nextOffset-nextMargin)+'px'},'slow');}else{var scrollTop=this._slider.scrollTop();var nextOffset=nextItem.position()['top']+scrollTop;var nextMargin=parseInt(nextItem.css('margin-bottom'));this._slider.animate({scrollTop:(nextOffset-nextMargin)+'px'},'slow');}}});}(jQuery,_));;
;(function($,_,undefined){"use strict";ips.controller.register('gallery.front.submit.uploadImages',{_shrunk:false,initialize:function(){this.on('fileAdded','[data-ipsUploader]',this.filesAdded);this.on('uploadComplete','[data-ipsUploader]',this.uploadComplete);$(window).on('resize',_.bind(this.resizeUploader,this));this.setup();},setup:function(){if(this.scope.find('[data-role="fileList"] [data-role="file"]').length){this._shrinkUploader(false);$(window).trigger('resize');}else{this.resizeUploader();this.scope.find('[data-role="submitForm"]').prop('disabled',true);}},resizeUploader:function(){if(!this._shrunk){var height=this.scope.find('> form').height();var submitHeight=this.scope.find('.cGallerySubmit_bottomBar').height();var availableHeight=height-submitHeight-30;this.scope.find('.ipsAttachment_dropZone').css({height:availableHeight+'px'});}},uploadComplete:function(e,data){if(data.success>0){this.scope.find('[data-role="submitForm"]').prop('disabled',false);}
if(data.error>0){this.scope.find('[data-role="imageErrors"]').show();}},filesAdded:function(e,data){this._shrinkUploader(true);this.scope.find('[data-role="submitForm"]').prop('disabled',true);$(window).trigger('resize');},_shrinkUploader:function(animate){var dropzone=this.scope.find('.ipsAttachment_dropZone');var css={paddingTop:'10px',height:'160px'};if(animate){dropzone.find('.fa-cloud-upload').remove().end().animate(css);}else{dropzone.find('.fa-cloud-upload').remove().end().css(css);}
this._shrunk=true;}});}(jQuery,_));;
;(function($,_,undefined){"use strict";ips.controller.register('gallery.front.submit.wizard',{initialize:function(){this.on('click','.cGallerySteps_done[data-stepName]',this.changeStep);this.on('updateWizard.gallery',this.updateWizard);this.on('submit','form',this.submitForm);},changeStep:function(e){e.preventDefault();var step=$(e.currentTarget);var url=step.find('[data-action="wizardLink"]').attr('href');this._changeContents(url);},submitForm:function(e){e.preventDefault();var form=$(e.currentTarget);var url=form.attr('action');this._changeContents(url,form.serialize());},updateWizard:function(e,data){this.cleanContents();var content=$('<div>'+data.contents+'</div>');this._updateContents(content.find('[data-controller="gallery.front.submit.wizard"]').contents());},_changeContents:function(url,data){if(_.isUndefined(data)){data={};}
var wizardContent=this.scope.find('[data-role="wizardContent"]');var self=this;this.cleanContents();wizardContent.html('').addClass('ipsLoading');ips.getAjax()(url,{data:data,type:'post',bypassRedirect:true}).done(function(response,status,jqXHR){var content=$('<div>'+response+'</div>');self._updateContents(content.find('[data-controller="gallery.front.submit.wizard"]').contents());});},_updateContents:function(contents){this.scope.html(contents);$(document).trigger('contentChange',[this.scope]);}});}(jQuery,_));;