Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 34af475f

Von Moritz Bunkus vor mehr als 11 Jahren hinzugefügt

  • ID 34af475f9ba442662231760475fe156ddc70a107
  • Vorgänger 8bf95e97
  • Nachfolger a9822914

Administrationsbereich mit Menüsystem versehen

Unterschiede anzeigen:

SL/Controller/Admin.pm
378 378
# actions: database administration
379 379
#
380 380

  
381
sub action_database_administration {
381
sub action_create_dataset_login {
382 382
  my ($self) = @_;
383 383

  
384
  $::form->{dbhost}    ||= $::auth->{DB_config}->{host} || 'localhost';
385
  $::form->{dbport}    ||= $::auth->{DB_config}->{port} || 5432;
386
  $::form->{dbuser}    ||= $::auth->{DB_config}->{user} || 'kivitendo';
387
  $::form->{dbpasswd}  ||= $::auth->{DB_config}->{password};
388
  $::form->{dbdefault} ||= 'template1';
389

  
390
  $self->render('admin/dbadmin', title => t8('Database Administration'));
384
  $self->database_administration_login_form(
385
    title       => t8('Create Dataset'),
386
    next_action => 'create_dataset',
387
  );
391 388
}
392 389

  
393 390
sub action_create_dataset {
......
414 411
  $self->redirect_to(action => 'database_administration');
415 412
}
416 413

  
414
sub action_delete_dataset_login {
415
  my ($self) = @_;
416

  
417
  $self->database_administration_login_form(
418
    title       => t8('Delete Dataset'),
419
    next_action => 'delete_dataset',
420
  );
421
}
422

  
417 423
sub action_delete_dataset {
418 424
  my ($self) = @_;
419 425
  $self->delete_dataset_form;
......
440 446
# actions: locking, unlocking
441 447
#
442 448

  
449
sub action_show_lock {
450
  my ($self) = @_;
451

  
452
  $self->render(
453
    "admin/show_lock",
454
    title => "kivitendo " . t8('Administration'),
455
  );
456
}
457

  
443 458
sub action_unlock_system {
444 459
  my ($self) = @_;
445 460

  
......
451 466
sub action_lock_system {
452 467
  my ($self) = @_;
453 468

  
454
  SL::System::InstallationLock->unlock;
469
  SL::System::InstallationLock->lock;
455 470
  flash_later('info', t8('Lockfile created!'));
456 471
  $self->redirect_to(action => 'show');
457 472
}
......
532 547
  my ($self, $action) = @_;
533 548

  
534 549
  $::request->layout(SL::Layout::Dispatcher->new(style => 'admin'));
535
  $::request->layout->use_stylesheet("lx-office-erp.css");
536 550
  $::form->{favicon} = "favicon.ico";
537 551
  %::myconfig        = (
538 552
    countrycode      => 'de',
......
544 558
sub setup_client {
545 559
  my ($self) = @_;
546 560

  
547
  $self->client((first { $_->is_default } @{ $self->all_clients }) || $self->all_clients->[0]) if !$self->client;
561
  $self->client(SL::DB::Manager::AuthClient->get_default || $self->all_clients->[0]) if !$self->client;
548 562
  $::auth->set_client($self->client->id);
549 563
}
550 564

  
551

  
552 565
#
553 566
# displaying forms
554 567
#
......
563 576
sub login_form {
564 577
  my ($self, %params) = @_;
565 578
  my $version         = $::form->read_version;
579
  $::request->layout->no_menu(1);
566 580
  $self->render('admin/adminlogin', title => t8('kivitendo v#1 administration', $version), %params, version => $version);
567 581
}
568 582

  
......
586 600
  $self->render('admin/edit_printer', %params);
587 601
}
588 602

  
603
sub database_administration_login_form {
604
  my ($self, %params) = @_;
605

  
606
  $self->render(
607
    'admin/dbadmin',
608
    dbhost    => $::form->{dbhost}    || $::auth->{DB_config}->{host} || 'localhost',
609
    dbport    => $::form->{dbport}    || $::auth->{DB_config}->{port} || 5432,
610
    dbuser    => $::form->{dbuser}    || $::auth->{DB_config}->{user} || 'kivitendo',
611
    dbpasswd  => $::form->{dbpasswd}  || $::auth->{DB_config}->{password},
612
    dbdefault => $::form->{dbdefault} || 'template1',
613
    %params,
614
  );
615
}
616

  
589 617
sub create_dataset_form {
590 618
  my ($self, %params) = @_;
591 619
  $self->render('admin/create_dataset', title => (t8('Database Administration') . " / " . t8('Create Dataset')));
SL/DB/Manager/AuthClient.pm
17 17
           columns => { SIMPLE => 'ALL' } );
18 18
}
19 19

  
20
sub get_default {
21
  return $_[0]->get_first(where => [ is_default => 1 ]);
22
}
23

  
20 24
1;
SL/Layout/Admin.pm
1 1
package SL::Layout::Admin;
2 2

  
3 3
use strict;
4
use parent qw(SL::Layout::Base);
4
use parent qw(SL::Layout::V3);
5 5

  
6
sub init_sub_layouts {
7
  [ SL::Layout::None->new ]
6
use SL::Menu;
7

  
8
use Rose::Object::MakeMethods::Generic (
9
  scalar => [ qw(no_menu) ],
10
);
11

  
12

  
13
sub init_menu {
14
  Menu->new('admin-menu.ini');
8 15
}
9 16

  
10 17
sub start_content {
11 18
  "<div id='admin' class='admin'>\n";
12 19
}
13 20

  
14
sub end_content {
15
  "</div>\n";
21
sub render {
22
  my ($self) = @_;
23

  
24
  $self->presenter->render(
25
    'menu/menuv3',
26
    force_ul_width    => 1,
27
    skip_frame_header => 1,
28
    menu              => $self->no_menu ? '' : $self->print_menu,
29
  );
16 30
}
17 31

  
18 32
1;
SL/Layout/V3.pm
146 146
}
147 147

  
148 148
sub pre_content {
149
  &render;
149
  $_[0]->render;
150 150
}
151 151

  
152 152
sub start_content {
admin-menu.ini
1
[Users, Clients and User Groups]
2

  
3
[Users, Clients and User Groups--List Users, Clients and User Groups]
4
module=controller.pl
5
action=Admin/show
6

  
7
[Users, Clients and User Groups--Add User]
8
module=controller.pl
9
action=Admin/new_user
10

  
11
[Users, Clients and User Groups--Add Client]
12
module=controller.pl
13
action=Admin/new_client
14

  
15
[Users, Clients and User Groups--Add User Group]
16
module=controller.pl
17
action=Admin/new_group
18

  
19
[Database Management]
20

  
21
[Database Management--Create Dataset]
22
module=controller.pl
23
action=Admin/create_dataset_login
24

  
25
[Database Management--Delete Dataset]
26
module=controller.pl
27
action=Admin/delete_dataset_login
28

  
29
[Printer Management]
30

  
31
[Printer Management--List Printers]
32
module=controller.pl
33
action=Admin/list_printers
34

  
35
[Printer Management--Add Printer]
36
module=controller.pl
37
action=Admin/new_printer
38

  
39
[System]
40

  
41
[System--Lock and unlock installation]
42
module=controller.pl
43
action=Admin/show_lock
44

  
45
[System--To user login]
46
module=controller.pl
47
action=LoginScreen/user_login
48

  
49
[System--Logout]
50
module=controller.pl
51
action=Admin/logout
locale/de/all
113 113
  'Accounting method'           => 'Versteuerungsart',
114 114
  'Accrual'                     => 'Soll-Versteuerung',
115 115
  'Accrual accounting'          => 'Soll-Versteuerung',
116
  'Actions'                     => 'Aktionen',
117 116
  'Active'                      => 'Aktiv',
118 117
  'Active?'                     => 'Aktiviert?',
119 118
  'Add'                         => 'Erfassen',
......
141 140
  'Add Part'                    => 'Ware erfassen',
142 141
  'Add Price Factor'            => 'Preisfaktor erfassen',
143 142
  'Add Pricegroup'              => 'Preisgruppe erfassen',
143
  'Add Printer'                 => 'Drucker hinzufügen',
144 144
  'Add Project'                 => 'Projekt erfassen',
145 145
  'Add Purchase Delivery Order' => 'Lieferschein (Einkauf) erfassen',
146 146
  'Add Purchase Order'          => 'Lieferantenauftrag erfassen',
......
166 166
  'Add new currency'            => 'Neue Währung hinzufügen',
167 167
  'Add new custom variable'     => 'Neue benutzerdefinierte Variable erfassen',
168 168
  'Add note'                    => 'Notiz erfassen',
169
  'Add printer'                 => 'Drucker hinzufügen',
170 169
  'Add unit'                    => 'Einheit hinzuf&uuml;gen',
171 170
  'Address'                     => 'Adresse',
172 171
  'Administration'              => 'Administration',
......
594 593
  'Database Connection Test'    => 'Test der Datenbankverbindung',
595 594
  'Database Host'               => 'Datenbankcomputer',
596 595
  'Database ID'                 => 'Datenbank-ID',
596
  'Database Management'         => 'Datenbankadministration',
597 597
  'Database User'               => 'Datenbankbenutzer',
598 598
  'Database host and port'      => 'Datenbankhost und -port',
599
  'Database login (#1)'         => 'Datenbankanmeldung (#1)',
599 600
  'Database name'               => 'Datenbankname',
600 601
  'Database settings'           => 'Datenbankeinstellungen',
601 602
  'Database template'           => 'Datenbankvorlage',
......
860 861
  'Ertrag'                      => 'Ertrag',
861 862
  'Ertrag prozentual'           => 'Ertrag prozentual',
862 863
  'Escape character'            => 'Escape-Zeichen',
864
  'Everyone can log in.'        => 'Alle können sich anmelden.',
863 865
  'Exact'                       => 'Genau',
864 866
  'Example: http://kivitendo.de' => 'Beispiel:  http://kivitendo.de',
865 867
  'Excel'                       => 'Excel',
......
997 999
  'Help Template Variables'     => 'Hilfe zu Dokumenten-Variablen',
998 1000
  'Help on column names'        => 'Hilfe zu Spaltennamen',
999 1001
  'Here'                        => 'Hier',
1002
  'Here you only provide the credentials for logging into the database.' => 'Hier geben Sie nur die Logindaten für die Anmeldung an der Datenbank ein.',
1000 1003
  'Here\'s an example command line:' => 'Hier ist eine Kommandozeile, die als Beispiel dient:',
1001 1004
  'Hide Filter'                 => 'Filter verbergen',
1002 1005
  'Hide by default'             => 'Standardm&auml;&szlig;ig verstecken',
......
1024 1027
  'If the default transfer out always succeed use this bin for negative stock quantity.' => 'Standardlagerplatz für Auslagern ohne Prüfung auf Bestand',
1025 1028
  'If you enter values for the part number and / or part description then only those bins containing parts whose part number or part description match your input will be shown.' => 'Wenn Sie f&uuml;r die Artikelnummer und / oder die Beschreibung etwas eingeben, so werden nur die Lagerpl&auml;tze angezeigt, in denen Waren eingelagert sind, die Ihre Suchbegriffe enthalten.',
1026 1029
  'If you have not chosen for example the category revenue for a tax and you choose an revenue account to create a transfer in the general ledger, this tax will not be displayed in the tax dropdown.' => 'Wenn Sie z.B. die Kategory Erlös für eine Steuer nicht gewählt haben und ein Erlöskonto beim Erstellen einer Dialogbuchung wählen, wird diese Steuer auch nicht im Dropdown-Menü für die Steuern angezeigt.',
1030
  'If you lock the system normal users won\'t be able to log in.' => 'Wenn Sie das System sperren, so werden sich normale Benutzer nicht mehr anmelden können.',
1027 1031
  'If you see this message, you most likely just setup your LX-Office and haven\'t added any entry types. If this is the case, the option is accessible for administrators in the System menu.' => 'Wenn Sie diese Meldung sehen haben Sie wahrscheinlich ein frisches LX-Office Setup und noch keine Buchungsgruppen eingerichtet. Ein Administrator kann dies im Systemmen&uuml; erledigen.',
1028 1032
  'If you select a base unit then you also have to enter a factor.' => 'Wenn Sie eine Basiseinheit auswählen, dann müssen Sie auch einen Faktor eingeben.',
1029 1033
  'If you want to change any of these parameters then press the "Back" button, edit the file "config/kivitendo.conf" and login into the admin module again.' => 'Wenn Sie einen der Parameter ändern wollen, so drücken Sie auf den "Zurück"-Button, bearbeiten Sie die Datei "config/kivitendo.conf", und melden Sie sich erneut im Administrationsbereich an.',
......
1178 1182
  'List Accounts'               => 'Konten anzeigen',
1179 1183
  'List Languages'              => 'Sprachen anzeigen',
1180 1184
  'List Price'                  => 'Listenpreis',
1185
  'List Printers'               => 'Drucker anzeigen',
1181 1186
  'List Transactions'           => 'Buchungsliste',
1187
  'List Users, Clients and User Groups' => 'Benutzer, Mandanten und Benutzergruppen anzeigen',
1182 1188
  'List current background jobs' => 'Aktuelle Hintergrund-Jobs anzeigen',
1183 1189
  'List export'                 => 'Export anzeigen',
1184 1190
  'List of bank accounts'       => 'Liste der Bankkonten',
......
1191 1197
  'Loading...'                  => 'Wird geladen...',
1192 1198
  'Local Tax Office Preferences' => 'Angaben zum Finanzamt',
1193 1199
  'Lock System'                 => 'System sperren',
1200
  'Lock and unlock installation' => 'Installation sperren/entsperren',
1194 1201
  'Lock file handling failed. Please verify that the directory "#1" is writeable by the webserver.' => 'Die Lockdateibehandlung schlug fehl. Bitte stellen Sie sicher, dass der Webserver das Verzeichnis "#1" beschreiben darf.',
1195 1202
  'Lockfile created!'           => 'System gesperrt!',
1196 1203
  'Lockfile removed!'           => 'System entsperrt!',
......
1331 1338
  'No warehouse has been created yet or the quantity of the bins is not configured yet.' => 'Es wurde noch kein Lager angelegt, bzw. die dazugehörigen Lagerplätze sind noch nicht konfiguriert.',
1332 1339
  'No.'                         => 'Position',
1333 1340
  'None'                        => 'Kein',
1341
  'Normal users cannot log in.' => 'Normale Benutzer können sich nicht anmelden.',
1334 1342
  'Not Discountable'            => 'Nicht rabattierfähig',
1335 1343
  'Not delivered'               => 'Nicht geliefert',
1336 1344
  'Not done yet'                => 'Noch nicht fertig',
......
1346 1354
  'Nothing has been selected for transfer.' => 'Es wurde nichts zum Umlagern ausgew&auml;hlt.',
1347 1355
  'Nothing selected!'           => 'Es wurde nichts ausgewählt!',
1348 1356
  'Nothing stocked yet.'        => 'Noch nichts eingelagert.',
1357
  'Nothing will be created or deleted at this stage!' => 'In diesem Schritt wird nichts angelegt oder gelöscht!',
1349 1358
  'Nov'                         => 'Nov',
1350 1359
  'November'                    => 'November',
1351 1360
  'Number'                      => 'Nummer',
......
1469 1478
  'Periodicity'                 => 'Periodizität',
1470 1479
  'Perpetual inventory'         => 'Bestandsmethode',
1471 1480
  'Personal settings'           => 'Pers&ouml;nliche Einstellungen',
1472
  'Pg Database Administration'  => 'Datenbankadministration',
1473 1481
  'Phone'                       => 'Telefon',
1474 1482
  'Phone1'                      => 'Telefon 1 ',
1475 1483
  'Phone2'                      => 'Telefon 2',
......
1976 1984
  'The account 3804 already exists, the update will be skipped.' => 'Das Konto 3804 existiert schon, das Update wird übersprungen.',
1977 1985
  'The account 3804 will not be added automatically.' => 'Das Konto 3804 wird nicht automatisch hinzugefügt.',
1978 1986
  'The action you\'ve chosen has not been executed because the document does not contain any item yet.' => 'Die von Ihnen ausgewählte Aktion wurde nicht ausgeführt, weil der Beleg noch keine Positionen enthält.',
1987
  'The administration area is always accessible.' => 'Der Administrationsbereich ist immer zugänglich.',
1979 1988
  'The application "#1" was not found on the system.' => 'Die Anwendung "#1" wurde auf dem System nicht gefunden.',
1980 1989
  'The assembly has been created.' => 'Das Erzeugnis wurde hergestellt.',
1981 1990
  'The assistant could not find anything wrong with #1. Maybe the problem has been solved in the meantime.' => 'Der Korrekturassistent konnte kein Problem bei #1 feststellen. Eventuell wurde das Problem in der Zwischenzeit bereits behoben.',
......
2061 2070
  'The following users will have access to this client' => 'Die folgenden Benutzer werden auf diesen Mandanten Zugriff haben',
2062 2071
  'The formula needs the following syntax:<br>For regular article:<br>Variablename= Variable Unit;<br>Variablename2= Variable2 Unit2;<br>...<br>###<br>Variable + ( Variable2 / Variable )<br><b>Please be beware of the spaces in the formula</b><br>' => 'Die Formeln m&uuml;ssen in der folgenden Syntax eingegeben werden:<br>Bei normalen Artikeln:<br>Variablenname = Variable Einheit;<br>Variablenname2 = Variable2 Einheit2;<br>...<br>###<br>Variable + Variable2 * ( Variable - Variable2 )<br>Variablennamen und Einheiten dürfen nur aus alphanumerischen Zeichen bestehen.<br>Es muss jeweils die Gesamte Zeile eingegeben werden',
2063 2072
  'The greetings have been saved.' => 'Die Anreden wurden gespeichert',
2073
  'The installation is currently locked.' => 'Die Installation ist momentan gesperrt.',
2074
  'The installation is currently unlocked.' => 'Die Installation ist momentan entsperrt.',
2064 2075
  'The items are imported accoring do their number "X" regardless of the column order inside the file.' => 'Die Einträge werden in der Reihenfolge ihrer Indizes "X" unabhängig von der Spaltenreihenfolge in der Datei importiert.',
2065 2076
  'The link target to add has been created from the existing record.' => 'Das auszuwählende Verknüpfungsziel wurde aus dem bestehenden Beleg erstellt.',
2066 2077
  'The list has been printed.'  => 'Die Liste wurde ausgedruckt.',
......
2187 2198
  'This group is valid for the following clients' => 'Diese Gruppe ist für die folgenden Mandanten gültig',
2188 2199
  'This has been changed in this version, therefore please change the "old" bins to some real warehouse bins.' => 'Das wurde in dieser Version umgestellt, bitte ändern Sie die Freitext-Lagerplätze auf vorhandene Lagerplätze.',
2189 2200
  'This has been changed in this version.' => 'Ab dieser Version ist dies nicht mehr so.',
2190
  'This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!' => 'In diesem Schritt werden bestehende Datenbanken gesucht. Es werden noch keine &Auml;nderungen vorgenommen!',
2191 2201
  'This is a very critical problem.' => 'Dieses Problem ist sehr schwerwiegend.',
2192 2202
  'This is the client to be selected by default on the login screen.' => 'Dies ist derjenige Mandant, der im Loginbildschirm standardmäßig ausgewählt sein wird.',
2193 2203
  'This is the default bin for ignoring onhand' => 'Standardlagerplatz für Auslagern ohne Bestandsprüfung',
......
2319 2329
  'Users that have access to this client' => 'Benutzer mit Zugriff auf diesen Mandanten',
2320 2330
  'Users with access'           => 'Benutzer mit Zugriff',
2321 2331
  'Users with access to this client' => 'Benutzer mit Zugriff auf diesen Mandanten',
2332
  'Users, Clients and User Groups' => 'Benutzer, Mandanten und Benutzergruppen',
2322 2333
  'VAT ID'                      => 'UStdID-Nr',
2323 2334
  'Valid'                       => 'Gültig',
2324 2335
  'Valid from'                  => 'Gültig ab',
scripts/locales.pl
18 18
use Getopt::Long;
19 19
use IO::Dir;
20 20
use List::Util qw(first);
21
use POSIX;
22 21
use Pod::Usage;
23 22

  
24 23
$OUTPUT_AUTOFLUSH = 1;
......
35 34
my $locales_dir  = ".";
36 35
my $bindir       = "$basedir/bin/mozilla";
37 36
my @progdirs     = ( "$basedir/SL" );
38
my $menufile     = "menu.ini";
37
my @menufiles    = ("${basedir}/menu.ini", "${basedir}/admin-menu.ini");
39 38
my @javascript_dirs = ($basedir .'/js', $basedir .'/templates/webpages');
40 39
my $javascript_output_dir = $basedir .'/js';
41 40
my $submitsearch = qr/type\s*=\s*[\"\']?submit/i;
......
89 88
push @progfiles, map { m:^(.+)/([^/]+)$:; [ $2, $1 ] } grep { /\.pm$/ } map { find_files($_) } @progdirs;
90 89

  
91 90
# put customized files into @customfiles
92
my (@menufiles, %dir_h);
91
my %dir_h;
93 92

  
94 93
if ($opt_n) {
95 94
  @customfiles = ();
96
  @menufiles   = ($menufile);
97 95
} else {
98 96
  tie %dir_h, 'IO::Dir', $basedir;
99
  @menufiles = map { "$basedir/$_" } grep { /.*?_$menufile$/ } keys %dir_h;
100
  unshift @menufiles, "$basedir/$menufile";
97
  push @menufiles, map { "$basedir/$_" } grep { /.*_menu.ini$/ } keys %dir_h;
101 98
}
102 99

  
103 100
my @dbplfiles;
......
724 721
  close $fh;
725 722
}
726 723

  
727
sub slurp {
728
  my $file = shift;
729
  do { local ( @ARGV, $/ ) = $file; <> }
730
}
731

  
732 724
__END__
733 725

  
734 726
=head1 NAME
templates/webpages/admin/create_dataset.html
4 4

  
5 5
<h1>[% HTML.escape(title) %]</h1>
6 6

  
7
<p><a href="controller.pl?action=Admin/database_administration">[% LxERP.t8('Back') %]</a></p>
8

  
9 7
<form method="post" action="controller.pl">
10 8
 <p>
11 9
  [% LxERP.t8('You can either create a new database or chose an existing database.') %]
templates/webpages/admin/dbadmin.html
2 2

  
3 3
[% INCLUDE 'common/flash.html' %]
4 4

  
5
<h1>[% HTML.escape(title) %]</h1>
5
<h1>[% LxERP.t8("Database login (#1)", title) %]</h1>
6 6

  
7
<p><a href="controller.pl?action=Admin/show">[% LxERP.t8('Back') %]</a></p>
7
<p>[% LxERP.t8('Here you only provide the credentials for logging into the database.') %] [% LxERP.t8('Nothing will be created or deleted at this stage!') %]</p>
8 8

  
9 9
<form method="post" action="controller.pl">
10 10
 <table>
11 11
  <tr>
12 12
   <th align="right">[% LxERP.t8('Host') %]</th>
13
   <td>[% L.input_tag('dbhost', FORM.dbhost, size=30, class="initial_focus") %]</td>
13
   <td>[% L.input_tag('dbhost', dbhost, size=30, class="initial_focus") %]</td>
14 14
   <th align="right">[% LxERP.t8('Port') %]</th>
15
   <td>[% L.input_tag('dbport', FORM.dbport, size=6) %]</td>
15
   <td>[% L.input_tag('dbport', dbport, size=6) %]</td>
16 16
  </tr>
17 17

  
18 18
  <tr>
19 19
   <th align="right">[% LxERP.t8('Database User') %]</th>
20
   <td>[% L.input_tag("dbuser", FORM.dbuser, size=30) %]</td>
20
   <td>[% L.input_tag("dbuser", dbuser, size=30) %]</td>
21 21
   <th align="right">[% LxERP.t8('Password') %]</th>
22
   <td>[% L.input_tag("dbpasswd", FORM.dbpasswd, type='password', size=30) %]</td>
22
   <td>[% L.input_tag("dbpasswd", dbpasswd, type='password', size=30) %]</td>
23 23
  </tr>
24 24

  
25 25
  <tr>
26 26
   <th align="right">[% LxERP.t8('Database template') %]</th>
27
   <td>[% L.input_tag("dbdefault", FORM.dbdefault, size=30) %]</td>
27
   <td>[% L.input_tag("dbdefault", dbdefault, size=30) %]</td>
28 28
  </tr>
29 29
 </table>
30 30

  
31
 <div>
32
  [% L.hidden_tag("action", 'Admin/dispatch') %]
33
  [% L.submit_tag('action_create_dataset', LxERP.t8('Create Dataset')) %]
34
  [% L.submit_tag('action_delete_dataset', LxERP.t8('Delete Dataset')) %]
35
 </div>
36
</form>
31
 [% L.hidden_tag("action", 'Admin/dispatch') %]
37 32

  
38
<p>[% LxERP.t8('This is a preliminary check for existing sources. Nothing will be created or deleted at this stage!') %]</p>
33
 <p>
34
  [% L.submit_tag('action_' _ next_action, LxERP.t8('Login')) %]
35
 </p>
36
</form>
templates/webpages/admin/delete_dataset.html
4 4

  
5 5
<h1>[% HTML.escape(title) %]</h1>
6 6

  
7
<p><a href="controller.pl?action=Admin/database_administration">[% LxERP.t8('Back') %]</a></p>
8

  
9 7
<p>
10 8
 [% LxERP.t8('You can only delete datasets that are not in use.') %]
11 9
 [% LxERP.t8('If you want to delete such a dataset you have to edit the client(s) that are using the dataset in question and have them use another dataset.') %]
templates/webpages/admin/edit_client.html
5 5

  
6 6
<h1>[% HTML.escape(title) %]</h1>
7 7

  
8
<p>[% L.link(SELF.url_for(action="show"), LxERP.t8("Back")) %]</p>
9

  
10 8
<form method="post" action="controller.pl" id="form">
11 9
 [% L.hidden_tag("client.id", SELF.client.id) %]
12 10
 [% L.hidden_tag("action", "") %]
templates/webpages/admin/edit_group.html
5 5

  
6 6
<h1>[% HTML.escape(title) %]</h1>
7 7

  
8
<p>[% L.link(SELF.url_for(action="show"), LxERP.t8("Back")) %]</p>
9

  
10 8
<form method="post" action="controller.pl" id="form">
11 9
 [% L.hidden_tag("group.id", SELF.group.id) %]
12 10
 [% L.hidden_tag("action", "") %]
templates/webpages/admin/edit_printer.html
2 2

  
3 3
[% INCLUDE 'common/flash.html' %]
4 4

  
5
[% IF !SELF.all_clients.size %]
6
<div class="error">
7
 [% LxERP.t8("Error") %]:
8
 [% LxERP.t8("No clients have been created yet.") %]
9
</div>
10

  
11
[%- ELSE %]
12

  
5 13
<h1>[% HTML.escape(title) %]</h1>
6 14

  
7 15
<form method="post">
8
 [% L.hidden_tag("client.id", SELF.client.id) %]
9 16
 [% L.hidden_tag("action", 'Admin/dispatch') %]
10 17
 [% L.hidden_tag("printer.id", SELF.printer.id) %]
11 18

  
12 19
 <table>
20
  <tr>
21
   <th align="right">[% LxERP.t8('Client') %]</th>
22
   <td>[% L.select_tag("client.id", SELF.all_clients, default=SELF.client.id, title_key='name') %]</td>
23
  <tr>
24

  
13 25
  <tr>
14 26
   <th align="right">[% LxERP.t8('Printer Description') %]</th>
15 27
   <td>[% L.input_tag("printer.printer_description", SELF.printer.printer_description, size=30, class="initial_focus") %]</td>
......
33 45
 </p>
34 46

  
35 47
</form>
48

  
49
[% END %]
templates/webpages/admin/edit_user.html
5 5

  
6 6
<h1>[% HTML.escape(title) %]</h1>
7 7

  
8
<p>[% L.link(SELF.url_for(action="show"), LxERP.t8("Back")) %]</p>
9

  
10 8
<form method="post" action="controller.pl" id="form">
11 9
 [% L.hidden_tag("user.id", SELF.user.id) %]
12 10
 [% L.hidden_tag("action", "") %]
templates/webpages/admin/list_printers.html
10 10
 [% LxERP.t8("No clients have been created yet.") %]
11 11
</div>
12 12

  
13
<div>
14
 <a href="[% SELF.url_for(action='show') %]">[% LxERP.t8("Back") %]</a>
15
</div>
16

  
17 13
[%- ELSE %]
18 14

  
19
 <div>
20
  [% LxERP.t8("Actions") %]:
21
  <span class="link_separator"></span>
22
  <a href="[% SELF.url_for(action='show') %]">[% LxERP.t8("Back") %]</a>
23
  <span class="link_separator">|</span>
24
  <a href="[% SELF.url_for(action='new_printer', 'client.id'=SELF.client.id) %]">[% LxERP.t8("Add printer") %]</a>
25
 </div>
26

  
27
 <hr>
28

  
29 15
 <p>
30 16
  [% LxERP.t8("Client to configure the printers for") %]:
31 17
  [% L.select_tag('client.id', SELF.all_clients, id='client_id', title_key='name', default=SELF.client.id) %]
templates/webpages/admin/show.html
4 4

  
5 5
<h1>[% HTML.escape(title) %]</h1>
6 6

  
7
<div>
8
 [% LxERP.t8("Actions") %]:
9
 <span class="link_separator"></span>
10
 [% L.link(SELF.url_for(action="new_user"), LxERP.t8("Add User")) %]
11
 <span class="link_separator">|</span>
12
 [% L.link(SELF.url_for(action="new_client"), LxERP.t8("Add Client")) %]
13
 <span class="link_separator">|</span>
14
 [% L.link(SELF.url_for(action="new_group"), LxERP.t8("Add User Group")) %]
15
 <span class="link_separator">|</span>
16
 [% L.link(SELF.url_for(action="database_administration"), LxERP.t8("Pg Database Administration")) %]
17
 <span class="link_separator">|</span>
18
 [% L.link(SELF.url_for(action="list_printers"), LxERP.t8("Printer Management")) %]
19
 <span class="link_separator">|</span>
20
 [% IF SELF.is_locked %]
21
  [% L.link(SELF.url_for(action="unlock_system"), LxERP.t8("Unlock System")) %]
22
 [% ELSE %]
23
  [% L.link(SELF.url_for(action="lock_system"), LxERP.t8("Lock System")) %]
24
 [% END %]
25
 <span class="link_separator">|</span>
26
 [% L.link(SELF.url_for(action="logout"), LxERP.t8("Logout")) %]
27
 <span class="link_separator">|</span>
28
 [% L.link(SELF.url_for(controller="LoginScreen", action="user_login"), LxERP.t8("To user login")) %]
29
</div>
30

  
31
<hr>
32

  
33 7
<div class="tabwidget">
34 8
 <ul>
35 9
  <li><a href="#user_list">[%- LxERP.t8("User list") %]</a></li>
templates/webpages/admin/show_lock.html
1
[%- USE HTML %][%- USE LxERP -%][%- USE L -%]
2

  
3
[% INCLUDE 'common/flash.html' %]
4

  
5
<h1>[% HTML.escape(title) %]</h1>
6

  
7
[% IF SELF.is_locked %]
8
<p>
9
 [% LxERP.t8("The installation is currently locked.") %]
10
 [% LxERP.t8("Normal users cannot log in.") %]
11
 [% LxERP.t8("The administration area is always accessible.") %]
12
</p>
13

  
14
<p><a href="[% SELF.url_for(action='unlock_system') %]">[% LxERP.t8("Unlock System") %]</a></p>
15

  
16
[% ELSE %]
17

  
18
<p>
19
 [% LxERP.t8("The installation is currently unlocked.") %]
20
 [% LxERP.t8("Everyone can log in.") %]
21
</p>
22

  
23
<p>
24
 [% LxERP.t8("If you lock the system normal users won't be able to log in.") %]
25
 [% LxERP.t8("The administration area is always accessible.") %]
26
</p>
27

  
28
<p><a href="[% SELF.url_for(action='lock_system') %]">[% LxERP.t8("Lock System") %]</a></p>
29

  
30
[% END %]
templates/webpages/menu/menuv3.html
1 1
[%- USE T8 %]
2 2
[% USE HTML %][%- USE LxERP -%]
3
[% UNLESS skip_frame_header %]
3 4
 <script type="text/javascript" src="js/quicksearch_input.js"></script>
4 5
 <script type="text/javascript">
5 6
 <!--
......
30 31
  <img src="image/[% IF MYCONFIG.stylesheet == 'lx-office-erp.css' %]spinner-blue.gif[% ELSE %]spinner-white.gif[% END %]" alt="[% LxERP.t8('Loading...') %]">
31 32
 </span>
32 33
</div>
34
[% END %]
33 35
 <div id="menuv3">
34 36

  
35 37
  [% menu %]

Auch abrufbar als: Unified diff