diff --git a/content/lvplanung/lehrveranstaltungDBDML.php b/content/lvplanung/lehrveranstaltungDBDML.php index ef302b8df..9fd25f051 100644 --- a/content/lvplanung/lehrveranstaltungDBDML.php +++ b/content/lvplanung/lehrveranstaltungDBDML.php @@ -48,6 +48,7 @@ require_once('../../include/lvangebot.class.php'); require_once('../../include/gruppe.class.php'); require_once('../../include/lehrveranstaltung.class.php'); require_once('../../include/datum.class.php'); +require_once('../../include/vertrag.class.php'); $user = get_uid(); $db = new basis_db(); @@ -703,14 +704,29 @@ if(!$error) else { $leg = new lehreinheitmitarbeiter(); - if($leg->delete($_POST['lehreinheit_id'], $_POST['mitarbeiter_uid'])) + if($leg->load($_POST['lehreinheit_id'], $_POST['mitarbeiter_uid'])) { - $return = true; + // Wenn ein Vertrag dazu angelegt ist, dann diesen mitloeschen + if($leg->vertrag_id!='') + { + $vertrag = new vertrag(); + $vertrag->delete($leg->vertrag_id); + } + + if($leg->delete($_POST['lehreinheit_id'], $_POST['mitarbeiter_uid'])) + { + $return = true; + } + else + { + $return = false; + $errormsg = $leg->errormsg; + } } else { $return = false; - $errormsg = $leg->errormsg; + $errormsg='Fehlgeschlagen:'.$leg->errormsg; } } } diff --git a/content/mitarbeiter/mitarbeiterDBDML.php b/content/mitarbeiter/mitarbeiterDBDML.php index 3084be4f9..0361ca460 100644 --- a/content/mitarbeiter/mitarbeiterDBDML.php +++ b/content/mitarbeiter/mitarbeiterDBDML.php @@ -40,6 +40,7 @@ require_once('../../include/projektbetreuer.class.php'); require_once('../../include/vertrag.class.php'); require_once('../../include/lehreinheitmitarbeiter.class.php'); require_once('../../include/wawi_konto.class.php'); +require_once('../../include/addon.class.php'); $user = get_uid(); @@ -665,6 +666,47 @@ if(!$error) } } } + elseif(isset($_POST['type']) && $_POST['type']=='vertragdelete') + { + if(!$rechte->isBerechtigt('vertrag/mitarbeiter',null,'suid')) + { + $return = false; + $errormsg = 'Sie haben keine Berechtigung für diesen Vorgang'; + } + else + { + + $vertrag_id = filter_input(INPUT_POST, "vertrag_id"); + $vertrag = new vertrag(); + + // Wenn das Abrechnungsaddon geladen ist dann pruefen ob dieser Vertrag bereits abgerechnet wurde + $addons = new addon(); + if(in_array('abrechnung',$addons->aktive_addons)) + { + require_once('../../addons/abrechnung/include/abrechnung.class.php'); + $abrechnung = new abrechnung(); + if($abrechnung->isTeilabgerechnet($vertrag_id)) + { + $return =false; + $error=true; + $errormsg='Vertrag kann nicht gelöscht werden da er bereits abgerechnet wurde.'; + } + } + + if(!$error) + { + if($vertrag->delete($vertrag_id)) + { + $return=true; + } + else + { + $return = false; + $errormsg = 'Failed'.$vertrag->errormsg; + } + } + } + } elseif(isset($_POST['type']) && $_POST['type']=='vertragsdetaildelete') { if(!$rechte->isBerechtigt('vertrag/mitarbeiter',null,'suid')) diff --git a/content/mitarbeiter/mitarbeitervertrag.js.php b/content/mitarbeiter/mitarbeitervertrag.js.php index ea6000cff..00834c6d5 100644 --- a/content/mitarbeiter/mitarbeitervertrag.js.php +++ b/content/mitarbeiter/mitarbeitervertrag.js.php @@ -24,7 +24,7 @@ require_once('../../include/functions.inc.php'); $user = get_uid(); if(false): ?>