use SL::Request qw(flatten);
use SL::DB::Business;
use SL::DB::Default;
+use SL::DB::DeliveryTerm;
use SL::Helper::Flash;
use SL::ReportGenerator;
+use SL::MoreCommon qw(uri_encode);
require "bin/mozilla/common.pl";
require "bin/mozilla/reportgenerator.pl";
sub add {
$main::lxdebug->enter_sub();
- $main::auth->assert('customer_vendor_edit');
-
- my $form = $main::form;
- my %myconfig = %main::myconfig;
-
- $form->{title} = "Add";
- $form->{callback} = "$form->{script}?action=add&db=$form->{db}" unless $form->{callback};
+ my $url = 'controller.pl?action=CustomerVendor/add&db='. ($::form->{db} eq 'vendor' ? 'vendor' : 'customer');
- CT->populate_drop_down_boxes(\%myconfig, \%$form);
+ if ( $::form->{callback} ) {
+ $url .= '&callback='. uri_encode($::form->{callback});
+ }
- &form_header;
- &form_footer;
+ print $::form->redirect_header($url);
$main::lxdebug->leave_sub();
}
'include_prefix' => 'l_',
'include_value' => 'Y');
- $form->{jsscript} = 1;
$form->{title} = $form->{IS_CUSTOMER} ? $locale->text('Customers') : $locale->text('Vendors');
- $::request->{layout}->focus('#name');
$form->header();
print $form->parse_html_template('ct/search');
}
my @columns = (
- 'id', 'name', "$form->{db}number", 'contact', 'phone',
+ 'id', 'name', "$form->{db}number", 'contact', 'phone', 'discount',
'fax', 'email', 'taxnumber', 'street', 'zipcode' , 'city',
- 'business', 'invnumber', 'ordnumber', 'quonumber', 'salesman', 'country'
+ 'business', 'invnumber', 'ordnumber', 'quonumber', 'salesman', 'country'
);
my @includeable_custom_variables = grep { $_->{includeable} } @{ $cvar_configs };
'city' => { 'text' => $locale->text('City'), },
'country' => { 'text' => $locale->text('Country'), },
'salesman' => { 'text' => $locale->text('Salesman'), },
+ 'discount' => { 'text' => $locale->text('Discount'), },
%column_defs_cvars,
);
if ($ref->{id} ne $previous_id) {
$previous_id = $ref->{id};
+ $ref->{discount} = $form->format_amount(\%myconfig, $ref->{discount} * 100.0, 2);
map { $row->{$_}->{data} = $ref->{$_} } @columns;
- $row->{name}->{link} = build_std_url('action=edit', 'id=' . E($ref->{id}), 'callback', @hidden_nondefault);
+ $row->{name}->{link} = build_std_url('script=controller.pl', 'action=CustomerVendor/edit', 'id=' . E($ref->{id}), 'callback', @hidden_nondefault);
$row->{email}->{link} = 'mailto:' . E($ref->{email});
}
'cp_gender' => { 'text' => $::locale->text('Gender'), },
'cp_fax' => { 'text' => $::locale->text('Fax'), },
'cp_privatphone' => { 'text' => $::locale->text('Private Phone') },
- 'cp_privatemail' => { 'text' => $::locale->text('Private E-Mail') },
+ 'cp_privatemail' => { 'text' => $::locale->text('Private E-mail') },
%column_defs_cvars,
);
foreach my $ref (@contacts) {
my $row = { map { $_ => { 'data' => $ref->{$_} } } @columns };
- $row->{vcname}->{link} = build_std_url('action=edit', 'id=' . E($ref->{vcid}), 'db=' . E($ref->{db}), 'callback', @hidden_nondefault);
+ $row->{vcname}->{link} = build_std_url('script=controller.pl', 'action=CustomerVendor/edit', 'id=' . E($ref->{vcid}), 'db=' . E($ref->{db}), 'callback', @hidden_nondefault);
$row->{vcnumber}->{link} = $row->{vcname}->{link};
for (qw(cp_email cp_privatemail)) {
currencies => "ALL_CURRENCIES");
$form->get_pricegroup(\%myconfig, { all => 1 });
- $form->get_lists(customers => { key => "ALL_SALESMAN_CUSTOMERS", business_is_salesman => 1 }) if $::lx_office_conf{features}->{vertreter};
+ $form->get_lists(customers => { key => "ALL_SALESMAN_CUSTOMERS", business_is_salesman => 1 }) if $::instance_conf->get_vertreter;
$form->{ALL_EMPLOYEES} = SL::DB::Manager::Employee->get_all(query => [ or => [ id => $::form->{FU_created_for_user}, deleted => 0 ] ]);
$form->{ALL_SALESMEN} = SL::DB::Manager::Employee->get_all(query => [ or => [ id => $::form->{salesman_id}, deleted => 0 ] ]);
$form->{USER} = SL::DB::Manager::Employee->current;
+ $form->{ALL_DELIVERY_TERMS} = SL::DB::Manager::DeliveryTerm->get_all_sorted();
+
$form->{taxincluded} = ($form->{taxincluded}) ? "checked" : "";
$form->{is_customer} = $form->{db} eq 'customer';
$form->{shipto_label} = \&_shipto_label;
$form->{contacts_label} = \&_contacts_label;
$form->{taxzone_id} = 0 if !$form->{id};
- $form->{jsscript} = 1;
$form->{SHIPTO_ALL} = [ +{ shipto_id => '0', shiptoname => $::locale->text('All') }, @{ $form->{SHIPTO} } ];
- $::request->{layout}->focus("#greeting");
$form->{title} = $form->{title_save}
|| $locale->text("$form->{title} " . ucfirst $form->{db}) . ($form->{title} eq "Edit" ? " $form->{name}" : '');
$::form->isblank("name", $::locale->text("Name missing!"));
- if ($::form->{new_salesman_id} && $::lx_office_conf{features}->{vertreter}) {
+ if ($::form->{new_salesman_id} && $::instance_conf->get_vertreter) {
$::form->{salesman_id} = $::form->{new_salesman_id};
delete $::form->{new_salesman_id};
}