issue 2119. supporting php 5.4.

git-svn-id: http://xe-core.googlecode.com/svn/branches/maserati@12682 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
flyskyko 2013-02-04 08:30:39 +00:00
parent 005768c71e
commit 669c9a5948
14 changed files with 768 additions and 492 deletions

View file

@ -1,57 +1,77 @@
<?php
/**
* @brief Function to change point icon.
*/
function pointLevelIconTrans($matches)
{
$member_srl = $matches[3];
if($member_srl<1) return $matches[0];
if($member_srl < 1)
{
return $matches[0];
}
$orig_text = preg_replace('/'.preg_quote($matches[5],'/').'<\/'.$matches[6].'>$/', '', $matches[0]);
$orig_text = preg_replace('/' . preg_quote($matches[5], '/') . '<\/' . $matches[6] . '>$/', '', $matches[0]);
// Check Group Image Mark
$oMemberModel = &getModel('member');
if($oMemberModel->getGroupImageMark($member_srl)) return $orig_text.$matches[5].'</'.$matches[6].'>';
$oMemberModel = getModel('member');
if($oMemberModel->getGroupImageMark($member_srl))
{
return $orig_text . $matches[5] . '</' . $matches[6] . '>';
}
if(!isset($GLOBALS['_pointLevelIcon'][$member_srl]))
{
// Get point configuration
if(!$GLOBALS['_pointConfig'])
{
$oModuleModel = &getModel('module');
$oModuleModel = getModel('module');
$GLOBALS['_pointConfig'] = $oModuleModel->getModuleConfig('point');
}
$config = $GLOBALS['_pointConfig'];
// Get point model
if(!$GLOBALS['_pointModel']) $GLOBALS['_pointModel'] = getModel('point');
if(!$GLOBALS['_pointModel'])
{
$GLOBALS['_pointModel'] = getModel('point');
}
$oPointModel = &$GLOBALS['_pointModel'];
// Get points
if(!$oPointModel->isExistsPoint($member_srl)) return $matches[0];
if(!$oPointModel->isExistsPoint($member_srl))
{
return $matches[0];
}
$point = $oPointModel->getPoint($member_srl);
// Get level
$level = $oPointModel->getLevel($point, $config->level_step);
$text = $matches[5];
// Get a path where level icon is
$level_icon = sprintf('%smodules/point/icons/%s/%d.gif', Context::getRequestUri(), $config->level_icon, $level);
// Get per to go to the next level if not a top level
if($level < $config->max_level)
{
$next_point = $config->level_step[$level+1];
$next_point = $config->level_step[$level + 1];
$present_point = $config->level_step[$level];
if($next_point > 0) {
$per = (int)(($point - $present_point) / ($next_point - $present_point)*100);
$per = $per.'%';
if($next_point > 0)
{
$per = (int) (($point - $present_point) / ($next_point - $present_point) * 100);
$per = $per . '%';
}
}
$title = sprintf('%s:%s%s%s, %s:%s/%s', Context::getLang('point'), $point, $config->point_name, $per?' ('.$per.')':'', Context::getLang('level'), $level, $config->max_level);
$title = sprintf('%s:%s%s%s, %s:%s/%s', Context::getLang('point'), $point, $config->point_name, $per ? ' (' . $per . ')' : '', Context::getLang('level'), $level, $config->max_level);
$alt = sprintf('[%s:%s]', Context::getLang('level'), $level);
$GLOBALS['_pointLevelIcon'][$member_srl] = sprintf('<img src="%s" alt="%s" title="%s" style="vertical-align:middle; margin-right:3px;" />', $level_icon, $alt, $title);
}
$text = $GLOBALS['_pointLevelIcon'][$member_srl];
return $orig_text.$text.$matches[5].'</'.$matches[6].'>';
return $orig_text . $text . $matches[5] . '</' . $matches[6] . '>';
}
/* End of file point_level_icon.lib.php */