X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=SL%2FController%2FRequirementSpecTextBlock.pm;h=264b83b5ac07b4d43f1a8a9fb373106103397418;hb=23bbb82973bcaac52efd7eb1609801c11a8970f3;hp=737f748e82e29114c5a2a3489a2895b05c0257cb;hpb=fb1cb898c1317c3d976ec511e21d5bd419837dca;p=kivitendo-erp.git diff --git a/SL/Controller/RequirementSpecTextBlock.pm b/SL/Controller/RequirementSpecTextBlock.pm index 737f748e8..264b83b5a 100644 --- a/SL/Controller/RequirementSpecTextBlock.pm +++ b/SL/Controller/RequirementSpecTextBlock.pm @@ -8,7 +8,6 @@ use Carp; use Params::Validate (); use Time::HiRes (); -use SL::ClientJS; use SL::Clipboard; use SL::Controller::Helper::RequirementSpec; use SL::DB::RequirementSpec; @@ -23,9 +22,10 @@ use constant SORTABLE_PICTURE_LIST => 'kivi.requirement_spec.make_text_block_pic use Rose::Object::MakeMethods::Generic ( scalar => [ qw(text_block) ], - 'scalar --get_set_init' => [ qw(predefined_texts js picture) ], + 'scalar --get_set_init' => [ qw(predefined_texts picture) ], ); +__PACKAGE__->run_before('check_auth'); __PACKAGE__->run_before('load_requirement_spec_text_block', only => [qw(ajax_edit ajax_update ajax_delete ajax_flag dragged_and_dropped ajax_copy ajax_add_picture)]); # @@ -65,7 +65,7 @@ sub action_ajax_add { $self->add_new_text_block_form(output_position => $new_where, insert_after_id => $::form->{id}, requirement_spec_id => $::form->{requirement_spec_id}); - $self->invalidate_version->render($self); + $self->invalidate_version->render; } sub action_ajax_edit { @@ -398,6 +398,11 @@ sub action_reorder_pictures { # filters # +sub check_auth { + my ($self) = @_; + $::auth->assert('requirement_spec_edit'); +} + sub load_requirement_spec_text_block { my ($self) = @_; $self->text_block(SL::DB::RequirementSpecTextBlock->new(id => $::form->{id})->load || die "No such requirement spec text block"); @@ -421,18 +426,13 @@ sub output_position_from_id { } sub init_predefined_texts { - return SL::DB::Manager::RequirementSpecPredefinedText->get_all_sorted; + return SL::DB::Manager::RequirementSpecPredefinedText->get_all_sorted(where => [ useable_for_text_blocks => 1 ]); } sub init_picture { return SL::DB::RequirementSpecPicture->new(id => $::form->{picture_id} || $::form->{id})->load; } -sub init_js { - my ($self) = @_; - $self->js(SL::ClientJS->new); -} - sub invalidate_version { my ($self) = @_; @@ -489,7 +489,7 @@ sub paste_picture { $self->text_block->save; })) { $::lxdebug->message(LXDebug::WARN(), "Error: " . $self->text_block->db->error); - return $self->js->error($::locale->text('Saving failed. Error message from the database: #1', $self->text_block->db->error))->render($self); + return $self->js->error($::locale->text('Saving failed. Error message from the database: #1', $self->text_block->db->error))->render; } my $html = $self->render('requirement_spec_text_block/_text_block_picture', { output => 0 }, picture => $self->picture); @@ -497,7 +497,7 @@ sub paste_picture { $self->invalidate_version ->append('#text-block-' . $self->text_block->id . '-pictures', $html) ->show('#text-block-' . $self->text_block->id . '-pictures') - ->render($self); + ->render; } 1;