Add a single responsibility function for outputting Revisions JS templates: `wp_print_revision_templates()`.
Use it in `wp-admin/revision.php`. Props ericlewis. Fixes #30220. Built from https://develop.svn.wordpress.org/trunk@30129 git-svn-id: http://core.svn.wordpress.org/trunk@30129 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
7cbb7552da
commit
a4963672d6
|
@ -237,3 +237,97 @@ function wp_prepare_revisions_for_js( $post, $selected_revision_id, $from = null
|
||||||
'revisionIds' => array_keys( $revisions ),
|
'revisionIds' => array_keys( $revisions ),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Print Javascript templates required for the revisions experience.
|
||||||
|
*
|
||||||
|
* @since 4.1.0
|
||||||
|
*/
|
||||||
|
function wp_print_revision_templates() {
|
||||||
|
global $post;
|
||||||
|
?><script id="tmpl-revisions-frame" type="text/html">
|
||||||
|
<div class="revisions-control-frame"></div>
|
||||||
|
<div class="revisions-diff-frame"></div>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script id="tmpl-revisions-buttons" type="text/html">
|
||||||
|
<div class="revisions-previous">
|
||||||
|
<input class="button" type="button" value="<?php echo esc_attr_x( 'Previous', 'Button label for a previous revision' ); ?>" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="revisions-next">
|
||||||
|
<input class="button" type="button" value="<?php echo esc_attr_x( 'Next', 'Button label for a next revision' ); ?>" />
|
||||||
|
</div>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script id="tmpl-revisions-checkbox" type="text/html">
|
||||||
|
<div class="revision-toggle-compare-mode">
|
||||||
|
<label>
|
||||||
|
<input type="checkbox" class="compare-two-revisions"
|
||||||
|
<#
|
||||||
|
if ( 'undefined' !== typeof data && data.model.attributes.compareTwoMode ) {
|
||||||
|
#> checked="checked"<#
|
||||||
|
}
|
||||||
|
#>
|
||||||
|
/>
|
||||||
|
<?php esc_attr_e( 'Compare any two revisions' ); ?>
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script id="tmpl-revisions-meta" type="text/html">
|
||||||
|
<# if ( ! _.isUndefined( data.attributes ) ) { #>
|
||||||
|
<div class="diff-title">
|
||||||
|
<# if ( 'from' === data.type ) { #>
|
||||||
|
<strong><?php _ex( 'From:', 'Followed by post revision info' ); ?></strong>
|
||||||
|
<# } else if ( 'to' === data.type ) { #>
|
||||||
|
<strong><?php _ex( 'To:', 'Followed by post revision info' ); ?></strong>
|
||||||
|
<# } #>
|
||||||
|
<div class="author-card<# if ( data.attributes.autosave ) { #> autosave<# } #>">
|
||||||
|
{{{ data.attributes.author.avatar }}}
|
||||||
|
<div class="author-info">
|
||||||
|
<# if ( data.attributes.autosave ) { #>
|
||||||
|
<span class="byline"><?php printf( __( 'Autosave by %s' ),
|
||||||
|
'<span class="author-name">{{ data.attributes.author.name }}</span>' ); ?></span>
|
||||||
|
<# } else if ( data.attributes.current ) { #>
|
||||||
|
<span class="byline"><?php printf( __( 'Current Revision by %s' ),
|
||||||
|
'<span class="author-name">{{ data.attributes.author.name }}</span>' ); ?></span>
|
||||||
|
<# } else { #>
|
||||||
|
<span class="byline"><?php printf( __( 'Revision by %s' ),
|
||||||
|
'<span class="author-name">{{ data.attributes.author.name }}</span>' ); ?></span>
|
||||||
|
<# } #>
|
||||||
|
<span class="time-ago">{{ data.attributes.timeAgo }}</span>
|
||||||
|
<span class="date">({{ data.attributes.dateShort }})</span>
|
||||||
|
</div>
|
||||||
|
<# if ( 'to' === data.type && data.attributes.restoreUrl ) { #>
|
||||||
|
<input <?php if ( wp_check_post_lock( $post->ID ) ) { ?>
|
||||||
|
disabled="disabled"
|
||||||
|
<?php } else { ?>
|
||||||
|
<# if ( data.attributes.current ) { #>
|
||||||
|
disabled="disabled"
|
||||||
|
<# } #>
|
||||||
|
<?php } ?>
|
||||||
|
<# if ( data.attributes.autosave ) { #>
|
||||||
|
type="button" class="restore-revision button button-primary" value="<?php esc_attr_e( 'Restore This Autosave' ); ?>" />
|
||||||
|
<# } else { #>
|
||||||
|
type="button" class="restore-revision button button-primary" value="<?php esc_attr_e( 'Restore This Revision' ); ?>" />
|
||||||
|
<# } #>
|
||||||
|
<# } #>
|
||||||
|
</div>
|
||||||
|
<# if ( 'tooltip' === data.type ) { #>
|
||||||
|
<div class="revisions-tooltip-arrow"><span></span></div>
|
||||||
|
<# } #>
|
||||||
|
<# } #>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script id="tmpl-revisions-diff" type="text/html">
|
||||||
|
<div class="loading-indicator"><span class="spinner"></span></div>
|
||||||
|
<div class="diff-error"><?php _e( 'Sorry, something went wrong. The requested comparison could not be loaded.' ); ?></div>
|
||||||
|
<div class="diff">
|
||||||
|
<# _.each( data.fields, function( field ) { #>
|
||||||
|
<h3>{{ field.name }}</h3>
|
||||||
|
{{{ field.diff }}}
|
||||||
|
<# }); #>
|
||||||
|
</div>
|
||||||
|
</script><?php
|
||||||
|
}
|
|
@ -129,93 +129,7 @@ require_once( ABSPATH . 'wp-admin/admin-header.php' );
|
||||||
<h2 class="long-header"><?php echo $h2; ?></h2>
|
<h2 class="long-header"><?php echo $h2; ?></h2>
|
||||||
<?php echo $return_to_post; ?>
|
<?php echo $return_to_post; ?>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script id="tmpl-revisions-frame" type="text/html">
|
|
||||||
<div class="revisions-control-frame"></div>
|
|
||||||
<div class="revisions-diff-frame"></div>
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<script id="tmpl-revisions-buttons" type="text/html">
|
|
||||||
<div class="revisions-previous">
|
|
||||||
<input class="button" type="button" value="<?php echo esc_attr_x( 'Previous', 'Button label for a previous revision' ); ?>" />
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="revisions-next">
|
|
||||||
<input class="button" type="button" value="<?php echo esc_attr_x( 'Next', 'Button label for a next revision' ); ?>" />
|
|
||||||
</div>
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<script id="tmpl-revisions-checkbox" type="text/html">
|
|
||||||
<div class="revision-toggle-compare-mode">
|
|
||||||
<label>
|
|
||||||
<input type="checkbox" class="compare-two-revisions"
|
|
||||||
<#
|
|
||||||
if ( 'undefined' !== typeof data && data.model.attributes.compareTwoMode ) {
|
|
||||||
#> checked="checked"<#
|
|
||||||
}
|
|
||||||
#>
|
|
||||||
/>
|
|
||||||
<?php esc_attr_e( 'Compare any two revisions' ); ?>
|
|
||||||
</label>
|
|
||||||
</div>
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<script id="tmpl-revisions-meta" type="text/html">
|
|
||||||
<# if ( ! _.isUndefined( data.attributes ) ) { #>
|
|
||||||
<div class="diff-title">
|
|
||||||
<# if ( 'from' === data.type ) { #>
|
|
||||||
<strong><?php _ex( 'From:', 'Followed by post revision info' ); ?></strong>
|
|
||||||
<# } else if ( 'to' === data.type ) { #>
|
|
||||||
<strong><?php _ex( 'To:', 'Followed by post revision info' ); ?></strong>
|
|
||||||
<# } #>
|
|
||||||
<div class="author-card<# if ( data.attributes.autosave ) { #> autosave<# } #>">
|
|
||||||
{{{ data.attributes.author.avatar }}}
|
|
||||||
<div class="author-info">
|
|
||||||
<# if ( data.attributes.autosave ) { #>
|
|
||||||
<span class="byline"><?php printf( __( 'Autosave by %s' ),
|
|
||||||
'<span class="author-name">{{ data.attributes.author.name }}</span>' ); ?></span>
|
|
||||||
<# } else if ( data.attributes.current ) { #>
|
|
||||||
<span class="byline"><?php printf( __( 'Current Revision by %s' ),
|
|
||||||
'<span class="author-name">{{ data.attributes.author.name }}</span>' ); ?></span>
|
|
||||||
<# } else { #>
|
|
||||||
<span class="byline"><?php printf( __( 'Revision by %s' ),
|
|
||||||
'<span class="author-name">{{ data.attributes.author.name }}</span>' ); ?></span>
|
|
||||||
<# } #>
|
|
||||||
<span class="time-ago">{{ data.attributes.timeAgo }}</span>
|
|
||||||
<span class="date">({{ data.attributes.dateShort }})</span>
|
|
||||||
</div>
|
|
||||||
<# if ( 'to' === data.type && data.attributes.restoreUrl ) { #>
|
|
||||||
<input <?php if ( wp_check_post_lock( $post->ID ) ) { ?>
|
|
||||||
disabled="disabled"
|
|
||||||
<?php } else { ?>
|
|
||||||
<# if ( data.attributes.current ) { #>
|
|
||||||
disabled="disabled"
|
|
||||||
<# } #>
|
|
||||||
<?php } ?>
|
|
||||||
<# if ( data.attributes.autosave ) { #>
|
|
||||||
type="button" class="restore-revision button button-primary" value="<?php esc_attr_e( 'Restore This Autosave' ); ?>" />
|
|
||||||
<# } else { #>
|
|
||||||
type="button" class="restore-revision button button-primary" value="<?php esc_attr_e( 'Restore This Revision' ); ?>" />
|
|
||||||
<# } #>
|
|
||||||
<# } #>
|
|
||||||
</div>
|
|
||||||
<# if ( 'tooltip' === data.type ) { #>
|
|
||||||
<div class="revisions-tooltip-arrow"><span></span></div>
|
|
||||||
<# } #>
|
|
||||||
<# } #>
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<script id="tmpl-revisions-diff" type="text/html">
|
|
||||||
<div class="loading-indicator"><span class="spinner"></span></div>
|
|
||||||
<div class="diff-error"><?php _e( 'Sorry, something went wrong. The requested comparison could not be loaded.' ); ?></div>
|
|
||||||
<div class="diff">
|
|
||||||
<# _.each( data.fields, function( field ) { #>
|
|
||||||
<h3>{{ field.name }}</h3>
|
|
||||||
{{{ field.diff }}}
|
|
||||||
<# }); #>
|
|
||||||
</div>
|
|
||||||
</script>
|
|
||||||
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
wp_print_revision_templates();
|
||||||
|
|
||||||
require_once( ABSPATH . 'wp-admin/admin-footer.php' );
|
require_once( ABSPATH . 'wp-admin/admin-footer.php' );
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
*
|
*
|
||||||
* @global string $wp_version
|
* @global string $wp_version
|
||||||
*/
|
*/
|
||||||
$wp_version = '4.1-alpha-30128';
|
$wp_version = '4.1-alpha-30129';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||||
|
|
Loading…
Reference in New Issue