Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision cb2abccd

Von Sven Schöling vor fast 13 Jahren hinzugefügt

Ansprechpartner löschbar machen.

Ansprechpartner können jetzt gelöscht werden. Ist der Ansprechpartner noch in
verwendung wird eine Nachricht an den User gegeben und der Ansprechpartner nur
auf ungültig gesetzt. Ungültige Ansprechpartner werden in den Belegmasken nicht
angezeigt, es sei denn der Beleg wird aus der Datenbank geholt und der
ungültige Ansprechpartner ist vorausgewählt. Beim ersten Erneuern bei dem ein
anderer Ansprechpartner ausgewählt ist, der ungültige nicht mehr zur Auswahl
gestellt.

Es gibt noch keinen Aufräummechanismus für unbenutzte Zombieansprechpartner in
der Datenbank.

Beim Testen in Bonn hatte ich massive Probleme mit einem Setup unter Ubuntu
10.04 mit Postgres 8.4.10, Perl 5.10.1, DBI 1.609, RDBO 0.785, RDB 0.758, RO
0.856. Kompilierung ist scheinbar ohne erkennbare Zusammenhänge unter CGI und
FCGI schon zur compile time abgestürzt.

Sollten diese Probleme nochmal auftauchen, bitte melden.

Unterschiede anzeigen:

bin/mozilla/ct.pl
51 51
use SL::CVar;
52 52
use SL::DB::Business;
53 53
use SL::DB::Default;
54
use SL::Helper::Flash;
54 55
use SL::ReportGenerator;
55 56

  
56 57
require "bin/mozilla/common.pl";
......
730 731
}
731 732

  
732 733
sub delete_contact {
733
  $main::lxdebug->enter_sub();
734

  
735
  $main::auth->assert('customer_vendor_edit');
734
  $::lxdebug->enter_sub;
735
  $::auth->assert('customer_vendor_edit');
736 736

  
737
  my $form     = $main::form;
738
  my %myconfig = %main::myconfig;
737
  CT->get_contact(\%::myconfig, $::form);
739 738

  
740
  CT->get_contact(\%myconfig, \%$form);
739
  my $contact = SL::DB::Manager::Contact->find_by(cp_id => $::form->{cp_id});
741 740

  
742
  unless ($form->{cp_used}) {
743
    CT->delete_contact($form->{cp_id});
744
    @$form{ grep /^cp_/, keys %$form } = undef;
741
  if ($contact->used) {
742
    $contact->detach;
743
    flash('info', $::locale->text('Contact is in use and was flagged invalid.'));
744
  } else {
745
    $contact->delete;
746
    flash('info', $::locale->text('Contact deleted.'));
745 747
  }
748
  delete $::form->{$_} for grep /^cp_/, keys %$::form;
746 749

  
747 750
  edit();
748 751

  
749
  $main::lxdebug->leave_sub();
752
  $::lxdebug->leave_sub;
750 753
}
751 754

  
752 755
sub ajax_autocomplete {

Auch abrufbar als: Unified diff