Esempio n. 1
0
function player_getContent($caveID, $playerID)
{
    global $db, $no_resource_flag, $config, $params;
    $no_resource_flag = 1;
    if (!($r = $db->query("SELECT * FROM Player WHERE playerID = '{$playerID}'"))) {
        page_dberror();
    }
    if (!($row = $r->nextRow(MYSQL_ASSOC))) {
        page_dberror();
    }
    $template = tmpl_open($params->SESSION->player->getTemplatePath() . 'playerDetail.ihtml');
    if ($row['avatar']) {
        // FIXME: should be configurable
        tmpl_set($template, 'DETAILS/AVATAR_IMG/avatar', $row['avatar']);
        tmpl_set($template, 'DETAILS/AVATAR_IMG/width', 120);
        tmpl_set($template, 'DETAILS/AVATAR_IMG/height', 120);
    }
    if (!empty($row['awards'])) {
        $tmp = explode('|', $row['awards']);
        $awards = array();
        foreach ($tmp as $tag) {
            $awards[] = array('tag' => $tag, 'award_modus' => AWARD_DETAIL);
        }
        $row['award'] = $awards;
    }
    unset($row['awards']);
    foreach ($row as $k => $v) {
        if (!$v) {
            $row[$k] = _('k.A.');
        }
    }
    $row['mail_modus'] = NEW_MESSAGE;
    $row['mail_receiver'] = urlencode($row['name']);
    $row['caveID'] = $caveID;
    $timediff = getUgaAggaTimeDiff(time_fromDatetime($row['created']), time());
    $row['age'] = 18 + $timediff['year'];
    tmpl_set($template, 'DETAILS', $row);
    // ADDED by chris--- for rank_history
    $row['playerID'] = $playerID;
    // show player's caves
    $caves = getCaves($playerID);
    if ($caves) {
        tmpl_set($template, '/DETAILS/CAVES', $caves);
    }
    //show bodycount
    // Keinen Bodycount fuers erste.... Nebrot
    //$body_count = $row['body_count'];
    //tmpl_set($template, '/DETAILS/BODYCOUNT/body_count', $body_count);
    // show player's history
    $history = Player::getHistory($db, $playerID);
    if (sizeof($history)) {
        tmpl_set($template, '/DETAILS/HISTORY/ENTRY', $history);
    } else {
        tmpl_set($template, '/DETAILS/HISTORY/NOENTRIES/iterate', '');
    }
    return tmpl_parse($template);
}
Esempio n. 2
0
function player_getContent($caveID, $playerID)
{
    global $db, $template;
    // open template
    $template->setFile('playerDetail.tmpl');
    $template->setShowResource(false);
    // workaround, if no playerID is submitted! TODO
    if ($playerID == 0) {
        $playerID = $_SESSION['player']->playerID;
    }
    $playerDetails = Player::getPlayer($playerID, true);
    if (!$playerDetails) {
        $template->throwError('Da wollte irgendwie was nicht aus der Datenbank ausgelesen werden :(');
        return;
    }
    if ($playerDetails['avatar']) {
        $playerDetails['avatar'] = @unserialize($playerDetails['avatar']);
        $template->addVars(array('player_avatar' => $playerDetails['avatar']['path'], 'player_avatar_width' => $playerDetails['avatar']['width'], 'player_avatar_height' => $playerDetails['avatar']['height']));
    }
    if (!empty($playerDetails['awards'])) {
        $tmp = explode('|', $playerDetails['awards']);
        $awards = array();
        foreach ($tmp as $tag) {
            $awards[] = $tag;
        }
        $playerDetails['award'] = $awards;
    }
    unset($playerDetails['awards']);
    foreach ($playerDetails as $k => $v) {
        if (!$v) {
            $playerDetails[$k] = _('k.A.');
        }
    }
    $playerDetails['mail_receiver'] = urlencode($playerDetails['name']);
    $playerDetails['caveID'] = $caveID;
    $playerTribe = $playerDetails['tribe'];
    $timediff = getUgaAggaTimeDiff(time_fromDatetime($playerDetails['created']), time());
    $playerDetails['age'] = 18 + $timediff['year'];
    // init messages class
    $parser = new parser();
    $playerDetails['description'] = $parser->p($playerDetails['description']);
    // show player's caves
    $caves = getCaves($playerID);
    if ($caves) {
        $template->addVar('player_caves', $caves);
    }
    // show player's history
    $history = Player::getHistory($playerID);
    if (sizeof($history)) {
        $template->addVar('player_history', $history);
    }
    //get player rank
    $sql = $db->prepare("SELECT rank FROM " . RANKING_TABLE . " WHERE playerID = :playerID");
    $sql->bindValue('playerID', $playerID, pDo::PARAM_INT);
    if (!$sql->execute()) {
        page_dberror();
    }
    if ($row = $sql->fetch()) {
        $playerDetails['rank'] = $row['rank'];
    } else {
        $playerDetails['rank'] = '';
    }
    $template->addVars(array('player_details' => $playerDetails));
}