mirror of
https://github.com/WordPress/WordPress.git
synced 2024-09-12 15:48:34 +02:00
As decided in the JavaScript core chat. With a few reasons: * It is visually cleaner when reading the source. * This bring the JavaScript documentation closer to the PHP documentation. The only disadvantage is that the JSDoc parser doesn't split out the summary and the description in the new format. We've decided to solve this when building the JavaScript documentation parser. Props herregroen. Fixes #42901. Built from https://develop.svn.wordpress.org/trunk@42411 git-svn-id: http://core.svn.wordpress.org/trunk@42240 1a063a9b-81f0-0310-95a4-ce76da25c4cd
98 lines
2.7 KiB
JavaScript
98 lines
2.7 KiB
JavaScript
/* global postboxes, commentL10n */
|
|
|
|
/**
|
|
* Binds to the document ready event.
|
|
*
|
|
* @since 2.5.0
|
|
*
|
|
* @param {jQuery} $ The jQuery object.
|
|
*/
|
|
jQuery(document).ready( function($) {
|
|
|
|
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.
|
|
* @returns {void}
|
|
*/
|
|
$edittimestamp.click( function( event ) {
|
|
if ( $timestampdiv.is( ':hidden' ) ) {
|
|
// Slide down the form and set focus on the first field.
|
|
$timestampdiv.slideDown( 'fast', function() {
|
|
$( 'input, select', $timestampwrap ).first().focus();
|
|
} );
|
|
$(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.
|
|
* @returns {void}
|
|
*/
|
|
|
|
$timestampdiv.find('.cancel-timestamp').click( function( event ) {
|
|
// Move focus back to the Edit link.
|
|
$edittimestamp.show().focus();
|
|
$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.
|
|
* @returns {void}
|
|
*/
|
|
$timestampdiv.find('.save-timestamp').click( function( event ) { // crazyhorse - multiple ok cancels
|
|
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(
|
|
commentL10n.submittedOn + ' <b>' +
|
|
commentL10n.dateFormat
|
|
.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.
|
|
$edittimestamp.show().focus();
|
|
$timestampdiv.slideUp( 'fast' );
|
|
});
|
|
});
|