move admin deletion to Utils::Contract::recursively_lock_contract

and prohibit deletion of the currently used account
agranig/1_0_subfix
Gerhard Jungwirth 13 years ago
parent b2faa82206
commit ec18d91ee8

@ -194,6 +194,11 @@ sub edit :Chained('base') :PathPart('edit') :Args(0) {
sub delete :Chained('base') :PathPart('delete') :Args(0) {
my ($self, $c) = @_;
if($c->stash->{administrator}->id == $c->user->id) {
$c->flash(messages => [{type => 'error', text => 'Cannot delete myself'}]);
NGCP::Panel::Utils::Navigation::back_or($c, $c->uri_for('/administrator'));
}
try {
$c->stash->{administrator}->delete;
$c->flash(messages => [{type => 'success', text => 'Administrator successfully deleted'}]);

@ -289,10 +289,6 @@ sub _handle_reseller_status_change {
);
if($reseller->status eq "terminated") {
#delete admins
for my $admin($reseller->admins->all) {
$admin->delete;
}
#delete ncos_levels
$reseller->ncos_levels->delete_all;
#delete voip_number_block_resellers

@ -89,17 +89,20 @@ sub recursively_lock_contract {
});
for my $reseller($resellers->all) {
# remove domains in case of reseller termination
if($status eq 'terminated') {
# remove domains in case of reseller termination
for my $domain($reseller->domain_resellers->all) {
$domain->domain->delete;
$domain->delete;
}
}
# remove admin logins in case of reseller termination
for my $admin($reseller->admins->all) {
$admin->delete;
# remove admin logins in case of reseller termination
for my $admin($reseller->admins->all) {
if($admin->id == $c->user->id) {
die "Cannot delete the currently used account";
}
$admin->delete;
}
}
# fetch sub-contracts of this contract

Loading…
Cancel
Save