#!/usr/bin/perl -Tw use strict; use FS::UID qw(adminsuidsetup); use FS::Record qw(qsearch); use FS::msgcat; my $user = shift or die &usage; adminsuidsetup $user; foreach my $del_msgcat ( qsearch('msgcat', {}) ) { my $error = $del_msgcat->delete; die $error if $error; } my %messages = messages(); foreach my $msgcode ( keys %messages ) { foreach my $locale ( keys %{$messages{$msgcode}} ) { my $msgcat = new FS::msgcat( { 'msgcode' => $msgcode, 'locale' => $locale, 'msg' => $messages{$msgcode}{$locale}, }); my $error = $msgcat->insert; die $error if $error; } } #print "Message catalog initialized sucessfully\n"; sub messages { # 'msgcode' => { # 'en_US' => 'Message', # }, ( 'passwords_dont_match' => { 'en_US' => "Passwords don't match", }, 'invalid_card' => { 'en_US' => 'Invalid credit card number', }, 'unknown_card_type' => { 'en_US' => 'Unknown card type', }, 'not_a' => { 'en_US' => 'Not a ', }, 'empty_password' => { 'en_US' => 'Empty password', }, 'no_access_number_selected' => { 'en_US' => 'No access number selected', }, 'illegal_text' => { 'en_US' => 'Illegal (text)', #'en_US' => 'Only letters, numbers, spaces, and the following punctuation symbols are permitted: ! @ # $ % & ( ) - + ; : \' " , . ? / in field', }, 'illegal_or_empty_text' => { 'en_US' => 'Illegal or empty (text)', #'en_US' => 'Only letters, numbers, spaces, and the following punctuation symbols are permitted: ! @ # $ % & ( ) - + ; : \' " , . ? / in required field', }, 'illegal_username' => { 'en_US' => 'Illegal username', }, 'illegal_password' => { 'en_US' => 'Illegal password (', }, 'illegal_password_characters' => { 'en_US' => ' characters)', }, 'username_in_use' => { 'en_US' => 'Username in use', }, 'illegal_email_invoice_address' => { 'en_US' => 'Illegal email invoice address', }, 'illegal_name' => { 'en_US' => 'Illegal (name)', #'en_US' => 'Only letters, numbers, spaces and the following punctuation symbols are permitted: , . - \' in field', }, 'illegal_phone' => { 'en_US' => 'Illegal (phone)', #'en_US' => '', }, 'illegal_zip' => { 'en_US' => 'Illegal (zip)', #'en_US' => '', }, 'expired_card' => { 'en_US' => 'Expired card', }, 'daytime' => { 'en_US' => 'Day Phone', }, 'night' => { 'en_US' => 'Night Phone', }, ); } sub usage { die "Usage:\n\n populate-msgcat user\n"; }