<?php define('INTERNAL', 1); define('PUBLIC', 1); define('JSON', 1); require dirname(dirname(dirname(__FILE__))) . '/init.php'; safe_require('artefact', 'courses'); $filter = param_alpha('filter', 'all'); $query = param_variable('query', ''); $eschool_param = param_integer('eschool', 0); $category_param = param_variable('category', 0); $offset = param_integer('offset', 0); $limit = param_integer('limit', 10); if ($eschool_param == 0) { $available_eschools = $CFG->current_app->getMnetEschools(); $courselist = ArtefactTypeCourses::get_courses($filter, $query, $limit, $offset, $available_eschools, 0); } else { $eschools = array(); array_push($eschools, Doctrine::getTable('GcrEschool')->findOneById($eschool_param)); $courselist = ArtefactTypeCourses::get_courses($filter, $query, $limit, $offset, $eschools, $category_param); } $data = ArtefactTypeCourses::build_courselist_html($courselist, 'index', $eschool_param, $category_param); json_reply(false, array('data' => $data));
function course_create_submit(Pieform $form, $values) { global $CFG; $mhr_user = $CFG->current_app->getCurrentUser(); try { $new_category = ArtefactTypeCourses::create_category($values); $results = ArtefactTypeCourses::create_course($values, $new_category); if (!$results) { $CFG->current_app->gcError('Course creation error', 'gcdatabaseerror'); } else { foreach ($results as $course_data) { $eschool = Doctrine::getTable('GcrEschool')->findOneById($values['eschool']); $mdl_course = $eschool->getCourse($course_data['id']); if (isset($values['password'])) { $eschool->alterGcrEnrollmentByName($mdl_course, 'password', $values['password']); } if ($values['cost'] > 0) { $eschool->alterGcrEnrollmentByName($mdl_course, 'cost', $values['cost']); } $mdl_user = $mhr_user->getUserOnEschool($eschool, true); $mdl_user->enrolUserinCourse($mdl_course, $eschool, '3'); if ($mhr_user->hasEclassroom()) { if ($mdl_role = $eschool->selectFromMdlTable('role', 'shortname', 'eclassroomcourseowner', true)) { $mdl_user->enrolUserinCourse($mdl_course, $eschool, $mdl_role->id); } } } redirect($eschool->getAppUrl() . "/course/view.php?id=" . $course_data['id'] . "&transfer=" . $CFG->current_app->getShortName()); } } catch (Exception $e) { $CFG->current_app->gcError('Problem with create course submission: ' . $e, 'gcdatabaseerror'); } }