if (is_logged()) { $smarty->assign('is_openid', is_user_openid($_SESSION['user_id']) ? 1 : 0); } $smarty->assign('user_permission_dict', user_has_permission(PERM_DICT) ? 1 : 0); $smarty->assign('user_permission_disamb', user_has_permission(PERM_DISAMB) ? 1 : 0); $smarty->assign('user_permission_adder', user_has_permission(PERM_ADDER) ? 1 : 0); $smarty->assign('user_permission_check_tokens', user_has_permission(PERM_CHECK_TOKENS) ? 1 : 0); $smarty->assign('user_permission_check_morph', user_has_permission(PERM_MORPH_MODER) ? 1 : 0); $smarty->assign('user_permission_merge', user_has_permission(PERM_MORPH_SUPERMODER) ? 1 : 0); $smarty->assign('user_permission_syntax', user_has_permission(PERM_SYNTAX) ? 1 : 0); $smarty->assign('user_permission_check_syntax', user_has_permission(PERM_SYNTAX_MODER) ? 1 : 0); $smarty->assign('readonly', file_exists($config['project']['readonly_flag']) ? 1 : 0); $smarty->assign('goals', $config['goals']); $smarty->assign('game_is_on', 0); //$smarty->configLoad(__DIR__.'/../templates/achievements/titles.conf', NULL); // smarty->configLoad is a piece of shit which can not handle multiple sections at once. // reverting to something much simplier. $titles = json_decode(file_get_contents(__DIR__ . '/../templates/achievements/titles.json'), TRUE); $smarty->assign('achievements_titles', $titles); if (is_logged()) { if (game_is_on()) { $smarty->assign('game_is_on', 1); $am = new AchievementsManager($_SESSION['user_id']); $smarty->assign('achievements', $a = $am->pull_all()); $smarty->assign('achievements_unseen', array_filter($a, function ($e) { return !$e->seen; })); } } // alert messages $smarty->assign('alerts', alert_getall());