Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 0b280f98

Von Moritz Bunkus vor mehr als 17 Jahren hinzugefügt

  • ID 0b280f98054da74f79cbc9fdb3e9f4c23326be53
  • Vorgänger 41a03969
  • Nachfolger 6da3168c

Administration: Die Funktion zur Aktualisierung von nicht aktuellen Datenbanken neu geschrieben und wieder aktiviert. Unterstützt auch die Scripte in Pg-upgrade2.

Unterschiede anzeigen:

bin/mozilla/admin.pl
41 41
use SL::User;
42 42
use SL::Common;
43 43
use SL::Inifile;
44
use SL::DBUpgrade2;
44 45

  
45 46
require "bin/mozilla/common.pl";
46 47

  
......
570 571
}
571 572

  
572 573
sub update_dataset {
573

  
574
  %needsupdate = User->dbneedsupdate(\%$form);
575

  
576 574
  $form->{title} =
577 575
      "Lx-Office ERP "
578 576
    . $locale->text('Database Administration') . " / "
579 577
    . $locale->text('Update Dataset');
580 578

  
581
  $form->header;
582

  
583
  print qq|
584
<body class=admin>
585

  
586

  
587
<center>
588
<h2>$form->{title}</h2>
589
|;
590
  my $field_id = 0;
591
  foreach $key (sort keys %needsupdate) {
592
    if ($needsupdate{$key} ne $form->{dbversion}) {
593
      $upd .= qq|<input id="$field_id" name="db$key" type="checkbox" value="1" checked> $key\n|;
594
      $form->{dbupdate} .= "db$key ";
595
      $field_id++;
596
    }
597
  }
598

  
599
  chop $form->{dbupdate};
600

  
601
  if ($form->{dbupdate}) {
602

  
603
    print qq|
604
<table width=100%>
605
<form method=post action=$form->{script}>
606

  
607
<input type=hidden name="dbhost"    value="$form->{dbhost}">
608
<input type=hidden name="dbport"    value="$form->{dbport}">
609
<input type=hidden name="dbuser"    value="$form->{dbuser}">
610
<input type=hidden name="dbpasswd"  value="$form->{dbpasswd}">
611
<input type=hidden name="dbdefault" value="$form->{dbdefault}">
579
  my @need_updates      = User->dbneedsupdate($form);
580
  $form->{NEED_UPDATES} = \@need_updates;
581
  $form->{ALL_UPDATED}  = !scalar @need_updates;
612 582

  
613
<tr class=listheading>
614
  <th>| . $locale->text('The following Datasets need to be updated') . qq|</th>
615
</tr>
616
<tr>
617
<td>
618

  
619
$upd
583
  $form->header();
584
  print $form->parse_html_template("admin/update_dataset");
585
}
620 586

  
621
</td>
622
</tr>
623
<tr>
624
<td>
587
sub dbupdate {
588
  $form->{stylesheet} = "lx-office-erp.css";
589
  $form->{title}      = $locale->text("Dataset upgrade");
590
  $form->header();
625 591

  
626
<input name=dbupdate type=hidden value="$form->{dbupdate}">
592
  my $rowcount           = $form->{rowcount} * 1;
593
  my @update_rows        = grep { $form->{"update_$_"} } (1 .. $rowcount);
594
  $form->{NOTHING_TO_DO} = !scalar @update_rows;
595
  my $saved_form         = save_form();
627 596

  
628
<input name=callback type=hidden value="$form->{script}?action=list_users&rpw=$form->{rpw}">
597
  $| = 1;
629 598

  
630
<input type=hidden name=rpw value=$form->{rpw}>
599
  print $form->parse_html_template("admin/dbupgrade_all_header");
631 600

  
632
<input type=hidden name=nextsub value=dbupdate>
601
  foreach my $i (@update_rows) {
602
    restore_form($saved_form);
633 603

  
634
<hr size=3 noshade>
604
    map { $form->{$_} = $form->{"${_}_${i}"} } qw(dbname dbdriver dbhost dbport dbuser dbpasswd);
635 605

  
636
<br>
637
<input type=submit class=submit name=action value="|
638
      . $locale->text('Continue') . qq|">
606
    my $controls = parse_dbupdate_controls($form, $form->{dbdriver});
639 607

  
640
</td></tr>
641
</table>
642
</form>
643
|;
608
    print $form->parse_html_template("admin/dbupgrade_header");
644 609

  
645
  } else {
610
    $form->{dbupdate}        = $form->{dbname};
611
    $form->{$form->{dbname}} = 1;
646 612

  
647
    print $locale->text('All Datasets up to date!');
613
    User->dbupdate($form);
614
    User->dbupdate2($form, $controls);
648 615

  
616
    print $form->parse_html_template("admin/dbupgrade_footer");
649 617
  }
650 618

  
651
  print qq|
652

  
653
</body>
654
</html>
655
|;
656

  
657
}
658

  
659
sub dbupdate {
660
  $form->{"stylesheet"} = "lx-office-erp.css";
661
  $form->{"title"} = $main::locale->text("Dataset upgrade");
662
  $form->header();
663
  my $dbname =
664
    join(" ",
665
         map({ s/\s//g; s/^db//; $_; }
666
             grep({ $form->{$_} }
667
                  split(/\s+/, $form->{"dbupdate"}))));
668
  print($form->parse_html_template("dbupgrade/header",
669
                                   { "dbname" => $dbname }));
670

  
671
  User->dbupdate(\%$form);
672

  
673
  print qq|
674
<hr>
675

  
676
| . $locale->text('Dataset updated!') . qq|
677

  
678
<br>
679

  
680
<a id="enddatasetupdate" href="admin.pl?action=login&| .
681
join("&", map({ "$_=" . $form->escape($form->{$_}); } qw(rpw))) .
682
qq|">| . $locale->text("Continue") . qq|</a>|;
683

  
619
  print $form->parse_html_template("admin/dbupgrade_all_done");
684 620
}
685 621

  
686 622
sub create_dataset {

Auch abrufbar als: Unified diff