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/wp-admin/js
File: post.js
* @global
[1000] Fix | Delete
*
[1001] Fix | Delete
* @return {void}
[1002] Fix | Delete
*/
[1003] Fix | Delete
function editPermalink() {
[1004] Fix | Delete
var i, slug_value, slug_label,
[1005] Fix | Delete
$el, revert_e,
[1006] Fix | Delete
c = 0,
[1007] Fix | Delete
real_slug = $('#post_name'),
[1008] Fix | Delete
revert_slug = real_slug.val(),
[1009] Fix | Delete
permalink = $( '#sample-permalink' ),
[1010] Fix | Delete
permalinkOrig = permalink.html(),
[1011] Fix | Delete
permalinkInner = $( '#sample-permalink a' ).html(),
[1012] Fix | Delete
buttons = $('#edit-slug-buttons'),
[1013] Fix | Delete
buttonsOrig = buttons.html(),
[1014] Fix | Delete
full = $('#editable-post-name-full');
[1015] Fix | Delete
[1016] Fix | Delete
// Deal with Twemoji in the post-name.
[1017] Fix | Delete
full.find( 'img' ).replaceWith( function() { return this.alt; } );
[1018] Fix | Delete
full = full.html();
[1019] Fix | Delete
[1020] Fix | Delete
permalink.html( permalinkInner );
[1021] Fix | Delete
[1022] Fix | Delete
// Save current content to revert to when cancelling.
[1023] Fix | Delete
$el = $( '#editable-post-name' );
[1024] Fix | Delete
revert_e = $el.html();
[1025] Fix | Delete
[1026] Fix | Delete
buttons.html(
[1027] Fix | Delete
'<button type="button" class="save button button-small">' + __( 'OK' ) + '</button> ' +
[1028] Fix | Delete
'<button type="button" class="cancel button-link">' + __( 'Cancel' ) + '</button>'
[1029] Fix | Delete
);
[1030] Fix | Delete
[1031] Fix | Delete
// Save permalink changes.
[1032] Fix | Delete
buttons.children( '.save' ).on( 'click', function() {
[1033] Fix | Delete
var new_slug = $el.children( 'input' ).val();
[1034] Fix | Delete
[1035] Fix | Delete
if ( new_slug == $('#editable-post-name-full').text() ) {
[1036] Fix | Delete
buttons.children('.cancel').trigger( 'click' );
[1037] Fix | Delete
return;
[1038] Fix | Delete
}
[1039] Fix | Delete
[1040] Fix | Delete
$.post(
[1041] Fix | Delete
ajaxurl,
[1042] Fix | Delete
{
[1043] Fix | Delete
action: 'sample-permalink',
[1044] Fix | Delete
post_id: postId,
[1045] Fix | Delete
new_slug: new_slug,
[1046] Fix | Delete
new_title: $('#title').val(),
[1047] Fix | Delete
samplepermalinknonce: $('#samplepermalinknonce').val()
[1048] Fix | Delete
},
[1049] Fix | Delete
function(data) {
[1050] Fix | Delete
var box = $('#edit-slug-box');
[1051] Fix | Delete
box.html(data);
[1052] Fix | Delete
if (box.hasClass('hidden')) {
[1053] Fix | Delete
box.fadeIn('fast', function () {
[1054] Fix | Delete
box.removeClass('hidden');
[1055] Fix | Delete
});
[1056] Fix | Delete
}
[1057] Fix | Delete
[1058] Fix | Delete
buttons.html(buttonsOrig);
[1059] Fix | Delete
permalink.html(permalinkOrig);
[1060] Fix | Delete
real_slug.val(new_slug);
[1061] Fix | Delete
$( '.edit-slug' ).trigger( 'focus' );
[1062] Fix | Delete
wp.a11y.speak( __( 'Permalink saved' ) );
[1063] Fix | Delete
}
[1064] Fix | Delete
);
[1065] Fix | Delete
});
[1066] Fix | Delete
[1067] Fix | Delete
// Cancel editing of permalink.
[1068] Fix | Delete
buttons.children( '.cancel' ).on( 'click', function() {
[1069] Fix | Delete
$('#view-post-btn').show();
[1070] Fix | Delete
$el.html(revert_e);
[1071] Fix | Delete
buttons.html(buttonsOrig);
[1072] Fix | Delete
permalink.html(permalinkOrig);
[1073] Fix | Delete
real_slug.val(revert_slug);
[1074] Fix | Delete
$( '.edit-slug' ).trigger( 'focus' );
[1075] Fix | Delete
});
[1076] Fix | Delete
[1077] Fix | Delete
// If more than 1/4th of 'full' is '%', make it empty.
[1078] Fix | Delete
for ( i = 0; i < full.length; ++i ) {
[1079] Fix | Delete
if ( '%' == full.charAt(i) )
[1080] Fix | Delete
c++;
[1081] Fix | Delete
}
[1082] Fix | Delete
slug_value = ( c > full.length / 4 ) ? '' : full;
[1083] Fix | Delete
slug_label = __( 'URL Slug' );
[1084] Fix | Delete
[1085] Fix | Delete
$el.html(
[1086] Fix | Delete
'<label for="new-post-slug" class="screen-reader-text">' + slug_label + '</label>' +
[1087] Fix | Delete
'<input type="text" id="new-post-slug" value="' + slug_value + '" autocomplete="off" spellcheck="false" />'
[1088] Fix | Delete
).children( 'input' ).on( 'keydown', function( e ) {
[1089] Fix | Delete
var key = e.which;
[1090] Fix | Delete
// On [Enter], just save the new slug, don't save the post.
[1091] Fix | Delete
if ( 13 === key ) {
[1092] Fix | Delete
e.preventDefault();
[1093] Fix | Delete
buttons.children( '.save' ).trigger( 'click' );
[1094] Fix | Delete
}
[1095] Fix | Delete
// On [Esc] cancel the editing.
[1096] Fix | Delete
if ( 27 === key ) {
[1097] Fix | Delete
buttons.children( '.cancel' ).trigger( 'click' );
[1098] Fix | Delete
}
[1099] Fix | Delete
} ).on( 'keyup', function() {
[1100] Fix | Delete
real_slug.val( this.value );
[1101] Fix | Delete
}).trigger( 'focus' );
[1102] Fix | Delete
}
[1103] Fix | Delete
[1104] Fix | Delete
$( '#titlediv' ).on( 'click', '.edit-slug', function() {
[1105] Fix | Delete
editPermalink();
[1106] Fix | Delete
});
[1107] Fix | Delete
[1108] Fix | Delete
/**
[1109] Fix | Delete
* Adds screen reader text to the title label when needed.
[1110] Fix | Delete
*
[1111] Fix | Delete
* Use the 'screen-reader-text' class to emulate a placeholder attribute
[1112] Fix | Delete
* and hide the label when entering a value.
[1113] Fix | Delete
*
[1114] Fix | Delete
* @param {string} id Optional. HTML ID to add the screen reader helper text to.
[1115] Fix | Delete
*
[1116] Fix | Delete
* @global
[1117] Fix | Delete
*
[1118] Fix | Delete
* @return {void}
[1119] Fix | Delete
*/
[1120] Fix | Delete
window.wptitlehint = function( id ) {
[1121] Fix | Delete
id = id || 'title';
[1122] Fix | Delete
[1123] Fix | Delete
var title = $( '#' + id ), titleprompt = $( '#' + id + '-prompt-text' );
[1124] Fix | Delete
[1125] Fix | Delete
if ( '' === title.val() ) {
[1126] Fix | Delete
titleprompt.removeClass( 'screen-reader-text' );
[1127] Fix | Delete
}
[1128] Fix | Delete
[1129] Fix | Delete
title.on( 'input', function() {
[1130] Fix | Delete
if ( '' === this.value ) {
[1131] Fix | Delete
titleprompt.removeClass( 'screen-reader-text' );
[1132] Fix | Delete
return;
[1133] Fix | Delete
}
[1134] Fix | Delete
[1135] Fix | Delete
titleprompt.addClass( 'screen-reader-text' );
[1136] Fix | Delete
} );
[1137] Fix | Delete
};
[1138] Fix | Delete
[1139] Fix | Delete
wptitlehint();
[1140] Fix | Delete
[1141] Fix | Delete
// Resize the WYSIWYG and plain text editors.
[1142] Fix | Delete
( function() {
[1143] Fix | Delete
var editor, offset, mce,
[1144] Fix | Delete
$handle = $('#post-status-info'),
[1145] Fix | Delete
$postdivrich = $('#postdivrich');
[1146] Fix | Delete
[1147] Fix | Delete
// If there are no textareas or we are on a touch device, we can't do anything.
[1148] Fix | Delete
if ( ! $textarea.length || 'ontouchstart' in window ) {
[1149] Fix | Delete
// Hide the resize handle.
[1150] Fix | Delete
$('#content-resize-handle').hide();
[1151] Fix | Delete
return;
[1152] Fix | Delete
}
[1153] Fix | Delete
[1154] Fix | Delete
/**
[1155] Fix | Delete
* Handle drag event.
[1156] Fix | Delete
*
[1157] Fix | Delete
* @param {Object} event Event containing details about the drag.
[1158] Fix | Delete
*/
[1159] Fix | Delete
function dragging( event ) {
[1160] Fix | Delete
if ( $postdivrich.hasClass( 'wp-editor-expand' ) ) {
[1161] Fix | Delete
return;
[1162] Fix | Delete
}
[1163] Fix | Delete
[1164] Fix | Delete
if ( mce ) {
[1165] Fix | Delete
editor.theme.resizeTo( null, offset + event.pageY );
[1166] Fix | Delete
} else {
[1167] Fix | Delete
$textarea.height( Math.max( 50, offset + event.pageY ) );
[1168] Fix | Delete
}
[1169] Fix | Delete
[1170] Fix | Delete
event.preventDefault();
[1171] Fix | Delete
}
[1172] Fix | Delete
[1173] Fix | Delete
/**
[1174] Fix | Delete
* When the dragging stopped make sure we return focus and do a confidence check on the height.
[1175] Fix | Delete
*/
[1176] Fix | Delete
function endDrag() {
[1177] Fix | Delete
var height, toolbarHeight;
[1178] Fix | Delete
[1179] Fix | Delete
if ( $postdivrich.hasClass( 'wp-editor-expand' ) ) {
[1180] Fix | Delete
return;
[1181] Fix | Delete
}
[1182] Fix | Delete
[1183] Fix | Delete
if ( mce ) {
[1184] Fix | Delete
editor.focus();
[1185] Fix | Delete
toolbarHeight = parseInt( $( '#wp-content-editor-container .mce-toolbar-grp' ).height(), 10 );
[1186] Fix | Delete
[1187] Fix | Delete
if ( toolbarHeight < 10 || toolbarHeight > 200 ) {
[1188] Fix | Delete
toolbarHeight = 30;
[1189] Fix | Delete
}
[1190] Fix | Delete
[1191] Fix | Delete
height = parseInt( $('#content_ifr').css('height'), 10 ) + toolbarHeight - 28;
[1192] Fix | Delete
} else {
[1193] Fix | Delete
$textarea.trigger( 'focus' );
[1194] Fix | Delete
height = parseInt( $textarea.css('height'), 10 );
[1195] Fix | Delete
}
[1196] Fix | Delete
[1197] Fix | Delete
$document.off( '.wp-editor-resize' );
[1198] Fix | Delete
[1199] Fix | Delete
// Confidence check: normalize height to stay within acceptable ranges.
[1200] Fix | Delete
if ( height && height > 50 && height < 5000 ) {
[1201] Fix | Delete
setUserSetting( 'ed_size', height );
[1202] Fix | Delete
}
[1203] Fix | Delete
}
[1204] Fix | Delete
[1205] Fix | Delete
$handle.on( 'mousedown.wp-editor-resize', function( event ) {
[1206] Fix | Delete
if ( typeof tinymce !== 'undefined' ) {
[1207] Fix | Delete
editor = tinymce.get('content');
[1208] Fix | Delete
}
[1209] Fix | Delete
[1210] Fix | Delete
if ( editor && ! editor.isHidden() ) {
[1211] Fix | Delete
mce = true;
[1212] Fix | Delete
offset = $('#content_ifr').height() - event.pageY;
[1213] Fix | Delete
} else {
[1214] Fix | Delete
mce = false;
[1215] Fix | Delete
offset = $textarea.height() - event.pageY;
[1216] Fix | Delete
$textarea.trigger( 'blur' );
[1217] Fix | Delete
}
[1218] Fix | Delete
[1219] Fix | Delete
$document.on( 'mousemove.wp-editor-resize', dragging )
[1220] Fix | Delete
.on( 'mouseup.wp-editor-resize mouseleave.wp-editor-resize', endDrag );
[1221] Fix | Delete
[1222] Fix | Delete
event.preventDefault();
[1223] Fix | Delete
}).on( 'mouseup.wp-editor-resize', endDrag );
[1224] Fix | Delete
})();
[1225] Fix | Delete
[1226] Fix | Delete
// TinyMCE specific handling of Post Format changes to reflect in the editor.
[1227] Fix | Delete
if ( typeof tinymce !== 'undefined' ) {
[1228] Fix | Delete
// When changing post formats, change the editor body class.
[1229] Fix | Delete
$( '#post-formats-select input.post-format' ).on( 'change.set-editor-class', function() {
[1230] Fix | Delete
var editor, body, format = this.id;
[1231] Fix | Delete
[1232] Fix | Delete
if ( format && $( this ).prop( 'checked' ) && ( editor = tinymce.get( 'content' ) ) ) {
[1233] Fix | Delete
body = editor.getBody();
[1234] Fix | Delete
body.className = body.className.replace( /\bpost-format-[^ ]+/, '' );
[1235] Fix | Delete
editor.dom.addClass( body, format == 'post-format-0' ? 'post-format-standard' : format );
[1236] Fix | Delete
$( document ).trigger( 'editor-classchange' );
[1237] Fix | Delete
}
[1238] Fix | Delete
});
[1239] Fix | Delete
[1240] Fix | Delete
// When changing page template, change the editor body class.
[1241] Fix | Delete
$( '#page_template' ).on( 'change.set-editor-class', function() {
[1242] Fix | Delete
var editor, body, pageTemplate = $( this ).val() || '';
[1243] Fix | Delete
[1244] Fix | Delete
pageTemplate = pageTemplate.substr( pageTemplate.lastIndexOf( '/' ) + 1, pageTemplate.length )
[1245] Fix | Delete
.replace( /\.php$/, '' )
[1246] Fix | Delete
.replace( /\./g, '-' );
[1247] Fix | Delete
[1248] Fix | Delete
if ( pageTemplate && ( editor = tinymce.get( 'content' ) ) ) {
[1249] Fix | Delete
body = editor.getBody();
[1250] Fix | Delete
body.className = body.className.replace( /\bpage-template-[^ ]+/, '' );
[1251] Fix | Delete
editor.dom.addClass( body, 'page-template-' + pageTemplate );
[1252] Fix | Delete
$( document ).trigger( 'editor-classchange' );
[1253] Fix | Delete
}
[1254] Fix | Delete
});
[1255] Fix | Delete
[1256] Fix | Delete
}
[1257] Fix | Delete
[1258] Fix | Delete
// Save on pressing [Ctrl]/[Command] + [S] in the Text editor.
[1259] Fix | Delete
$textarea.on( 'keydown.wp-autosave', function( event ) {
[1260] Fix | Delete
// Key [S] has code 83.
[1261] Fix | Delete
if ( event.which === 83 ) {
[1262] Fix | Delete
if (
[1263] Fix | Delete
event.shiftKey ||
[1264] Fix | Delete
event.altKey ||
[1265] Fix | Delete
( isMac && ( ! event.metaKey || event.ctrlKey ) ) ||
[1266] Fix | Delete
( ! isMac && ! event.ctrlKey )
[1267] Fix | Delete
) {
[1268] Fix | Delete
return;
[1269] Fix | Delete
}
[1270] Fix | Delete
[1271] Fix | Delete
wp.autosave && wp.autosave.server.triggerSave();
[1272] Fix | Delete
event.preventDefault();
[1273] Fix | Delete
}
[1274] Fix | Delete
});
[1275] Fix | Delete
[1276] Fix | Delete
// If the last status was auto-draft and the save is triggered, edit the current URL.
[1277] Fix | Delete
if ( $( '#original_post_status' ).val() === 'auto-draft' && window.history.replaceState ) {
[1278] Fix | Delete
var location;
[1279] Fix | Delete
[1280] Fix | Delete
$( '#publish' ).on( 'click', function() {
[1281] Fix | Delete
location = window.location.href;
[1282] Fix | Delete
location += ( location.indexOf( '?' ) !== -1 ) ? '&' : '?';
[1283] Fix | Delete
location += 'wp-post-new-reload=true';
[1284] Fix | Delete
[1285] Fix | Delete
window.history.replaceState( null, null, location );
[1286] Fix | Delete
});
[1287] Fix | Delete
}
[1288] Fix | Delete
[1289] Fix | Delete
/**
[1290] Fix | Delete
* Copies the attachment URL in the Edit Media page to the clipboard.
[1291] Fix | Delete
*
[1292] Fix | Delete
* @since 5.5.0
[1293] Fix | Delete
*
[1294] Fix | Delete
* @param {MouseEvent} event A click event.
[1295] Fix | Delete
*
[1296] Fix | Delete
* @return {void}
[1297] Fix | Delete
*/
[1298] Fix | Delete
copyAttachmentURLClipboard.on( 'success', function( event ) {
[1299] Fix | Delete
var triggerElement = $( event.trigger ),
[1300] Fix | Delete
successElement = $( '.success', triggerElement.closest( '.copy-to-clipboard-container' ) );
[1301] Fix | Delete
[1302] Fix | Delete
// Clear the selection and move focus back to the trigger.
[1303] Fix | Delete
event.clearSelection();
[1304] Fix | Delete
[1305] Fix | Delete
// Show success visual feedback.
[1306] Fix | Delete
clearTimeout( copyAttachmentURLSuccessTimeout );
[1307] Fix | Delete
successElement.removeClass( 'hidden' );
[1308] Fix | Delete
[1309] Fix | Delete
// Hide success visual feedback after 3 seconds since last success.
[1310] Fix | Delete
copyAttachmentURLSuccessTimeout = setTimeout( function() {
[1311] Fix | Delete
successElement.addClass( 'hidden' );
[1312] Fix | Delete
}, 3000 );
[1313] Fix | Delete
[1314] Fix | Delete
// Handle success audible feedback.
[1315] Fix | Delete
wp.a11y.speak( __( 'The file URL has been copied to your clipboard' ) );
[1316] Fix | Delete
} );
[1317] Fix | Delete
} );
[1318] Fix | Delete
[1319] Fix | Delete
/**
[1320] Fix | Delete
* TinyMCE word count display
[1321] Fix | Delete
*/
[1322] Fix | Delete
( function( $, counter ) {
[1323] Fix | Delete
$( function() {
[1324] Fix | Delete
var $content = $( '#content' ),
[1325] Fix | Delete
$count = $( '#wp-word-count' ).find( '.word-count' ),
[1326] Fix | Delete
prevCount = 0,
[1327] Fix | Delete
contentEditor;
[1328] Fix | Delete
[1329] Fix | Delete
/**
[1330] Fix | Delete
* Get the word count from TinyMCE and display it
[1331] Fix | Delete
*/
[1332] Fix | Delete
function update() {
[1333] Fix | Delete
var text, count;
[1334] Fix | Delete
[1335] Fix | Delete
if ( ! contentEditor || contentEditor.isHidden() ) {
[1336] Fix | Delete
text = $content.val();
[1337] Fix | Delete
} else {
[1338] Fix | Delete
text = contentEditor.getContent( { format: 'raw' } );
[1339] Fix | Delete
}
[1340] Fix | Delete
[1341] Fix | Delete
count = counter.count( text );
[1342] Fix | Delete
[1343] Fix | Delete
if ( count !== prevCount ) {
[1344] Fix | Delete
$count.text( count );
[1345] Fix | Delete
}
[1346] Fix | Delete
[1347] Fix | Delete
prevCount = count;
[1348] Fix | Delete
}
[1349] Fix | Delete
[1350] Fix | Delete
/**
[1351] Fix | Delete
* Bind the word count update triggers.
[1352] Fix | Delete
*
[1353] Fix | Delete
* When a node change in the main TinyMCE editor has been triggered.
[1354] Fix | Delete
* When a key has been released in the plain text content editor.
[1355] Fix | Delete
*/
[1356] Fix | Delete
$( document ).on( 'tinymce-editor-init', function( event, editor ) {
[1357] Fix | Delete
if ( editor.id !== 'content' ) {
[1358] Fix | Delete
return;
[1359] Fix | Delete
}
[1360] Fix | Delete
[1361] Fix | Delete
contentEditor = editor;
[1362] Fix | Delete
[1363] Fix | Delete
editor.on( 'nodechange keyup', _.debounce( update, 1000 ) );
[1364] Fix | Delete
} );
[1365] Fix | Delete
[1366] Fix | Delete
$content.on( 'input keyup', _.debounce( update, 1000 ) );
[1367] Fix | Delete
[1368] Fix | Delete
update();
[1369] Fix | Delete
} );
[1370] Fix | Delete
[1371] Fix | Delete
} )( jQuery, new wp.utils.WordCounter() );
[1372] Fix | Delete
[1373] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function