WordPress Button Plugin MaxButtons - Version 7.8

Version Description

  • Fix - Crashes on PHP 7.3 due to simple HTML DOM library
  • Tweak - If no Box Shadow is defined, it's not set on the MaxButton.
  • Fix - Box shadow with only spread now works and properly removes values from stylesheet
  • Fix - Box shadow blur minimum is now zero
  • Fix - Gradient stop field hidden when gradient option is off
Download this release

Release Info

Developer basszje
Plugin Icon 128x128 WordPress Button Plugin MaxButtons
Version 7.8
Comparing to
See all releases

Code changes from version 7.7 to 7.8

assets/css/style.css CHANGED
@@ -1 +1 @@
1
- .mb_colorpicker{z-index:200}.ads .button-primary{display:block;margin:0 auto 20px auto;width:210px;text-align:center;overflow:visible}.max-load-spinner{background:url("/wp-admin/images/wpspin_light.gif") no-repeat;background-size:16px 16px;opacity:.9;width:16px;height:16px;display:inline-block;vertical-align:middle;position:absolute;top:50%;left:50%;margin-left:-8px;margin-top:-8px;z-index:10}.max-load-spinner.large{background:url("/wp-admin/images/wpspin_light-2x.gif") no-repeat;width:32px;height:32px}.max-load-overlay{position:absolute;top:0;left:0;right:0;bottom:0;opacity:0.80;background-color:#f0f0f0;z-index:9}#maxbuttons{display:inline-block;width:100%}#maxbuttons .message,#maxbuttons .mb-message{border:solid 1px #e6db55;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;padding:10px;margin:10px 0px 20px 0px;clear:both;background:#fff}#maxbuttons .main{position:relative;z-index:500;margin-top:15px;width:72%;float:left}#maxbuttons .mb-message.error{font-weight:700}#maxbuttons .mb-message.shortcode,#maxbuttons .mb-message.mb-notice{border:solid 1px #e6db55;background-color:#ffffe0}#maxbuttons .mb-message.warning{border-left:4px solid #ffba00}#maxbuttons .mb-message.error{border-left:4px solid #ff0000}#maxbuttons .button-bar,#maxbuttons .form-actions,#maxbuttons.mb_tabs_active .mb_tab>.title:nth-of-type(1){margin:15px 0;padding:10px;background:#fbfbfb none repeat scroll 0 0;border:1px solid #e5e5e5;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.04);box-shadow:0 1px 1px rgba(0,0,0,0.04);min-height:28px}#maxbuttons h1>span{vertical-align:top;float:left}@media (max-width: 1024px){#maxbuttons h1>span{float:none}}#maxbuttons .logo{font-weight:400;font-size:18px;overflow:hidden;text-align:center}@media (max-width: 1024px){#maxbuttons .logo{text-align:left;margin-top:15px}}#maxbuttons .logo img{vertical-align:middle;padding-left:5px;padding-right:5px}#maxbuttons .logo .fb-like{margin-top:5px;height:20px;padding:0;margin-left:180px;overflow:hidden}#maxbuttons .logo .fb-like span{vertical-align:top !important}#maxbuttons .dummy-heading{display:none}@media screen and (max-width: 960px){#maxbuttons .main{width:100%}}#maxbuttons .tablenav .input-paging{width:55px}#maxbuttons .ads ul li{margin-bottom:4px}#maxbuttons .preview-buttons{background-color:#fff;border:1px solid #dfdfdf;overflow:hidden}#maxbuttons .preview-buttons .heading{width:100%;clear:both;display:inline-block;border-bottom:1px solid #dfdfdf}#maxbuttons .preview-buttons .heading>span{display:inline-block;font-weight:700;font-size:14px;float:left}#maxbuttons .preview-buttons .button-row{width:100%;clear:both;display:inline-block;border-bottom:1px solid #dfdfdf}#maxbuttons .preview-buttons .button-row>span{display:inline-block;font-size:13px;float:left;overflow:hidden}#maxbuttons .preview-buttons .button-row .actions{margin:10px 0;padding:10px 0px 10px 8px;display:inline-block;z-index:11;width:50%;background-color:#fff;position:relative}#maxbuttons .preview-buttons .col{padding:10px 0 10px 1%}#maxbuttons .preview-buttons .col_check{width:20px}#maxbuttons .preview-buttons .col_button{width:60%;overflow:hidden}@media (max-width: 780px){#maxbuttons .preview-buttons .col_button{width:70%;margin-right:5%}}#maxbuttons .preview-buttons .col_name{width:15%}@media (max-width: 780px){#maxbuttons .preview-buttons .col_name{display:none !important}}#maxbuttons .preview-buttons .col_shortcode{width:15%;padding-right:0}#maxbuttons p.status a{text-decoration:none}#maxbuttons p.status span.count{color:#999999}#maxbuttons .button-list{margin-top:10px}#maxbuttons .button-list p{font-size:13px}#maxbuttons .button-list a{text-decoration:none}#maxbuttons .button-list a.button-name{font-weight:bold}#maxbuttons .button-list .shortcode-container{margin:10px 0px 10px 2px}#maxbuttons .button-list .collection_notice{text-align:right;margin:10px 5px 0 0;padding-top:10px;float:right}#maxbuttons .shortcode-container .mb-container{margin:0 !important;float:none !important;max-width:100% !important}#maxbuttons .shortcode-container .mb-center{text-align:left !important}#maxbuttons .pagination-links a.disabled{color:#aaa;cursor:default}#maxbuttons .pagination-links a.disabled:hover{background:#e4e4e4 none repeat scroll 0 0;cursor:default;border:1px solid #d2d2d2}#maxbuttons .pagination{width:100%;display:inline-block;margin:15px 0 5px}#maxbuttons .pagination li{float:left;margin-right:5px}#maxbuttons .pagination li a,#maxbuttons .pagination li span{background:#ccc;vertical-align:middle;padding:4px 10px 8px;height:15px;display:inline-block;border:1px solid #eee;text-decoration:none;font-size:14px;font-weight:bold}#maxbuttons .maxbutton-welcome-container{margin:25px 0;padding:15px;border:1px solid #ccc;background:#fff}#maxbuttons .maxbutton-welcome-container h3{font-size:26px}#maxbuttons .maxbutton-welcome-container p.started{font-size:18px}#maxbuttons .maxbutton-welcome-container p{font-size:14px;line-height:18px}#maxbuttons .maxbutton-welcome-container h3{font-size:20px}#maxbuttons .maxbutton-welcome-container ul{list-style-type:disc;margin-left:25px}#maxbuttons.maxbuttons-controller-edit .main,#maxbuttons.maxbuttons-controller-button .main{width:auto;max-width:1200px}#maxbuttons .option-container{margin-bottom:20px;border:solid 1px #cccccc;border-radius:3px 3px 3px 3px;-webkit-border-radius:3px 3px 3px 3px;background-color:#fff}#maxbuttons .option-container .title{font-size:18px;padding:9px 8px 9px 10px;text-align:left;text-shadow:0px 1px 0px #ffffff;position:relative}#maxbuttons .option-container .section-title{padding:15px;margin-top:10px;font-weight:700;font-size:16px}#maxbuttons .option-container .section-title{background-color:#fff}#maxbuttons .option-container .option-list{display:inline-block}#maxbuttons .option-container .option-list:after{clear:both}#maxbuttons .option-container .option-list .help{float:right;margin-top:5px}#maxbuttons .option-container .help{position:relative;font-size:24px;color:#666;margin-left:10px}#maxbuttons .option-container .help span{font-family:"Open Sans",sans-serif;font-size:12px;background-color:#fff;color:#000;position:absolute;display:none;padding:10px 10px;top:-7px;left:25px;min-width:150px;border-radius:5px;text-align:left;z-index:1000;border:1px solid #ccc;line-height:15px}#maxbuttons .option-container .help span .shortcode,#maxbuttons .option-container .help span .mb-message.mb-notice{color:555;white-space:nowrap}#maxbuttons .option-container .help:hover span{display:block}#maxbuttons .option-container>.inside{padding:10px 15px 10px 15px;border-top:solid 1px #cccccc;background-color:#ffffff}#maxbuttons .option-container>.inside .option,#maxbuttons .option-container>.inside .option-design{margin-bottom:10px;display:block;position:relative}#maxbuttons .option-container>.inside .option.hidden,#maxbuttons .option-container>.inside .option-design.hidden{display:none}#maxbuttons .option-container>.inside .option .label,#maxbuttons .option-container>.inside .option>label,#maxbuttons .option-container>.inside .option-design .label,#maxbuttons .option-container>.inside .option-design>label{display:inline-block;font-weight:bold;padding-left:3px;padding-top:5px;width:145px;vertical-align:top;cursor:default;min-height:25px}#maxbuttons .option-container>.inside .option .label[for],#maxbuttons .option-container>.inside .option>label[for],#maxbuttons .option-container>.inside .option-design .label[for],#maxbuttons .option-container>.inside .option-design>label[for]{cursor:pointer}@media (max-width: 780px){#maxbuttons .option-container>.inside .option .label,#maxbuttons .option-container>.inside .option>label,#maxbuttons .option-container>.inside .option-design .label,#maxbuttons .option-container>.inside .option-design>label{font-size:14px}}#maxbuttons .option-container>.inside .option:after,#maxbuttons .option-container>.inside .option:before,#maxbuttons .option-container>.inside .option-design:after,#maxbuttons .option-container>.inside .option-design:before{clear:both}#maxbuttons .option-container>.inside .option label{margin-top:2px}#maxbuttons .option-container>.inside .option label.mbcolor{margin-top:5px}#maxbuttons .option-container>.inside .option label:nth-of-type(2){margin-left:30px;width:115px}#maxbuttons .option-container>.inside .option .control-group{display:inline-block}#maxbuttons .option-container>.inside .option .rotate-left{-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg);filter:progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=cos(-45), M12=-sin(-45), M21=sin(-45), M22=cos(-45));-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=cos(-45), M12=-sin(-45), M21=sin(-45), M22=cos(-45))";zoom:1}#maxbuttons .option-container>.inside .option .rotate-right{-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);filter:progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=cos(45), M12=-sin(45), M21=sin(45), M22=cos(45));-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=cos(45), M12=-sin(45), M21=sin(45), M22=cos(45))";zoom:1}#maxbuttons .option-design{margin-bottom:10px}#maxbuttons .option-design .input td div.cell-label{padding:1px 10px 0px 5px;font-weight:bold;border-bottom:solid 1px #d1d1d1;width:180px;font-size:13px;height:30px}#maxbuttons .option-design .default-other{font-size:13px}#maxbuttons .option p.note,#maxbuttons .option-design p.note{font-style:italic;display:inline-block;clear:both;color:#808080;padding-left:3px;margin-top:10px;margin-bottom:5px;margin-left:0;display:block}#maxbuttons .option p.warning,#maxbuttons .option p.error{border-left:5px solid #d98500;font-size:13px;padding-left:18px;line-height:20px;max-width:450px}#maxbuttons .option p.error{border-color:#ff0000;font-weight:600}#maxbuttons .mb-message.shortcode h4,#maxbuttons .mb-message.mb-notice h4{font-size:16px}#maxbuttons .mb-message.shortcode strong,#maxbuttons .mb-message.mb-notice strong{font-weight:600}#maxbuttons .mb-message.shortcode .expanded,#maxbuttons .mb-message.mb-notice .expanded{display:none}#maxbuttons .mb-message.shortcode .expanded p,#maxbuttons .mb-message.mb-notice .expanded p{font-size:14px;line-height:22px}#maxbuttons .mb-message.shortcode .expanded .example strong,#maxbuttons .mb-message.mb-notice .expanded .example strong{width:300px;display:inline-block}#maxbuttons .mb-message.shortcode .shortcode-expand,#maxbuttons .mb-message.mb-notice .shortcode-expand{clear:both;font-weight:700;display:block;margin:5px 0;cursor:pointer}@media (max-width: 1024px){#maxbuttons .mb-message.shortcode .shortcode-expand,#maxbuttons .mb-message.mb-notice .shortcode-expand{float:none;text-align:left;margin:10px 0;display:block}}#maxbuttons .manual-box{float:right;margin:3px 15px;top:0;right:0}#maxbuttons .manual-box a{text-align:center;width:100%;background:#e0e0e0 none repeat scroll 0 0;font-size:13px;font-weight:600;margin-left:4px;margin-top:5px;padding:4px 8px;position:relative;text-decoration:none;text-shadow:none}#maxbuttons .manual-entry{display:none;position:absolute;border:1px solid #000;background:#fff;width:45%;right:25px;z-index:199;box-sizing:border-box;padding-bottom:20px}#maxbuttons .manual-entry h3{font-size:18px;width:calc(100%);box-sizing:border-box;padding:10px 0;border-bottom:1px solid #ccc;text-align:center;margin:0;padding-right:35px;position:relative}#maxbuttons .manual-entry h3 span{box-sizing:border-box;cursor:pointer;width:35px;height:100%;font-size:25px;display:inline-block;position:absolute;right:5px;top:0;padding-top:8px}#maxbuttons .manual-entry h4,#maxbuttons .manual-entry p,#maxbuttons .manual-entry ol,#maxbuttons .manual-entry ul{padding:0 15px}#maxbuttons .manual-entry h4{font-size:16px}#maxbuttons .manual-entry p{font-size:13px}#maxbuttons .output{position:fixed;top:45px;right:20px;background-color:#ffffff;border:solid 1px #414141;box-shadow:0px 0px 6px #808080;z-index:99;width:auto;min-width:300px}@media (max-width: 780px){#maxbuttons .output{-webkit-box-shadow:0 0 0 0;-moz-box-shadow:0 0 0 0;box-shadow:0 0 0 0;top:0;left:0;right:0;position:relative;margin-bottom:15px;border-color:#ccc}}#maxbuttons .output .header{color:#222222;background-color:#ffffff;border-bottom:solid 1px #cccccc;font-family:"Open Sans", sans-serif;font-size:16px;font-weight:bold;padding:8px 0px 8px 10px;cursor:move;position:relative}#maxbuttons .output .header .preview-toggle{float:right;font-size:30px;width:30px;position:absolute;top:3px;right:0}#maxbuttons .output .inner{padding:5px}#maxbuttons .output .inner p{padding:5px 0 5px 5px}#maxbuttons .output .input.mbcolor{float:left;position:relative;margin-top:5px}#maxbuttons .output .input.mbcolor .wp-picker-container.wp-picker-active{padding:15px;border:1px solid #ccc;background-color:#fff;position:absolute;bottom:-15px;left:-270px;z-index:102;-webkit-box-shadow:4px 1px 5px #ccc;-moz-box-shadow:4px 1px 5px #ccc;box-shadow:4px 1px 5px #ccc}#maxbuttons .output .note{float:left;margin:8px 0px 0px 10px}#maxbuttons .output .result{padding:20px 5px}#maxbuttons .output .result p{padding:5px 0px 5px 0px;margin:0}#maxbuttons .output .result.preview-border-box>*{box-sizing:border-box}#maxbuttons .conditional-option{display:none}#maxbuttons .media_query{width:640px;margin:0 20px 15px 0;border:1px solid #ccc;padding:10px 15px;display:inline-block;clear:both;position:relative}#maxbuttons .media_query .removebutton{position:absolute;right:10px;top:10px;cursor:pointer;z-index:100;padding:10px 5px}#maxbuttons .media_query input:after{clear:both}#maxbuttons .media_query .label{clear:both;margin-bottom:15px}#maxbuttons .media_query label.title{padding:0;font-size:20px}#maxbuttons .media_query .custom.hidden{display:none}#maxbuttons .media_query .option.custom label:nth-of-type(2){margin-left:95px}#maxbuttons .media_query .description{padding:15px 0px;text-align:left}#maxbuttons .media_query select{width:60px}#maxbuttons .media_query .input input{margin-top:0px;padding-top:2px}#maxbuttons .media_queries_options .new-query{margin-top:25px}#maxbuttons .media_queries_options .new-query select{width:auto}#maxbuttons .media_option_prot,#maxbuttons #media_desc{display:none}#maxbuttons .copy-warning{width:400px;margin:0 auto;position:relative;line-height:1.1}#maxbuttons .copy-warning:before{content:"\f534";font-size:40px;color:#ff0000;width:35px;height:35px;font-family:"Dashicons";position:absolute;left:20px;top:40%;margin-top:-14px}#maxbuttons .copy-warning .example{margin-bottom:5px}#maxbuttons .form-actions a{margin-right:10px}#maxbuttons select{width:150px}#maxbuttons select.small{width:auto}#maxbuttons .input{display:inline-block;margin-right:15px;min-height:35px;vertical-align:top}#maxbuttons .input img{vertical-align:middle}#maxbuttons .input.mbcolor{min-width:50px}#maxbuttons .input.checkbox input{margin-top:0}#maxbuttons .input.checkbox label{line-height:16px;margin-top:0 !important}#maxbuttons .maxajax-load-spinner{width:16px;height:16px;background:url("/wp-admin/images/wpspin_light.gif") no-repeat;opacity:0.9s;display:inline-block;margin:0 10px;z-index:10;vertical-align:middle}#maxbuttons input[type='text']{width:450px}@media (max-width: 780px){#maxbuttons input[type='text']{width:350px}}#maxbuttons input[type='text'].tiny{width:35px;vertical-align:middle}#maxbuttons input[type='text'].small{width:50px}#maxbuttons input[type='text'].medium{width:150px}#maxbuttons input[type='text'].tiny-nopad{width:35px}#maxbuttons input[type='number']{vertical-align:middle}#maxbuttons input[type='number'].tiny,#maxbuttons input[type='number'].tiny-nopad{width:55px}@media (max-width: 780px){#maxbuttons input[type='number'].tiny,#maxbuttons input[type='number'].tiny-nopad{width:60px}}#maxbuttons input[type='number'].small{width:70px}@media (max-width: 780px){#maxbuttons input[type='number'].small{width:75px}}#maxbuttons textarea{width:450px;height:80px}#maxbuttons .option-container .inside .option label.mbcolor:nth-of-type(2){margin-left:37px}#maxbuttons .option-container .inside .option.url{margin-bottom:0}#maxbuttons .option-container .inside .option.url_options{margin:5px 0 10px}#maxbuttons .option-container .inside .option.url_options .nofollow{margin-left:35px}#maxbuttons .option-container .inside .option.url_options label,#maxbuttons .option-container .inside .option.rel_options label{font-weight:400}#maxbuttons .option-container .inside .option.font .checkbox{margin-right:2px}#maxbuttons .option-container .inside .option.font .radio{margin-right:0}#maxbuttons .option-container .inside .option.font .input.font{margin-right:2px}#maxbuttons .option-container .inside .option.font .input.font_size{margin-right:0}#maxbuttons .option-container .inside .option.font .input.font_size:after{display:block}@media (max-width: 780px){#maxbuttons .option-container .inside .option.font{display:inline-block}#maxbuttons .option-container .inside .option.font:after{clear:both}#maxbuttons .option-container .inside .option.font>*{float:left}}#maxbuttons .option-container .inside .option.font .control-group.font_weight{margin-left:28px}@media (max-width: 780px){#maxbuttons .option-container .inside .option.font .control-group.font_weight{clear:left;margin-left:148px;margin-top:10px}}#maxbuttons .option-container .inside .option.font .control-group.text_align{margin-left:48px}@media (max-width: 780px){#maxbuttons .option-container .inside .option.font .control-group.text_align{margin-left:20px;margin-top:10px}}#maxbuttons .option-container .inside .option.padding_top .input,#maxbuttons .option-container .inside .option.container_margin_top .input{margin-right:30px}#maxbuttons .option-container .inside .option.padding_top .input:last-of-type,#maxbuttons .option-container .inside .option.container_margin_top .input:last-of-type{margin-right:0}@media (max-width: 780px){#maxbuttons .option-container .inside .option.padding_top .input,#maxbuttons .option-container .inside .option.container_margin_top .input{margin-right:15px}}#maxbuttons .option-container .inside .option.text_color label{margin-top:0px}#maxbuttons .option-container .inside .option.text_color label:nth-of-type(2){margin-left:51px}#maxbuttons .option-container .inside .option.description label{padding-top:35px}#maxbuttons .option-container .inside .option .radius-wrap{position:relative;margin-left:45px;display:inline-block}#maxbuttons .option-container .inside .option.radius .label:first-child{width:100px;float:left}#maxbuttons .option-container .inside .option.radius .bottom,#maxbuttons .option-container .inside .option.radius .top{position:relative}#maxbuttons .option-container .inside .option.radius .bottom .input,#maxbuttons .option-container .inside .option.radius .top .input{margin-right:0;margin-left:0}#maxbuttons .option-container .inside .option.radius .bottom .dashicons:nth-child(3),#maxbuttons .option-container .inside .option.radius .top .dashicons:nth-child(3){margin-right:10px}#maxbuttons .option-container .inside .option.radius .top{margin-bottom:10px}#maxbuttons .option-container .inside .option.radius label{display:inline-block;font-weight:700;width:90px;margin-left:5px;cursor:default}#maxbuttons .option-container .inside .option.radius .dashicons{font-size:35px;height:35px;width:35px;color:#ccc}#maxbuttons .option-container .inside .option.radius .top .dashicons{margin-top:-5px}#maxbuttons .option-container .inside .option.radius .bottom .dashicons{margin-top:5px}#maxbuttons .option-container .inside .option.radius #radius_toggle{position:absolute;left:46%;top:25px;font-size:30px;cursor:pointer}#maxbuttons .option-container .inside .option.gradient_head .label:nth-child(even){width:120px}#maxbuttons .option-container .inside .option .gradient_end_color,#maxbuttons .option-container .inside .option .gradient_end_color_hover{margin-left:58px}#maxbuttons .default{display:inline-block;padding-left:10px;padding-top:4px;font-style:italic;color:#808080}#maxbuttons .default .other{padding-left:40px;padding-top:8px}#maxbuttons .mb-button{width:38px;height:38px;background-color:#eceded;display:inline-block;margin-right:6px;cursor:pointer;display:none}#maxbuttons .mb-button span{text-align:center;padding:9px 0;width:100%;line-height:20px}#maxbuttons .check_button{display:none}#maxbuttons .check_button+label{background-position:center center;background-repeat:no-repeat;background-color:#fff;display:inline-block;border:1px solid #ddd;font_weight:normal;padding:4px}@media (max-width: 780px){#maxbuttons .check_button+label{padding:10px}}#maxbuttons .check_button.text+label{padding:5px}#maxbuttons .check_button.icon+label i{width:20px;height:20px;color:#545454}#maxbuttons .check_button.icon+label i:focus{outline:none}#maxbuttons .check_button:checked+label{background:#ebebeb none repeat scroll 0 0;border-color:#999999;box-shadow:0 2px 5px -3px rgba(0,0,0,0.3) inset}#maxbuttons .option .input_label{display:inline-block;vertical-align:top}#maxbuttons .option .input_label.left{margin-right:10px}#maxbuttons .option .input_label.right{margin-left:10px}#maxbuttons .option .range_value{margin:8px 0 0 15px;float:right}#maxbuttons .option .range_value output{clear:both;font-size:15px;text-align:center;width:100%;display:inline-block}#maxbuttons .option .switch_label{padding-top:2px !important;margin:0 !important}#maxbuttons .switch_button{margin-left:-5px}#maxbuttons .switch_button label{padding:8px 5px}#maxbuttons .switch_button label:focus{outline:none}#maxbuttons .switch_button input{display:none}#maxbuttons .switch_button input:checked ~ .the_switch{background:#6fbeb5}#maxbuttons .switch_button input:checked ~ .the_switch:after{left:26px;background:#179588}#maxbuttons .switch_button input::disabled ~ .the_switch{background:#d5d5d5;pointer-events:none}#maxbuttons .switch_button input:disabled ~ .the_switch:after{background:#bcbdbc}#maxbuttons .switch_button .the_switch{position:relative;display:inline-block;height:15px;width:50px;background:#898989;border-radius:100px;cursor:pointer;transition:all 0.3s ease}#maxbuttons .switch_button .the_switch:after{position:absolute;left:-2px;top:-3px;display:block;width:24px;height:24px;border-radius:100px;background:#aaa;box-shadow:0px 3px 3px rgba(0,0,0,0.05);content:'';transition:all 0.2s ease}#maxbuttons .switch_button .the_switch:active:after{transform:scale(0.9, 0.85)}#maxbuttons .switch_button .the_switch:focus{outline:none}#maxbuttons .input.mbcolor{margin-top:5px;position:relative}#maxbuttons .input.mbcolor .wp-picker-clear{display:none}#maxbuttons .input.mbcolor input[type="text"]{width:75px;line-height:22px}#maxbuttons .input.mbcolor .wp-color-picker{width:inherit}#maxbuttons .input.mbcolor .wp-color-result{-webkit-box-shadow:-1px 1px 2px #999;-moz-box-shadow:-1px 1px 2px #999;box-shadow:-1px 1px 2px #999;height:30px;border:0}#maxbuttons .input.mbcolor .wp-color-result:after{font-size:12px;line-height:30px;display:none}#maxbuttons .input.mbcolor .wp-color-result:focus{border-color:#5b9dd9;-webkit-box-shadow:0 0 5px rgba(30,140,190,0.8);-moz-box-shadow:0 0 5px rgba(30,140,190,0.8);box-shadow:0 0 5px rgba(30,140,190,0.8)}#maxbuttons .input.mbcolor .wp-color-result-text{display:none}#maxbuttons .input.mbcolor .wp-picker-input-wrap{padding:0}#maxbuttons .input.mbcolor .wp-picker-active+.arrows{display:inline-block}#maxbuttons .input.mbcolor .arrows{position:absolute;display:none;top:0;margin-top:40%}#maxbuttons .input.mbcolor .arrows.right{right:-45px}#maxbuttons .input.mbcolor .arrows.left{left:-35px}#maxbuttons .input.mbcolor .arrows .arrow-left,#maxbuttons .input.mbcolor .arrows .arrow-right{width:0;height:0;font-size:0;line-height:0;vertical-align:bottom;cursor:pointer;transition:.8s}#maxbuttons .input.mbcolor .arrows .arrow-left{border-top:30px solid transparent;border-bottom:30px solid transparent;border-right:20px solid #ccc}#maxbuttons .input.mbcolor .arrows .arrow-left:hover{border-right-color:#33b3db}#maxbuttons .input.mbcolor .arrows .arrow-right{border-top:30px solid transparent;border-bottom:30px solid transparent;border-left:20px solid #ccc;margin-top:35px}#maxbuttons .input.mbcolor .arrows .arrow-right:hover{border-left-color:#33b3db}#maxbuttons .input.mbcolor .arrows .left,#maxbuttons .input.mbcolor .arrows .right{display:inline-block;float:left;clear:both;width:35px;height:45px}#maxbuttons .input.mbcolor .arrows .left{margin-top:15px}#maxbuttons [type='range']{-webkit-appearance:none;width:250px;margin-top:8px}#maxbuttons [type='range']:focus{outline:0}#maxbuttons [type='range']:focus::-webkit-slider-runnable-track{background:#fff}#maxbuttons [type='range']:focus::-ms-fill-lower{background:#fff}#maxbuttons [type='range']:focus::-ms-fill-upper{background:#fff}#maxbuttons [type='range']::-webkit-slider-runnable-track{cursor:pointer;height:5px;transition:all .2s ease;width:250px;background:#fff;border:1px solid #cfd8dc;border-radius:10px}#maxbuttons [type='range']::-webkit-slider-thumb{background:#179588;border:0px solid #eceff1;border-radius:12px;cursor:pointer;height:20px;width:20px;-webkit-appearance:none;margin-top:-8.5px}#maxbuttons [type='range']::-moz-range-track{cursor:pointer;height:5px;transition:all .2s ease;width:250px;background:#fff;border:1px solid #cfd8dc;border-radius:10px}#maxbuttons [type='range']::-moz-range-thumb{background:#179588;border:0px solid #eceff1;border-radius:12px;cursor:pointer;height:20px;width:20px}#maxbuttons [type='range']::-ms-track{cursor:pointer;height:5px;transition:all .2s ease;width:250px;background:transparent;border-color:transparent;border-width:10px 0;color:transparent}#maxbuttons [type='range']::-ms-fill-lower{background:#f2f2f2;border:1px solid #cfd8dc;border-radius:20px}#maxbuttons [type='range']::-ms-fill-upper{background:#fff;border:1px solid #cfd8dc;border-radius:20px}#maxbuttons [type='range']::-ms-thumb{background:#179588;border:0px solid #eceff1;border-radius:12px;cursor:pointer;height:20px;width:20px;margin-top:0}#maxbuttons .support.tiles{display:flex}#maxbuttons .support.tiles>div{background-color:#0073aa;margin:0 25px 0 0;padding:16px}#maxbuttons .support.tiles>div a{color:#fff;text-align:center;font-size:20px;text-decoration:none}#maxbuttons .system_info{width:90%;background-color:#fff;border:1px solid #000;padding:15px}#maxbuttons .system_info .info{margin:5px 0}#maxbuttons .system_info .info label{width:250px;display:inline-block;clear:both}#maxbuttons.maxbuttons-settings .option-container .inside .option-design{margin:20px 0}#maxbuttons.maxbuttons-settings .option-container .inside .option-design label{line-height:14px;height:40px;vertical-align:top;width:200px;margin-right:20px}#maxbuttons h2.tabs{margin:1em 0;min-height:35px}#maxbuttons h2.sub-tabs,#maxbuttons h2.submit-tab{list-style:none;clear:both;margin-bottom:0}#maxbuttons h2.sub-tabs a,#maxbuttons h2.submit-tab a{font-weight:400;font-size:14px;cursor:pointer}#maxbuttons h2.sub-tabs a .dashicons,#maxbuttons h2.submit-tab a .dashicons{margin-right:10px;line-height:24px}#maxbuttons h2.sub-tabs .save-indicator,#maxbuttons h2.submit-tab .save-indicator{float:right;font-size:25px;display:none;margin-right:10px}#maxbuttons h2.sub-tabs .save-indicator.dashicons-warning,#maxbuttons h2.submit-tab .save-indicator.dashicons-warning{color:#ff0000}#maxbuttons h2.sub-tabs .save-indicator.dashicons-yes,#maxbuttons h2.submit-tab .save-indicator.dashicons-yes{color:#00ff00}#maxbuttons.mb_tabs_active .mb_tab{border:0px;background:none;border-radius:0 0 0 0;-webkit-border-radius:0 0 0 0}#maxbuttons.mb_tabs_active .mb_tab>.title:nth-of-type(1) button{top:0}#maxbuttons.mb_tabs_active .mb_tab>.title:nth-of-type(1) .right{float:right}#maxbuttons.mb_tabs_active .mb_tab>.inside{border:1px solid #e5e5e5}#maxbuttons.maxbuttons-collections-edit .main{width:100%;max-width:none}#maxbuttons .collection-addnew{display:inline-block}@media (max-width: 780px){#maxbuttons .collection-addnew{margin-left:5px}}#maxbuttons .collection_list .collection{position:relative;background-color:#fff;padding:15px;border-radius:15px;margin:15px 0}#maxbuttons .collection_list .collection h3{display:inline-block;width:90%;margin-top:0;font-size:18px;line-height:20px}#maxbuttons .collection_list .collection h3 a{color:#000;font-size:25px;text-decoration:none}#maxbuttons .collection_list .collection h3 a:hover{text-decoration:underline}#maxbuttons .collection_list .collection h3 .dashicons{color:#ccc;margin-left:15px}#maxbuttons .collection_list .collection h3 .button-count{font-weight:400;font-size:15px;margin-left:15px;vertical-align:top}#maxbuttons .collection_list .collection .collection_remove{top:10px;right:15px;font-size:25px;font-weight:400;position:absolute;cursor:pointer}#maxbuttons .collection_list .collection.welcome p{font-size:14px;line-height:22px}#maxbuttons .collection_list .collection-container{position:relative;width:100%;display:inline-block;clear:both}#maxbuttons .collection_list .collection-container .maxcollection{position:static !important}#maxbuttons .inside .preview_collection.option label{display:inline-block;float:none;font-size:25px;width:100%}#maxbuttons .mb_collection_selection{display:inline-block;min-height:300px;margin:25px 0}#maxbuttons .mb_collection_selection .sortable .item{margin-bottom:25px;position:relative;padding-left:30px;min-height:45px;clear:both}#maxbuttons .mb_collection_selection .sortable .item .button-remove{margin-top:5px;position:absolute;left:20px;top:-15px;border:1px solid #000;border-radius:11px;width:20px;height:20px;background-color:rgba(0,0,0,0.5)}#maxbuttons .mb_collection_selection .sortable .item .button-remove:hover{cursor:pointer}#maxbuttons .mb_collection_selection .sortable .item .button-remove span{color:#fff;font-size:16px;padding-top:2px;overflow:hidden}#maxbuttons .mb_collection_selection .sortable-placeholder{border:3px dashed #aaa;height:45px;width:344px;background:#ccc}#maxbuttons .mb_collection_selection .button_data{display:none}#maxbuttons .mb-social-options{float:right;width:45%;border:1px solid #000;height:100%}#maxbuttons .mb-buttons-selection{float:left;width:45%;overflow:hidden;border:1px solid #000}#maxbuttons .mb-preview-window{position:fixed;top:40%;right:20px;width:30%;max-width:45%;max-height:90vh;background-color:rgba(255,255,255,0.7);border:1px solid #000;z-index:500 !important;overflow:hidden;display:none}@media (max-width: 780px){#maxbuttons .mb-preview-window{position:relative;left:0;top:0;bottom:0;right:0;width:100%;height:auto;display:inline-block;border-color:#ccc}}#maxbuttons .mb-preview-window .mb-preview-wrapper{position:relative;display:inline-block;width:100%}#maxbuttons .sub-tabs .preview-on{background-color:#00b9eb;color:#fff}#maxbuttons .sub-tabs .preview-on::before{line-height:24px}#maxbuttons #picker-back{top:0;left:0;right:0;bottom:0;background-color:#000;z-index:110000;position:fixed;opacity:0.7;display:none}#maxbuttons #picker-modal,#maxbuttons .max-modal.picker-modal{display:none;width:calc(100% - 60px);min-height:300px;top:30px;bottom:30px;left:30px;right:30px;z-index:160000}#maxbuttons #picker-modal .modal_header,#maxbuttons .max-modal.picker-modal .modal_header{height:15px;display:block;overflow:hidden;top:0;left:0;bottom:0;right:0;border:0}#maxbuttons #picker-modal .picker-packages,#maxbuttons .max-modal.picker-modal .picker-packages{top:31px;left:0;width:205px;bottom:0;background-color:#f3f3f3;position:absolute;border-right:1px solid #ccc;overflow-x:hidden;overflow-y:auto}#maxbuttons #picker-modal .picker-packages ul,#maxbuttons .max-modal.picker-modal .picker-packages ul{margin-top:4px}#maxbuttons #picker-modal .picker-packages li a,#maxbuttons .max-modal.picker-modal .picker-packages li a{padding:6px 20px;display:block;color:#0073aa;text-decoration:none;font-size:13px;line-height:16px}#maxbuttons #picker-modal .picker-packages li a:hover,#maxbuttons .max-modal.picker-modal .picker-packages li a:hover{background:rgba(0,0,0,0.04) none repeat scroll 0 0;color:#21759b}#maxbuttons #picker-modal .picker-packages li a.pack-active,#maxbuttons .max-modal.picker-modal .picker-packages li a.pack-active{font-weight:700;color:#000}#maxbuttons #picker-modal .picker-main,#maxbuttons .max-modal.picker-modal .picker-main{left:206px;top:31px;right:0;bottom:60px;position:absolute;border-bottom:1px solid #dddddd;overflow-y:scroll;background-color:#fff}#maxbuttons #picker-modal .picker-main .screen,#maxbuttons .max-modal.picker-modal .picker-main .screen{margin:5px 5px}#maxbuttons #picker-modal .picker-main .screen .tablenav-pages,#maxbuttons .max-modal.picker-modal .picker-main .screen .tablenav-pages{float:none;margin-left:1%}#maxbuttons #picker-modal .picker-main .item,#maxbuttons .max-modal.picker-modal .picker-main .item{padding:5px;margin:5px 0 5px 1%;border:1px solid #000;width:16%;height:auto;float:left;text-align:center;position:relative;background-color:#eee;border:1px solid #b4b9be;display:inline-block}#maxbuttons #picker-modal .picker-main .item .button_data,#maxbuttons .max-modal.picker-modal .picker-main .item .button_data{display:none}#maxbuttons #picker-modal .picker-main .item .button_name,#maxbuttons .max-modal.picker-modal .picker-main .item .button_name{clear:left;display:block;margin-top:15px;font-size:9px}#maxbuttons #picker-modal .picker-main .item .button-selected,#maxbuttons .max-modal.picker-modal .picker-main .item .button-selected{position:absolute;font-size:20px;top:-10px;right:-10px;width:24px;height:24px;color:#fff;background-color:#1e8cbe;z-index:100;border-radius:12px}#maxbuttons #picker-modal .picker-main .item .button-selected span,#maxbuttons .max-modal.picker-modal .picker-main .item .button-selected span{padding-top:2px}#maxbuttons #picker-modal .picker-inselection,#maxbuttons .max-modal.picker-modal .picker-inselection{height:60px;display:block;position:absolute;bottom:0;right:0;left:206px;overflow:hidden}#maxbuttons #picker-modal .picker-inselection .info,#maxbuttons .max-modal.picker-modal .picker-inselection .info{height:60px;float:left;display:inline-block;padding:10px 15px;display:none}#maxbuttons #picker-modal .picker-inselection .info .clear-selection,#maxbuttons .max-modal.picker-modal .picker-inselection .info .clear-selection{color:#ff0000;display:block;padding:0}#maxbuttons #picker-modal .picker-inselection .info .clear-selection:hover,#maxbuttons .max-modal.picker-modal .picker-inselection .info .clear-selection:hover{background-color:#ff0000;color:#fff}#maxbuttons #picker-modal .picker-inselection .items,#maxbuttons .max-modal.picker-modal .picker-inselection .items{display:inline-block;position:absolute;overflow:hidden;padding-top:5px;height:100%;left:130px;right:180px}@media (max-width: 780px){#maxbuttons #picker-modal .picker-inselection .items,#maxbuttons .max-modal.picker-modal .picker-inselection .items{display:none}}#maxbuttons #picker-modal .picker-inselection .items .item,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item{height:40px;width:40px;overflow:hidden;float:left;margin:3px;position:relative}#maxbuttons #picker-modal .picker-inselection .items .item .button_name,#maxbuttons #picker-modal .picker-inselection .items .item .button_data,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item .button_name,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item .button_data{display:none}#maxbuttons #picker-modal .picker-inselection .items .item .button-remove,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item .button-remove{display:none;position:absolute;width:30px;height:30px;left:2px;border-radius:15px;top:2px;background-color:rgba(0,0,0,0.5)}#maxbuttons #picker-modal .picker-inselection .items .item .button-remove span,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item .button-remove span{font-size:20px;color:#fff;padding-left:5px;padding-top:5px}#maxbuttons #picker-modal .picker-inselection .items .item:hover .button-remove,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item:hover .button-remove{display:block}#maxbuttons #picker-modal .picker-inselection .add,#maxbuttons .max-modal.picker-modal .picker-inselection .add{float:right;margin-top:15px;margin-right:15px;height:100%}#maxbuttons .social_block .social-option{clear:both;margin-top:25px}#maxbuttons .social_block .social-option .shortcode-container{display:inline-block}#maxbuttons .social_block .social-option .button_name{display:inline-block;margin-left:10px;vertical-align:middle;font-weight:700}#maxbuttons #mbfeedback .link{height:25px;width:100px;position:fixed;top:40%;right:0;z-index:1000;transform:rotate(90deg);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1)}#maxbuttons #mbfeedback .link a{background:#ccc;height:25px;width:70px;padding:8px 16px;color:#fff;font-family:Arial, sans-serif;font-size:15px;font-weight:bold;text-decoration:none;line-height:15px;border-bottom:solid 1px #333;border-left:solid 1px #333;border-right:solid 1px #fff}#maxbuttons #mbfeedback .link a::hover{background:#06c}#maxbuttons .ad-wrap{width:27%;float:left;max-width:300px;margin-left:1%;min-width:200px;margin-top:41px}#maxbuttons .ad-wrap .ads{background:#fff;margin-bottom:20px;text-align:center}#maxbuttons .ad-wrap .ads.image-ad{background:none;margin-top:20px}#maxbuttons .ad-wrap .ads.image-ad img{max-width:100%}#maxbuttons .ad-wrap .ads>a{text-decoration:none}#maxbuttons .ad-wrap .ads .header{background-color:#88c5c2;color:#fff;font-size:18px;text-transform:uppercase;padding:12px}#maxbuttons .ad-wrap .ads h3{text-align:center;padding-bottom:14px}#maxbuttons .ad-wrap .ads ul{list-style:none}#maxbuttons .ad-wrap .ads ul li{font-weight:bold;text-decoration:none;color:#000000}#maxbuttons .ad-wrap .ads ul li.plus{font-size:38px;font-weight:700;color:#88c5c2}#maxbuttons .ad-wrap .ads span.img{text-align:center;display:block}#maxbuttons .ad-wrap .ads .ads_button_wrap{margin:20px 0 30px;display:inline-block}#maxbuttons .ad-wrap .ads .ads_button_wrap .button{color:#fff;background-color:#88c5c2;font-size:16px;font-weight:bold;border:0;padding:0 40px}@media screen and (max-width: 960px){#maxbuttons .ad-wrap{display:none}}#maxbuttons.maxbuttons-pro-gopro .main{width:95%;max-width:860px}#maxbuttons.maxbuttons-pro-gopro h1.title{margin:0;font-size:24px;display:inline-block}#maxbuttons.maxbuttons-pro-gopro h1.title .big-maxg-btn{display:inline-block;background-color:#86c5c2;border-color:#73a3a8;margin:0 10px;vertical-align:super;line-height:23px;border-top:0;border-left:0;border-right:0;top:5px}#maxbuttons.maxbuttons-pro-gopro h1.title img{vertical-align:middle}#maxbuttons.maxbuttons-pro-gopro .logo{margin:0;display:inline-block;margin-top:14px}#maxbuttons.maxbuttons-pro-gopro .logo .simple-btn{color:#62c0e6;text-decoration:underline}#maxbuttons.maxbuttons-pro-gopro .default-section{text-align:center;padding:0px 10px}#maxbuttons.maxbuttons-pro-gopro .default-section p{position:relative;font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;font-size:16px;margin:17px 0;color:#5b5b5b}#maxbuttons.maxbuttons-pro-gopro .default-section:nth-child(even){background-color:#fff}#maxbuttons.maxbuttons-pro-gopro .default-section:nth-child(odd){background-color:#faf5f1}#maxbuttons.maxbuttons-pro-gopro .default-section .big-maxg-btn{background-color:#fd8d61;border-color:#f0702b;font-size:32px;margin:10px}#maxbuttons.maxbuttons-pro-gopro .default-section h2{font-weight:bold;color:#88c5c2;font-size:36px;line-height:38px;max-width:80%;margin:14px auto}#maxbuttons.maxbuttons-pro-gopro .default-section .rating{width:380px;margin:0 auto}#maxbuttons.maxbuttons-pro-gopro .default-section .rating p{margin:10px 0 0;font-size:22px;color:#000}#maxbuttons.maxbuttons-pro-gopro .default-section .icon-row p{font-weight:bold}#maxbuttons.maxbuttons-pro-gopro .default-section .icon-row img{width:106px;height:106px}#maxbuttons.maxbuttons-pro-gopro .social-row div{margin-bottom:5px}#maxbuttons.maxbuttons-pro-gopro .social-row p{background:#fff;padding:15px 5px 0 5px;margin:15px 0 0 15px;font-weight:700}#maxbuttons.maxbuttons-pro-gopro .social-row img{margin-top:15px}#maxbuttons.maxbuttons-pro-gopro .social-row p{min-height:162px}#maxbuttons.maxbuttons-pro-gopro .container{width:inherit;margin:0 auto;padding:30px 0}#maxbuttons.maxbuttons-pro-gopro img{max-width:100%}#maxbuttons.maxbuttons-pro-gopro .icon-row,#maxbuttons.maxbuttons-pro-gopro .image-row{position:relative}#maxbuttons.maxbuttons-pro-gopro .width-100{width:100%;margin-bottom:15px}#maxbuttons.maxbuttons-pro-gopro .width-33{width:33.33333333%;float:left;padding:0 15px;margin:0 -15px 40px}#maxbuttons.maxbuttons-pro-gopro .width-50{width:50%;float:left;padding:0 15px;margin:0 -15px 40px}#maxbuttons.maxbuttons-pro-gopro .clearfix{clear:both}#maxbuttons.maxbuttons-pro-gopro .bordered{border-radius:30px;padding:16px;background-color:#fff;box-sizing:border-box}@media (max-width: 780px){#maxbuttons.maxbuttons-pro-gopro .bordered{border:0;padding:8}}#maxbuttons.maxbuttons-pro-gopro .bordered p{margin:0 0 10px}#maxbuttons.maxbuttons-pro-gopro .inline-block{display:inline-block !important;vertical-align:middle}#maxbuttons.maxbuttons-pro-gopro .big-maxg-btn{font-size:20px;color:#fff;font-weight:bold;padding:18px 15px 10px;transition:all linear .2s;display:block;text-align:center;border-bottom:4px solid;text-transform:uppercase;border-radius:10px;text-decoration:none;line-height:42px}#maxbuttons.maxbuttons-pro-gopro .big-maxg-btn:hover,#maxbuttons.maxbuttons-pro-gopro .big-maxg-btn:focus{color:#fff;text-decoration:none;outline:none}#maxbuttons.maxbuttons-pro-gopro .big-maxg-btn:hover{box-shadow:0 8px 6px -6px rgba(0,0,0,0.5)}#maxbuttons.maxbuttons-pro-gopro .price{position:relative;display:inline-block}#maxbuttons.maxbuttons-pro-gopro .price span{position:absolute;color:#fff;display:block;font-size:46px;font-weight:700;top:55px;left:26px}#maxbuttons.maxbuttons-collections-gosocial .social-share-move{background-color:#fff}#maxbuttons.maxbuttons-collections-gosocial .social-share-move .container{padding:15px}#maxbuttons.maxbuttons-collections-gosocial .topbox h1{display:inline-block;font-size:36px;font-weight:700}#maxbuttons.maxbuttons-collections-gosocial .topbox .icon-left{float:left;margin:0 15px 15px 0;display:inline-block}#maxbuttons.maxbuttons-collections-gosocial .topbox h3{display:inline-block}#maxbuttons.maxbuttons-collections-gosocial .topbox:after{clear:both}#maxbuttons.maxbuttons-collections-gosocial .imagebox{clear:both}#maxbuttons.maxbuttons-collections-gosocial .featurebox{margin:20px 0;display:inline-block}#maxbuttons.maxbuttons-collections-gosocial .featurebox h3{display:inline-block}#maxbuttons.maxbuttons-collections-gosocial .featurebox .block{width:45%;float:left;margin-right:3px}#maxbuttons.maxbuttons-collections-gosocial .linkbox{clear:both;margin:30px auto;text-align:center;display:inline-block;width:100%}#maxbuttons.maxbuttons-collections-gosocial .linkbox .install-now{font-size:30px;height:50px;padding-top:10px}
1
+ .mb_colorpicker{z-index:200}.ads .button-primary{display:block;margin:0 auto 20px auto;width:210px;text-align:center;overflow:visible}.max-load-spinner{background:url("/wp-admin/images/wpspin_light.gif") no-repeat;background-size:16px 16px;opacity:.9;width:16px;height:16px;display:inline-block;vertical-align:middle;position:absolute;top:50%;left:50%;margin-left:-8px;margin-top:-8px;z-index:10}.max-load-spinner.large{background:url("/wp-admin/images/wpspin_light-2x.gif") no-repeat;width:32px;height:32px}.max-load-overlay{position:absolute;top:0;left:0;right:0;bottom:0;opacity:0.80;background-color:#f0f0f0;z-index:9}#maxbuttons{display:inline-block;width:100%}#maxbuttons .message,#maxbuttons .mb-message{border:solid 1px #e6db55;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;padding:10px;margin:10px 0px 20px 0px;clear:both;background:#fff}#maxbuttons .main{position:relative;z-index:500;margin-top:15px;width:72%;float:left}#maxbuttons .mb-message.error{font-weight:700}#maxbuttons .mb-message.shortcode,#maxbuttons .mb-message.mb-notice{border:solid 1px #e6db55;background-color:#ffffe0}#maxbuttons .mb-message.warning{border-left:4px solid #ffba00}#maxbuttons .mb-message.error{border-left:4px solid #ff0000}#maxbuttons .button-bar,#maxbuttons .form-actions,#maxbuttons.mb_tabs_active .mb_tab>.title:nth-of-type(1){margin:15px 0;padding:10px;background:#fbfbfb none repeat scroll 0 0;border:1px solid #e5e5e5;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.04);box-shadow:0 1px 1px rgba(0,0,0,0.04);min-height:28px}#maxbuttons h1>span{vertical-align:top;float:left}@media (max-width: 1024px){#maxbuttons h1>span{float:none}}#maxbuttons .logo{font-weight:400;font-size:18px;overflow:hidden;text-align:center}@media (max-width: 1024px){#maxbuttons .logo{text-align:left;margin-top:15px}}#maxbuttons .logo img{vertical-align:middle;padding-left:5px;padding-right:5px}#maxbuttons .logo .fb-like{margin-top:5px;height:20px;padding:0;margin-left:180px;overflow:hidden}#maxbuttons .logo .fb-like span{vertical-align:top !important}#maxbuttons .dummy-heading{display:none}@media screen and (max-width: 960px){#maxbuttons .main{width:100%}}#maxbuttons .tablenav .input-paging{width:55px}#maxbuttons .ads ul li{margin-bottom:4px}#maxbuttons .preview-buttons{background-color:#fff;border:1px solid #dfdfdf;overflow:hidden}#maxbuttons .preview-buttons .heading{width:100%;clear:both;display:inline-block;border-bottom:1px solid #dfdfdf}#maxbuttons .preview-buttons .heading>span{display:inline-block;font-weight:700;font-size:14px;float:left}#maxbuttons .preview-buttons .button-row{width:100%;clear:both;display:inline-block;border-bottom:1px solid #dfdfdf}#maxbuttons .preview-buttons .button-row>span{display:inline-block;font-size:13px;float:left;overflow:hidden}#maxbuttons .preview-buttons .button-row .actions{margin:10px 0;padding:10px 0px 10px 8px;display:inline-block;z-index:11;width:50%;background-color:#fff;position:relative}#maxbuttons .preview-buttons .col{padding:10px 0 10px 1%}#maxbuttons .preview-buttons .col_check{width:20px}#maxbuttons .preview-buttons .col_button{width:60%;overflow:hidden}@media (max-width: 780px){#maxbuttons .preview-buttons .col_button{width:70%;margin-right:5%}}#maxbuttons .preview-buttons .col_name{width:15%}@media (max-width: 780px){#maxbuttons .preview-buttons .col_name{display:none !important}}#maxbuttons .preview-buttons .col_shortcode{width:15%;padding-right:0}#maxbuttons p.status a{text-decoration:none}#maxbuttons p.status span.count{color:#999999}#maxbuttons .button-list{margin-top:10px}#maxbuttons .button-list p{font-size:13px}#maxbuttons .button-list a{text-decoration:none}#maxbuttons .button-list a.button-name{font-weight:bold}#maxbuttons .button-list .shortcode-container{margin:10px 0px 10px 2px}#maxbuttons .button-list .collection_notice{text-align:right;margin:10px 5px 0 0;padding-top:10px;float:right}#maxbuttons .shortcode-container .mb-container{margin:0 !important;float:none !important;max-width:100% !important}#maxbuttons .shortcode-container .mb-center{text-align:left !important}#maxbuttons .pagination-links a.disabled{color:#aaa;cursor:default}#maxbuttons .pagination-links a.disabled:hover{background:#e4e4e4 none repeat scroll 0 0;cursor:default;border:1px solid #d2d2d2}#maxbuttons .pagination{width:100%;display:inline-block;margin:15px 0 5px}#maxbuttons .pagination li{float:left;margin-right:5px}#maxbuttons .pagination li a,#maxbuttons .pagination li span{background:#ccc;vertical-align:middle;padding:4px 10px 8px;height:15px;display:inline-block;border:1px solid #eee;text-decoration:none;font-size:14px;font-weight:bold}#maxbuttons .maxbutton-welcome-container{margin:25px 0;padding:15px;border:1px solid #ccc;background:#fff}#maxbuttons .maxbutton-welcome-container h3{font-size:26px}#maxbuttons .maxbutton-welcome-container p.started{font-size:18px}#maxbuttons .maxbutton-welcome-container p{font-size:14px;line-height:18px}#maxbuttons .maxbutton-welcome-container h3{font-size:20px}#maxbuttons .maxbutton-welcome-container ul{list-style-type:disc;margin-left:25px}#maxbuttons.maxbuttons-controller-edit .main,#maxbuttons.maxbuttons-controller-button .main{width:auto;max-width:1200px}#maxbuttons .option-container{margin-bottom:20px;border:solid 1px #cccccc;border-radius:3px 3px 3px 3px;-webkit-border-radius:3px 3px 3px 3px;background-color:#fff;position:relative;z-index:1}#maxbuttons .option-container .title{font-size:18px;padding:9px 8px 9px 10px;text-align:left;text-shadow:0px 1px 0px #ffffff;position:relative;z-index:1}#maxbuttons .option-container .section-title{padding:15px;margin-top:10px;font-weight:700;font-size:16px}#maxbuttons .option-container .section-title{background-color:#fff}#maxbuttons .option-container .option-list{display:inline-block}#maxbuttons .option-container .option-list:after{clear:both}#maxbuttons .option-container .option-list .help{float:right;margin-top:5px}#maxbuttons .option-container .help{position:relative;font-size:24px;color:#666;margin-left:10px}#maxbuttons .option-container .help span{font-family:"Open Sans",sans-serif;font-size:12px;background-color:#fff;color:#000;position:absolute;display:none;padding:10px 10px;top:-7px;left:25px;min-width:150px;border-radius:5px;text-align:left;z-index:1000;border:1px solid #ccc;line-height:15px}#maxbuttons .option-container .help span .shortcode,#maxbuttons .option-container .help span .mb-message.mb-notice{color:555;white-space:nowrap}#maxbuttons .option-container .help:hover span{display:block}#maxbuttons .option-container .block_sidebar{position:absolute;right:0;top:0;left:calc(100% - 50px);height:100%;transition:all 400ms linear;z-index:1;background-color:#fff;overflow:hidden;width:50px}#maxbuttons .option-container .block_sidebar.active{left:0;bottom:0;right:0;top:0;width:100%}#maxbuttons .option-container .block_sidebar.active .open_control{left:0}#maxbuttons .option-container .block_sidebar.active .inside{opacity:1;padding-left:80px}#maxbuttons .option-container .block_sidebar.active .title{padding-left:80px;background:#fff;z-index:3}#maxbuttons .option-container .block_sidebar .open_control{background:#eee;background:linear-gradient(90deg, #ccc, #fff);z-index:4;width:50px;height:100%;position:absolute;top:0;left:0;cursor:pointer;border-top-left-radius:6px;border-bottom-left-radius:6px;border-left:3px solid rgba(204,204,204,0.7)}#maxbuttons .option-container .block_sidebar .open_control span{font-size:18px;text-transform:uppercase;font-weight:700;color:rgba(0,0,0,0.3);position:absolute;top:40%;right:-15px;transform:rotate(90deg)}#maxbuttons .option-container .block_sidebar .inside{opacity:0}#maxbuttons .option-container>.inside,#maxbuttons .block_sidebar>.inside{padding:10px 15px 10px 15px;border-top:solid 1px #cccccc;background-color:#ffffff}#maxbuttons .option-container>.inside .option,#maxbuttons .option-container>.inside .option-design,#maxbuttons .block_sidebar>.inside .option,#maxbuttons .block_sidebar>.inside .option-design{margin-bottom:10px;display:block;position:relative}#maxbuttons .option-container>.inside .option.hidden,#maxbuttons .option-container>.inside .option-design.hidden,#maxbuttons .block_sidebar>.inside .option.hidden,#maxbuttons .block_sidebar>.inside .option-design.hidden{display:none}#maxbuttons .option-container>.inside .option .label,#maxbuttons .option-container>.inside .option>label,#maxbuttons .option-container>.inside .option-design .label,#maxbuttons .option-container>.inside .option-design>label,#maxbuttons .block_sidebar>.inside .option .label,#maxbuttons .block_sidebar>.inside .option>label,#maxbuttons .block_sidebar>.inside .option-design .label,#maxbuttons .block_sidebar>.inside .option-design>label{display:inline-block;font-weight:bold;padding-left:3px;padding-top:5px;width:145px;vertical-align:top;cursor:default;min-height:25px}#maxbuttons .option-container>.inside .option .label[for],#maxbuttons .option-container>.inside .option>label[for],#maxbuttons .option-container>.inside .option-design .label[for],#maxbuttons .option-container>.inside .option-design>label[for],#maxbuttons .block_sidebar>.inside .option .label[for],#maxbuttons .block_sidebar>.inside .option>label[for],#maxbuttons .block_sidebar>.inside .option-design .label[for],#maxbuttons .block_sidebar>.inside .option-design>label[for]{cursor:pointer}@media (max-width: 780px){#maxbuttons .option-container>.inside .option .label,#maxbuttons .option-container>.inside .option>label,#maxbuttons .option-container>.inside .option-design .label,#maxbuttons .option-container>.inside .option-design>label,#maxbuttons .block_sidebar>.inside .option .label,#maxbuttons .block_sidebar>.inside .option>label,#maxbuttons .block_sidebar>.inside .option-design .label,#maxbuttons .block_sidebar>.inside .option-design>label{font-size:14px}}#maxbuttons .option-container>.inside .option:after,#maxbuttons .option-container>.inside .option:before,#maxbuttons .option-container>.inside .option-design:after,#maxbuttons .option-container>.inside .option-design:before,#maxbuttons .block_sidebar>.inside .option:after,#maxbuttons .block_sidebar>.inside .option:before,#maxbuttons .block_sidebar>.inside .option-design:after,#maxbuttons .block_sidebar>.inside .option-design:before{clear:both}#maxbuttons .option-container>.inside .option label,#maxbuttons .block_sidebar>.inside .option label{margin-top:2px}#maxbuttons .option-container>.inside .option label.mbcolor,#maxbuttons .block_sidebar>.inside .option label.mbcolor{margin-top:5px}#maxbuttons .option-container>.inside .option label:nth-of-type(2),#maxbuttons .block_sidebar>.inside .option label:nth-of-type(2){margin-left:30px;width:115px}#maxbuttons .option-container>.inside .option .control-group,#maxbuttons .block_sidebar>.inside .option .control-group{display:inline-block}#maxbuttons .option-container>.inside .option .rotate-left,#maxbuttons .block_sidebar>.inside .option .rotate-left{-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-ms-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg);filter:progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=cos(-45), M12=-sin(-45), M21=sin(-45), M22=cos(-45));-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=cos(-45), M12=-sin(-45), M21=sin(-45), M22=cos(-45))";zoom:1}#maxbuttons .option-container>.inside .option .rotate-right,#maxbuttons .block_sidebar>.inside .option .rotate-right{-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);filter:progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=cos(45), M12=-sin(45), M21=sin(45), M22=cos(45));-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(sizingMethod='auto expand', M11=cos(45), M12=-sin(45), M21=sin(45), M22=cos(45))";zoom:1}#maxbuttons .option-design{margin-bottom:10px}#maxbuttons .option-design .input td div.cell-label{padding:1px 10px 0px 5px;font-weight:bold;border-bottom:solid 1px #d1d1d1;width:180px;font-size:13px;height:30px}#maxbuttons .option-design .default-other{font-size:13px}#maxbuttons .option p.note,#maxbuttons .option-design p.note{font-style:italic;display:inline-block;clear:both;color:#808080;padding-left:3px;margin-top:10px;margin-bottom:5px;margin-left:0;display:block}#maxbuttons .option p.warning,#maxbuttons .option p.error{border-left:5px solid #d98500;font-size:13px;padding-left:18px;line-height:20px;max-width:450px}#maxbuttons .option p.error{border-color:#ff0000;font-weight:600}#maxbuttons .mb-message.shortcode h4,#maxbuttons .mb-message.mb-notice h4{font-size:16px}#maxbuttons .mb-message.shortcode strong,#maxbuttons .mb-message.mb-notice strong{font-weight:600}#maxbuttons .mb-message.shortcode .expanded,#maxbuttons .mb-message.mb-notice .expanded{display:none}#maxbuttons .mb-message.shortcode .expanded p,#maxbuttons .mb-message.mb-notice .expanded p{font-size:14px;line-height:22px}#maxbuttons .mb-message.shortcode .expanded .example strong,#maxbuttons .mb-message.mb-notice .expanded .example strong{width:300px;display:inline-block}#maxbuttons .mb-message.shortcode .shortcode-expand,#maxbuttons .mb-message.mb-notice .shortcode-expand{clear:both;font-weight:700;display:block;margin:5px 0;cursor:pointer}@media (max-width: 1024px){#maxbuttons .mb-message.shortcode .shortcode-expand,#maxbuttons .mb-message.mb-notice .shortcode-expand{float:none;text-align:left;margin:10px 0;display:block}}#maxbuttons .manual-box{float:right;margin:3px 15px;top:0;right:0}#maxbuttons .manual-box a{text-align:center;width:100%;background:#e0e0e0 none repeat scroll 0 0;font-size:13px;font-weight:600;margin-left:4px;margin-top:5px;padding:4px 8px;position:relative;text-decoration:none;text-shadow:none}#maxbuttons .manual-entry{display:none;position:absolute;border:1px solid #000;background:#fff;width:45%;right:25px;z-index:199;box-sizing:border-box;padding-bottom:20px}#maxbuttons .manual-entry h3{font-size:18px;width:calc(100%);box-sizing:border-box;padding:10px 0;border-bottom:1px solid #ccc;text-align:center;margin:0;padding-right:35px;position:relative}#maxbuttons .manual-entry h3 span{box-sizing:border-box;cursor:pointer;width:35px;height:100%;font-size:25px;display:inline-block;position:absolute;right:5px;top:0;padding-top:8px}#maxbuttons .manual-entry h4,#maxbuttons .manual-entry p,#maxbuttons .manual-entry ol,#maxbuttons .manual-entry ul{padding:0 15px}#maxbuttons .manual-entry h4{font-size:16px}#maxbuttons .manual-entry p{font-size:13px}#maxbuttons .output{position:fixed;top:45px;right:20px;background-color:#ffffff;border:solid 1px #414141;box-shadow:0px 0px 6px #808080;z-index:99;width:auto;min-width:300px}@media (max-width: 780px){#maxbuttons .output{-webkit-box-shadow:0 0 0 0;-moz-box-shadow:0 0 0 0;box-shadow:0 0 0 0;top:0;left:0;right:0;position:relative;margin-bottom:15px;border-color:#ccc}}#maxbuttons .output .header{color:#222222;background-color:#ffffff;border-bottom:solid 1px #cccccc;font-family:"Open Sans", sans-serif;font-size:16px;font-weight:bold;padding:8px 0px 8px 10px;cursor:move;position:relative}#maxbuttons .output .header .preview-toggle{float:right;font-size:30px;width:30px;position:absolute;top:3px;right:0}#maxbuttons .output .inner{padding:5px}#maxbuttons .output .inner p{padding:5px 0 5px 5px}#maxbuttons .output .input.mbcolor{float:left;position:relative;margin-top:5px}#maxbuttons .output .input.mbcolor .wp-picker-container.wp-picker-active{padding:15px;border:1px solid #ccc;background-color:#fff;position:absolute;bottom:-15px;left:-270px;z-index:102;-webkit-box-shadow:4px 1px 5px #ccc;-moz-box-shadow:4px 1px 5px #ccc;box-shadow:4px 1px 5px #ccc}#maxbuttons .output .note{float:left;margin:8px 0px 0px 10px}#maxbuttons .output .result{padding:20px 5px}#maxbuttons .output .result p{padding:5px 0px 5px 0px;margin:0}#maxbuttons .output .result.preview-border-box>*{box-sizing:border-box}#maxbuttons .conditional-option{display:none}#maxbuttons .media_query{width:640px;margin:0 20px 15px 0;border:1px solid #ccc;padding:10px 15px;display:inline-block;clear:both;position:relative}#maxbuttons .media_query .removebutton{position:absolute;right:10px;top:10px;cursor:pointer;z-index:100;padding:10px 5px}#maxbuttons .media_query input:after{clear:both}#maxbuttons .media_query .label{clear:both;margin-bottom:15px}#maxbuttons .media_query label.title{padding:0;font-size:20px}#maxbuttons .media_query .custom.hidden{display:none}#maxbuttons .media_query .option.custom label:nth-of-type(2){margin-left:95px}#maxbuttons .media_query .description{padding:15px 0px;text-align:left}#maxbuttons .media_query select{width:60px}#maxbuttons .media_query .input input{margin-top:0px;padding-top:2px}#maxbuttons .media_queries_options .new-query{margin-top:25px}#maxbuttons .media_queries_options .new-query select{width:auto}#maxbuttons .media_option_prot,#maxbuttons #media_desc{display:none}#maxbuttons .copy-warning{width:400px;margin:0 auto;position:relative;line-height:1.1}#maxbuttons .copy-warning:before{content:"\f534";font-size:40px;color:#ff0000;width:35px;height:35px;font-family:"Dashicons";position:absolute;left:20px;top:40%;margin-top:-14px}#maxbuttons .copy-warning .example{margin-bottom:5px}#maxbuttons .form-actions a{margin-right:10px}#maxbuttons select{width:150px}#maxbuttons select.small{width:auto}#maxbuttons .input{display:inline-block;margin-right:15px;min-height:35px;vertical-align:top}#maxbuttons .input img{vertical-align:middle}#maxbuttons .input.mbcolor{min-width:50px}#maxbuttons .input.checkbox input{margin-top:0}#maxbuttons .input.checkbox label{line-height:16px;margin-top:0 !important}#maxbuttons .maxajax-load-spinner{width:16px;height:16px;background:url("/wp-admin/images/wpspin_light.gif") no-repeat;opacity:0.9s;display:inline-block;margin:0 10px;z-index:10;vertical-align:middle}#maxbuttons input[type='text']{width:450px}@media (max-width: 780px){#maxbuttons input[type='text']{width:350px}}#maxbuttons input[type='text'].tiny{width:35px;vertical-align:middle}#maxbuttons input[type='text'].small{width:50px}#maxbuttons input[type='text'].medium{width:150px}#maxbuttons input[type='text'].tiny-nopad{width:35px}#maxbuttons input[type='number']{vertical-align:middle}#maxbuttons input[type='number'].tiny,#maxbuttons input[type='number'].tiny-nopad{width:55px}@media (max-width: 780px){#maxbuttons input[type='number'].tiny,#maxbuttons input[type='number'].tiny-nopad{width:60px}}#maxbuttons input[type='number'].small{width:70px}@media (max-width: 780px){#maxbuttons input[type='number'].small{width:75px}}#maxbuttons textarea{width:450px;height:80px}#maxbuttons .option-container .inside .option label.mbcolor:nth-of-type(2){margin-left:37px}#maxbuttons .option-container .inside .option.url{margin-bottom:0}#maxbuttons .option-container .inside .option.url_options{margin:5px 0 10px}#maxbuttons .option-container .inside .option.url_options .nofollow{margin-left:35px}#maxbuttons .option-container .inside .option.url_options label,#maxbuttons .option-container .inside .option.rel_options label{font-weight:400}#maxbuttons .option-container .inside .option.font .checkbox{margin-right:2px}#maxbuttons .option-container .inside .option.font .radio{margin-right:0}#maxbuttons .option-container .inside .option.font .input.font{margin-right:2px}#maxbuttons .option-container .inside .option.font .input.font_size{margin-right:0}#maxbuttons .option-container .inside .option.font .input.font_size:after{display:block}@media (max-width: 780px){#maxbuttons .option-container .inside .option.font{display:inline-block}#maxbuttons .option-container .inside .option.font:after{clear:both}#maxbuttons .option-container .inside .option.font>*{float:left}}#maxbuttons .option-container .inside .option.font .control-group.font_weight{margin-left:28px}@media (max-width: 780px){#maxbuttons .option-container .inside .option.font .control-group.font_weight{clear:left;margin-left:148px;margin-top:10px}}#maxbuttons .option-container .inside .option.font .control-group.text_align{margin-left:48px}@media (max-width: 780px){#maxbuttons .option-container .inside .option.font .control-group.text_align{margin-left:20px;margin-top:10px}}#maxbuttons .option-container .inside .option.padding_top .input,#maxbuttons .option-container .inside .option.container_margin_top .input{margin-right:30px}#maxbuttons .option-container .inside .option.padding_top .input:last-of-type,#maxbuttons .option-container .inside .option.container_margin_top .input:last-of-type{margin-right:0}@media (max-width: 780px){#maxbuttons .option-container .inside .option.padding_top .input,#maxbuttons .option-container .inside .option.container_margin_top .input{margin-right:15px}}#maxbuttons .option-container .inside .option.text_color label{margin-top:0px}#maxbuttons .option-container .inside .option.text_color label:nth-of-type(2){margin-left:51px}#maxbuttons .option-container .inside .option.description label{padding-top:35px}#maxbuttons .option-container .inside .option .radius-wrap{position:relative;margin-left:45px;display:inline-block}#maxbuttons .option-container .inside .option.radius .label:first-child{width:100px;float:left}#maxbuttons .option-container .inside .option.radius .bottom,#maxbuttons .option-container .inside .option.radius .top{position:relative}#maxbuttons .option-container .inside .option.radius .bottom .input,#maxbuttons .option-container .inside .option.radius .top .input{margin-right:0;margin-left:0}#maxbuttons .option-container .inside .option.radius .bottom .dashicons:nth-child(3),#maxbuttons .option-container .inside .option.radius .top .dashicons:nth-child(3){margin-right:10px}#maxbuttons .option-container .inside .option.radius .top{margin-bottom:10px}#maxbuttons .option-container .inside .option.radius label{display:inline-block;font-weight:700;width:90px;margin-left:5px;cursor:default}#maxbuttons .option-container .inside .option.radius .dashicons{font-size:35px;height:35px;width:35px;color:#ccc}#maxbuttons .option-container .inside .option.radius .top .dashicons{margin-top:-5px}#maxbuttons .option-container .inside .option.radius .bottom .dashicons{margin-top:5px}#maxbuttons .option-container .inside .option.radius #radius_toggle{position:absolute;left:46%;top:25px;font-size:30px;cursor:pointer}#maxbuttons .option-container .inside .option.gradient_head .label:nth-child(even){width:120px}#maxbuttons .option-container .inside .option .gradient_end_color,#maxbuttons .option-container .inside .option .gradient_end_color_hover{margin-left:58px}#maxbuttons .default{display:inline-block;padding-left:10px;padding-top:4px;font-style:italic;color:#808080}#maxbuttons .default .other{padding-left:40px;padding-top:8px}#maxbuttons .mb-button{width:38px;height:38px;background-color:#eceded;display:inline-block;margin-right:6px;cursor:pointer;display:none}#maxbuttons .mb-button span{text-align:center;padding:9px 0;width:100%;line-height:20px}#maxbuttons .check_button{display:none}#maxbuttons .check_button+label{background-position:center center;background-repeat:no-repeat;background-color:#fff;display:inline-block;border:1px solid #ddd;font_weight:normal;padding:4px}@media (max-width: 780px){#maxbuttons .check_button+label{padding:10px}}#maxbuttons .check_button.text+label{padding:5px}#maxbuttons .check_button.icon+label i{width:20px;height:20px;color:#545454}#maxbuttons .check_button.icon+label i:focus{outline:none}#maxbuttons .check_button:checked+label{background:#ebebeb none repeat scroll 0 0;border-color:#999999;box-shadow:0 2px 5px -3px rgba(0,0,0,0.3) inset}#maxbuttons .option .input_label{display:inline-block;vertical-align:top}#maxbuttons .option .input_label.left{margin-right:10px}#maxbuttons .option .input_label.right{margin-left:10px}#maxbuttons .option .range_value{margin:8px 0 0 15px;float:right}#maxbuttons .option .range_value output{clear:both;font-size:15px;text-align:center;width:100%;display:inline-block}#maxbuttons .option .switch_label{padding-top:2px !important;margin:0 !important}#maxbuttons .switch_button{margin-left:-5px}#maxbuttons .switch_button label{padding:8px 5px}#maxbuttons .switch_button label:focus{outline:none}#maxbuttons .switch_button input{display:none}#maxbuttons .switch_button input:checked ~ .the_switch{background:#6fbeb5}#maxbuttons .switch_button input:checked ~ .the_switch:after{left:26px;background:#179588}#maxbuttons .switch_button input::disabled ~ .the_switch{background:#d5d5d5;pointer-events:none}#maxbuttons .switch_button input:disabled ~ .the_switch:after{background:#bcbdbc}#maxbuttons .switch_button .the_switch{position:relative;display:inline-block;height:15px;width:50px;background:#898989;border-radius:100px;cursor:pointer;transition:all 0.3s ease}#maxbuttons .switch_button .the_switch:after{position:absolute;left:-2px;top:-3px;display:block;width:24px;height:24px;border-radius:100px;background:#aaa;box-shadow:0px 3px 3px rgba(0,0,0,0.05);content:'';transition:all 0.2s ease}#maxbuttons .switch_button .the_switch:active:after{transform:scale(0.9, 0.85)}#maxbuttons .switch_button .the_switch:focus{outline:none}#maxbuttons .input.mbcolor{margin-top:5px;position:relative}#maxbuttons .input.mbcolor .wp-picker-clear{display:none}#maxbuttons .input.mbcolor input[type="text"]{width:75px;line-height:22px}#maxbuttons .input.mbcolor .wp-color-picker{width:inherit}#maxbuttons .input.mbcolor .wp-color-result{-webkit-box-shadow:-1px 1px 2px #999;-moz-box-shadow:-1px 1px 2px #999;box-shadow:-1px 1px 2px #999;height:30px;border:0}#maxbuttons .input.mbcolor .wp-color-result:after{font-size:12px;line-height:30px;display:none}#maxbuttons .input.mbcolor .wp-color-result:focus{border-color:#5b9dd9;-webkit-box-shadow:0 0 5px rgba(30,140,190,0.8);-moz-box-shadow:0 0 5px rgba(30,140,190,0.8);box-shadow:0 0 5px rgba(30,140,190,0.8)}#maxbuttons .input.mbcolor .wp-color-result-text{display:none}#maxbuttons .input.mbcolor .wp-picker-input-wrap{padding:0}#maxbuttons .input.mbcolor .wp-picker-active+.arrows{display:inline-block}#maxbuttons .input.mbcolor .arrows{position:absolute;display:none;top:0;margin-top:40%}#maxbuttons .input.mbcolor .arrows.right{right:-45px}#maxbuttons .input.mbcolor .arrows.left{left:-35px}#maxbuttons .input.mbcolor .arrows .arrow-left,#maxbuttons .input.mbcolor .arrows .arrow-right{width:0;height:0;font-size:0;line-height:0;vertical-align:bottom;cursor:pointer;transition:.8s}#maxbuttons .input.mbcolor .arrows .arrow-left{border-top:30px solid transparent;border-bottom:30px solid transparent;border-right:20px solid #ccc}#maxbuttons .input.mbcolor .arrows .arrow-left:hover{border-right-color:#33b3db}#maxbuttons .input.mbcolor .arrows .arrow-right{border-top:30px solid transparent;border-bottom:30px solid transparent;border-left:20px solid #ccc;margin-top:35px}#maxbuttons .input.mbcolor .arrows .arrow-right:hover{border-left-color:#33b3db}#maxbuttons .input.mbcolor .arrows .left,#maxbuttons .input.mbcolor .arrows .right{display:inline-block;float:left;clear:both;width:35px;height:45px}#maxbuttons .input.mbcolor .arrows .left{margin-top:15px}#maxbuttons [type='range']{-webkit-appearance:none;width:250px;margin-top:8px}#maxbuttons [type='range']:focus{outline:0}#maxbuttons [type='range']:focus::-webkit-slider-runnable-track{background:#fff}#maxbuttons [type='range']:focus::-ms-fill-lower{background:#fff}#maxbuttons [type='range']:focus::-ms-fill-upper{background:#fff}#maxbuttons [type='range']::-webkit-slider-runnable-track{cursor:pointer;height:5px;transition:all .2s ease;width:250px;background:#fff;border:1px solid #cfd8dc;border-radius:10px}#maxbuttons [type='range']::-webkit-slider-thumb{background:#179588;border:0px solid #eceff1;border-radius:12px;cursor:pointer;height:20px;width:20px;-webkit-appearance:none;margin-top:-8.5px}#maxbuttons [type='range']::-moz-range-track{cursor:pointer;height:5px;transition:all .2s ease;width:250px;background:#fff;border:1px solid #cfd8dc;border-radius:10px}#maxbuttons [type='range']::-moz-range-thumb{background:#179588;border:0px solid #eceff1;border-radius:12px;cursor:pointer;height:20px;width:20px}#maxbuttons [type='range']::-ms-track{cursor:pointer;height:5px;transition:all .2s ease;width:250px;background:transparent;border-color:transparent;border-width:10px 0;color:transparent}#maxbuttons [type='range']::-ms-fill-lower{background:#f2f2f2;border:1px solid #cfd8dc;border-radius:20px}#maxbuttons [type='range']::-ms-fill-upper{background:#fff;border:1px solid #cfd8dc;border-radius:20px}#maxbuttons [type='range']::-ms-thumb{background:#179588;border:0px solid #eceff1;border-radius:12px;cursor:pointer;height:20px;width:20px;margin-top:0}#maxbuttons .support.tiles{display:flex}#maxbuttons .support.tiles>div{background-color:#0073aa;margin:0 25px 0 0;padding:16px}#maxbuttons .support.tiles>div a{color:#fff;text-align:center;font-size:20px;text-decoration:none}#maxbuttons .system_info{width:90%;background-color:#fff;border:1px solid #000;padding:15px}#maxbuttons .system_info .info{margin:5px 0}#maxbuttons .system_info .info label{width:250px;display:inline-block;clear:both}#maxbuttons.maxbuttons-settings .option-container .inside .option-design{margin:20px 0}#maxbuttons.maxbuttons-settings .option-container .inside .option-design label{line-height:14px;height:40px;vertical-align:top;width:200px;margin-right:20px}#maxbuttons h2.tabs{margin:1em 0;min-height:35px}#maxbuttons h2.sub-tabs,#maxbuttons h2.submit-tab{list-style:none;clear:both;margin-bottom:0}#maxbuttons h2.sub-tabs a,#maxbuttons h2.submit-tab a{font-weight:400;font-size:14px;cursor:pointer}#maxbuttons h2.sub-tabs a .dashicons,#maxbuttons h2.submit-tab a .dashicons{margin-right:10px;line-height:24px}#maxbuttons h2.sub-tabs .save-indicator,#maxbuttons h2.submit-tab .save-indicator{float:right;font-size:25px;display:none;margin-right:10px}#maxbuttons h2.sub-tabs .save-indicator.dashicons-warning,#maxbuttons h2.submit-tab .save-indicator.dashicons-warning{color:#ff0000}#maxbuttons h2.sub-tabs .save-indicator.dashicons-yes,#maxbuttons h2.submit-tab .save-indicator.dashicons-yes{color:#00ff00}#maxbuttons.mb_tabs_active .mb_tab{border:0px;background:none;border-radius:0 0 0 0;-webkit-border-radius:0 0 0 0}#maxbuttons.mb_tabs_active .mb_tab>.title:nth-of-type(1) button{top:0}#maxbuttons.mb_tabs_active .mb_tab>.title:nth-of-type(1) .right{float:right}#maxbuttons.mb_tabs_active .mb_tab>.inside{border:1px solid #e5e5e5}#maxbuttons.maxbuttons-collections-edit .main{width:100%;max-width:none}#maxbuttons .collection-addnew{display:inline-block}@media (max-width: 780px){#maxbuttons .collection-addnew{margin-left:5px}}#maxbuttons .collection_list .collection{position:relative;background-color:#fff;padding:15px;border-radius:15px;margin:15px 0}#maxbuttons .collection_list .collection h3{display:inline-block;width:90%;margin-top:0;font-size:18px;line-height:20px}#maxbuttons .collection_list .collection h3 a{color:#000;font-size:25px;text-decoration:none}#maxbuttons .collection_list .collection h3 a:hover{text-decoration:underline}#maxbuttons .collection_list .collection h3 .dashicons{color:#ccc;margin-left:15px}#maxbuttons .collection_list .collection h3 .button-count{font-weight:400;font-size:15px;margin-left:15px;vertical-align:top}#maxbuttons .collection_list .collection .collection_remove{top:10px;right:15px;font-size:25px;font-weight:400;position:absolute;cursor:pointer}#maxbuttons .collection_list .collection.welcome p{font-size:14px;line-height:22px}#maxbuttons .collection_list .collection-container{position:relative;width:100%;display:inline-block;clear:both}#maxbuttons .collection_list .collection-container .maxcollection{position:static !important}#maxbuttons .inside .preview_collection.option label{display:inline-block;float:none;font-size:25px;width:100%}#maxbuttons .mb_collection_selection{display:inline-block;min-height:300px;margin:25px 0}#maxbuttons .mb_collection_selection .sortable .item{margin-bottom:25px;position:relative;padding-left:30px;min-height:45px;clear:both}#maxbuttons .mb_collection_selection .sortable .item .button-remove{margin-top:5px;position:absolute;left:20px;top:-15px;border:1px solid #000;border-radius:11px;width:20px;height:20px;background-color:rgba(0,0,0,0.5)}#maxbuttons .mb_collection_selection .sortable .item .button-remove:hover{cursor:pointer}#maxbuttons .mb_collection_selection .sortable .item .button-remove span{color:#fff;font-size:16px;padding-top:2px;overflow:hidden}#maxbuttons .mb_collection_selection .sortable-placeholder{border:3px dashed #aaa;height:45px;width:344px;background:#ccc}#maxbuttons .mb_collection_selection .button_data{display:none}#maxbuttons .mb-social-options{float:right;width:45%;border:1px solid #000;height:100%}#maxbuttons .mb-buttons-selection{float:left;width:45%;overflow:hidden;border:1px solid #000}#maxbuttons .mb-preview-window{position:fixed;top:40%;right:20px;width:30%;max-width:45%;max-height:90vh;background-color:rgba(255,255,255,0.7);border:1px solid #000;z-index:500 !important;overflow:hidden;display:none}@media (max-width: 780px){#maxbuttons .mb-preview-window{position:relative;left:0;top:0;bottom:0;right:0;width:100%;height:auto;display:inline-block;border-color:#ccc}}#maxbuttons .mb-preview-window .mb-preview-wrapper{position:relative;display:inline-block;width:100%}#maxbuttons .sub-tabs .preview-on{background-color:#00b9eb;color:#fff}#maxbuttons .sub-tabs .preview-on::before{line-height:24px}#maxbuttons #picker-back{top:0;left:0;right:0;bottom:0;background-color:#000;z-index:110000;position:fixed;opacity:0.7;display:none}#maxbuttons #picker-modal,#maxbuttons .max-modal.picker-modal{display:none;width:calc(100% - 60px);min-height:300px;top:30px;bottom:30px;left:30px;right:30px;z-index:160000}#maxbuttons #picker-modal .modal_header,#maxbuttons .max-modal.picker-modal .modal_header{height:15px;display:block;overflow:hidden;top:0;left:0;bottom:0;right:0;border:0}#maxbuttons #picker-modal .picker-packages,#maxbuttons .max-modal.picker-modal .picker-packages{top:31px;left:0;width:205px;bottom:0;background-color:#f3f3f3;position:absolute;border-right:1px solid #ccc;overflow-x:hidden;overflow-y:auto}#maxbuttons #picker-modal .picker-packages ul,#maxbuttons .max-modal.picker-modal .picker-packages ul{margin-top:4px}#maxbuttons #picker-modal .picker-packages li a,#maxbuttons .max-modal.picker-modal .picker-packages li a{padding:6px 20px;display:block;color:#0073aa;text-decoration:none;font-size:13px;line-height:16px}#maxbuttons #picker-modal .picker-packages li a:hover,#maxbuttons .max-modal.picker-modal .picker-packages li a:hover{background:rgba(0,0,0,0.04) none repeat scroll 0 0;color:#21759b}#maxbuttons #picker-modal .picker-packages li a.pack-active,#maxbuttons .max-modal.picker-modal .picker-packages li a.pack-active{font-weight:700;color:#000}#maxbuttons #picker-modal .picker-main,#maxbuttons .max-modal.picker-modal .picker-main{left:206px;top:31px;right:0;bottom:60px;position:absolute;border-bottom:1px solid #dddddd;overflow-y:scroll;background-color:#fff}#maxbuttons #picker-modal .picker-main .screen,#maxbuttons .max-modal.picker-modal .picker-main .screen{margin:5px 5px}#maxbuttons #picker-modal .picker-main .screen .tablenav-pages,#maxbuttons .max-modal.picker-modal .picker-main .screen .tablenav-pages{float:none;margin-left:1%}#maxbuttons #picker-modal .picker-main .item,#maxbuttons .max-modal.picker-modal .picker-main .item{padding:5px;margin:5px 0 5px 1%;border:1px solid #000;width:16%;height:auto;float:left;text-align:center;position:relative;background-color:#eee;border:1px solid #b4b9be;display:inline-block}#maxbuttons #picker-modal .picker-main .item .button_data,#maxbuttons .max-modal.picker-modal .picker-main .item .button_data{display:none}#maxbuttons #picker-modal .picker-main .item .button_name,#maxbuttons .max-modal.picker-modal .picker-main .item .button_name{clear:left;display:block;margin-top:15px;font-size:9px}#maxbuttons #picker-modal .picker-main .item .button-selected,#maxbuttons .max-modal.picker-modal .picker-main .item .button-selected{position:absolute;font-size:20px;top:-10px;right:-10px;width:24px;height:24px;color:#fff;background-color:#1e8cbe;z-index:100;border-radius:12px}#maxbuttons #picker-modal .picker-main .item .button-selected span,#maxbuttons .max-modal.picker-modal .picker-main .item .button-selected span{padding-top:2px}#maxbuttons #picker-modal .picker-inselection,#maxbuttons .max-modal.picker-modal .picker-inselection{height:60px;display:block;position:absolute;bottom:0;right:0;left:206px;overflow:hidden}#maxbuttons #picker-modal .picker-inselection .info,#maxbuttons .max-modal.picker-modal .picker-inselection .info{height:60px;float:left;display:inline-block;padding:10px 15px;display:none}#maxbuttons #picker-modal .picker-inselection .info .clear-selection,#maxbuttons .max-modal.picker-modal .picker-inselection .info .clear-selection{color:#ff0000;display:block;padding:0}#maxbuttons #picker-modal .picker-inselection .info .clear-selection:hover,#maxbuttons .max-modal.picker-modal .picker-inselection .info .clear-selection:hover{background-color:#ff0000;color:#fff}#maxbuttons #picker-modal .picker-inselection .items,#maxbuttons .max-modal.picker-modal .picker-inselection .items{display:inline-block;position:absolute;overflow:hidden;padding-top:5px;height:100%;left:130px;right:180px}@media (max-width: 780px){#maxbuttons #picker-modal .picker-inselection .items,#maxbuttons .max-modal.picker-modal .picker-inselection .items{display:none}}#maxbuttons #picker-modal .picker-inselection .items .item,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item{height:40px;width:40px;overflow:hidden;float:left;margin:3px;position:relative}#maxbuttons #picker-modal .picker-inselection .items .item .button_name,#maxbuttons #picker-modal .picker-inselection .items .item .button_data,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item .button_name,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item .button_data{display:none}#maxbuttons #picker-modal .picker-inselection .items .item .button-remove,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item .button-remove{display:none;position:absolute;width:30px;height:30px;left:2px;border-radius:15px;top:2px;background-color:rgba(0,0,0,0.5)}#maxbuttons #picker-modal .picker-inselection .items .item .button-remove span,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item .button-remove span{font-size:20px;color:#fff;padding-left:5px;padding-top:5px}#maxbuttons #picker-modal .picker-inselection .items .item:hover .button-remove,#maxbuttons .max-modal.picker-modal .picker-inselection .items .item:hover .button-remove{display:block}#maxbuttons #picker-modal .picker-inselection .add,#maxbuttons .max-modal.picker-modal .picker-inselection .add{float:right;margin-top:15px;margin-right:15px;height:100%}#maxbuttons .social_block .social-option{clear:both;margin-top:25px}#maxbuttons .social_block .social-option .shortcode-container{display:inline-block}#maxbuttons .social_block .social-option .button_name{display:inline-block;margin-left:10px;vertical-align:middle;font-weight:700}#maxbuttons #mbfeedback .link{height:25px;width:100px;position:fixed;top:40%;right:0;z-index:1000;transform:rotate(90deg);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-o-transform:rotate(90deg);filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1)}#maxbuttons #mbfeedback .link a{background:#ccc;height:25px;width:70px;padding:8px 16px;color:#fff;font-family:Arial, sans-serif;font-size:15px;font-weight:bold;text-decoration:none;line-height:15px;border-bottom:solid 1px #333;border-left:solid 1px #333;border-right:solid 1px #fff}#maxbuttons #mbfeedback .link a::hover{background:#06c}#maxbuttons .ad-wrap{width:27%;float:left;max-width:300px;margin-left:1%;min-width:200px;margin-top:41px}#maxbuttons .ad-wrap .ads{background:#fff;margin-bottom:20px;text-align:center}#maxbuttons .ad-wrap .ads.image-ad{background:none;margin-top:20px}#maxbuttons .ad-wrap .ads.image-ad img{max-width:100%}#maxbuttons .ad-wrap .ads>a{text-decoration:none}#maxbuttons .ad-wrap .ads .header{background-color:#88c5c2;color:#fff;font-size:18px;text-transform:uppercase;padding:12px}#maxbuttons .ad-wrap .ads h3{text-align:center;padding-bottom:14px}#maxbuttons .ad-wrap .ads ul{list-style:none}#maxbuttons .ad-wrap .ads ul li{font-weight:bold;text-decoration:none;color:#000000}#maxbuttons .ad-wrap .ads ul li.plus{font-size:38px;font-weight:700;color:#88c5c2}#maxbuttons .ad-wrap .ads span.img{text-align:center;display:block}#maxbuttons .ad-wrap .ads .ads_button_wrap{margin:20px 0 30px;display:inline-block}#maxbuttons .ad-wrap .ads .ads_button_wrap .button{color:#fff;background-color:#88c5c2;font-size:16px;font-weight:bold;border:0;padding:0 40px}@media screen and (max-width: 960px){#maxbuttons .ad-wrap{display:none}}#maxbuttons.maxbuttons-pro-gopro .main{width:95%;max-width:860px}#maxbuttons.maxbuttons-pro-gopro h1.title{margin:0;font-size:24px;display:inline-block}#maxbuttons.maxbuttons-pro-gopro h1.title .big-maxg-btn{display:inline-block;background-color:#86c5c2;border-color:#73a3a8;margin:0 10px;vertical-align:super;line-height:23px;border-top:0;border-left:0;border-right:0;top:5px}#maxbuttons.maxbuttons-pro-gopro h1.title img{vertical-align:middle}#maxbuttons.maxbuttons-pro-gopro .logo{margin:0;display:inline-block;margin-top:14px}#maxbuttons.maxbuttons-pro-gopro .logo .simple-btn{color:#62c0e6;text-decoration:underline}#maxbuttons.maxbuttons-pro-gopro .default-section{text-align:center;padding:0px 10px}#maxbuttons.maxbuttons-pro-gopro .default-section p{position:relative;font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;font-size:16px;margin:17px 0;color:#5b5b5b}#maxbuttons.maxbuttons-pro-gopro .default-section:nth-child(even){background-color:#fff}#maxbuttons.maxbuttons-pro-gopro .default-section:nth-child(odd){background-color:#faf5f1}#maxbuttons.maxbuttons-pro-gopro .default-section .big-maxg-btn{background-color:#fd8d61;border-color:#f0702b;font-size:32px;margin:10px}#maxbuttons.maxbuttons-pro-gopro .default-section h2{font-weight:bold;color:#88c5c2;font-size:36px;line-height:38px;max-width:80%;margin:14px auto}#maxbuttons.maxbuttons-pro-gopro .default-section .rating{width:380px;margin:0 auto}#maxbuttons.maxbuttons-pro-gopro .default-section .rating p{margin:10px 0 0;font-size:22px;color:#000}#maxbuttons.maxbuttons-pro-gopro .default-section .icon-row p{font-weight:bold}#maxbuttons.maxbuttons-pro-gopro .default-section .icon-row img{width:106px;height:106px}#maxbuttons.maxbuttons-pro-gopro .social-row div{margin-bottom:5px}#maxbuttons.maxbuttons-pro-gopro .social-row p{background:#fff;padding:15px 5px 0 5px;margin:15px 0 0 15px;font-weight:700}#maxbuttons.maxbuttons-pro-gopro .social-row img{margin-top:15px}#maxbuttons.maxbuttons-pro-gopro .social-row p{min-height:162px}#maxbuttons.maxbuttons-pro-gopro .container{width:inherit;margin:0 auto;padding:30px 0}#maxbuttons.maxbuttons-pro-gopro img{max-width:100%}#maxbuttons.maxbuttons-pro-gopro .icon-row,#maxbuttons.maxbuttons-pro-gopro .image-row{position:relative}#maxbuttons.maxbuttons-pro-gopro .width-100{width:100%;margin-bottom:15px}#maxbuttons.maxbuttons-pro-gopro .width-33{width:33.33333333%;float:left;padding:0 15px;margin:0 -15px 40px}#maxbuttons.maxbuttons-pro-gopro .width-50{width:50%;float:left;padding:0 15px;margin:0 -15px 40px}#maxbuttons.maxbuttons-pro-gopro .clearfix{clear:both}#maxbuttons.maxbuttons-pro-gopro .bordered{border-radius:30px;padding:16px;background-color:#fff;box-sizing:border-box}@media (max-width: 780px){#maxbuttons.maxbuttons-pro-gopro .bordered{border:0;padding:8}}#maxbuttons.maxbuttons-pro-gopro .bordered p{margin:0 0 10px}#maxbuttons.maxbuttons-pro-gopro .inline-block{display:inline-block !important;vertical-align:middle}#maxbuttons.maxbuttons-pro-gopro .big-maxg-btn{font-size:20px;color:#fff;font-weight:bold;padding:18px 15px 10px;transition:all linear .2s;display:block;text-align:center;border-bottom:4px solid;text-transform:uppercase;border-radius:10px;text-decoration:none;line-height:42px}#maxbuttons.maxbuttons-pro-gopro .big-maxg-btn:hover,#maxbuttons.maxbuttons-pro-gopro .big-maxg-btn:focus{color:#fff;text-decoration:none;outline:none}#maxbuttons.maxbuttons-pro-gopro .big-maxg-btn:hover{box-shadow:0 8px 6px -6px rgba(0,0,0,0.5)}#maxbuttons.maxbuttons-pro-gopro .price{position:relative;display:inline-block}#maxbuttons.maxbuttons-pro-gopro .price span{position:absolute;color:#fff;display:block;font-size:46px;font-weight:700;top:55px;left:26px}#maxbuttons.maxbuttons-collections-gosocial .social-share-move{background-color:#fff}#maxbuttons.maxbuttons-collections-gosocial .social-share-move .container{padding:15px}#maxbuttons.maxbuttons-collections-gosocial .topbox h1{display:inline-block;font-size:36px;font-weight:700}#maxbuttons.maxbuttons-collections-gosocial .topbox .icon-left{float:left;margin:0 15px 15px 0;display:inline-block}#maxbuttons.maxbuttons-collections-gosocial .topbox h3{display:inline-block}#maxbuttons.maxbuttons-collections-gosocial .topbox:after{clear:both}#maxbuttons.maxbuttons-collections-gosocial .imagebox{clear:both}#maxbuttons.maxbuttons-collections-gosocial .featurebox{margin:20px 0;display:inline-block}#maxbuttons.maxbuttons-collections-gosocial .featurebox h3{display:inline-block}#maxbuttons.maxbuttons-collections-gosocial .featurebox .block{width:45%;float:left;margin-right:3px}#maxbuttons.maxbuttons-collections-gosocial .linkbox{clear:both;margin:30px auto;text-align:center;display:inline-block;width:100%}#maxbuttons.maxbuttons-collections-gosocial .linkbox .install-now{font-size:30px;height:50px;padding-top:10px}
assets/libraries/simplehtmldom/simple_html_dom.php CHANGED
@@ -43,7 +43,7 @@
43
  * All of the Defines for the classes below.
44
  * @author S.C. Chen <me578022@gmail.com>
45
  */
46
-
47
 
48
  define('HDOM_TYPE_ELEMENT', 1);
49
  define('HDOM_TYPE_COMMENT', 2);
@@ -690,7 +690,9 @@ class simple_html_dom_node
690
  // This implies that an html attribute specifier may start with an @ sign that is NOT captured by the expression.
691
  // farther study is required to determine of this should be documented or removed.
692
  // $pattern = "/([\w-:\*]*)(?:\#([\w-]+)|\.([\w-]+))?(?:\[@?(!?[\w-]+)(?:([!*^$]?=)[\"']?(.*?)[\"']?)?\])?([\/, ]+)/is";
693
- $pattern = "/([\w-:\*]*)(?:\#([\w-]+)|\.([\w-]+))?(?:\[@?(!?[\w-:]+)(?:([!*^$]?=)[\"']?(.*?)[\"']?)?\])?([\/, ]+)/is";
 
 
694
  preg_match_all($pattern, trim($selector_string).' ', $matches, PREG_SET_ORDER);
695
  if (is_object($debug_object)) {$debug_object->debug_log(2, "Matches Array: ", $matches);}
696
 
@@ -1386,7 +1388,8 @@ class simple_html_dom
1386
  return true;
1387
  }
1388
 
1389
- if (!preg_match("/^[\w-:]+$/", $tag)) {
 
1390
  $node->_[HDOM_INFO_TEXT] = '<' . $tag . $this->copy_until('<>');
1391
  if ($this->char==='<') {
1392
  $this->link_nodes($node, false);
43
  * All of the Defines for the classes below.
44
  * @author S.C. Chen <me578022@gmail.com>
45
  */
46
+
47
 
48
  define('HDOM_TYPE_ELEMENT', 1);
49
  define('HDOM_TYPE_COMMENT', 2);
690
  // This implies that an html attribute specifier may start with an @ sign that is NOT captured by the expression.
691
  // farther study is required to determine of this should be documented or removed.
692
  // $pattern = "/([\w-:\*]*)(?:\#([\w-]+)|\.([\w-]+))?(?:\[@?(!?[\w-]+)(?:([!*^$]?=)[\"']?(.*?)[\"']?)?\])?([\/, ]+)/is";
693
+
694
+ // original $pattern = "/([\w-:\*]*)(?:\#([\w-]+)|\.([\w-]+))?(?:\[@?(!?[\w-:]+)(?:([!*^$]?=)[\"']?(.*?)[\"']?)?\])?([\/, ]+)/is";
695
+ $pattern = "/([\w\-:\*]*)(?:\#([\w-]+)|\.([\w-]+))?(?:\[@?(!?[\w\-:]+)(?:([!*^$]?=)[\"']?(.*?)[\"']?)?\])?([\/, ]+)/is";
696
  preg_match_all($pattern, trim($selector_string).' ', $matches, PREG_SET_ORDER);
697
  if (is_object($debug_object)) {$debug_object->debug_log(2, "Matches Array: ", $matches);}
698
 
1388
  return true;
1389
  }
1390
 
1391
+ // escaped hyphen here
1392
+ if (!preg_match("/^[\w\-:]+$/", $tag)) {
1393
  $node->_[HDOM_INFO_TEXT] = '<' . $tag . $this->copy_until('<>');
1394
  if ($this->char==='<') {
1395
  $this->link_nodes($node, false);
assets/scss/_editor.scss CHANGED
@@ -11,6 +11,8 @@
11
  border: solid 1px #cccccc;
12
  @include border-radius(3px,3px,3px,3px);
13
  background-color: #fff;
 
 
14
 
15
  .title {
16
 
@@ -19,6 +21,7 @@
19
  text-align: left;
20
  text-shadow: 0px 1px 0px #ffffff;
21
  position: relative;
 
22
  }
23
  .section-title {
24
  padding: 15px;
@@ -83,10 +86,84 @@
83
  display: block;
84
  }
85
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
86
  }
87
 
88
 
89
- .option-container > .inside {
90
  padding: 10px 15px 10px 15px;
91
  border-top: solid 1px #cccccc;
92
  background-color: #ffffff;
11
  border: solid 1px #cccccc;
12
  @include border-radius(3px,3px,3px,3px);
13
  background-color: #fff;
14
+ position: relative;
15
+ z-index: 1;
16
 
17
  .title {
18
 
21
  text-align: left;
22
  text-shadow: 0px 1px 0px #ffffff;
23
  position: relative;
24
+ z-index: 1;
25
  }
26
  .section-title {
27
  padding: 15px;
86
  display: block;
87
  }
88
  }
89
+
90
+ .block_sidebar {
91
+ position: absolute;
92
+ right: 0;
93
+ top: 0;
94
+ left: calc(100% - 50px);
95
+ //width: 50px;
96
+ height: 100%;
97
+ transition: all 400ms linear;
98
+ z-index: 1;
99
+ background-color: #fff;
100
+ overflow: hidden;
101
+ width: 50px;
102
+
103
+ &.active {
104
+ left: 0;
105
+ bottom: 0;
106
+ right: 0;
107
+ top: 0;
108
+ width: 100%;
109
+ // transition: all 500ms linear;
110
+
111
+ .open_control
112
+ {
113
+ left: 0;
114
+ // right: 0;
115
+ // width: 50px;
116
+ }
117
+ .inside {
118
+ opacity: 1;
119
+ padding-left: 80px;
120
+ }
121
+
122
+ .title {
123
+ padding-left: 80px;
124
+ background: #fff;
125
+ z-index: 3;
126
+
127
+ }
128
+
129
+
130
+ }
131
+ .open_control {
132
+ background: #eee;
133
+ background: linear-gradient(90deg, #ccc, #fff);
134
+ z-index: 4;
135
+ width: 50px;
136
+ height: 100%;
137
+ position: absolute;
138
+ top: 0;
139
+ left: 0;
140
+ cursor: pointer;
141
+ border-top-left-radius: 6px;
142
+ border-bottom-left-radius: 6px;
143
+ border-left: 3px solid rgba(204,204,204,0.7);
144
+ span {
145
+ font-size: 18px;
146
+ text-transform: uppercase;
147
+ font-weight: 700;
148
+ color: rgba(0,0,0,0.3);
149
+ position: absolute;
150
+ top: 40%;
151
+ right: -15px;
152
+ //margin: -15px 0 0 -10px;
153
+
154
+ transform: rotate(90deg);
155
+ }
156
+
157
+ }
158
+
159
+ .inside {
160
+ opacity: 0;
161
+ }
162
+ }
163
  }
164
 
165
 
166
+ .option-container > .inside, .block_sidebar > .inside {
167
  padding: 10px 15px 10px 15px;
168
  border-top: solid 1px #cccccc;
169
  background-color: #ffffff;
blocks/advanced.php CHANGED
@@ -73,12 +73,6 @@ class advancedBlock extends maxBlock
73
  $anchor->rel .= $custom_rel;
74
  }
75
 
76
- /* if (isset($data["extra_classes"]) && trim($data["extra_classes"]) != '')
77
- {
78
- $extra = trim($data["extra_classes"]);
79
- $anchor->class .= ' ' . $extra;
80
- } */
81
-
82
  if (isset($data["external_css"]) && $data["external_css"] == 1)
83
  {
84
  $anchor->class .= ' external-css ' ;
@@ -109,21 +103,10 @@ class advancedBlock extends maxBlock
109
  $data = $this->data[$this->blockname];
110
  $admin = MB()->getClass('admin');
111
 
112
- foreach($this->fields as $field => $options)
113
- {
114
- $default = (isset($options["default"])) ? $options["default"] : '';
115
- $$field = (isset($data[$field])) ? $data[$field] : $default;
116
- ${$field . "_default"} = $default;
117
-
118
- global $maxbuttons_container_alignments;
119
- }
120
- ?>
121
-
122
- <div class="option-container mb_tab">
123
- <div class="title"><?php _e('Advanced', 'maxbuttons') ?></div>
124
- <div class="inside advanced">
125
-
126
- <?php
127
 
128
  $imp = new maxField('switch');
129
  $imp->note = __('Adding !important to the button styles can help avoid potential conflicts with your theme styles.', 'maxbuttons') ;
@@ -160,26 +143,40 @@ class advancedBlock extends maxBlock
160
 
161
  // do_action('mb-after-advanced');
162
 
163
- $admin->display_fields();
164
-
165
  $nocss = new maxField('switch');
166
  $nocss->note = __('By default, the CSS styles for the button are rendered within a &lt;style&gt; block in the HTML body. Enabling the "Use External CSS" option allows you to put the CSS code for the button into your theme stylesheet instead.', 'maxbuttons');
167
  $nocss->label = __('Use External CSS', 'maxbuttons');
168
  $nocss->id = 'external_css';
169
  $nocss->value = 1;
170
  $nocss->name = $nocss->id;
171
- $nocss->checked = checked($external_css, 1, false);
172
- $nocss->output('start','');
 
173
 
174
  $nospace = new maxField('spacer');
175
  $nospace->content = __("Warning: This will remove all styling of the buttons!","maxbuttons");
176
- $nospace->output('','end');
 
 
 
 
 
 
 
 
 
 
 
177
  ?>
178
 
179
- <div class="option-design">
180
- <div class="label">&nbsp;</div>
181
- <div class="input"><a id="view_css_modal" name="view_css" href="javascript:void(0)" class="button maxmodal" data-modal="view-css"><?php _e('View CSS', 'maxbuttons') ?></a></div>
182
- <div class="clear"></div>
 
 
 
 
183
 
184
  <div id="view-css" class="maxmodal-data" >
185
  <h3 class="title"><?php _e("External CSS","maxbuttons"); ?></h3>
@@ -211,11 +208,7 @@ class advancedBlock extends maxBlock
211
  </div>
212
  </div>
213
 
214
- </div>
215
- </div>
216
- </div>
217
-
218
- <?php
219
  } // admin_fields
220
 
221
  } // class
73
  $anchor->rel .= $custom_rel;
74
  }
75
 
 
 
 
 
 
 
76
  if (isset($data["external_css"]) && $data["external_css"] == 1)
77
  {
78
  $anchor->class .= ' external-css ' ;
103
  $data = $this->data[$this->blockname];
104
  $admin = MB()->getClass('admin');
105
 
106
+ $start_block = new maxField('block_start');
107
+ $start_block->name = __('advanced', 'maxbuttons');
108
+ $start_block->label = __('Advanced', 'maxbuttons');
109
+ $admin->addField($start_block);
 
 
 
 
 
 
 
 
 
 
 
110
 
111
  $imp = new maxField('switch');
112
  $imp->note = __('Adding !important to the button styles can help avoid potential conflicts with your theme styles.', 'maxbuttons') ;
143
 
144
  // do_action('mb-after-advanced');
145
 
 
 
146
  $nocss = new maxField('switch');
147
  $nocss->note = __('By default, the CSS styles for the button are rendered within a &lt;style&gt; block in the HTML body. Enabling the "Use External CSS" option allows you to put the CSS code for the button into your theme stylesheet instead.', 'maxbuttons');
148
  $nocss->label = __('Use External CSS', 'maxbuttons');
149
  $nocss->id = 'external_css';
150
  $nocss->value = 1;
151
  $nocss->name = $nocss->id;
152
+ $nocss->checked = checked(maxBlocks::getValue($nocss->id), 1, false);
153
+ //$nocss->output('start','');
154
+ $admin->addField($nocss, 'start');
155
 
156
  $nospace = new maxField('spacer');
157
  $nospace->content = __("Warning: This will remove all styling of the buttons!","maxbuttons");
158
+ // $nospace->output('','end');
159
+ $admin->addField($nospace, '', 'end');
160
+
161
+ $viewcss = new maxField('button');
162
+ $viewcss->id = 'view_css_modal';
163
+ $viewcss->name = $viewcss->id;
164
+ $viewcss->label = '&nbsp;';
165
+ $viewcss->button_label = __('View CSS', 'maxbuttons');
166
+ $viewcss->inputclass = 'maxmodal';
167
+ $viewcss->modal = 'view-css';
168
+
169
+ $admin->addField($viewcss, 'start', 'end');
170
  ?>
171
 
172
+
173
+ <?php
174
+
175
+ $this->sidebar();
176
+ $endblock = new maxField('block_end');
177
+ $admin->addField($endblock);
178
+
179
+ ?>
180
 
181
  <div id="view-css" class="maxmodal-data" >
182
  <h3 class="title"><?php _e("External CSS","maxbuttons"); ?></h3>
208
  </div>
209
  </div>
210
 
211
+ <?php
 
 
 
 
212
  } // admin_fields
213
 
214
  } // class
