function edit() { $registry = Registry::getInstance(); $locales = LocaleManager::getLocales(); $course = new Course(intval($_GET['id'])); $owner = new Admin($course->ownerId); if ($_POST['action'] == 'save') { //d($_POST, 1); $course->ownerId = intval($_SESSION['admin']['id']); $course->state = intval($_POST['state'] == 'on'); foreach (array_keys($locales) as $localeId) { $course->l10n->loadDataFromArray($localeId, ['name' => trim($_POST['name_' . $localeId]), 'meta' => trim($_POST['meta_' . $localeId]), 'description' => trim($_POST['description_' . $localeId]), 'brief' => trim($_POST['brief_' . $localeId]), 'url' => trim($_POST['url_' . $localeId]), 'title' => trim($_POST['title_' . $localeId]), 'state' => intval($_POST['state_' . $localeId])]); } $course->save(); header('Location: /cms/course/list'); exit; } else { $i18n = new I18n($registry->get('i18n_path') . 'course.xml'); $data = ['course' => $course, 'lessons' => Lesson::getList($course->id), 'owner' => $owner]; $renderer = new Renderer(Page::MODE_NORMAL); $pTitle = $i18n->get($course->id ? 'update_mode' : 'append_mode'); $renderer->page->set('title', $pTitle)->set('h1', $pTitle)->set('content', CourseEditView::get($data)); $renderer->loadPage(); $renderer->output(); } }
function test_LessonGetList() { $registry = Registry::getInstance(); $setup = $registry->get(self::REG_KEY); $locales = LocaleManager::getLocales(); $list = Lesson::getList($setup['courseId']); $this->assertNotCount(0, $list, "getList returns empty array from not empty database ({$setup['id']})"); $this->assertArrayHasKey($setup['id'], $list, "getList: Existing Lesson not found ({$setup['id']})"); $lesson = $list[$setup['id']]; $this->assertInstanceOf('WBT\\Lesson', $lesson, "getList item is not an instance of Lesson"); $this->assertEquals($setup['courseId'], $lesson->courseId, "getList: Invalid course id ({$setup['id']})."); foreach ($locales as $localeId => $localeData) { foreach ($this->l10nFields as $field) { $this->assertEquals($setup['l10n']->get($field, $localeId), $lesson->l10n->get($field, $localeId), "getList: Invalid ({$setup['id']})->l10n({$localeId}, {$field})."); } } unset($lesson); }