Changeset 489

Show
Ignore:
Timestamp:
08/18/08 13:04:44 (3 months ago)
Author:
ogawa
Message:

Add backup and overwrite options.

Location:
Templets/trunk/Templets
Files:
3 modified

Legend:

Unmodified
Added
Removed
  • Templets/trunk/Templets/lib/Templets/CMS.pm

    r483 r489  
    6969      if !$tmpl_list || ( ref($tmpl_list) ne 'ARRAY' ) || ( !@$tmpl_list ); 
    7070 
     71    # options 
     72    my $overwrite = $app->param('overwrite') || 0; 
     73    my $backup    = $app->param('backup')    || 0; 
     74 
     75    my @ts = MT::Util::offset_time_list( time, $blog ); 
     76    my $ts = sprintf "%04d-%02d-%02d %02d:%02d:%02d", $ts[5] + 1900, $ts[4] + 1, 
     77      @ts[ 3, 2, 1, 0 ]; 
     78 
    7179    # The following part is based on MT::Blog->create_default_templates() 
    7280    require MT::Template; 
     
    8997            $terms->{identifier} = $val->{identifier}; 
    9098        } 
    91         next if MT::Template->exist($terms); 
     99        next if !$overwrite && MT::Template->exist($terms); 
     100 
     101        my $iter = MT::Template->load_iter($terms); 
     102        while ( my $tmpl = $iter->() ) { 
     103            if ($backup) { 
     104                require MT::TemplateMap; 
     105                MT::TemplateMap->remove( { template_id => $tmpl->id, } ); 
     106                $tmpl->type('backup'); 
     107                $tmpl->name( $tmpl->name . ' (Backup from ' . $ts . ')' ); 
     108                $tmpl->identifier(undef); 
     109                $tmpl->rebuild_me(0); 
     110                $tmpl->linked_file(undef); 
     111                $tmpl->outfile(''); 
     112                $tmpl->save; 
     113            } 
     114            else { 
     115                $tmpl->remove; 
     116            } 
     117        } 
    92118 
    93119        my $obj = MT::Template->new; 
  • Templets/trunk/Templets/lib/Templets/L10N/ja.pm

    r488 r489  
    1111    'Select a templet' => 'テンプレットの選択', 
    1212    'Append'           => '追加', 
     13    'Overwrite existing templates' => 
     14      '既存のテンプレートを上書きする', 
     15    'Make backups of existing templates first' => 
     16      '既存のテンプレートのバックアップを作成する', 
    1317); 
    1418 
  • Templets/trunk/Templets/tmpl/dialog_append_templet.tmpl

    r483 r489  
    1818        </select> 
    1919    </mtapp:setting> 
     20 
     21    <div> 
     22    <input type="checkbox" id="overwrite" name="overwrite" checked="checked" /> 
     23    <label for="overwrite"><__trans phrase="Overwrite existing templates"></label> 
     24    </div> 
     25 
     26    <div> 
     27    <input type="checkbox" id="backup" name="backup" /> 
     28    <label for="backup"><__trans phrase="Make backups of existing templates first"></label> 
     29    </div> 
     30 
    2031    <mt:else> 
    2132    <mtapp:statusmsg