public function execute(Request $request, Response $response) { $currentUserID = $GLOBALS["STEAM"]->get_current_steam_user()->get_id(); // The user to dialog for $userID = $request->getParameter("userID"); $result = array("id" => $request->getParameter("senderID"), "command" => "showCourseDialog"); $firstname = $GLOBALS["USERMANAGEMENT_DATA_ACCESS"]->getUserFirstName($userID); $lastname = $GLOBALS["USERMANAGEMENT_DATA_ACCESS"]->getUserLastName($userID); $login = $GLOBALS["USERMANAGEMENT_DATA_ACCESS"]->getUserLogin($userID); $course_rows = ""; $counter = 0; foreach ($GLOBALS["USERMANAGEMENT_DATA_ACCESS"]->getCourseDataForCustomer($_SESSION["CURRENT_CUSTOMER_ID"]) as $courseID) { $data = $GLOBALS["USERMANAGEMENT_DATA_ACCESS"]->getCourseData($courseID); $is_teilnehmer = teilnehmer_role::is_role($userID, new kurs_context($courseID)); $is_betreuer = betreuer_role::is_role($userID, new kurs_context($courseID)); $is_anspechpartner = ansprechpartner_role::is_role($userID, new kurs_context($courseID)); $is_mitglied = $is_teilnehmer || $is_betreuer; $is_unternehmens_verwalter = unternehmensverwalter_role::is_role($userID, new unternehmens_context($_SESSION["CURRENT_CUSTOMER_ID"])); $is_system_verwalter = systemverwalter_role::is_role($userID, new system_context("")); $current_user_is_systemverwalter = systemverwalter_role::is_role($GLOBALS["STEAM"]->get_current_steam_user()->get_id(), ""); $mitglied_checked = $is_mitglied ? "checked" : ""; $unternehmens_verwalter_checked = $is_unternehmens_verwalter ? "checked" : ""; $system_verwalter_checked = $is_system_verwalter ? "checked" : ""; $mitglied_disabled = ""; $teilnehmer_checked = ""; $betreuer_checked = ""; $ansprechpartner_checked = ""; $role_disabled = ""; if ($is_mitglied) { if ($is_anspechpartner) { $ansprechpartner_checked = "checked"; } else { if ($is_betreuer) { $betreuer_checked = "checked"; } else { if ($is_teilnehmer) { $teilnehmer_checked = "checked"; } } } if (!$current_user_is_systemverwalter) { $mitglied_disabled = "disabled"; } } else { $role_disabled = "disabled"; } $counter++; $course_rows .= "<tr>"; $course_rows .= "<td>" . $data["course_id"] . "</td>"; $course_rows .= "<td><b>»" . $data["name"] . "«</b><br><small>(" . $data["shortDesc"] . ")</small></td>"; $course_rows .= "<td><form name=\"member\"><input type=\"checkbox\" {$mitglied_checked} {$mitglied_disabled} /></form>"; $course_rows .= ""; $course_rows .= "</td>"; $course_rows .= "<td><form name=\"role\" {$role_disabled}><input type=\"radio\" name=\"role\" value=\"Teilnehmer\" {$teilnehmer_checked} onchange=\"changeRole('Teilnehmer',{$courseID},{$userID})\">Teilnehmer</input><br>\n\t\t\t\t\t\t\t\t\t <input type=\"radio\" name=\"role\" value=\"Betreuer\" {$betreuer_checked} onchange=\"changeRole('Betreuer',{$courseID},{$userID})\">Betreuer</input><br>\n\t\t\t\t\t\t\t\t\t <input type=\"radio\" name=\"role\" value=\"Ansprechpartener\" {$ansprechpartner_checked} onchange=\"changeRole('Ansprechpartner',{$courseID},{$userID})\">Ansprechpartner</input></form></td>"; $course_rows .= "</tr>"; } if ($counter == 0) { $course_rows = "Es sind keine Kurse für ihr Unternehmer freigeschaltet."; } if (USERMANAGEMENT_SYSTEMADMIN) { $system_admin_text = <<<END \t\t\t\t\t\t<tr> \t\t\t\t\t\t\t<td>Systemverwalter</td> \t\t\t\t\t\t\t<td><form name="system_admin"><input name="system_admin_checkbox" type="checkbox" onchange="toggle_system_admin()" {$system_verwalter_checked}/><input name="user_id" type="hidden" value="{$userID}" /></form></td> \t\t\t\t\t\t</tr> END; } else { $system_admin_text = ""; } if ($GLOBALS["USERMANAGEMENT_DATA_ACCESS"]->isAdmin($currentUserID)) { $root_staff = <<<END \t\t\t\t\t<h3>Verwalterrolle</h3> \t\t\t\t\t<table class="grid"> \t\t\t\t\t\t<tr> \t\t\t\t\t\t\t<th style="width:400px">Rolle</th> \t\t\t\t\t\t\t<th>Status</th> \t\t\t\t\t\t</tr> \t\t\t\t\t\t<tr> \t\t\t\t\t\t\t<td>Unternehmensverwalter</td> \t\t\t\t\t\t\t<td><form name="customer_admin"><input name="customer_admin_checkbox" type="checkbox" onchange="toggle_customer_admin()" {$unternehmens_verwalter_checked}/><input name="user_id" type="hidden" value="{$userID}" /></form></td> \t\t\t\t\t\t</tr> \t\t\t\t\t\t{$system_admin_text} \t\t\t\t\t</table> END; } else { $root_staff = ""; } $html = <<<END \t\t<style type='text/css'> \t\t\t.dialog { \t\t\t\twidth: 100% \t\t\t} \t\t\t \t\t\t.dialog tbody { \t\t\t\twidth: 100% \t\t\t} \t\t\t \t\t\t.dialog tr { \t\t\t\twidth: 100% \t\t\t} \t\t\t \t\t\t.dialog_th { \t\t\t\tbackground-color:#C36026; \t\t\t\twidth: 745px; \t\t\t\theight: 25px; \t\t\t\tcolor: white; \t\t\t} \t\t\t \t\t\t.dialog td { \t\t\t\tvertical-align:top; \t\t\t\t \t\t\t} \t\t</style> \t\t \t\t<table class="dialog"> \t\t\t<tr> \t\t\t\t<th class="dialog_th"><div style="float:right;display:inline;cursor:pointer" onclick="closeDialog()">[schliessen]</div><h3 style="display:inline">Rolle verwalten</h3></th> \t\t\t</tr> \t\t\t<tr> \t\t\t\t<td> \t\t\t\t\t<div style="margin:20px"><div class="infoBar">Hier können Sie die Mitgliedschaft in Kursen und die Rolle im Kurs ändern.<br> \t\t\t\t\tAusgewählter Benutzer: <b>{$firstname} {$lastname} <small>({$login})</small></b></div> \t\t\t\t\t<h3>Kurse verwalten</h3> \t\t\t\t\t<table class="grid"> \t\t\t\t\t\t<tr> \t\t\t\t\t\t\t<th>Kurs ID</th> \t\t\t\t\t\t\t<th style="width:400px">Kursname</th> \t\t\t\t\t\t\t<th>Mitglied</th> \t\t\t\t\t\t\t<th>Rolle</th> \t\t\t\t\t\t</tr> \t\t\t\t\t\t{$course_rows} \t\t\t\t\t</table> \t\t\t\t\t{$root_staff} \t\t\t\t\t</div> \t\t\t\t</td> \t\t\t</tr> \t\t</table> END; $result["html"] = $html; return $result; }
public function execute(Request $request, Response $response) { $userID = $request->getParameter("userID"); $role = explode(".", $request->getParameter("role")); $role_name = $role[0]; $courseID = $role[1]; // Result data for AJAX response $result = array("id" => $request->getParameter("senderID"), "command" => "changeCourseRole"); $is_teilnehmer = teilnehmer_role::is_role($userID, new kurs_context($courseID)); $is_betreuer = betreuer_role::is_role($userID, new kurs_context($courseID)); $is_anspechpartner = ansprechpartner_role::is_role($userID, new kurs_context($courseID)); $result["pre"] = $is_teilnehmer . " " . $is_betreuer . " " . $is_anspechpartner; if ($role_name == "Teilnehmer") { if ($is_anspechpartner) { ansprechpartner_role::get_role($userID, new kurs_context($courseID))->remove_role(); } if ($is_betreuer) { betreuer_role::get_role($userID, new kurs_context($courseID))->remove_role(); } // if ($is_teilnehmer) { // // ok // } // if (!$is_teilnehmer) { teilnehmer_role::make_role($userID, new kurs_context($courseID)); // } } else { if ($role_name == "Betreuer") { if ($is_anspechpartner) { ansprechpartner_role::get_role($userID, new kurs_context($courseID))->remove_role(); } if ($is_betreuer) { // ok } if ($is_teilnehmer) { teilnehmer_role::get_role($userID, new kurs_context($courseID))->remove_role(); } // if (!$is_betreuer) { betreuer_role::make_role($userID, new kurs_context($courseID)); // } } else { if ($role_name == "Ansprechpartner") { if ($is_anspechpartner) { // ok } if ($is_betreuer) { // ok } if ($is_teilnehmer) { teilnehmer_role::get_role($userID, new kurs_context($courseID))->remove_role(); } if (!$is_betreuer) { benutzer_role::make_role($userID, new kurs_context($courseID)); } // if (!$is_anspechpartner) { ansprechpartner_role::make_role($userID, new kurs_context($courseID)); // } } } } $result["state"] = "ok"; $result["role"] = $role_name; $result["userid"] = $userID; $viewHelper = new ViewHelper(); $result["html"] = str_replace("</tr>", "", str_replace("<tr class=\"filter_user\" id=\"row[{$userID}]\">", "", $viewHelper->getEmployeeRow($userID, $GLOBALS["USERMANAGEMENT_DATA_ACCESS"]->getUserLogin($userID)))); return $result; }