blocks/basic.php CHANGED
@@ -249,12 +249,13 @@ class basicBlock extends maxBlock
249
 
250
  $icon_url = MB()->get_plugin_url() . 'images/icons/';
251
  $admin = MB()->getClass('admin');
252
- ?>
253
 
254
- <div class="mb_tab option-container mb_tab">
255
- <div class="title"><?php _e('Basics', 'maxbuttons') ?></div>
256
- <div class="inside basic">
257
- <?php
 
 
258
  $color_copy_self = __("Replace color from other field", "maxbuttons");
259
  $color_copy_move = __("Copy Color to other field", "maxbuttons");
260
 
@@ -527,14 +528,11 @@ class basicBlock extends maxBlock
527
 
528
  $admin->addField($field_desc, 'start', 'end');
529
 
 
 
 
530
 
531
- $admin->display_fields();
532
- ?>
533
-
534
-
535
- </div>
536
- </div>
537
- <?php } // admin_display
538
 
539
  } // class
540
 
249
 
250
  $icon_url = MB()->get_plugin_url() . 'images/icons/';
251
  $admin = MB()->getClass('admin');
 
252
 
253
+
254
+ $start_block = new maxField('block_start');
255
+ $start_block->name = __('basic', 'maxbuttons');
256
+ $start_block->label = __('Basics', 'maxbuttons');
257
+ $admin->addField($start_block);
258
+
259
  $color_copy_self = __("Replace color from other field", "maxbuttons");
