Plugin Directory

Changeset 3007503


Ignore:
Timestamp:
12/09/2023 02:41:25 AM (2 years ago)
Author:
neilgee
Message:

update to 1.9.3

Location:
slicknav-mobile-menu
Files:
23 added
4 edited

Legend:

Unmodified
Added
Removed
  • slicknav-mobile-menu/trunk/js/slicknav-brand-uploader.js

    r2499736 r3007503  
    1 jQuery(document).ready(function($){
    2  
    3  
     1jQuery(document).ready(function ($) {
     2
    43    var custom_uploader;
    5  
    6  
    7     $('#upload_image_button').on('click', function(event){
    8  
    9         e.preventDefault();
    10  
     4
     5    $('#upload_image_button').on('click', function (event) {
     6
     7        event.preventDefault(); // Fix: Use event instead of e
     8
    119        //If the uploader object has already been created, reopen the dialog
    1210        if (custom_uploader) {
     
    1412            return;
    1513        }
    16  
     14
    1715        //Extend the wp.media object
    1816        custom_uploader = wp.media.frames.file_frame = wp.media({
     
    2321            multiple: false
    2422        });
    25  
     23
    2624        //When a file is selected, grab the URL and set it as the text field's value
    27         custom_uploader.on('select', function() {
     25        custom_uploader.on('select', function () {
    2826            attachment = custom_uploader.state().get('selection').first().toJSON();
    2927            $('#ng_slicknav_brand').val(attachment.url);
    3028        });
    31  
     29
    3230        //Open the uploader dialog
    3331        custom_uploader.open();
    34  
     32
    3533    });
    36  
    37  
     34
    3835});
  • slicknav-mobile-menu/trunk/js/wp-color-picker-alpha.min.js

    r2958533 r3007503  
    55 * Only run in input and is defined data alpha in true
    66 *
    7  * Version: 3.0.2
     7 * Version: 3.0.3
    88 * https://github.com/kallookoo/wp-color-picker-alpha
    99 * Licensed under the GPLv2 license or later.
    1010 */
    11 !function (o, a) { var t = { version: 302 }; if ("wpColorPickerAlpha" in window && "version" in window.wpColorPickerAlpha) { var r = parseInt(window.wpColorPickerAlpha.version, 10); if (!isNaN(r) && r >= t.version) return } if (!Color.fn.hasOwnProperty("to_s")) { Color.fn.to_s = function (o) { "hex" === (o = o || "hex") && this._alpha < 1 && (o = "rgba"); var a = ""; return "hex" === o ? a = this.toString() : this.error || (a = this.toCSS(o).replace(/\(\s+/, "(").replace(/\s+\)/, ")")), a }, window.wpColorPickerAlpha = t; var i = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAAHnlligAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHJJREFUeNpi+P///4EDBxiAGMgCCCAGFB5AADGCRBgYDh48CCRZIJS9vT2QBAggFBkmBiSAogxFBiCAoHogAKIKAlBUYTELAiAmEtABEECk20G6BOmuIl0CIMBQ/IEMkO0myiSSraaaBhZcbkUOs0HuBwDplz5uFJ3Z4gAAAABJRU5ErkJggg=="; o.widget("a8c.iris", o.a8c.iris, { alphaOptions: { alphaEnabled: !1 }, _getColor: function (o) { return o === a && (o = this._color), this.alphaOptions.alphaEnabled ? (o = o.to_s(this.alphaOptions.alphaColorType), this.alphaOptions.alphaColorWithSpace || (o = o.replace(/\s+/g, "")), o) : o.toString() }, _create: function () { try { this.alphaOptions = this.element.wpColorPicker("instance").alphaOptions } catch (o) { } o.extend({}, this.alphaOptions, { alphaEnabled: !1, alphaCustomWidth: 130, alphaReset: !1, alphaColorType: "hex", alphaColorWithSpace: !1 }), this._super() }, _addInputListeners: function (o) { var a = this, t = function (t) { var r = o.val(), i = new Color(r), l = (r = r.replace(/^(#|(rgb|hsl)a?)/, ""), a.alphaOptions.alphaColorType); o.removeClass("iris-error"), i.error ? "" !== r && o.addClass("iris-error") : "hex" === l && "keyup" === t.type && r.match(/^[0-9a-fA-F]{3}$/) || i.toIEOctoHex() !== a._color.toIEOctoHex() && a._setOption("color", a._getColor(i)) }; o.on("change", t).on("keyup", a._debounce(t, 100)), a.options.hide && o.one("focus", (function () { a.show() })) }, _initControls: function () { if (this._super(), this.alphaOptions.alphaEnabled) { var a = this, t = a.controls.strip.clone(!1, !1), r = t.find(".iris-slider-offset"), i = { stripAlpha: t, stripAlphaSlider: r }; t.addClass("iris-strip-alpha"), r.addClass("iris-slider-offset-alpha"), t.appendTo(a.picker.find(".iris-picker-inner")), o.each(i, (function (o, t) { a.controls[o] = t })), a.controls.stripAlphaSlider.slider({ orientation: "vertical", min: 0, max: 100, step: 1, value: parseInt(100 * a._color._alpha), slide: function (o, t) { a.active = "strip", a._color._alpha = parseFloat(t.value / 100), a._change.apply(a, arguments) } }) } }, _dimensions: function (o) { if (this._super(o), this.alphaOptions.alphaEnabled) { var a, t, r, i, l, e = this, s = e.options, n = e.controls.square, p = e.picker.find(".iris-strip"); for (a = Math.round(e.picker.outerWidth(!0) - (s.border ? 22 : 0)), t = Math.round(n.outerWidth()), r = Math.round((a - t) / 2), i = Math.round(r / 2), l = Math.round(t + 2 * r + 2 * i); l > a;)r = Math.round(r - 2), i = Math.round(i - 1), l = Math.round(t + 2 * r + 2 * i); n.css("margin", "0"), p.width(r).css("margin-left", i + "px") } }, _change: function () { var a = this, t = a.active; if (a._super(), a.alphaOptions.alphaEnabled) { var r = a.controls, l = parseInt(100 * a._color._alpha), e = a._color.toRgb(), s = ["rgb(" + e.r + "," + e.g + "," + e.b + ") 0%", "rgba(" + e.r + "," + e.g + "," + e.b + ", 0) 100%"]; a.picker.closest(".wp-picker-container").find(".wp-color-result"); a.options.color = a._getColor(), r.stripAlpha.css({ background: "linear-gradient(to bottom, " + s.join(", ") + "), url(" + i + ")" }), t && r.stripAlphaSlider.slider("value", l), a._color.error || a.element.removeClass("iris-error").val(a.options.color), a.picker.find(".iris-palette-container").on("click.palette", ".iris-palette", (function () { var t = o(this).data("color"); a.alphaOptions.alphaReset && (a._color._alpha = 1, t = a._getColor()), a._setOption("color", t) })) } }, _paintDimension: function (o, a) { var t = this, r = !1; t.alphaOptions.alphaEnabled && "strip" === a && (r = t._color, t._color = new Color(r.toString()), t.hue = t._color.h()), t._super(o, a), r && (t._color = r) }, _setOption: function (o, a) { var t = this; if ("color" !== o || !t.alphaOptions.alphaEnabled) return t._super(o, a); a = "" + a, newColor = new Color(a).setHSpace(t.options.mode), newColor.error || t._getColor(newColor) === t._getColor() || (t._color = newColor, t.options.color = t._getColor(), t.active = "external", t._change()) }, color: function (o) { return !0 === o ? this._color.clone() : o === a ? this._getColor() : void this.option("color", o) } }), o.widget("wp.wpColorPicker", o.wp.wpColorPicker, { alphaOptions: { alphaEnabled: !1 }, _getAlphaOptions: function () { var a = this.element, t = a.data("type") || this.options.type, r = a.data("defaultColor") || a.val(), i = { alphaEnabled: a.data("alphaEnabled") || !1, alphaCustomWidth: 130, alphaReset: !1, alphaColorType: "rgb", alphaColorWithSpace: !1 }; return i.alphaEnabled && (i.alphaEnabled = a.is("input") && "full" === t), i.alphaEnabled ? (i.alphaColorWithSpace = r && r.match(/\s/), o.each(i, (function (o, t) { var l = a.data(o) || t; switch (o) { case "alphaCustomWidth": l = l ? parseInt(l, 10) : 0, l = isNaN(l) ? t : l; break; case "alphaColorType": l.match(/^(hex|(rgb|hsl)a?)$/) || (l = r && r.match(/^#/) ? "hex" : r && r.match(/^hsla?/) ? "hsl" : t); break; default: l = !!l }i[o] = l })), i) : i }, _create: function () { o.support.iris && (this.alphaOptions = this._getAlphaOptions(), this._super()) }, _addListeners: function () { if (!this.alphaOptions.alphaEnabled) return this._super(); var a = this, t = a.element, r = a.toggler.is("a"); this.alphaOptions.defaultWidth = t.width(), this.alphaOptions.alphaCustomWidth && t.width(parseInt(this.alphaOptions.defaultWidth + this.alphaOptions.alphaCustomWidth, 10)), a.toggler.css({ position: "relative", "background-image": "url(" + i + ")" }), r ? a.toggler.html('<span class="color-alpha" />') : a.toggler.append('<span class="color-alpha" />'), a.colorAlpha = a.toggler.find("span.color-alpha").css({ width: "30px", height: "100%", position: "absolute", top: 0, "background-color": t.val() }), "ltr" === a.colorAlpha.css("direction") ? a.colorAlpha.css({ "border-bottom-left-radius": "2px", "border-top-left-radius": "2px", left: 0 }) : a.colorAlpha.css({ "border-bottom-right-radius": "2px", "border-top-right-radius": "2px", right: 0 }), t.iris({ change: function (o, t) { a.colorAlpha.css({ "background-color": t.color.to_s(a.alphaOptions.alphaColorType) }), "function" == typeof a.options.change && a.options.change.call(this, o, t) } }), a.wrap.on("click.wpcolorpicker", (function (o) { o.stopPropagation() })), a.toggler.on("click", (function () { a.toggler.hasClass("wp-picker-open") ? a.close() : a.open() })), t.on("change", (function (i) { var l = o(this).val(); (t.hasClass("iris-error") || "" === l || l.match(/^(#|(rgb|hsl)a?)$/)) && (r && a.toggler.removeAttr("style"), a.colorAlpha.css("background-color", ""), "function" == typeof a.options.clear && a.options.clear.call(this, i)) })), a.button.on("click", (function (i) { o(this).hasClass("wp-picker-default") ? t.val(a.options.defaultColor).change() : o(this).hasClass("wp-picker-clear") && (t.val(""), r && a.toggler.removeAttr("style"), a.colorAlpha.css("background-color", ""), "function" == typeof a.options.clear && a.options.clear.call(this, i), t.trigger("change")) })) } }) } }(jQuery);
     11(function(o,a){var t={version:302};if("wpColorPickerAlpha"in window&&"version"in window.wpColorPickerAlpha){var r=parseInt(window.wpColorPickerAlpha.version,10);if(!isNaN(r)&&r>=t.version)return}if(!Color.fn.hasOwnProperty("to_s")){Color.fn.to_s=function(o){o=o||"hex","hex"===o&&this._alpha<1&&(o="rgba");var a="";return"hex"===o?a=this.toString():this.error||(a=this.toCSS(o).replace(/\(\s+/,"(").replace(/\s+\)/,")")),a},window.wpColorPickerAlpha=t;var i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAAHnlligAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHJJREFUeNpi+P///4EDBxiAGMgCCCAGFB5AADGCRBgYDh48CCRZIJS9vT2QBAggFBkmBiSAogxFBiCAoHogAKIKAlBUYTELAiAmEtABEECk20G6BOmuIl0CIMBQ/IEMkO0myiSSraaaBhZcbkUOs0HuBwDplz5uFJ3Z4gAAAABJRU5ErkJggg==";o.widget("a8c.iris",o.a8c.iris,{alphaOptions:{alphaEnabled:!1},_getColor:function(o){return o===a&&(o=this._color),this.alphaOptions.alphaEnabled?(o=o.to_s(this.alphaOptions.alphaColorType),this.alphaOptions.alphaColorWithSpace||(o=o.replace(/\s+/g,"")),o):o.toString()},_create:function(){try{this.alphaOptions=this.element.wpColorPicker("instance").alphaOptions}catch(o){}o.extend({},this.alphaOptions,{alphaEnabled:!1,alphaCustomWidth:130,alphaReset:!1,alphaColorType:"hex",alphaColorWithSpace:!1,alphaSkipDebounce:!1,alphaDebounceTimeout:100}),this._super()},_addInputListeners:function(o){var a=this,t=function(t){var r=o.val(),i=new Color(r),l=(r=r.replace(/^(#|(rgb|hsl)a?)/,""),a.alphaOptions.alphaColorType);o.removeClass("iris-error"),i.error?""!==r&&o.addClass("iris-error"):"hex"===l&&"keyup"===t.type&&r.match(/^[0-9a-fA-F]{3}$/)||i.toIEOctoHex()!==a._color.toIEOctoHex()&&a._setOption("color",a._getColor(i))};o.on("change",t),a.alphaOptions.alphaSkipDebounce||o.on("keyup",a._debounce(t,a.alphaOptions.alphaDebounceTimeout)),a.options.hide&&o.one("focus",function(){a.show()})},_initControls:function(){if(this._super(),this.alphaOptions.alphaEnabled){var a=this,t=a.controls.strip.clone(!1,!1),r=t.find(".iris-slider-offset"),i={stripAlpha:t,stripAlphaSlider:r};t.addClass("iris-strip-alpha"),r.addClass("iris-slider-offset-alpha"),t.appendTo(a.picker.find(".iris-picker-inner")),o.each(i,function(o,t){a.controls[o]=t}),a.controls.stripAlphaSlider.slider({orientation:"vertical",min:0,max:100,step:1,value:parseInt(100*a._color._alpha),slide:function(o,t){a.active="strip",a._color._alpha=parseFloat(t.value/100),a._change.apply(a,arguments)}})}},_dimensions:function(o){if(this._super(o),this.alphaOptions.alphaEnabled){var a,t,r,i,l,e=this,s=e.options,n=e.controls,p=n.square,h=e.picker.find(".iris-strip");for(a=Math.round(e.picker.outerWidth(!0)-(s.border?22:0)),t=Math.round(p.outerWidth()),r=Math.round((a-t)/2),i=Math.round(r/2),l=Math.round(t+2*r+2*i);l>a;)r=Math.round(r-2),i=Math.round(i-1),l=Math.round(t+2*r+2*i);p.css("margin","0"),h.width(r).css("margin-left",i+"px")}},_change:function(){var a=this,t=a.active;if(a._super(),a.alphaOptions.alphaEnabled){var r=a.controls,l=parseInt(100*a._color._alpha),e=a._color.toRgb(),s=["rgb("+e.r+","+e.g+","+e.b+") 0%","rgba("+e.r+","+e.g+","+e.b+", 0) 100%"];a.picker.closest(".wp-picker-container").find(".wp-color-result");a.options.color=a._getColor(),r.stripAlpha.css({background:"linear-gradient(to bottom, "+s.join(", ")+"), url("+i+")"}),t&&r.stripAlphaSlider.slider("value",l),a._color.error||a.element.removeClass("iris-error").val(a.options.color),a.picker.find(".iris-palette-container").on("click.palette",".iris-palette",function(){var t=o(this).data("color");a.alphaOptions.alphaReset&&(a._color._alpha=1,t=a._getColor()),a._setOption("color",t)})}},_paintDimension:function(o,a){var t=this,r=!1;t.alphaOptions.alphaEnabled&&"strip"===a&&(r=t._color,t._color=new Color(r.toString()),t.hue=t._color.h()),t._super(o,a),r&&(t._color=r)},_setOption:function(o,a){var t=this;if("color"!==o||!t.alphaOptions.alphaEnabled)return t._super(o,a);a=""+a,newColor=new Color(a).setHSpace(t.options.mode),newColor.error||t._getColor(newColor)===t._getColor()||(t._color=newColor,t.options.color=t._getColor(),t.active="external",t._change())},color:function(o){return!0===o?this._color.clone():o===a?this._getColor():void this.option("color",o)}}),o.widget("wp.wpColorPicker",o.wp.wpColorPicker,{alphaOptions:{alphaEnabled:!1},_getAlphaOptions:function(){var a=this.element,t=a.data("type")||this.options.type,r=a.data("defaultColor")||a.val(),i={alphaEnabled:a.data("alphaEnabled")||!1,alphaCustomWidth:130,alphaReset:!1,alphaColorType:"rgb",alphaColorWithSpace:!1,alphaSkipDebounce:!!a.data("alphaSkipDebounce")||!1};return i.alphaEnabled&&(i.alphaEnabled=a.is("input")&&"full"===t),i.alphaEnabled?(i.alphaColorWithSpace=r&&r.match(/\s/),o.each(i,function(o,t){var l=a.data(o)||t;switch(o){case"alphaCustomWidth":l=l?parseInt(l,10):0,l=isNaN(l)?t:l;break;case"alphaColorType":l.match(/^(hex|(rgb|hsl)a?)$/)||(l=r&&r.match(/^#/)?"hex":r&&r.match(/^hsla?/)?"hsl":t);break;default:l=!!l}i[o]=l}),i):i},_create:function(){o.support.iris&&(this.alphaOptions=this._getAlphaOptions(),this._super())},_addListeners:function(){if(!this.alphaOptions.alphaEnabled)return this._super();var a=this,t=a.element,r=a.toggler.is("a");this.alphaOptions.defaultWidth=t.width(),this.alphaOptions.alphaCustomWidth&&t.width(parseInt(this.alphaOptions.defaultWidth+this.alphaOptions.alphaCustomWidth,10)),a.toggler.css({position:"relative","background-image":"url("+i+")"}),r?a.toggler.html('<span class="color-alpha" />'):a.toggler.append('<span class="color-alpha" />'),a.colorAlpha=a.toggler.find("span.color-alpha").css({width:"30px",height:"100%",position:"absolute",top:0,"background-color":t.val()}),"ltr"===a.colorAlpha.css("direction")?a.colorAlpha.css({"border-bottom-left-radius":"2px","border-top-left-radius":"2px",left:0}):a.colorAlpha.css({"border-bottom-right-radius":"2px","border-top-right-radius":"2px",right:0}),t.iris({change:function(o,t){a.colorAlpha.css({"background-color":t.color.to_s(a.alphaOptions.alphaColorType)}),"function"==typeof a.options.change&&a.options.change.call(this,o,t)}}),a.wrap.on("click.wpcolorpicker",function(o){o.stopPropagation()}),a.toggler.on("click",function(){a.toggler.hasClass("wp-picker-open")?a.close():a.open()}),t.on("change",function(i){var l=o(this).val();(t.hasClass("iris-error")||""===l||l.match(/^(#|(rgb|hsl)a?)$/))&&(r&&a.toggler.removeAttr("style"),a.colorAlpha.css("background-color",""),"function"==typeof a.options.clear&&a.options.clear.call(this,i))}),a.button.on("click",function(i){o(this).hasClass("wp-picker-default")?t.val(a.options.defaultColor).change():o(this).hasClass("wp-picker-clear")&&(t.val(""),r&&a.toggler.removeAttr("style"),a.colorAlpha.css("background-color",""),"function"==typeof a.options.clear&&a.options.clear.call(this,i),t.trigger("change"))})}})}})(jQuery);
  • slicknav-mobile-menu/trunk/readme.txt

    r2958533 r3007503  
    55Tags: mobile, menu, responsive, aria, accessible, graceful, submenu, multi-level
    66Requires at least: 4.0
    7 Tested up to: 6.3
    8 Stable tag: 1.9.2
     7Tested up to: 6.4
     8Stable tag: 1.9.3
    99Plugin Name: SlickNav Mobile Menu
    1010Plugin URI: http://wpbeaches.com
    1111Description: SlickNav Mobile Menu
    1212Author: Neil Gowran
    13 Version: 1.9.2
     13Version: 1.9.3
    1414Author URI: http://wpbeaches.com/
    1515License: GPL-2.0+
     
    9898
    9999== Changelog ==
     100
     101= 1.9.3 =
     102
     103* 09/12/23
     104- Fix Cross Site Scripting (XSS)
     105- Updated wp-color-picker to 3.0.3
     106- Fix js for the image uploader in settings
    100107
    101108= 1.9.2 =
  • slicknav-mobile-menu/trunk/slicknav-mobile-menu.php

    r2958533 r3007503  
    66Description: Using SlickNav Responsive Mobile Menus in WordPress
    77Author: Neil Gee
    8 Version: 1.9.2
     8Version: 1.9.3
    99Author URI: http://wpbeaches.com
    1010License: GPL-2.0+
     
    501501
    502502if( !isset( $options['ng_slicknav_menu'] ) ) $options['ng_slicknav_menu'] = '';
    503 echo '<input type="text" id="ng_slicknav_menu" name="ng_slicknavmenu[ng_slicknav_menu]" value="' . sanitize_text_field($options['ng_slicknav_menu']) . '" placeholder="Add menus here..." class="large-text" />';
     503echo '<input type="text" id="ng_slicknav_menu" name="ng_slicknavmenu[ng_slicknav_menu]" value="' . esc_attr($options['ng_slicknav_menu']) . '" placeholder="Add menus here..." class="large-text" />';
    504504echo '<span class="description">' . __( 'Add the Menu CSS Class or ID to be used as SickNav Menu, comma separate multiple menus','slicknav-mobile-menu') . '</span>';
    505505}
     
    514514
    515515if( !isset( $options['ng_slicknav_width'] ) ) $options['ng_slicknav_width'] = 600;
    516 echo '<input type="number" class="regular-text" name="ng_slicknavmenu[ng_slicknav_width]" value="' . sanitize_text_field($options['ng_slicknav_width']) . '"/>';
     516echo '<input type="number" class="regular-text" name="ng_slicknavmenu[ng_slicknav_width]" value="' . esc_attr($options['ng_slicknav_width']) . '"/>';
    517517}
    518518
     
    526526
    527527if( !isset( $options['ng_slicknav_font'] ) ) $options['ng_slicknav_font'] = 16;
    528 echo '<input type="number" class="regular-text" name="ng_slicknavmenu[ng_slicknav_font]" value="' . sanitize_text_field($options['ng_slicknav_font']) . '"/>';
     528echo '<input type="number" class="regular-text" name="ng_slicknavmenu[ng_slicknav_font]" value="' . esc_attr($options['ng_slicknav_font']) . '"/>';
    529529}
    530530
     
    538538
    539539if( !isset( $options['ng_slicknav_label_size'] ) ) $options['ng_slicknav_label_size'] = 16;
    540 echo '<input type="number" class="regular-text" name="ng_slicknavmenu[ng_slicknav_label_size]" value="' . sanitize_text_field($options['ng_slicknav_label_size']) . '"/>';
     540echo '<input type="number" class="regular-text" name="ng_slicknavmenu[ng_slicknav_label_size]" value="' . esc_attr($options['ng_slicknav_label_size']) . '"/>';
    541541}
    542542
     
    550550
    551551if( !isset( $options['ng_slicknav_background'] ) ) $options['ng_slicknav_background'] = '#4c4c4c';
    552 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#4c4c4c" name="ng_slicknavmenu[ng_slicknav_background]" value="' . sanitize_text_field($options['ng_slicknav_background']) . '"/>';
     552echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#4c4c4c" name="ng_slicknavmenu[ng_slicknav_background]" value="' . esc_attr($options['ng_slicknav_background']) . '"/>';
    553553}
    554554
     
    562562
    563563if( !isset( $options['ng_slicknav_button'] ) ) $options['ng_slicknav_button'] = '#222222';
    564 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222" name="ng_slicknavmenu[ng_slicknav_button]" value="' . sanitize_text_field($options['ng_slicknav_button']) . '"/>';
     564echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222" name="ng_slicknavmenu[ng_slicknav_button]" value="' . esc_attr($options['ng_slicknav_button']) . '"/>';
    565565}
    566566
     
    574574
    575575if( !isset( $options['ng_slicknav_brand_text_color'] ) ) $options['ng_slicknav_brand_text_color'] = '#222222';
    576 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222" name="ng_slicknavmenu[ng_slicknav_brand_text_color]" value="' . sanitize_text_field($options['ng_slicknav_brand_text_color']) . '"/>';
     576echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222" name="ng_slicknavmenu[ng_slicknav_brand_text_color]" value="' . esc_attr($options['ng_slicknav_brand_text_color']) . '"/>';
    577577}
    578578
     
    588588
    589589if( !isset( $options['ng_slicknav_button_expand'] ) ) $options['ng_slicknav_button_expand'] = '#222222';
    590 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222222" name="ng_slicknavmenu[ng_slicknav_button_expand]" value="' . sanitize_text_field($options['ng_slicknav_button_expand']) . '"/>';
     590echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222222" name="ng_slicknavmenu[ng_slicknav_button_expand]" value="' . esc_attr($options['ng_slicknav_button_expand']) . '"/>';
    591591}
    592592
     
    600600
    601601if( !isset( $options['ng_slicknav_label_color'] ) ) $options['ng_slicknav_label_color'] = '#fff';
    602 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#fff" name="ng_slicknavmenu[ng_slicknav_label_color]" value="' . sanitize_text_field($options['ng_slicknav_label_color']) . '"/>';
     602echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#fff" name="ng_slicknavmenu[ng_slicknav_label_color]" value="' . esc_attr($options['ng_slicknav_label_color']) . '"/>';
    603603}
    604604
     
    612612
    613613if( !isset( $options['ng_slicknav_icon_color'] ) ) $options['ng_slicknav_icon_color'] = '#fff';
    614 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#fff" name="ng_slicknavmenu[ng_slicknav_icon_color]" value="' . sanitize_text_field($options['ng_slicknav_icon_color']) . '"/>';
     614echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#fff" name="ng_slicknavmenu[ng_slicknav_icon_color]" value="' . esc_attr($options['ng_slicknav_icon_color']) . '"/>';
    615615}
    616616
     
    624624
    625625if( !isset( $options['ng_slicknav_link_color'] ) ) $options['ng_slicknav_link_color'] = '#fff';
    626 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="rgba(0,0,0,0.85)" name="ng_slicknavmenu[ng_slicknav_link_color]" value="' . sanitize_text_field($options['ng_slicknav_link_color']) . '"/>';
     626echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="rgba(0,0,0,0.85)" name="ng_slicknavmenu[ng_slicknav_link_color]" value="' . esc_attr($options['ng_slicknav_link_color']) . '"/>';
    627627}
    628628
     
    636636
    637637if( !isset( $options['ng_slicknav_link_hover_color'] ) ) $options['ng_slicknav_link_hover_color'] = '#222222';
    638 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222222" name="ng_slicknavmenu[ng_slicknav_link_hover_color]" value="' . sanitize_text_field($options['ng_slicknav_link_hover_color']) . '"/>';
     638echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222222" name="ng_slicknavmenu[ng_slicknav_link_hover_color]" value="' . esc_attr($options['ng_slicknav_link_hover_color']) . '"/>';
    639639}
    640640
     
    648648
    649649if( !isset( $options['ng_slicknav_link_hover_background_color'] ) ) $options['ng_slicknav_link_hover_background_color'] = 'rgba(204,204,204,0.3)';
    650 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="rgba(204,204,204,0.3)" name="ng_slicknavmenu[ng_slicknav_link_hover_background_color]" value="' . sanitize_text_field($options['ng_slicknav_link_hover_background_color']) . '"/>';
     650echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="rgba(204,204,204,0.3)" name="ng_slicknavmenu[ng_slicknav_link_hover_background_color]" value="' . esc_attr($options['ng_slicknav_link_hover_background_color']) . '"/>';
    651651}
    652652
     
    680680
    681681if( !isset( $options['ng_slicknav_search_text'] ) ) $options['ng_slicknav_search_text'] = 'search...';
    682 echo '<input type="text" id="ng_slicknav_search_text" name="ng_slicknavmenu[ng_slicknav_search_text]" value="' . sanitize_text_field($options['ng_slicknav_search_text']) . '" placeholder="search..." class="medium-text" />';
     682echo '<input type="text" id="ng_slicknav_search_text" name="ng_slicknavmenu[ng_slicknav_search_text]" value="' . esc_attr($options['ng_slicknav_search_text']) . '" placeholder="search..." class="medium-text" />';
    683683}
    684684
     
    693693
    694694if( !isset( $options['ng_slicknav_search_icon_color'] ) ) $options['ng_slicknav_search_icon_color'] = '#fff';
    695 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#fff" name="ng_slicknavmenu[ng_slicknav_search_icon_color]" value="' . sanitize_text_field($options['ng_slicknav_search_icon_color']) . '"/>';
     695echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#fff" name="ng_slicknavmenu[ng_slicknav_search_icon_color]" value="' . esc_attr($options['ng_slicknav_search_icon_color']) . '"/>';
    696696}
    697697
     
    705705
    706706if( !isset( $options['ng_slicknav_search_color'] ) ) $options['ng_slicknav_search_color'] = '#222222';
    707 echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222222" name="ng_slicknavmenu[ng_slicknav_search_color]" value="' . sanitize_text_field($options['ng_slicknav_search_color']) . '"/>';
     707echo '<input type="text" class="color-picker" data-alpha-enabled="true" data-default-color="#222222" name="ng_slicknavmenu[ng_slicknav_search_color]" value="' . esc_attr($options['ng_slicknav_search_color']) . '"/>';
    708708}
    709709
     
    847847
    848848if( !isset( $options['ng_slicknav_position'] ) ) $options['ng_slicknav_position'] = 'body';
    849 echo '<input type="text" id="ng_slicknav_position" name="ng_slicknavmenu[ng_slicknav_position]" value="' . sanitize_text_field($options['ng_slicknav_position']) . '" placeholder="body" class="medium-text" />';
     849echo '<input type="text" id="ng_slicknav_position" name="ng_slicknavmenu[ng_slicknav_position]" value="' . esc_attr($options['ng_slicknav_position']) . '" placeholder="body" class="medium-text" />';
    850850echo '<span class="description">' . __( 'Menu Position (body by default, using body puts the Menu at the top.
    851851However you can adjust this location by adding in a CSS class','slicknav-mobile-menu') . '</span>';
     
    862862
    863863if( !isset( $options['ng_slicknav_label'] ) ) $options['ng_slicknav_label'] = 'MENU';
    864 echo '<input type="text" id="ng_slicknav_label" name="ng_slicknavmenu[ng_slicknav_label]" value="' . sanitize_text_field($options['ng_slicknav_label']) . '" placeholder="MENU" class="medium-text" />';
     864echo '<input type="text" id="ng_slicknav_label" name="ng_slicknavmenu[ng_slicknav_label]" value="' . esc_attr($options['ng_slicknav_label']) . '" placeholder="MENU" class="medium-text" />';
    865865echo '<span class="description">' . __( 'Menu Label ("MENU" by default, leave blank for no label and just the symbol)') . '</span>';
    866866}
     
    10541054
    10551055if( !isset( $options['ng_slicknav_brand'] ) ) $options['ng_slicknav_brand'] = '';
    1056 echo '<input type="text" id="ng_slicknav_brand" name="ng_slicknavmenu[ng_slicknav_brand]" value="' . sanitize_text_field($options['ng_slicknav_brand']) . '" placeholder="" class="medium-text" />';
     1056echo '<input type="text" id="ng_slicknav_brand" name="ng_slicknavmenu[ng_slicknav_brand]" value="' . esc_attr($options['ng_slicknav_brand']) . '" placeholder="" class="medium-text" />';
    10571057echo '<input id="upload_image_button" type="button" value="Upload Image" class="button-secondary" />';
    10581058}
     
    10811081
    10821082function ng_slicknav_alt_callback() {
    1083 $options = get_option( 'ng_slicknavmenu' );
    1084 
    1085 if( !isset( $options['ng_slicknav_alt'] ) ) $options['ng_slicknav_alt'] = '';
    1086 echo '<input type="text" id="ng_slicknav_alt" name="ng_slicknavmenu[ng_slicknav_alt]" value="' . sanitize_text_field($options['ng_slicknav_alt']) . '" placeholder="alt text" class="medium-text" />';
    1087 echo '<span class="description">' . __( 'alt text') . '</span>';
    1088 }
     1083    $options = get_option( 'ng_slicknavmenu' );
     1084
     1085    if( !isset( $options['ng_slicknav_alt'] ) ) $options['ng_slicknav_alt'] = '';
     1086   
     1087    $alt_text_value = esc_attr( $options['ng_slicknav_alt'] );
     1088   
     1089    echo '<input type="text" id="ng_slicknav_alt" name="ng_slicknavmenu[ng_slicknav_alt]" value="' . $alt_text_value . '" placeholder="alt text" class="medium-text" />';
     1090    echo '<span class="description">' . esc_html__( 'alt text' ) . '</span>';
     1091}
     1092
    10891093
    10901094
     
    10991103
    11001104if( !isset( $options['ng_slicknav_closedsymbol'] ) ) $options['ng_slicknav_closedsymbol'] = '';
    1101 echo '<input type="text" id="ng_slicknav_closedsymbol" name="ng_slicknavmenu[ng_slicknav_closedsymbol]" value="' . sanitize_text_field($options['ng_slicknav_closedsymbol']) . '" placeholder="&#9658;" class="medium-text" />';
     1105echo '<input type="text" id="ng_slicknav_closedsymbol" name="ng_slicknavmenu[ng_slicknav_closedsymbol]" value="' . esc_attr($options['ng_slicknav_closedsymbol']) . '" placeholder="&#9658;" class="medium-text" />';
    11021106}
    11031107
     
    11121116
    11131117if( !isset( $options['ng_slicknav_openedsymbol'] ) ) $options['ng_slicknav_openedsymbol'] = '';
    1114 echo '<input type="text" id="ng_slicknav_openedsymbol" name="ng_slicknavmenu[ng_slicknav_openedsymbol]" value="' . sanitize_text_field($options['ng_slicknav_openedsymbol']) . '" placeholder="&#9660;" class="medium-text" />';
     1118echo '<input type="text" id="ng_slicknav_openedsymbol" name="ng_slicknavmenu[ng_slicknav_openedsymbol]" value="' . esc_attr($options['ng_slicknav_openedsymbol']) . '" placeholder="&#9660;" class="medium-text" />';
    11151119}
    11161120
     
    11271131    // Media Uploader
    11281132    wp_enqueue_media();
    1129     wp_register_script( 'slicknav-brand-logo', plugins_url( '/js/slicknav-brand-uploader.js',  __FILE__ ), array( 'jquery' ), '1.7.4', false );
     1133    wp_register_script( 'slicknav-brand-logo', plugins_url( '/js/slicknav-brand-uploader.js',  __FILE__ ), array( 'jquery' ), '1.9.3', false );
    11301134    wp_enqueue_script( 'slicknav-brand-logo' );
    11311135
    11321136    // RGBA color picker for the color options
    11331137    wp_enqueue_style( 'wp-color-picker' );
    1134     wp_enqueue_script( 'wp-color-picker-alpha', plugins_url( '/js/wp-color-picker-alpha.min.js',  __FILE__ ), array( 'wp-color-picker' ), '3.0.0', true );
     1138    wp_enqueue_script( 'wp-color-picker-alpha', plugins_url( '/js/wp-color-picker-alpha.min.js',  __FILE__ ), array( 'wp-color-picker' ), '3.0.3', true );
    11351139    wp_enqueue_script( 'slicknav-init-admin',  plugins_url( '/js/slicknav-backend.js',  __FILE__ ), array(), '1.9.0', true );
    11361140
Note: See TracChangeset for help on using the changeset viewer.