질문/조언질답게시판

DEFAULT_VIEWPORT

Extra Form
PHP PHP 7.0
CMS Rhymix 2.x

모듈 제작 과정에서 제가 뭔가 잘못 건드렸는지 시스템 설정 > 고급 설정에 들어가려 할 때 다음과 같은 에러가 발생하고 있습니다.

 

[Fri Feb 19 19:06:40.982896 2021] [proxy_fcgi:error] [pid 3661449:tid 140004978317056] [client 106.240.234.146:6970] AH01071: Got error 'PHP message: PHP Exception: Error #0 "Undefined class constant 'DEFAULT_VIEWPORT'" in modules/admin/tpl/config_advanced.html on line 234\n#0 /var/www/clients/client135/web434/web/classes/template/TemplateHandler.class.php(367): include()\n#1 /var/www/clients/client135/web434/web/classes/template/TemplateHandler.class.php(156): TemplateHandler->_fetch()\n#2 /var/www/clients/client135/web434/web/classes/display/HTMLDisplayHandler.php(87): TemplateHandler->compile()\n#3 /var/www/clients/client135/web434/web/classes/display/DisplayHandler.class.php(82): HTMLDisplayHandler->toDoc()\n#4 /var/www/clients/client135/web434/web/classes/module/ModuleHandler.class.php(1154): DisplayHandler->printContent()\n#5 /var/www/clients/client135/web434/web/index.php(52): ModuleHandler->displayContent()\n', referer: https://dev.aporia.blog/index.php?module=admin&act=dispAdminConfigGeneral

 

원본 파일에는 modules/admin/tpl/config_advanced.html에 234행이 없어서 캐시의 템플릿 폴더를 뒤져보니 

다음과 같은 스크립트가 있는데

    function restoreDefaultViewport() {
        $('#mobile_viewport').val(<?php echo json_encode(\HTMLDisplayHandler::DEFAULT_VIEWPORT) ?>);
    }

이 부분을 삭제하고 캐시 파일을 덮어써보면 접속이 복원됩니다.

 

하지만 캐시파일 재생성하고 해당 페이지에 다시 접속을 해보면 동일한 에러가 나오네요.

어떤 점을 바로잡는 게 좋을지 조언 좀 부탁드리겠습니다.

  • profile

    Undefined class constant 정의되지 않은 클래스 상수라고 하는데요.

     

    해당 상수는 classes/display/HTMLDisplayHandler.php 15번째 줄 전후에서 정의되어 있습니다.

    https://github.com/rhymix/rhymix/blob/master/classes/display/HTMLDisplayHandler.php

     

    분명히 존재하는 상수인데 없다고 한다면

    HTMLDisplayHandler.php 파일이 잘못되었을 수도 있으니 확인이 필요합니다.

  • profile profile
    깃허브에서 해당 파일에서 찾아보긴 했었는데 제 파일에선 볼 생각을 미처 못했네요.
    정말로 그 부분이 빠져 있었습니다.
    귀신이 곡할 노릇이네요.
    저는 건드린 적이 없었는데... 저는 정말 결백해요ㅜㅜㅜ
    (오른손이 한 일을 왼손이 모르게 했는지...)