X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FSimpleSystemSetting.pm;h=f8dd4bc494b745fec6995b6ddec90abeca756be8;hb=ba40069b4f465cd51d509ab280d1c6e61652bda9;hp=5fb9751626a0276f4d463239438c615f22e62a3c;hpb=60d0f05f9fe667d2c309175d8849428393c6739f;p=kivitendo-erp.git diff --git a/SL/Controller/SimpleSystemSetting.pm b/SL/Controller/SimpleSystemSetting.pm index 5fb975162..f8dd4bc49 100644 --- a/SL/Controller/SimpleSystemSetting.pm +++ b/SL/Controller/SimpleSystemSetting.pm @@ -35,6 +35,7 @@ my %supported_types = ( { method => 'bank', title => t8('Bank'), }, { method => 'bank_code', title => t8('Bank code'), }, { method => 'bic', title => t8('BIC'), }, + { title => t8('Use for Factur-X/ZUGFeRD'), formatter => sub { $_[0]->use_for_zugferd ? t8('yes') : t8('no') } }, { method => 'reconciliation_starting_date_as_date', title => t8('Date'), align => 'right' }, { method => 'reconciliation_starting_balance_as_number', title => t8('Balance'), align => 'right' }, ], @@ -55,6 +56,26 @@ my %supported_types = ( ], }, + contact_department => { + class => 'ContactDepartment', + auth => 'config', + titles => { + list => t8('Contact Departments'), + add => t8('Add department'), + edit => t8('Edit department'), + }, + }, + + contact_title => { + class => 'ContactTitle', + auth => 'config', + titles => { + list => t8('Contact Titles'), + add => t8('Add title'), + edit => t8('Edit title'), + }, + }, + department => { class => 'Department', titles => { @@ -64,6 +85,16 @@ my %supported_types = ( }, }, + greeting => { + class => 'Greeting', + auth => 'config', + titles => { + list => t8('Greetings'), + add => t8('Add greeting'), + edit => t8('Edit greeting'), + }, + }, + language => { # Make locales.pl happy: $self->render("simple_system_setting/_language_form") class => 'Language', @@ -250,6 +281,7 @@ my @default_list_attributes = ( sub action_list { my ($self) = @_; + $self->setup_list_action_bar; $self->render('simple_system_setting/list', title => $self->config->{titles}->{list}); } @@ -377,6 +409,7 @@ sub render_form { my $sub_form_template = SL::System::Process->exe_dir . '/templates/webpages/simple_system_setting/_' . $self->type . '_form.html'; + $self->setup_render_form_action_bar; $self->render( 'simple_system_setting/form', %params, @@ -409,6 +442,58 @@ sub setup_language { $self->{dateformats} = [ qw(mm/dd/yy dd/mm/yy dd.mm.yy yyyy-mm-dd) ]; } +# +# action bar +# + +sub setup_list_action_bar { + my ($self, %params) = @_; + + for my $bar ($::request->layout->get('actionbar')) { + $bar->add( + link => [ + t8('Add'), + link => $self->url_for(action => 'new', type => $self->type), + ], + ); + } +} + +sub setup_render_form_action_bar { + my ($self) = @_; + + my $is_new = !$self->object->id; + my $can_be_deleted = !$is_new + && (!$self->object->can("orphaned") || $self->object->orphaned) + && (!$self->object->can("can_be_deleted") || $self->object->can_be_deleted); + + for my $bar ($::request->layout->get('actionbar')) { + $bar->add( + action => [ + t8('Save'), + submit => [ '#form', { action => 'SimpleSystemSetting/' . ($is_new ? 'create' : 'update') } ], + checks => [ 'kivi.validate_form' ], + accesskey => 'enter', + ], + + action => [ + t8('Delete'), + submit => [ '#form', { action => 'SimpleSystemSetting/delete' } ], + confirm => t8('Do you really want to delete this object?'), + disabled => $is_new ? t8('This object has not been saved yet.') + : !$can_be_deleted ? t8('The object is in use and cannot be deleted.') + : undef, + ], + + link => [ + t8('Abort'), + link => $self->list_url, + ], + ); + } + $::request->layout->add_javascripts('kivi.Validator.js'); +} + 1; __END__