| 1 |
- !function(t,e){"use strict";wp.customize.controlConstructor["vamtam-background"]=wp.customize.Control.extend({ready:function(){var t=this;t.setupColor(),_.bindAll(t,"restoreDefault","removeFile","openFrame","select"),t.container.on("click keydown",".upload-button",t.openFrame),t.container.on("click keydown",".thumbnail-image img",t.openFrame),t.container.on("click keydown",".default-button",t.restoreDefault),t.container.on("click keydown",".remove-button",t.removeFile),t.container.on("change","select",function(){var e={};e[this.dataset.key]=this.value,t.setBackground(e)})},setupColor:function(){var t=this,e=t.container.find(".vamtam-bg-color");e.val(t.setting()["background-color"]).wpColorPicker({change:function(){t.setBackground({"background-color":e.val()})},clear:function(){t.setBackground({"background-color":""})},palettes:!1})},openFrame:function(t){wp.customize.utils.isKeydownButNotEnterEvent(t)||(t.preventDefault(),this.frame||this.initFrame(),this.frame.open())},initFrame:function(){this.frame=wp.media({button:{text:this.params.button_labels.frame_button},states:[new wp.media.controller.Library({title:this.params.button_labels.frame_title,library:wp.media.query({type:this.params.mime_type}),multiple:!1,date:!1})]}),this.frame.on("select",this.select)},select:function(){var t=this.frame.state().get("selection").first().toJSON();this.setImage(t)},restoreDefault:function(t){wp.customize.utils.isKeydownButNotEnterEvent(t)||(t.preventDefault(),this.setImage(this.params.default["background-image"]),this.setBackground(this.params.default))},removeFile:function(t){wp.customize.utils.isKeydownButNotEnterEvent(t)||(t.preventDefault(),this.setImage({}))},setImage:function(t){this.params.bg=_.extend({},this.params.bg,{"background-image":t}),this.setting.set(_.extend({},this.setting(),{"background-image":t.url||""})),this.renderContent(),this.setupColor()},setBackground:function(t){var e=this.setting.get();this.params.bg=_.extend({"background-repeat":"no-repeat","background-size":"auto","background-attachment":"fixed","background-position":"left top"},this.params.bg,t),this.setting.set(_.extend({"background-repeat":"no-repeat","background-size":"auto","background-attachment":"fixed","background-position":"left top"},e,t))}})}(jQuery);
|