Revision a7cb4783
Von Moritz Bunkus vor fast 18 Jahren hinzugefügt
bin/mozilla/am.pl | ||
---|---|---|
$lxdebug->leave_sub();
|
||
}
|
||
|
||
sub _build_cfg_options {
|
||
my $idx = shift;
|
||
my $array = uc($idx) . 'S';
|
||
|
||
$form->{$array} = [];
|
||
foreach my $item (@_) {
|
||
push @{ $form->{$array} }, {
|
||
'name' => $item,
|
||
'value' => $item,
|
||
'selected' => $item eq $myconfig{$idx},
|
||
};
|
||
}
|
||
}
|
||
|
||
sub config {
|
||
$lxdebug->enter_sub();
|
||
|
||
# get defaults for account numbers and last numbers
|
||
AM->defaultaccounts(\%myconfig, \%$form);
|
||
|
||
foreach $item (qw(mm-dd-yy mm/dd/yy dd-mm-yy dd/mm/yy dd.mm.yy yyyy-mm-dd)) {
|
||
$dateformat .=
|
||
($item eq $myconfig{dateformat})
|
||
? "<option selected>$item\n"
|
||
: "<option>$item\n";
|
||
}
|
||
map { $form->{"defaults_${_}"} = $form->{defaults}->{$_} } keys %{ $form->{defaults} };
|
||
|
||
foreach $item (qw(1,000.00 1000.00 1.000,00 1000,00)) {
|
||
$numberformat .=
|
||
($item eq $myconfig{numberformat})
|
||
? "<option selected>$item\n"
|
||
: "<option>$item\n";
|
||
}
|
||
|
||
foreach $item (qw(name company address signature)) {
|
||
$myconfig{$item} =~ s/\"/"/g;
|
||
}
|
||
|
||
foreach $item (qw(address signature)) {
|
||
$myconfig{$item} =~ s/\\n/\r\n/g;
|
||
}
|
||
_build_cfg_options('dateformat', qw(mm-dd-yy mm/dd/yy dd-mm-yy dd/mm/yy dd.mm.yy yyyy-mm-dd));
|
||
_build_cfg_options('numberformat', qw(1,000.00 1000.00 1.000,00 1000,00));
|
||
|
||
@formats = ();
|
||
if ($opendocument_templates && $openofficeorg_writer_bin &&
|
||
... | ... | |
if (!$myconfig{"template_format"}) {
|
||
$myconfig{"template_format"} = "pdf";
|
||
}
|
||
my $template_format = "";
|
||
$form->{TEMPLATE_FORMATS} = [];
|
||
foreach $item (@formats) {
|
||
$template_format .=
|
||
"<option value=\"$item->{value}\"" .
|
||
($item->{"value"} eq $myconfig{"template_format"} ?
|
||
" selected" : "") .
|
||
">" . H($item->{"name"}) . "</option>";
|
||
push @{ $form->{TEMPLATE_FORMATS} }, {
|
||
'name' => $item->{name},
|
||
'value' => $item->{value},
|
||
'selected' => $item->{value} eq $myconfig{template_format},
|
||
};
|
||
}
|
||
|
||
if (!$myconfig{"default_media"}) {
|
||
$myconfig{"default_media"} = "screen";
|
||
}
|
||
|
||
my %selected = ($myconfig{"default_media"} => "selected");
|
||
my $default_media = qq|
|
||
<option value="screen" $selected{'screen'}>| . $locale->text("Screen") . qq|</option>
|
||
<option value="printer" $selected{'printer'}>| . $locale->text("Printer") . qq|</option>
|
||
<option value="queue" $selected{'queue'}>| . $locale->text("Queue") . qq|</option>
|
||
|;
|
||
$form->{MEDIA} = [
|
||
{ 'name' => $locale->text('Screen'), 'value' => 'screen', 'selected' => $selected{screen}, },
|
||
{ 'name' => $locale->text('Printer'), 'value' => 'printer', 'selected' => $selected{printer}, },
|
||
{ 'name' => $locale->text('Queue'), 'value' => 'queue', 'selected' => $selected{queue}, },
|
||
];
|
||
|
||
%selected = ();
|
||
$selected{$myconfig{"default_printer_id"}} = "selected"
|
||
if ($myconfig{"default_printer_id"});
|
||
my $default_printer = qq|<option></option>|;
|
||
AM->printer(\%myconfig, $form);
|
||
|
||
$form->{PRINTERS} = [];
|
||
foreach my $printer (@{$form->{"ALL"}}) {
|
||
$default_printer .= qq|<option value="| . Q($printer->{"id"}) .
|
||
qq|" $selected{$printer->{'id'}}>| .
|
||
H($printer->{"printer_description"}) . qq|</option>|;
|
||
push @{ $form->{PRINTERS} }, {
|
||
'name' => $printer->{printer_description},
|
||
'value' => $printer->{id},
|
||
'selected' => $printer->{id} == $myconfig{default_printer_id},
|
||
};
|
||
}
|
||
|
||
%countrycodes = User->country_codes;
|
||
$countrycodes = '';
|
||
foreach $key (sort { $countrycodes{$a} cmp $countrycodes{$b} }
|
||
keys %countrycodes
|
||
) {
|
||
$countrycodes .=
|
||
($myconfig{countrycode} eq $key)
|
||
? "<option selected value=$key>$countrycodes{$key}\n"
|
||
: "<option value=$key>$countrycodes{$key}\n";
|
||
}
|
||
$countrycodes = "<option>American English\n$countrycodes";
|
||
|
||
foreach $key (keys %{ $form->{IC} }) {
|
||
foreach $accno (sort keys %{ $form->{IC}{$key} }) {
|
||
$myconfig{$key} .=
|
||
($form->{IC}{$key}{$accno}{id} == $form->{defaults}{$key})
|
||
? "<option selected>$accno--$form->{IC}{$key}{$accno}{description}\n"
|
||
: "<option>$accno--$form->{IC}{$key}{$accno}{description}\n";
|
||
}
|
||
$countrycodes{""} = "American English";
|
||
$form->{COUNTRYCODES} = [];
|
||
foreach $countrycode (sort { $countrycodes{$a} cmp $countrycodes{$b} } keys %countrycodes) {
|
||
push @{ $form->{COUNTRYCODES} }, {
|
||
'name' => $countrycodes{$countrycode},
|
||
'value' => $countrycode,
|
||
'selected' => $countrycode eq $myconfig{countrycode},
|
||
};
|
||
}
|
||
|
||
# opendir CSS, "css/.";
|
||
# @all = grep /.*\.css$/, readdir CSS;
|
||
# closedir CSS;
|
||
|
||
# css dir has styles that are not intended as general layouts.
|
||
# reverting to hardcoded list
|
||
@all = qw(lx-office-erp.css Win2000.css);
|
||
|
||
foreach $item (@all) {
|
||
if ($item eq $myconfig{stylesheet}) {
|
||
$selectstylesheet .= qq|<option selected>$item\n|;
|
||
} else {
|
||
$selectstylesheet .= qq|<option>$item\n|;
|
||
foreach $key (keys %{ $form->{IC} }) {
|
||
foreach $accno (sort keys %{ $form->{IC}->{$key} }) {
|
||
my $array = "ACCNOS_" . uc($key);
|
||
$form->{$array} ||= [];
|
||
|
||
my $value = "${accno}--" . $form->{IC}->{$key}->{$accno}->{description};
|
||
push @{ $form->{$array} }, {
|
||
'name' => $value,
|
||
'value' => $value,
|
||
'selected' => $form->{IC}->{$key}->{$accno}->{id} == $form->{defaults}->{$key},
|
||
};
|
||
}
|
||
}
|
||
$selectstylesheet .= "<option>\n";
|
||
|
||
$form->{title} = $locale->text('Edit Preferences for') . qq| $form->{login}|;
|
||
|
||
$form->header;
|
||
|
||
if ($myconfig{menustyle} eq "old") {
|
||
$menustyle_old = "checked";
|
||
} elsif ($myconfig{menustyle} eq "neu") {
|
||
$menustyle_neu = "checked";
|
||
} elsif ($myconfig{menustyle} eq "v3") {
|
||
$menustyle_v3 = "checked";
|
||
$form->{STYLESHEETS} = [];
|
||
foreach $item (qw(lx-office-erp.css Win2000.css)) {
|
||
push @{ $form->{STYLESHEETS} }, {
|
||
'name' => $item,
|
||
'value' => $item,
|
||
'selected' => $item eq $myconfig{stylesheet},
|
||
};
|
||
}
|
||
|
||
my ($show_form_details, $hide_form_details);
|
||
$myconfig{"show_form_details"} = 1
|
||
unless (defined($myconfig{"show_form_details"}));
|
||
$show_form_details = "checked" if ($myconfig{"show_form_details"});
|
||
$hide_form_details = "checked" unless ($myconfig{"show_form_details"});
|
||
|
||
print qq|
|
||
<body>
|
||
$myconfig{show_form_details} = 1 unless (defined($myconfig{show_form_details}));
|
||
$form->{"menustyle_$myconfig{menustyle}"} = 1;
|
||
|
||
<form method=post action=$form->{script}>
|
||
$form->{title} = $locale->text('Edit Preferences for #1', $form->{login});
|
||
|
||
<input type=hidden name=old_password value=$myconfig{password}>
|
||
<input type=hidden name=type value=preferences>
|
||
<input type=hidden name=role value=$myconfig{role}>
|
||
|
||
<table width=100%>
|
||
<tr><th class=listtop>$form->{title}</th></tr>
|
||
<tr>
|
||
<td>
|
||
<table>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Name') . qq|</th>
|
||
<td><input name=name size=15 value="$myconfig{name}"></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Password') . qq|</th>
|
||
<td><input type=password name=new_password size=10 value=$myconfig{password}></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('E-mail') . qq|</th>
|
||
<td><input name=email size=30 value="$myconfig{email}"></td>
|
||
</tr>
|
||
<tr valign=top>
|
||
<th align=right>| . $locale->text('Signature') . qq|</th>
|
||
<td><textarea name=signature rows=3 cols=50>$myconfig{signature}</textarea></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Phone') . qq|</th>
|
||
<td><input name=tel size=14 value="$myconfig{tel}"></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Fax') . qq|</th>
|
||
<td><input name=fax size=14 value="$myconfig{fax}"></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Company') . qq|</th>
|
||
<td><input name=company size=30 value="$myconfig{company}"></td>
|
||
</tr>
|
||
<tr valign=top>
|
||
<th align=right>| . $locale->text('Address') . qq|</th>
|
||
<td><textarea name=address rows=4 cols=50>$myconfig{address}</textarea></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Date Format') . qq|</th>
|
||
<td><select name=dateformat>$dateformat</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Output Number Format') . qq|</th>
|
||
<td><select name=numberformat>$numberformat</select></td>
|
||
</tr>
|
||
|
||
<tr>
|
||
<th align=right>| . $locale->text('Dropdown Limit') . qq|</th>
|
||
<td><input name=vclimit size=10 value="$myconfig{vclimit}"></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Language') . qq|</th>
|
||
<td><select name=countrycode>$countrycodes</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Stylesheet') . qq|</th>
|
||
<td><select name=usestylesheet>$selectstylesheet</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Setup Menu') . qq|</th>
|
||
<td><input name=menustyle type=radio class=radio value=v3 $menustyle_v3> | .
|
||
$locale->text("Top (CSS)") . qq|
|
||
<input name=menustyle type=radio class=radio value=neu $menustyle_neu> | .
|
||
$locale->text("Top (Javascript)") . qq|
|
||
<input name=menustyle type=radio class=radio value=old $menustyle_old> | .
|
||
$locale->text("Old (on the side)") . qq|</td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Form details (second row)') . qq|</th>
|
||
<td><input type="radio" id="rad_show_form_details" name="show_form_details" value="1" $show_form_details>
|
||
<label for="rad_show_form_details">| . $locale->text('Show by default') . qq|</label>
|
||
<input type="radio" id="rad_hide_form_details" name="show_form_details" value="0" $hide_form_details>
|
||
<label for="rad_hide_form_details">| . $locale->text('Hide by default') . qq|</label></td>
|
||
</tr>
|
||
<input name=printer type=hidden value="$myconfig{printer}">
|
||
<tr class=listheading>
|
||
<th colspan=2>| . $locale->text("Print options") . qq|</th>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Default template format') . qq|</th>
|
||
<td><select name="template_format">$template_format</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Default output medium') . qq|</th>
|
||
<td><select name="default_media">$default_media</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Default printer') . qq|</th>
|
||
<td><select name="default_printer_id">$default_printer</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Number of copies') . qq|</th>
|
||
<td><input name="copies" size="10" value="| .
|
||
$form->quote($myconfig{"copies"}) . qq|"></td>
|
||
</tr>
|
||
|
||
|
||
<tr class=listheading>
|
||
<th colspan=2> </th>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Business Number') . qq|</th>
|
||
<td><input name=businessnumber size=25 value="$myconfig{businessnumber}"></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right>| . $locale->text('Year End') . qq| (mm/dd)</th>
|
||
<td><input name=yearend size=5 value=$form->{defaults}{yearend}></td>
|
||
</tr>
|
||
<tr class=listheading>
|
||
<th colspan=2>|
|
||
. $locale->text('Last Numbers & Default Accounts') . qq|</th>
|
||
</tr>
|
||
<tr>
|
||
<td colspan=2>
|
||
<table width=100%>
|
||
<tr>
|
||
<th align=right nowrap>| . $locale->text('Inventory Account') . qq|</th>
|
||
<td><select name=inventory_accno>$myconfig{IC}</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right nowrap>| . $locale->text('Revenue Account') . qq|</th>
|
||
<td><select name=income_accno>$myconfig{IC_income}</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right nowrap>| . $locale->text('Expense Account') . qq|</th>
|
||
<td><select name=expense_accno>$myconfig{IC_expense}</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right nowrap>| . $locale->text('Foreign Exchange Gain') . qq|</th>
|
||
<td><select name=fxgain_accno>$myconfig{FX_gain}</select></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right nowrap>| . $locale->text('Foreign Exchange Loss') . qq|</th>
|
||
<td><select name=fxloss_accno>$myconfig{FX_loss}</select></td>
|
||
</tr>
|
||
<tr>
|
||
<td colspan=2>|
|
||
. $locale->text(
|
||
'Enter up to 3 letters separated by a colon (i.e CAD:USD:EUR) for your native and foreign currencies'
|
||
)
|
||
. qq|<br><input name=curr size=40 value="$form->{defaults}{curr}"></td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td colspan=2>
|
||
<table width=100%>
|
||
<tr>
|
||
<th align=right nowrap>| . $locale->text('Last Invoice Number') . qq|</th>
|
||
<td><input name=invnumber size=10 value=$form->{defaults}{invnumber}></td>
|
||
<th align=right nowrap>|
|
||
. $locale->text('Last Customer Number') . qq|</th>
|
||
<td><input name=customernumber size=10 value=$form->{defaults}{customernumber}></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right nowrap>|
|
||
. $locale->text('Last Credit Note Number') . qq|</th>
|
||
<td><input name=cnnumber size=10 value=$form->{defaults}{cnnumber}></td>
|
||
<th align=right nowrap>|
|
||
. $locale->text('Last Vendor Number') . qq|</th>
|
||
<td><input name=vendornumber size=10 value=$form->{defaults}{vendornumber}></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right nowrap>|
|
||
. $locale->text('Last Sales Order Number') . qq|</th>
|
||
<td><input name=sonumber size=10 value=$form->{defaults}{sonumber}></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right nowrap>|
|
||
. $locale->text('Last Purchase Order Number') . qq|</th>
|
||
<td><input name=ponumber size=10 value=$form->{defaults}{ponumber}></td>
|
||
<th align=right nowrap>|
|
||
. $locale->text('Last Article Number') . qq|</th>
|
||
<td><input name=articlenumber size=10 value=$form->{defaults}{articlenumber}></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right nowrap>|
|
||
. $locale->text('Last Sales Quotation Number') . qq|</th>
|
||
<td><input name=sqnumber size=10 value=$form->{defaults}{sqnumber}></td>
|
||
<th align=right nowrap>|
|
||
. $locale->text('Last Service Number') . qq|</th>
|
||
<td><input name=servicenumber size=10 value=$form->{defaults}{servicenumber}></td>
|
||
</tr>
|
||
<tr>
|
||
<th align=right nowrap>| . $locale->text('Last RFQ Number') . qq|</th>
|
||
<td><input name=rfqnumber size=10 value=$form->{defaults}{rfqnumber}></td>
|
||
<th align=right nowrap></th>
|
||
<td></td>
|
||
</tr>
|
||
</table>
|
||
</td>
|
||
</tr>|;
|
||
# <tr class=listheading>
|
||
# <th colspan=2>| . $locale->text('Tax Accounts') . qq|</th>
|
||
# </tr>
|
||
# <tr>
|
||
# <td colspan=2>
|
||
# <table>
|
||
# <tr>
|
||
# <th> </th>
|
||
# <th>| . $locale->text('Rate') . qq| (%)</th>
|
||
# <th>| . $locale->text('Number') . qq|</th>
|
||
# </tr>
|
||
# |;
|
||
#
|
||
# foreach $accno (sort keys %{ $form->{taxrates} }) {
|
||
# print qq|
|
||
# <tr>
|
||
# <th align=right>$form->{taxrates}{$accno}{description}</th>
|
||
# <td><input name=$form->{taxrates}{$accno}{id} size=6 value=$form->{taxrates}{$accno}{rate}></td>
|
||
# <td><input name="taxnumber_$form->{taxrates}{$accno}{id}" value="$form->{taxrates}{$accno}{taxnumber}"></td>
|
||
# </tr>
|
||
# |;
|
||
# $form->{taxaccounts} .= "$form->{taxrates}{$accno}{id} ";
|
||
# }
|
||
#
|
||
# chop $form->{taxaccounts};
|
||
#
|
||
# print qq|
|
||
# <input name=taxaccounts type=hidden value="$form->{taxaccounts}">
|
||
#
|
||
# </table>
|
||
# </td>
|
||
# </tr>
|
||
print qq| </table>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td><hr size=3 noshade></td>
|
||
</tr>
|
||
</table>
|
||
|
||
<input type=hidden name=login value=$form->{login}>
|
||
<input type=hidden name=password value=$form->{password}>
|
||
|
||
<br>
|
||
<input type=submit class=submit name=action value="|
|
||
. $locale->text('Save') . qq|">
|
||
|
||
</form>
|
||
|
||
</body>
|
||
</html>
|
||
|;
|
||
$form->header();
|
||
print $form->parse_html_template2('am/config');
|
||
|
||
$lxdebug->leave_sub();
|
||
}
|
Auch abrufbar als: Unified diff
Umstellung der Maske "Benutzereinstellungen" auf die Verwendung von Template.