diff options
author | mark <mark> | 2011-07-28 22:23:56 +0000 |
---|---|---|
committer | mark <mark> | 2011-07-28 22:23:56 +0000 |
commit | 8043c7dc35455c0c2a7afce70e9f79448952d170 (patch) | |
tree | bf3370db1fa861b6aec6e53f454723959e3138b8 | |
parent | 33b96496e4e4c4f7b80a9aa30fb5a67ef7631080 (diff) |
message template localization, #13601
-rw-r--r-- | httemplate/edit/process/msg_template.html | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/httemplate/edit/process/msg_template.html b/httemplate/edit/process/msg_template.html index 70d451b72..f43d17216 100644 --- a/httemplate/edit/process/msg_template.html +++ b/httemplate/edit/process/msg_template.html @@ -1,13 +1,37 @@ <% include( 'elements/process.html', 'table' => 'msg_template', 'viewall_dir' => 'browse', + #'popup_reload'=> 1, + 'debug' => 1, + 'precheck_callback' => \&precheck_callback, + 'args_callback' => \&args_callback, ) %> <%init> - die "access denied" unless $FS::CurrentUser::CurrentUser->access_right('Edit templates') || $FS::CurrentUser::CurrentUser->access_right('Edit global templates') || $FS::CurrentUser::CurrentUser->access_right('Configuration'); +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') || ''; + return %content; +} + </%init> |