[mb-commits] r10389 - in mb_server/branches/TemplateToolkit: lib/MusicBrainz/Server/Controller root/releases root/track

root at musicbrainz.org root at musicbrainz.org
Fri Sep 26 16:05:03 UTC 2008


Author: acid2
Date: 2008-09-26 16:05:03 +0000 (Fri, 26 Sep 2008)
New Revision: 10389

Added:
   mb_server/branches/TemplateToolkit/root/track/remove.tt
Modified:
   mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Controller/Track.pm
   mb_server/branches/TemplateToolkit/root/releases/release.tt
Log:
Remove track edit (from release page)

Modified: mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Controller/Track.pm
===================================================================
--- mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Controller/Track.pm	2008-09-26 16:04:52 UTC (rev 10388)
+++ mb_server/branches/TemplateToolkit/lib/MusicBrainz/Server/Controller/Track.pm	2008-09-26 16:05:03 UTC (rev 10389)
@@ -130,6 +130,50 @@
     $c->stash->{template} = 'track/edit.tt';
 }
 
+sub remove : Chained('track')
+{
+    my ($self, $c) = @_;
+
+    $c->forward('/user/login');
+
+    use MusicBrainz::Server::Form;
+    my $form = MusicBrainz::Server::Form->new(profile => {
+            optional => { edit_note => 'TextArea' },
+        });
+
+    if ($c->form_posted)
+    {
+        my $track   = $c->stash->{track};
+        my $release = $c->model('Release')->load($track->release);
+
+        require Moderation;
+        my @mods = Moderation->InsertModeration(
+            DBH   => $c->mb->{DBH},
+            uid   => $c->user->id,
+            privs => $c->user->privs,
+            type  => ModDefs::MOD_REMOVE_TRACK,
+
+            track => $track,
+            album => $release,
+        );
+
+        if (scalar @mods)
+        {
+            $mods[0]->InsertNote($c->user->id, $form->value('edit_note'))
+                if $form->value('edit_note') =~ /\S/;
+
+            $c->flash->{ok} = "Thanks, your track edit has been entered " .
+                              "into the moderation queue";
+
+            use MusicBrainz::Server::Adapter qw(EntityUrl);
+            $c->response->redirect(EntityUrl($c, $release, 'show'));
+        }
+    }
+
+    $c->stash->{form    } = $form;
+    $c->stash->{template} = 'track/remove.tt';
+}
+
 =head1 LICENSE
 
 This software is provided "as is", without warranty of any kind, express or

Modified: mb_server/branches/TemplateToolkit/root/releases/release.tt
===================================================================
--- mb_server/branches/TemplateToolkit/root/releases/release.tt	2008-09-26 16:04:52 UTC (rev 10388)
+++ mb_server/branches/TemplateToolkit/root/releases/release.tt	2008-09-26 16:05:03 UTC (rev 10389)
@@ -35,7 +35,10 @@
 
           [%- IF c.user_exists -%]
           <td class="editinglinks">
-            Editing links
+            [%- track_edit_links = [
+                   { link => entity_url(track, 'remove'), text => "Remove" }
+               ] -%]
+            [%- INCLUDE "components/piped-list.tt" list=track_edit_links -%]
           </td>
           [%- END -%]
         </tr>

Added: mb_server/branches/TemplateToolkit/root/track/remove.tt




More information about the MusicBrainz-commits mailing list