Make WordPress Core

Ticket #24804: 24804.15.diff

File 24804.15.diff, 5.7 KB (added by markjaquith, 11 years ago)
  • wp-admin/js/revisions.js

    window.wp = window.wp || {}; 
    571571                                model: slider
    572572                        }) );
    573573
    574                         // Add the Meta view
    575                         this.views.add( new revisions.view.Meta({
     574                        // Add the Metabox view
     575                        this.views.add( new revisions.view.Metabox({
    576576                                model: this.model
    577577                        }) );
    578578                },
    window.wp = window.wp || {}; 
    659659                }
    660660        });
    661661
    662         // The meta view
    663         revisions.view.Meta = wp.Backbone.View.extend({
     662        // The metabox view
     663        revisions.view.Metabox = wp.Backbone.View.extend({
    664664                className: 'revisions-meta',
     665
     666                initialize: function() {
     667                        // Add the 'from' view
     668                        this.views.add( new revisions.view.Meta({
     669                                model: this.model,
     670                                type: 'from'
     671                        }) );
     672
     673                        // Add the 'to' view
     674                        this.views.add( new revisions.view.Meta({
     675                                model: this.model,
     676                                type: 'to'
     677                        }) );
     678                }
     679        });
     680
     681        // The revision meta view
     682        revisions.view.Meta = wp.Backbone.View.extend({
    665683                template: wp.template('revisions-meta'),
    666684
     685                className: 'diff-meta',
     686
    667687                events: {
    668688                        'click .restore-revision': 'restoreRevision'
    669689                },
    window.wp = window.wp || {}; 
    673693                },
    674694
    675695                prepare: function() {
    676                         return this.model.toJSON();
     696                        return _.extend( this.model.toJSON()[this.options.type], {
     697                                type: this.options.type
     698                        });
     699                },
     700
     701                ready: function() {
     702                        this.$el.addClass( 'diff-meta-' + this.options.type );
    677703                },
    678704
    679705                restoreRevision: function() {
  • wp-admin/revision.php

    require_once( './admin-header.php' ); 
    171171</script>
    172172
    173173<script id="tmpl-revisions-meta" type="text/html">
    174         <div class="diff-meta diff-meta-from">
    175                 <div class="diff-title">
     174        <div class="diff-title">
     175                <# if ( 'from' === data.type ) { #>
    176176                        <strong><?php _ex( 'From:', 'Followed by post revision info' ); ?></strong>
    177                 <# if ( 'undefined' !== typeof data.from ) { #>
    178                         <div class="author-card<# if ( data.from.attributes.autosave ) { #> autosave<# } #>">
    179                                 {{{ data.from.attributes.author.avatar }}}
    180                                 <div class="author-info">
    181                                 <# if ( data.from.attributes.autosave ) { #>
    182                                         <span class="byline"><?php printf( __( 'Autosave by %s' ),
    183                                                 '<span class="author-name">{{ data.from.attributes.author.name }}</span>' ); ?></span>
    184                                 <# } else if ( data.from.attributes.current ) { #>
    185                                         <span class="byline"><?php printf( __( 'Current Revision by %s' ),
    186                                                 '<span class="author-name">{{ data.from.attributes.author.name }}</span>' ); ?></span>
    187                                 <# } else { #>
    188                                         <span class="byline"><?php printf( __( 'Revision by %s' ),
    189                                                 '<span class="author-name">{{ data.from.attributes.author.name }}</span>' ); ?></span>
    190                                 <# } #>
    191                                         <span class="time-ago">{{ data.from.attributes.timeAgo }}</span>
    192                                         <span class="date">({{ data.from.attributes.dateShort }})</span>
    193                                 </div>
    194                         </div>
    195                 <# } #>
    196                 </div>
    197         </div>
    198 
    199         <div class="diff-meta diff-meta-to">
    200                 <div class="diff-title">
     177                <# } else { #>
    201178                        <strong><?php _ex( 'To:', 'Followed by post revision info' ); ?></strong>
    202                 <# if ( 'undefined' !== typeof data.to ) { #>
    203                         <div class="author-card<# if ( data.to.attributes.autosave ) { #> autosave<# } #>">
    204                                 {{{ data.to.attributes.author.avatar }}}
    205                                 <div class="author-info">
    206                                 <# if ( data.to.attributes.autosave ) { #>
    207                                         <span class="byline"><?php printf( __( 'Autosave by %s' ),
    208                                                 '<span class="author-name">{{ data.to.attributes.author.name }}</span>' ); ?></span>
    209                                 <# } else if ( data.to.attributes.current ) { #>
    210                                         <span class="byline"><?php printf( __( 'Current Revision by %s' ),
    211                                                 '<span class="author-name">{{ data.to.attributes.author.name }}</span>' ); ?></span>
    212                                 <# } else { #>
    213                                         <span class="byline"><?php printf( __( 'Revision by %s' ),
    214                                                 '<span class="author-name">{{ data.to.attributes.author.name }}</span>' ); ?></span>
    215                                 <# } #>
    216                                         <span class="time-ago">{{ data.to.attributes.timeAgo }}</span>
    217                                         <span class="date">({{ data.to.attributes.dateShort }})</span>
    218                                 </div>
    219179                <# } #>
    220                 <# if ( data.to.attributes.restoreUrl ) { #>
     180                <div class="author-card<# if ( data.attributes.autosave ) { #> autosave<# } #>">
     181                        {{{ data.attributes.author.avatar }}}
     182                        <div class="author-info">
     183                        <# if ( data.attributes.autosave ) { #>
     184                                <span class="byline"><?php printf( __( 'Autosave by %s' ),
     185                                        '<span class="author-name">{{ data.attributes.author.name }}</span>' ); ?></span>
     186                        <# } else if ( data.attributes.current ) { #>
     187                                <span class="byline"><?php printf( __( 'Current Revision by %s' ),
     188                                        '<span class="author-name">{{ data.attributes.author.name }}</span>' ); ?></span>
     189                        <# } else { #>
     190                                <span class="byline"><?php printf( __( 'Revision by %s' ),
     191                                        '<span class="author-name">{{ data.attributes.author.name }}</span>' ); ?></span>
     192                        <# } #>
     193                                <span class="time-ago">{{ data.attributes.timeAgo }}</span>
     194                                <span class="date">({{ data.attributes.dateShort }})</span>
     195                        </div>
     196                <# if ( 'to' === data.type && data.attributes.restoreUrl ) { #>
    221197                        <input
    222                         <# if ( data.to.attributes.current ) { #>
     198                        <# if ( data.attributes.current ) { #>
    223199                                disabled="disabled"
    224200                        <# } #>
    225                         <# if ( data.to.attributes.autosave ) { #>
     201                        <# if ( data.attributes.autosave ) { #>
    226202                                type="button" class="restore-revision button button-primary" value="<?php esc_attr_e( 'Restore This Autosave' ); ?>" />
    227203                        <# } else { #>
    228204                                type="button" class="restore-revision button button-primary" value="<?php esc_attr_e( 'Restore This Revision' ); ?>" />
    229205                        <# } #>
    230206                <# } #>
    231                 </div>
    232207        </div>
    233208</script>
    234209