+sub edit_email_strings {
+ $main::lxdebug->enter_sub();
+
+ $main::auth->assert('config');
+
+ my $form = $main::form;
+ my $locale = $main::locale;
+
+ $form->get_lists('languages' => 'LANGUAGES');
+ unshift @{ $form->{LANGUAGES} }, { 'id' => 'default', };
+
+ my (%translations, $translation_list);
+ foreach (keys %mail_strings) {
+ $translation_list = GenericTranslations->list(translation_type => $_);
+ %translations = map { ( ($_->{language_id} || 'default') => $_->{translation} ) } @{ $translation_list };
+
+ foreach my $language (@{ $form->{LANGUAGES} }) {
+ $language->{$_} = $translations{$language->{id}};
+ }
+ }
+ setup_generictranslations_edit_email_strings_action_bar();
+
+ $form->{title} = $locale->text('Edit preset email strings');
+ $form->header();
+ print $form->parse_html_template('generictranslations/edit_email_strings',{ 'MAIL_STRINGS' => \%mail_strings });
+
+ $main::lxdebug->leave_sub();
+}
+
+sub save_email_strings {
+ $main::lxdebug->enter_sub();
+
+ $main::auth->assert('config');
+
+ my $form = $main::form;
+ my $locale = $main::locale;
+
+ $form->get_lists('languages' => 'LANGUAGES');
+
+ unshift @{ $form->{LANGUAGES} }, { };
+ foreach my $language (@{ $form->{LANGUAGES} }) {
+ foreach (keys %mail_strings) {
+ GenericTranslations->save('translation_type' => $_,
+ 'translation_id' => undef,
+ 'language_id' => $language->{id},
+ 'translation' => $form->{"translation__" . ($language->{id} || 'default') . "__" . $_},
+ );
+ }
+ }
+ $form->{message} = $locale->text('The Mail strings have been saved.');
+
+ edit_email_strings();
+
+ $main::lxdebug->leave_sub();
+}