260
  $color_copy_move = __("Copy Color to other field", "maxbuttons");
261
 
528
 
529
  $admin->addField($field_desc, 'start', 'end');
530
 
531
+ $this->sidebar();
532
+ $endblock = new maxField('block_end');
533
+ $admin->addField($endblock);
534
 
535
+ } // admin_display
 
 
 
 
 
 
536
 
537
  } // class
538
 
blocks/border.php CHANGED
@@ -43,13 +43,6 @@ class borderBlock extends maxBlock
43
  );
44
 
45
 
46
- function __construct()
47
- {
48
- parent::__construct();
49
- $this->fields = apply_filters($this->blockname. "-block-fields",$this->fields);
50
- $this->data[$this->blockname] = array(); //empty init
51
- }
52
-
53
  public function map_fields($map)
54
  {
55
  $map = parent::map_fields($map);
@@ -66,6 +59,21 @@ class borderBlock extends maxBlock
66
  return $map;
67
  }
68
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
69
  public function admin_fields()
70
  {
71
 
@@ -94,13 +102,12 @@ class borderBlock extends maxBlock
94
 
95
  $admin = MB()->getClass('admin');
96
 
97
- ?>
98
- <div class="option-container mb_tab">
99
- <div class="title"><?php _e('Border', 'maxbuttons') ?></div>
100
- <div class="inside">
101
 
102
 
103
- <?php
104
  // Spacer
105
  $fspacer = new maxField('spacer');
106
  $fspacer->label = __('Radius','maxbuttons');
@@ -111,8 +118,6 @@ class borderBlock extends maxBlock
111
 
112
  // Radius left top
113
  $radius_tleft = new maxField('number');
114
- //$radius_tleft->label = __('Top Left', 'maxbuttons');
115
- //$radius_tleft->label = '<span class="dashicons dashicons-arrow-left-alt2 rotate-right"></span>';
116
  $radius_tleft->value = maxUtils::strip_px(maxBlocks::getValue('radius_top_left'));
117
  $radius_tleft->id = 'radius_top_left';
118
  $radius_tleft->name = $radius_tleft->id;
@@ -121,12 +126,8 @@ class borderBlock extends maxBlock
121
  $radius_tleft->publish = false;
122
  $rtl = $radius_tleft->output('');
123
 
124
-
125
-
126
  // Radius right top
127
  $radius_tright = new maxField('number');
128
- //$radius_tright->label = __('Top Right', 'maxbuttons');
129
- //$radius_tright->label = '<span class="dashicons dashicons-arrow-right-alt2 rotate-left"></span>';
130
  $radius_tright->value = maxUtils::strip_px(maxBlocks::getValue('radius_top_right'));
131
  $radius_tright->id = 'radius_top_right';
132
  $radius_tright->name = $radius_tright->id;
@@ -138,8 +139,6 @@ class borderBlock extends maxBlock
138
 
139
  // Radius bottom left
140
  $radius_bleft = new maxField('number');
141
- //$radius_bleft->label = __('Bottom Left', 'maxbuttons');
142
- //$radius_bleft->label = '<span class="dashicons dashicons-arrow-left-alt2 rotate-left"></span>';
143
  $radius_bleft->value = maxUtils::strip_px(maxBlocks::getValue('radius_bottom_left'));
144
  $radius_bleft->id = 'radius_bottom_left';
145
  $radius_bleft->name = $radius_bleft->id;
@@ -150,8 +149,7 @@ class borderBlock extends maxBlock
150
 
151
  // Radius bottom right
152
  $radius_bright = new maxField('number');
153
- //$radius_bright->label = __('Bottom Right', 'maxbuttons');
154
- //$radius_bright->label = '<span class="dashicons dashicons-arrow-right-alt2 rotate-right"></span>';
155
  $radius_bright->value = maxUtils::strip_px(maxBlocks::getValue('radius_bottom_right'));
156
  $radius_bright->id = 'radius_bottom_right';
157
  $radius_bright->name = $radius_bright->id;
@@ -180,8 +178,6 @@ class borderBlock extends maxBlock
180
  $radius->radius_br = $rbr;
181
  $radius->label_br = __('Bottom Right','maxbuttons');
182
  $radius->lock = $lock;
183
- //$radius->output('','end');
184
-
185
  $admin->addField($radius, '', 'end');
186
 
187
  // Border style
@@ -192,8 +188,6 @@ class borderBlock extends maxBlock
192
  $bstyle->value= maxBlocks::getValue('border_style');
193
  $bstyle->setDefault(maxBlocks::getDefault('border_style'));
194
  $bstyle->content = maxUtils::selectify($bstyle->name, $maxbuttons_border_styles, $bstyle->value);
195
- //$bstyle->output('start', 'end');
196
-
197
  $admin->addField($bstyle, 'start', 'end');
198
 
199
  // Border width
@@ -204,8 +198,6 @@ class borderBlock extends maxBlock
204
  $bwidth->value = maxUtils::strip_px( maxBlocks::getValue('border_width') );
205
  $bwidth->min = 0;
206
  $bwidth->inputclass = 'tiny';
207
- //$bwidth->output('start','end');
208
-
209
  $admin->addField($bwidth, 'start', 'end');
210
 
211
  // Border Color
@@ -219,8 +211,6 @@ class borderBlock extends maxBlock
219
  $bcolor->copypos = 'right';
220
  $bcolor->left_title = $color_copy_self;
221
  $bcolor->right_title = $color_copy_move;
222
- //$bcolor->output('start');
223
-
224
  $admin->addField($bcolor ,'start');
225
 
226
  // Border Color Hover
@@ -234,8 +224,6 @@ class borderBlock extends maxBlock
234
  $bcolor_hover->copypos = 'left';
235
  $bcolor_hover->left_title = $color_copy_move;
236
  $bcolor_hover->right_title = $color_copy_self;
237
- // $bcolor_hover->output('','end');
238
-
239
  $admin->addField($bcolor_hover, '', 'end');
240
 
241
  // Shadow offset left
@@ -245,8 +233,6 @@ class borderBlock extends maxBlock
245
  $bshadow->id = $bshadow->name;
246
  $bshadow->value = maxUtils::strip_px( maxBlocks::getValue('box_shadow_offset_left') );
247
  $bshadow->inputclass = 'tiny';
248
- //$bshadow->output('start');
249
-
250
  $admin->addField($bshadow, 'start');
251
 
252
  // Shadow offset top
@@ -256,8 +242,6 @@ class borderBlock extends maxBlock
256
  $bshadow->id = $bshadow->name;
257
  $bshadow->value = maxUtils::strip_px( maxBlocks::getValue('box_shadow_offset_top') );
258
  $bshadow->inputclass = 'tiny';
259
- // $bshadow->output('','end');
260
-
261
  $admin->addField($bshadow, '', 'end');
262
 
263
  // Shadow width
@@ -267,8 +251,7 @@ class borderBlock extends maxBlock
267
  $bshadow->id = $bshadow->name;
268
  $bshadow->value = maxUtils::strip_px( maxBlocks::getValue('box_shadow_width') );
269
  $bshadow->inputclass = 'tiny';
270
- //$bshadow->output('start','');
271
-
272
  $admin->addField($bshadow, 'start', '');
273
 
274
  $bspread = new maxField('number');
@@ -277,8 +260,6 @@ class borderBlock extends maxBlock
277
  $bspread->id = 'box_shadow_spread';
278
  $bspread->name = $bspread->id;
279
  $bspread->inputclass = 'tiny';
280
- //$bspread->output('','end');
281
-
282
  $admin->addField($bspread, '', 'end');
283
 
284
  // Border Shadow Color
@@ -292,8 +273,6 @@ class borderBlock extends maxBlock
292
  $scolor->copypos = 'right';
293
  $scolor->left_title = $color_copy_self;
294
  $scolor->right_title = $color_copy_move;
295
- //$scolor->output('start');
296
-
297
  $admin->addField($scolor, 'start');
298
 
299
  // Border Shadow Color Hover
@@ -307,18 +286,13 @@ class borderBlock extends maxBlock
307
  $scolor_hover->copypos = 'left';
308
  $scolor_hover->left_title = $color_copy_self;
309
  $scolor_hover->right_title = $color_copy_move;
310
- //$scolor_hover->output('','end');
311
-
312
  $admin->addField($scolor_hover, '','end');
313
 
314
- $admin->display_fields();
315
-
316
- ?>
317
 
318
- </div>
319
- </div>
320
- <?php
321
- } // admin fields
322
 
