[mb-commits] r11161 - in mb_server/branches/TemplateToolkit: lib/MusicBrainz/Server lib/MusicBrainz/Server/Form/Artist lib/MusicBrainz/Server/Moderation root/moderation/mods
root at musicbrainz.org
root at musicbrainz.org
Wed Jan 28 19:10:53 UTC 2009
Author: acid2
Date: 2009-01-28 19:10:53 +0000 (Wed, 28 Jan 2009)
New Revision: 11161
Modified:
mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Artist.pm
mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Form/Artist/Edit.pm
mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Moderation/MOD_EDIT_ARTIST.pm
mb_server/branches/TemplateToolkit/root/moderation/mods/edit_artist.tt
Log:
Correctly set the artist type through the artist edit form.
Fixes #4636.
Modified: mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Artist.pm
===================================================================
--- mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Artist.pm 2009-01-28 19:10:20 UTC (rev 11160)
+++ mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Artist.pm 2009-01-28 19:10:53 UTC (rev 11161)
@@ -175,7 +175,11 @@
=cut
-sub is_valid_type { return defined $ArtistTypeNames{shift}; }
+sub is_valid_type
+{
+ my $type = shift;
+ return exists $ArtistTypeNames{$type . ""};
+}
=head2 begin_date_ymd
@@ -619,7 +623,7 @@
my $self = shift;
require MusicBrainz::Server::Alias;
- my $al = MusicBrainz::Server::Alias->new($self->dbh, table => 'ArtistAlias');
+ my $al = MusicBrainz::Server::Alias->new($self->dbh, 'ArtistAlias');
my @aliases = map { $_->name } $al->load_all($self->id);
Modified: mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Form/Artist/Edit.pm
===================================================================
--- mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Form/Artist/Edit.pm 2009-01-28 19:10:20 UTC (rev 11160)
+++ mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Form/Artist/Edit.pm 2009-01-28 19:10:53 UTC (rev 11161)
@@ -12,13 +12,17 @@
my ($self) = @_;
my $artist = $self->item;
+ my $artist_type = defined $self->value('artist_type')
+ ? $self->value('artist_type')
+ : $artist->type;
+
$self->context->model('Artist')->edit(
$artist,
$self->value('edit_note'),
name => $self->value('name') || $artist->name,
sort_name => $self->value('sortname') || $artist->sort_name,
- type => $self->value('artist_type') || $artist->type,
+ type => $artist_type,
resolution => $self->value('resolution') || $artist->resolution,
begin => $self->value('start'),
end => $self->value('end'),
Modified: mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Moderation/MOD_EDIT_ARTIST.pm
===================================================================
--- mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Moderation/MOD_EDIT_ARTIST.pm 2009-01-28 19:10:20 UTC (rev 11160)
+++ mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Moderation/MOD_EDIT_ARTIST.pm 2009-01-28 19:10:53 UTC (rev 11161)
@@ -71,7 +71,7 @@
if ( defined $type )
{
- die $self->SetError('Artist type invalid')
+ die $self->SetError("Artist type $type invalid")
unless MusicBrainz::Server::Artist::is_valid_type($type);
$new{'Type'} = $type if $type != $ar->type();
Modified: mb_server/branches/TemplateToolkit/root/moderation/mods/edit_artist.tt
===================================================================
--- mb_server/branches/TemplateToolkit/root/moderation/mods/edit_artist.tt 2009-01-28 19:10:20 UTC (rev 11160)
+++ mb_server/branches/TemplateToolkit/root/moderation/mods/edit_artist.tt 2009-01-28 19:10:53 UTC (rev 11161)
@@ -4,4 +4,5 @@
{ label='Resolution', new=new.Resolution, prev=prev.Resolution },
{ label='Begin Date', new=new.BeginDate, prev=prev.BeginDate },
{ label='End Date', new=new.EndDate, prev=prev.EndDate },
+ { label='Type', new=new.Type, prev=prev.Type },
] -%]
More information about the MusicBrainz-commits
mailing list