Changeset 1770
- Timestamp:
- 04/04/08 06:40:48 (6 months ago)
- Files:
-
- branches/release-33/lib/MT/App/CMS.pm (modified) (2 diffs)
- branches/release-33/lib/MT/CMS/Template.pm (modified) (2 diffs)
- branches/release-33/tmpl/cms/list_template.tmpl (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
branches/release-33/lib/MT/App/CMS.pm
r1715 r1770 623 623 refresh_tmpl_templates => { 624 624 label => "Refresh Template(s)", 625 handler => '$Core::MT::CMS::Template::refresh_individual_templates',625 code => "${pkg}Template::refresh_individual_templateE", 626 626 permission => 'edit_templates', 627 627 }, 628 628 publish_index_templates => { 629 629 label => "Publish Template(s)", 630 handler => '$Core::MT::CMS::Blog::publish_index_templates',630 code => "${pkg}Blog::publish_index_templates", 631 631 permission => 'rebuild', 632 632 condition => sub { … … 640 640 ; 641 641 }, 642 }, 643 copy_templates => { 644 label => "Clone Template(s)", 645 code => "${pkg}Template::clone_templates", 646 permission => 'edit_templates', 642 647 }, 643 648 }, branches/release-33/lib/MT/CMS/Template.pm
r1743 r1770 573 573 $params->{refreshed} = $app->param('refreshed'); 574 574 $params->{published} = $app->param('published'); 575 $params->{saved_copied} = $app->param('saved_copied'); 575 576 576 577 # determine list of system template types: … … 1773 1774 } 1774 1775 1776 sub clone_templates { 1777 my ($app) = @_; 1778 1779 my $user = $app->user; 1780 my $perms = $app->permissions; 1781 return $app->error( 1782 $app->translate( 1783 "Permission denied.") 1784 ) 1785 #TODO: system level-designer permission 1786 unless $user->is_superuser() || $user->can_edit_templates() 1787 || ( $perms 1788 && ( $perms->can_edit_templates() 1789 || $perms->can_administer_blog ) ); 1790 1791 my @id = $app->param('id'); 1792 require MT::Template; 1793 foreach my $tmpl_id (@id) { 1794 my $tmpl = MT::Template->load($tmpl_id); 1795 next unless $tmpl; 1796 1797 my $new_tmpl = $tmpl->clone({ 1798 Except => { 1799 id => 1, 1800 name => 1, 1801 identifier => 1, 1802 }, 1803 }); 1804 1805 my $new_basename = $app->translate("Copy of [_1]", $tmpl->name); 1806 my $new_name = $new_basename; 1807 my $i = 0; 1808 while (MT::Template->count({ name => $new_name, blog_id => $tmpl->blog_id })) { 1809 $new_name = $new_basename . ' (' . ++$i . ')'; 1810 } 1811 1812 $new_tmpl->name($new_name); 1813 $new_tmpl->save; 1814 } 1815 1816 $app->add_return_arg( 'saved_copied' => 1 ); 1817 $app->call_return; 1818 } 1819 1775 1820 sub publish_index_templates { 1776 1821 my $app = shift; branches/release-33/tmpl/cms/list_template.tmpl
r1632 r1770 91 91 </mtapp:statusmsg> 92 92 </mt:if> 93 <mt:if name="saved_copied"> 94 <mtapp:statusmsg 95 id="saved-copied" 96 class="success"> 97 <__trans phrase="Selected template(s) has been copied."> 98 </mtapp:statusmsg> 99 </mt:if> 93 100 </mt:setvarblock> 94 101
