diff --git a/include/functions.inc.php b/include/functions.inc.php index c7e7db23c..913c512ac 100644 --- a/include/functions.inc.php +++ b/include/functions.inc.php @@ -23,6 +23,8 @@ require_once(dirname(__FILE__).'/basis_db.class.php'); require_once(dirname(__FILE__).'/authentication.class.php'); require_once(dirname(__FILE__).'/betriebsmittelperson.class.php'); require_once(dirname(__FILE__).'/personlog.class.php'); +require_once(dirname(__FILE__).'/benutzerberechtigung.class.php'); +require_once(dirname(__FILE__).'/mitarbeiter.class.php'); // Auth: Benutzer des Webportals /** @@ -1112,4 +1114,51 @@ function setLeadingZero($number, $length = 2) } } +/** Check if uid is a supervisor + * + * @param string $uid + * @param string $employee_uid + * @return boolean True if $uid is direct leader of $employee_uid. + */ +function check_isVorgesetzter($uid, $employee_uid) +{ + $mitarbeiter = new Mitarbeiter(); + $mitarbeiter->getUntergebene($uid); + $untergebenen_arr = $mitarbeiter->untergebene; + + // Check, if uid is an employee of supervisor + if (!empty($untergebenen_arr) && + in_array($employee_uid, $untergebenen_arr)) + { + return true; + } + else + { + return false; + } +} +/** Check if uid is a supervisor on higher oe level + * + * @param string $uid + * @param string $employee_uid + * @return boolean True if $uid is indirect supervisor (leader on higher oe-level) + * of $employee_uid. + */ +function check_isVorgesetzter_indirekt($uid, $employee_uid) +{ + $mitarbeiter = new Mitarbeiter(); + $mitarbeiter->getUntergebene($uid, true); + $untergebenen_ofChildOEs_arr = $mitarbeiter->untergebene; + + if (!empty($untergebenen_ofChildOEs_arr) && + in_array($employee_uid, $untergebenen_ofChildOEs_arr)) + { + return true; + } + else + { + return false; + } +} + ?>