[mb-commits] branch, data-nes, updated. Basic support for viewing work aliases

MusicBrainz Git Server <[email protected]> Tue, 15 Jan 2013 16:26:31 +0000
Newsgroups gmane.comp.audio.musicbrainz.cvs
Message-ID <E1Tv9LL-0007hM-5R@wiley>
The branch, data-nes has been updated
       via  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=26193d0d3e86895a96150540640c90069fa7fcbb (commit)
      from  http://git.musicbrainz.org/gitweb/?p=musicbrainz-server/core.git;a=commit;h=782d852cf868694897018618d8a0bc21bf0015a3 (commit)

Summary of changes:
 lib/MusicBrainz/Server/Controller/Role/Alias.pm |    2 +-
 lib/MusicBrainz/Server/Data/NES/Work.pm         |   20 ++++++++++++++++++++
 lib/MusicBrainz/Server/Entity/Work.pm           |    8 ++++----
 3 files changed, 25 insertions(+), 5 deletions(-)

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 26193d0d3e86895a96150540640c90069fa7fcbb
Author: Oliver Charles <[email protected]>
Date:   Tue Jan 15 16:26:18 2013 +0000

    Basic support for viewing work aliases

diff --git a/lib/MusicBrainz/Server/Controller/Role/Alias.pm b/lib/MusicBrainz/Server/Controller/Role/Alias.pm
index 2df415f..44d9843 100644
--- a/lib/MusicBrainz/Server/Controller/Role/Alias.pm
+++ b/lib/MusicBrainz/Server/Controller/Role/Alias.pm
@@ -39,8 +39,8 @@ sub aliases : Chained('load') PathPart('aliases')
 
     my $entity = $c->stash->{$self->{entity_name}};
     my $m = $c->model($self->{model});
-    my $aliases = $m->alias->find_by_entity_id($entity->id);
     $m->alias_type->load(@$aliases);
+    my $aliases = $m->get_aliases($entity);
     $c->stash(
         aliases => $aliases,
     );
diff --git a/lib/MusicBrainz/Server/Data/NES/Work.pm b/lib/MusicBrainz/Server/Data/NES/Work.pm
index 4d59a76..100fd4a 100644
--- a/lib/MusicBrainz/Server/Data/NES/Work.pm
+++ b/lib/MusicBrainz/Server/Data/NES/Work.pm
@@ -71,5 +71,25 @@ sub tags {
     $self->c->model('Work')->tags;
 }
 
+sub get_aliases {
+    my ($self, $work) = @_;
+    my $response = $self->request('/work/view-aliases', {
+        revision => $work->revision_id
+    });
+    return [
+        map {
+            MusicBrainz::Server::Entity::Alias->new(
+                name => $_->{name},
+                sort_name => $_->{'sort-name'},
+                locale => $_->{locale},
+                type_id => $_->{type},
+                begin_date => MusicBrainz::Server::Entity::PartialDate->new($_->{begin_date}),
+                end_date => MusicBrainz::Server::Entity::PartialDate->new($_->{end_date}),
+                ended => $_->{ended}
+            )
+        } @$response
+    ]
+}
+
 __PACKAGE__->meta->make_immutable;
 1;
diff --git a/lib/MusicBrainz/Server/Entity/Work.pm b/lib/MusicBrainz/Server/Entity/Work.pm
index 86b1dfd..fcafc9c 100644
--- a/lib/MusicBrainz/Server/Entity/Work.pm
+++ b/lib/MusicBrainz/Server/Entity/Work.pm
@@ -15,8 +15,8 @@ use MooseX::Types::Moose qw( ArrayRef Object Str );
 
 has 'type_id' => (
     is => 'rw',
-    isa => 'Int'
-    );
+    isa => 'Maybe[Int]'
+);
 
 has 'type' => (
     is => 'rw',
@@ -37,8 +37,8 @@ sub l_type_name
 
 has 'language_id' => (
     is => 'rw',
-    isa => 'Int'
-    );
+    isa => 'Maybe[Int]'
+);
 
 has 'language' => (
     is => 'rw',

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


hooks/post-receive
-- 
mb_server