323
  } // class
324
 
43
  );
44
 
45
 
 
 
 
 
 
 
 
46
  public function map_fields($map)
47
  {
48
  $map = parent::map_fields($map);
59
  return $map;
60
  }
61
 
62
+
63
+ public function parse_css($css, $mode = 'normal')
64
+ {
65
+ $css = parent::parse_css($css);
66
+ $data = $this->data[$this->blockname];
67
+
68
+ $border_width = maxBlocks::getValue('border_width');
69
+ if ( intval($border_width) == 0) // if no border, then don't output other border properties.
70
+ {
71
+ unset($css['maxbutton']['normal']['border-style']);
72
+ }
73
+
74
+ return $css;
75
+ }
76
+
77
  public function admin_fields()
78
  {
79
 
102
 
103
  $admin = MB()->getClass('admin');
104
 
105
+ $start_block = new maxField('block_start');
106
+ $start_block->name = __('border', 'maxbuttons');
107
+ $start_block->label = __('Border', 'maxbuttons');
108
+ $admin->addField($start_block);
109
 
110
 
 
111
  // Spacer
112
  $fspacer = new maxField('spacer');
113
  $fspacer->label = __('Radius','maxbuttons');
118
 
119
  // Radius left top
120
  $radius_tleft = new maxField('number');
 
 
121
  $radius_tleft->value = maxUtils::strip_px(maxBlocks::getValue('radius_top_left'));
122
  $radius_tleft->id = 'radius_top_left';
123
  $radius_tleft->name = $radius_tleft->id;
126
  $radius_tleft->publish = false;
127
  $rtl = $radius_tleft->output('');
128
 
 
 
129
  // Radius right top
130
  $radius_tright = new maxField('number');
 
 
131
  $radius_tright->value = maxUtils::strip_px(maxBlocks::getValue('radius_top_right'));
132
  $radius_tright->id = 'radius_top_right';
133
  $radius_tright->name = $radius_tright->id;
139
 
140
  // Radius bottom left
141
  $radius_bleft = new maxField('number');
 
 
142
  $radius_bleft->value = maxUtils::strip_px(maxBlocks::getValue('radius_bottom_left'));
143
  $radius_bleft->id = 'radius_bottom_left';
144
  $radius_bleft->name = $radius_bleft->id;
149
 
150
  // Radius bottom right
151
  $radius_bright = new maxField('number');
152
+
 
153
  $radius_bright->value = maxUtils::strip_px(maxBlocks::getValue('radius_bottom_right'));
154
  $radius_bright->id = 'radius_bottom_right';
155
  $radius_bright->name = $radius_bright->id;
178
  $radius->radius_br = $rbr;
179
  $radius->label_br = __('Bottom Right','maxbuttons');
180
  $radius->lock = $lock;
 
 
181
  $admin->addField($radius, '', 'end');
182
 
183
  // Border style
188
  $bstyle->value= maxBlocks::getValue('border_style');
189
  $bstyle->setDefault(maxBlocks::getDefault('border_style'));
190
  $bstyle->content = maxUtils::selectify($bstyle->name, $maxbuttons_border_styles, $bstyle->value);
 
 
191
  $admin->addField($bstyle, 'start', 'end');
192
 
193
  // Border width
198
  $bwidth->value = maxUtils::strip_px( maxBlocks::getValue('border_width') );
199
  $bwidth->min = 0;
200
  $bwidth->inputclass = 'tiny';
 
 
201
  $admin->addField($bwidth, 'start', 'end');
202
 
203
  // Border Color
211
  $bcolor->copypos = 'right';
212
  $bcolor->left_title = $color_copy_self;
213
  $bcolor->right_title = $color_copy_move;
 
 
214
  $admin->addField($bcolor ,'start');
215
 
216
  // Border Color Hover
224
  $bcolor_hover->copypos = 'left';
225
  $bcolor_hover->left_title = $color_copy_move;
226
  $bcolor_hover->right_title = $color_copy_self;
 
 
227
  $admin->addField($bcolor_hover, '', 'end');
228
 
229
  // Shadow offset left
233
  $bshadow->id = $bshadow->name;
234
  $bshadow->value = maxUtils::strip_px( maxBlocks::getValue('box_shadow_offset_left') );
235
  $bshadow->inputclass = 'tiny';
 
 
236
  $admin->addField($bshadow, 'start');
237
 
238
  // Shadow offset top
242
  $bshadow->id = $bshadow->name;
243
  $bshadow->value = maxUtils::strip_px( maxBlocks::getValue('box_shadow_offset_top') );
244
  $bshadow->inputclass = 'tiny';
 
 
245
  $admin->addField($bshadow, '', 'end');
246
 
247
  // Shadow width
251
  $bshadow->id = $bshadow->name;
252
  $bshadow->value = maxUtils::strip_px( maxBlocks::getValue('box_shadow_width') );
253
  $bshadow->inputclass = 'tiny';
254
+ $bshadow->min = 0;
 
255
  $admin->addField($bshadow, 'start', '');
256
 
257
  $bspread = new maxField('number');
260
  $bspread->id = 'box_shadow_spread';
261
  $bspread->name = $bspread->id;
262
  $bspread->inputclass = 'tiny';
 
 
263
  $admin->addField($bspread, '', 'end');
264
 
265
  // Border Shadow Color
273
  $scolor->copypos = 'right';
274
  $scolor->left_title = $color_copy_self;
275
  $scolor->right_title = $color_copy_move;
 
 
276
  $admin->addField($scolor, 'start');
277
 
278
  // Border Shadow Color Hover
286
  $scolor_hover->copypos = 'left';
287
  $scolor_hover->left_title = $color_copy_self;
288
  $scolor_hover->right_title = $color_copy_move;
 
 
289
  $admin->addField($scolor_hover, '','end');
290
 
291
+ $this->sidebar();
292
+ $endblock = new maxField('block_end');
293
+ $admin->addField($endblock);
294
 
295
+ } // admin fields
 
 
 
