Author: acid2
Date: 2009-06-27 16:27:27 +0000 (Sat, 27 Jun 2009)
New Revision: 11780
Added:
mb_server/trunk/lib/MusicBrainz/Server/Edit/ReleaseGroup/Edit.pm
mb_server/trunk/t/edit_release-group_edit.t
Modified:
mb_server/trunk/lib/MusicBrainz/Server/Constants.pm
mb_server/trunk/lib/MusicBrainz/Server/Data/ReleaseGroup.pm
mb_server/trunk/lib/MusicBrainz/Server/Data/Utils.pm
mb_server/trunk/lib/MusicBrainz/Server/Entity/ReleaseGroup.pm
Log:
Edit release group edit type. See review 218
Merge branch 'edit-release_group-edit'
Modified: mb_server/trunk/lib/MusicBrainz/Server/Constants.pm
===================================================================
--- mb_server/trunk/lib/MusicBrainz/Server/Constants.pm 2009-06-27 16:27:13 UTC (rev 11779)
+++ mb_server/trunk/lib/MusicBrainz/Server/Constants.pm 2009-06-27 16:27:27 UTC (rev 11780)
@@ -43,6 +43,8 @@
Readonly our $EDIT_RELEASEGROUP_DELETE => 23;
Readonly our $EDIT_RELEASEGROUP_MERGE => 24;
+Readonly our $EDIT_RELEASEGROUP_EDIT => 21;
+
=head1 NAME
MusicBrainz::Server::Constant - constants used in the database that
Modified: mb_server/trunk/lib/MusicBrainz/Server/Data/ReleaseGroup.pm
===================================================================
--- mb_server/trunk/lib/MusicBrainz/Server/Data/ReleaseGroup.pm 2009-06-27 16:27:13 UTC (rev 11779)
+++ mb_server/trunk/lib/MusicBrainz/Server/Data/ReleaseGroup.pm 2009-06-27 16:27:27 UTC (rev 11780)
@@ -85,12 +85,12 @@
sub update
{
- my ($self, $group, $update) = @_;
+ my ($self, $group_id, $update) = @_;
my $sql = Sql->new($self->c->mb->dbh);
my $release_data = MusicBrainz::Server::Data::Release->new(c => $self->c);
my %names = $release_data->find_or_insert_names($update->{name});
my $row = $self->_hash_to_row($update, \%names);
- $sql->Update('release_group', $row, { id => $group->id });
+ $sql->Update('release_group', $row, { id => $group_id });
}
sub delete
Modified: mb_server/trunk/lib/MusicBrainz/Server/Data/Utils.pm
===================================================================
--- mb_server/trunk/lib/MusicBrainz/Server/Data/Utils.pm 2009-06-27 16:27:13 UTC (rev 11779)
+++ mb_server/trunk/lib/MusicBrainz/Server/Data/Utils.pm 2009-06-27 16:27:27 UTC (rev 11780)
@@ -9,6 +9,7 @@
use UNIVERSAL::require;
our @EXPORT_OK = qw(
+ artist_credit_to_ref
defined_hash
generate_gid
insert_and_create
@@ -21,6 +22,19 @@
query_to_list_limited
);
+sub artist_credit_to_ref
+{
+ my ($artist_credit) = @_;
+ use Data::Dumper;
+ my $ac = [ map {
+ my @credit = ( { name => $_->name, artist => $_->artist_id } );
+ push @credit, $_->join_phrase if $_->join_phrase;
+
+ @credit;
+ } @{ $artist_credit->names } ];
+ return $ac;
+}
+
sub load_subobjects
{
my ($data_access, $attr_obj, @objs) = @_;
Modified: mb_server/trunk/lib/MusicBrainz/Server/Entity/ReleaseGroup.pm
===================================================================
--- mb_server/trunk/lib/MusicBrainz/Server/Entity/ReleaseGroup.pm 2009-06-27 16:27:13 UTC (rev 11779)
+++ mb_server/trunk/lib/MusicBrainz/Server/Entity/ReleaseGroup.pm 2009-06-27 16:27:27 UTC (rev 11780)
@@ -32,7 +32,8 @@
has 'artist_credit' => (
is => 'rw',
- isa => 'ArtistCredit'
+ isa => 'ArtistCredit',
+ predicate => 'artist_credit_loaded',
);
has 'first_release_date' => (
_______________________________________________
MusicBrainz-commits mailing list
MusicBrainz-commits@...
http://lists.musicbrainz.org/mailman/listinfo/musicbrainz-commits