summaryrefslogtreecommitdiff
path: root/httemplate/edit/process/msg_template.html
blob: e146adf7616a328667b071171388ead54f4c89c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<% include( 'elements/process.html',  
              'table'       => 'msg_template',
              'viewall_dir' => 'browse',
              #'popup_reload'=> 1,
              'debug'       => 0,
              'precheck_callback' => \&precheck_callback,
              'args_callback' => \&args_callback,
          )
%>
<%init>
die "access denied"
  unless $FS::CurrentUser::CurrentUser->access_right(['Edit templates','Edit global templates']);

sub precheck_callback {
  my $cgi = shift;
  # validate some fields
  $cgi->param('locale') =~ /^(\w*)$/;
  my $locale = $1;
  return mt('Language required') if $locale eq 'new'; # the user didn't choose
  die "unknown locale $locale" if ( $locale and 
                                    !FS::Locales->locale_info($locale) );
}

sub args_callback {
  my ($cgi, $object) = @_;
  my %content;
  $cgi->param('locale') =~ /^(\w*)$/;
  $content{'locale'} = $1;
  # no validation of these; they can contain just about anything
  $content{'subject'} = $cgi->param('subject') || '';
  $content{'body'} = $cgi->param('body') || '';
  $object->subject('');
  $object->body('');
  return %content;
}

</%init>