296
 
297
  } // class
298
 
blocks/color.php CHANGED
@@ -83,7 +83,16 @@ class colorBlock extends maxBlock
83
  $this->data[$this->blockname][$field] = $value;
84
  }
85
 
86
- return parent::parse_css($css, $mode);
 
 
 
 
 
 
 
 
 
87
  }
88
 
89
 
83
  $this->data[$this->blockname][$field] = $value;
84
  }
85
 
86
+ $css = parent::parse_css($css, $mode);
87
+
88
+ $border_width = maxBlocks::getValue('border_width');
89
+ if ( intval($border_width) == 0) // if no border, then don't output other border properties.
90
+ {
91
+ unset($css['maxbutton']['normal']['border-color']);
92
+ unset($css['maxbutton']['hover']['border-color']);
93
+ }
94
+
95
+ return $css;
96
  }
97
 
98
 
blocks/container.php CHANGED
@@ -102,14 +102,15 @@ class containerBlock extends maxBlock
102
  $data = $this->data[$this->blockname];
103
  $admin = MB()->getClass('admin');
104
 
105
- foreach($this->fields as $field => $options)
106
  {
107
  $default = (isset($options["default"])) ? $options["default"] : '';
108
  $$field = (isset($data[$field])) ? $data[$field] : $default;
109
  ${$field . "_default"} = $default;
110
 
111
 
112
- }
 
113
  $maxbuttons_container_alignments = array(
114
  '' => '',
115
  'display: inline-block' => 'display: inline-block',
@@ -119,11 +120,11 @@ class containerBlock extends maxBlock
119
 
120
  $icon_url = MB()->get_plugin_url() . 'images/icons/' ;
121
 
122
- ?>
123
- <div class="option-container mb_tab">
124
- <div class="title"><?php _e('Container', 'maxbuttons') ?></div>
125
- <div class="inside">
126
- <?php
127
 
128
  $u_container = new maxField('switch');
129
  $u_container->label = __('Use Container', 'maxbuttons');
@@ -132,17 +133,10 @@ class containerBlock extends maxBlock
132
  $u_container->value = 1;
133
 
134
  $u_container->checked = checked( maxBlocks::getValue('container_enabled'), 1, false);
135
- //$u_container->output('start', 'end');
136
-
137
  $admin->addField($u_container, 'start', 'end');
138
 
139
  $fspacer = new maxField('spacer');
140
- // $fspacer->id = 'fspace';
141
- //$fspacer->name = $fspacer->id;
142
- //$fspacer
143
  $fspacer->name = '';
144
- // $fspacer->output('start');
145
-
146
  $admin->addField($fspacer, 'start');
147
 
148
  $wrap_cont = new maxField('switch');
@@ -151,8 +145,6 @@ class containerBlock extends maxBlock
151
  $wrap_cont->value = 1;
152
  $wrap_cont->checked = checked( maxBlocks::getValue('container_center_div_wrap'), 1, false);
153
  $wrap_cont->label = __('Center the container', 'maxbuttons');
154
- //$wrap_cont->output('','end');
155
-
156
  $admin->addField($wrap_cont, '', 'end');
157
 
158
  $container_width = new maxField('number');
@@ -162,8 +154,6 @@ class containerBlock extends maxBlock
162
  $container_width->value = maxUtils::strip_px( maxBlocks::getValue('container_width') );
163
  $container_width->label = __('Width', 'maxbuttons');
164
  $container_width->inputclass = 'small';
165
- // $container_width->output('start','end');
166
-
167
  $admin->addField($container_width, 'start', 'end');
168
 
169
  // Margin - trouble
@@ -175,9 +165,6 @@ class containerBlock extends maxBlock
175
  $ptop->inputclass = 'tiny';
176
  $ptop->before_input = '<img src="' . $icon_url . 'p_top.png" title="' . __("Margin Top","maxbuttons") . '" >';
177
  $ptop->value = maxUtils::strip_px(maxBlocks::getValue('container_margin_top'));
178
-
179
- // $ptop->output('start');
180
-
181
  $admin->addField($ptop, 'start');
182
 
183
  $pright = new maxField('number');
@@ -187,8 +174,6 @@ class containerBlock extends maxBlock
187
  $pright->inputclass = 'tiny';
188
  $pright->before_input = '<img src="' . $icon_url . 'p_right.png" class="icon padding" title="' . __("Margin Right","maxbuttons") . '" >';
189
  $pright->value = maxUtils::strip_px(maxBlocks::getValue('container_margin_right'));
190
-
191
- // $pright->output();
192
  $admin->addField($pright);
193
 
194
  $pbottom = new maxField('number');
@@ -198,9 +183,7 @@ class containerBlock extends maxBlock
198
  $pbottom->inputclass = 'tiny';
199
  $pbottom->before_input = '<img src="' . $icon_url . 'p_bottom.png" class="icon padding" title="' . __("Margin Bottom","maxbuttons") . '" >';
200
  $pbottom->value = maxUtils::strip_px(maxBlocks::getValue('container_margin_bottom'));
201
-
202
- // $pbottom->output();
203
- $admin->addField($pbottom);
204
 
205
  $pleft = new maxField('number');
206
  $pleft->id = 'container_margin_left';
@@ -209,8 +192,6 @@ class containerBlock extends maxBlock
209
  $pleft->inputclass = 'tiny';
210
  $pleft->before_input = '<img src="' . $icon_url . 'p_left.png" class="icon padding" title="' . __("Margin Left","maxbuttons") . '" >';
211
  $pleft->value = maxUtils::strip_px(maxBlocks::getValue('container_margin_left'));
212
-
213
- //$pleft->output('','end');
214
  $admin->addField($pleft, '', 'end');
215
 
216
  $align = new maxField('option_select');
@@ -218,18 +199,14 @@ class containerBlock extends maxBlock
218
  $align->name = 'container_alignment';
219
  $align->id = $align->name;
220
  $align->selected = maxBlocks::getValue('container_alignment');
221
- //$align->setDefault(maxBlocks::getDefault('container_alignment'));
222
  $align->options = $maxbuttons_container_alignments; // maxUtils::selectify($align->name, $maxbuttons_container_alignments, $align->value);
223
-
224
  $admin->addField($align, 'start', 'end');
225
 
226
- $admin->display_fields();
227
- ?>
 
228
 
229
- </div>
230
- </div>
231
- <?php
232
- } // admin_fields
233
 
234
  } // class
235
 
102
  $data = $this->data[$this->blockname];
103
  $admin = MB()->getClass('admin');
104
 
105
+ /*foreach($this->fields as $field => $options)
106
  {
107
  $default = (isset($options["default"])) ? $options["default"] : '';
108
  $$field = (isset($data[$field])) ? $data[$field] : $default;
109
  ${$field . "_default"} = $default;
110
 
111
 
112
+ } */
113
+
114
  $maxbuttons_container_alignments = array(
115
  '' => '',
116
  'display: inline-block' => 'display: inline-block',
120
 
121
  $icon_url = MB()->get_plugin_url() . 'images/icons/' ;
122
 
123
+ $start_block = new maxField('block_start');
124
+ $start_block->name = __('container', 'maxbuttons');
125
+ $start_block->label = __('Container', 'maxbuttons');
126
+ $admin->addField($start_block);
127
+
128
 
129
  $u_container = new maxField('switch');
130
  $u_container->label = __('Use Container', 'maxbuttons');
133
  $u_container->value = 1;
134
 
135
  $u_container->checked = checked( maxBlocks::getValue('container_enabled'), 1, false);
 
 
136
  $admin->addField($u_container, 'start', 'end');
137
 
138
  $fspacer = new maxField('spacer');
 
 
 
139
  $fspacer->name = '';
 
 
140
  $admin->addField($fspacer, 'start');
141
 
142
  $wrap_cont = new maxField('switch');
145
  $wrap_cont->value = 1;
146
  $wrap_cont->checked = checked( maxBlocks::getValue('container_center_div_wrap'), 1, false);
147
  $wrap_cont->label = __('Center the container', 'maxbuttons');
 
 
148
  $admin->addField($wrap_cont, '', 'end');
149
 
150
  $container_width = new maxField('number');
154
  $container_width->value = maxUtils::strip_px( maxBlocks::getValue('container_width') );
155
  $container_width->label = __('Width', 'maxbuttons');
156
  $container_width->inputclass = 'small';
 
 
157
  $admin->addField($container_width, 'start', 'end');
158
 
159
  // Margin - trouble
165
  $ptop->inputclass = 'tiny';
166
  $ptop->before_input = '<img src="' . $icon_url . 'p_top.png" title="' . __("Margin Top","maxbuttons") . '" >';
167
  $ptop->value = maxUtils::strip_px(maxBlocks::getValue('container_margin_top'));
 
 
 
168
  $admin->addField($ptop, 'start');
169
 
170
  $pright = new maxField('number');
174
  $pright->inputclass = 'tiny';
175
  $pright->before_input = '<img src="' . $icon_url . 'p_right.png" class="icon padding" title="' . __("Margin Right","maxbuttons") . '" >';
176
  $pright->value = maxUtils::strip_px(maxBlocks::getValue('container_margin_right'));
 
 
177
  $admin->addField($pright);
178
 
179
  $pbottom = new maxField('number');
183
  $pbottom->inputclass = 'tiny';
184
  $pbottom->before_input = '<img src="' . $icon_url . 'p_bottom.png" class="icon padding" title="' . __("Margin Bottom","maxbuttons") . '" >';
185
  $pbottom->value = maxUtils::strip_px(maxBlocks::getValue('container_margin_bottom'));
186
+ $admin->addField($pbottom);
 
 
187
 
188
  $pleft = new maxField('number');
189
  $pleft->id = 'container_margin_left';
192
  $pleft->inputclass = 'tiny';
193
  $pleft->before_input = '<img src="' . $icon_url . 'p_left.png" class="icon padding" title="' . __("Margin Left","maxbuttons") . '" >';
194
  $pleft->value = maxUtils::strip_px(maxBlocks::getValue('container_margin_left'));
 
 
195
  $admin->addField($pleft, '', 'end');
196
 
197
  $align = new maxField('option_select');
199
  $align->name = 'container_alignment';
200
  $align->id = $align->name;
201
  $align->selected = maxBlocks::getValue('container_alignment');
 
202
  $align->options = $maxbuttons_container_alignments; // maxUtils::selectify($align->name, $maxbuttons_container_alignments, $align->value);
 
203
  $admin->addField($align, 'start', 'end');
204
 
205
+ $this->sidebar();
206
+ $endblock = new maxField('block_end');
207
+ $admin->addField($endblock);
208
 
209
+ } // admin_fields
 
 
 
