Example #1
0
<?php

$new_achievements = array();
$all_achievements = $achievements->getAchievements() or array();
$achievement_completions = array();
$new_achievements = array();
if (!empty($all_achievements)) {
    foreach ($all_achievements as $achievement => $value) {
        $achievement_completions[] = $value['column'];
    }
    $achievement_completions = $achievements->getPlayerAchievementsCompletion($achievement_completions);
    $players_total = $achievement_completions['TOTAL_RECORDS'];
    foreach ($all_achievements as $achievement => $value) {
        $d = $players_total == 0 ? 0 : $achievement_completions[$value['column']] / $players_total;
        array_push($new_achievements, array('name' => $value['name'], 'desc' => $value['desc'], 'icon' => $value['icon'], 'tokens' => $value['tokens'], 'percent' => round($d * 100, 1) . "%", 'players_unlocked' => $achievement_completions[$value['column']]));
    }
    $new_achievements = ACLIB::ArrSort($new_achievements, 'players_unlocked');
}
$smarty->assign("all_achievements", $new_achievements);
Example #2
0
<?php

$content = ACLIB::GetContent();
$form_link = ACLIB::BuildUrl('', array(), 'sch');
if ($achievements->server_exists) {
    $url = array("home" => ACLIB::BuildUrl('', array(), 'hom'), "ldr" => ACLIB::BuildUrl('', array(), 'ldr'));
} else {
    $url = array("home" => "#z", "ldr" => "#z");
    echo "<script> window.location.hash = 'openServerSelection' </script>";
}
$template_dir = $smarty->getTemplateDir();
$all_ac = $achievements->getAchievements();
$ac_count = is_array($all_ac) && !empty($all_ac) ? count($all_ac) : 0;
$smarty->assignSingleVariable("Lang", $SmartyLang);
$smarty->assignMultipleVariables(array('page_title' => 'Achievements v2', 'server_exists' => $achievements->server_exists, 'server' => $achievements->server, 'server_name' => $achievements->server_name, 'total_achievements' => $ac_count, 'servers' => ACLIB::GetServers(), 'home_page_content' => $content != 'content_player' ? true : false, 'content_file' => $content, 'template_dir' => $template_dir[0], 'form_link' => $form_link, 'url' => $url, 'show_content' => $achievements->server_exists, 'search_value' => isset($_GET['searchinput']) ? $_GET['searchinput'] : "Name/Auth", 'root_path' => __ROOT__, 'relative_path' => "themes/{$current_theme}/", 'script_name' => $_SERVER['REQUEST_URI'], 'website_url' => $website_url));
?>
	
