kollapsminoriteten/wp-admin/js/comment.js

103 lines
2.9 KiB
JavaScript
Raw Permalink Normal View History

2019-11-02 10:38:58 +01:00
/**
* @output wp-admin/js/comment.js
*/
2020-09-15 14:29:22 +02:00
/* global postboxes */
2019-11-02 10:38:58 +01:00
/**
* Binds to the document ready event.
*
* @since 2.5.0
*
* @param {jQuery} $ The jQuery object.
*/
2021-07-23 11:58:50 +02:00
jQuery( function($) {
2019-11-02 10:38:58 +01:00
postboxes.add_postbox_toggles('comment');
var $timestampdiv = $('#timestampdiv'),
$timestamp = $( '#timestamp' ),
stamp = $timestamp.html(),
$timestampwrap = $timestampdiv.find( '.timestamp-wrap' ),
$edittimestamp = $timestampdiv.siblings( 'a.edit-timestamp' );
/**
* Adds event that opens the time stamp form if the form is hidden.
*
* @listens $edittimestamp:click
*
* @param {Event} event The event object.
2020-05-06 17:23:38 +02:00
* @return {void}
2019-11-02 10:38:58 +01:00
*/
2021-04-27 08:32:47 +02:00
$edittimestamp.on( 'click', function( event ) {
2019-11-02 10:38:58 +01:00
if ( $timestampdiv.is( ':hidden' ) ) {
// Slide down the form and set focus on the first field.
$timestampdiv.slideDown( 'fast', function() {
2021-04-27 08:32:47 +02:00
$( 'input, select', $timestampwrap ).first().trigger( 'focus' );
2019-11-02 10:38:58 +01:00
} );
$(this).hide();
}
event.preventDefault();
});
/**
* Resets the time stamp values when the cancel button is clicked.
*
* @listens .cancel-timestamp:click
*
* @param {Event} event The event object.
2020-05-06 17:23:38 +02:00
* @return {void}
2019-11-02 10:38:58 +01:00
*/
2021-04-27 08:32:47 +02:00
$timestampdiv.find('.cancel-timestamp').on( 'click', function( event ) {
2019-11-02 10:38:58 +01:00
// Move focus back to the Edit link.
2021-04-27 08:32:47 +02:00
$edittimestamp.show().trigger( 'focus' );
2019-11-02 10:38:58 +01:00
$timestampdiv.slideUp( 'fast' );
$('#mm').val($('#hidden_mm').val());
$('#jj').val($('#hidden_jj').val());
$('#aa').val($('#hidden_aa').val());
$('#hh').val($('#hidden_hh').val());
$('#mn').val($('#hidden_mn').val());
$timestamp.html( stamp );
event.preventDefault();
});
/**
* Sets the time stamp values when the ok button is clicked.
*
* @listens .save-timestamp:click
*
* @param {Event} event The event object.
2020-05-06 17:23:38 +02:00
* @return {void}
2019-11-02 10:38:58 +01:00
*/
2024-04-17 11:32:24 +02:00
$timestampdiv.find('.save-timestamp').on( 'click', function( event ) { // Crazyhorse branch - multiple OK cancels.
2019-11-02 10:38:58 +01:00
var aa = $('#aa').val(), mm = $('#mm').val(), jj = $('#jj').val(), hh = $('#hh').val(), mn = $('#mn').val(),
newD = new Date( aa, mm - 1, jj, hh, mn );
event.preventDefault();
if ( newD.getFullYear() != aa || (1 + newD.getMonth()) != mm || newD.getDate() != jj || newD.getMinutes() != mn ) {
$timestampwrap.addClass( 'form-invalid' );
return;
} else {
$timestampwrap.removeClass( 'form-invalid' );
}
$timestamp.html(
2020-09-15 14:29:22 +02:00
wp.i18n.__( 'Submitted on:' ) + ' <b>' +
/* translators: 1: Month, 2: Day, 3: Year, 4: Hour, 5: Minute. */
wp.i18n.__( '%1$s %2$s, %3$s at %4$s:%5$s' )
2019-11-02 10:38:58 +01:00
.replace( '%1$s', $( 'option[value="' + mm + '"]', '#mm' ).attr( 'data-text' ) )
.replace( '%2$s', parseInt( jj, 10 ) )
.replace( '%3$s', aa )
.replace( '%4$s', ( '00' + hh ).slice( -2 ) )
.replace( '%5$s', ( '00' + mn ).slice( -2 ) ) +
'</b> '
);
// Move focus back to the Edit link.
2021-04-27 08:32:47 +02:00
$edittimestamp.show().trigger( 'focus' );
2019-11-02 10:38:58 +01:00
$timestampdiv.slideUp( 'fast' );
});
});