210
 
211
  } // class
212
 
blocks/gradient.php CHANGED
@@ -46,12 +46,13 @@ class gradientBlock extends maxBlock
46
  public function admin_fields()
47
  {
48
  $data = $this->data[$this->blockname];
 
 
 
 
 
 
49
 
50
- ?>
51
- <div class="mb_tab option-container gradient-options">
52
- <div class="title"><?php _e('Background', 'maxbuttons') ?></div>
53
- <div class="inside">
54
- <?php
55
 
56
  $g_start = maxBlocks::getColorValue('gradient_start_color');
57
  $g_end = maxBlocks::getColorValue('gradient_end_color');
@@ -69,12 +70,12 @@ class gradientBlock extends maxBlock
69
 
70
  }
71
 
 
72
  $condition = array('target' => 'use_gradient', 'values' => 'checked');
73
  $gradient_conditional = htmlentities(json_encode($condition));
74
 
75
  $color_copy_self = __("Replace color from other field", "maxbuttons");
76
  $color_copy_move = __("Copy Color to other field", "maxbuttons");
77
- // $fspacer->output('start');
78
 
79
  $useg = new maxField('switch');
80
  $useg->label = __('Use Gradients', 'maxbuttons');
@@ -82,26 +83,31 @@ class gradientBlock extends maxBlock
82
  $useg->id = $useg->name;
83
  $useg->value = '1';
84
  $useg->checked = checked($use_gradient, 1, false);
85
- $useg->output ('start','end');
86
 
87
  // Spacer
88
  $fspacer = new maxField('spacer');
89
  $fspacer->label = '&nbsp;';
90
  $fspacer->name = 'gradient_head';
91
- $fspacer->output('start');
 
 
92
 
93
  // Spacer
94
- //$fspacer = new maxField('spacer');
95
  $fspacer->label = __('Start','maxbuttons');
96
  $fspacer->name = 'gradient_start';
97
- $fspacer->output('');
 
98
 
99
  // Spacer
100
- //$fspacer = new maxField('spacer');
101
  $fspacer->label = __('End','maxbuttons');
102
  $fspacer->name = 'gradient_end';
 
103
  $fspacer->conditional = $gradient_conditional;
104
- $fspacer->output('', 'end');
 
105
 
106
  // Background Color
107
  $color = new maxField('color');
@@ -116,7 +122,7 @@ class gradientBlock extends maxBlock
116
  $color->right_title = $color_copy_move;
117
  $color->copypos = 'right';
118
 
119
- $color->output('start');
120
 
121
  // Background Color (End Gradient)
122
  $ecolor = new maxField('color');
@@ -130,8 +136,8 @@ class gradientBlock extends maxBlock
130
  $ecolor->left_title = $color_copy_move;
131
  $ecolor->right_title = $color_copy_self;
132
  $ecolor->conditional = $gradient_conditional;
133
- $ecolor->output('', 'end');
134
 
 
135
 
136
  // Background Color Hover
137
  $color_hover = new maxField('color');
@@ -146,7 +152,7 @@ class gradientBlock extends maxBlock
146
  $color_hover->right_title = $color_copy_move;
147
  $color_hover->copypos = 'right';
148
 
149
- $color_hover->output('start','');
150
 
151
  // Background Color Hover
152
  $ecolor_hover = new maxField('color');
@@ -161,29 +167,22 @@ class gradientBlock extends maxBlock
161
  $ecolor_hover->left_title = $color_copy_move;
162
  $ecolor_hover->right_title = $color_copy_self;
163
  $ecolor_hover->conditional = $gradient_conditional;
164
- $ecolor_hover->output('','end');
165
 
166
- ?>
167
 
168
- <!--
169
- <p><a href='#'>See more options</a></p>
170
- -->
171
- <div id='gradient_fold' class="fold">
172
 
173
- <?php
174
  $startop = new maxField('number');
175
  $startop->label = __('Normal Opacity','maxbuttons');
176
  $startop->name = 'gradient_start_opacity';
177
  $startop->id = $startop->name;
178
  $startop->value = maxUtils::strip_px( maxBlocks::getValue('gradient_start_opacity') );
179
- //$startop->setDefault(maxBlocks::getDefault('gradient_start_opacity'));
180
  $startop->min = 1;
181
  $startop->max = 100;
182
  $startop->inputclass = 'small';
183
- $startop->output('start','');
 
184
 
185
  $endop = new maxField('number');
186
- // $endop->label = __('Normal Opacity','maxbuttons');
187
  $endop->name = 'gradient_end_opacity';
188
  $endop->id = $endop->name;
189
  $endop->value = maxUtils::strip_px( maxBlocks::getValue('gradient_end_opacity') );
@@ -192,7 +191,8 @@ class gradientBlock extends maxBlock
192
  $endop->max = 100;
193
  $endop->inputclass = 'small';
194
  $endop->conditional = $gradient_conditional;
195
- $endop->output('','end');
 
196
 
197
  $startop = new maxField('number');
198
  $startop->label = __('Hover opacity','maxbuttons');
@@ -203,8 +203,7 @@ class gradientBlock extends maxBlock
203
  $startop->min = 1;
204
  $startop->max = 100;
205
  $startop->inputclass = 'small';
206
-
207
- $startop->output('start','');
208
 
209
  $endop = new maxField('number');
210
  // $endop->label = __('Hover Opacity','maxbuttons');
@@ -216,9 +215,7 @@ class gradientBlock extends maxBlock
216
  $endop->max = 100;
217
  $endop->inputclass = 'small';
218
  $endop->conditional = $gradient_conditional;
219
-
220
- $endop->output('','end');
221
-
222
 
223
  $stop = new maxField('number');
224
  $stop->label = __('Gradient stop','maxbuttons');
@@ -229,17 +226,18 @@ class gradientBlock extends maxBlock
229
  $stop->min = 1;
230
  $stop->max = 99;
231
  $stop->inputclass = 'small';
232
- $stop->output('start','end');
233
- ?>
234
 
 
235
 
236
- </div><!-- // fold -->
237
 
238
- </div>
239
- </div>
240
- <?php
 
241
  } // admin_fields
242
 
 
243
  } // class
244
 
245
 
46
  public function admin_fields()
47
  {
48
  $data = $this->data[$this->blockname];
49
+ $admin = MB()->getClass('admin');
50
+
51
+ $start_block = new maxField('block_start');
52
+ $start_block->name = __('gradient-options', 'maxbuttons');
53
+ $start_block->label = __('Background', 'maxbuttons');
54
+ $admin->addField($start_block);
55
 
 
 
 
 
 
56
 
57
  $g_start = maxBlocks::getColorValue('gradient_start_color');
58
  $g_end = maxBlocks::getColorValue('gradient_end_color');
70
 
71
  }
72
 
73
+
74
  $condition = array('target' => 'use_gradient', 'values' => 'checked');
75
  $gradient_conditional = htmlentities(json_encode($condition));
76
 
77
  $color_copy_self = __("Replace color from other field", "maxbuttons");
78
  $color_copy_move = __("Copy Color to other field", "maxbuttons");
 
79
 
80
  $useg = new maxField('switch');
81
  $useg->label = __('Use Gradients', 'maxbuttons');
83
  $useg->id = $useg->name;
84
  $useg->value = '1';
85
  $useg->checked = checked($use_gradient, 1, false);
86
+ $admin->addField($useg, 'start', 'end');
87
 
88
  // Spacer
89
  $fspacer = new maxField('spacer');
90
  $fspacer->label = '&nbsp;';
91
  $fspacer->name = 'gradient_head';
92
+ $fspacer->id = $fspacer->name;
93
+ $admin->addField($fspacer, 'start');
94
+
95
 
96
  // Spacer
97
+ $fspacer = clone $fspacer;
98
  $fspacer->label = __('Start','maxbuttons');
99
  $fspacer->name = 'gradient_start';
100
+ $fspacer->id = $fspacer->name;
101
+ $admin->addField($fspacer, '','');
102
 
103
  // Spacer
104
+ $fspacer = clone $fspacer;
105
  $fspacer->label = __('End','maxbuttons');
106
  $fspacer->name = 'gradient_end';
107
+ $fspacer->id = $fspacer->name;
108
  $fspacer->conditional = $gradient_conditional;
109
+ $admin->addField($fspacer, '','end');
110
+
111
 
112
  // Background Color
113
  $color = new maxField('color');
122
  $color->right_title = $color_copy_move;
123
  $color->copypos = 'right';
124
 
125
+ $admin->addField($color, 'start');
126
 
127
  // Background Color (End Gradient)
128
  $ecolor = new maxField('color');
136
  $ecolor->left_title = $color_copy_move;
137
  $ecolor->right_title = $color_copy_self;
138
  $ecolor->conditional = $gradient_conditional;
 
139
 
140
+ $admin->addField($ecolor, '', 'end');
141
 
142
  // Background Color Hover
143
  $color_hover = new maxField('color');
152
  $color_hover->right_title = $color_copy_move;
153
  $color_hover->copypos = 'right';
154
 
155
+ $admin->addField($color_hover, 'start', '');
156
 
157
  // Background Color Hover
158
  $ecolor_hover = new maxField('color');
167
  $ecolor_hover->left_title = $color_copy_move;
168
  $ecolor_hover->right_title = $color_copy_self;
169
  $ecolor_hover->conditional = $gradient_conditional;
 
170
 
171
+ $admin->addField($ecolor_hover, '', 'end');
172
 
 
 
 
 
173
 
 
174
  $startop = new maxField('number');
175
  $startop->label = __('Normal Opacity','maxbuttons');
176
  $startop->name = 'gradient_start_opacity';
177
  $startop->id = $startop->name;
178
  $startop->value = maxUtils::strip_px( maxBlocks::getValue('gradient_start_opacity') );
 
179
  $startop->min = 1;
180
  $startop->max = 100;
181
  $startop->inputclass = 'small';
182
+
183
+ $admin->addField($startop, 'start');
184
 
185
  $endop = new maxField('number');
 
186
  $endop->name = 'gradient_end_opacity';
187
  $endop->id = $endop->name;
188
  $endop->value = maxUtils::strip_px( maxBlocks::getValue('gradient_end_opacity') );
191
  $endop->max = 100;
192
  $endop->inputclass = 'small';
193
  $endop->conditional = $gradient_conditional;
194
+
195
+ $admin->addField($endop, '', 'end');
196
 
197
  $startop = new maxField('number');
198
  $startop->label = __('Hover opacity','maxbuttons');
203
  $startop->min = 1;
204
  $startop->max = 100;
205
  $startop->inputclass = 'small';
206
+ $admin->addField($startop, 'start');
 
207
 
208
  $endop = new maxField('number');
209
  // $endop->label = __('Hover Opacity','maxbuttons');
215
  $endop->max = 100;
216
  $endop->inputclass = 'small';
217
  $endop->conditional = $gradient_conditional;
218
+ $admin->addField($endop, '', 'end');
 
 
219
 
220
  $stop = new maxField('number');
221
  $stop->label = __('Gradient stop','maxbuttons');
226
  $stop->min = 1;
227
  $stop->max = 99;
228
  $stop->inputclass = 'small';
229
+ $stop->start_conditional = $gradient_conditional;
 
230
 
231
+ $admin->addField($stop, 'start', 'end');
232
 
 
233
 
234
+ $this->sidebar();
235
+ $endblock = new maxField('block_end');
236
+ $admin->addField($endblock);
237
+
238
  } // admin_fields
239
 
240
+
241
  } // class
242
 
243
 
blocks/meta.php CHANGED
@@ -2,122 +2,115 @@
2
  namespace MaxButtons;
3
  defined('ABSPATH') or die('No direct access permitted');
4
 
5
- $blockClass["meta"] = "metaBlock";
6
- $blockOrder[100][] = "meta";
7
 
8
- class metaBlock extends maxBlock
9
  {
10
- protected $blockname = "meta";
11
- protected $fields = array("created" => array("default" => 0),
12
- "modified" => array("default" => 0),
13
  "user_created" => array("default" => ''), // user logged in on creation
14
- "user_modified" => array("default" => ''),
15
- "created_source" => array("default" => 'unknown'), // from editor / pack / collection ?
16
- "user_edited" => array("default" => false), // did a user ever edit this button?
17
- "in_collections" => array("default" => array() ), // map collections this button is in.
18
  "is_virtual" => array("default" => false), // this button is not really in the database
19
- );
20
-
21
-
22
 
23
  /*function __construct()
24
  {
25
  parent::__construct();
26
-
27
  } */
28
-
29
- public function save_fields($data, $post)
30
  {
31
  $data = parent::save_fields($data,$post);
32
-
33
- $blockdata = $data[$this->blockname];
34
- $button_id = isset($data["id"]) ? $data["id"] : 0;
35
- $user = wp_get_current_user();
36
-
37
-
38
- if ($button_id == 0)
39
  {
40
  $blockdata["created"] = time();
41
- $blockdata["user_created"] = $user->user_login;
42
  }
43
-
44
- $blockdata["modified"] = time();
45
  $blockdata["user_modified"] = $user->user_login;
46
-
47
 
48
- $data[$this->blockname] = $blockdata;
49
-
50
- return $data;
 
51
  }
52
 
53
-
54
- public function admin_fields()
55
  {
56
- //return false;
57
- $data = (isset($this->data[$this->blockname]) && is_array($this->data[$this->blockname])) ? $this->data[$this->blockname] : array();
58
-
59
  foreach($this->fields as $field => $options)
60
- {
61
- $default = (isset($options["default"])) ? $options["default"] : '';
62
  $$field = (isset($data[$field])) ? $data[$field] : $default;
63
- ${$field . "_default"} = $default;
64
-
65
  }
66
 
67
-
68
- if(! isset($data["id"]) || $data["id"] == 0)
69
  $created_source = 'editor'; // button born at the editor
70
-
71
-
72
  ?>
73
- <input type="hidden" name="created" value="<?php echo $created ?>">
74
- <input type="hidden" name="user_created" value="<?php echo $user_created ?>">
75
-
76
- <input type='hidden' name='created_source' value="<?php echo $created_source ?>">
77
  <input type='hidden' name='user_edited' value='true'>
78
-
79
  <?php if (is_array($in_collections)) {
80
- foreach ($in_collections as $collection_id)
81
  {
82
  ?>
83
- <input type="hidden" name="in_collections[]" value="<?php echo $collection_id ?>">
84
  <?php
85
-
86
- }
87
-
88
-
89
- } ?>
90
- <input type="hidden" name="is_virtual" value="<?php echo $is_virtual; ?>">
91
 
 
92
 
 
 
93
 
94
-
95
  <?php
96
  if (defined("MAXBUTTONS_DEBUG") && MAXBUTTONS_DEBUG):
97
 
98
  ?>
99
  <div class="option-container mb_tab">
100
  <div class="title"><?php _e('Meta', 'maxbuttons') ?></div>
101
- <div class="inside">
102
- <?php foreach($data as $key => $val) {
103
  if (! is_array($val))
104
  {
105
  $try_json = json_decode($val);
106
- if (! is_null($try_json))
107
  $val = $try_json;
108
  }
109
- echo "<div class='option'> <label>$key</label>";
110
- echo "<div>" . print_r($val,true) . "&nbsp;</div></div>";
111
- }
112
  ?>
113
 
114
-
115
  </div>
116
  </div>
117
- <?php
118
- endif;
119
  } // admin_display
120
-
121
- } // class
122
-
123
  ?>
2
  namespace MaxButtons;
3
  defined('ABSPATH') or die('No direct access permitted');
4
 
5
+ $blockClass["meta"] = "metaBlock";
6
+ $blockOrder[100][] = "meta";
7
 
8
+ class metaBlock extends maxBlock
9
  {
10
+ protected $blockname = "meta";
11
+ protected $fields = array("created" => array("default" => 0),
12
+ "modified" => array("default" => 0),
13
  "user_created" => array("default" => ''), // user logged in on creation
14
+ "user_modified" => array("default" => ''),
15
+ "created_source" => array("default" => 'unknown'), // from editor / pack / collection ?
16
+ "user_edited" => array("default" => false), // did a user ever edit this button?
17
+ "in_collections" => array("default" => array() ), // map collections this button is in.
18
  "is_virtual" => array("default" => false), // this button is not really in the database
19
+ );
20
+
21
+
22
 
23
  /*function __construct()
24
  {
25
  parent::__construct();
26
+
27
  } */
28
+
29
+ public function save_fields($data, $post)
30
  {
31
  $data = parent::save_fields($data,$post);
32
+
33
+ $blockdata = $data[$this->blockname];
34
+ $button_id = isset($data["id"]) ? $data["id"] : 0;
35
+ $user = wp_get_current_user();
36
+
37
+
38
+ if ($button_id == 0)
39
  {
40
  $blockdata["created"] = time();
41
+ $blockdata["user_created"] = $user->user_login;
42
  }
43
+
44
+ $blockdata["modified"] = time();
45
  $blockdata["user_modified"] = $user->user_login;
 
46
 
47
+
48
+ $data[$this->blockname] = $blockdata;
49
+
50
+ return $data;
51
  }
52
 
53
+
54
+ public function admin_fields()
55
  {
56
+ //return false;
57
+ $data = (isset($this->data[$this->blockname]) && is_array($this->data[$this->blockname])) ? $this->data[$this->blockname] : array();
58
+
59
  foreach($this->fields as $field => $options)
60
+ {
61
+ $default = (isset($options["default"])) ? $options["default"] : '';
62
  $$field = (isset($data[$field])) ? $data[$field] : $default;
63
+ ${$field . "_default"} = $default;
64
+
65
  }
66
 
67
+ if(! isset($data["id"]) || $data["id"] == 0)
 
68
  $created_source = 'editor'; // button born at the editor
 
 
69
  ?>
70
+ <input type="hidden" name="created" value="<?php echo $created ?>">
71
+ <input type="hidden" name="user_created" value="<?php echo $user_created ?>">
72
+
73
+ <input type='hidden' name='created_source' value="<?php echo $created_source ?>">
74
  <input type='hidden' name='user_edited' value='true'>
75
+
76
  <?php if (is_array($in_collections)) {
77
+ foreach ($in_collections as $collection_id)
78
  {
79
  ?>
80
+ <input type="hidden" name="in_collections[]" value="<?php echo $collection_id ?>">
81
  <?php
 
 
 
 
 
 
82
 
83
+ }
84
 
85
+ } ?>
86
+ <input type="hidden" name="is_virtual" value="<?php echo $is_virtual; ?>">
87
 
 
88
  <?php
89
  if (defined("MAXBUTTONS_DEBUG") && MAXBUTTONS_DEBUG):
90
 
91
  ?>
92
  <div class="option-container mb_tab">
93
  <div class="title"><?php _e('Meta', 'maxbuttons') ?></div>
94
+ <div class="inside">
95
+ <?php foreach($data as $key => $val) {
96
  if (! is_array($val))
97
  {
98
  $try_json = json_decode($val);
99
+ if (! is_null($try_json))
100
  $val = $try_json;
101
  }
102
+ echo "<div class='option'> <label>$key</label>";
103
+ echo "<div>" . print_r($val,true) . "&nbsp;</div></div>";
104
+ }
105
  ?>
106
 
107
+
108
  </div>
109
  </div>
110
+ <?php
111
+ endif;
112
  } // admin_display
113
+
114
+ } // class
115
+
116
  ?>
blocks/text.php CHANGED
@@ -68,7 +68,6 @@ class textBlock extends maxBlock
68
  {
69
  parent::__construct();
70
  $this->fields["text"]["default"] = __("YOUR TEXT","maxbuttons");
71
-
72
  }
73
 
74
  public function map_fields($map)
@@ -111,20 +110,25 @@ class textBlock extends maxBlock
111
  public function admin_fields()
112
  {
113
  $data = $this->data[$this->blockname];
114
- foreach($this->fields as $field => $options)
 
 
115
  {
116
  $default = (isset($options["default"])) ? $options["default"] : '';
117
  $$field = (isset($data[$field])) ? $data[$field] : $default;
118
  ${$field . "_default"} = $default;
119
- }
120
 
121
  $color_copy_self = __("Replace color from other field", "maxbuttons");
122
  $color_copy_move = __("Copy Color to other field", "maxbuttons");
123
- ?>
124
- <div class="mb_tab option-container">
125
- <div class="title"><?php _e('Text Shadow', 'maxbuttons') ?></div>
126
- <div class="inside text">
127
- <?php
 
 
 
128
  // Shadow offset left
129
  $field_shadow = new maxField('number') ;
130
  $field_shadow->label = __('Shadow Offset Left', 'maxbuttons');
@@ -132,7 +136,7 @@ class textBlock extends maxBlock
132
  $field_shadow->id = 'text_shadow_offset_left';
133
  $field_shadow->name = $field_shadow->id;
134
  $field_shadow->inputclass = 'tiny';
135
- $field_shadow->output('start');
136
 
137
  // Shadow offset top
138
  $field_shadow = new maxField('number') ;
@@ -141,7 +145,7 @@ class textBlock extends maxBlock
141
  $field_shadow->id = 'text_shadow_offset_top';
142
  $field_shadow->name = $field_shadow->id;
143
  $field_shadow->inputclass = 'tiny';
144
- $field_shadow->output('','end');
145
 
146
  // Shadow width
147
  $field_shadow = new maxField('number') ;
@@ -151,7 +155,7 @@ class textBlock extends maxBlock
151
  $field_shadow->min = 0;
152
  $field_shadow->name = $field_shadow->id;
153
  $field_shadow->inputclass = 'tiny';
154
- $field_shadow->output('start','end');
155
 
156
  // Text Color
157
  $fshadow = new maxField('color');
@@ -164,7 +168,7 @@ class textBlock extends maxBlock
164
  $fshadow->copypos = 'right';
165
  $fshadow->left_title = $color_copy_self;
166
  $fshadow->right_title = $color_copy_move;
167
- $fshadow->output('start');
168
 
169
  // Text Color Hover
170
  $fshadow_hover = new maxField('color');
@@ -177,12 +181,13 @@ class textBlock extends maxBlock
177
  $fshadow_hover->copypos = 'left';
178
  $fshadow_hover->left_title = $color_copy_move;
179
  $fshadow_hover->right_title = $color_copy_self;
180
- $fshadow_hover->output('','end');
181
- ?>
 
 
 
182
 
183
- </div>
184
- </div>
185
- <?php } // admin fields
186
  } // class
187
 
188
  ?>
68
  {
69
  parent::__construct();
70
  $this->fields["text"]["default"] = __("YOUR TEXT","maxbuttons");
 
71
  }
72
 
73
  public function map_fields($map)
110
  public function admin_fields()
111
  {
112
  $data = $this->data[$this->blockname];
113
+ $admin = MB()->getClass('admin');
114
+
115
+ /* foreach($this->fields as $field => $options)
116
  {
117
  $default = (isset($options["default"])) ? $options["default"] : '';
118
  $$field = (isset($data[$field])) ? $data[$field] : $default;
119
  ${$field . "_default"} = $default;
120
+ } */
121
 
122
  $color_copy_self = __("Replace color from other field", "maxbuttons");
123
  $color_copy_move = __("Copy Color to other field", "maxbuttons");
124
+
125
+
126
+ $start_block = new maxField('block_start');
127
+ $start_block->name = __('shadow', 'maxbuttons');
128
+ $start_block->label = __('Text Shadow', 'maxbuttons');
129
+ $admin->addField($start_block);
130
+
131
+
132
  // Shadow offset left
133
  $field_shadow = new maxField('number') ;
134
  $field_shadow->label = __('Shadow Offset Left', 'maxbuttons');
136
  $field_shadow->id = 'text_shadow_offset_left';
137
  $field_shadow->name = $field_shadow->id;
138
  $field_shadow->inputclass = 'tiny';
139
+ $admin->addField($field_shadow, 'start');
140
 
141
  // Shadow offset top
142
  $field_shadow = new maxField('number') ;
145
  $field_shadow->id = 'text_shadow_offset_top';
146
  $field_shadow->name = $field_shadow->id;
147
  $field_shadow->inputclass = 'tiny';
148
+ $admin->addField($field_shadow, '', 'end');
149
 
150
  // Shadow width
151
  $field_shadow = new maxField('number') ;
155
  $field_shadow->min = 0;
156
  $field_shadow->name = $field_shadow->id;
157
  $field_shadow->inputclass = 'tiny';
158
+ $admin->addField($field_shadow, 'start', 'end');
159
 
160
  // Text Color
161
  $fshadow = new maxField('color');
168
  $fshadow->copypos = 'right';
169
  $fshadow->left_title = $color_copy_self;
170
  $fshadow->right_title = $color_copy_move;
171
+ $admin->addField($fshadow, 'start');
172
 
173
  // Text Color Hover
174
  $fshadow_hover = new maxField('color');
181
  $fshadow_hover->copypos = 'left';
182
  $fshadow_hover->left_title = $color_copy_move;
183
  $fshadow_hover->right_title = $color_copy_self;
184
+ $admin->addField($fshadow_hover, '', 'end');
185
+
186
+ $this->sidebar();
187
+ $endblock = new maxField('block_end');
188
+ $admin->addField($endblock);
189
 
190
+ } // admin fields
 
 
191
  } // class
192
 
193
  ?>
blocks/tpl/block_end.tpl ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ </div><!-- // inside -->
2
+
3
+ </div> <!-- // blockend -->
blocks/tpl/block_start.tpl ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+
2
+ <div class="mb_tab option-container %%name%%">
3
+ <div class="title">%%label%%</div>
4
+ <div class="inside">
blocks/tpl/number.tpl CHANGED
@@ -11,7 +11,7 @@
11
  {if:disabled} disabled {/if:disabled}
12
  {if:inputclass}class="%%inputclass%%"{/if:inputclass}
13
  />
14
- {if:help}<div class="help fa fa-question-circle "><span>%%help%%</span></div>{/if:help}
15
  {if:error}<p class='error'>%%error%%</p>{/if:error}
16
  {if:warning}<p class='warning'>%%warning%%</p>{/if:warning}
17
  </div>
11
  {if:disabled} disabled {/if:disabled}
12
  {if:inputclass}class="%%inputclass%%"{/if:inputclass}
13
  />
14
+ {if:help}<div class="help dashicons dashicons-info "><span>%%help%%</span></div>{/if:help}
15
  {if:error}<p class='error'>%%error%%</p>{/if:error}
16
  {if:warning}<p class='warning'>%%warning%%</p>{/if:warning}
17
  </div>
blocks/tpl/sidebar_end.tpl ADDED
@@ -0,0 +1,2 @@
 
 
1
+ </div> <!-- inside -->
2
+ </div>
blocks/tpl/sidebar_start.tpl ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ <div class='block_sidebar %%name%%'>
2
+ <div class='open_control' title='Click to open Sidebar'><span>%%label%%</span></div>
3
+ <div class='title'>%%title%%</div>
4
+ <div class='inside'>
classes/admin-class.php CHANGED
@@ -44,7 +44,7 @@ class maxButtonsAdmin
44
 
45
 
46
  // add a maxfield to be displayed on the admin.
47
- public function addfield( $field, $start = '', $end = '')
48
  {
49
  $field_id = isset($field->id) ? $field->id : $field->template . \rand(0,1000);
50
 
@@ -59,6 +59,55 @@ class maxButtonsAdmin
59
  do_action('mb/editor/afterfield/'. $field_id, $field);
60
  }