<script type="text/javascript">
	function search_navigate( obj )
	{
		var keyword = obj.value;
		var dst = "<?php 
echo $achievements->server;
?>
/search/" + keyword;
		window.location = dst;
	}
		
	function formHandler( obj )
	{
		var gid = document.getElementById( 'input_search' );
foreach ($player_achievements as $achievement => $value) {
    if (!isset($category_achievements[$value['cat']]['unlocked'])) {
        $category_achievements[$value['cat']] = array();
        $category_achievements[$value['cat']]['unlocked'] = 0;
        $category_achievements[$value['cat']]['total'] = 0;
    }
    if ($value['unlocked_date']) {
        $achievements_unlocked++;
        $category_achievements[$value['cat']]['unlocked']++;
    }
    $category_achievements[$value['cat']]['total']++;
    $achievements_total++;
}
$final_categories = array();
foreach ($all_categories as $category => $value) {
    $final_categories[$category]['url'] = ACLIB::BuildUrl('', array("cat_id" => $category, "plr" => $achievements->player_id), 'cat');
    $final_categories[$category]['name'] = $value;
    if (isset($category_achievements[$category]['total'])) {
        $final_categories[$category]['total_unlocks'] = $category_achievements[$category]['unlocked'];
        $final_categories[$category]['total_achievements'] = $category_achievements[$category]['total'];
        $final_categories[$category]['ratio'] = $category_achievements[$category]['total'] > 0 ? round($category_achievements[$category]['unlocked'] / $category_achievements[$category]['total'] * 100, 1) : 0.0;
    } else {
        $final_categories[$category]['total_achievements'] = 0;
        $final_categories[$category]['ratio'] = 0.0;
    }
}
$smarty->assign("achievements_total_url", $achievements_total_url);
$smarty->assign("achievements_unlocked", $achievements_unlocked);
$smarty->assign("achievements_total", $achievements_total);
$smarty->assign("achievements_ratio", $achievements_total > 0 ? round($achievements_unlocked / $achievements_total * 100, 1) : 0.0);
$smarty->assign("achievement_categories", $final_categories);
<?php

$top_players = $achievements->getTopPlayers();
if (!empty($top_players)) {
    $x = 0;
    foreach ($top_players as $player => $value) {
        $top_players[$player]['rank'] = $x + 1;
        $top_players[$player]['link'] = ACLIB::BuildUrl('', array('plr' => $value['plrid']), 'ovr');
        $x++;
    }
}
$smarty->assign("ladder_players", $top_players);
    $total_achievements++;
    $completed_achievements[$column]['showbar'] = false;
    $completed_achievements[$column]['locked'] = '';
    if ($locked) {
        $completed_achievements[$column]['locked'] = "locked";
        if ($value['value']) {
            $completed_achievements[$column]['showbar'] = true;
            $completed_achievements[$column]['completed'] = $achievements_plr_status[$column]['progress'];
            $completed_achievements[$column]['max'] = $value['max'];
            $completed_achievements[$column]['percent'] = $value['max'] > 0 ? round($achievements_plr_status[$column]['progress'] / $value['max'] * 100, 1) : 0.0;
        }
    } else {
        $achievements_unlocked++;
    }
    $completed_achievements[$column]['name'] = $value['name'];
    $completed_achievements[$column]['desc'] = $value['desc'];
    $completed_achievements[$column]['tokens'] = $value['tokens'];
    $completed_achievements[$column]['icon'] = $value['icon'];
    $completed_achievements[$column]['date'] = $locked ? "0" : date($format, $achievements_plr_status[$column]['unlocked_date']);
}
$completed_achievements = ACLIB::ArrSort($completed_achievements, "date");
foreach ($completed_achievements as $achievement => $value) {
    if ($value['date'] == "0") {
        $completed_achievements[$achievement]['date'] = $Lang['achievement_locked'];
    }
}
$smarty->assignSingleVariable("category_name", $category_name);
$smarty->assignSingleVariable("total_achievements", $total_achievements);
$smarty->assignSingleVariable("achievements_unlocked", $achievements_unlocked);
$smarty->assignSingleVariable("completion", $total_achievements > 0 ? round($achievements_unlocked / $total_achievements * 100, 1) : 0.0);
$smarty->assignSingleVariable("completed_achievements", $completed_achievements);
Example #6
0
<?php

