Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93
/home/sportsfe.../httpdocs/wp-conte.../plugins/themify-.../js/editor/modules
File: buttons.mjs
(api => {
[0] Fix | Delete
"use strict";
[1] Fix | Delete
api.ModuleButtons = class extends api.Module {
[2] Fix | Delete
constructor(fields) {
[3] Fix | Delete
super(fields);
[4] Fix | Delete
}
[5] Fix | Delete
static getOptions() {
[6] Fix | Delete
return [
[7] Fix | Delete
{
[8] Fix | Delete
id: 'content_button',
[9] Fix | Delete
type: 'builder',
[10] Fix | Delete
options: [
[11] Fix | Delete
{
[12] Fix | Delete
id: 'label',
[13] Fix | Delete
type: 'text',
[14] Fix | Delete
label: 'text',
[15] Fix | Delete
control: {
[16] Fix | Delete
selector: '[data-name="label"]'
[17] Fix | Delete
}
[18] Fix | Delete
},
[19] Fix | Delete
{
[20] Fix | Delete
id: 'link',
[21] Fix | Delete
type: 'url',
[22] Fix | Delete
label: 'l',
[23] Fix | Delete
binding: {
[24] Fix | Delete
empty: {
[25] Fix | Delete
hide: [
[26] Fix | Delete
'link_options',
[27] Fix | Delete
'button_color_bg',
[28] Fix | Delete
'title'
[29] Fix | Delete
]
[30] Fix | Delete
},
[31] Fix | Delete
not_empty: {
[32] Fix | Delete
show: [
[33] Fix | Delete
'link_options',
[34] Fix | Delete
'button_color_bg',
[35] Fix | Delete
'title'
[36] Fix | Delete
]
[37] Fix | Delete
}
[38] Fix | Delete
}
[39] Fix | Delete
},
[40] Fix | Delete
{
[41] Fix | Delete
id: 'link_options',
[42] Fix | Delete
type: 'radio',
[43] Fix | Delete
label: 'o_l',
[44] Fix | Delete
link_type: true,
[45] Fix | Delete
option_js: true
[46] Fix | Delete
},
[47] Fix | Delete
{
[48] Fix | Delete
type: 'multi',
[49] Fix | Delete
label: 'lbdim',
[50] Fix | Delete
options: [
[51] Fix | Delete
{
[52] Fix | Delete
id: 'lightbox_width',
[53] Fix | Delete
type: 'range',
[54] Fix | Delete
label: 'w',
[55] Fix | Delete
control: false,
[56] Fix | Delete
units: {
[57] Fix | Delete
px: {
[58] Fix | Delete
max: 3000
[59] Fix | Delete
},
[60] Fix | Delete
'%': ''
[61] Fix | Delete
}
[62] Fix | Delete
},
[63] Fix | Delete
{
[64] Fix | Delete
id: 'lightbox_height',
[65] Fix | Delete
label: 'ht',
[66] Fix | Delete
control: false,
[67] Fix | Delete
type: 'range',
[68] Fix | Delete
units: {
[69] Fix | Delete
px: {
[70] Fix | Delete
max: 3000
[71] Fix | Delete
},
[72] Fix | Delete
'%': ''
[73] Fix | Delete
}
[74] Fix | Delete
}
[75] Fix | Delete
],
[76] Fix | Delete
wrap_class: 'tb_group_element_lightbox lightbox_size'
[77] Fix | Delete
},
[78] Fix | Delete
{
[79] Fix | Delete
id: 'button_color_bg',
[80] Fix | Delete
type: 'layout',
[81] Fix | Delete
label: 'c',
[82] Fix | Delete
class: 'tb_colors',
[83] Fix | Delete
mode: 'sprite',
[84] Fix | Delete
color: true,
[85] Fix | Delete
transparent: true
[86] Fix | Delete
},
[87] Fix | Delete
{
[88] Fix | Delete
type: 'radio',
[89] Fix | Delete
id: 't',
[90] Fix | Delete
label: 'icon',
[91] Fix | Delete
options: [
[92] Fix | Delete
{
[93] Fix | Delete
value: 'i',
[94] Fix | Delete
name: 'icon'
[95] Fix | Delete
},
[96] Fix | Delete
{
[97] Fix | Delete
value: 'l',
[98] Fix | Delete
name: 'lt'
[99] Fix | Delete
}
[100] Fix | Delete
],
[101] Fix | Delete
option_js: true
[102] Fix | Delete
},
[103] Fix | Delete
{
[104] Fix | Delete
id: 'icon',
[105] Fix | Delete
type: 'icon',
[106] Fix | Delete
label: 'icon',
[107] Fix | Delete
wrap_class: 'tb_group_element_i',
[108] Fix | Delete
class: 'fullwidth',
[109] Fix | Delete
binding: {
[110] Fix | Delete
empty: {
[111] Fix | Delete
hide: 'icon_alignment'
[112] Fix | Delete
},
[113] Fix | Delete
not_empty: {
[114] Fix | Delete
show: 'icon_alignment'
[115] Fix | Delete
}
[116] Fix | Delete
}
[117] Fix | Delete
},
[118] Fix | Delete
{
[119] Fix | Delete
type: 'lottie',
[120] Fix | Delete
wrap_class: 'tb_group_element_l',
[121] Fix | Delete
binding: {
[122] Fix | Delete
empty: {
[123] Fix | Delete
hide: 'icon_alignment'
[124] Fix | Delete
},
[125] Fix | Delete
not_empty: {
[126] Fix | Delete
show: 'icon_alignment'
[127] Fix | Delete
}
[128] Fix | Delete
}
[129] Fix | Delete
},
[130] Fix | Delete
{
[131] Fix | Delete
id: 'icon_alignment',
[132] Fix | Delete
type: 'select',
[133] Fix | Delete
label: 'ialign',
[134] Fix | Delete
options: {
[135] Fix | Delete
left: 'left',
[136] Fix | Delete
right: 'right'
[137] Fix | Delete
}
[138] Fix | Delete
},
[139] Fix | Delete
{
[140] Fix | Delete
id: 'title',
[141] Fix | Delete
type: 'text',
[142] Fix | Delete
label: 'tat'
[143] Fix | Delete
},
[144] Fix | Delete
{
[145] Fix | Delete
id: 'id',
[146] Fix | Delete
type: 'text',
[147] Fix | Delete
label: 'idat'
[148] Fix | Delete
}
[149] Fix | Delete
]
[150] Fix | Delete
},
[151] Fix | Delete
{
[152] Fix | Delete
type: 'group',
[153] Fix | Delete
label: 'btnapp',
[154] Fix | Delete
display: 'accordion',
[155] Fix | Delete
options: [
[156] Fix | Delete
{
[157] Fix | Delete
id: 'buttons_size',
[158] Fix | Delete
label: 'size',
[159] Fix | Delete
type: 'layout',
[160] Fix | Delete
mode: 'sprite',
[161] Fix | Delete
options: [
[162] Fix | Delete
{
[163] Fix | Delete
img: 'normall_button',
[164] Fix | Delete
value: 'normal',
[165] Fix | Delete
label: 'def'
[166] Fix | Delete
},
[167] Fix | Delete
{
[168] Fix | Delete
img: 'small_button',
[169] Fix | Delete
value: 'small',
[170] Fix | Delete
label: 'sml'
[171] Fix | Delete
},
[172] Fix | Delete
{
[173] Fix | Delete
img: 'large_button',
[174] Fix | Delete
value: 'large',
[175] Fix | Delete
label: 'lrg'
[176] Fix | Delete
},
[177] Fix | Delete
{
[178] Fix | Delete
img: 'xlarge_button',
[179] Fix | Delete
value: 'xlarge',
[180] Fix | Delete
label: 'xlrg'
[181] Fix | Delete
}
[182] Fix | Delete
],
[183] Fix | Delete
control: {
[184] Fix | Delete
classSelector: ''
[185] Fix | Delete
}
[186] Fix | Delete
},
[187] Fix | Delete
{
[188] Fix | Delete
id: 'buttons_shape',
[189] Fix | Delete
type: 'layout',
[190] Fix | Delete
mode: 'sprite',
[191] Fix | Delete
label: 'shape',
[192] Fix | Delete
options: [
[193] Fix | Delete
{
[194] Fix | Delete
img: 'normall_button',
[195] Fix | Delete
value: 'normal',
[196] Fix | Delete
label: 'def'
[197] Fix | Delete
},
[198] Fix | Delete
{
[199] Fix | Delete
img: 'squared_button',
[200] Fix | Delete
value: 'squared',
[201] Fix | Delete
label: 'squared'
[202] Fix | Delete
},
[203] Fix | Delete
{
[204] Fix | Delete
img: 'circle_button',
[205] Fix | Delete
value: 'circle',
[206] Fix | Delete
label: 'circle'
[207] Fix | Delete
},
[208] Fix | Delete
{
[209] Fix | Delete
img: 'rounded_button',
[210] Fix | Delete
value: 'rounded',
[211] Fix | Delete
label: 'rounded'
[212] Fix | Delete
}
[213] Fix | Delete
],
[214] Fix | Delete
control: {
[215] Fix | Delete
classSelector: ''
[216] Fix | Delete
}
[217] Fix | Delete
},
[218] Fix | Delete
{
[219] Fix | Delete
id: 'buttons_style',
[220] Fix | Delete
type: 'layout',
[221] Fix | Delete
mode: 'sprite',
[222] Fix | Delete
label: 'bg',
[223] Fix | Delete
options: [
[224] Fix | Delete
{
[225] Fix | Delete
img: 'solid_button',
[226] Fix | Delete
value: 'solid',
[227] Fix | Delete
label: 'solid'
[228] Fix | Delete
},
[229] Fix | Delete
{
[230] Fix | Delete
img: 'outline_button',
[231] Fix | Delete
value: 'outline',
[232] Fix | Delete
label: 'o'
[233] Fix | Delete
},
[234] Fix | Delete
{
[235] Fix | Delete
img: 'transparent_button',
[236] Fix | Delete
value: 'transparent',
[237] Fix | Delete
label: 'transparent'
[238] Fix | Delete
}
[239] Fix | Delete
],
[240] Fix | Delete
control: {
[241] Fix | Delete
classSelector: ''
[242] Fix | Delete
}
[243] Fix | Delete
},
[244] Fix | Delete
{
[245] Fix | Delete
id: 'display',
[246] Fix | Delete
type: 'layout',
[247] Fix | Delete
mode: 'sprite',
[248] Fix | Delete
label: 'disp',
[249] Fix | Delete
options: [
[250] Fix | Delete
{
[251] Fix | Delete
img: 'horizontal_button',
[252] Fix | Delete
value: 'buttons-horizontal',
[253] Fix | Delete
label: 'hrztal'
[254] Fix | Delete
},
[255] Fix | Delete
{
[256] Fix | Delete
img: 'vertical_button',
[257] Fix | Delete
value: 'buttons-vertical',
[258] Fix | Delete
label: 'vertical'
[259] Fix | Delete
}
[260] Fix | Delete
],
[261] Fix | Delete
control: {
[262] Fix | Delete
classSelector: ''
[263] Fix | Delete
}
[264] Fix | Delete
},
[265] Fix | Delete
{
[266] Fix | Delete
id: 'fullwidth_button',
[267] Fix | Delete
type: 'toggle_switch',
[268] Fix | Delete
label: 'fw',
[269] Fix | Delete
options: {
[270] Fix | Delete
on: {
[271] Fix | Delete
name: 'buttons-fullwidth'
[272] Fix | Delete
}
[273] Fix | Delete
},
[274] Fix | Delete
binding: {
[275] Fix | Delete
checked: {
[276] Fix | Delete
hide: 'display'
[277] Fix | Delete
},
[278] Fix | Delete
not_checked: {
[279] Fix | Delete
show: 'display'
[280] Fix | Delete
}
[281] Fix | Delete
}
[282] Fix | Delete
},
[283] Fix | Delete
{
[284] Fix | Delete
id: 'nofollow_link',
[285] Fix | Delete
type: 'toggle_switch',
[286] Fix | Delete
label: 'nfollow',
[287] Fix | Delete
options: {
[288] Fix | Delete
on: {
[289] Fix | Delete
name: 'yes'
[290] Fix | Delete
}
[291] Fix | Delete
},
[292] Fix | Delete
help: 'nfollowh',
[293] Fix | Delete
control: false
[294] Fix | Delete
},
[295] Fix | Delete
{
[296] Fix | Delete
id: 'download_link',
[297] Fix | Delete
type: 'toggle_switch',
[298] Fix | Delete
label: 'dwnable',
[299] Fix | Delete
options: {
[300] Fix | Delete
on: {
[301] Fix | Delete
name: 'yes'
[302] Fix | Delete
}
[303] Fix | Delete
},
[304] Fix | Delete
help: 'dwnablef',
[305] Fix | Delete
control: false
[306] Fix | Delete
}
[307] Fix | Delete
]
[308] Fix | Delete
},
[309] Fix | Delete
{
[310] Fix | Delete
type: 'custom_css_id',
[311] Fix | Delete
custom_css: 'css_button'
[312] Fix | Delete
}
[313] Fix | Delete
];
[314] Fix | Delete
}
[315] Fix | Delete
static default(){
[316] Fix | Delete
return {
[317] Fix | Delete
content_button: [{
[318] Fix | Delete
label: i18n.btntext,
[319] Fix | Delete
link: 'https://themify.me/'
[320] Fix | Delete
}
[321] Fix | Delete
]
[322] Fix | Delete
};
[323] Fix | Delete
}
[324] Fix | Delete
static builderSave(settings){
[325] Fix | Delete
const def={
[326] Fix | Delete
buttons_size:'normal',
[327] Fix | Delete
buttons_shape:'normal',
[328] Fix | Delete
buttons_style:'solid',
[329] Fix | Delete
display:'buttons-horizontal'
[330] Fix | Delete
},
[331] Fix | Delete
btns=settings.content_button,
[332] Fix | Delete
units=['f_s_bic','f_s_h_bic'];
[333] Fix | Delete
for( let key in def){
[334] Fix | Delete
if(settings[key]===def[key]){
[335] Fix | Delete
delete settings[key];
[336] Fix | Delete
}
[337] Fix | Delete
}
[338] Fix | Delete
if(settings.fullwidth_button){
[339] Fix | Delete
delete settings.display;
[340] Fix | Delete
}
[341] Fix | Delete
if(btns){
[342] Fix | Delete
const btnDef={
[343] Fix | Delete
icon_alignment:'left',
[344] Fix | Delete
lightbox_width_unit:'px',
[345] Fix | Delete
lightbox_height_unit:'px',
[346] Fix | Delete
button_color_bg:'default',
[347] Fix | Delete
link_options:'regular',
[348] Fix | Delete
t:'i'
[349] Fix | Delete
},
[350] Fix | Delete
lottieDel= [
[351] Fix | Delete
'st',
[352] Fix | Delete
'count',
[353] Fix | Delete
'sp',
[354] Fix | Delete
'dir',
[355] Fix | Delete
'seg',
[356] Fix | Delete
'fid',
[357] Fix | Delete
'r',
[358] Fix | Delete
'lp'
[359] Fix | Delete
];
[360] Fix | Delete
for(let i=btns.length-1;i>-1;--i){
[361] Fix | Delete
let btn=btns[i];
[362] Fix | Delete
for( let key in btnDef){
[363] Fix | Delete
if(btn[key]===btnDef[key]){
[364] Fix | Delete
delete btn[key];
[365] Fix | Delete
}
[366] Fix | Delete
}
[367] Fix | Delete
if(!btn.link){
[368] Fix | Delete
delete btn.link_options;
[369] Fix | Delete
delete btn.button_color_bg;
[370] Fix | Delete
}
[371] Fix | Delete
if(btn.link_options!=='lightbox'){
[372] Fix | Delete
delete btn.lightbox_width;
[373] Fix | Delete
delete btn.lightbox_height;
[374] Fix | Delete
}
[375] Fix | Delete
if(!btn.lightbox_width){
[376] Fix | Delete
delete btn.lightbox_width_unit;
[377] Fix | Delete
}
[378] Fix | Delete
if(!btn.lightbox_height){
[379] Fix | Delete
delete btn.lightbox_height_unit;
[380] Fix | Delete
}
[381] Fix | Delete
if(btn.t==='l'){
[382] Fix | Delete
delete btn.icon;
[383] Fix | Delete
}
[384] Fix | Delete
else{
[385] Fix | Delete
delete btn.path;
[386] Fix | Delete
}
[387] Fix | Delete
if(!btn.path){
[388] Fix | Delete
for(let i=lottieDel.length-1;i>-1;--i){
[389] Fix | Delete
if(btn[lottieDel[i]]!==undefined){
[390] Fix | Delete
delete btn[lottieDel[i]];
[391] Fix | Delete
}
[392] Fix | Delete
}
[393] Fix | Delete
}
[394] Fix | Delete
}
[395] Fix | Delete
}
[396] Fix | Delete
for(let bps=api.breakpointsReverse,i=bps.length-1;i>-1;--i){
[397] Fix | Delete
let bp=bps[i];
[398] Fix | Delete
//Image Gradient
[399] Fix | Delete
this.clearImageGradient('background_image','background_color','background_repeat','background_position',bp,settings);
[400] Fix | Delete
this.clearImageGradient('b_i_h','bg_c_h','b_r_h','b_p_h',bp,settings);
[401] Fix | Delete
this.clearImageGradient('b_i','button_background_color','b_r','b_p',bp,settings);
[402] Fix | Delete
this.clearImageGradient('bl_i','button_hover_background_color','bl_r','bl_p',bp,settings);
[403] Fix | Delete
this.clearImageGradient('bic_b_i','bic_b_c','bic_b_r','bic_b_p',bp,settings);
[404] Fix | Delete
this.clearImageGradient('bic_b_i_h','bic_h_b_c','bic_b_r_h','bic_b_p_h',bp,settings);
[405] Fix | Delete
//Font color
[406] Fix | Delete
this.clearFontColor('font_color_type','font_color','font_gradient_color',bp,settings);
[407] Fix | Delete
this.clearFontColor('f_c_t_h','f_c_h','f_g_c_h',bp,settings);
[408] Fix | Delete
//Text Shadow
[409] Fix | Delete
this.clearShadow('text-shadow',0,bp,settings);
[410] Fix | Delete
this.clearShadow('t_sh_h',0,bp,settings);
[411] Fix | Delete
//paddings
[412] Fix | Delete
this.clearPadding('padding',bp,settings);
[413] Fix | Delete
this.clearPadding('p_h',bp,settings);
[414] Fix | Delete
this.clearPadding('padding_link',bp,settings);
[415] Fix | Delete
this.clearPadding('p_l_h',bp,settings);
[416] Fix | Delete
this.clearPadding('p_i_bic',bp,settings);
[417] Fix | Delete
this.clearPadding('p_i_bic_h',bp,settings);
[418] Fix | Delete
//margin
[419] Fix | Delete
this.clearPadding('margin',bp,settings);
[420] Fix | Delete
this.clearPadding('m_h',bp,settings);
[421] Fix | Delete
this.clearPadding('link_margin',bp,settings);
[422] Fix | Delete
this.clearPadding('l_m_h',bp,settings);
[423] Fix | Delete
this.clearPadding('m_i_bic',bp,settings);
[424] Fix | Delete
this.clearPadding('m_i_bic_h',bp,settings);
[425] Fix | Delete
//border-radius
[426] Fix | Delete
this.clearPadding('b_ra',bp,settings);
[427] Fix | Delete
this.clearPadding('r_c_h',bp,settings);
[428] Fix | Delete
this.clearPadding('l_b_r_c',bp,settings);
[429] Fix | Delete
this.clearPadding('l_b_r_c_h',bp,settings);
[430] Fix | Delete
this.clearPadding('rc_i_bic',bp,settings);
[431] Fix | Delete
this.clearPadding('rc_i_bic_h',bp,settings);
[432] Fix | Delete
//border
[433] Fix | Delete
this.clearBorder('border',bp,settings);
[434] Fix | Delete
this.clearBorder('b_h',bp,settings);
[435] Fix | Delete
this.clearBorder('link_border',bp,settings);
[436] Fix | Delete
this.clearBorder('l_b_h',bp,settings);
[437] Fix | Delete
this.clearBorder('b_i_bic',bp,settings);
[438] Fix | Delete
this.clearBorder('b_i_bic_h',bp,settings);
[439] Fix | Delete
//filters
[440] Fix | Delete
this.clearFilter('bl_m','css_f',bp,settings);
[441] Fix | Delete
this.clearFilter('_h','css_f_h',bp,settings);
[442] Fix | Delete
//width,height
[443] Fix | Delete
this.clearWidth('w',bp,settings);
[444] Fix | Delete
this.clearWidth('ht',bp,settings,1);
[445] Fix | Delete
//Box Shadow
[446] Fix | Delete
this.clearShadow('b_sh',1,bp,settings);
[447] Fix | Delete
this.clearShadow('sh_h',1,bp,settings);
[448] Fix | Delete
this.clearShadow('l_b_sh',1,bp,settings);
[449] Fix | Delete
this.clearShadow('l_b_sh_h',1,bp,settings);
[450] Fix | Delete
this.clearShadow('sh_i_bic',1,bp,settings);
[451] Fix | Delete
this.clearShadow('sh_i_bic_h',1,bp,settings);
[452] Fix | Delete
//position
[453] Fix | Delete
this.clearPosition('po',bp,settings);
[454] Fix | Delete
//transform
[455] Fix | Delete
this.clearTransform('tr',bp,settings);
[456] Fix | Delete
this.clearTransform('tr-h',bp,settings);
[457] Fix | Delete
//units
[458] Fix | Delete
this.clearUnits(units,bp,settings);
[459] Fix | Delete
}
[460] Fix | Delete
super.builderSave(settings);
[461] Fix | Delete
}
[462] Fix | Delete
_getItem(item,data){
[463] Fix | Delete
let buttonWrap = createElement('','module-buttons-item tf_in_flx tf_rel tb_is_repeat'),
[464] Fix | Delete
icon = item.t !== 'l' ? (item.icon ? api.Helper.getIcon(item.icon) : '') : api.Helper.getLottie(item, 'parent'),
[465] Fix | Delete
align=item.icon_alignment || 'left',
[466] Fix | Delete
iconEl = icon ? createElement('em') : undefined,
[467] Fix | Delete
constructor=this.constructor;
[468] Fix | Delete
[469] Fix | Delete
[470] Fix | Delete
iconEl?.appendChild(icon);
[471] Fix | Delete
[472] Fix | Delete
if (item.link) {
[473] Fix | Delete
let color = !item.button_color_bg || item.button_color_bg === 'default' ? 'tb_default_color' : item.button_color_bg,
[474] Fix | Delete
link = constructor._setEditableContent(createElement('a',{href:item.link,class:'ui builder_button tf_in_flx ' + color}),'label',item.label,'','content_button');
[475] Fix | Delete
if (item.id) {
[476] Fix | Delete
link.id = item.id;
[477] Fix | Delete
}
[478] Fix | Delete
if (item.title) {
[479] Fix | Delete
link.title = item.title;
[480] Fix | Delete
}
[481] Fix | Delete
if (data.download_link === 'yes') {
[482] Fix | Delete
link.setAttribute('download', 1);
[483] Fix | Delete
}
[484] Fix | Delete
if (iconEl) {
[485] Fix | Delete
align === 'right' ? link.appendChild(iconEl):link.prepend(iconEl);
[486] Fix | Delete
}
[487] Fix | Delete
buttonWrap.appendChild(link);
[488] Fix | Delete
}
[489] Fix | Delete
else {
[490] Fix | Delete
buttonWrap.appendChild(constructor._setEditableContent(createElement('span','tf_inline_b tf_vmiddle'),'label',item.label,'','content_button'));
[491] Fix | Delete
if (iconEl) {
[492] Fix | Delete
align === 'right' ? buttonWrap.appendChild(iconEl):buttonWrap.prepend(iconEl);
[493] Fix | Delete
}
[494] Fix | Delete
}
[495] Fix | Delete
buttonWrap.appendChild(createElement('',{role:'button',title:'Delete Button',class:'tb_del_btn tb_del_mbtn tf_close tb_disable_sorting'}));
[496] Fix | Delete
return buttonWrap;
[497] Fix | Delete
}
[498] Fix | Delete
preview(data) {
[499] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function