Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 606032ad

Von Niclas Zimmermann vor mehr als 11 Jahren hinzugefügt

Recht für Anzeige der Produktivität

Um die Produktivität einzusehen, ist jetzt ein Recht erforderlich.
Standardmäßig wird dieses Recht gegeben, um den gleichen Zustand
wie vor dem Commit zu garantieren.

Weiterhin gibt es nun auch das Recht für Anzeige des Administrationslinks
im Menü-Punkt Programme.

Das Upgrade-Script sorgt dafür, dass die Rechte weiterhin gelten,
weil sie vorher ja jeder User hatte.

Der Commit enthält auch den Changelog-Eintrag für diese Änderung.

Implementiert #2290.

Unterschiede anzeigen:

SL/Auth.pm
1060 1060
    ["email_bcc",                      $locale->text("May set the BCC field when sending emails")],
1061 1061
    ["config",                         $locale->text("Change kivitendo installation settings (all menu entries beneath 'System')")],
1062 1062
    ["admin",                          $locale->text("Administration (Used to access instance administration from user logins)")],
1063
    ["productivity",                   $locale->text("Productivity")],
1064
    ["display_admin_link",             $locale->text("Show administration link")],
1063 1065
    );
1064 1066

  
1065 1067
  return @all_rights;
bin/mozilla/fu.pl
10 10
sub _collect_links {
11 11
  $main::lxdebug->enter_sub();
12 12

  
13
  $main::auth->assert('productivity');
14

  
13 15
  my $dest = shift;
14 16

  
15 17
  my $form     = $main::form;
......
28 30
sub add {
29 31
  $main::lxdebug->enter_sub();
30 32

  
33
  $main::auth->assert('productivity');
34

  
31 35
  my $form     = $main::form;
32 36
  my %myconfig = %main::myconfig;
33 37
  my $locale   = $main::locale;
......
57 61
sub edit {
58 62
  $main::lxdebug->enter_sub();
59 63

  
64
  $main::auth->assert('productivity');
65

  
60 66
  my $form     = $main::form;
61 67
  my $locale   = $main::locale;
62 68

  
......
82 88
sub display_form {
83 89
  $main::lxdebug->enter_sub();
84 90

  
91
  $main::auth->assert('productivity');
92

  
85 93
  my $form     = $main::form;
86 94

  
87 95
  $form->get_lists("employees" => "EMPLOYEES");
......
102 110
sub save_follow_up {
103 111
  $main::lxdebug->enter_sub();
104 112

  
113
  $main::auth->assert('productivity');
114

  
105 115
  my $form     = $main::form;
106 116
  my $locale   = $main::locale;
107 117

  
......
139 149
sub finish {
140 150
  $main::lxdebug->enter_sub();
141 151

  
152
  $main::auth->assert('productivity');
153

  
142 154
  my $form     = $main::form;
143 155
  my $locale   = $main::locale;
144 156

  
......
175 187
sub delete {
176 188
  $main::lxdebug->enter_sub();
177 189

  
190
  $main::auth->assert('productivity');
191

  
178 192
  my $form     = $main::form;
179 193
  my $locale   = $main::locale;
180 194

  
......
211 225
sub search {
212 226
  $main::lxdebug->enter_sub();
213 227

  
228
  $main::auth->assert('productivity');
229

  
214 230
  my $form     = $main::form;
215 231
  my $locale   = $main::locale;
216 232

  
......
228 244
sub report {
229 245
  $main::lxdebug->enter_sub();
230 246

  
247
  $main::auth->assert('productivity');
248

  
231 249
  my $form     = $main::form;
232 250
  my %myconfig = %main::myconfig;
233 251
  my $locale   = $main::locale;
......
340 358
sub report_for_todo_list {
341 359
  $main::lxdebug->enter_sub();
342 360

  
361
  $main::auth->assert('productivity');
362

  
343 363
  my $form     = $main::form;
344 364

  
345 365
  my @report_params = qw(created_for subject body reference follow_up_date_from follow_up_date_to itime_from itime_to due_only all_users done not_done);
......
379 399
sub edit_access_rights {
380 400
  $main::lxdebug->enter_sub();
381 401

  
402
  $main::auth->assert('productivity');
403

  
382 404
  my $form     = $main::form;
383 405
  my $locale   = $main::locale;
384 406

  
......
399 421
sub save_access_rights {
400 422
  $main::lxdebug->enter_sub();
401 423

  
424
  $main::auth->assert('productivity');
425

  
402 426
  my $form     = $main::form;
403 427
  my $locale   = $main::locale;
404 428

  
......
427 451
}
428 452

  
429 453
sub save {
454
  $main::auth->assert('productivity');
455

  
430 456
  if ($main::form->{save_nextsub}) {
431 457
    call_sub($main::form->{save_nextsub});
432 458
  } else {
bin/mozilla/login.pl
46 46
  $main::lxdebug->enter_sub();
47 47

  
48 48
  my %myconfig = %main::myconfig;
49
  $form->{todo_list}  =  create_todo_list('login_screen' => 1) if (!$form->{no_todo_list});
49
  $form->{todo_list}  =  create_todo_list('login_screen' => 1) if (!$form->{no_todo_list}) and ($main::auth->check_right($form->{login}, 'productivity'));
50 50

  
51 51
  $form->{stylesheet} =  $myconfig{stylesheet};
52 52
  $form->{title}      =  $::locale->text('kivitendo');
bin/mozilla/todo.pl
34 34
sub create_todo_list {
35 35
  $main::lxdebug->enter_sub();
36 36

  
37
  $main::auth->assert('productivity');
38

  
37 39
  my $form     = $main::form;
38 40

  
39 41
  my %params   = @_;
......
62 64
sub show_todo_list {
63 65
  $main::lxdebug->enter_sub();
64 66

  
67
  $main::auth->assert('productivity');
68

  
65 69
  my $form     = $main::form;
66 70
  my $locale   = $main::locale;
67 71

  
......
77 81
sub todo_list_follow_ups {
78 82
  $main::lxdebug->enter_sub();
79 83

  
84
  $main::auth->assert('productivity');
85

  
80 86
  require "bin/mozilla/fu.pl";
81 87

  
82 88
  my $content = report_for_todo_list();
......
89 95
sub todo_list_overdue_sales_quotations {
90 96
  $main::lxdebug->enter_sub();
91 97

  
98
  $main::auth->assert('productivity');
99

  
92 100
  require "bin/mozilla/oe.pl";
93 101

  
94 102
  my $content = report_for_todo_list();
doc/changelog
30 30

  
31 31
Kleinere neue Features und Detailverbesserungen:
32 32

  
33
- Recht für Produktivität und für Anzeige des Links zum Administrationsmenü
34
  Man kann den gesamten Produktivitätsbereich jetzt nur noch nutzen, wenn man die entsprechenden Rechte hat.
35
  Auch der Link Unter dem Menü-Punkt Programm zum Administrationsmenü wird jetzt nur noch
36
  angezeigt, wenn man entsprechendes Recht hat.
37
  Durch ein Upgrade wird allerdings bei schon bestehenden Benutzern automatisch die oben genannten beiden Rechte
38
  gesetzt, so dass alle die Produktivität vorher nutzen durften auch weiterhin nutzen dürfen, bzw. so dass
39
  bei allen, bei denen der Link auf das Admin-Menü angezeigt wurde, er auch weiterhin angezeigt wird.
40

  
33 41
- Stückliste für Lieferschein ausdrucken
34 42
  Stücklisten-Details (Haken bei Warenliste) für Erzeugnisse wurden seit 2009
35 43
  (TEMPLATE_ARRAY Änderung) nicht mehr ausgedruckt,
locale/de/all
1810 1810
  'Show Salesman'               => 'Verkäufer anzeigen',
1811 1811
  'Show TODO list'              => 'Aufgabenliste anzeigen',
1812 1812
  'Show Transfer via default'   => 'Ein- / Auslagern über Standardlagerplatz anzeigen',
1813
  'Show administration link'    => 'Link zur Administration anzeigen',
1813 1814
  'Show by default'             => 'Standardmäßig anzeigen',
1814 1815
  'Show custom variable search inputs' => 'Suchoptionen für Benutzerdefinierte Variablen verstecken',
1815 1816
  'Show delete button in purchase delivery orders?' => 'Soll der "Löschen"-Knopf bei Einkaufslieferscheinen angezeigt werden?',
menu.ini
476 476

  
477 477

  
478 478
[Productivity]
479
ACCESS=productivity
479 480

  
480 481
[Productivity--Show TODO list]
481 482
module=todo.pl
......
704 705
action=config
705 706

  
706 707
[Program--Administration area]
708
ACCESS=display_admin_link
707 709
module=admin.pl
708 710
action=login
709 711

  
sql/Pg-upgrade2/productivity_rights.pl
1
# @tag: productivity_rights
2
# @description: Setzt das Recht die Produktivität einzusehen und das Recht den Link zum Admin-Menü anzuzeigen wieder wie vorher
3
# @depends: release_3_0_0
4
package SL::DBUpgrade2::productivity_rights;
5

  
6
use strict;
7
use utf8;
8

  
9
use parent qw(SL::DBUpgrade2::Base);
10

  
11
use SL::DBUtils;
12

  
13
sub run {
14
  my ($self) = @_;
15

  
16
  my $groups = $main::auth->read_groups();
17

  
18
  foreach my $group (values %{$groups}) {
19
    $group->{rights}->{productivity}       = 1 unless defined $group->{rights}->{productivity};
20
    $group->{rights}->{display_admin_link} = 1 unless defined $group->{rights}->{display_admin_link};
21
    $main::auth->save_group($group);
22
  }
23

  
24
  return 1;
25
} # end run
26

  
27
1;

Auch abrufbar als: Unified diff