Объект $PAGE во всплывающем окне и темы/css

Issue #168 closed
Oleg Sychev repo owner created an issue

Originally reported on Google Code with ID 168

Вот ошибка, которую мне выдает Moodle при открытии вашей страницы (не считая кучи ругательств
по поводу строк)

Coding problem: $PAGE->context was not set. You may have forgotten to call require_login()
or $PAGE->set_context(). The page may not display correctly as a result
line 458 of \lib\pagelib.php: call to debugging()
line 1426 of \lib\pagelib.php: call to moodle_page->magic_get_context()
line 1444 of \lib\setuplib.php: call to moodle_page->initialise_theme_and_output()
line 1296 of \lib\formslib.php: call to bootstrap_renderer->__call()
line 1296 of \lib\formslib.php: call to bootstrap_renderer->pix_url()
line 168 of \lib\formslib.php: call to MoodleQuickForm->MoodleQuickForm()
line 22 of \question\type\preg\authors_tool\ast_preg_form.php: call to moodleform->moodleform()

Есть подозрения, что именно поэтому оно не работает с рендерерами.

Надо посмотреть, какой контекст устанавливает экран редактирования вопроса и установить
такой же. Объект $PAGE сначала надо настроить - см. http://docs.moodle.org/dev/Page_API

Reported by oasychev on 2012-12-21 13:46:37

Comments (12)

  1. Former user Account Deleted
    1) В ф-ии render_stringextension_hint() класса qtype_preg_hintmatchingpart при вызове
    ф-ии render_hint() не передаются 2ой и 3ий параметры, что приводит к ошибке.
    2) Вызов ф-ии для объекта класса qtype_preg_hintmatchingpart при 2ом и 3ем параметре,
    равным null так же приводит к ошибке.
    

    Reported by fevt.60 on 2013-05-19 19:57:21

  2. Oleg Sychev reporter
    1) вовремя опомнились, давно исправлено
    https://code.google.com/r/oasychev-preg-24/source/detail?r=35928370fa2f93c36beb83a9d04e43cad37b5f42
    2) вызывать надо функцию render_hint, если посмотрите на родительский класс подсказок
    в poasquestion именно она определена для любой подсказки...
    

    Reported by oasychev on 2013-05-19 20:26:00

  3. Oleg Sychev reporter
    Если наладилось и смогли вызвать render_hint, то ставьте в Fixed, это часть вашей работы.
    
    Я проверяю Fixed задачи и перевожу в Done, 
    

    Reported by oasychev on 2013-06-21 15:21:41

  4. Former user Account Deleted
    2) смог вызвать ф-ию render_hint.
    
    С объектом $PAGE проблем не обнаружено. Если ни у кого так же нет проблем, то проблема
    решена.
    

    Reported by grvlter on 2013-07-04 10:55:38

  5. Oleg Sychev reporter
    См коммент 3, выставьте состояние - научитесь уже нормальному рабочему процессу...
    

    Reported by oasychev on 2013-07-04 12:58:56

  6. Oleg Sychev reporter
    Классы css должны быть подгружены через тему - проверьте, сделали ли вы получение темы
    в $PAGE как положено с учетом темы курса...
    

    Reported by oasychev on 2013-07-05 15:00:56

  7. Oleg Sychev reporter
    Классы из css надо убрать - а прежде всего сделать им префикс - иначе это создает проблемы
    другим:
    https://moodle.org/mod/forum/discuss.php?d=236412
    
    Валерий, вы вроде смотрели css - как там дела?
    

    Reported by oasychev on 2013-09-01 18:58:48

  8. Valeriy Streltsov
    По идее такой код должен работать:
    
    $csspath = "$CFG->wwwroot/theme/base/style/question.css";
    $PAGE->requires->css_theme(new moodle_url($csspath));
    
    В итоговую html этот файл инклудится, но результатов не видно :(
    

    Reported by vostreltsov on 2013-09-02 19:22:34

  9. Oleg Sychev reporter
    Там есть такая тонкость: $PAGE->requires-> должны выполняться до посылки заголовков,
    т.е. до вывода любого html-кода
    
    Кроме того, можно посмотреть как различаются по подключению preg'овский css - он то
    работает? В чем разница их инклуда...
    

    Reported by oasychev on 2013-09-03 08:09:56

  10. Valeriy Streltsov
    Вроде бы решено - мы невнимательно смотрели css. Там был указан класс correct для объектов,
    находящихся внутри объектов класса que. Переводите в done, если у всех работает.
    

    Reported by vostreltsov on 2013-09-03 15:50:07 - Status changed: Fixed

  11. Oleg Sychev reporter
    Надеюсь с $PAGE мы закончили
    

    Reported by oasychev on 2013-09-03 21:02:35 - Status changed: Done

  12. Log in to comment