if (sys_get_param('save')) { $config->game_name = sys_get_param_str_raw('game_name'); $config->game_mode = sys_get_param_int('game_mode'); $config->game_speed = sys_get_param_float('game_speed', 1); $config->fleet_speed = sys_get_param_float('fleet_speed', 1); $config->resource_multiplier = sys_get_param_float('resource_multiplier', 1); $config->user_vacation_disable = sys_get_param_int('user_vacation_disable', 0); $config->url_faq = sys_get_param_str_raw('url_faq'); $config->url_forum = sys_get_param_str_raw('url_forum'); $config->url_rules = sys_get_param_str_raw('url_rules'); $config->url_dark_matter = sys_get_param_str_raw('url_dark_matter'); $config->game_disable = sys_get_param_int('game_disable'); $config->game_disable_reason = sys_get_param_str_raw('game_disable_reason'); $config->game_default_language = sys_get_param_str_raw('game_default_language', DEFAULT_LANG); $config->game_default_skin = sys_get_param_str_raw('game_default_skin', DEFAULT_SKINPATH); $config->game_default_template = sys_get_param_str_raw('game_default_template', TEMPLATE_NAME); $config->game_maxGalaxy = sys_get_param_int('game_maxGalaxy', 5); $config->game_maxSystem = sys_get_param_int('game_maxSystem', 199); $config->game_maxPlanet = sys_get_param_int('game_maxPlanet', 15); $config->player_max_colonies = sys_get_param_int('player_max_colonies', 9); $config->fleet_bashing_attacks = sys_get_param_int('fleet_bashing_attacks', 3); $config->fleet_bashing_interval = sys_get_param_int('fleet_bashing_interval', 30 * 60); $config->fleet_bashing_scope = sys_get_param_int('fleet_bashing_scope', 24 * 60 * 60); $config->fleet_bashing_war_delay = sys_get_param_int('fleet_bashing_war_delay', 12 * 60 * 60); $config->fleet_bashing_waves = sys_get_param_int('fleet_bashing_waves', 3); $config->allow_buffing = sys_get_param_int('allow_buffing'); $config->ally_help_weak = sys_get_param_int('ally_help_weak'); $config->game_email_pm = sys_get_param_int('game_email_pm'); $config->rpg_exchange_metal = sys_get_param_int('rpg_exchange_metal', 1); $config->rpg_exchange_crystal = sys_get_param_int('rpg_exchange_crystal', 2); $config->rpg_exchange_deuterium = sys_get_param_int('rpg_exchange_deuterium', 4);
if (!$text) { $error_list[] = array('TEXT' => $lang['msg_err_no_text'], 'CLASS' => 'error'); } if (empty($error_list)) { $error_list[] = array('TEXT' => $lang['msg_not_message_sent'], 'CLASS' => 'success'); $recipient_name = mysql_real_escape_string($recipient_name); msg_send_simple_message($recipient_id, $user['id'], $time_now, MSG_TYPE_PLAYER, "{$user['username']} [{$user['galaxy']}:{$user['system']}:{$user['planet']}]", $subject, $text, true); $recipient_id = 0; $recipient_name = ''; $subject = ''; $text = ''; $msg_sent = true; } else { $recipient_name = sys_get_param_str_raw('recipient_name'); $subject = sys_get_param_str_raw('subject'); $text = sys_get_param_str_raw('text'); } } $subject = $subject ? $subject : $lang['msg_subject_default']; $template->assign_vars(array('RECIPIENT_ID' => $recipient_id, 'RECIPIENT_NAME' => $recipient_name, 'SUBJECT' => $subject, 'TEXT' => $text)); foreach ($error_list as $error_message) { $template->assign_block_vars('messages', $error_message); } break; case 'delete': $query_add = ''; $message_range = sys_get_param_str('message_range'); switch ($message_range) { case 'unchecked': case 'checked': $marked_message_list = sys_get_param('mark', array());
function sys_get_param_str($param_name, $default = '') { return mysql_real_escape_string(sys_get_param_str_raw($param_name, $default)); }
} else { $user['vacation'] = $time_now; } // doquery("UPDATE {{users}} SET `vacation` = '{$user['vacation']}' WHERE `id` = '{$user['id']}' LIMIT 1;"); } foreach ($user_option_list as $option_group_id => $option_group) { foreach ($option_group as $option_name => $option_value) { if ($user[$option_name] !== null) { $user[$option_name] = sys_get_param_str($option_name); } else { $user[$option_name] = $option_value; } } } $options = sys_user_options_pack($user); $username = sys_get_param_str_raw('username'); if ($username && $user['username'] != $username && $config->game_user_changename) { $user['username'] = $username; $username = mysql_real_escape_string($username); // TODO: Change cookie to not force user relogin setcookie(COOKIE_NAME, '', time() - 100000, '/', '', 0); //le da el expire $template->assign_var('CHANGE_NAME', true); } else { $username = mysql_real_escape_string($user['username']); } $new_password = sys_get_param('newpass1'); if ($new_password) { try { if (md5(sys_get_param('db_password')) != $user['password']) { throw new Exception('', 1);
function qst_render_page() { global $sn_data, $lang, $user, $template, $config; $user_id = sys_get_param_int('user_id', false); $mode = sys_get_param_str('mode'); $quest_units_allowed = array_merge($sn_data['groups']['structures'], $sn_data['groups']['tech'], $sn_data['groups']['fleet'], $sn_data['groups']['defense']); $quest_reward_allowed =& $sn_data['groups']['quest_rewards']; $in_admin = defined('IN_ADMIN') && IN_ADMIN == true; if ($in_admin) { $quest_id = sys_get_param_int('id'); $quest_name = sys_get_param_str_raw('QUEST_NAME'); if (!empty($quest_name)) { $quest_description = sys_get_param_str_raw('QUEST_DESCRIPTION'); try { $quest_rewards_id = sys_get_param_int('QUEST_REWARDS_ID'); if (!in_array($quest_rewards_id, $quest_reward_allowed)) { throw new Exception($lang['qst_adm_err_reward_type']); } $quest_rewards_amount = sys_get_param_int('QUEST_REWARDS_AMOUNT'); if ($quest_rewards_amount <= 0) { throw new Exception($lang['qst_adm_err_reward_amount']); } $quest_rewards = "{$quest_rewards_id},{$quest_rewards_amount}"; $quest_unit_id = sys_get_param_int('QUEST_UNIT_ID'); if (!in_array($quest_unit_id, $quest_units_allowed)) { throw new Exception($lang['qst_adm_err_unit_id']); } $quest_unit_amount = sys_get_param_int('QUEST_UNIT_AMOUNT'); if ($quest_unit_amount <= 0) { throw new Exception($lang['qst_adm_err_unit_amount']); } $quest_conditions = "{$quest_unit_id},{$quest_unit_amount}"; // TODO: Change quest type $quest_type = 0; if ($mode == 'edit') { $quest_name = mysql_real_escape_string($quest_name); $quest_description = mysql_real_escape_string($quest_description); doquery("UPDATE {{quest}} SET\r\n `quest_name` = '{$quest_name}',\r\n `quest_type` = '{$quest_type}',\r\n `quest_description` = '{$quest_description}',\r\n `quest_conditions` = '{$quest_conditions}',\r\n `quest_rewards` = '{$quest_rewards}'\r\n WHERE `quest_id` = {$quest_id} LIMIT 1;"); } else { sn_db_perform('{{quest}}', array('quest_name' => $quest_name, 'quest_type' => $quest_type, 'quest_description' => $quest_description, 'quest_conditions' => $quest_conditions, 'quest_rewards' => $quest_rewards)); } // doquery("UPDATE {{users}} SET `news_lastread` = `news_lastread` + 1;"); // TODO: Add mass mail for new quests /* if(sys_get_param_int('news_mass_mail')) { msg_send_simple_message('*', 0, 0, MSG_TYPE_PLAYER, $lang['sys_administration'], $lang['news_title'], $text); } */ } catch (Exception $e) { message($e->getMessage(), $lang['sys_error']); } $mode = ''; } switch ($mode) { case 'del': doquery("DELETE FROM {{quest}} WHERE `quest_id` = {$quest_id} LIMIT 1;"); $mode = ''; break; case 'edit': $template->assign_var('QUEST_ID', $quest_id); case 'copy': $quest = doquery("SELECT * FROM {{quest}} WHERE `quest_id` = {$quest_id} LIMIT 1;", '', true); break; } $query = doquery("SELECT count(*) AS count FROM {{quest}};", '', true); $config->db_saveItem('quest_total', $query['count']); } elseif (!$user_id) { $user_id = $user['id']; } $quest_list = qst_get_quests($user_id); $templatized = array('AUTHLEVEL' => $user['authlevel'], 'TOTAL' => count($quest_list), 'mode' => $mode, 'USER_ID' => $user_id, 'IN_ADMIN' => $in_admin); if ($quest) { $templatized = array_merge(qst_templatize(qst_quest_parse($quest), false), $templatized); } $template->assign_vars($templatized); foreach ($quest_list as $quest) { $template->assign_block_vars('quest', qst_templatize($quest, true)); } foreach ($quest_units_allowed as $unit_id) { $template->assign_block_vars('allowed_unit', array('ID' => $unit_id, 'NAME' => $lang['tech'][$unit_id])); } foreach ($quest_reward_allowed as $unit_id) { $template->assign_block_vars('allowed_reward', array('ID' => $unit_id, 'NAME' => $lang['tech'][$unit_id])); } }