Beispiel #1
0
function atCommandBuild2($name, $commands, $prefix = "")
{
    if (!$prefix) {
        $prefix = strtolower(atGetModName());
    }
    ${$name} = $commands;
    $commands = compact("{$name}");
    atRunningSetVar($prefix, $commands);
    foreach ($commands as $key => $val) {
        foreach ($val as $num => $cmd) {
            foreach ($cmd as $cname => $action) {
                atCommandAdd("{$prefix}:{$key}:{$cname}", 'echo $' . $prefix . '["' . $key . '"][$i]["' . $cname . '"];');
            }
        }
    }
}
function at_transitionpages($transitionpages)
{
    atCommandAdd("page-url", 'echo $_SERVER["REQUEST_URI"];');
    $runningconfig = atGetRunningConfig();
    extract($runningconfig);
    if (is_array($transitionpages)) {
        if ($transitionpages[$modtemplate][$modops]) {
            $vars = $transitionpages[$modtemplate][$modops];
        } else {
            $vars = array_merge((array) $transitionpages['default'], (array) $transitionpages[$modtemplate][$modops]);
        }
        extract($vars);
    } else {
        return;
    }
    session_start();
    $module = atGetModName();
    if (!isset($_SESSION[$module . '_entered'])) {
        $_SESSION[$module . '_entered'] = 1;
    } else {
        $_SESSION[$module . '_entered']++;
    }
    if ($visits == 0 || $visits == 1 || $_SESSION[$module . '_entered'] % $visits) {
        return;
    }
    switch ($type) {
        case "admin":
            if (!atIsAdminUser()) {
                return;
            }
            break;
        case "anonymous":
            if (atIsLoggedin()) {
                return;
            }
            break;
        case "loggedin":
            if (!atIsLoggedin()) {
                return;
            }
            break;
    }
    if ($rotate) {
        $c = $_SESSION[$module . '_count'];
        $template = $template[$c];
        if (!isset($_SESSION[$module . '_count']) || $_SESSION[$module . '_count'] > count($template) - 1) {
            $_SESSION[$module . '_count'] = 0;
        } else {
            $_SESSION[$module . '_count']++;
        }
    } else {
        $template = $template[0];
    }
    if (!$template) {
        $template = "transitionpages.html";
    }
    if (@file_exists($themepath . $template)) {
        $file = $themepath . $template;
    } elseif (@file_exists($atdir . "templates/{$template}")) {
        $file = $atdir . "templates/{$template}";
    } else {
        return;
    }
    $HTML = atTemplatePrep($file, 1);
    $output = atCommandReplace($HTML, $command);
    atTemplateDisplay($output);
    atThemeExit();
}