示例#1
0
 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();
     }
 }
示例#2
0
文件: LessonTest.php 项目: jne21/WBT
 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);
 }