' : '').
'| '.(isset($items[$i]) ? $items[$i] : ' ').' | '.
(($i + 1) % $supe['items']['columns'] == 0 ? "
" : '');
}
return "\$_DCACHE['$cachename'] = '".$itemtable."';\n\n";
}
case 'supe_updatecircles':
global $supe;
supe_dbconnect();
if($supe['status'] && $supe['circlestatus']) {
$query = $supe['db']->query("SELECT gid, uid, username, groupname, logo, usernum, lastpost FROM {$supe[tablepre]}groups WHERE catid>0 AND flag=1 ORDER BY lastpost DESC LIMIT 8");
while($datarow = $supe['db']->fetch_array($query)) {
$datarow['groupname'] = cutstr($datarow['groupname'], 30);
$data[] = $datarow;
}
}
break;
default:
while($datarow = $db->fetch_array($query)) {
$data[] = $datarow;
}
}
return "\$_DCACHE['$cachename'] = ".arrayeval($data).";\n\n";
}
function getcachevars($data, $type = 'VAR') {
$evaluate = '';
foreach($data as $key => $val) {
if(is_array($val)) {
$evaluate .= "\$$key = ".arrayeval($val).";\n";
} else {
$val = addcslashes($val, '\'\\');
$evaluate .= $type == 'VAR' ? "\$$key = '$val';\n" : "define('".strtoupper($key)."', '$val');\n";
}
}
return $evaluate;
}
function advertisement($range) {
global $db, $tablepre, $timestamp;
$advs = array();
$query = $db->query("SELECT * FROM {$tablepre}advertisements WHERE available>'0' AND starttime<='$timestamp' ORDER BY displayorder");
if($db->num_rows($query)) {
while($adv = $db->fetch_array($query)) {
if(in_array($adv['type'], array('footerbanner', 'thread'))) {
$parameters = unserialize($adv['parameters']);
$position = isset($parameters['position']) && in_array($parameters['position'], array(2, 3)) ? $parameters['position'] : 1;
$type = $adv['type'].$position;
} else {
$type = $adv['type'];
}
$adv['targets'] = $adv['targets'] == '' ? 'all' : $adv['targets'];
foreach(explode("\t", $adv['targets']) as $target) {
$target = $target == '0' ? 'index' : (in_array($target, array('all', 'register', 'redirect', 'archiver')) ? $target : ($target == 'forum' ? 'forum_all' : 'forum_'.$target));
if((($range == 'forumdisplay' && !in_array($adv['type'], array('thread', 'interthread'))) || $range == 'viewthread') && substr($target, 0, 6) == 'forum_') {
if($adv['type'] == 'thread') {
foreach(isset($parameters['displayorder']) ? explode("\t", $parameters['displayorder']) : array('0') as $postcount) {
$advs[$type.'_'.$postcount][$target][] = $adv['code'];
}
} else {
$advs[$type][$target][] = $adv['code'];
}
} elseif($range == 'all' && in_array($target, array('all', 'redirect'))) {
$advs[$target][$type][] = $adv['code'];
} elseif($target == $range) {
$advs[$type][] = $adv['code'];
}
}
}
}
return $advs;
}
function pluginmodulecmp($a, $b) {
return $a['displayorder'] > $b['displayorder'] ? 1 : -1;
}
function smthumb($size, $smthumb = 50) {
if($size[0] <= $smthumb && $size[1] <= $smthumb) {
return array('w' => $size[0], 'h' => $size[1]);
}
$sm = array();
$x_ratio = $smthumb / $size[0];
$y_ratio = $smthumb / $size[1];
if(($x_ratio * $size[1]) < $smthumb) {
$sm['h'] = ceil($x_ratio * $size[1]);
$sm['w'] = $smthumb;
} else {
$sm['w'] = ceil($y_ratio * $size[0]);
$sm['h'] = $smthumb;
}
return $sm;
}
?>