61
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
  public function getFields()
63
  {
64
  return $this->fields;
44
 
45
 
46
  // add a maxfield to be displayed on the admin.
47
+ public function addfield($field, $start = '', $end = '')
48
  {
49
  $field_id = isset($field->id) ? $field->id : $field->template . \rand(0,1000);
50
 
59
  do_action('mb/editor/afterfield/'. $field_id, $field);
60
  }
61
 
62
+ /** Insert a field before or after a existing field
63
+ *
64
+ * @param String $insert_field Existing field to perform operation on
65
+ * @param Object $field The new field to insert
66
+ * @param String $start Start Template
67
+ * @param String $end End template
68
+ * @param String $op Insert before of after specified insert field
69
+ */
70
+ public function insertField($insert_field, $field, $start = 'start', $end = 'end', $op = 'before')
71
+ {
72
+ $insert_pos = 0;
73
+
74
+ $this->addField($field, $start, $end); // add the field to the array
75
+
76
+ foreach($this->fields as $field_id => $array)
77
+ {
78
+ if ($field_id == $insert_field)
79
+ {
80
+
81
+ break;
82
+ }
83
+ $insert_pos++;
84
+ }
85
+
86
+ // Find inserted field and remove it from array.
87
+ $new_field_id = $field->id;
88
+ $new_field_ar = $this->fields[$new_field_id];
89
+ unset($this->fields[$new_field_id]);
90
+
91
+ // Find position to insert new field
92
+ // Yes this could be more efficient.
93
+ $new_fields = array();
94
+ $i = 0;
95
+ foreach($this->fields as $field_id => $array)
96
+ {
97
+ if ($i == $insert_pos && $op == 'before')
98
+ {
99
+ $new_fields[$new_field_id] = $new_field_ar;
100
+ }
101
+ $new_fields[$field_id] = $array;
102
+ if ($i == $insert_pos && $op == 'after')
103
+ {
104
+ $new_fields[$new_field_id] = $new_field_ar;
105
+ }
106
+ $i++;
107
+ }
108
+ $this->fields = $new_fields;
109
+ }
110
+
111
  public function getFields()
112
  {
113
  return $this->fields;
classes/block.php CHANGED
@@ -21,23 +21,8 @@ abstract class maxBlock
21
  */
22
  function __construct($priority = 10)
23
  {
24
-
25
- // filters for save_post, display etc. Buttons class will the filters.
26
- //add_filter('mb-save-fields', array($this, 'save_fields'),10,2);
27
- //add_action('mb-admin-fields', array($this,'admin_fields' ) );
28
- //add_action('mb-data-load', array($this,'set') );
29
-
30
- //add_filter('mb-parse-button', array($this, 'parse_button'),10,2 );
31
- //add_filter('mb-js-blocks', array($this, 'parse_js'), 10, 2);
32
- //add_filter('mb-parse-element-preview', array($this,'parse_element'), 10,2);
33
-
34
- //add_filter('mb-css-blocks', array($this, 'parse_css'),10,2 );
35
- //add_filter('mb-field-map', array($this, 'map_fields') );
36
-
37
-
38
  $this->fields = apply_filters($this->blockname. "-block-fields",$this->fields);
39
  $this->data[$this->blockname] = array(); //empty init
40
-
41
  }
42
 
43
  /** Save fields runs the POST variable through all blocks
@@ -96,12 +81,28 @@ abstract class maxBlock
96
  }
97
 
98
 
99
- /* Display Block admin interface
100
  *
101
- * Writes admin interface to output.
102
  * @abstract
103
  */
104
  abstract public function admin_fields();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
105
 
106
  /** Parse HTML portion of button
107
  *
@@ -229,26 +230,4 @@ abstract class maxBlock
229
  $this->data = $dataArray;
230
  }
231
 
232
- public function getValue($field)
233
- {
234
- $data = $this->data;
235
- /*foreach($data as $blockname => $fieldname)
236
- {
237
- if ($fieldname == $field)
238
- return $data[$blockname][$fieldname];
239
- }*/
240
-
241
- if (isset($data[$this->blockname][$field]))
242
- {
243
- return $data[$this->blockname][$field];
244
- }
245
-
246
- if (isset($this->fields[$field]['default']))
247
- return $this->fields[$field]['default'];
248
-
249
- // if not found return default
250
- return false;
251
- }
252
-
253
  }
254
- ?>
21
  */
22
  function __construct($priority = 10)
23
  {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  $this->fields = apply_filters($this->blockname. "-block-fields",$this->fields);
25
  $this->data[$this->blockname] = array(); //empty init
 
26
  }
27
 
28
  /** Save fields runs the POST variable through all blocks
81
  }
82
 
83
 
84
+ /* Build the Block admin interface
85
  *
86
+ * Builds admin interface via Admin class ( addfield ). After building, display fields should be called.
87
  * @abstract
88
  */
89
  abstract public function admin_fields();
90
+ public function display_fields()
91
+ {
92
+ $admin = MB()->getClass('admin');
93
+ $admin->display_fields();
94
+
95
+ }
96
+
97
+ /** Adding a sidebar **
98
+ *
99
+ * This function can be used to add a sidebar to the block. The sidebar should be called before display_fields is put out but after the last field
100
+ *
101
+ * */
102
+ public function sidebar()
103
+ {
104
+ return;
105
+ }
106
 
107
  /** Parse HTML portion of button
108
  *
230
  $this->data = $dataArray;
231
  }
232
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
233
  }
 
classes/blocks.php CHANGED
@@ -104,7 +104,6 @@ class maxBlocks
104
 
105
  public static function setData($data)
106
  {
107
-
108
  $new_data = array(); //egalite
109
  if (! is_array($data) || count($data) == 0) // no data
110
  return false;
@@ -143,14 +142,11 @@ class maxBlocks
143
  $value = self::getValue($fieldname);
144
  if (! $value )
145
  return false;
146
-
147
  if (substr($value,0,1) !== '#')
148
  {
149
  $value = '#' . $value;
150
  }
151
-
152
  return $value;
153
-
154
  }
155
 
156
  public static function getDefault($fieldname)
104
 
105
  public static function setData($data)
106
  {
 
107
  $new_data = array(); //egalite
108
  if (! is_array($data) || count($data) == 0) // no data
109
  return false;
142
  $value = self::getValue($fieldname);
143
  if (! $value )
144
  return false;
 
145
  if (substr($value,0,1) !== '#')
146
  {
147
  $value = '#' . $value;
148
  }
 
149
  return $value;
 
150
  }
151
 
152
  public static function getDefault($fieldname)
classes/button.php CHANGED
@@ -46,7 +46,7 @@ class maxButton
46
 
47
  // get all files from blocks map
48
 
49
- // get all blocks via apply filters, do init. Init should not load anything big.
50
  $this->loadBlockClasses();
51
 
52
  }
@@ -60,7 +60,6 @@ class maxButton
60
  // set blocks to the 'block name' that survived.
61
  maxUtils::addTime("Load Block classes");
62
 
63
- //$classes = apply_filters("mb_blockclassesload", $classes);
64
  $class_array = maxBlocks::getBlockClasses();
65
  $classes = array_map(maxUtils::namespaceit('maxUtils::array_namespace'), $class_array );
66
 
@@ -71,14 +70,14 @@ class maxButton
71
  $this->blocks[] = $block;
72
  if (is_admin())
73
  {
 
 
74
  maxBlocks::add($block); // block collection.
75
  }
76
  }
77
 
78
 
79
  $this->clear(); // init
80
- do_action("mb\blockclasses", $class_array);
81
-
82
  }
83
 
84
  /** Simple function to retrieve loaded blocks - * Used by install class */
@@ -149,7 +148,7 @@ class maxButton
149
  {
150
  $block->set($this->data); // reset blocks
151
  }
152
-
153
  }
154
 
155
  function setupData($data)
@@ -183,12 +182,12 @@ class maxButton
183
  $this->status = $data["status"];
184
  $this->description = $this->data["basic"]["description"];
185
 
186
- //do_action('mb-data-load', $this->data);
187
  foreach($this->blocks as $block)
188
  {
189
  $block->set($this->data);
190
  }
191
 
 
192
  maxBlocks::setData($this->data);
193
 
194
 
@@ -294,7 +293,6 @@ class maxButton
294
  {
295
  $css = $block->parse_css($css, $mode);
296
  }
297
- //$css = apply_filters('mb-css-blocks', $css, $mode);
298
 
299
  /* Filter the raw CSS array before compile
300
 
@@ -362,7 +360,6 @@ class maxButton
362
  if ($name != '')
363
  $classes[] = "maxbutton-" . $name;
364
 
365
- //$classes = apply_filters('mb-mainclasses', $classes);
366
  $classes = implode(' ', $classes);
367
 
368
  $domObj = new simple_html_dom();
@@ -388,7 +385,7 @@ class maxButton
388
  foreach($this->blocks as $block)
389
  {
390
  $block->admin_fields();
391
-
392
  }
393
  //do_action('mb-admin-fields' );
394
 
@@ -455,7 +452,6 @@ class maxButton
455
 
456
 
457
  // Apply filters for general data override
458
-
459
  $this->data = apply_filters('mb/button/data_before_display', $this->data, $mode, array('preview' => $preview, 'compile' => $compile) ); // hooks
460
 
461
  if ( $this->load_css == "element" || $args["preview_part"] != "full" || $args["compile"] == true) { // if css output is on element, for to compile - otherwise inline styles will not be loaded.
@@ -559,8 +555,6 @@ class maxButton
559
  {
560
  $map = $block->map_fields($map);
561
  }
562
- //$map = apply_filters("mb-field-map",$map);
563
-
564
 
565
  echo "<script language='javascript'>";
566
  echo "var buttonFieldMap = '" . json_encode($map) . "';" ;
@@ -664,7 +658,6 @@ class maxButton
664
  public function save($post, $savedb = true)
665
  {
666
  $post = stripslashes_deep($post); // don't multiply slashes please.
667
- //$data = apply_filters('mb-save-fields',$this->data, $post);
668
  $data = $this->data;
669
 
670
  foreach($this->blocks as $block)
46
 
47
  // get all files from blocks map
48
 
49
+ // get all blocks classes, do init on the blocks. Init should not load anything big.
50
  $this->loadBlockClasses();
51
 
52
  }
60
  // set blocks to the 'block name' that survived.
61
  maxUtils::addTime("Load Block classes");
62
 
 
63
  $class_array = maxBlocks::getBlockClasses();
64
  $classes = array_map(maxUtils::namespaceit('maxUtils::array_namespace'), $class_array );
65
 
70
  $this->blocks[] = $block;
71
  if (is_admin())
72
  {
73
+ // used for getValue() operators in the Admin Section
74
+
75
  maxBlocks::add($block); // block collection.
76
  }
77
  }
78
 
79
 
80
  $this->clear(); // init
 
 
81
  }
82
 
83
  /** Simple function to retrieve loaded blocks - * Used by install class */
148
  {
149
  $block->set($this->data); // reset blocks
150
  }
151
+ maxBlocks::setData($this->data);
152
  }
153
 
154
  function setupData($data)
182
  $this->status = $data["status"];
183
  $this->description = $this->data["basic"]["description"];
184
 
 
185
  foreach($this->blocks as $block)
186
  {
187
  $block->set($this->data);
188
  }
189
 
190
+
191
  maxBlocks::setData($this->data);
192
 
193
 
293
  {
294
  $css = $block->parse_css($css, $mode);
295
  }
 
296
 
