X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=bin%2Fmozilla%2Fct.pl;h=15d922dde8aee8e4c80924d3755e46ae9d52a224;hb=03d3d025ea4c8bea085fc7cdf1fe7be0b513eb63;hp=c127b24c91f87c1d8f0ce629e46189387ccb2262;hpb=2def6461e70255e05432757a744188e84c767f79;p=kivitendo-erp.git diff --git a/bin/mozilla/ct.pl b/bin/mozilla/ct.pl index c127b24c9..15d922dde 100644 --- a/bin/mozilla/ct.pl +++ b/bin/mozilla/ct.pl @@ -52,8 +52,10 @@ use SL::CVar; 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"; @@ -66,18 +68,13 @@ use strict; 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(); } @@ -101,9 +98,7 @@ sub search { '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'); @@ -172,9 +167,9 @@ sub list_names { } 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 }; @@ -202,6 +197,7 @@ sub list_names { 'city' => { 'text' => $locale->text('City'), }, 'country' => { 'text' => $locale->text('Country'), }, 'salesman' => { 'text' => $locale->text('Salesman'), }, + 'discount' => { 'text' => $locale->text('Discount'), }, %column_defs_cvars, ); @@ -209,7 +205,7 @@ sub list_names { my @hidden_variables = ( qw( db status obsolete name contact email cp_name addr_street addr_zipcode - addr_city business_id + addr_city addr_country business_id ), "$form->{db}number", map({ "cvar_$_->{name}" } @searchable_custom_variables), map({'cvar_'. $_->{name} .'_qtyop'} grep({$_->{type} eq 'number'} @searchable_custom_variables)), @@ -270,9 +266,10 @@ sub list_names { 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}); } @@ -305,8 +302,8 @@ sub list_contacts { my $cvar_configs = CVar->get_configs('module' => 'Contacts'); my @columns = qw( - cp_id vcname vcnumber cp_name cp_givenname cp_street cp_zipcode cp_city cp_phone1 cp_phone2 - cp_mobile1 cp_mobile2 cp_email cp_abteilung cp_position cp_birthday cp_gender + cp_id vcname vcnumber cp_name cp_givenname cp_street cp_zipcode cp_city cp_phone1 cp_phone2 cp_privatphone + cp_mobile1 cp_mobile2 cp_fax cp_email cp_privatemail cp_abteilung cp_position cp_birthday cp_gender ); my @includeable_custom_variables = grep { $_->{includeable} } @{ $cvar_configs }; @@ -342,6 +339,9 @@ sub list_contacts { 'cp_position' => { 'text' => $::locale->text('Function/position'), }, 'cp_birthday' => { 'text' => $::locale->text('Birthday'), }, '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') }, %column_defs_cvars, ); @@ -397,9 +397,12 @@ sub list_contacts { 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}; - $row->{cp_email}->{link} = 'mailto:' . E($ref->{cp_email}); + + for (qw(cp_email cp_privatemail)) { + $row->{$_}->{link} = 'mailto:' . E($ref->{$_}) if $ref->{$_}; + } $report->add_data($row); } @@ -459,19 +462,19 @@ sub form_header { 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}" : ''); @@ -530,7 +533,7 @@ sub _do_save { $::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}; }