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

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-inclu.../js
File: customize-preview-widgets.js
if ( widgetPartial ) {
[500] Fix | Delete
_.each( widgetPartial.placements(), function( placement ) {
[501] Fix | Delete
var isRemoved = (
[502] Fix | Delete
placement.context.sidebar_id === sidebarPartial.sidebarId ||
[503] Fix | Delete
( placement.context.sidebar_args && placement.context.sidebar_args.id === sidebarPartial.sidebarId )
[504] Fix | Delete
);
[505] Fix | Delete
if ( isRemoved ) {
[506] Fix | Delete
placement.container.remove();
[507] Fix | Delete
}
[508] Fix | Delete
} );
[509] Fix | Delete
}
[510] Fix | Delete
delete self.renderedWidgets[ removedWidgetId ];
[511] Fix | Delete
} );
[512] Fix | Delete
[513] Fix | Delete
// Handle insertion of widgets.
[514] Fix | Delete
widgetsAdded = _.difference( newWidgetIds, oldWidgetIds );
[515] Fix | Delete
_.each( widgetsAdded, function( addedWidgetId ) {
[516] Fix | Delete
var widgetPartial = sidebarPartial.ensureWidgetPlacementContainers( addedWidgetId );
[517] Fix | Delete
addedWidgetPartials.push( widgetPartial );
[518] Fix | Delete
self.renderedWidgets[ addedWidgetId ] = true;
[519] Fix | Delete
} );
[520] Fix | Delete
[521] Fix | Delete
_.each( addedWidgetPartials, function( widgetPartial ) {
[522] Fix | Delete
widgetPartial.refresh();
[523] Fix | Delete
} );
[524] Fix | Delete
[525] Fix | Delete
api.selectiveRefresh.trigger( 'sidebar-updated', sidebarPartial );
[526] Fix | Delete
},
[527] Fix | Delete
[528] Fix | Delete
/**
[529] Fix | Delete
* Refreshes the sidebar partial.
[530] Fix | Delete
*
[531] Fix | Delete
* Note that the meat is handled in handleSettingChange because it has the
[532] Fix | Delete
* context of which widgets were removed.
[533] Fix | Delete
*
[534] Fix | Delete
* @since 4.5.0
[535] Fix | Delete
*
[536] Fix | Delete
* @return {Promise} A promise postponing the refresh.
[537] Fix | Delete
*/
[538] Fix | Delete
refresh: function() {
[539] Fix | Delete
var partial = this, deferred = $.Deferred();
[540] Fix | Delete
[541] Fix | Delete
deferred.fail( function() {
[542] Fix | Delete
partial.fallback();
[543] Fix | Delete
} );
[544] Fix | Delete
[545] Fix | Delete
if ( 0 === partial.placements().length ) {
[546] Fix | Delete
deferred.reject();
[547] Fix | Delete
} else {
[548] Fix | Delete
_.each( partial.reflowWidgets(), function( sidebarPlacement ) {
[549] Fix | Delete
api.selectiveRefresh.trigger( 'partial-content-rendered', sidebarPlacement );
[550] Fix | Delete
} );
[551] Fix | Delete
deferred.resolve();
[552] Fix | Delete
}
[553] Fix | Delete
[554] Fix | Delete
return deferred.promise();
[555] Fix | Delete
}
[556] Fix | Delete
});
[557] Fix | Delete
[558] Fix | Delete
api.selectiveRefresh.partialConstructor.sidebar = self.SidebarPartial;
[559] Fix | Delete
api.selectiveRefresh.partialConstructor.widget = self.WidgetPartial;
[560] Fix | Delete
[561] Fix | Delete
/**
[562] Fix | Delete
* Adds partials for the registered widget areas (sidebars).
[563] Fix | Delete
*
[564] Fix | Delete
* @since 4.5.0
[565] Fix | Delete
*
[566] Fix | Delete
* @return {void}
[567] Fix | Delete
*/
[568] Fix | Delete
self.addPartials = function() {
[569] Fix | Delete
_.each( self.registeredSidebars, function( registeredSidebar ) {
[570] Fix | Delete
var partial, partialId = 'sidebar[' + registeredSidebar.id + ']';
[571] Fix | Delete
partial = api.selectiveRefresh.partial( partialId );
[572] Fix | Delete
if ( ! partial ) {
[573] Fix | Delete
partial = new self.SidebarPartial( partialId, {
[574] Fix | Delete
params: {
[575] Fix | Delete
sidebarArgs: registeredSidebar
[576] Fix | Delete
}
[577] Fix | Delete
} );
[578] Fix | Delete
api.selectiveRefresh.partial.add( partial );
[579] Fix | Delete
}
[580] Fix | Delete
} );
[581] Fix | Delete
};
[582] Fix | Delete
[583] Fix | Delete
/**
[584] Fix | Delete
* Calculates the selector for the sidebar's widgets based on the registered
[585] Fix | Delete
* sidebar's info.
[586] Fix | Delete
*
[587] Fix | Delete
* @memberOf wp.customize.widgetsPreview
[588] Fix | Delete
*
[589] Fix | Delete
* @since 3.9.0
[590] Fix | Delete
*
[591] Fix | Delete
* @return {void}
[592] Fix | Delete
*/
[593] Fix | Delete
self.buildWidgetSelectors = function() {
[594] Fix | Delete
var self = this;
[595] Fix | Delete
[596] Fix | Delete
$.each( self.registeredSidebars, function( i, sidebar ) {
[597] Fix | Delete
var widgetTpl = [
[598] Fix | Delete
sidebar.before_widget,
[599] Fix | Delete
sidebar.before_title,
[600] Fix | Delete
sidebar.after_title,
[601] Fix | Delete
sidebar.after_widget
[602] Fix | Delete
].join( '' ),
[603] Fix | Delete
emptyWidget,
[604] Fix | Delete
widgetSelector,
[605] Fix | Delete
widgetClasses;
[606] Fix | Delete
[607] Fix | Delete
emptyWidget = $( widgetTpl );
[608] Fix | Delete
widgetSelector = emptyWidget.prop( 'tagName' ) || '';
[609] Fix | Delete
widgetClasses = emptyWidget.prop( 'className' ) || '';
[610] Fix | Delete
[611] Fix | Delete
// Prevent a rare case when before_widget, before_title, after_title and after_widget is empty.
[612] Fix | Delete
if ( ! widgetClasses ) {
[613] Fix | Delete
return;
[614] Fix | Delete
}
[615] Fix | Delete
[616] Fix | Delete
// Remove class names that incorporate the string formatting placeholders %1$s and %2$s.
[617] Fix | Delete
widgetClasses = widgetClasses.replace( /\S*%[12]\$s\S*/g, '' );
[618] Fix | Delete
widgetClasses = widgetClasses.replace( /^\s+|\s+$/g, '' );
[619] Fix | Delete
if ( widgetClasses ) {
[620] Fix | Delete
widgetSelector += '.' + widgetClasses.split( /\s+/ ).join( '.' );
[621] Fix | Delete
}
[622] Fix | Delete
self.widgetSelectors.push( widgetSelector );
[623] Fix | Delete
});
[624] Fix | Delete
};
[625] Fix | Delete
[626] Fix | Delete
/**
[627] Fix | Delete
* Highlights the widget on widget updates or widget control mouse overs.
[628] Fix | Delete
*
[629] Fix | Delete
* @memberOf wp.customize.widgetsPreview
[630] Fix | Delete
*
[631] Fix | Delete
* @since 3.9.0
[632] Fix | Delete
* @param {string} widgetId ID of the widget.
[633] Fix | Delete
*
[634] Fix | Delete
* @return {void}
[635] Fix | Delete
*/
[636] Fix | Delete
self.highlightWidget = function( widgetId ) {
[637] Fix | Delete
var $body = $( document.body ),
[638] Fix | Delete
$widget = $( '#' + widgetId );
[639] Fix | Delete
[640] Fix | Delete
$body.find( '.widget-customizer-highlighted-widget' ).removeClass( 'widget-customizer-highlighted-widget' );
[641] Fix | Delete
[642] Fix | Delete
$widget.addClass( 'widget-customizer-highlighted-widget' );
[643] Fix | Delete
setTimeout( function() {
[644] Fix | Delete
$widget.removeClass( 'widget-customizer-highlighted-widget' );
[645] Fix | Delete
}, 500 );
[646] Fix | Delete
};
[647] Fix | Delete
[648] Fix | Delete
/**
[649] Fix | Delete
* Shows a title and highlights widgets on hover. On shift+clicking focuses the
[650] Fix | Delete
* widget control.
[651] Fix | Delete
*
[652] Fix | Delete
* @memberOf wp.customize.widgetsPreview
[653] Fix | Delete
*
[654] Fix | Delete
* @since 3.9.0
[655] Fix | Delete
*
[656] Fix | Delete
* @return {void}
[657] Fix | Delete
*/
[658] Fix | Delete
self.highlightControls = function() {
[659] Fix | Delete
var self = this,
[660] Fix | Delete
selector = this.widgetSelectors.join( ',' );
[661] Fix | Delete
[662] Fix | Delete
// Skip adding highlights if not in the customizer preview iframe.
[663] Fix | Delete
if ( ! api.settings.channel ) {
[664] Fix | Delete
return;
[665] Fix | Delete
}
[666] Fix | Delete
[667] Fix | Delete
$( selector ).attr( 'title', this.l10n.widgetTooltip );
[668] Fix | Delete
// Highlights widget when entering the widget editor.
[669] Fix | Delete
$( document ).on( 'mouseenter', selector, function() {
[670] Fix | Delete
self.preview.send( 'highlight-widget-control', $( this ).prop( 'id' ) );
[671] Fix | Delete
});
[672] Fix | Delete
[673] Fix | Delete
// Open expand the widget control when shift+clicking the widget element.
[674] Fix | Delete
$( document ).on( 'click', selector, function( e ) {
[675] Fix | Delete
if ( ! e.shiftKey ) {
[676] Fix | Delete
return;
[677] Fix | Delete
}
[678] Fix | Delete
e.preventDefault();
[679] Fix | Delete
[680] Fix | Delete
self.preview.send( 'focus-widget-control', $( this ).prop( 'id' ) );
[681] Fix | Delete
});
[682] Fix | Delete
};
[683] Fix | Delete
[684] Fix | Delete
/**
[685] Fix | Delete
* Parses a widget ID.
[686] Fix | Delete
*
[687] Fix | Delete
* @memberOf wp.customize.widgetsPreview
[688] Fix | Delete
*
[689] Fix | Delete
* @since 4.5.0
[690] Fix | Delete
*
[691] Fix | Delete
* @param {string} widgetId The widget ID.
[692] Fix | Delete
*
[693] Fix | Delete
* @return {{idBase: string, number: number|null}} An object containing the idBase
[694] Fix | Delete
* and number of the parsed widget ID.
[695] Fix | Delete
*/
[696] Fix | Delete
self.parseWidgetId = function( widgetId ) {
[697] Fix | Delete
var matches, parsed = {
[698] Fix | Delete
idBase: '',
[699] Fix | Delete
number: null
[700] Fix | Delete
};
[701] Fix | Delete
[702] Fix | Delete
matches = widgetId.match( /^(.+)-(\d+)$/ );
[703] Fix | Delete
if ( matches ) {
[704] Fix | Delete
parsed.idBase = matches[1];
[705] Fix | Delete
parsed.number = parseInt( matches[2], 10 );
[706] Fix | Delete
} else {
[707] Fix | Delete
parsed.idBase = widgetId; // Likely an old single widget.
[708] Fix | Delete
}
[709] Fix | Delete
[710] Fix | Delete
return parsed;
[711] Fix | Delete
};
[712] Fix | Delete
[713] Fix | Delete
/**
[714] Fix | Delete
* Parses a widget setting ID.
[715] Fix | Delete
*
[716] Fix | Delete
* @memberOf wp.customize.widgetsPreview
[717] Fix | Delete
*
[718] Fix | Delete
* @since 4.5.0
[719] Fix | Delete
*
[720] Fix | Delete
* @param {string} settingId Widget setting ID.
[721] Fix | Delete
*
[722] Fix | Delete
* @return {{idBase: string, number: number|null}|null} Either an object containing the idBase
[723] Fix | Delete
* and number of the parsed widget setting ID,
[724] Fix | Delete
* or null.
[725] Fix | Delete
*/
[726] Fix | Delete
self.parseWidgetSettingId = function( settingId ) {
[727] Fix | Delete
var matches, parsed = {
[728] Fix | Delete
idBase: '',
[729] Fix | Delete
number: null
[730] Fix | Delete
};
[731] Fix | Delete
[732] Fix | Delete
matches = settingId.match( /^widget_([^\[]+?)(?:\[(\d+)])?$/ );
[733] Fix | Delete
if ( ! matches ) {
[734] Fix | Delete
return null;
[735] Fix | Delete
}
[736] Fix | Delete
parsed.idBase = matches[1];
[737] Fix | Delete
if ( matches[2] ) {
[738] Fix | Delete
parsed.number = parseInt( matches[2], 10 );
[739] Fix | Delete
}
[740] Fix | Delete
return parsed;
[741] Fix | Delete
};
[742] Fix | Delete
[743] Fix | Delete
/**
[744] Fix | Delete
* Converts a widget ID into a Customizer setting ID.
[745] Fix | Delete
*
[746] Fix | Delete
* @memberOf wp.customize.widgetsPreview
[747] Fix | Delete
*
[748] Fix | Delete
* @since 4.5.0
[749] Fix | Delete
*
[750] Fix | Delete
* @param {string} widgetId The widget ID.
[751] Fix | Delete
*
[752] Fix | Delete
* @return {string} The setting ID.
[753] Fix | Delete
*/
[754] Fix | Delete
self.getWidgetSettingId = function( widgetId ) {
[755] Fix | Delete
var parsed = this.parseWidgetId( widgetId ), settingId;
[756] Fix | Delete
[757] Fix | Delete
settingId = 'widget_' + parsed.idBase;
[758] Fix | Delete
if ( parsed.number ) {
[759] Fix | Delete
settingId += '[' + String( parsed.number ) + ']';
[760] Fix | Delete
}
[761] Fix | Delete
[762] Fix | Delete
return settingId;
[763] Fix | Delete
};
[764] Fix | Delete
[765] Fix | Delete
api.bind( 'preview-ready', function() {
[766] Fix | Delete
$.extend( self, _wpWidgetCustomizerPreviewSettings );
[767] Fix | Delete
self.init();
[768] Fix | Delete
});
[769] Fix | Delete
[770] Fix | Delete
return self;
[771] Fix | Delete
})( jQuery, _, wp, wp.customize );
[772] Fix | Delete
[773] Fix | Delete
12
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function