X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Famtemplates.pl;h=9843f82b1eae32fb8e4906b2f5769f7fd0cbced4;hb=429203bfb57dd673aa807d749ab43c8e3332f8c8;hp=fa55a0118ccaadc3dfbbcdd78f085fd917c3067c;hpb=66671e22ff33f493fae7d8a88145ac1ecf34b3b3;p=kivitendo-erp.git diff --git a/bin/mozilla/amtemplates.pl b/bin/mozilla/amtemplates.pl index fa55a0118..9843f82b1 100644 --- a/bin/mozilla/amtemplates.pl +++ b/bin/mozilla/amtemplates.pl @@ -38,7 +38,7 @@ use Data::Dumper; 1; -require "$form->{path}/common.pl"; +require "bin/mozilla/common.pl"; # end of main @@ -57,6 +57,8 @@ sub edit { sub display_template { $lxdebug->enter_sub(); + $auth->assert('config'); + $form->{edit} = 0; display_template_form(); @@ -66,6 +68,8 @@ sub display_template { sub edit_template { $lxdebug->enter_sub(); + $auth->assert('config'); + $form->{edit} = 1; display_template_form(); @@ -75,6 +79,8 @@ sub edit_template { sub save_template { $lxdebug->enter_sub(); + $auth->assert('config'); + $form->isblank("formname", $locale->text("You're not editing a file.")) unless ($form->{type} eq "stylesheet"); my ($filename) = AM->prepare_template_filename(\%myconfig, $form); @@ -91,6 +97,8 @@ sub save_template { sub display_template_form { $lxdebug->enter_sub(); + $auth->assert('config'); + $form->{"formname"} =~ s|.*/||; my $format = $form->{"format"} eq "html" ? "html" : "tex"; @@ -98,7 +106,7 @@ sub display_template_form { my %options; - my @hidden = qw(login path password type format); + my @hidden = qw(type format); if (($form->{"type"} ne "stylesheet") && !$form->{"edit"}) { $options{"SHOW_EDIT_OPTIONS"} = 1; @@ -107,32 +115,35 @@ sub display_template_form { # Setup "formname" selection # + $form->get_lists("printers" => "ALL_PRINTERS", + "languages" => "ALL_LANGUAGES", + "dunning_configs" => "ALL_DUNNING_CONFIGS"); + my %formname_setup = ( - "balance_sheet" => { "translation" => $locale->text('Balance Sheet'), "html" => 1 }, - "bin_list" => $locale->text('Bin List'), - "bwa" => { "translation" => $locale->text('BWA'), "html" => 1 }, - "check" => { "translation" => $locale->text('Check'), "html" => 1 }, - "credit_note" => $locale->text('Credit Note'), - "income_statement" => { "translation" => $locale->text('Income Statement'), "html" => 1 }, - "invoice" => $locale->text('Invoice'), - "packing_list" => $locale->text('Packing List'), - "pick_list" => $locale->text('Pick List'), - "proforma" => $locale->text('Proforma Invoice'), - "purchase_order" => $locale->text('Purchase Order'), - "receipt" => { "translation" => $locale->text('Receipt'), "tex" => 1 }, - "request_quotation" => $locale->text('RFQ'), - "sales_order" => $locale->text('Confirmation'), - "sales_quotation" => $locale->text('Quotation'), - "statement" => $locale->text('Statement'), - "storno_invoice" => $locale->text('Storno Invoice'), - "storno_packing_list" => $locale->text('Storno Packing List'), - "ustva-2004" => { "translation" => $locale->text("USTVA 2004"), "tex" => 1 }, - "ustva-2005" => { "translation" => $locale->text("USTVA 2005"), "tex" => 1 }, - "ustva-2006" => { "translation" => $locale->text("USTVA 2006"), "tex" => 1 }, - "ustva-2007" => { "translation" => $locale->text("USTVA 2007"), "tex" => 1 }, - "ustva" => $locale->text("USTVA"), - "zahlungserinnerung" => $locale->text('Payment Reminder'), + "balance_sheet" => { "translation" => $locale->text('Balance Sheet'), "html" => 1 }, + "bin_list" => $locale->text('Bin List'), + "bwa" => { "translation" => $locale->text('BWA'), "html" => 1 }, + "check" => { "translation" => $locale->text('Check'), "html" => 1 }, + "credit_note" => $locale->text('Credit Note'), + "income_statement" => { "translation" => $locale->text('Income Statement'), "html" => 1 }, + "invoice" => $locale->text('Invoice'), + "packing_list" => $locale->text('Packing List'), + "pick_list" => $locale->text('Pick List'), + "proforma" => $locale->text('Proforma Invoice'), + "purchase_order" => $locale->text('Purchase Order'), + "receipt" => { "translation" => $locale->text('Receipt'), "tex" => 1 }, + "request_quotation" => $locale->text('RFQ'), + "sales_order" => $locale->text('Confirmation'), + "sales_quotation" => $locale->text('Quotation'), + "statement" => $locale->text('Statement'), + "storno_invoice" => $locale->text('Storno Invoice'), + "storno_packing_list" => $locale->text('Storno Packing List'), + "ustva-2004" => { "translation" => $locale->text("USTVA 2004"), "tex" => 1 }, + "ustva-2005" => { "translation" => $locale->text("USTVA 2005"), "tex" => 1 }, + "ustva-2006" => { "translation" => $locale->text("USTVA 2006"), "tex" => 1 }, + "ustva-2007" => { "translation" => $locale->text("USTVA 2007"), "tex" => 1 }, + "ustva" => $locale->text("USTVA"), ); my (@values, $file, $setup); @@ -142,56 +153,56 @@ sub display_template_form { push(@values, { "value" => $file, - "label" => ref($setup) ? $setup->{"translation"} : $setup, - "default" => $file eq $form->{"formname"} }); + "label" => ref($setup) ? $setup->{"translation"} : $setup }); + } + + # "zahlungserinnerung" => $locale->text('Payment Reminder'), + + foreach my $ref (@{ $form->{"ALL_DUNNING_CONFIGS"} }) { + next if !$ref->{"template"}; + + push(@values, + { "value" => $ref->{"template"}, + "label" => $locale->text('Payment Reminder') . ": " . $ref->{"dunning_description"} }, + { "value" => $ref->{"template"} . "_invoice", + "label" => $locale->text('Payment Reminder') . ": " . $ref->{"dunning_description"} . ' (' . $locale->text("Invoice for fees") . ')' }); } @values = sort({ $a->{"label"} cmp $b->{"label"} } @values); - $options{"FORMNAME"} = [ @values ]; + $options{FORMNAME} = [ @values ]; # # Setup "language" selection # - $form->get_lists("printers" => "ALL_PRINTERS", - "languages" => "ALL_LANGUAGES"); - - @values = ( { "value" => "", "label" => "", "default" => 0 } ); + @values = (); foreach my $item (@{ $form->{"ALL_LANGUAGES"} }) { next unless ($item->{"template_code"}); - my $key = "$item->{id}--$item->{template_code}"; - push(@values, - { "value" => $key, - "label" => $item->{"description"}, - "default" => $key eq $form->{"language"} }); + { "value" => "$item->{id}--$item->{template_code}", + "label" => $item->{"description"} }); } - $options{"LANGUAGE"} = [ @values ]; - $options{"SHOW_LANGUAGE"} = scalar(@values) > 1; - - @values = ( { "value" => "", "label" => "", "default" => 0 } ); + $options{LANGUAGE} = [ @values ]; # # Setup "printer" selection # + @values = (); + foreach my $item (@{ $form->{"ALL_PRINTERS"} }) { next unless ($item->{"template_code"}); - my $key = "$item->{id}--$item->{template_code}"; - push(@values, - { "value" => $key, - "label" => $item->{"printer_description"}, - "default" => $key eq $form->{"printer"} }); + { "value" => "$item->{id}--$item->{template_code}", + "label" => $item->{"printer_description"} }); } - $options{"PRINTER"} = [ @values ]; - $options{"SHOW_PRINTER"} = scalar(@values) > 1; + $options{PRINTER} = [ @values ]; } else { push(@hidden, qw(formname language printer));