parse_str($_POST['visibility']); mb_internal_encoding('utf-8'); //This must be put here due to PHP bug #48697 if ($visibility) { $positions = serialize(array('first' => array_unique($firstlist), 'second' => array_unique($secondlist), 'visibility' => $visibility)); } else { $positions = serialize(array('first' => array_unique($firstlist), 'second' => array_unique($secondlist))); } //Dashboard positions if ($_POST['dashboard']) { eF_updateTableData("users", array('dashboard_positions' => $positions), "login='******'login'] . "'"); } else { if ($currentUser->user['user_type'] == 'administrator' && !isset($_POST['lessons_ID'])) { EfrontConfiguration::setValue($currentUser->user['login'] . "_positions", $positions); } else { if (isset($_POST['set_default']) && ($currentUser->user['user_type'] == 'administrator' || $roles[$currentLesson->getRole($currentUser->user['login'])] == 'professor')) { $currentLesson->setOptions(array("default_positions" => $positions)); $positions = serialize(array('first' => array_unique($firstlist), 'second' => array_unique($secondlist), 'visibility' => $visibility, 'update' => true)); $lessonStudents = $currentLesson->getUsers('student'); if (sizeof($lessonStudents) > 0) { $users = implode("','", array_keys($lessonStudents)); eF_updateTableData("users_to_lessons", array('positions' => $positions), "users_LOGIN in ('" . $users . "') and lessons_ID=" . $currentLesson->lesson['id']); } } else { if (!$visibility) { $result = eF_getTableData("users_to_lessons", "positions", "lessons_ID=" . $currentLesson->lesson['id'] . " AND users_LOGIN='******'login'] . "'"); $result = unserialize($result[0]['positions']); $visibility = $result['visibility']; if (isset($result['visibility'])) { $positions = serialize(array('first' => array_unique($firstlist), 'second' => array_unique($secondlist), 'visibility' => $visibility)); }