diff options
Diffstat (limited to 'httemplate/browse/msgcat.html')
| -rw-r--r-- | httemplate/browse/msgcat.html | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/httemplate/browse/msgcat.html b/httemplate/browse/msgcat.html new file mode 100644 index 000000000..ac8a3a437 --- /dev/null +++ b/httemplate/browse/msgcat.html @@ -0,0 +1,36 @@ +<& elements/browse.html, + title => mt('Message catalog'), + name_singular => 'string', #mt? no, we need to do it through the quant/PL stuff + query => { 'table' => 'msgcat', + 'hashref' => { 'locale' => $locale, }, + }, + count_query => $count_query, + header => [ mt('Message code'), mt('Message string') ], + fields => [ 'msgcode', 'msg' ], + links => $locale eq 'en_US' ? [] : [ $link, $link ], + html_init => $html_init, +&> +<%init> + +my $curuser = $FS::CurrentUser::CurrentUser; + +die "access denied" + unless $curuser->access_right('Configuration'); + +my $locale = $cgi->param('locale') || 'en_US'; +die "invalid locale" unless $locale =~ /^[A-Za-z_]+$/; + +my $count_query = "SELECT COUNT(*) FROM msgcat where locale = '$locale'"; + +my $link = [ "${p}edit/msgcat.html?", 'msgnum' ]; + +my $html_init = ''; +foreach my $alocale ( FS::Locales->locales ) { + my %info = FS::Locales->locale_info($alocale); + my $selectedstart = $alocale eq $locale ? '<B>' : ''; + my $selectedend = $alocale eq $locale ? '</B>' : ''; + $html_init .= qq!<A HREF="msgcat.html?locale=$alocale">$selectedstart$info{name} ($info{country})$selectedend</A> !; +} +$html_init .= '<BR><BR>'; + +</%init> |
