function addUserToTimeTable($user_id, $course_id, $edition_id = 0) { // -- timetable setup ------------------------------------------------ require_once $GLOBALS["where_framework"] . "/lib/resources/lib.timetable.php"; $tt = new TimeTable(); $resource = "user"; $resource_id = $user_id; if ($edition_id > 0) { $consumer = "course_edition"; $consumer_id = $edition_id; $table = $GLOBALS["prefix_lms"] . "_course_edition"; $id_name = "idCourseEdition"; } else { $consumer = "course"; $consumer_id = $course_id; $table = $GLOBALS["prefix_lms"] . "_course"; $id_name = "idCourse"; } // ------------------------------------------------------------------- $qtxt = "SELECT date_begin, date_end FROM " . $table . " "; $qtxt .= "WHERE " . $id_name . "='" . (int) $consumer_id . "'"; $q = sql_query($qtxt); if ($q && mysql_num_rows($q) > 0) { $row = mysql_fetch_assoc($q); $start_date = $row["date_begin"]; $end_date = $row["date_end"]; } else { return FALSE; } $res = $tt->saveEvent(FALSE, $start_date, $end_date, $start_date, $end_date, $resource, $resource_id, $consumer, $consumer_id); return $res; }
function assignClassroomToEdition() { $err = FALSE; $idCourse = importVar('idCourse', true, 0); $idCourseEdition = importVar('edition_id', true, 0); // -- timetable setup ------------------------------------------------ require_once $GLOBALS["where_framework"] . "/lib/resources/lib.timetable.php"; $tt = new TimeTable(); $resource = "classroom"; $consumer = "course_edition"; $consumer_id = $idCourseEdition; // ------------------------------------------------------------------- if (isset($_POST['class_room_to_edition'])) { $saved_room = $_POST["class_room_to_edition"]; // -- Adding info to the timetable ----------------------------------- $qtxt = "SELECT date_begin, date_end " . "FROM " . $GLOBALS["prefix_lms"] . "_course_edition " . "WHERE idCourseEdition = '" . (int) $idCourseEdition . "'"; $q = sql_query($qtxt); if (!$q || !mysql_num_rows($q)) { Util::jump_to('index.php?modname=course&op=course_list&result=fail_course'); } list($start_date, $end_date) = sql_fetch_row($q); $save_ok = $tt->saveEvent(FALSE, $start_date, $end_date, $start_date, $end_date, $resource, $saved_room, $consumer, $consumer_id); } else { $saved_room = ''; } // -- Removin old info from the timetable ---------------------------- if ($saved_room != '') { $exclude_resource_id = $saved_room; } else { $exclude_resource_id = FALSE; } $tt->deleteAllConsumerEventsForResource($resource, $consumer, $consumer_id, $exclude_resource_id); // ------------------------------------------------------------------- $query = "UPDATE " . $GLOBALS['prefix_lms'] . "_course_edition\r\n\tSET classrooms = '{$saved_room}'\r\n\tWHERE idCourseEdition = {$idCourseEdition}"; $err = sql_query($query); Util::jump_to('index.php?modname=course&op=course_list&result=' . ($err === FALSE ? "ok_course" : "fail_course")); }
function store() { if ($this->getPerm()) { $start_date = $this->start_year . "-" . $this->start_month . "-" . $this->start_day . " " . $this->start_hour . ":" . $this->start_min . ":" . $this->start_sec; $end_date = $this->end_year . "-" . $this->end_month . "-" . $this->end_day . " " . $this->end_hour . ":" . $this->end_min . ":" . $this->end_sec; if ($this->id > 0) { $action_add = FALSE; $table = $GLOBALS['prefix_lms'] . "_classroom_calendar"; $qtxt = "SELECT start_date, end_date FROM " . $table . " "; $qtxt .= "WHERE id='" . (int) $this->id . "'"; $q = sql_query($qtxt); list($old_start_date, $old_end_date) = sql_fetch_row($q); $query = "UPDATE " . $GLOBALS['prefix_lms'] . "_classroom_calendar SET "; } else { $action_add = TRUE; $old_start_date = $start_date; $old_end_date = $end_date; $query = "INSERT INTO " . $GLOBALS['prefix_lms'] . "_classroom_calendar SET owner='" . Docebo::user()->getIdSt() . "',"; } $query .= "start_date='" . $start_date . "',"; $query .= "end_date='" . $end_date . "',"; $query .= "classroom_id='" . (int) $this->classroom . "',"; $query .= "title='" . $this->title . "',"; $query .= "description='" . $this->description . "' "; if ($this->id > 0) { $query .= " WHERE id='" . $this->id . "'"; } $q = sql_query($query); if (mysql_error()) { die(mysql_error() . "<br />" . $query); } if ($q) { if ($action_add) { $this->id = mysql_insert_id(); } // -- timetable setup ------------------------------------------------ require_once $GLOBALS["where_framework"] . "/lib/resources/lib.timetable.php"; $tt = new TimeTable(); $resource = "classroom"; $resource_id = (int) $this->classroom; $consumer = "classroom_event"; $consumer_id = $this->id; // ------------------------------------------------------------------- $save_ok = $tt->saveEvent(FALSE, $start_date, $end_date, $old_start_date, $old_end_date, $resource, $resource_id, $consumer, $consumer_id); if (!$save_ok) { // Not very optimized but we're late :P $query = "DELETE FROM " . $GLOBALS['prefix_lms'] . "_classroom_calendar WHERE id='" . $this->id . "'"; $q = sql_query($query); //$this->id=0; return false; } } else { //$this->id=0; } return $this->id; } else { return 0; } }