[mb-commits] branch, data-nes, updated. Display the last updated time in the work sidebar

MusicBrainz Git Server <[email protected]> Mon, 04 Feb 2013 12:24:39 +0000
Newsgroups gmane.comp.audio.musicbrainz.cvs
Message-ID <E1U2L6F-0000DD-Dz@wiley>
The branch, data-nes has been updated
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=819daea0d955c068978d684f2fcb5e68367f6ccb (commit)
      from  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=0bc5fd18e725be7147dec7f8c3f9523cf9d27e66 (commit)

Summary of changes:
 lib/MusicBrainz/Server/Controller/Work.pm     |    1 +
 lib/MusicBrainz/Server/Data/NES/Work.pm       |   16 ++++++++++++++++
 lib/MusicBrainz/Server/Entity/CoreEntity.pm   |    4 ++++
 lib/MusicBrainz/Server/Entity/NES/Revision.pm |   10 ++++++++++
 root/layout/sidebar/sidebar-lastupdate.tt     |    4 ++--
 5 files changed, 33 insertions(+), 2 deletions(-)
 create mode 100644 lib/MusicBrainz/Server/Entity/NES/Revision.pm

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 819daea0d955c068978d684f2fcb5e68367f6ccb
Author: Oliver Charles <[email protected]>
Date:   Mon Feb 4 15:24:20 2013 +0000

    Display the last updated time in the work sidebar

diff --git a/lib/MusicBrainz/Server/Controller/Work.pm b/lib/MusicBrainz/Server/Controller/Work.pm
index b4968b1..37467f1 100644
--- a/lib/MusicBrainz/Server/Controller/Work.pm
+++ b/lib/MusicBrainz/Server/Controller/Work.pm
@@ -40,6 +40,7 @@ after 'load' => sub
     my $work = $c->stash->{work};
     $c->model('MB')->with_nes_transaction(sub {
         # $c->model('Work')->load_meta($work);
+        $c->model('NES::Work')->load_revision($work);
         $c->model('NES::ISWC')->load_for_works($work);
         if ($c->user_exists) {
             $c->model('Work')->rating->load_user_ratings($c->user->id, $work);
diff --git a/lib/MusicBrainz/Server/Data/NES/Work.pm b/lib/MusicBrainz/Server/Data/NES/Work.pm
index 9e24d32..83d2d51 100644
--- a/lib/MusicBrainz/Server/Data/NES/Work.pm
+++ b/lib/MusicBrainz/Server/Data/NES/Work.pm
@@ -2,9 +2,11 @@ package MusicBrainz::Server::Data::NES::Work;
 use feature 'switch';
 use Moose;
 
+use DateTime::Format::ISO8601;
 use List::UtilsBy qw( partition_by );
 use MusicBrainz::Server::Data::Utils qw( partial_date_to_hash );
 use MusicBrainz::Server::Entity::NES::Relationship;
+use MusicBrainz::Server::Entity::NES::Revision;
 use MusicBrainz::Server::Entity::Work;
 use MusicBrainz::Server::WebService::Serializer::JSON::2::Utils qw( boolean );
 
@@ -226,5 +228,19 @@ sub merge {
     );
 }
 
+sub load_revision {
+    my ($self, $revision) = @_;
+    my $res = $self->request(
+        '/work/get-revision',
+        { revision => $revision->revision_id }
+    )->{data};
+
+    $revision->revision(
+        MusicBrainz::Server::Entity::NES::Revision->new(
+            created_at => DateTime::Format::ISO8601->parse_datetime($res->{'created-at'})
+        )
+    );
+}
+
 __PACKAGE__->meta->make_immutable;
 1;
diff --git a/lib/MusicBrainz/Server/Entity/CoreEntity.pm b/lib/MusicBrainz/Server/Entity/CoreEntity.pm
index 23b6f27..305582e 100644
--- a/lib/MusicBrainz/Server/Entity/CoreEntity.pm
+++ b/lib/MusicBrainz/Server/Entity/CoreEntity.pm
@@ -9,6 +9,10 @@ has 'revision_id' => (
     is => 'ro',
 );
 
+has revision => (
+    is => 'rw',
+);
+
 has 'gid' => (
     is => 'rw',
     isa => 'Str'
diff --git a/lib/MusicBrainz/Server/Entity/NES/Revision.pm b/lib/MusicBrainz/Server/Entity/NES/Revision.pm
new file mode 100644
index 0000000..5d0d2cf
--- /dev/null
+++ b/lib/MusicBrainz/Server/Entity/NES/Revision.pm
@@ -0,0 +1,10 @@
+package MusicBrainz::Server::Entity::NES::Revision;
+use Moose;
+use namespace::autoclean;
+
+has created_at => (
+    is => 'ro',
+);
+
+no Moose;
+1;
diff --git a/root/layout/sidebar/sidebar-lastupdate.tt b/root/layout/sidebar/sidebar-lastupdate.tt
index 266cc7a..cf69783 100644
--- a/root/layout/sidebar/sidebar-lastupdate.tt
+++ b/root/layout/sidebar/sidebar-lastupdate.tt
@@ -1,3 +1,3 @@
-[% IF entity.last_updated %]
-<p class="lastupdate">[% l('Last updated on {date}', { date => UserDate.format(entity.last_updated) }) %]</p>
+[% IF entity.revision.created_at %]
+<p class="lastupdate">[% l('Last updated on {date}', { date => UserDate.format(entity.revision.created_at) }) %]</p>
 [% END %]

-----------------------------------------------------------------------


hooks/post-receive
-- 
mb_server