File Editor
Directories:
.. (Back)
Files:
class-sinatra-customizer-control-widget.php
widget.css
widget.js
widget.min.css
widget.min.js
Create New File
Create
Edit File: widget.min.js
!function($){"use strict";wp.customize.controlConstructor["sinatra-widget"]=wp.customize.Control.extend({ready:function(){var control=this;control.widget_count=control.container.find(".widget").length,control.setupSortable(),control.container.on("click",".sinatra-widget-container .widget-top",(function(){$(this).closest(".widget").toggleClass("sinatra-expanded").find(".widget-inside").slideToggle(200)})),control.container.on("click",".sinatra-widget-container .widget-control-close",(function(){$(this).closest(".widget").toggleClass("sinatra-expanded").find(".widget-inside").slideToggle(200)})),control.container.on("click",".sinatra-add-widget",(function(e){e.preventDefault(),control.updateList()})),control.container.on("change paste keyup","input, textarea, select",(function(e){control.update()})),control.container.on("click",".widget-control-remove",(function(){$(this).closest(".widget").remove(),control.update(),control.updateList()})),control.container.on("click",".sinatra-widget-edit-nav",(function(){wp.customize.control("nav_menu_locations["+$(this).closest(".sinatra-widget-nav-container").data("menu-location")+"]").focus(),control.close()})),wp.customize.previewer.bind("url",this.close),$(control.container).find(".sinatra-widget-nav-container").each((function(){var $this=$(this);control.bindMenuLocation($this)}))},bindMenuLocation:function($container){var menu_location=$container.data("menu-location");wp.customize("nav_menu_locations["+menu_location+"]",(function(value){value.bind((function(newval){if(newval){var menu_name=wp.customize.control("nav_menu_locations["+menu_location+"]").container.find("option:selected").html();$container.addClass("sinatra-widget-nav-has-menu").find(".sinatra-widget-nav-name").html(menu_name)}else $container.removeClass("sinatra-widget-nav-has-menu")}))}))},updateList:function(){var widget,self=this,widgets=self.params.widgets;widgets?($("#sinatra-available-widgets-list .sinatra-widget").hide().removeClass("disabled"),$.each(widgets,(function(index,el){(widget=$("#sinatra-available-widgets-list #sinatra-widget-tpl-sinatra_customizer_widget_"+index)).show(),el.hasOwnProperty("max_uses")&&el.max_uses>0&&el.max_uses<=$(self.container).find('.sinatra-widget-container [data-widget-type="'+index+'"]').length&&widget.addClass("disabled")}))):$("#sinatra-available-widgets-list .sinatra-widget").show()},addWidget:function(widget_id_base){var widget_html,widget_uuid;widget_uuid=this.setting.id+"-"+this.widget_count,widget_html=(widget_html=$.trim($(this.container).find(".sinatra-widget-tpl-"+widget_id_base).html())).replace(/<[^<>]+>/g,(function(m){return m.replace(/__i__|%i%/g,widget_uuid)}));var $widget=$(widget_html).appendTo(this.container.find(".sinatra-widget-container"));this.widget_count++,$widget.find(".widget-top").trigger("click"),this.update(),$widget.find(".sinatra-widget-nav-container").length&&this.bindMenuLocation($widget.find(".sinatra-widget-nav-container"))},close:function(){$("body").removeClass("sinatra-adding-widget")},update:function(){var inputs,widgetobj,option,checked,$widget,widgets=this.container.find(".sinatra-widget-container .widget"),new_value=[];widgets.length?(_.each(widgets,(function(widget){$widget=$(widget),(widgetobj={}).classname=$widget.data("widget-base"),widgetobj.type=$widget.data("widget-type"),widgetobj.values={},inputs=$widget.find("input, textarea, select"),_.each(inputs,(function(input){void 0!==(option=$(input).attr("data-option-name"))&&!1!==option&&(widgetobj.values[$(input).attr("data-option-name")]=$(input).val())})),_.each($widget.find(".buttonset"),(function(buttonset){void 0!==(checked=$(buttonset).find('input[type="radio"]:checked'))&&!1!==checked&&(widgetobj.values[checked.data("option-name")]=checked.val())})),new_value.push(widgetobj)})),this.setting.set(new_value)):this.setting.set(!1)},setupSortable:function(){var self=this;$(this.container).find(".sinatra-widget-container").sortable({items:"> .widget",handle:".widget-top",intersect:"pointer",axis:"y",update:function(){self.update()}})}}),$(document).ready((function(){var control;$(".wp-full-overlay").on("click",".sinatra-add-widget, .sinatra-close-widgets-panel",(function(e){e.preventDefault(),$("body").toggleClass("sinatra-adding-widget"),$(this).data("location-title")&&(control=wp.customize.control($(this).data("control")),$("#sinatra-available-widgets").attr("data-control",control.params.id).find(".sinatra-widget-caption").find("h3").html($(this).data("location-title")))})),$(".wp-full-overlay").on("click",".customize-section-back",(function(e){$("body").removeClass("sinatra-adding-widget"),$("#sinatra-available-widgets").removeAttr("data-control")})),$("#sinatra-available-widgets").on("click",".sinatra-widget",(function(e){control=wp.customize.control($("#sinatra-available-widgets").attr("data-control"));var widget_id=$(this).data("widget-id");control.addWidget(widget_id);control.close()}))}))}(jQuery);
Save Changes
Rename File
Rename