297
  /* Filter the raw CSS array before compile
298
 
360
  if ($name != '')
361
  $classes[] = "maxbutton-" . $name;
362
 
 
363
  $classes = implode(' ', $classes);
364
 
365
  $domObj = new simple_html_dom();
385
  foreach($this->blocks as $block)
386
  {
387
  $block->admin_fields();
388
+ $block->display_fields();
389
  }
390
  //do_action('mb-admin-fields' );
391
 
452
 
453
 
454
  // Apply filters for general data override
 
455
  $this->data = apply_filters('mb/button/data_before_display', $this->data, $mode, array('preview' => $preview, 'compile' => $compile) ); // hooks
456
 
457
  if ( $this->load_css == "element" || $args["preview_part"] != "full" || $args["compile"] == true) { // if css output is on element, for to compile - otherwise inline styles will not be loaded.
555
  {
556
  $map = $block->map_fields($map);
557
  }
 
 
558
 
559
  echo "<script language='javascript'>";
560
  echo "var buttonFieldMap = '" . json_encode($map) . "';" ;
658
  public function save($post, $savedb = true)
659
  {
660
  $post = stripslashes_deep($post); // don't multiply slashes please.
 
661
  $data = $this->data;
662
 
663
  foreach($this->blocks as $block)
classes/maxCSSParser.php CHANGED
@@ -467,7 +467,6 @@ class maxCSSParser
467
  {
468
  case "gradient":
469
  $values = $this->mixin_gradient($mixin_array, $values);
470
-
471
  break;
472
  case "box-shadow":
473
  $values = $this->mixin_boxshadow($mixin_array, $values);
@@ -543,11 +542,16 @@ class maxCSSParser
543
 
544
  $important = ($this->is_important()) ? "!important" : "";
545
 
546
- if ($width == 0 && $left == 0 && $top == 0)
 
 
 
 
547
  return $values;
 
548
 
549
  $values = $this->add_include($values, "box-shadow($left, $top, $width, $color,$spread, false, $important) ");
550
- $values = array_diff_key($values, $results);
551
 
552
  return $values;
553
  }
@@ -567,7 +571,6 @@ class maxCSSParser
567
  }
568
 
569
  $values = $this->add_include($values, "text-shadow ($left,$top,$width,$color $important)");
570
-
571
  $values = array_diff_key($values, $results);
572
 
573
  return $values;
@@ -623,11 +626,6 @@ class maxCSSParser
623
 
624
  }
625
 
626
- function output()
627
- {
628
-
629
-
630
- }
631
 
632
  }
633
 
467
  {
468
  case "gradient":
469
  $values = $this->mixin_gradient($mixin_array, $values);
 
470
  break;
471
  case "box-shadow":
472
  $values = $this->mixin_boxshadow($mixin_array, $values);
542
 
543
  $important = ($this->is_important()) ? "!important" : "";
544
 
545
+ $values = array_diff_key($values, $results); // always remove these fields from CSS since they are not valid.
546
+
547
+ if ($width == 0 && $left == 0 && $top == 0 && $spread == 0)
548
+ {
549
+ $values['box-shadow'] = 'none'; // if no box-shadow, prevent it in total
550
  return $values;
551
+ }
552
 
553
  $values = $this->add_include($values, "box-shadow($left, $top, $width, $color,$spread, false, $important) ");
554
+
555
 
556
  return $values;
557
  }
571
  }
572
 
573
  $values = $this->add_include($values, "text-shadow ($left,$top,$width,$color $important)");
 
574
  $values = array_diff_key($values, $results);
575
 
576
  return $values;
626
 
627
  }
628
 
 
 
 
 
 
629
 
630
  }
631
 
js/maxbuttons-admin.js CHANGED
@@ -3,7 +3,6 @@ var $ = jQuery;
3
  function maxAdmin()
4
  { }
5
 
6
-
7
  maxAdmin.prototype = {
8
  //initialized: false,
9
  colorUpdateTime: true,
@@ -37,8 +36,8 @@ maxAdmin.prototype.init = function () {
37
  // conditionals
38
  $(document).on('reInitConditionals', $.proxy(this.initConditionials, this));
39
  this.initConditionials(); // conditional options
40
- // range inputs
41
 
 
42
  $(document).on('change, input', 'input[type="range"]', $.proxy(this.updateRange, this ));
43
  this.updateRange(null);
44
 
@@ -111,6 +110,9 @@ maxAdmin.prototype.init = function () {
111
  // URL Linker.
112
  $('#url_button').on('click', $.proxy(this.openURLDialog, this) );
113
 
 
 
 
114
  }; // INIT
115
 
116
 
@@ -427,15 +429,11 @@ maxAdmin.prototype.updateGradient = function(hover)
427
  else
428
  var button = $('.output .result').find('a.hover');
429
 
430
-
431
-
432
-
433
  button.css("background", "linear-gradient( rgba(" + start + "," + (startop/100) + ") " + stop + "%," + " rgba(" + end + "," + (endop/100) + ") )");
434
  button.css("background", "-moz-linear-gradient( rgba(" + start + "," + (startop/100) + ") " + stop + "%," + " rgba(" + end + "," + (endop/100) + ") )");
435
  button.css("background", "-o-linear-gradient( rgba(" + start + "," + (startop/100) + ") " + stop + "%," + " rgba(" + end + "," + (endop/100) + ") )");
436
  button.css("background", "-webkit-gradient(linear, left top, left bottom, color-stop(" +stop+ "%, rgba(" + start + "," + (startop/100) + ")), color-stop(1, rgba(" + end + "," + (endop/100) + ") ));");
437
 
438
-
439
  }
440
 
441
  maxAdmin.prototype.hexToRgb = function(hex) {
@@ -893,3 +891,18 @@ maxAdmin.prototype.updateLink = function (e)
893
  wpLink.close();
894
  return false;
895
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3
  function maxAdmin()
4
  { }
5
 
 
6
  maxAdmin.prototype = {
7
  //initialized: false,
8
  colorUpdateTime: true,
36
  // conditionals
37
  $(document).on('reInitConditionals', $.proxy(this.initConditionials, this));
38
  this.initConditionials(); // conditional options
 
39
 
40
+ // range inputs
41
  $(document).on('change, input', 'input[type="range"]', $.proxy(this.updateRange, this ));
42
  this.updateRange(null);
43
 
110
  // URL Linker.
111
  $('#url_button').on('click', $.proxy(this.openURLDialog, this) );
112
 
113
+ // Sidebar slider
114
+ $('.block_sidebar .open_control').on('click', this.toggleSidebar);
115
+
116
  }; // INIT
117
 
118
 
429
  else
430
  var button = $('.output .result').find('a.hover');
431
 
 
 
 
432
  button.css("background", "linear-gradient( rgba(" + start + "," + (startop/100) + ") " + stop + "%," + " rgba(" + end + "," + (endop/100) + ") )");
433
  button.css("background", "-moz-linear-gradient( rgba(" + start + "," + (startop/100) + ") " + stop + "%," + " rgba(" + end + "," + (endop/100) + ") )");
434
  button.css("background", "-o-linear-gradient( rgba(" + start + "," + (startop/100) + ") " + stop + "%," + " rgba(" + end + "," + (endop/100) + ") )");
435
  button.css("background", "-webkit-gradient(linear, left top, left bottom, color-stop(" +stop+ "%, rgba(" + start + "," + (startop/100) + ")), color-stop(1, rgba(" + end + "," + (endop/100) + ") ));");
436
 
 
437
  }
438
 
439
  maxAdmin.prototype.hexToRgb = function(hex) {
891
  wpLink.close();
892
  return false;
893
  }
894
+
895
+ maxAdmin.prototype.toggleSidebar = function(e)
896
+ {
897
+ var target = e.target;
898
+ var $sidebar = $(target).parents('.block_sidebar');
899
+
900
+ if ($sidebar.hasClass('active'))
901
+ {
902
+ $sidebar.removeClass('active');
903
+ }
904
+ else {
905
+ $sidebar.addClass('active');
906
+ }
907
+
908
+ }
js/min/maxbuttons-admin.js CHANGED
@@ -1 +1 @@
1
- function maxAdmin(){}var $=jQuery;maxAdmin.prototype={colorUpdateTime:!0,colorPalettes:!0,fields:null,button_id:null,form_updated:!1,tabs:null},maxAdmin.prototype.init=function(){this.button_id=$('input[name="button_id"]').val(),$(document).on("click",".maxbutton-preview",function(t){t.preventDefault()}),$(document).on("click",".output .preview-toggle",$.proxy(this.toggle_preview,this)),$("#maxbuttons .input-paging").on("change",$.proxy(this.do_paging,this)),$(".manual-toggle").on("click",$.proxy(this.toggleManual,this)),$(".manual-entry").draggable({cancel:"p, li"}),$(document).on("submit","form.mb_ajax_save",$.proxy(this.formAjaxSave,this)),$(document).on("click","[data-buttonaction]",$.proxy(this.button_action,this)),$(document).on("reInitConditionals",$.proxy(this.initConditionials,this)),this.initConditionials(),$(document).on("change, input",'input[type="range"]',$.proxy(this.updateRange,this)),this.updateRange(null),0!=$("#new-button-form").length&&(this.button_id>0&&$("#maxbuttons .mb-message").show(),this.initResponsive(),$("#maxbuttons .output").draggable({cancel:".nodrag"}),$("#maxbuttons .color-field").wpColorPicker({width:300,palettes:this.colorPalettes,change:$.proxy(_.throttle(function(t,e){t.preventDefault();var a=e.color.toString();this.update_color(t,e,a)},200),this)}),$(".input.mbcolor .arrows").on("click",$.proxy(this.copyColor,this)),$("#radius_toggle").on("click",$.proxy(this.toggleRadiusLock,this)),"undefined"!=typeof buttonFieldMap&&(this.fields=$.parseJSON(buttonFieldMap)),$("#maxbuttons input").not(".color-field").on("keyup change",$.proxy(this.update_preview,this)),$("#maxbuttons input.color-field").on("focus",$.proxy(this.select_field,this)),$("#maxbuttons select").on("change",$.proxy(this.update_preview,this)),$(window).on("beforeunload",$.proxy(function(){if(this.form_updated)return maxajax.leave_page},this)),$(document).on("keyup","input",function(t){if(t.keyCode&&13==t.keyCode)return $(":input")[$(":input").index(document.activeElement)+1].focus(),!1}),$(".button-save").click($.proxy(function(){return this.saveIndicator(!1),$("#new-button-form").submit(),!1},this)),$(".shortcode-expand").on("click",this.toggleShortcode),$("#url_button").on("click",$.proxy(this.openURLDialog,this)))},maxAdmin.prototype.repaint_preview=function(){$('.mb_tab input[type="text"]').trigger("change"),$('.mb_tab input[type="number"]').trigger("change"),$(".mb_tab select").trigger("change"),$('.mb_tab input[type="hidden"]').trigger("change"),$('.mb_tab input[type="radio"]:checked').trigger("change"),$('.mb_tab input[type="checkbox"]:checked').trigger("change")},maxAdmin.prototype.update_preview=function(t){t.preventDefault(),this.saveIndicator(!0);var e=$(t.target),a=$(e).data("field");if(void 0===a)o=$(e).attr("id");else var o=a;var n=this.fields[o];if(void 0!==n&&(void 0!==n.css&&(value=e.val(),void 0!==n.css_unit&&-1==value.indexOf(n.css_unit)&&(value+=n.css_unit),e.is(":checkbox")&&!e.is(":checked")&&(value=""),this.putCSS(n,value)),void 0!==n.attr&&$(".output .result").find("a").attr(n.attr,e.val()),void 0!==n.func)){var i=n.func;i.indexOf(".")<0?i="self."+i+"(target)":i+="(target)";try{new Function("target","self",i)(e,this)}catch(t){console.error(t)}}},maxAdmin.prototype.select_field=function(t){$(t.target).select()},maxAdmin.prototype.button_action=function(t){t.preventDefault();var e=$(t.target).data("buttonaction");this.form_updated=!1;var a=$(t.target).data("buttonid"),o=$('input[name="'+e+'_nonce"]').val(),n=maxajax.ajax_url,i={action:"mb_button_action",button_action:e,button_id:a,nonce:o};$.post({url:n,data:i,success:function(t){response=JSON.parse(t),void 0!==response.redirection&&(window.location=response.redirection)},error:function(){console.error("error in button action"+e)}})},maxAdmin.prototype.checkCopyModal=function(t){this.form_updated?t.currentModal.find(".mb-message").show():$(t.currentModal).find(".mb-message").hide()},maxAdmin.prototype.toggle_preview=function(t){$(".output .inner").is(":hidden")?($(".output .inner").show(),$(".output").css("height","auto"),$(".preview .preview-toggle").removeClass("dashicons-arrow-down").addClass("dashicons-arrow-up")):($(".output .inner").hide(),$(".output").css("height","auto"),$(".preview .preview-toggle").removeClass("dashicons-arrow-up").addClass("dashicons-arrow-down"))},maxAdmin.prototype.putCSS=function(t,e,a){var o=".maxbutton";if("hover"==(a=a||"both")?o="a.hover ":"normal"==a&&(o="a.normal "),void 0!==t.csspart){var n=t.csspart.split(",");for(i=0;i<n.length;i++){var r=o+" ."+n[i];$(".output .result").find(r).css(t.css,e)}}else $(".output .result").find(o).css(t.css,e)},maxAdmin.prototype.update_color=function(t,e,a){t.preventDefault(),this.saveIndicator(!0);var o=$(t.target);-1===a.indexOf("#")&&(a="#"+a);var n=o.attr("id");if($("#"+n).val(a),-1!==n.indexOf("box_shadow"))this.updateBoxShadow(o);else if(-1!==n.indexOf("text_shadow"))this.updateTextShadow(o);else if(-1!==n.indexOf("gradient"))-1==n.indexOf("hover")?this.updateGradient():this.updateGradient(!0);else{if("button_preview"!=n){-1==n.indexOf("hover")?state="normal":state="hover";var i=this.fields[n];return void this.putCSS(i,a,state)}$(".output .result").css("backgroundColor",a)}},maxAdmin.prototype.copyColor=function(t){t.preventDefault(),t.stopPropagation();var e=$(t.target),a=$(t.target).parents("[data-bind]"),o="#"+a.data("id"),n="#"+a.data("bind");if(e.hasClass("arrow-right"))i="right";else var i="left";if(a.hasClass("right"))r="left";else var r="right";"left"==r?copy="right"==i:"right"==r&&(copy="right"!=i),copy?($(n).val($(o).val()),$(n).trigger("change"),$(n).wpColorPicker("color",$(o).val())):($(o).val($(n).val()),$(o).trigger("change"),$(o).wpColorPicker("color",$(n).val()))},maxAdmin.prototype.updateGradient=function(t){var e="";(t=t||!1)&&(e="_hover");var a=parseInt($("#gradient_stop").val());isNaN(a)&&(a=45);var o=$("#use_gradient").prop("checked"),n=this.hexToRgb($("#gradient_start_color"+e).val()),i=this.hexToRgb($("#gradient_end_color"+e).val()),r=parseInt($("#gradient_start_opacity"+e).val()),s=parseInt($("#gradient_end_opacity"+e).val());if(o||(i=n,s=r),isNaN(r)&&(r=100),isNaN(s)&&(s=100),t)d=$(".output .result").find("a.hover");else var d=$(".output .result").find("a.normal");d.css("background","linear-gradient( rgba("+n+","+r/100+") "+a+"%, rgba("+i+","+s/100+") )"),d.css("background","-moz-linear-gradient( rgba("+n+","+r/100+") "+a+"%, rgba("+i+","+s/100+") )"),d.css("background","-o-linear-gradient( rgba("+n+","+r/100+") "+a+"%, rgba("+i+","+s/100+") )"),d.css("background","-webkit-gradient(linear, left top, left bottom, color-stop("+a+"%, rgba("+n+","+r/100+")), color-stop(1, rgba("+i+","+s/100+") ));")},maxAdmin.prototype.hexToRgb=function(t){t=t.replace("#","");var e=parseInt(t,16);return(e>>16&255)+","+(e>>8&255)+","+(255&e)},maxAdmin.prototype.updateBoxShadow=function(t){t=t||null;var e=$("#box_shadow_offset_left").val(),a=$("#box_shadow_offset_top").val(),o=$("#box_shadow_width").val(),n=$("#box_shadow_spread").val(),i=$("#box_shadow_color").val(),r=$("#box_shadow_color_hover").val();$(".output .result").find("a.normal").css("boxShadow",e+"px "+a+"px "+o+"px "+n+"px "+i),$(".output .result").find("a.hover").css("boxShadow",e+"px "+a+"px "+o+"px "+n+"px "+r)},maxAdmin.prototype.updateTextShadow=function(t,e){e=e||!1;var a=$("#text_shadow_offset_left").val(),o=$("#text_shadow_offset_top").val(),n=$("#text_shadow_width").val(),i=$("#text_shadow_color").val(),r=$("#text_shadow_color_hover").val(),s=$(t).attr("id"),d=this.fields[s];d.css="textShadow";var l=a+"px "+o+"px "+n+"px "+i;this.putCSS(d,l,"normal"),l=a+"px "+o+"px "+n+"px "+r,this.putCSS(d,l,"hover")},maxAdmin.prototype.updateAnchorText=function(t){0===$(".output .result").find("a .mb-text").length&&($(".output .result").find("a").append('<span class="mb-text"></span>'),$(".output .result").find("a .mb-text").css({display:"block","line-height":"1em","box-sizing":"border-box"}),this.repaint_preview()),$(".output .result").find("a .mb-text").text(t.val())},maxAdmin.prototype.updateGradientOpacity=function(t){this.updateGradient(!0),this.updateGradient(!1)},maxAdmin.prototype.updateDimension=function(t){var e=$(t).val(),a=$(t).attr("id"),o=this.fields[a];e>0?this.putCSS(o,e):this.putCSS(o,"auto")},maxAdmin.prototype.updateRadius=function(t){var e=t.val(),a=["radius_bottom_left","radius_bottom_right","radius_top_left","radius_top_right"];if("lock"==$("#radius_toggle").data("lock"))for(i=0;i<a.length;i++){var o=a[i];$("#"+o).val(e);var n=this.fields[o];this.putCSS(n,e+"px")}},maxAdmin.prototype.toggleRadiusLock=function(t){var e=$(t.target),a=$(e).data("lock");"lock"==a?($(e).removeClass("dashicons-lock").addClass("dashicons-unlock"),$(e).data("lock","unlock")):"unlock"==a&&($(e).removeClass("dashicons-unlock").addClass("dashicons-lock"),$(e).data("lock","lock"))},maxAdmin.prototype.initResponsive=function(){window.maxFoundry.maxadmin.responsive=new mbResponsive,window.maxFoundry.maxadmin.responsive.init(this)},maxAdmin.prototype.do_paging=function(t){var e=parseInt($(t.target).val());if(e<=parseInt($(t.target).attr("max"))){var a=$(t.target).data("url");window.location=a+"&paged="+e}},maxAdmin.prototype.toggleShortcode=function(t){$(".shortcode-expand").hasClass("closed")?($(" .mb-message.shortcode .expanded").css("display","inline-block"),$(".shortcode-expand span").removeClass("dashicons-arrow-down").addClass("dashicons-arrow-up"),$(".shortcode-expand").removeClass("closed").addClass("open")):($(" .mb-message.shortcode .expanded").css("display","none"),$(".shortcode-expand span").addClass("dashicons-arrow-down").removeClass("dashicons-arrow-up"),$(".shortcode-expand").addClass("closed").removeClass("open"))},maxAdmin.prototype.toggleManual=function(t){t.preventDefault();var e=$(t.target),a=e.data("target"),o=$('.manual-entry[data-manual="'+a+'"]');if(o.is(":visible"))return o.hide(),!0;var n=$('[data-options="'+a+'"]').position().top+e.height();o.css("top",n),o.css("right",15),o.css("left","auto"),o.show()},maxAdmin.prototype.resetConditionals=function(){$("[data-show], [data-has]").each(function(){var t=$(this).data("show");if(void 0===t&&(t=$(this).data("has")),void 0!==t){var e=t.target;$(document).off("change",'[name="'+e+'"]')}else console.error($(this)+"has a improperly set conditional")})},maxAdmin.prototype.initConditionials=function(){var t=this;this.resetConditionals(),$("[data-show]").each(function(){var e=$(this).data("show"),a=e.target,o=e.values;$(document).on("change",'[name="'+a+'"]',{child:this,values:o},$.proxy(t.updateConditional,t)),$('[name="'+a+'"]').length>1?$('[name="'+a+'"]:checked').trigger("change",["conditional"]):$('[name="'+a+'"]').trigger("change",["conditional"])});var e=[];$("[data-has]").each(function(){var a=$(this).data("has"),o=a.target,n=a.values;$('[name="'+o+'"]').on("change",{target:o,child:this,values:n},$.proxy(t.updateHasConditional,t));var i='[name="'+o+'"]';$.inArray(i,e),e.push(i)}),e.length>0&&$(e.toString()).first().trigger("change",["conditional"])},maxAdmin.prototype.updateConditional=function(t){var e=t.data,a=e.values,o=e.child,n=$(t.currentTarget),i=$(n).val();if("checkbox"===n.attr("type")){var r=$(n).prop("checked");i="checked"==a&&r?"checked":"unchecked"!=a||r?0:"unchecked"}a.indexOf(i)>=0?($(o).fadeIn("fast"),$(o).find("input, select").trigger("change")):($(o).fadeOut("fast"),$(o).find("input, select").trigger("change"))},maxAdmin.prototype.updateHasConditional=function(t){var e=t.data,a=e.values,o=e.child,n=e.target,i=[];$(a).each(function(t){i.push("[value="+this+"]")}),$('[name="'+n+'"]').filter(i.toString()).length>0?$(o).fadeIn("fast"):$(o).fadeOut("fast")},maxAdmin.prototype.updateRange=function(t){if(void 0===t||null===t)e=$('input[type="range"]');else var e=[t.target];$(e).each(function(){var t=$(this).val();$(this).parents(".input").find(".range_value output").val(t+"%")})},maxAdmin.prototype.saveIndicator=function(t){this.form_updated=!!t},maxAdmin.prototype.formAjaxSave=function(t){t.preventDefault();var e=mb_ajax.ajaxurl,a=$(t.target).serialize();$.ajax({type:"POST",url:e,data:a}).done($.proxy(this.saveDone,this))},maxAdmin.prototype.saveDone=function(t){$("[data-form]").prop("disabled",!1);var e=$.parseJSON(t),a=e.result,o=e.title,n=e.data.id;if(void 0!==e.data.new_nonce){e.data.new_nonce;$('input[name="nonce"]').val(e.data.new_nonce)}if(a){$('input[name="collection_id"]').val(n);var i=window.location.href;-1===i.indexOf("collection_id")&&window.history.replaceState({},"",i+"&collection_id="+n),$(document).trigger("mbFormSaved");var r=$('input[name="sorted"]').val();$('input[name="previous_selection"]').val(r),e.data.reload&&document.location.reload(!0)}a||($modal=window.maxFoundry.maxModal,$modal.newModal("collection_error"),$modal.setTitle(o),$modal.setContent(e.body),$modal.setControls('<button class="modal_close button-primary">'+e.close_text+"</button>"),$modal.show())},maxAdmin.prototype.openURLDialog=function(t){return window.wpActiveEditor="url",wpLink.open(),$("#link-options").hide(),$(".query-results").css("top","70px"),$("#wp-link-submit").off("click keyup change"),$("#wp-link-submit").on("click",$.proxy(this.updateLink,this)),!1},maxAdmin.prototype.updateLink=function(t){t.preventDefault();var e=$("#wp-link-url").val(),a=maxadmin_settings.homeurl;return e=e.replace(a,""),$("#url").val(e),wpLink.close(),!1};
1
+ function maxAdmin(){}var $=jQuery;maxAdmin.prototype={colorUpdateTime:!0,colorPalettes:!0,fields:null,button_id:null,form_updated:!1,tabs:null},maxAdmin.prototype.init=function(){this.button_id=$('input[name="button_id"]').val(),$(document).on("click",".maxbutton-preview",function(t){t.preventDefault()}),$(document).on("click",".output .preview-toggle",$.proxy(this.toggle_preview,this)),$("#maxbuttons .input-paging").on("change",$.proxy(this.do_paging,this)),$(".manual-toggle").on("click",$.proxy(this.toggleManual,this)),$(".manual-entry").draggable({cancel:"p, li"}),$(document).on("submit","form.mb_ajax_save",$.proxy(this.formAjaxSave,this)),$(document).on("click","[data-buttonaction]",$.proxy(this.button_action,this)),$(document).on("reInitConditionals",$.proxy(this.initConditionials,this)),this.initConditionials(),$(document).on("change, input",'input[type="range"]',$.proxy(this.updateRange,this)),this.updateRange(null),0!=$("#new-button-form").length&&(this.button_id>0&&$("#maxbuttons .mb-message").show(),this.initResponsive(),$("#maxbuttons .output").draggable({cancel:".nodrag"}),$("#maxbuttons .color-field").wpColorPicker({width:300,palettes:this.colorPalettes,change:$.proxy(_.throttle(function(t,a){t.preventDefault();var e=a.color.toString();this.update_color(t,a,e)},200),this)}),$(".input.mbcolor .arrows").on("click",$.proxy(this.copyColor,this)),$("#radius_toggle").on("click",$.proxy(this.toggleRadiusLock,this)),"undefined"!=typeof buttonFieldMap&&(this.fields=$.parseJSON(buttonFieldMap)),$("#maxbuttons input").not(".color-field").on("keyup change",$.proxy(this.update_preview,this)),$("#maxbuttons input.color-field").on("focus",$.proxy(this.select_field,this)),$("#maxbuttons select").on("change",$.proxy(this.update_preview,this)),$(window).on("beforeunload",$.proxy(function(){if(this.form_updated)return maxajax.leave_page},this)),$(document).on("keyup","input",function(t){if(t.keyCode&&13==t.keyCode)return $(":input")[$(":input").index(document.activeElement)+1].focus(),!1}),$(".button-save").click($.proxy(function(){return this.saveIndicator(!1),$("#new-button-form").submit(),!1},this)),$(".shortcode-expand").on("click",this.toggleShortcode),$("#url_button").on("click",$.proxy(this.openURLDialog,this)),$(".block_sidebar .open_control").on("click",this.toggleSidebar))},maxAdmin.prototype.repaint_preview=function(){$('.mb_tab input[type="text"]').trigger("change"),$('.mb_tab input[type="number"]').trigger("change"),$(".mb_tab select").trigger("change"),$('.mb_tab input[type="hidden"]').trigger("change"),$('.mb_tab input[type="radio"]:checked').trigger("change"),$('.mb_tab input[type="checkbox"]:checked').trigger("change")},maxAdmin.prototype.update_preview=function(t){t.preventDefault(),this.saveIndicator(!0);var a=$(t.target),e=$(a).data("field");if(void 0===e)o=$(a).attr("id");else var o=e;var n=this.fields[o];if(void 0!==n&&(void 0!==n.css&&(value=a.val(),void 0!==n.css_unit&&-1==value.indexOf(n.css_unit)&&(value+=n.css_unit),a.is(":checkbox")&&!a.is(":checked")&&(value=""),this.putCSS(n,value)),void 0!==n.attr&&$(".output .result").find("a").attr(n.attr,a.val()),void 0!==n.func)){var i=n.func;i.indexOf(".")<0?i="self."+i+"(target)":i+="(target)";try{new Function("target","self",i)(a,this)}catch(t){console.error(t)}}},maxAdmin.prototype.select_field=function(t){$(t.target).select()},maxAdmin.prototype.button_action=function(t){t.preventDefault();var a=$(t.target).data("buttonaction");this.form_updated=!1;var e=$(t.target).data("buttonid"),o=$('input[name="'+a+'_nonce"]').val(),n=maxajax.ajax_url,i={action:"mb_button_action",button_action:a,button_id:e,nonce:o};$.post({url:n,data:i,success:function(t){response=JSON.parse(t),void 0!==response.redirection&&(window.location=response.redirection)},error:function(){console.error("error in button action"+a)}})},maxAdmin.prototype.checkCopyModal=function(t){this.form_updated?t.currentModal.find(".mb-message").show():$(t.currentModal).find(".mb-message").hide()},maxAdmin.prototype.toggle_preview=function(t){$(".output .inner").is(":hidden")?($(".output .inner").show(),$(".output").css("height","auto"),$(".preview .preview-toggle").removeClass("dashicons-arrow-down").addClass("dashicons-arrow-up")):($(".output .inner").hide(),$(".output").css("height","auto"),$(".preview .preview-toggle").removeClass("dashicons-arrow-up").addClass("dashicons-arrow-down"))},maxAdmin.prototype.putCSS=function(t,a,e){var o=".maxbutton";if("hover"==(e=e||"both")?o="a.hover ":"normal"==e&&(o="a.normal "),void 0!==t.csspart){var n=t.csspart.split(",");for(i=0;i<n.length;i++){var r=o+" ."+n[i];$(".output .result").find(r).css(t.css,a)}}else $(".output .result").find(o).css(t.css,a)},maxAdmin.prototype.update_color=function(t,a,e){t.preventDefault(),this.saveIndicator(!0);var o=$(t.target);-1===e.indexOf("#")&&(e="#"+e);var n=o.attr("id");if($("#"+n).val(e),-1!==n.indexOf("box_shadow"))this.updateBoxShadow(o);else if(-1!==n.indexOf("text_shadow"))this.updateTextShadow(o);else if(-1!==n.indexOf("gradient"))-1==n.indexOf("hover")?this.updateGradient():this.updateGradient(!0);else{if("button_preview"!=n){-1==n.indexOf("hover")?state="normal":state="hover";var i=this.fields[n];return void this.putCSS(i,e,state)}$(".output .result").css("backgroundColor",e)}},maxAdmin.prototype.copyColor=function(t){t.preventDefault(),t.stopPropagation();var a=$(t.target),e=$(t.target).parents("[data-bind]"),o="#"+e.data("id"),n="#"+e.data("bind");if(a.hasClass("arrow-right"))i="right";else var i="left";if(e.hasClass("right"))r="left";else var r="right";"left"==r?copy="right"==i:"right"==r&&(copy="right"!=i),copy?($(n).val($(o).val()),$(n).trigger("change"),$(n).wpColorPicker("color",$(o).val())):($(o).val($(n).val()),$(o).trigger("change"),$(o).wpColorPicker("color",$(n).val()))},maxAdmin.prototype.updateGradient=function(t){var a="";(t=t||!1)&&(a="_hover");var e=parseInt($("#gradient_stop").val());isNaN(e)&&(e=45);var o=$("#use_gradient").prop("checked"),n=this.hexToRgb($("#gradient_start_color"+a).val()),i=this.hexToRgb($("#gradient_end_color"+a).val()),r=parseInt($("#gradient_start_opacity"+a).val()),s=parseInt($("#gradient_end_opacity"+a).val());if(o||(i=n,s=r),isNaN(r)&&(r=100),isNaN(s)&&(s=100),t)d=$(".output .result").find("a.hover");else var d=$(".output .result").find("a.normal");d.css("background","linear-gradient( rgba("+n+","+r/100+") "+e+"%, rgba("+i+","+s/100+") )"),d.css("background","-moz-linear-gradient( rgba("+n+","+r/100+") "+e+"%, rgba("+i+","+s/100+") )"),d.css("background","-o-linear-gradient( rgba("+n+","+r/100+") "+e+"%, rgba("+i+","+s/100+") )"),d.css("background","-webkit-gradient(linear, left top, left bottom, color-stop("+e+"%, rgba("+n+","+r/100+")), color-stop(1, rgba("+i+","+s/100+") ));")},maxAdmin.prototype.hexToRgb=function(t){t=t.replace("#","");var a=parseInt(t,16);return(a>>16&255)+","+(a>>8&255)+","+(255&a)},maxAdmin.prototype.updateBoxShadow=function(t){t=t||null;var a=$("#box_shadow_offset_left").val(),e=$("#box_shadow_offset_top").val(),o=$("#box_shadow_width").val(),n=$("#box_shadow_spread").val(),i=$("#box_shadow_color").val(),r=$("#box_shadow_color_hover").val();$(".output .result").find("a.normal").css("boxShadow",a+"px "+e+"px "+o+"px "+n+"px "+i),$(".output .result").find("a.hover").css("boxShadow",a+"px "+e+"px "+o+"px "+n+"px "+r)},maxAdmin.prototype.updateTextShadow=function(t,a){a=a||!1;var e=$("#text_shadow_offset_left").val(),o=$("#text_shadow_offset_top").val(),n=$("#text_shadow_width").val(),i=$("#text_shadow_color").val(),r=$("#text_shadow_color_hover").val(),s=$(t).attr("id"),d=this.fields[s];d.css="textShadow";var l=e+"px "+o+"px "+n+"px "+i;this.putCSS(d,l,"normal"),l=e+"px "+o+"px "+n+"px "+r,this.putCSS(d,l,"hover")},maxAdmin.prototype.updateAnchorText=function(t){0===$(".output .result").find("a .mb-text").length&&($(".output .result").find("a").append('<span class="mb-text"></span>'),$(".output .result").find("a .mb-text").css({display:"block","line-height":"1em","box-sizing":"border-box"}),this.repaint_preview()),$(".output .result").find("a .mb-text").text(t.val())},maxAdmin.prototype.updateGradientOpacity=function(t){this.updateGradient(!0),this.updateGradient(!1)},maxAdmin.prototype.updateDimension=function(t){var a=$(t).val(),e=$(t).attr("id"),o=this.fields[e];a>0?this.putCSS(o,a):this.putCSS(o,"auto")},maxAdmin.prototype.updateRadius=function(t){var a=t.val(),e=["radius_bottom_left","radius_bottom_right","radius_top_left","radius_top_right"];if("lock"==$("#radius_toggle").data("lock"))for(i=0;i<e.length;i++){var o=e[i];$("#"+o).val(a);var n=this.fields[o];this.putCSS(n,a+"px")}},maxAdmin.prototype.toggleRadiusLock=function(t){var a=$(t.target),e=$(a).data("lock");"lock"==e?($(a).removeClass("dashicons-lock").addClass("dashicons-unlock"),$(a).data("lock","unlock")):"unlock"==e&&($(a).removeClass("dashicons-unlock").addClass("dashicons-lock"),$(a).data("lock","lock"))},maxAdmin.prototype.initResponsive=function(){window.maxFoundry.maxadmin.responsive=new mbResponsive,window.maxFoundry.maxadmin.responsive.init(this)},maxAdmin.prototype.do_paging=function(t){var a=parseInt($(t.target).val());if(a<=parseInt($(t.target).attr("max"))){var e=$(t.target).data("url");window.location=e+"&paged="+a}},maxAdmin.prototype.toggleShortcode=function(t){$(".shortcode-expand").hasClass("closed")?($(" .mb-message.shortcode .expanded").css("display","inline-block"),$(".shortcode-expand span").removeClass("dashicons-arrow-down").addClass("dashicons-arrow-up"),$(".shortcode-expand").removeClass("closed").addClass("open")):($(" .mb-message.shortcode .expanded").css("display","none"),$(".shortcode-expand span").addClass("dashicons-arrow-down").removeClass("dashicons-arrow-up"),$(".shortcode-expand").addClass("closed").removeClass("open"))},maxAdmin.prototype.toggleManual=function(t){t.preventDefault();var a=$(t.target),e=a.data("target"),o=$('.manual-entry[data-manual="'+e+'"]');if(o.is(":visible"))return o.hide(),!0;var n=$('[data-options="'+e+'"]').position().top+a.height();o.css("top",n),o.css("right",15),o.css("left","auto"),o.show()},maxAdmin.prototype.resetConditionals=function(){$("[data-show], [data-has]").each(function(){var t=$(this).data("show");if(void 0===t&&(t=$(this).data("has")),void 0!==t){var a=t.target;$(document).off("change",'[name="'+a+'"]')}else console.error($(this)+"has a improperly set conditional")})},maxAdmin.prototype.initConditionials=function(){var t=this;this.resetConditionals(),$("[data-show]").each(function(){var a=$(this).data("show"),e=a.target,o=a.values;$(document).on("change",'[name="'+e+'"]',{child:this,values:o},$.proxy(t.updateConditional,t)),$('[name="'+e+'"]').length>1?$('[name="'+e+'"]:checked').trigger("change",["conditional"]):$('[name="'+e+'"]').trigger("change",["conditional"])});var a=[];$("[data-has]").each(function(){var e=$(this).data("has"),o=e.target,n=e.values;$('[name="'+o+'"]').on("change",{target:o,child:this,values:n},$.proxy(t.updateHasConditional,t));var i='[name="'+o+'"]';$.inArray(i,a),a.push(i)}),a.length>0&&$(a.toString()).first().trigger("change",["conditional"])},maxAdmin.prototype.updateConditional=function(t){var a=t.data,e=a.values,o=a.child,n=$(t.currentTarget),i=$(n).val();if("checkbox"===n.attr("type")){var r=$(n).prop("checked");i="checked"==e&&r?"checked":"unchecked"!=e||r?0:"unchecked"}e.indexOf(i)>=0?($(o).fadeIn("fast"),$(o).find("input, select").trigger("change")):($(o).fadeOut("fast"),$(o).find("input, select").trigger("change"))},maxAdmin.prototype.updateHasConditional=function(t){var a=t.data,e=a.values,o=a.child,n=a.target,i=[];$(e).each(function(t){i.push("[value="+this+"]")}),$('[name="'+n+'"]').filter(i.toString()).length>0?$(o).fadeIn("fast"):$(o).fadeOut("fast")},maxAdmin.prototype.updateRange=function(t){if(void 0===t||null===t)a=$('input[type="range"]');else var a=[t.target];$(a).each(function(){var t=$(this).val();$(this).parents(".input").find(".range_value output").val(t+"%")})},maxAdmin.prototype.saveIndicator=function(t){this.form_updated=!!t},maxAdmin.prototype.formAjaxSave=function(t){t.preventDefault();var a=mb_ajax.ajaxurl,e=$(t.target).serialize();$.ajax({type:"POST",url:a,data:e}).done($.proxy(this.saveDone,this))},maxAdmin.prototype.saveDone=function(t){$("[data-form]").prop("disabled",!1);var a=$.parseJSON(t),e=a.result,o=a.title,n=a.data.id;if(void 0!==a.data.new_nonce){a.data.new_nonce;$('input[name="nonce"]').val(a.data.new_nonce)}if(e){$('input[name="collection_id"]').val(n);var i=window.location.href;-1===i.indexOf("collection_id")&&window.history.replaceState({},"",i+"&collection_id="+n),$(document).trigger("mbFormSaved");var r=$('input[name="sorted"]').val();$('input[name="previous_selection"]').val(r),a.data.reload&&document.location.reload(!0)}e||($modal=window.maxFoundry.maxModal,$modal.newModal("collection_error"),$modal.setTitle(o),$modal.setContent(a.body),$modal.setControls('<button class="modal_close button-primary">'+a.close_text+"</button>"),$modal.show())},maxAdmin.prototype.openURLDialog=function(t){return window.wpActiveEditor="url",wpLink.open(),$("#link-options").hide(),$(".query-results").css("top","70px"),$("#wp-link-submit").off("click keyup change"),$("#wp-link-submit").on("click",$.proxy(this.updateLink,this)),!1},maxAdmin.prototype.updateLink=function(t){t.preventDefault();var a=$("#wp-link-url").val(),e=maxadmin_settings.homeurl;return a=a.replace(e,""),$("#url").val(a),wpLink.close(),!1},maxAdmin.prototype.toggleSidebar=function(t){var a=t.target,e=$(a).parents(".block_sidebar");e.hasClass("active")?e.removeClass("active"):e.addClass("active")};
maxbuttons.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: MaxButtons
4
  Plugin URI: http://maxbuttons.com
5
  Description: The best WordPress button generator. This is the free version; the Pro version <a href="http://maxbuttons.com/?ref=mbfree">can be found here</a>.
6
- Version: 7.7
7
  Author: Max Foundry
8
  Author URI: http://maxfoundry.com
9
  Text Domain: maxbuttons
@@ -16,9 +16,9 @@ namespace MaxButtons;
16
  if (! defined('MAXBUTTONS_ROOT_FILE'))
17
  define("MAXBUTTONS_ROOT_FILE", __FILE__);
18
  if (! defined('MAXBUTTONS_VERSION_NUM'))
19
- define('MAXBUTTONS_VERSION_NUM', '7.7');
20
 
21
- define('MAXBUTTONS_RELEASE',"13 Nov 2018");
22
 
23
 
24
  if (! function_exists('MaxButtons\maxbutton_double_load'))
3
  Plugin Name: MaxButtons
4
  Plugin URI: http://maxbuttons.com
5
  Description: The best WordPress button generator. This is the free version; the Pro version <a href="http://maxbuttons.com/?ref=mbfree">can be found here</a>.
6
+ Version: 7.8
7
  Author: Max Foundry
8
  Author URI: http://maxfoundry.com
9
  Text Domain: maxbuttons
16
  if (! defined('MAXBUTTONS_ROOT_FILE'))
17
  define("MAXBUTTONS_ROOT_FILE", __FILE__);
18
  if (! defined('MAXBUTTONS_VERSION_NUM'))
19
+ define('MAXBUTTONS_VERSION_NUM', '7.8');
20
 
21
+ define('MAXBUTTONS_RELEASE',"13 Dec 2018");
22
 
23
 
24
  if (! function_exists('MaxButtons\maxbutton_double_load'))
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: wordpress button plugin, share button, wordpress buttons, css3 button gene
4
  Requires at least: 4.8
5
  Tested up to: 5.0
6
  Requires PHP: 5.4
7
- Stable tag: 7.7
8
 
9
  WordPress button plugin so powerful and easy to use anyone can create beautiful buttons, share buttons and social icons.
10
 
@@ -255,6 +255,14 @@ Secondly, please use latin only characters for button name ( Basic settings) and
255
 
256
  == Changelog ==
257
 
 
 
 
 
 
 
 
 
258
  = 7.7 =
259
 
260
  * Tweak - Warning when button name is duplicate
4
  Requires at least: 4.8
5
  Tested up to: 5.0
6
  Requires PHP: 5.4
7
+ Stable tag: 7.8
8
 
9
  WordPress button plugin so powerful and easy to use anyone can create beautiful buttons, share buttons and social icons.
10
 
255
 
256
  == Changelog ==
257
 
258
+ = 7.8 =
259
+
260
+ * Fix - Crashes on PHP 7.3 due to simple HTML DOM library
261
+ * Tweak - If no Box Shadow is defined, it's not set on the MaxButton.
262
+ * Fix - Box shadow with only spread now works and properly removes values from stylesheet
263
+ * Fix - Box shadow blur minimum is now zero
264
+ * Fix - Gradient stop field hidden when gradient option is off
265
+
266
  = 7.7 =
267
 
268
  * Tweak - Warning when button name is duplicate