Various fixes to improve PHP 8.0 compatibility

- XmlParser 클래스가 PHP 내장 클래스가 되어버려서 XeXmlParser로 변경
- 함수나 파라미터의 형태가 맞지 않아서 치명적인 오류 나는 곳 수정
- undefined 변수 및 배열 키 다수 수정 (치명적인 오류는 아님)
- 계속 수정중...
This commit is contained in:
Kijin Sung 2020-10-31 00:25:26 +09:00
parent 90084efd75
commit 8c161bc28d
38 changed files with 136 additions and 100 deletions

View file

@ -169,7 +169,7 @@ class addonAdminModel extends addon
return;
}
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$tmp_xml_obj = $oXmlParser->loadXmlFile($xml_file);
$xml_obj = $tmp_xml_obj->addon;

View file

@ -7,7 +7,8 @@
*/
class addonController extends addon
{
public $addon_file_called = false;
/**
* Initialization
*

View file

@ -425,7 +425,7 @@ class adminAdminModel extends admin
return;
}
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$_xml_obj = $oXmlParser->loadXmlFile($info_file);
if(!$_xml_obj->theme)
{

View file

@ -113,7 +113,7 @@ class adminAdminView extends admin
$params["act"] = "getResourceapiLastupdate";
$body = XmlGenerater::generate($params);
$buff = FileHandler::getRemoteResource($config->download_server, $body, 3, "POST", "application/xml");
$xml_lUpdate = new XmlParser();
$xml_lUpdate = new XeXmlParser();
$lUpdateDoc = $xml_lUpdate->parse($buff);
$updateDate = $lUpdateDoc->response->updatedate->body;
@ -224,7 +224,7 @@ class adminAdminView extends admin
if(file_exists($cache_file))
{
$oXml = new XmlParser();
$oXml = new XeXmlParser();
$buff = $oXml->parse(FileHandler::readFile($cache_file));
$item = $buff->zbxe_news->item;

View file

@ -79,7 +79,7 @@ class autoinstallAdminController extends autoinstall
$config = $oAdminModel->getAutoInstallAdminModuleConfig();
$buff = FileHandler::getRemoteResource($config->download_server, $body, 3, "POST", "application/xml", array(), array(), array(), $request_config);
$xml = new XmlParser();
$xml = new XeXmlParser();
$xmlDoc = $xml->parse($buff);
$this->updateCategory($xmlDoc);
$this->updatePackages($xmlDoc);
@ -150,7 +150,7 @@ class autoinstallAdminController extends autoinstall
continue;
}
$xml = new XmlParser();
$xml = new XeXmlParser();
$xmlDoc = $xml->loadXmlFile($real_path . $config_file);
if(!$xmlDoc)

View file

@ -202,7 +202,7 @@ class autoinstallAdminModel extends autoinstall
}
$result = array();
$xml = new XmlParser();
$xml = new XeXmlParser();
foreach($output->data as $package)
{
$packageSrl = $package->package_srl;

View file

@ -266,7 +266,7 @@ class autoinstallAdminView extends autoinstall
continue;
}
$xml = new XmlParser();
$xml = new XeXmlParser();
$xmlDoc = $xml->loadXmlFile(FileHandler::getRealPath($path) . $config_file);
if(!$xmlDoc)
{
@ -336,7 +336,7 @@ class autoinstallAdminView extends autoinstall
$config = $oAdminModel->getAutoInstallAdminModuleConfig();
$buff = FileHandler::getRemoteResource($config->download_server, $body, 3, "POST", "application/xml", array(), array(), array(), $request_config);
$xml_lUpdate = new XmlParser();
$xml_lUpdate = new XeXmlParser();
$xmlDoc = $xml_lUpdate->parse($buff);
if($xmlDoc && $xmlDoc->response->packagelist->item)
{
@ -434,7 +434,7 @@ class autoinstallAdminView extends autoinstall
$config = $oAdminModel->getAutoInstallAdminModuleConfig();
$buff = FileHandler::getRemoteResource($config->download_server, $body, 3, "POST", "application/xml", array(), array(), array(), $request_config);
$xml_lUpdate = new XmlParser();
$xml_lUpdate = new XeXmlParser();
$lUpdateDoc = $xml_lUpdate->parse($buff);
$updateDate = $lUpdateDoc->response->updatedate->body;
@ -590,7 +590,7 @@ class autoinstallAdminView extends autoinstall
$config = $oAdminModel->getAutoInstallAdminModuleConfig();
$buff = FileHandler::getRemoteResource($config->download_server, $body, 3, "POST", "application/xml", array(), array(), array(), $request_config);
$xml_lUpdate = new XmlParser();
$xml_lUpdate = new XeXmlParser();
$xmlDoc = $xml_lUpdate->parse($buff);
if($xmlDoc && $xmlDoc->response->packagelist->item)
{

View file

@ -56,7 +56,7 @@ class XmlGenerater
return;
}
$xml = new XmlParser();
$xml = new XeXmlParser();
$xmlDoc = $xml->parse($buff);
return $xmlDoc;
}

View file

@ -347,7 +347,7 @@ class importerAdminController extends importer
{
if(!$cur) $cur = 0;
// Create the xmlParser object
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
// Create objects for importing member information
$this->oMemberController = getController('member');
$this->oMemberModel = getModel('member');
@ -534,7 +534,7 @@ class importerAdminController extends importer
{
if(!$cur) $cur = 0;
// Create the xmlParser object
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
// Open an index file
$f = fopen($index_file,"r");
// Pass if already read
@ -633,7 +633,7 @@ class importerAdminController extends importer
function importModule($key, $cur, $index_file, $module_srl)
{
// Pre-create the objects needed
$this->oXmlParser = new XmlParser();
$this->oXmlParser = new XeXmlParser();
// Get category information of the target module
$oDocumentController = getController('document');
$oDocumentModel = getModel('document');
@ -1245,7 +1245,7 @@ class importerAdminController extends importer
if(!$buff) return array();
$buff = '<extra_vars>'.$buff;
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$xmlDoc = $this->oXmlParser->parse($buff);
if(!count($xmlDoc->extra_vars->key)) return array();

View file

@ -34,7 +34,7 @@ class ttimport
function importModule($key, $cur, $index_file, $unit_count, $module_srl, $guestbook_module_srl, $user_id, $module_name=null)
{
// Pre-create the objects needed
$this->oXmlParser = new XmlParser();
$this->oXmlParser = new XeXmlParser();
// Get category information of the target module
$oDocumentController = getController('document');
$oDocumentModel = getModel('document');

View file

@ -160,7 +160,7 @@ class krzipModel extends krzip
$request_config
);
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$result = $oXmlParser->parse($buff);
if($result->error)
{

View file

@ -529,7 +529,7 @@ class layoutModel extends layout
return $layout_info;
}
// If no cache file exists, parse the xml and then return the variable.
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$tmp_xml_obj = $oXmlParser->loadXmlFile($xml_file);
if($tmp_xml_obj->layout) $xml_obj = $tmp_xml_obj->layout;

View file

@ -3854,6 +3854,7 @@ class memberController extends member
Rhymix\Framework\Cache::delete("member:member_groups:$member_srl:site:0");
Rhymix\Framework\Cache::delete("site_and_module:accessible_modules:$member_srl");
unset($GLOBALS['__member_info__'][$member_srl]);
unset($GLOBALS['__member_groups__'][$member_srl]);
}
}
/* End of file member.controller.php */

View file

@ -89,7 +89,7 @@ class memberModel extends member
if(!$config->member_allow_fileupload) $config->member_allow_fileupload = 'N';
if(!$config->member_profile_view) $config->member_profile_view = 'N';
if($config->redirect_mid)
if(isset($config->redirect_mid) && $config->redirect_mid)
{
$config->redirect_url = getNotEncodedFullUrl('','mid',$config->redirect_mid);
}
@ -344,7 +344,7 @@ class memberModel extends member
{
if(!$member_srl) return new stdClass;
if(!$GLOBALS['__member_info__'][$member_srl])
if(!isset($GLOBALS['__member_info__'][$member_srl]))
{
$cache_key = sprintf('member:member_info:%d', $member_srl);
$GLOBALS['__member_info__'][$member_srl] = Rhymix\Framework\Cache::get($cache_key);
@ -385,7 +385,7 @@ class memberModel extends member
*/
public static function arrangeMemberInfo($info, $site_srl = 0)
{
if(!$GLOBALS['__member_info__'][$info->member_srl])
if(!isset($GLOBALS['__member_info__'][$info->member_srl]))
{
$config = self::getMemberConfig();
@ -530,13 +530,11 @@ class memberModel extends member
*/
public static function getMemberGroups($member_srl, $site_srl = 0, $force_reload = false)
{
static $member_groups = array();
// cache controll
$cache_key = sprintf('member:member_groups:%d:site:%d', $member_srl, $site_srl);
$group_list = Rhymix\Framework\Cache::get($cache_key);
if(!$member_groups[$member_srl][$site_srl] || $force_reload)
if(!isset($GLOBALS['__member_groups__'][$member_srl]) || $force_reload)
{
if(!$group_list)
{
@ -563,9 +561,9 @@ class memberModel extends member
{
$result[$group->group_srl] = $group->title;
}
$member_groups[$member_srl][$site_srl] = $result;
$GLOBALS['__member_groups__'][$member_srl] = $result;
}
return $member_groups[$member_srl][$site_srl];
return $GLOBALS['__member_groups__'][$member_srl];
}
/**
@ -637,7 +635,7 @@ class memberModel extends member
*/
public static function getGroups($site_srl = 0)
{
if(!$GLOBALS['__group_info__'][$site_srl])
if(!isset($GLOBALS['__group_info__'][$site_srl]))
{
$result = array();

View file

@ -255,6 +255,10 @@ class moduleModel extends module
Rhymix\Framework\Cache::set('site_and_module:module_srl:' . $mid, $module_info->module_srl, 0, true);
Rhymix\Framework\Cache::set('site_and_module:mid_info:' . $module_info->module_srl, $module_info, 0, true);
}
else
{
return;
}
}
self::_applyDefaultSkin($module_info);
@ -517,7 +521,10 @@ class moduleModel extends module
if(!$extra_vars[$val->module_srl] || !count(get_object_vars($extra_vars[$val->module_srl]))) continue;
foreach($extra_vars[$val->module_srl] as $k => $v)
{
if($target_module_info[$key]->{$k}) continue;
if(isset($target_module_info[$key]->{$k}) && $target_module_info[$key]->{$k})
{
continue;
}
$target_module_info[$key]->{$k} = $v;
}
}
@ -706,7 +713,7 @@ class moduleModel extends module
*/
public static function getTriggers($trigger_name, $called_position)
{
if(is_null($GLOBALS['__triggers__']))
if(!isset($GLOBALS['__triggers__']))
{
$triggers = Rhymix\Framework\Cache::get('triggers');
if($triggers === null)
@ -726,7 +733,7 @@ class moduleModel extends module
}
}
return $GLOBALS['__triggers__'][$trigger_name][$called_position];
return $GLOBALS['__triggers__'][$trigger_name][$called_position] ?? [];
}
/**
@ -893,7 +900,7 @@ class moduleModel extends module
$skinInfos = $info->skin_infos;
if(isset($skinInfos[$module]) && $skinInfos[$module]->is_theme)
{
$themeSkinInfo = $GLOBALS['__ThemeModuleSkin__'][$module]['skins'][$skinInfos[$module]->name];
$themeSkinInfo = $GLOBALS['__ThemeModuleSkin__'][$module]['skins'][$skinInfos[$module]->name] ?? null;
$skin_list[$skinInfos[$module]->name] = $themeSkinInfo;
}
}
@ -942,7 +949,7 @@ class moduleModel extends module
$skin_xml_file = sprintf("%s%s/%s/skin.xml", $path, $dir, $skin);
if(!file_exists($skin_xml_file)) return;
// Create XmlParser object
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$_xml_obj = $oXmlParser->loadXmlFile($skin_xml_file);
// Return if no skin information is
if(!$_xml_obj->skin) return;
@ -1871,10 +1878,13 @@ class moduleModel extends module
$module_info->module = $module_info->module_srl = 0;
}
$__cache = &$GLOBALS['__MODULE_GRANT__'][$module_info->module][intval($module_info->module_srl)][intval($member_info->member_srl)];
if (is_object($__cache) && !$xml_info)
if (isset($GLOBALS['__MODULE_GRANT__'][$module_info->module][intval($module_info->module_srl ?? 0)][intval($member_info->member_srl)]))
{
return $__cache;
$__cache = &$GLOBALS['__MODULE_GRANT__'][$module_info->module][intval($module_info->module_srl ?? 0)][intval($member_info->member_srl)];
if (is_object($__cache) && !$xml_info)
{
return $__cache;
}
}
$grant = new stdClass;

View file

@ -275,7 +275,7 @@ class widgetController extends widget
{
$buff = trim($matches[0]);
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$xml_doc = $oXmlParser->parse(trim($buff));
if($xml_doc->img) $vars = $xml_doc->img->attrs;
@ -294,7 +294,7 @@ class widgetController extends widget
function transWidgetBox($matches)
{
$buff = preg_replace('/<div><div>(.*)$/i','</div>',$matches[0]);
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$xml_doc = $oXmlParser->parse($buff);
$vars = $xml_doc->div->attrs;
@ -317,7 +317,7 @@ class widgetController extends widget
// Bringing widget cache sequence
preg_match_all('!<img([^\>]*)widget=([^\>]*?)\>!is', $content, $matches);
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$cnt = count($matches[1]);
for($i=0;$i<$cnt;$i++)

View file

@ -137,7 +137,7 @@ class widgetModel extends widget
return $widget_info;
}
// If no cache file exists, parse the xml and then return the variable.
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$tmp_xml_obj = $oXmlParser->loadXmlFile($xml_file);
$xml_obj = $tmp_xml_obj->widget;
if(!$xml_obj) return;
@ -207,6 +207,7 @@ class widgetModel extends widget
$extra_var_count = count($extra_vars);
$buff .= sprintf('$widget_info->extra_var_count = %d;', $extra_var_count);
$buff .= '$widget_info->extra_var = new stdClass;';
for($i=0;$i<$extra_var_count;$i++)
{
unset($var);
@ -279,7 +280,7 @@ class widgetModel extends widget
return $widgetStyle_info;
}
// If no cache file exists, parse the xml and then return the variable.
$oXmlParser = new XmlParser();
$oXmlParser = new XeXmlParser();
$tmp_xml_obj = $oXmlParser->loadXmlFile($xml_file);
$xml_obj = $tmp_xml_obj->widgetstyle;
if(!$xml_obj) return;