/* Basic Achievements MVC model */
require_once __ROOT__ . "core/includes/class/mysql.class.php";
require_once __ROOT__ . "core/includes/smarty/Smarty.class.php";
$db = new MySQL(false, $sql_dbname, $sql_host, $sql_user, $sql_pass, $sql_charset, $sql_pcon);
$success = $db->Open();
if (!$success) {
    die("Couldn't establish database connection. Check your configuration file.");
}
$db->TimerStart();
require_once __ROOT__ . "core/includes/achievements/achievements.class.php";
$achievements = new Achievements();
require_once __ROOT__ . "core/includes/func/func.inc.php";
require_once __ROOT__ . "core/controllers/initialize.php";
$smarty = new Controller();
$smarty->setTemplateDir(__ROOT__ . "themes/{$current_theme}/");
require_once __ROOT__ . "/core/language/LanguageInit.inc.php";
require_once __ROOT__ . "core/controllers/main.ctr.php";
require_once __ROOT__ . "core/controllers/content_controllers/" . ACLIB::GetContent() . ".ctr.php";
$smarty->debugging = $smarty_debug;
$db->TimerStop();
if (isset($_GET['simplified'])) {
    $smarty->displayTemplate(__ROOT__ . "themes/{$current_theme}/templates/main_game.tpl");
} else {
    $smarty->displayTemplate(__ROOT__ . "themes/{$current_theme}/templates/main.tpl");
}
$menuitem[] = array("classes" => $ovr_classes, "url" => ACLIB::BuildUrl('', array('plr' => $achievements->player_id), 'ovr'), "name" => $overview);
$menuitem[] = array("classes" => $aac_classes, "url" => ACLIB::Buildurl('', array('plr' => $achievements->player_id), 'cat'), "name" => $all_ac);
$all_categories = $achievements->getAllCategories();
if (!empty($all_categories)) {
    $arr = "<span class='arr2'>&rsaquo;&nbsp;</span>";
    foreach ($all_categories as $category => $value) {
        $class = '';
        $show_arr = true;
        if (isset($_GET['cat_id']) && $_GET['cat_id'] == $category) {
            $class = "current";
            $show_arr = false;
        }
        $cat_name = $value;
        if ($show_arr) {
            $cat_name .= $arr;
        }
        $menuitem[] = array("classes" => $class, "url" => ACLIB::BuildUrl('', array('plr' => $achievements->player_id, 'cat_id' => $category), 'cat'), "name" => $cat_name);
    }
}
$tab_achievements_class = $__PAGE == 'sts' ? '' : 'tab-active';
$tab_statistics_class = $__PAGE == 'sts' ? 'tab-active' : '';
$tab_achievements_url = ACLIB::BuildUrl('', array('plr' => $achievements->player_id), 'ovr');
$tab_statistics_url = ACLIB::BuildUrl('', array('plr' => $achievements->player_id), 'sts');
$smarty->assign("player", $player);
$smarty->assign("menuitems", $menuitem);
$smarty->assign("tab_achievements_class", $tab_achievements_class);
$smarty->assign("tab_achievements_url", $tab_achievements_url);
$smarty->assign("tab_statistics_class", $tab_statistics_class);
$smarty->assign("tab_statistics_url", $tab_statistics_url);
$smarty->assign("page_file", $page_file);
require_once __ROOT__ . "core/controllers/page_controllers/" . $page_file . ".ctr.php";
<?php

$search_string = mysql_real_escape_string($_GET['searchinput']);
if (strlen($search_string) < 3) {
    $smarty->assign("too_short", 1);
} else {
    $smarty->assign("too_short", 0);
    $search_results = $achievements->searchForPlayers($search_string);
}
if (!empty($search_results)) {
    foreach ($search_results as $result => $value) {
        $search_results[$result]['url'] = ACLIB::BuildUrl('', array("plr" => $value['plrid']), 'ovr');
    }
} else {
    $search_results = array();
}
$smarty->assign("search_string", $search_string);
$smarty->assign("search_results", $search_results);
Example #9
0
<?php

$ConfigLang = LANGUAGE_PACKAGE;
$Lang = array();
$SmartyLang = array();
$content = ACLIB::GetContent();
$page = ACLIB::GetPage();
$dir = dirname(__FILE__);
$LangFiles = array("{$dir}/{$ConfigLang}/php/{$content}.lang.php", "{$dir}/{$ConfigLang}/php/{$page}.lang.php", "{$dir}/{$ConfigLang}/php/main.lang.php", "{$dir}/{$ConfigLang}/smarty/main.lang.php", "{$dir}/{$ConfigLang}/smarty/{$content}.lang.php", "{$dir}/{$ConfigLang}/smarty/{$page}.lang.php");
foreach ($LangFiles as $file) {
    if (file_exists($file)) {
        include $file;
    }
}