mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-05 17:51:40 +09:00
XE 1.7 이하 버전에서 테이블 스키마 조정, 인덱스 추가, 임시파일 처리 등을 위해 만들어 놓은 업데이트 스크립트를 대부분 제거하여 처리 효율을 향상시킵니다. 이 중 대부분은 XE 개발 초창기(1.2 이전) 스키마 변경이 빈번하던 시절에 하위호환성을 위해 추가된 것으로, 이미 10년 이상 불필요한 상태였습니다. 단, 앞으로는 XE 1.8 미만 버전에서 라이믹스로 업데이트하기 어려워질 수 있습니다. XE 1.8 미만 버전을 사용하는 사이트에서는 먼저 XE 최신 버전으로 업데이트한 후 라이믹스를 덮어씌우는 방식으로 진행하여야 합니다.
83 lines
1.8 KiB
PHP
83 lines
1.8 KiB
PHP
<?php
|
|
/* Copyright (C) NAVER <http://www.navercorp.com> */
|
|
/**
|
|
* @class session
|
|
* @author NAVER (developers@xpressengine.com)
|
|
* @brief session module's high class
|
|
* @version 0.1
|
|
*
|
|
* The session management class
|
|
*/
|
|
class session extends ModuleObject
|
|
{
|
|
var $lifetime = 18000;
|
|
var $session_started = false;
|
|
|
|
function __construct()
|
|
{
|
|
if(Context::isInstalled()) $this->session_started= true;
|
|
parent::__construct();
|
|
}
|
|
|
|
/**
|
|
* @brief Additional tasks required to accomplish during the installation
|
|
*/
|
|
function moduleInstall()
|
|
{
|
|
$oDB = &DB::getInstance();
|
|
$oDB->addIndex("session","idx_session_update_mid", array("member_srl","last_update","cur_mid"));
|
|
}
|
|
|
|
/**
|
|
* @brief A method to check if the installation has been successful
|
|
*/
|
|
function checkUpdate()
|
|
{
|
|
$oDB = DB::getInstance();
|
|
if(!$oDB->isIndexExists("session","idx_session_update_mid")) return true;
|
|
return false;
|
|
}
|
|
|
|
/**
|
|
* @brief Execute update
|
|
*/
|
|
function moduleUpdate()
|
|
{
|
|
$oDB = &DB::getInstance();
|
|
if(!$oDB->isIndexExists("session","idx_session_update_mid"))
|
|
{
|
|
$oDB->addIndex("session","idx_session_update_mid", array("member_srl","last_update","cur_mid"));
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @brief session string decode
|
|
*/
|
|
function unSerializeSession($val)
|
|
{
|
|
$vars = preg_split('/([a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff^|]*)\|/', $val,-1,PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
|
|
for($i=0; $vars[$i]; $i++) $result[$vars[$i++]] = unserialize($vars[$i]);
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* @brief session string encode
|
|
*/
|
|
function serializeSession($data)
|
|
{
|
|
if(!count($data)) return;
|
|
|
|
$str = '';
|
|
foreach($data as $key => $val) $str .= $key.'|'.serialize($val);
|
|
return substr($str, 0, strlen($str)-1).'}';
|
|
}
|
|
|
|
/**
|
|
* @brief Re-generate the cache file
|
|
*/
|
|
function recompileCache()
|
|
{
|
|
}
|
|
}
|
|
/* End of file session.class.php */
|
|
/* Location: ./modules/session/session.class.php */
|