@@ -7,16 +7,16 @@ discard block |
||
| 7 | 7 | global $config; |
| 8 | 8 | |
| 9 | 9 | $mercenary_info = get_unit_param($mercenary_id); |
| 10 | - if($config->empire_mercenary_temporary || $mercenary_info[P_UNIT_TYPE] == UNIT_PLANS) |
|
| 10 | + if ($config->empire_mercenary_temporary || $mercenary_info[P_UNIT_TYPE] == UNIT_PLANS) |
|
| 11 | 11 | { |
| 12 | 12 | return true; |
| 13 | 13 | } |
| 14 | 14 | |
| 15 | - if(isset($mercenary_info[P_REQUIRE])) |
|
| 15 | + if (isset($mercenary_info[P_REQUIRE])) |
|
| 16 | 16 | { |
| 17 | - foreach($mercenary_info[P_REQUIRE] as $unit_id => $unit_level) |
|
| 17 | + foreach ($mercenary_info[P_REQUIRE] as $unit_id => $unit_level) |
|
| 18 | 18 | { |
| 19 | - if(mrc_get_level($user, null, $unit_id) < $unit_level) |
|
| 19 | + if (mrc_get_level($user, null, $unit_id) < $unit_level) |
|
| 20 | 20 | { |
| 21 | 21 | return false; |
| 22 | 22 | } |
@@ -33,35 +33,35 @@ discard block |
||
| 33 | 33 | $is_permanent = $mode == UNIT_PLANS || !$config->empire_mercenary_temporary; |
| 34 | 34 | $cost_alliance_multiplyer = (SN_IN_ALLY === true && $mode == UNIT_PLANS ? $config->ali_bonus_members : 1); |
| 35 | 35 | $cost_alliance_multiplyer = $cost_alliance_multiplyer >= 1 ? $cost_alliance_multiplyer : 1; |
| 36 | - if(!in_array($mercenary_id, sn_get_groups($mode == UNIT_PLANS ? 'plans' : 'mercenaries'))) { |
|
| 36 | + if (!in_array($mercenary_id, sn_get_groups($mode == UNIT_PLANS ? 'plans' : 'mercenaries'))) { |
|
| 37 | 37 | throw new Exception($lang['mrc_msg_error_wrong_mercenary'], ERR_ERROR); |
| 38 | 38 | } |
| 39 | 39 | |
| 40 | - if(!mrc_officer_accessible($user, $mercenary_id)) { |
|
| 40 | + if (!mrc_officer_accessible($user, $mercenary_id)) { |
|
| 41 | 41 | throw new Exception($lang['mrc_msg_error_requirements'], ERR_ERROR); |
| 42 | 42 | } |
| 43 | 43 | |
| 44 | 44 | $mercenary_level = sys_get_param_int('mercenary_level'); |
| 45 | - if($mercenary_level < 0 || $mercenary_level > get_unit_param($mercenary_id, P_MAX_STACK)) { |
|
| 45 | + if ($mercenary_level < 0 || $mercenary_level > get_unit_param($mercenary_id, P_MAX_STACK)) { |
|
| 46 | 46 | throw new Exception($lang['mrc_msg_error_wrong_level'], ERR_ERROR); |
| 47 | 47 | } |
| 48 | 48 | |
| 49 | - if($mercenary_level && !array_key_exists($mercenary_period = sys_get_param_int('mercenary_period'), $sn_powerup_buy_discounts)) { |
|
| 49 | + if ($mercenary_level && !array_key_exists($mercenary_period = sys_get_param_int('mercenary_period'), $sn_powerup_buy_discounts)) { |
|
| 50 | 50 | throw new Exception($lang['mrc_msg_error_wrong_period'], ERR_ERROR); |
| 51 | 51 | } |
| 52 | 52 | |
| 53 | 53 | sn_db_transaction_start(); |
| 54 | 54 | |
| 55 | 55 | $mercenary_level_old = mrc_get_level($user, $planetrow, $mercenary_id, true, true); |
| 56 | - if($config->empire_mercenary_temporary && $mercenary_level_old && $mercenary_level) { |
|
| 56 | + if ($config->empire_mercenary_temporary && $mercenary_level_old && $mercenary_level) { |
|
| 57 | 57 | throw new Exception($lang['mrc_msg_error_already_hired'], ERR_ERROR); // Can't hire already hired temp mercenary - dismiss first |
| 58 | - } elseif($config->empire_mercenary_temporary && !$mercenary_level_old && !$mercenary_level) { |
|
| 58 | + } elseif ($config->empire_mercenary_temporary && !$mercenary_level_old && !$mercenary_level) { |
|
| 59 | 59 | throw new Exception('', ERR_NONE); // Can't dismiss (!$mercenary_level) not hired (!$mercenary_level_old) temp mercenary. But no error |
| 60 | 60 | } |
| 61 | 61 | |
| 62 | - if($mercenary_level) { |
|
| 62 | + if ($mercenary_level) { |
|
| 63 | 63 | $darkmater_cost = eco_get_total_cost($mercenary_id, $mercenary_level); |
| 64 | - if(!$config->empire_mercenary_temporary && $mercenary_level_old) { |
|
| 64 | + if (!$config->empire_mercenary_temporary && $mercenary_level_old) { |
|
| 65 | 65 | $darkmater_cost_old = eco_get_total_cost($mercenary_id, $mercenary_level_old); |
| 66 | 66 | $darkmater_cost[BUILD_CREATE][RES_DARK_MATTER] -= $darkmater_cost_old[BUILD_CREATE][RES_DARK_MATTER]; |
| 67 | 67 | } |
@@ -71,13 +71,13 @@ discard block |
||
| 71 | 71 | } |
| 72 | 72 | $darkmater_cost *= $cost_alliance_multiplyer; |
| 73 | 73 | |
| 74 | - if(mrc_get_level($user, null, RES_DARK_MATTER) < $darkmater_cost) { |
|
| 74 | + if (mrc_get_level($user, null, RES_DARK_MATTER) < $darkmater_cost) { |
|
| 75 | 75 | throw new Exception($lang['mrc_msg_error_no_resource'], ERR_ERROR); |
| 76 | 76 | } |
| 77 | 77 | |
| 78 | - if(($darkmater_cost && $mercenary_level) || !$is_permanent) { |
|
| 78 | + if (($darkmater_cost && $mercenary_level) || !$is_permanent) { |
|
| 79 | 79 | $unit_row = db_unit_by_location($user['id'], LOC_USER, $user['id'], $mercenary_id); |
| 80 | - if(is_array($unit_row) && ($dismiss_left_days = floor((strtotime($unit_row['unit_time_finish']) - SN_TIME_NOW) / PERIOD_DAY))) { |
|
| 80 | + if (is_array($unit_row) && ($dismiss_left_days = floor((strtotime($unit_row['unit_time_finish']) - SN_TIME_NOW) / PERIOD_DAY))) { |
|
| 81 | 81 | $dismiss_full_cost = eco_get_total_cost($mercenary_id, $unit_row['unit_level']); |
| 82 | 82 | $dismiss_full_cost = $dismiss_full_cost[BUILD_CREATE][RES_DARK_MATTER]; |
| 83 | 83 | |
@@ -95,7 +95,7 @@ discard block |
||
| 95 | 95 | db_unit_list_delete($user['id'], LOC_USER, $user['id'], $mercenary_id); |
| 96 | 96 | } |
| 97 | 97 | |
| 98 | - if($darkmater_cost && $mercenary_level) { |
|
| 98 | + if ($darkmater_cost && $mercenary_level) { |
|
| 99 | 99 | db_unit_set_insert( |
| 100 | 100 | "unit_player_id = {$user['id']}, |
| 101 | 101 | unit_location_type = " . LOC_USER . ", |
@@ -130,7 +130,7 @@ discard block |
||
| 130 | 130 | $mode = in_array($mode, array(UNIT_MERCENARIES, UNIT_PLANS)) ? $mode : UNIT_MERCENARIES; |
| 131 | 131 | $is_permanent = $mode == UNIT_PLANS || !$config->empire_mercenary_temporary; |
| 132 | 132 | |
| 133 | - if($mercenary_id = sys_get_param_int('mercenary_id')) |
|
| 133 | + if ($mercenary_id = sys_get_param_int('mercenary_id')) |
|
| 134 | 134 | { |
| 135 | 135 | $operation_result = mrc_mercenary_hire($mode, $user, $mercenary_id); |
| 136 | 136 | } |
@@ -139,12 +139,12 @@ discard block |
||
| 139 | 139 | |
| 140 | 140 | $template = gettemplate('mrc_mercenary_hire', true); |
| 141 | 141 | |
| 142 | - if(!empty($operation_result)) |
|
| 142 | + if (!empty($operation_result)) |
|
| 143 | 143 | { |
| 144 | 144 | $template->assign_block_vars('result', $operation_result); |
| 145 | 145 | } |
| 146 | 146 | |
| 147 | - foreach($sn_powerup_buy_discounts as $hire_period => $hire_discount) |
|
| 147 | + foreach ($sn_powerup_buy_discounts as $hire_period => $hire_discount) |
|
| 148 | 148 | { |
| 149 | 149 | $template->assign_block_vars('period', array( |
| 150 | 150 | 'LENGTH' => $hire_period, |
@@ -157,13 +157,13 @@ discard block |
||
| 157 | 157 | $user_dark_matter = mrc_get_level($user, '', RES_DARK_MATTER); |
| 158 | 158 | $cost_alliance_multiplyer = (SN_IN_ALLY === true && $mode == UNIT_PLANS ? $config->ali_bonus_members : 1); |
| 159 | 159 | $cost_alliance_multiplyer = $cost_alliance_multiplyer >= 1 ? $cost_alliance_multiplyer : 1; |
| 160 | - foreach(sn_get_groups($mode == UNIT_PLANS ? 'plans' : 'mercenaries') as $mercenary_id) |
|
| 160 | + foreach (sn_get_groups($mode == UNIT_PLANS ? 'plans' : 'mercenaries') as $mercenary_id) |
|
| 161 | 161 | { |
| 162 | 162 | { |
| 163 | 163 | $mercenary = get_unit_param($mercenary_id); |
| 164 | 164 | $mercenary_bonus = $mercenary['bonus']; |
| 165 | 165 | $mercenary_bonus = $mercenary_bonus >= 0 ? "+{$mercenary_bonus}" : "{$mercenary_bonus}"; |
| 166 | - switch($mercenary['bonus_type']) |
|
| 166 | + switch ($mercenary['bonus_type']) |
|
| 167 | 167 | { |
| 168 | 168 | case BONUS_PERCENT: |
| 169 | 169 | $mercenary_bonus = "{$mercenary_bonus}% "; |
@@ -181,7 +181,7 @@ discard block |
||
| 181 | 181 | $mercenary_level = mrc_get_level($user, null, $mercenary_id, false, true); |
| 182 | 182 | $mercenary_level_bonus = max(0, mrc_get_level($user, null, $mercenary_id) - $mercenary_level); |
| 183 | 183 | $total_cost_old = 0; |
| 184 | - if($is_permanent) |
|
| 184 | + if ($is_permanent) |
|
| 185 | 185 | { |
| 186 | 186 | $total_cost_old = eco_get_total_cost($mercenary_id, $mercenary_level); |
| 187 | 187 | $total_cost_old = $total_cost_old[BUILD_CREATE][RES_DARK_MATTER] * $cost_alliance_multiplyer; |
@@ -205,13 +205,13 @@ discard block |
||
| 205 | 205 | 'BONUS_TYPE' => $mercenary['bonus_type'], |
| 206 | 206 | 'HIRE_END' => $mercenary_time_finish && $mercenary_time_finish >= SN_TIME_NOW ? date(FMT_DATE_TIME, $mercenary_time_finish) : '', |
| 207 | 207 | 'HIRE_LEFT_PERCENT' => $mercenary_time_finish && $mercenary_time_finish >= SN_TIME_NOW |
| 208 | - ? round(($mercenary_time_finish - SN_TIME_NOW)/($mercenary_time_finish - $mercenary_time_start) * 100, 1) |
|
| 208 | + ? round(($mercenary_time_finish - SN_TIME_NOW) / ($mercenary_time_finish - $mercenary_time_start) * 100, 1) |
|
| 209 | 209 | : 0, |
| 210 | 210 | 'CAN_BUY' => mrc_officer_accessible($user, $mercenary_id), |
| 211 | 211 | )); |
| 212 | 212 | |
| 213 | 213 | $upgrade_cost = 1; |
| 214 | - for($i = $config->empire_mercenary_temporary ? 1 : $mercenary_level + 1; $mercenary['max'] ? ($i <= $mercenary['max']) : $upgrade_cost <= $user_dark_matter; $i++) |
|
| 214 | + for ($i = $config->empire_mercenary_temporary ? 1 : $mercenary_level + 1; $mercenary['max'] ? ($i <= $mercenary['max']) : $upgrade_cost <= $user_dark_matter; $i++) |
|
| 215 | 215 | { |
| 216 | 216 | $total_cost = eco_get_total_cost($mercenary_id, $i); |
| 217 | 217 | $total_cost[BUILD_CREATE][RES_DARK_MATTER] *= $cost_alliance_multiplyer; |
@@ -18,10 +18,10 @@ discard block |
||
| 18 | 18 | function sn_eco_build($que_type, &$auser, &$planet) { |
| 19 | 19 | global $lang, $config, $template_result; |
| 20 | 20 | |
| 21 | - if($ally_id = sys_get_param_id('ally_id')) { |
|
| 21 | + if ($ally_id = sys_get_param_id('ally_id')) { |
|
| 22 | 22 | define('SN_IN_ALLY', true); |
| 23 | 23 | $ranks = ally_get_ranks($auser['ally']); |
| 24 | - if($ranks[$auser['ally_rank_id']]['admin'] || $auser['ally']['ally_owner'] == $auser['id']) { |
|
| 24 | + if ($ranks[$auser['ally_rank_id']]['admin'] || $auser['ally']['ally_owner'] == $auser['id']) { |
|
| 25 | 25 | $user = &$auser['ally']['player']; |
| 26 | 26 | $planet = array( |
| 27 | 27 | 'metal' => $user['metal'], |
@@ -31,11 +31,11 @@ discard block |
||
| 31 | 31 | } |
| 32 | 32 | } |
| 33 | 33 | |
| 34 | - if(!$user) { |
|
| 34 | + if (!$user) { |
|
| 35 | 35 | $user = &$auser; |
| 36 | 36 | } |
| 37 | 37 | |
| 38 | - switch($action = sys_get_param_escaped('action')) { |
|
| 38 | + switch ($action = sys_get_param_escaped('action')) { |
|
| 39 | 39 | case 'create': // Add unit to que for build |
| 40 | 40 | case 'create_autoconvert': // Add unit to que for build |
| 41 | 41 | case 'destroy': // Add unit to que for remove |
@@ -52,23 +52,23 @@ discard block |
||
| 52 | 52 | |
| 53 | 53 | $group_missile = sn_get_groups('missile'); |
| 54 | 54 | $silo_capacity_free = 0; |
| 55 | - if($que_type == QUE_STRUCTURES) { |
|
| 55 | + if ($que_type == QUE_STRUCTURES) { |
|
| 56 | 56 | $build_unit_list = sn_get_groups('build_allow'); |
| 57 | 57 | $build_unit_list = $build_unit_list[$planet['planet_type']]; |
| 58 | 58 | $artifact_id = ART_NANO_BUILDER; |
| 59 | 59 | $page_header = $lang['tech'][UNIT_STRUCTURES]; |
| 60 | - } elseif($que_type == QUE_RESEARCH) { |
|
| 61 | - if(!mrc_get_level($user, $planet, STRUC_LABORATORY)) { |
|
| 60 | + } elseif ($que_type == QUE_RESEARCH) { |
|
| 61 | + if (!mrc_get_level($user, $planet, STRUC_LABORATORY)) { |
|
| 62 | 62 | message($lang['no_laboratory'], $lang['tech'][UNIT_TECHNOLOGIES]); |
| 63 | 63 | } |
| 64 | 64 | |
| 65 | - if(eco_unit_busy($user, $planet, UNIT_TECHNOLOGIES)) { |
|
| 65 | + if (eco_unit_busy($user, $planet, UNIT_TECHNOLOGIES)) { |
|
| 66 | 66 | message($lang['eco_bld_msg_err_laboratory_upgrading'], $lang['tech'][UNIT_TECHNOLOGIES]); |
| 67 | 67 | } |
| 68 | 68 | $build_unit_list = sn_get_groups('tech'); |
| 69 | 69 | $artifact_id = ART_HEURISTIC_CHIP; |
| 70 | 70 | $page_header = $lang['tech'][UNIT_TECHNOLOGIES] . ($user['user_as_ally'] ? " {$lang['sys_of_ally']} {$user['username']}" : ''); |
| 71 | - } elseif($que_type == QUE_MERCENARY) { |
|
| 71 | + } elseif ($que_type == QUE_MERCENARY) { |
|
| 72 | 72 | // if(!mrc_get_level($user, $planet, STRUC_LABORATORY)) { |
| 73 | 73 | // message($lang['no_laboratory'], $lang['tech'][UNIT_TECHNOLOGIES]); |
| 74 | 74 | // } |
@@ -80,7 +80,7 @@ discard block |
||
| 80 | 80 | $artifact_id = 0; |
| 81 | 81 | $page_header = $lang['tech'][UNIT_MERCENARIES] . ($user['user_as_ally'] ? " {$lang['sys_of_ally']} {$user['username']}" : ''); |
| 82 | 82 | } else { |
| 83 | - if(mrc_get_level($user, $planet, STRUC_FACTORY_HANGAR) == 0) { |
|
| 83 | + if (mrc_get_level($user, $planet, STRUC_FACTORY_HANGAR) == 0) { |
|
| 84 | 84 | message($lang['need_hangar'], $lang['tech'][STRUC_FACTORY_HANGAR]); |
| 85 | 85 | } |
| 86 | 86 | |
@@ -89,7 +89,7 @@ discard block |
||
| 89 | 89 | $artifact_id = 0; |
| 90 | 90 | |
| 91 | 91 | $silo_capacity_free = mrc_get_level($user, $planet, STRUC_SILO) * get_unit_param(STRUC_SILO, P_CAPACITY); |
| 92 | - foreach($group_missile as $unit_id) { |
|
| 92 | + foreach ($group_missile as $unit_id) { |
|
| 93 | 93 | $silo_capacity_free -= (mrc_get_level($user, $planet, $unit_id, false, true) + (isset($in_que[$unit_id]) && $in_que[$unit_id] ? $in_que[$unit_id] : 0)) * get_unit_param($unit_id, P_UNIT_SIZE); |
| 94 | 94 | } |
| 95 | 95 | $silo_capacity_free = max(0, $silo_capacity_free); |
@@ -106,7 +106,7 @@ discard block |
||
| 106 | 106 | */ |
| 107 | 107 | |
| 108 | 108 | $template = gettemplate('buildings_builds', true); |
| 109 | - if(!empty($operation_result)) { |
|
| 109 | + if (!empty($operation_result)) { |
|
| 110 | 110 | $template_result['.']['result'][] = $operation_result; |
| 111 | 111 | } |
| 112 | 112 | |
@@ -136,7 +136,7 @@ discard block |
||
| 136 | 136 | |
| 137 | 137 | $record_index = 0; |
| 138 | 138 | |
| 139 | - foreach($build_unit_list as $unit_id) { |
|
| 139 | + foreach ($build_unit_list as $unit_id) { |
|
| 140 | 140 | $level_base = mrc_get_level($user, $planet, $unit_id, false, true); |
| 141 | 141 | $level_effective = mrc_get_level($user, $planet, $unit_id); |
| 142 | 142 | $level_in_que = $in_que[$unit_id]; |
@@ -159,12 +159,12 @@ discard block |
||
| 159 | 159 | $can_build = $unit_info[P_MAX_STACK] ? max(0, $unit_info[P_MAX_STACK] - $level_in_que - $level_effective) : $build_data['CAN'][BUILD_CREATE]; |
| 160 | 160 | // Restricting $can_build by free silo capacity |
| 161 | 161 | $can_build = ($unit_is_missile = in_array($unit_id, $group_missile)) ? min($can_build, floor($silo_capacity_free / $unit_info[P_UNIT_SIZE])) : $can_build; |
| 162 | - if(!$can_build) { |
|
| 163 | - if(!$build_data['CAN'][BUILD_CREATE]) { |
|
| 162 | + if (!$can_build) { |
|
| 163 | + if (!$build_data['CAN'][BUILD_CREATE]) { |
|
| 164 | 164 | $build_data['RESULT'][BUILD_CREATE] = BUILD_NO_RESOURCES; |
| 165 | - } elseif($unit_is_missile && $silo_capacity_free < $unit_info[P_UNIT_SIZE]) { |
|
| 165 | + } elseif ($unit_is_missile && $silo_capacity_free < $unit_info[P_UNIT_SIZE]) { |
|
| 166 | 166 | $build_data['RESULT'][BUILD_CREATE] = BUILD_SILO_FULL; |
| 167 | - } elseif($unit_info[P_MAX_STACK]) { |
|
| 167 | + } elseif ($unit_info[P_MAX_STACK]) { |
|
| 168 | 168 | $build_data['RESULT'][BUILD_CREATE] = BUILD_MAX_REACHED; |
| 169 | 169 | } |
| 170 | 170 | } |
@@ -231,14 +231,14 @@ discard block |
||
| 231 | 231 | 'MAP_IS_RESOURCE' => !empty($unit_info[P_UNIT_PRODUCTION]), |
| 232 | 232 | ); |
| 233 | 233 | |
| 234 | - if($unit_stackable) { |
|
| 234 | + if ($unit_stackable) { |
|
| 235 | 235 | $level_production_base = array( |
| 236 | 236 | 'ACTUAL_SHIELD' => pretty_number(mrc_modify_value($user, false, array(MRC_ADMIRAL, TECH_SHIELD), $unit_info['shield'])), |
| 237 | 237 | 'ACTUAL_ARMOR' => pretty_number(mrc_modify_value($user, false, array(MRC_ADMIRAL, TECH_ARMOR), $unit_info['armor'])), |
| 238 | 238 | 'ACTUAL_WEAPON' => pretty_number(mrc_modify_value($user, false, array(MRC_ADMIRAL, TECH_WEAPON), $unit_info['attack'])), |
| 239 | 239 | ); |
| 240 | 240 | |
| 241 | - if($unit_info[P_UNIT_TYPE] == UNIT_SHIPS) { |
|
| 241 | + if ($unit_info[P_UNIT_TYPE] == UNIT_SHIPS) { |
|
| 242 | 242 | $ship_data = get_ship_data($unit_id, $user); |
| 243 | 243 | |
| 244 | 244 | $level_production_base += array( |
@@ -248,9 +248,9 @@ discard block |
||
| 248 | 248 | ); |
| 249 | 249 | } |
| 250 | 250 | |
| 251 | - if($unit_info[P_UNIT_PRODUCTION]) { |
|
| 252 | - foreach($unit_info[P_UNIT_PRODUCTION] as $resource_id => $resource_calc) { |
|
| 253 | - if($resource_income = |
|
| 251 | + if ($unit_info[P_UNIT_PRODUCTION]) { |
|
| 252 | + foreach ($unit_info[P_UNIT_PRODUCTION] as $resource_id => $resource_calc) { |
|
| 253 | + if ($resource_income = |
|
| 254 | 254 | floor(mrc_modify_value($user, $planet, $sn_modifiers_resource, $resource_calc(1, 10, $user, $planet) |
| 255 | 255 | * ($resource_id == RES_ENERGY ? $config_resource_multiplier_plain : $config_resource_multiplier) |
| 256 | 256 | * (isset($density_info[$resource_id]) ? $density_info[$resource_id] : 1))) |
@@ -260,11 +260,11 @@ discard block |
||
| 260 | 260 | } |
| 261 | 261 | } |
| 262 | 262 | $production['.']['resource'][] = $level_production_base; |
| 263 | - } elseif($unit_info[P_UNIT_PRODUCTION]) { |
|
| 263 | + } elseif ($unit_info[P_UNIT_PRODUCTION]) { |
|
| 264 | 264 | $level_production_base = array(); |
| 265 | 265 | $element_level_start = $level_effective + $in_que[$unit_id]; |
| 266 | - foreach($unit_info[P_UNIT_PRODUCTION] as $resource_id => $resource_calc) { |
|
| 267 | - if($resource_income = |
|
| 266 | + foreach ($unit_info[P_UNIT_PRODUCTION] as $resource_id => $resource_calc) { |
|
| 267 | + if ($resource_income = |
|
| 268 | 268 | floor(mrc_modify_value($user, $planet, $sn_modifiers_resource, $resource_calc($element_level_start, 10, $user, $planet) |
| 269 | 269 | * ($resource_id == RES_ENERGY ? $config_resource_multiplier_plain : $config_resource_multiplier) |
| 270 | 270 | * (isset($density_info[$resource_id]) ? $density_info[$resource_id] : 1))) |
@@ -274,10 +274,10 @@ discard block |
||
| 274 | 274 | } |
| 275 | 275 | |
| 276 | 276 | $level_start = $level_base_and_que > 1 ? $level_effective + $level_in_que - 1 : 1; |
| 277 | - for($i = 0; $i < 6; $i++) { |
|
| 277 | + for ($i = 0; $i < 6; $i++) { |
|
| 278 | 278 | $level_production = array('LEVEL' => $level_start + $i); |
| 279 | - foreach($unit_info[P_UNIT_PRODUCTION] as $resource_id => $resource_calc) { |
|
| 280 | - if( |
|
| 279 | + foreach ($unit_info[P_UNIT_PRODUCTION] as $resource_id => $resource_calc) { |
|
| 280 | + if ( |
|
| 281 | 281 | $resource_income = floor(mrc_modify_value($user, $planet, $sn_modifiers_resource, $resource_calc($level_start + $i, 10, $user, $planet) |
| 282 | 282 | * ($resource_id == RES_ENERGY ? $config_resource_multiplier_plain : $config_resource_multiplier) |
| 283 | 283 | * (isset($density_info[$resource_id]) ? $density_info[$resource_id] : 1))) |
@@ -288,7 +288,7 @@ discard block |
||
| 288 | 288 | } |
| 289 | 289 | $production['.']['resource'][] = $level_production; |
| 290 | 290 | } |
| 291 | - } elseif($unit_id == TECH_ASTROTECH) { |
|
| 291 | + } elseif ($unit_id == TECH_ASTROTECH) { |
|
| 292 | 292 | $element_level_start = $level_effective + $in_que[$unit_id]; |
| 293 | 293 | $level_production_base = array( |
| 294 | 294 | UNIT_PLAYER_EXPEDITIONS_MAX => get_player_max_expeditons($user, $element_level_start), |
@@ -296,7 +296,7 @@ discard block |
||
| 296 | 296 | ); |
| 297 | 297 | |
| 298 | 298 | $level_start = $level_base_and_que > 1 ? $level_effective + $level_in_que - 1 : 1; |
| 299 | - for($i = 0; $i < 6; $i++) { |
|
| 299 | + for ($i = 0; $i < 6; $i++) { |
|
| 300 | 300 | $level_production = array('LEVEL' => $level_start + $i); |
| 301 | 301 | $level_production['R' . UNIT_PLAYER_EXPEDITIONS_MAX] = get_player_max_expeditons($user, $level_start + $i); |
| 302 | 302 | $level_production['D' . UNIT_PLAYER_EXPEDITIONS_MAX] = $level_production['R' . UNIT_PLAYER_EXPEDITIONS_MAX] - $level_production_base[UNIT_PLAYER_EXPEDITIONS_MAX]; |
@@ -317,7 +317,7 @@ discard block |
||
| 317 | 317 | $template_result['.']['production'][] = $production; |
| 318 | 318 | } |
| 319 | 319 | |
| 320 | - foreach($lang['player_option_building_sort'] as $sort_id => $sort_text) { |
|
| 320 | + foreach ($lang['player_option_building_sort'] as $sort_id => $sort_text) { |
|
| 321 | 321 | $template->assign_block_vars('sort_values', array( |
| 322 | 322 | 'VALUE' => $sort_id, |
| 323 | 323 | 'TEXT' => $sort_text, |
@@ -326,8 +326,8 @@ discard block |
||
| 326 | 326 | |
| 327 | 327 | $sort_option = classSupernova::$user_options[array(PLAYER_OPTION_BUILDING_SORT, $que_type)]; |
| 328 | 328 | $sort_option_inverse = classSupernova::$user_options[array(PLAYER_OPTION_BUILDING_SORT_INVERSE, $que_type)]; |
| 329 | - if($sort_option || $sort_option_inverse != PLAYER_OPTION_SORT_ORDER_PLAIN) { |
|
| 330 | - switch($sort_option) { |
|
| 329 | + if ($sort_option || $sort_option_inverse != PLAYER_OPTION_SORT_ORDER_PLAIN) { |
|
| 330 | + switch ($sort_option) { |
|
| 331 | 331 | case PLAYER_OPTION_SORT_NAME: |
| 332 | 332 | $sort_option_field = 'NAME'; |
| 333 | 333 | break; |
@@ -342,7 +342,7 @@ discard block |
||
| 342 | 342 | break; |
| 343 | 343 | } |
| 344 | 344 | $sort_option_inverse_closure = $sort_option_inverse ? -1 : 1; |
| 345 | - usort($template_result['.']['production'], function ($a, $b) use ($sort_option_field, $sort_option_inverse_closure) { |
|
| 345 | + usort($template_result['.']['production'], function($a, $b) use ($sort_option_field, $sort_option_inverse_closure) { |
|
| 346 | 346 | return $a[$sort_option_field] < $b[$sort_option_field] ? -1 * $sort_option_inverse_closure : ( |
| 347 | 347 | $a[$sort_option_field] > $b[$sort_option_field] ? 1 * $sort_option_inverse_closure : 0 |
| 348 | 348 | ); |
@@ -9,28 +9,28 @@ discard block |
||
| 9 | 9 | $avatar_filename = $fullsize_filename = SN_ROOT_PHYSICAL . 'images/avatar/' . $prefix . '_' . $subject_id; |
| 10 | 10 | $avatar_filename .= '.png'; |
| 11 | 11 | $fullsize_filename .= '_full.png'; |
| 12 | - if(sys_get_param_int('avatar_remove')) |
|
| 12 | + if (sys_get_param_int('avatar_remove')) |
|
| 13 | 13 | { |
| 14 | - if(file_exists($avatar_filename) && !unlink($avatar_filename)) |
|
| 14 | + if (file_exists($avatar_filename) && !unlink($avatar_filename)) |
|
| 15 | 15 | { |
| 16 | 16 | throw new Exception($lang['opt_msg_avatar_error_delete'], ERR_ERROR); |
| 17 | 17 | } |
| 18 | 18 | $avatar_field = 0; |
| 19 | 19 | throw new Exception($lang['opt_msg_avatar_removed'], ERR_NONE); |
| 20 | 20 | } |
| 21 | - elseif($_FILES['avatar']['size']) |
|
| 21 | + elseif ($_FILES['avatar']['size']) |
|
| 22 | 22 | { |
| 23 | - if(!in_array($_FILES['avatar']['type'], array('image/gif', 'image/jpeg', 'image/jpg', 'image/pjpeg', 'image/png')) || $_FILES['avatar']['size'] > 204800) |
|
| 23 | + if (!in_array($_FILES['avatar']['type'], array('image/gif', 'image/jpeg', 'image/jpg', 'image/pjpeg', 'image/png')) || $_FILES['avatar']['size'] > 204800) |
|
| 24 | 24 | { |
| 25 | 25 | throw new Exception($lang['opt_msg_avatar_error_unsupported'], ERR_WARNING); |
| 26 | 26 | } |
| 27 | 27 | |
| 28 | - if($_FILES['avatar']['error']) |
|
| 28 | + if ($_FILES['avatar']['error']) |
|
| 29 | 29 | { |
| 30 | 30 | throw new Exception(sprintf($lang['opt_msg_avatar_error_upload'], $_FILES['avatar']['error']), ERR_ERROR); |
| 31 | 31 | } |
| 32 | 32 | |
| 33 | - if(!($avatar_image = imagecreatefromstring(file_get_contents($_FILES['avatar']['tmp_name'])))) |
|
| 33 | + if (!($avatar_image = imagecreatefromstring(file_get_contents($_FILES['avatar']['tmp_name'])))) |
|
| 34 | 34 | { |
| 35 | 35 | throw new Exception($lang['opt_msg_avatar_error_unsupported'], ERR_WARNING); |
| 36 | 36 | } |
@@ -38,7 +38,7 @@ discard block |
||
| 38 | 38 | $avatar_size = getimagesize($_FILES['avatar']['tmp_name']); |
| 39 | 39 | $avatar_max_width = $config-> avatar_max_width; |
| 40 | 40 | $avatar_max_height = $config-> avatar_max_height; |
| 41 | - if($avatar_size[0] > $avatar_max_width || $avatar_size[1] > $avatar_max_height) |
|
| 41 | + if ($avatar_size[0] > $avatar_max_width || $avatar_size[1] > $avatar_max_height) |
|
| 42 | 42 | { |
| 43 | 43 | $aspect_ratio = min($avatar_max_width / $avatar_size[0], $avatar_max_height / $avatar_size[1]); |
| 44 | 44 | $avatar_image_new = imagecreatetruecolor($avatar_size[0] * $aspect_ratio, $avatar_size[0] * $aspect_ratio); |
@@ -47,12 +47,12 @@ discard block |
||
| 47 | 47 | $avatar_image = $avatar_image_new; |
| 48 | 48 | } |
| 49 | 49 | |
| 50 | - if(file_exists($avatar_filename) && !unlink($avatar_filename)) |
|
| 50 | + if (file_exists($avatar_filename) && !unlink($avatar_filename)) |
|
| 51 | 51 | { |
| 52 | 52 | throw new Exception($lang['opt_msg_avatar_error_delete'], ERR_ERROR); |
| 53 | 53 | } |
| 54 | 54 | |
| 55 | - if(!imagepng($avatar_image, $avatar_filename, 9)) |
|
| 55 | + if (!imagepng($avatar_image, $avatar_filename, 9)) |
|
| 56 | 56 | { |
| 57 | 57 | throw new Exception($lang['opt_msg_avatar_error_writing'], ERR_ERROR); |
| 58 | 58 | } |
@@ -89,15 +89,15 @@ discard block |
||
| 89 | 89 | // Инфа об устройстве и браузере - общая для всех |
| 90 | 90 | sn_db_transaction_start(); |
| 91 | 91 | $this->device_cypher = $_COOKIE[SN_COOKIE_D]; |
| 92 | - if($this->device_cypher) { |
|
| 92 | + if ($this->device_cypher) { |
|
| 93 | 93 | $cypher_safe = db_escape($this->device_cypher); |
| 94 | 94 | $device_id = doquery("SELECT `device_id` FROM {{security_device}} WHERE `device_cypher` = '{$cypher_safe}' LIMIT 1 FOR UPDATE", true); |
| 95 | - if(!empty($device_id['device_id'])) { |
|
| 95 | + if (!empty($device_id['device_id'])) { |
|
| 96 | 96 | $this->device_id = $device_id['device_id']; |
| 97 | 97 | } |
| 98 | 98 | } |
| 99 | 99 | |
| 100 | - if($this->device_id <= 0) { |
|
| 100 | + if ($this->device_id <= 0) { |
|
| 101 | 101 | do { |
| 102 | 102 | $cypher_safe = db_escape($this->device_cypher = sys_random_string()); |
| 103 | 103 | $row = doquery("SELECT `device_id` FROM {{security_device}} WHERE `device_cypher` = '{$cypher_safe}' LIMIT 1 FOR UPDATE", true); |
@@ -118,10 +118,10 @@ discard block |
||
| 118 | 118 | $this->page_address_id = db_get_set_unique_id_value($this->page_address, 'url_id', 'security_url', 'url_string'); |
| 119 | 119 | sn_db_transaction_commit(); |
| 120 | 120 | |
| 121 | - if($this->write_full_url) { |
|
| 121 | + if ($this->write_full_url) { |
|
| 122 | 122 | sn_db_transaction_start(); |
| 123 | 123 | $this->page_url = substr($_SERVER['REQUEST_URI'], strlen(SN_ROOT_RELATIVE)); |
| 124 | - if(strpos($_SERVER['REQUEST_URI'], '/simulator.php') === 0) { |
|
| 124 | + if (strpos($_SERVER['REQUEST_URI'], '/simulator.php') === 0) { |
|
| 125 | 125 | $this->page_url = '/simulator.php'; |
| 126 | 126 | } |
| 127 | 127 | $this->page_url_id = db_get_set_unique_id_value($this->page_url, 'url_id', 'security_url', 'url_string'); |
@@ -144,7 +144,7 @@ discard block |
||
| 144 | 144 | */ |
| 145 | 145 | public function db_security_entry_insert($user_id_unsafe) { |
| 146 | 146 | // TODO $user_id = !empty(self::$user['id']) ? self::$user['id'] : 'NULL'; |
| 147 | - if(empty($user_id_unsafe)) { |
|
| 147 | + if (empty($user_id_unsafe)) { |
|
| 148 | 148 | // self::flog('Нет ИД пользователя'); |
| 149 | 149 | return true; |
| 150 | 150 | } |
@@ -167,7 +167,7 @@ discard block |
||
| 167 | 167 | public function db_counter_insert($user_id_unsafe) { |
| 168 | 168 | global $config, $sys_stop_log_hit, $is_watching; |
| 169 | 169 | |
| 170 | - if($sys_stop_log_hit || !$config->game_counter) { |
|
| 170 | + if ($sys_stop_log_hit || !$config->game_counter) { |
|
| 171 | 171 | return; |
| 172 | 172 | } |
| 173 | 173 | |
@@ -183,14 +183,14 @@ discard block |
||
| 183 | 183 | // $this->ip_v4_int . ", '{$proxy_safe}', " . $this->page_address_id . ", " . $this->page_url_id . ");"); |
| 184 | 184 | doquery( |
| 185 | 185 | "INSERT INTO {{counter}} SET |
| 186 | - `visit_time` = '" . SN_TIME_SQL. "', |
|
| 186 | + `visit_time` = '" . SN_TIME_SQL . "', |
|
| 187 | 187 | `user_id` = {$user_id_safe}, |
| 188 | 188 | `device_id` = {$this->device_id}, |
| 189 | 189 | `browser_id` = {$this->browser_id}, |
| 190 | 190 | `user_ip` = {$this->ip_v4_int}, |
| 191 | 191 | `user_proxy` = '{$proxy_safe}', |
| 192 | 192 | `page_url_id` = {$this->page_address_id}" . |
| 193 | - ($this->write_full_url ? ", `plain_url_id` = {$this->page_url_id}" : '' ). |
|
| 193 | + ($this->write_full_url ? ", `plain_url_id` = {$this->page_url_id}" : '') . |
|
| 194 | 194 | ";"); |
| 195 | 195 | |
| 196 | 196 | $is_watching = false; |
@@ -38,8 +38,8 @@ discard block |
||
| 38 | 38 | !is_array($offset) ? $offset = array($offset) : false; |
| 39 | 39 | |
| 40 | 40 | $current_leaf = $this->__get(reset($offset)); |
| 41 | - while(($leaf_index = next($offset)) !== false) { |
|
| 42 | - if(!isset($current_leaf) || !is_array($current_leaf) || !isset($current_leaf[$leaf_index])) { |
|
| 41 | + while (($leaf_index = next($offset)) !== false) { |
|
| 42 | + if (!isset($current_leaf) || !is_array($current_leaf) || !isset($current_leaf[$leaf_index])) { |
|
| 43 | 43 | unset($current_leaf); |
| 44 | 44 | break; |
| 45 | 45 | } |
@@ -64,9 +64,9 @@ discard block |
||
| 64 | 64 | |
| 65 | 65 | !is_array($offset) ? $offset = array($offset) : false; |
| 66 | 66 | |
| 67 | - if($this->offsetExists($offset)) { |
|
| 67 | + if ($this->offsetExists($offset)) { |
|
| 68 | 68 | $result = $this->__get(reset($offset)); |
| 69 | - while(($leaf_index = next($offset)) !== false) { |
|
| 69 | + while (($leaf_index = next($offset)) !== false) { |
|
| 70 | 70 | $result = $result[$leaf_index]; |
| 71 | 71 | } |
| 72 | 72 | } |
@@ -91,12 +91,12 @@ discard block |
||
| 91 | 91 | */ |
| 92 | 92 | public function offsetSet($offset, $value = null) { |
| 93 | 93 | // Если нет никакого индекса - значит нечего записывать |
| 94 | - if(!isset($offset) || (is_array($offset) && empty($offset))) { |
|
| 94 | + if (!isset($offset) || (is_array($offset) && empty($offset))) { |
|
| 95 | 95 | return; |
| 96 | 96 | } |
| 97 | 97 | |
| 98 | 98 | // Если в массиве индекса только один элемент - значит это просто индекс |
| 99 | - if(is_array($offset) && count($offset) == 1) { |
|
| 99 | + if (is_array($offset) && count($offset) == 1) { |
|
| 100 | 100 | // Разворачиваем его в индекс |
| 101 | 101 | $offset = array(reset($offset) => $value); |
| 102 | 102 | unset($value); |
@@ -104,20 +104,20 @@ discard block |
||
| 104 | 104 | } |
| 105 | 105 | |
| 106 | 106 | // Адресация многомерного массива через массив индексов в $option |
| 107 | - if(is_array($offset) && isset($value)) { |
|
| 107 | + if (is_array($offset) && isset($value)) { |
|
| 108 | 108 | // TODO - а не переделать ли это всё на __isset() ?? |
| 109 | 109 | //pdump($offset, '$offset'); |
| 110 | 110 | //pdump($value, '$value'); |
| 111 | 111 | // Вытаскиваем корневой элемент |
| 112 | 112 | $root = $this->__get(reset($offset)); |
| 113 | 113 | $current_leaf = &$root; |
| 114 | - while(($leaf_index = next($offset)) !== false) { |
|
| 114 | + while (($leaf_index = next($offset)) !== false) { |
|
| 115 | 115 | !is_array($current_leaf[$leaf_index]) ? $current_leaf[$leaf_index] = array() : false; |
| 116 | 116 | $current_leaf = &$current_leaf[$leaf_index]; |
| 117 | 117 | } |
| 118 | 118 | //pdump($current_leaf, '$current_leaf'); |
| 119 | 119 | //pdump($value, '$value'); |
| 120 | - if($current_leaf != $value) { |
|
| 120 | + if ($current_leaf != $value) { |
|
| 121 | 121 | $current_leaf = $value; |
| 122 | 122 | //pdump(reset($offset), 'reset($offset)'); |
| 123 | 123 | //pdump($root, '$root'); |
@@ -128,7 +128,7 @@ discard block |
||
| 128 | 128 | // Пакетная запись из массива ключ -> значение |
| 129 | 129 | !is_array($offset) ? $offset = array($offset => $value) : false; |
| 130 | 130 | |
| 131 | - foreach($offset as $key => $value) { |
|
| 131 | + foreach ($offset as $key => $value) { |
|
| 132 | 132 | $this->__get($key) !== $value ? $this->__set($key, $value) : false; |
| 133 | 133 | } |
| 134 | 134 | } |
@@ -149,13 +149,13 @@ discard block |
||
| 149 | 149 | */ |
| 150 | 150 | public function offsetUnset($offset) { |
| 151 | 151 | // Если нет никакого индекса - значит нечего записывать |
| 152 | - if(!isset($offset) || (is_array($offset) && empty($offset))) { |
|
| 152 | + if (!isset($offset) || (is_array($offset) && empty($offset))) { |
|
| 153 | 153 | return; |
| 154 | 154 | } |
| 155 | 155 | |
| 156 | 156 | !is_array($offset) ? $offset = array($offset) : false; |
| 157 | 157 | |
| 158 | - if($this->offsetExists($offset)) { |
|
| 158 | + if ($this->offsetExists($offset)) { |
|
| 159 | 159 | //pdump($offset); |
| 160 | 160 | // Перематываем массив в конец |
| 161 | 161 | $key_to_delete = end($offset); |
@@ -163,7 +163,7 @@ discard block |
||
| 163 | 163 | //pdump($key_to_delete, '$key_to_delete'); |
| 164 | 164 | $parent_offset = $offset; |
| 165 | 165 | array_pop($parent_offset); |
| 166 | - if(!count($parent_offset)) { |
|
| 166 | + if (!count($parent_offset)) { |
|
| 167 | 167 | // В массиве был один элемент - мы удаляем в корне. Просто удаляем элемент |
| 168 | 168 | $this->__unset($key_to_delete); |
| 169 | 169 | } else { |
@@ -13,8 +13,8 @@ discard block |
||
| 13 | 13 | * Defining some constants |
| 14 | 14 | */ |
| 15 | 15 | define('CACHER_NOT_INIT', -1); |
| 16 | -define('CACHER_NO_CACHE', 0); |
|
| 17 | -define('CACHER_XCACHE' , 1); |
|
| 16 | +define('CACHER_NO_CACHE', 0); |
|
| 17 | +define('CACHER_XCACHE', 1); |
|
| 18 | 18 | |
| 19 | 19 | define('CACHER_LOCK_WAIT', 5); // maximum cacher wait for table unlock in seconds. Can be float |
| 20 | 20 | |
@@ -46,19 +46,19 @@ discard block |
||
| 46 | 46 | protected static $cacheObject; |
| 47 | 47 | |
| 48 | 48 | public function __construct($prefIn = 'CACHE_', $init_mode = false) { |
| 49 | - if( !($init_mode === false || $init_mode === CACHER_NO_CACHE || ($init_mode === CACHER_XCACHE && extension_loaded('xcache')) )) { |
|
| 49 | + if (!($init_mode === false || $init_mode === CACHER_NO_CACHE || ($init_mode === CACHER_XCACHE && extension_loaded('xcache')))) { |
|
| 50 | 50 | throw new UnexpectedValueException('Wrong work mode or current mode does not supported on your server'); |
| 51 | 51 | } |
| 52 | 52 | |
| 53 | 53 | $this->prefix = $prefIn; |
| 54 | - if(extension_loaded('xcache') && ($init_mode === CACHER_XCACHE || $init_mode === false)) { |
|
| 55 | - if(self::$mode === CACHER_NOT_INIT) { |
|
| 54 | + if (extension_loaded('xcache') && ($init_mode === CACHER_XCACHE || $init_mode === false)) { |
|
| 55 | + if (self::$mode === CACHER_NOT_INIT) { |
|
| 56 | 56 | self::$mode = CACHER_XCACHE; |
| 57 | 57 | } |
| 58 | 58 | } else { |
| 59 | - if(self::$mode === CACHER_NOT_INIT) { |
|
| 59 | + if (self::$mode === CACHER_NOT_INIT) { |
|
| 60 | 60 | self::$mode = CACHER_NO_CACHE; |
| 61 | - if(!self::$data) { |
|
| 61 | + if (!self::$data) { |
|
| 62 | 62 | self::$data = array(); |
| 63 | 63 | } |
| 64 | 64 | } |
@@ -94,11 +94,11 @@ discard block |
||
| 94 | 94 | default: |
| 95 | 95 | switch (self::$mode) { |
| 96 | 96 | case CACHER_NO_CACHE: |
| 97 | - self::$data[$this->prefix.$name] = $value; |
|
| 97 | + self::$data[$this->prefix . $name] = $value; |
|
| 98 | 98 | break; |
| 99 | 99 | |
| 100 | 100 | case CACHER_XCACHE: |
| 101 | - xcache_set($this->prefix.$name, $value); |
|
| 101 | + xcache_set($this->prefix . $name, $value); |
|
| 102 | 102 | break; |
| 103 | 103 | } |
| 104 | 104 | break; |
@@ -118,11 +118,11 @@ discard block |
||
| 118 | 118 | default: |
| 119 | 119 | switch (self::$mode) { |
| 120 | 120 | case CACHER_NO_CACHE: |
| 121 | - return self::$data[$this->prefix.$name]; |
|
| 121 | + return self::$data[$this->prefix . $name]; |
|
| 122 | 122 | break; |
| 123 | 123 | |
| 124 | 124 | case CACHER_XCACHE: |
| 125 | - return xcache_get($this->prefix.$name); |
|
| 125 | + return xcache_get($this->prefix . $name); |
|
| 126 | 126 | break; |
| 127 | 127 | |
| 128 | 128 | } |
@@ -135,11 +135,11 @@ discard block |
||
| 135 | 135 | public function __isset($name) { |
| 136 | 136 | switch (self::$mode) { |
| 137 | 137 | case CACHER_NO_CACHE: |
| 138 | - return isset(self::$data[$this->prefix.$name]); |
|
| 138 | + return isset(self::$data[$this->prefix . $name]); |
|
| 139 | 139 | break; |
| 140 | 140 | |
| 141 | 141 | case CACHER_XCACHE: |
| 142 | - return xcache_isset($this->prefix.$name) && ($this->__get($name) !== null); |
|
| 142 | + return xcache_isset($this->prefix . $name) && ($this->__get($name) !== null); |
|
| 143 | 143 | break; |
| 144 | 144 | } |
| 145 | 145 | |
@@ -160,7 +160,7 @@ discard block |
||
| 160 | 160 | |
| 161 | 161 | public function unset_by_prefix($prefix_unset = '') { |
| 162 | 162 | static $array_clear; |
| 163 | - !$array_clear ? $array_clear = function(&$v,$k,$p) { |
|
| 163 | + !$array_clear ? $array_clear = function(&$v, $k, $p) { |
|
| 164 | 164 | strpos($k, $p) === 0 ? $v = NULL : false; |
| 165 | 165 | } : false; |
| 166 | 166 | |
@@ -172,7 +172,7 @@ discard block |
||
| 172 | 172 | break; |
| 173 | 173 | |
| 174 | 174 | case CACHER_XCACHE: |
| 175 | - if(!function_exists('xcache_unset_by_prefix')) { |
|
| 175 | + if (!function_exists('xcache_unset_by_prefix')) { |
|
| 176 | 176 | return false; |
| 177 | 177 | } |
| 178 | 178 | return xcache_unset_by_prefix($this->prefix . $prefix_unset); |
@@ -188,13 +188,13 @@ discard block |
||
| 188 | 188 | protected function make_element_name($args, $diff = 0) { |
| 189 | 189 | $num_args = count($args); |
| 190 | 190 | |
| 191 | - if($num_args < 1) { |
|
| 191 | + if ($num_args < 1) { |
|
| 192 | 192 | return false; |
| 193 | 193 | } |
| 194 | 194 | |
| 195 | 195 | $name = ''; |
| 196 | 196 | $aName = array(); |
| 197 | - for($i = 0; $i <= $num_args - 1 - $diff; $i++) { |
|
| 197 | + for ($i = 0; $i <= $num_args - 1 - $diff; $i++) { |
|
| 198 | 198 | $name .= "[{$args[$i]}]"; |
| 199 | 199 | array_unshift($aName, $name); |
| 200 | 200 | } |
@@ -206,15 +206,15 @@ discard block |
||
| 206 | 206 | $args = func_get_args(); |
| 207 | 207 | $name = $this->make_element_name($args, 1); |
| 208 | 208 | |
| 209 | - if(!$name) { |
|
| 209 | + if (!$name) { |
|
| 210 | 210 | return NULL; |
| 211 | 211 | } |
| 212 | 212 | |
| 213 | - if($this->$name[0] === NULL) { |
|
| 214 | - for($i = count($name) - 1; $i > 0; $i--) { |
|
| 213 | + if ($this->$name[0] === NULL) { |
|
| 214 | + for ($i = count($name) - 1; $i > 0; $i--) { |
|
| 215 | 215 | $cName = "{$name[$i]}_COUNT"; |
| 216 | - $cName1 = "{$name[$i-1]}_COUNT"; |
|
| 217 | - if($this->$cName1 == NULL || $i == 1) { |
|
| 216 | + $cName1 = "{$name[$i - 1]}_COUNT"; |
|
| 217 | + if ($this->$cName1 == NULL || $i == 1) { |
|
| 218 | 218 | $this->$cName++; |
| 219 | 219 | } |
| 220 | 220 | } |
@@ -226,7 +226,7 @@ discard block |
||
| 226 | 226 | |
| 227 | 227 | public function array_get() { |
| 228 | 228 | $name = $this->make_element_name(func_get_args()); |
| 229 | - if(!$name) { |
|
| 229 | + if (!$name) { |
|
| 230 | 230 | return NULL; |
| 231 | 231 | } |
| 232 | 232 | return $this->$name[0]; |
@@ -234,12 +234,12 @@ discard block |
||
| 234 | 234 | |
| 235 | 235 | public function array_count() { |
| 236 | 236 | $name = $this->make_element_name(func_get_args()); |
| 237 | - if(!$name) { |
|
| 237 | + if (!$name) { |
|
| 238 | 238 | return 0; |
| 239 | 239 | } |
| 240 | 240 | $cName = "{$name[0]}_COUNT"; |
| 241 | 241 | $retVal = $this->$cName; |
| 242 | - if(!$retVal) { |
|
| 242 | + if (!$retVal) { |
|
| 243 | 243 | $retVal = NULL; |
| 244 | 244 | } |
| 245 | 245 | return $retVal; |
@@ -248,18 +248,18 @@ discard block |
||
| 248 | 248 | public function array_unset() { |
| 249 | 249 | $name = $this->make_element_name(func_get_args()); |
| 250 | 250 | |
| 251 | - if(!$name) { |
|
| 251 | + if (!$name) { |
|
| 252 | 252 | return false; |
| 253 | 253 | } |
| 254 | 254 | $this->unset_by_prefix($name[0]); |
| 255 | 255 | |
| 256 | - for($i = 1; $i < count($name); $i++) { |
|
| 256 | + for ($i = 1; $i < count($name); $i++) { |
|
| 257 | 257 | $cName = "{$name[$i]}_COUNT"; |
| 258 | - $cName1 = "{$name[$i-1]}_COUNT"; |
|
| 258 | + $cName1 = "{$name[$i - 1]}_COUNT"; |
|
| 259 | 259 | |
| 260 | - if($i == 1 || $this->$cName1 === NULL) { |
|
| 260 | + if ($i == 1 || $this->$cName1 === NULL) { |
|
| 261 | 261 | $this->$cName--; |
| 262 | - if($this->$cName <= 0) { |
|
| 262 | + if ($this->$cName <= 0) { |
|
| 263 | 263 | unset($this->$cName); |
| 264 | 264 | } |
| 265 | 265 | } |
@@ -319,7 +319,7 @@ discard block |
||
| 319 | 319 | $this->sql_index_field = "{$table_name}_name"; |
| 320 | 320 | $this->sql_value_field = "{$table_name}_value"; |
| 321 | 321 | |
| 322 | - if(!$this->_DB_LOADED) { |
|
| 322 | + if (!$this->_DB_LOADED) { |
|
| 323 | 323 | $this->db_loadAll(); |
| 324 | 324 | } |
| 325 | 325 | } |
@@ -334,7 +334,7 @@ discard block |
||
| 334 | 334 | |
| 335 | 335 | public function db_loadItem($index) { |
| 336 | 336 | $result = null; |
| 337 | - if($index) { |
|
| 337 | + if ($index) { |
|
| 338 | 338 | $index_safe = db_escape($index); |
| 339 | 339 | $result = doquery("SELECT `{$this->sql_value_field}` FROM `{{{$this->table_name}}}` WHERE `{$this->sql_index_field}` = '{$index_safe}' FOR UPDATE", true); |
| 340 | 340 | // В две строки - что бы быть уверенным в порядке выполнения |
@@ -348,7 +348,7 @@ discard block |
||
| 348 | 348 | $this->loadDefaults(); |
| 349 | 349 | |
| 350 | 350 | $query = doquery("SELECT * FROM {{{$this->table_name}}} FOR UPDATE;"); |
| 351 | - while($row = db_fetch($query)) { |
|
| 351 | + while ($row = db_fetch($query)) { |
|
| 352 | 352 | $this->$row[$this->sql_index_field] = $row[$this->sql_value_field]; |
| 353 | 353 | } |
| 354 | 354 | |
@@ -356,7 +356,7 @@ discard block |
||
| 356 | 356 | } |
| 357 | 357 | |
| 358 | 358 | public function loadDefaults() { |
| 359 | - foreach($this->defaults as $defName => $defValue) { |
|
| 359 | + foreach ($this->defaults as $defName => $defValue) { |
|
| 360 | 360 | $this->$defName = $defValue; |
| 361 | 361 | } |
| 362 | 362 | } |
@@ -372,7 +372,7 @@ discard block |
||
| 372 | 372 | } |
| 373 | 373 | |
| 374 | 374 | public function db_saveItem($item_list, $value = NULL) { |
| 375 | - if(empty($item_list)) { |
|
| 375 | + if (empty($item_list)) { |
|
| 376 | 376 | return; |
| 377 | 377 | } |
| 378 | 378 | |
@@ -380,8 +380,8 @@ discard block |
||
| 380 | 380 | |
| 381 | 381 | // Сначала записываем данные в базу - что бы поймать все блокировки |
| 382 | 382 | $qry = array(); |
| 383 | - foreach($item_list as $item_name => $item_value) { |
|
| 384 | - if($item_name) { |
|
| 383 | + foreach ($item_list as $item_name => $item_value) { |
|
| 384 | + if ($item_name) { |
|
| 385 | 385 | $item_value = db_escape($item_value === NULL ? $this->$item_name : $item_value); |
| 386 | 386 | $item_name = db_escape($item_name); |
| 387 | 387 | $qry[] = "('{$item_name}', '{$item_value}')"; |
@@ -390,8 +390,8 @@ discard block |
||
| 390 | 390 | doquery("REPLACE INTO `{{" . $this->table_name . "}}` (`{$this->sql_index_field}`, `{$this->sql_value_field}`) VALUES " . implode(',', $qry) . ";"); |
| 391 | 391 | |
| 392 | 392 | // И только после взятия блокировок - меняем значения в кэше |
| 393 | - foreach($item_list as $item_name => $item_value) { |
|
| 394 | - if($item_name && $item_value !== NULL) { |
|
| 393 | + foreach ($item_list as $item_name => $item_value) { |
|
| 394 | + if ($item_name && $item_value !== NULL) { |
|
| 395 | 395 | $this->$item_name = $item_value; |
| 396 | 396 | } |
| 397 | 397 | } |
@@ -419,9 +419,9 @@ discard block |
||
| 419 | 419 | 'advGoogleLeftMenuCode' => '(Place here code for banner)', |
| 420 | 420 | |
| 421 | 421 | // Alliance bonus calculations |
| 422 | - 'ali_bonus_algorithm' => 0, // Bonus calculation algorithm |
|
| 422 | + 'ali_bonus_algorithm' => 0, // Bonus calculation algorithm |
|
| 423 | 423 | 'ali_bonus_brackets' => 10, // Brackets count for ALI_BONUS_BY_RANK |
| 424 | - 'ali_bonus_brackets_divisor' => 10,// Bonus divisor for ALI_BONUS_BY_RANK |
|
| 424 | + 'ali_bonus_brackets_divisor' => 10, // Bonus divisor for ALI_BONUS_BY_RANK |
|
| 425 | 425 | 'ali_bonus_divisor' => 10000000, // Rank divisor for ALI_BONUS_BY_POINTS |
| 426 | 426 | 'ali_bonus_members' => 10, // Minumum alliace size to start using bonus |
| 427 | 427 | |
@@ -452,25 +452,25 @@ discard block |
||
| 452 | 452 | 'deuterium_basic_income' => 0, |
| 453 | 453 | 'eco_scale_storage' => 1, |
| 454 | 454 | 'eco_stockman_fleet' => '', // Black Market - Starting amount of s/h ship merchant to sell |
| 455 | - 'eco_stockman_fleet_populate' => 1, // Populate empty Stockman fleet with ships or not |
|
| 455 | + 'eco_stockman_fleet_populate' => 1, // Populate empty Stockman fleet with ships or not |
|
| 456 | 456 | 'empire_mercenary_base_period' => PERIOD_MONTH, // Base |
| 457 | 457 | 'empire_mercenary_temporary' => 0, // Temporary empire-wide mercenaries |
| 458 | 458 | 'energy_basic_income' => 0, |
| 459 | 459 | |
| 460 | 460 | // Bashing protection settings |
| 461 | - 'fleet_bashing_attacks' => 3, // Max amount of attack per wave - 3 by default |
|
| 462 | - 'fleet_bashing_interval' => 1800, // Maximum interval between attacks when they still count as one wave - 30m by default |
|
| 463 | - 'fleet_bashing_scope' => 86400, // Interval on which bashing waves counts - 24h by default |
|
| 464 | - 'fleet_bashing_war_delay' => 43200, // Delay before start bashing after declaring war to alliance - 12h by default |
|
| 465 | - 'fleet_bashing_waves' => 3, // Max amount of waves per day - 3 by default |
|
| 461 | + 'fleet_bashing_attacks' => 3, // Max amount of attack per wave - 3 by default |
|
| 462 | + 'fleet_bashing_interval' => 1800, // Maximum interval between attacks when they still count as one wave - 30m by default |
|
| 463 | + 'fleet_bashing_scope' => 86400, // Interval on which bashing waves counts - 24h by default |
|
| 464 | + 'fleet_bashing_war_delay' => 43200, // Delay before start bashing after declaring war to alliance - 12h by default |
|
| 465 | + 'fleet_bashing_waves' => 3, // Max amount of waves per day - 3 by default |
|
| 466 | 466 | |
| 467 | 467 | 'Fleet_Cdr' => 30, |
| 468 | 468 | 'fleet_speed' => 1, |
| 469 | 469 | |
| 470 | 470 | 'fleet_update_interval' => 4, |
| 471 | 471 | |
| 472 | - 'game_adminEmail' => 'root@localhost', // Admin's email to show to users |
|
| 473 | - 'game_counter' => 0, // Does built-in page hit counter is on? |
|
| 472 | + 'game_adminEmail' => 'root@localhost', // Admin's email to show to users |
|
| 473 | + 'game_counter' => 0, // Does built-in page hit counter is on? |
|
| 474 | 474 | // Defaults |
| 475 | 475 | 'game_default_language' => 'ru', |
| 476 | 476 | 'game_default_skin' => 'skins/EpicBlue/', |
@@ -484,13 +484,13 @@ discard block |
||
| 484 | 484 | 'game_maxSystem' => 199, |
| 485 | 485 | 'game_maxPlanet' => 15, |
| 486 | 486 | // Game global settings |
| 487 | - 'game_mode' => 0, // 0 - SuperNova, 1 - oGame |
|
| 487 | + 'game_mode' => 0, // 0 - SuperNova, 1 - oGame |
|
| 488 | 488 | 'game_name' => 'SuperNova', // Server name (would be on banners and on top of left menu) |
| 489 | 489 | |
| 490 | 490 | 'game_news_actual' => 259200, // How long announcement would be marked as "New". In seconds. Default - 3 days |
| 491 | - 'game_news_overview' => 3, // How much last news to show in Overview page |
|
| 491 | + 'game_news_overview' => 3, // How much last news to show in Overview page |
|
| 492 | 492 | // Noob protection |
| 493 | - 'game_noob_factor' => 5, // Multiplier to divide "stronger" and "weaker" users |
|
| 493 | + 'game_noob_factor' => 5, // Multiplier to divide "stronger" and "weaker" users |
|
| 494 | 494 | 'game_noob_points' => 5000, // Below this point user threated as noob. 0 to disable |
| 495 | 495 | |
| 496 | 496 | 'game_multiaccount_enabled' => 0, // 1 - allow interactions for players with same IP (multiaccounts) |
@@ -539,8 +539,8 @@ discard block |
||
| 539 | 539 | 'payment_currency_exchange_wmu' => 30, |
| 540 | 540 | 'payment_currency_exchange_wmz' => 1, |
| 541 | 541 | |
| 542 | - 'payment_lot_price' => 1, // Lot price in default currency |
|
| 543 | - 'payment_lot_size' => 2500, // Lot size. Also service as minimum amount of DM that could be bought with one transaction |
|
| 542 | + 'payment_lot_price' => 1, // Lot price in default currency |
|
| 543 | + 'payment_lot_size' => 2500, // Lot size. Also service as minimum amount of DM that could be bought with one transaction |
|
| 544 | 544 | |
| 545 | 545 | 'planet_teleport_cost' => 50000, // |
| 546 | 546 | 'planet_teleport_timeout' => 86400, // |
@@ -558,7 +558,7 @@ discard block |
||
| 558 | 558 | 'resource_multiplier' => 1, |
| 559 | 559 | |
| 560 | 560 | //Roleplay system |
| 561 | - 'rpg_bonus_divisor' => 10, // Amount of DM referral shoud get for partner have 1 DM bonus |
|
| 561 | + 'rpg_bonus_divisor' => 10, // Amount of DM referral shoud get for partner have 1 DM bonus |
|
| 562 | 562 | 'rpg_bonus_minimum' => 10000, // Minimum DM ammount for starting paying bonuses to affiliate |
| 563 | 563 | |
| 564 | 564 | // Black Market - General |
@@ -644,7 +644,7 @@ discard block |
||
| 644 | 644 | } |
| 645 | 645 | |
| 646 | 646 | public static function getInstance($gamePrefix = 'sn_', $table_name = 'config') { |
| 647 | - if(!isset(self::$cacheObject)) { |
|
| 647 | + if (!isset(self::$cacheObject)) { |
|
| 648 | 648 | $className = get_class(); |
| 649 | 649 | self::$cacheObject = new $className($gamePrefix, $table_name); |
| 650 | 650 | } |
@@ -78,8 +78,8 @@ discard block |
||
| 78 | 78 | $this->reset(); |
| 79 | 79 | $this->db = is_object($db) ? $db : classSupernova::$db; |
| 80 | 80 | |
| 81 | - foreach($this->table_check as $table_name) { |
|
| 82 | - if(empty($this->db->table_list[$table_name])) { |
|
| 81 | + foreach ($this->table_check as $table_name) { |
|
| 82 | + if (empty($this->db->table_list[$table_name])) { |
|
| 83 | 83 | die('Если вы видите это сообщение первый раз после обновления релиза - просто перегрузите страницу.<br /> |
| 84 | 84 | В противном случае - сообщите Администрации сервера об ошибке.<br/> |
| 85 | 85 | Не хватает таблицы для работы системы авторизации: ' . $table_name); |
@@ -103,7 +103,7 @@ discard block |
||
| 103 | 103 | */ |
| 104 | 104 | // OK v4.6 |
| 105 | 105 | public function password_change($old_password_unsafe, $new_password_unsafe, $salt_unsafe = null) { |
| 106 | - if(!$this->password_check($old_password_unsafe)) { |
|
| 106 | + if (!$this->password_check($old_password_unsafe)) { |
|
| 107 | 107 | return false; |
| 108 | 108 | } |
| 109 | 109 | |
@@ -124,7 +124,7 @@ discard block |
||
| 124 | 124 | // OK v4.5 |
| 125 | 125 | public function assign_from_db_row($row) { |
| 126 | 126 | $this->reset(); |
| 127 | - if(empty($row) || !is_array($row)) { |
|
| 127 | + if (empty($row) || !is_array($row)) { |
|
| 128 | 128 | return false; |
| 129 | 129 | } |
| 130 | 130 | $this->account_id = $row['account_id']; |
@@ -237,11 +237,11 @@ discard block |
||
| 237 | 237 | `account_email` = LOWER('{$email_safe}'), |
| 238 | 238 | `account_language` = '{$language_safe}'" |
| 239 | 239 | ); |
| 240 | - if(!$result) { |
|
| 240 | + if (!$result) { |
|
| 241 | 241 | throw new Exception(REGISTER_ERROR_ACCOUNT_CREATE, ERR_ERROR); |
| 242 | 242 | } |
| 243 | 243 | |
| 244 | - if(!($account_id = $this->db->db_insert_id())) { |
|
| 244 | + if (!($account_id = $this->db->db_insert_id())) { |
|
| 245 | 245 | throw new Exception(REGISTER_ERROR_ACCOUNT_CREATE, ERR_ERROR); |
| 246 | 246 | } |
| 247 | 247 | |
@@ -271,7 +271,7 @@ discard block |
||
| 271 | 271 | WHERE `account_id` = '{$account_id_safe}'" |
| 272 | 272 | ) ? true : false; |
| 273 | 273 | |
| 274 | - if($result) { |
|
| 274 | + if ($result) { |
|
| 275 | 275 | $result = $this->db_get_by_id($this->account_id); |
| 276 | 276 | } |
| 277 | 277 | |
@@ -351,7 +351,7 @@ discard block |
||
| 351 | 351 | public function metamatter_change($change_type, $metamatter, $comment = false, $already_changed = false) { |
| 352 | 352 | global $debug, $mm_change_legit, $config; |
| 353 | 353 | |
| 354 | - if(!$this->is_exists || !($metamatter = round(floatval($metamatter)))) { |
|
| 354 | + if (!$this->is_exists || !($metamatter = round(floatval($metamatter)))) { |
|
| 355 | 355 | $debug->error('Ошибка при попытке манипуляции с ММ'); |
| 356 | 356 | return false; |
| 357 | 357 | } |
@@ -360,7 +360,7 @@ discard block |
||
| 360 | 360 | |
| 361 | 361 | $mm_change_legit = true; |
| 362 | 362 | // $sn_data_metamatter_db_name = pname_resource_name(RES_METAMATTER); |
| 363 | - if($already_changed) { |
|
| 363 | + if ($already_changed) { |
|
| 364 | 364 | $metamatter_total_delta = 0; |
| 365 | 365 | $result = -1; |
| 366 | 366 | } else { |
@@ -373,13 +373,13 @@ discard block |
||
| 373 | 373 | ($metamatter_total_delta ? ", `account_immortal` = IF(`account_metamatter_total` + '{$metamatter_total_delta}' >= {$config->player_metamatter_immortal}, NOW(), `account_immortal`), `account_metamatter_total` = `account_metamatter_total` + '{$metamatter_total_delta}'" : '') . |
| 374 | 374 | " WHERE `account_id` = {$account_id_safe}" |
| 375 | 375 | ); |
| 376 | - if(!$result) { |
|
| 376 | + if (!$result) { |
|
| 377 | 377 | $debug->error("Error adjusting Metamatter for player ID {$this->account_id} (Player Not Found?) with {$metamatter}. Reason: {$comment}", 'Metamatter Change', 402); |
| 378 | 378 | } |
| 379 | 379 | $result = classSupernova::$db->db_affected_rows(); |
| 380 | 380 | } |
| 381 | 381 | |
| 382 | - if(empty(core_auth::$user['id'])) { |
|
| 382 | + if (empty(core_auth::$user['id'])) { |
|
| 383 | 383 | $user_list = PlayerToAccountTranslate::db_translate_get_users_from_account_list(core_auth::$main_provider->provider_id, $this->account_id); |
| 384 | 384 | reset($user_list); |
| 385 | 385 | $user_id_unsafe = key($user_list); |
@@ -388,30 +388,30 @@ discard block |
||
| 388 | 388 | } |
| 389 | 389 | $user_id_safe = $this->db->db_escape($user_id_unsafe); |
| 390 | 390 | |
| 391 | - if(!$result) { |
|
| 391 | + if (!$result) { |
|
| 392 | 392 | $debug->error("Error adjusting Metamatter for player ID {$this->account_id} (Player Not Found?) with {$metamatter}. Reason: {$comment}", 'Metamatter Change', 402); |
| 393 | 393 | } |
| 394 | 394 | |
| 395 | - if(!$already_changed) { |
|
| 395 | + if (!$already_changed) { |
|
| 396 | 396 | $this->account_metamatter += $metamatter; |
| 397 | 397 | $this->account_metamatter_total += $metamatter_total_delta; |
| 398 | 398 | } |
| 399 | 399 | |
| 400 | - if(is_array($comment)) { |
|
| 400 | + if (is_array($comment)) { |
|
| 401 | 401 | $comment = call_user_func_array('sprintf', $comment); |
| 402 | 402 | } |
| 403 | 403 | |
| 404 | 404 | $result = $this->db_mm_log_insert($comment, $change_type, $metamatter, $user_id_unsafe); |
| 405 | 405 | |
| 406 | - if($metamatter > 0 && !empty($user_id_safe)) { |
|
| 406 | + if ($metamatter > 0 && !empty($user_id_safe)) { |
|
| 407 | 407 | $old_referral = doquery("SELECT * FROM {{referrals}} WHERE `id` = {$user_id_safe} LIMIT 1 FOR UPDATE;", '', true); |
| 408 | - if($old_referral['id']) { |
|
| 408 | + if ($old_referral['id']) { |
|
| 409 | 409 | $dark_matter_from_metamatter = $metamatter * AFFILIATE_MM_TO_REFERRAL_DM; |
| 410 | 410 | doquery("UPDATE {{referrals}} SET dark_matter = dark_matter + '{$dark_matter_from_metamatter}' WHERE `id` = {$user_id_safe} LIMIT 1;"); |
| 411 | 411 | $new_referral = doquery("SELECT * FROM {{referrals}} WHERE `id` = {$user_id_safe} LIMIT 1;", '', true); |
| 412 | 412 | |
| 413 | 413 | $partner_bonus = floor($new_referral['dark_matter'] / $config->rpg_bonus_divisor) - ($old_referral['dark_matter'] >= $config->rpg_bonus_minimum ? floor($old_referral['dark_matter'] / $config->rpg_bonus_divisor) : 0); |
| 414 | - if($partner_bonus > 0 && $new_referral['dark_matter'] >= $config->rpg_bonus_minimum) { |
|
| 414 | + if ($partner_bonus > 0 && $new_referral['dark_matter'] >= $config->rpg_bonus_minimum) { |
|
| 415 | 415 | rpg_points_change($new_referral['id_partner'], RPG_REFERRAL_BOUGHT_MM, $partner_bonus, "Incoming MM From Referral ID {$user_id_safe}"); |
| 416 | 416 | } |
| 417 | 417 | } |
@@ -136,12 +136,12 @@ discard block |
||
| 136 | 136 | $this->prepare(); |
| 137 | 137 | |
| 138 | 138 | $this->manifest['active'] = false; |
| 139 | - if(!empty($this->config) && is_array($this->config['db'])) { |
|
| 139 | + if (!empty($this->config) && is_array($this->config['db'])) { |
|
| 140 | 140 | // БД, отличная от стандартной |
| 141 | 141 | $this->db = new db_mysql(); |
| 142 | 142 | |
| 143 | 143 | $this->db->sn_db_connect($this->config['db']); |
| 144 | - if($this->manifest['active'] = $this->db->connected) { |
|
| 144 | + if ($this->manifest['active'] = $this->db->connected) { |
|
| 145 | 145 | $this->provider_id = ACCOUNT_PROVIDER_CENTRAL; |
| 146 | 146 | |
| 147 | 147 | $this->domain = $this->config['domain']; |
@@ -155,7 +155,7 @@ discard block |
||
| 155 | 155 | } |
| 156 | 156 | |
| 157 | 157 | // Fallback to local DB |
| 158 | - if(!$this->manifest['active']) { |
|
| 158 | + if (!$this->manifest['active']) { |
|
| 159 | 159 | $this->db = classSupernova::$db; |
| 160 | 160 | |
| 161 | 161 | $this->provider_id = ACCOUNT_PROVIDER_LOCAL; |
@@ -211,7 +211,7 @@ discard block |
||
| 211 | 211 | // OK v4.5 |
| 212 | 212 | public function password_change($old_password_unsafe, $new_password_unsafe, $salt_unsafe = null) { |
| 213 | 213 | $result = parent::password_change($old_password_unsafe, $new_password_unsafe, $salt_unsafe); |
| 214 | - if($result) { |
|
| 214 | + if ($result) { |
|
| 215 | 215 | $this->cookie_set(); |
| 216 | 216 | } |
| 217 | 217 | |
@@ -241,12 +241,12 @@ discard block |
||
| 241 | 241 | protected function password_reset_send_code() { |
| 242 | 242 | global $lang, $config; |
| 243 | 243 | |
| 244 | - if(!$this->is_password_reset) { |
|
| 244 | + if (!$this->is_password_reset) { |
|
| 245 | 245 | return $this->account_login_status; |
| 246 | 246 | } |
| 247 | 247 | |
| 248 | 248 | // Проверяем поддержку сброса пароля |
| 249 | - if(!$this->is_feature_supported(AUTH_FEATURE_PASSWORD_RESET)) { |
|
| 249 | + if (!$this->is_feature_supported(AUTH_FEATURE_PASSWORD_RESET)) { |
|
| 250 | 250 | return $this->account_login_status; |
| 251 | 251 | } |
| 252 | 252 | |
@@ -256,7 +256,7 @@ discard block |
||
| 256 | 256 | unset($this->account); |
| 257 | 257 | $this->account = new Account($this->db); |
| 258 | 258 | |
| 259 | - if(!$this->account->db_get_by_email($email_unsafe)) { |
|
| 259 | + if (!$this->account->db_get_by_email($email_unsafe)) { |
|
| 260 | 260 | throw new Exception(PASSWORD_RESTORE_ERROR_EMAIL_NOT_EXISTS, ERR_ERROR); |
| 261 | 261 | // return $this->account_login_status; |
| 262 | 262 | } |
@@ -266,14 +266,14 @@ discard block |
||
| 266 | 266 | |
| 267 | 267 | // TODO - Проверять уровень доступа аккаунта! |
| 268 | 268 | // Аккаунты с АУТЛЕВЕЛ больше 0 - НЕ СБРАСЫВАЮТ ПАРОЛИ! |
| 269 | - foreach($user_list as $user_id => $user_data) { |
|
| 270 | - if($user_data['authlevel'] > AUTH_LEVEL_REGISTERED) { |
|
| 269 | + foreach ($user_list as $user_id => $user_data) { |
|
| 270 | + if ($user_data['authlevel'] > AUTH_LEVEL_REGISTERED) { |
|
| 271 | 271 | throw new Exception(PASSWORD_RESTORE_ERROR_ADMIN_ACCOUNT, ERR_ERROR); |
| 272 | 272 | } |
| 273 | 273 | } |
| 274 | 274 | |
| 275 | 275 | $confirmation = $this->confirmation->db_confirmation_get_latest_by_type_and_email(CONFIRM_PASSWORD_RESET, $email_unsafe); // OK 4.5 |
| 276 | - if(isset($confirmation['create_time']) && SN_TIME_NOW - strtotime($confirmation['create_time']) < PERIOD_MINUTE_10) { |
|
| 276 | + if (isset($confirmation['create_time']) && SN_TIME_NOW - strtotime($confirmation['create_time']) < PERIOD_MINUTE_10) { |
|
| 277 | 277 | throw new Exception(PASSWORD_RESTORE_ERROR_TOO_OFTEN, ERR_ERROR); |
| 278 | 278 | } |
| 279 | 279 | |
@@ -290,7 +290,7 @@ discard block |
||
| 290 | 290 | ); |
| 291 | 291 | |
| 292 | 292 | $result = $result ? PASSWORD_RESTORE_SUCCESS_CODE_SENT : PASSWORD_RESTORE_ERROR_SENDING; |
| 293 | - } catch(Exception $e) { |
|
| 293 | + } catch (Exception $e) { |
|
| 294 | 294 | sn_db_transaction_rollback(); |
| 295 | 295 | $result = $e->getMessage(); |
| 296 | 296 | } |
@@ -306,46 +306,46 @@ discard block |
||
| 306 | 306 | protected function password_reset_confirm() { |
| 307 | 307 | global $lang, $config; |
| 308 | 308 | |
| 309 | - if(!$this->is_password_reset_confirm) { |
|
| 309 | + if (!$this->is_password_reset_confirm) { |
|
| 310 | 310 | return $this->account_login_status; |
| 311 | 311 | } |
| 312 | 312 | |
| 313 | - if($this->account_login_status != LOGIN_UNDEFINED) { |
|
| 313 | + if ($this->account_login_status != LOGIN_UNDEFINED) { |
|
| 314 | 314 | return $this->account_login_status; |
| 315 | 315 | } |
| 316 | 316 | |
| 317 | 317 | // Проверяем поддержку сброса пароля |
| 318 | - if(!$this->is_feature_supported(AUTH_FEATURE_PASSWORD_RESET)) { |
|
| 318 | + if (!$this->is_feature_supported(AUTH_FEATURE_PASSWORD_RESET)) { |
|
| 319 | 319 | return $this->account_login_status; |
| 320 | 320 | } |
| 321 | 321 | |
| 322 | 322 | try { |
| 323 | 323 | $code_unsafe = sys_get_param_str_unsafe('password_reset_code'); |
| 324 | - if(empty($code_unsafe)) { |
|
| 324 | + if (empty($code_unsafe)) { |
|
| 325 | 325 | throw new Exception(PASSWORD_RESTORE_ERROR_CODE_EMPTY, ERR_ERROR); |
| 326 | 326 | } |
| 327 | 327 | |
| 328 | 328 | sn_db_transaction_start(); |
| 329 | 329 | $confirmation = $this->confirmation->db_confirmation_get_by_type_and_code(CONFIRM_PASSWORD_RESET, $code_unsafe); // OK 4.5 |
| 330 | 330 | |
| 331 | - if(empty($confirmation)) { |
|
| 331 | + if (empty($confirmation)) { |
|
| 332 | 332 | throw new Exception(PASSWORD_RESTORE_ERROR_CODE_WRONG, ERR_ERROR); |
| 333 | 333 | } |
| 334 | 334 | |
| 335 | - if(SN_TIME_NOW - strtotime($confirmation['create_time']) > AUTH_PASSWORD_RESET_CONFIRMATION_EXPIRE) { |
|
| 335 | + if (SN_TIME_NOW - strtotime($confirmation['create_time']) > AUTH_PASSWORD_RESET_CONFIRMATION_EXPIRE) { |
|
| 336 | 336 | throw new Exception(PASSWORD_RESTORE_ERROR_CODE_TOO_OLD, ERR_ERROR); |
| 337 | 337 | } |
| 338 | 338 | |
| 339 | 339 | unset($this->account); |
| 340 | 340 | $this->account = new Account($this->db); |
| 341 | 341 | |
| 342 | - if(!$this->account->db_get_by_email($confirmation['email'])) { |
|
| 342 | + if (!$this->account->db_get_by_email($confirmation['email'])) { |
|
| 343 | 343 | throw new Exception(PASSWORD_RESTORE_ERROR_CODE_OK_BUT_NO_ACCOUNT_FOR_EMAIL, ERR_ERROR); |
| 344 | 344 | } |
| 345 | 345 | |
| 346 | 346 | $new_password_unsafe = $this->make_random_password(); |
| 347 | 347 | $salt_unsafe = $this->password_salt_generate(); |
| 348 | - if(!$this->account->db_set_password($new_password_unsafe, $salt_unsafe)) { |
|
| 348 | + if (!$this->account->db_set_password($new_password_unsafe, $salt_unsafe)) { |
|
| 349 | 349 | // Ошибка смены пароля |
| 350 | 350 | throw new Exception(AUTH_ERROR_INTERNAL_PASSWORD_CHANGE_ON_RESTORE, ERR_ERROR); |
| 351 | 351 | } |
@@ -355,7 +355,7 @@ discard block |
||
| 355 | 355 | $this->cookie_set(); |
| 356 | 356 | $this->login_cookie(); |
| 357 | 357 | |
| 358 | - if($this->account_login_status == LOGIN_SUCCESS) { |
|
| 358 | + if ($this->account_login_status == LOGIN_SUCCESS) { |
|
| 359 | 359 | // TODO - НЕ ОБЯЗАТЕЛЬНО ОТПРАВЛЯТЬ ЧЕРЕЗ ЕМЕЙЛ! ЕСЛИ ЭТО ФЕЙСБУЧЕК ИЛИ ВКШЕЧКА - МОЖНО ЧЕРЕЗ ЛС ПИСАТЬ!! |
| 360 | 360 | $message_header = sprintf($lang['log_lost_email_title'], $config->game_name); |
| 361 | 361 | $message = sprintf($lang['log_lost_email_pass'], $config->game_name, $this->account->account_name, $new_password_unsafe); |
@@ -363,7 +363,7 @@ discard block |
||
| 363 | 363 | |
| 364 | 364 | // $users_translated = classSupernova::$auth->db_translate_get_users_from_account_list($this->provider_id, $this->account->account_id); // OK 4.5 |
| 365 | 365 | $users_translated = PlayerToAccountTranslate::db_translate_get_users_from_account_list($this->provider_id, $this->account->account_id); // OK 4.5 |
| 366 | - if(!empty($users_translated)) { |
|
| 366 | + if (!empty($users_translated)) { |
|
| 367 | 367 | // Отправляем в лички письмо о сбросе пароля |
| 368 | 368 | |
| 369 | 369 | // ПО ОПРЕДЕЛЕНИЮ в $users_translated только |
@@ -375,7 +375,7 @@ discard block |
||
| 375 | 375 | $message = sys_bbcodeParse($message) . '<br><br>'; |
| 376 | 376 | // msg_send_simple_message($found_provider->data[F_USER_ID], 0, SN_TIME_NOW, MSG_TYPE_ADMIN, $lang['sys_administration'], $lang['sys_login_register_message_title'], $message); |
| 377 | 377 | |
| 378 | - foreach($users_translated as $user_id => $providers_list) { |
|
| 378 | + foreach ($users_translated as $user_id => $providers_list) { |
|
| 379 | 379 | msg_send_simple_message($user_id, 0, SN_TIME_NOW, MSG_TYPE_ADMIN, $lang['sys_administration'], $lang['sys_login_register_message_title'], $message); |
| 380 | 380 | } |
| 381 | 381 | } else { |
@@ -430,7 +430,7 @@ discard block |
||
| 430 | 430 | $this->flog('Регистрация: начинаем. Провайдер ' . $this->provider_id); |
| 431 | 431 | |
| 432 | 432 | try { |
| 433 | - if(!$this->is_register) { |
|
| 433 | + if (!$this->is_register) { |
|
| 434 | 434 | $this->flog('Регистрация: не выставлен флаг регистрации - пропускаем'); |
| 435 | 435 | throw new Exception(LOGIN_UNDEFINED, ERR_ERROR); |
| 436 | 436 | } |
@@ -442,8 +442,8 @@ discard block |
||
| 442 | 442 | // $this->account_check_duplicate_name_or_email($this->input_login_unsafe, $this->input_email_unsafe); |
| 443 | 443 | |
| 444 | 444 | $this->account->db_get_by_name_or_email($this->input_login_unsafe, $this->input_email_unsafe); |
| 445 | - if($this->account->is_exists) { |
|
| 446 | - if($this->account->account_email == $this->input_email_unsafe) { |
|
| 445 | + if ($this->account->is_exists) { |
|
| 446 | + if ($this->account->account_email == $this->input_email_unsafe) { |
|
| 447 | 447 | throw new Exception(REGISTER_ERROR_EMAIL_EXISTS, ERR_ERROR); |
| 448 | 448 | } else { |
| 449 | 449 | throw new Exception(REGISTER_ERROR_ACCOUNT_NAME_EXISTS, ERR_ERROR); |
@@ -482,7 +482,7 @@ discard block |
||
| 482 | 482 | // А вот это пока не нужно. Трансляцией аккаунтов в юзеров и созданием новых юзеров для новозашедших аккаунтов занимается Auth |
| 483 | 483 | // $this->register_account(); |
| 484 | 484 | sn_db_transaction_commit(); |
| 485 | - } catch(Exception $e) { |
|
| 485 | + } catch (Exception $e) { |
|
| 486 | 486 | sn_db_transaction_rollback(); |
| 487 | 487 | $this->account_login_status == LOGIN_UNDEFINED ? $this->account_login_status = $e->getMessage() : false; |
| 488 | 488 | } |
@@ -498,15 +498,15 @@ discard block |
||
| 498 | 498 | */ |
| 499 | 499 | // OK v4.5 |
| 500 | 500 | protected function login_cookie() { |
| 501 | - if($this->account_login_status != LOGIN_UNDEFINED) { |
|
| 501 | + if ($this->account_login_status != LOGIN_UNDEFINED) { |
|
| 502 | 502 | return $this->account_login_status; |
| 503 | 503 | } |
| 504 | 504 | |
| 505 | 505 | // Пытаемся войти по куке |
| 506 | - if(!empty($_COOKIE[$this->cookie_name])) { |
|
| 506 | + if (!empty($_COOKIE[$this->cookie_name])) { |
|
| 507 | 507 | // Кто хотел - уже сконвертировал старые куки в новые |
| 508 | 508 | // Update оказывается - не все... |
| 509 | - if(count(explode("/%/", $_COOKIE[$this->cookie_name])) < 4) { |
|
| 509 | + if (count(explode("/%/", $_COOKIE[$this->cookie_name])) < 4) { |
|
| 510 | 510 | list($account_id_unsafe, $cookie_password_hash_salted, $user_remember_me) = explode(AUTH_COOKIE_DELIMETER, $_COOKIE[$this->cookie_name]); |
| 511 | 511 | } else { |
| 512 | 512 | list($account_id_unsafe, $user_name, $cookie_password_hash_salted, $user_remember_me) = explode("/%/", $_COOKIE[$this->cookie_name]); |
@@ -514,7 +514,7 @@ discard block |
||
| 514 | 514 | |
| 515 | 515 | // $account = $this->db_account_get_by_id($account_id_unsafe); |
| 516 | 516 | |
| 517 | - if( |
|
| 517 | + if ( |
|
| 518 | 518 | $this->account->db_get_by_id($account_id_unsafe) |
| 519 | 519 | && ($this->password_encode_for_cookie($this->account->account_password) == $cookie_password_hash_salted) |
| 520 | 520 | ) { |
@@ -524,7 +524,7 @@ discard block |
||
| 524 | 524 | } |
| 525 | 525 | } |
| 526 | 526 | |
| 527 | - if($this->account_login_status != LOGIN_SUCCESS) { |
|
| 527 | + if ($this->account_login_status != LOGIN_SUCCESS) { |
|
| 528 | 528 | // Невалидная кука - чистим |
| 529 | 529 | $this->cookie_clear(); |
| 530 | 530 | } |
@@ -542,13 +542,13 @@ discard block |
||
| 542 | 542 | protected function login_username() { |
| 543 | 543 | // TODO - Логин по старым именам |
| 544 | 544 | try { |
| 545 | - if(!$this->is_login) { |
|
| 545 | + if (!$this->is_login) { |
|
| 546 | 546 | $this->flog('Логин: не выставлен флаг входа в игру - это не логин'); |
| 547 | 547 | throw new Exception(LOGIN_UNDEFINED, ERR_ERROR); |
| 548 | 548 | } |
| 549 | 549 | |
| 550 | 550 | // TODO Пустое имя аккаунта |
| 551 | - if(!$this->input_login_unsafe) { |
|
| 551 | + if (!$this->input_login_unsafe) { |
|
| 552 | 552 | throw new Exception(LOGIN_UNDEFINED, ERR_ERROR); |
| 553 | 553 | } |
| 554 | 554 | |
@@ -558,11 +558,11 @@ discard block |
||
| 558 | 558 | // if(empty($account)) { |
| 559 | 559 | // throw new Exception(LOGIN_ERROR_USERNAME, ERR_ERROR); |
| 560 | 560 | // } |
| 561 | - if(!$this->account->db_get_by_name($this->input_login_unsafe) && !$this->account->db_get_by_email($this->input_login_unsafe)) { |
|
| 561 | + if (!$this->account->db_get_by_name($this->input_login_unsafe) && !$this->account->db_get_by_email($this->input_login_unsafe)) { |
|
| 562 | 562 | throw new Exception(LOGIN_ERROR_USERNAME, ERR_ERROR); |
| 563 | 563 | } |
| 564 | 564 | |
| 565 | - if(!$this->account->password_check($this->input_login_password_raw)) { |
|
| 565 | + if (!$this->account->password_check($this->input_login_password_raw)) { |
|
| 566 | 566 | throw new Exception(LOGIN_ERROR_PASSWORD, ERR_ERROR); |
| 567 | 567 | } |
| 568 | 568 | |
@@ -570,7 +570,7 @@ discard block |
||
| 570 | 570 | |
| 571 | 571 | $this->cookie_set(); |
| 572 | 572 | $this->account_login_status = LOGIN_SUCCESS; |
| 573 | - } catch(Exception $e) { |
|
| 573 | + } catch (Exception $e) { |
|
| 574 | 574 | $this->account_login_status == LOGIN_UNDEFINED ? $this->account_login_status = $e->getMessage() : false; |
| 575 | 575 | } |
| 576 | 576 | |
@@ -592,11 +592,11 @@ discard block |
||
| 592 | 592 | protected function cookie_set($account_to_impersonate = null) { |
| 593 | 593 | $this_account = is_object($account_to_impersonate) ? $account_to_impersonate : $this->account; |
| 594 | 594 | |
| 595 | - if(!is_object($this_account) || !$this_account->is_exists) { |
|
| 595 | + if (!is_object($this_account) || !$this_account->is_exists) { |
|
| 596 | 596 | throw new Exception(LOGIN_ERROR_NO_ACCOUNT_FOR_COOKIE_SET, ERR_ERROR); |
| 597 | 597 | } |
| 598 | 598 | |
| 599 | - if(is_object($account_to_impersonate) && $account_to_impersonate->is_exists) { |
|
| 599 | + if (is_object($account_to_impersonate) && $account_to_impersonate->is_exists) { |
|
| 600 | 600 | sn_setcookie($this->cookie_name_impersonate, $_COOKIE[$this->cookie_name], SN_TIME_NOW + PERIOD_YEAR, $this->sn_root_path, $this->domain); |
| 601 | 601 | } |
| 602 | 602 | |
@@ -614,7 +614,7 @@ discard block |
||
| 614 | 614 | // OK v4.1 |
| 615 | 615 | protected function cookie_clear() { |
| 616 | 616 | // Автоматически вообще-то - если установлена кука имперсонатора - то чистим обычную, а куку имперсонатора - копируем в неё |
| 617 | - if(!empty($_COOKIE[$this->cookie_name_impersonate])) { |
|
| 617 | + if (!empty($_COOKIE[$this->cookie_name_impersonate])) { |
|
| 618 | 618 | sn_setcookie($this->cookie_name, $_COOKIE[$this->cookie_name_impersonate], SN_TIME_NOW + PERIOD_YEAR, $this->sn_root_path, $this->domain); |
| 619 | 619 | sn_setcookie($this->cookie_name_impersonate, '', SN_TIME_NOW - PERIOD_WEEK, $this->sn_root_path, $this->domain); |
| 620 | 620 | } else { |
@@ -633,10 +633,10 @@ discard block |
||
| 633 | 633 | protected function login_validate_input() { |
| 634 | 634 | // Проверяем, что бы в начале и конце не было пустых символов |
| 635 | 635 | // TODO - при копировании Эксель -> Опера - в конце образуются пустые места. Это не должно быть проблемой! Вынести проверку пароля в регистрацию! |
| 636 | - if($this->input_login_password_raw != trim($this->input_login_password_raw)) { |
|
| 636 | + if ($this->input_login_password_raw != trim($this->input_login_password_raw)) { |
|
| 637 | 637 | throw new Exception(LOGIN_ERROR_PASSWORD_TRIMMED, ERR_ERROR); |
| 638 | 638 | } |
| 639 | - if(!$this->input_login_password_raw) { |
|
| 639 | + if (!$this->input_login_password_raw) { |
|
| 640 | 640 | throw new Exception(LOGIN_ERROR_PASSWORD_EMPTY, ERR_ERROR); |
| 641 | 641 | } |
| 642 | 642 | } |
@@ -652,37 +652,37 @@ discard block |
||
| 652 | 652 | $this->login_validate_input(); |
| 653 | 653 | |
| 654 | 654 | // Если нет имени пользователя - NO GO! |
| 655 | - if(!$this->input_login_unsafe) { |
|
| 655 | + if (!$this->input_login_unsafe) { |
|
| 656 | 656 | throw new Exception(LOGIN_ERROR_USERNAME_EMPTY, ERR_ERROR); |
| 657 | 657 | } |
| 658 | 658 | // Если логин имеет запрещенные символы - NO GO! |
| 659 | - if(strpbrk($this->input_login_unsafe, LOGIN_REGISTER_CHARACTERS_PROHIBITED)) { |
|
| 659 | + if (strpbrk($this->input_login_unsafe, LOGIN_REGISTER_CHARACTERS_PROHIBITED)) { |
|
| 660 | 660 | throw new Exception(LOGIN_ERROR_USERNAME_RESTRICTED_CHARACTERS, ERR_ERROR); |
| 661 | 661 | } |
| 662 | 662 | // Если логин меньше минимальной длины - NO GO! |
| 663 | - if(strlen($this->input_login_unsafe) < LOGIN_LENGTH_MIN) { |
|
| 663 | + if (strlen($this->input_login_unsafe) < LOGIN_LENGTH_MIN) { |
|
| 664 | 664 | throw new Exception(REGISTER_ERROR_USERNAME_SHORT, ERR_ERROR); |
| 665 | 665 | } |
| 666 | 666 | // Если пароль меньше минимальной длины - NO GO! |
| 667 | - if(strlen($this->input_login_password_raw) < PASSWORD_LENGTH_MIN) { |
|
| 667 | + if (strlen($this->input_login_password_raw) < PASSWORD_LENGTH_MIN) { |
|
| 668 | 668 | throw new Exception(REGISTER_ERROR_PASSWORD_INSECURE, ERR_ERROR); |
| 669 | 669 | } |
| 670 | 670 | // Если пароль имеет пробельные символы в начале или конце - NO GO! |
| 671 | - if($this->input_login_password_raw != trim($this->input_login_password_raw)) { |
|
| 671 | + if ($this->input_login_password_raw != trim($this->input_login_password_raw)) { |
|
| 672 | 672 | throw new Exception(LOGIN_ERROR_PASSWORD_TRIMMED, ERR_ERROR); |
| 673 | 673 | } |
| 674 | 674 | // Если пароль не совпадает с подтверждением - NO GO! То, что у пароля нет пробельных символов в начале/конце - мы уже проверили выше |
| 675 | 675 | //Если они есть у повтора - значит пароль и повтор не совпадут |
| 676 | - if($this->input_login_password_raw <> $this->input_login_password_raw_repeat) { |
|
| 676 | + if ($this->input_login_password_raw <> $this->input_login_password_raw_repeat) { |
|
| 677 | 677 | throw new Exception(REGISTER_ERROR_PASSWORD_DIFFERENT, ERR_ERROR); |
| 678 | 678 | } |
| 679 | 679 | // Если нет емейла - NO GO! |
| 680 | 680 | // TODO - регистрация без емейла |
| 681 | - if(!$this->input_email_unsafe) { |
|
| 681 | + if (!$this->input_email_unsafe) { |
|
| 682 | 682 | throw new Exception(REGISTER_ERROR_EMAIL_EMPTY, ERR_ERROR); |
| 683 | 683 | } |
| 684 | 684 | // Если емейл не является емейлом - NO GO! |
| 685 | - if(!is_email($this->input_email_unsafe)) { |
|
| 685 | + if (!is_email($this->input_email_unsafe)) { |
|
| 686 | 686 | throw new Exception(REGISTER_ERROR_EMAIL_WRONG, ERR_ERROR); |
| 687 | 687 | } |
| 688 | 688 | } |
@@ -715,7 +715,7 @@ discard block |
||
| 715 | 715 | return core_auth::make_random_password(); |
| 716 | 716 | } |
| 717 | 717 | protected function flog($message, $die = false) { |
| 718 | - if(!defined('DEBUG_AUTH') || !DEBUG_AUTH) { |
|
| 718 | + if (!defined('DEBUG_AUTH') || !DEBUG_AUTH) { |
|
| 719 | 719 | return; |
| 720 | 720 | } |
| 721 | 721 | list($called, $caller) = debug_backtrace(false); |
@@ -731,7 +731,7 @@ discard block |
||
| 731 | 731 | $_SERVER['SERVER_NAME'] == 'localhost' ? print("<div class='debug'>$message - $caller_name\r\n</div>") : false; |
| 732 | 732 | |
| 733 | 733 | classSupernova::log_file("$message - $caller_name"); |
| 734 | - if($die) { |
|
| 734 | + if ($die) { |
|
| 735 | 735 | // pdump($caller); |
| 736 | 736 | // pdump(debug_backtrace(false)); |
| 737 | 737 | $die && die("<div class='negative'>СТОП! Функция {$caller_name} при вызове в " . get_called_class() . " (располагается в " . get_class() . "). СООБЩИТЕ АДМИНИСТРАЦИИ!</div>"); |
@@ -28,13 +28,13 @@ discard block |
||
| 28 | 28 | |
| 29 | 29 | $this->container = array(); |
| 30 | 30 | |
| 31 | - if(classSupernova::$cache->_MODE != CACHER_NO_CACHE && !classSupernova::$config->locale_cache_disable) { |
|
| 31 | + if (classSupernova::$cache->_MODE != CACHER_NO_CACHE && !classSupernova::$config->locale_cache_disable) { |
|
| 32 | 32 | $this->cache = classSupernova::$cache; |
| 33 | 33 | classSupernova::log_file('locale.__constructor: Cache is present'); |
| 34 | 34 | //$this->cache->unset_by_prefix($this->cache_prefix); // TODO - remove? 'cause debug! |
| 35 | 35 | } |
| 36 | 36 | |
| 37 | - if($enable_stat_usage && empty($this->stat_usage)) { |
|
| 37 | + if ($enable_stat_usage && empty($this->stat_usage)) { |
|
| 38 | 38 | $this->enable_stat_usage = $enable_stat_usage; |
| 39 | 39 | $this->usage_stat_load(); |
| 40 | 40 | // TODO shutdown function |
@@ -60,9 +60,9 @@ discard block |
||
| 60 | 60 | unset($fallback[$this->active]); |
| 61 | 61 | |
| 62 | 62 | // Проходим по оставшимся локалям |
| 63 | - foreach($fallback as $try_language) { |
|
| 63 | + foreach ($fallback as $try_language) { |
|
| 64 | 64 | // Если нет такой строки - пытаемся вытащить из кэша |
| 65 | - if(!isset($this->container[$try_language][$offset]) && $this->cache) { |
|
| 65 | + if (!isset($this->container[$try_language][$offset]) && $this->cache) { |
|
| 66 | 66 | $this->container[$try_language][$offset] = $this->cache->__get($this->cache_prefix . $try_language . '_' . $offset); |
| 67 | 67 | // Записываем результат работы кэша |
| 68 | 68 | $locale_cache_statistic['queries']++; |
@@ -71,7 +71,7 @@ discard block |
||
| 71 | 71 | } |
| 72 | 72 | |
| 73 | 73 | // Если мы как-то где-то нашли строку... |
| 74 | - if(isset($this->container[$try_language][$offset])) { |
|
| 74 | + if (isset($this->container[$try_language][$offset])) { |
|
| 75 | 75 | // ...значит она получена в результате фоллбэка и записываем её в кэш и контейнер |
| 76 | 76 | $this[$offset] = $this->container[$try_language][$offset]; |
| 77 | 77 | $locale_cache_statistic['fallbacks']++; |
@@ -87,16 +87,16 @@ discard block |
||
| 87 | 87 | $this->container[$this->active][] = $value; |
| 88 | 88 | } else { |
| 89 | 89 | $this->container[$this->active][$offset] = $value; |
| 90 | - if($this->cache) { |
|
| 90 | + if ($this->cache) { |
|
| 91 | 91 | $this->cache->__set($this->cache_prefix_lang . $offset, $value); |
| 92 | 92 | } |
| 93 | 93 | } |
| 94 | 94 | } |
| 95 | 95 | public function offsetExists($offset) { |
| 96 | 96 | // Шорткат если у нас уже есть строка в памяти PHP |
| 97 | - if(!isset($this->container[$this->active][$offset])) { |
|
| 97 | + if (!isset($this->container[$this->active][$offset])) { |
|
| 98 | 98 | // pdump($this->cache_prefix_lang . $offset); |
| 99 | - if(!$this->cache || !($this->container[$this->active][$offset] = $this->cache->__get($this->cache_prefix_lang . $offset))) { |
|
| 99 | + if (!$this->cache || !($this->container[$this->active][$offset] = $this->cache->__get($this->cache_prefix_lang . $offset))) { |
|
| 100 | 100 | // pdump($this->cache_prefix_lang . $offset); |
| 101 | 101 | // Если нету такой строки - делаем фоллбэк |
| 102 | 102 | $this->locale_string_fallback($offset); |
@@ -112,7 +112,7 @@ discard block |
||
| 112 | 112 | } |
| 113 | 113 | public function offsetGet($offset) { |
| 114 | 114 | $value = $this->offsetExists($offset) ? $this->container[$this->active][$offset] : null; |
| 115 | - if($this->enable_stat_usage) { |
|
| 115 | + if ($this->enable_stat_usage) { |
|
| 116 | 116 | $this->usage_stat_log($offset, $value); |
| 117 | 117 | } |
| 118 | 118 | return $value; |
@@ -129,24 +129,24 @@ discard block |
||
| 129 | 129 | public function usage_stat_load() { |
| 130 | 130 | global $sn_cache; |
| 131 | 131 | |
| 132 | - $this->stat_usage = $sn_cache->lng_stat_usage = array(); // TODO for debug |
|
| 133 | - if(empty($this->stat_usage)) { |
|
| 132 | + $this->stat_usage = $sn_cache->lng_stat_usage = array(); // TODO for debug |
|
| 133 | + if (empty($this->stat_usage)) { |
|
| 134 | 134 | $query = doquery("SELECT * FROM {{lng_usage_stat}}"); |
| 135 | - while($row = db_fetch($query)) { |
|
| 135 | + while ($row = db_fetch($query)) { |
|
| 136 | 136 | $this->stat_usage[$row['lang_code'] . ':' . $row['string_id'] . ':' . $row['file'] . ':' . $row['line']] = $row['is_empty']; |
| 137 | 137 | } |
| 138 | 138 | } |
| 139 | 139 | } |
| 140 | 140 | public function usage_stat_save() { |
| 141 | - if(!empty($this->stat_usage_new)) { |
|
| 141 | + if (!empty($this->stat_usage_new)) { |
|
| 142 | 142 | global $sn_cache; |
| 143 | 143 | $sn_cache->lng_stat_usage = $this->stat_usage; |
| 144 | 144 | doquery("SELECT 1 FROM {{lng_usage_stat}} LIMIT 1"); |
| 145 | - foreach($this->stat_usage_new as &$value) { |
|
| 146 | - foreach($value as &$value2) { |
|
| 145 | + foreach ($this->stat_usage_new as &$value) { |
|
| 146 | + foreach ($value as &$value2) { |
|
| 147 | 147 | $value2 = '"' . db_escape($value2) . '"'; |
| 148 | 148 | } |
| 149 | - $value = '(' . implode(',', $value) .')'; |
|
| 149 | + $value = '(' . implode(',', $value) . ')'; |
|
| 150 | 150 | } |
| 151 | 151 | doquery("REPLACE INTO {{lng_usage_stat}} (lang_code,string_id,`file`,line,is_empty,locale) VALUES " . implode(',', $this->stat_usage_new)); |
| 152 | 152 | } |
@@ -159,7 +159,7 @@ discard block |
||
| 159 | 159 | $file = str_replace('\\', '/', substr($trace[1]['file'], strlen(SN_ROOT_PHYSICAL) - 1)); |
| 160 | 160 | |
| 161 | 161 | $string_id = $this->active . ':' . $offset . ':' . $file . ':' . $trace[1]['line']; |
| 162 | - if(!isset($this->stat_usage[$string_id]) || $this->stat_usage[$string_id] != $empty) { |
|
| 162 | + if (!isset($this->stat_usage[$string_id]) || $this->stat_usage[$string_id] != $empty) { |
|
| 163 | 163 | $this->stat_usage[$string_id] = empty($value); |
| 164 | 164 | $this->stat_usage_new[] = array( |
| 165 | 165 | 'lang_code' => $this->active, |
@@ -199,11 +199,11 @@ discard block |
||
| 199 | 199 | $cache_file_key = $this->cache_prefix_lang . '__' . $filename; |
| 200 | 200 | |
| 201 | 201 | // Подключен ли внешний кэш? |
| 202 | - if($this->cache) { |
|
| 202 | + if ($this->cache) { |
|
| 203 | 203 | // Загружен ли уже данный файл? |
| 204 | 204 | $cache_file_status = $this->cache->__get($cache_file_key); |
| 205 | 205 | classSupernova::log_file("locale.include: Cache - '{$filename}' has key '{$cache_file_key}' and is " . ($cache_file_status ? 'already loaded - EXIT' : 'EMPTY'), $cache_file_status ? -1 : 0); |
| 206 | - if($cache_file_status) { |
|
| 206 | + if ($cache_file_status) { |
|
| 207 | 207 | // Если да - повторять загрузку нет смысла |
| 208 | 208 | return null; |
| 209 | 209 | } |
@@ -217,35 +217,35 @@ discard block |
||
| 217 | 217 | $this->make_fallback($language); |
| 218 | 218 | |
| 219 | 219 | $file_path = ''; |
| 220 | - foreach($this->fallback as $lang_try) { |
|
| 221 | - if(!$lang_try /* || isset($language_tried[$lang_try]) */) { |
|
| 220 | + foreach ($this->fallback as $lang_try) { |
|
| 221 | + if (!$lang_try /* || isset($language_tried[$lang_try]) */) { |
|
| 222 | 222 | continue; |
| 223 | 223 | } |
| 224 | 224 | |
| 225 | - if($file_path = $this->lng_try_filepath($path, "language/{$lang_try}/{$filename_ext}")) { |
|
| 225 | + if ($file_path = $this->lng_try_filepath($path, "language/{$lang_try}/{$filename_ext}")) { |
|
| 226 | 226 | break; |
| 227 | 227 | } |
| 228 | 228 | |
| 229 | - if($file_path = $this->lng_try_filepath($path, "language/{$filename}_{$lang_try}{$ext}")) { |
|
| 229 | + if ($file_path = $this->lng_try_filepath($path, "language/{$filename}_{$lang_try}{$ext}")) { |
|
| 230 | 230 | break; |
| 231 | 231 | } |
| 232 | 232 | |
| 233 | 233 | $file_path = ''; |
| 234 | 234 | } |
| 235 | 235 | |
| 236 | - if($file_path) { |
|
| 236 | + if ($file_path) { |
|
| 237 | 237 | include($file_path); |
| 238 | 238 | |
| 239 | - if(!empty($a_lang_array)) { |
|
| 239 | + if (!empty($a_lang_array)) { |
|
| 240 | 240 | $this->merge($a_lang_array); |
| 241 | 241 | |
| 242 | 242 | // Загрузка данных из файла в кэш |
| 243 | - if($this->cache) { |
|
| 243 | + if ($this->cache) { |
|
| 244 | 244 | classSupernova::log_file("Locale: loading '{$filename}' into cache"); |
| 245 | - foreach($a_lang_array as $key => $value) { |
|
| 245 | + foreach ($a_lang_array as $key => $value) { |
|
| 246 | 246 | $value_cache_key = $this->cache_prefix_lang . $key; |
| 247 | - if($this->cache->__isset($value_cache_key)) { |
|
| 248 | - if(is_array($value)) { |
|
| 247 | + if ($this->cache->__isset($value_cache_key)) { |
|
| 248 | + if (is_array($value)) { |
|
| 249 | 249 | $alt_value = $this->cache->__get($value_cache_key); |
| 250 | 250 | $value = array_replace_recursive($alt_value, $value); |
| 251 | 251 | // pdump($alt_value, $alt_value); |
@@ -256,7 +256,7 @@ discard block |
||
| 256 | 256 | } |
| 257 | 257 | } |
| 258 | 258 | |
| 259 | - if($this->cache) { |
|
| 259 | + if ($this->cache) { |
|
| 260 | 260 | $this->cache->__set($cache_file_key, true); |
| 261 | 261 | } |
| 262 | 262 | |
@@ -269,14 +269,14 @@ discard block |
||
| 269 | 269 | } |
| 270 | 270 | |
| 271 | 271 | public function lng_load_i18n($i18n) { |
| 272 | - if(!isset($i18n)) { |
|
| 272 | + if (!isset($i18n)) { |
|
| 273 | 273 | return; |
| 274 | 274 | } |
| 275 | 275 | |
| 276 | - foreach($i18n as $i18n_data) { |
|
| 277 | - if(is_string($i18n_data)) { |
|
| 276 | + foreach ($i18n as $i18n_data) { |
|
| 277 | + if (is_string($i18n_data)) { |
|
| 278 | 278 | $this->lng_include($i18n_data); |
| 279 | - } elseif(is_array($i18n_data)) { |
|
| 279 | + } elseif (is_array($i18n_data)) { |
|
| 280 | 280 | $this->lng_include($i18n_data['file'], $i18n_data['path']); |
| 281 | 281 | } |
| 282 | 282 | } |
@@ -294,7 +294,7 @@ discard block |
||
| 294 | 294 | |
| 295 | 295 | classSupernova::log_file("locale.switch: Trying to switch language to '{$language_new}'"); |
| 296 | 296 | |
| 297 | - if($language_new == $this->active) { |
|
| 297 | + if ($language_new == $this->active) { |
|
| 298 | 298 | classSupernova::log_file("locale.switch: New language '{$language_new}' is equal to current language '{$this->active}' - EXIT", -1); |
| 299 | 299 | return false; |
| 300 | 300 | } |
@@ -305,10 +305,10 @@ discard block |
||
| 305 | 305 | $this['LANG_INFO'] = $this->lng_get_info($this->active); |
| 306 | 306 | $this->make_fallback($this->active); |
| 307 | 307 | |
| 308 | - if($this->cache) { |
|
| 308 | + if ($this->cache) { |
|
| 309 | 309 | $cache_lang_init_status = $this->cache->__get($this->cache_prefix_lang . '__INIT'); |
| 310 | 310 | classSupernova::log_file("locale.switch: Cache for '{$this->active}' prefixed '{$this->cache_prefix_lang}' is " . ($cache_lang_init_status ? 'already loaded. Doing nothing - EXIT' : 'EMPTY'), $cache_lang_init_status ? -1 : 0); |
| 311 | - if($cache_lang_init_status) { |
|
| 311 | + if ($cache_lang_init_status) { |
|
| 312 | 312 | return false; |
| 313 | 313 | } |
| 314 | 314 | |
@@ -324,7 +324,7 @@ discard block |
||
| 324 | 324 | // Loading global language files |
| 325 | 325 | $this->lng_load_i18n($sn_mvc['i18n']['']); |
| 326 | 326 | |
| 327 | - if($this->cache) { |
|
| 327 | + if ($this->cache) { |
|
| 328 | 328 | classSupernova::log_file("locale.switch: Cache - setting flag " . $this->cache_prefix_lang . '__INIT'); |
| 329 | 329 | $this->cache->__set($this->cache_prefix_lang . '__INIT', true); |
| 330 | 330 | } |
@@ -338,7 +338,7 @@ discard block |
||
| 338 | 338 | public function lng_get_info($entry) { |
| 339 | 339 | $file_name = SN_ROOT_PHYSICAL . 'language/' . $entry . '/language.mo.php'; |
| 340 | 340 | $lang_info = array(); |
| 341 | - if(file_exists($file_name)) { |
|
| 341 | + if (file_exists($file_name)) { |
|
| 342 | 342 | include($file_name); |
| 343 | 343 | } |
| 344 | 344 | |
@@ -346,15 +346,15 @@ discard block |
||
| 346 | 346 | } |
| 347 | 347 | |
| 348 | 348 | public function lng_get_list() { |
| 349 | - if(empty($this->lang_list)) { |
|
| 349 | + if (empty($this->lang_list)) { |
|
| 350 | 350 | $this->lang_list = array(); |
| 351 | 351 | |
| 352 | 352 | $path = SN_ROOT_PHYSICAL . 'language/'; |
| 353 | 353 | $dir = dir($path); |
| 354 | - while(false !== ($entry = $dir->read())) { |
|
| 355 | - if(is_dir($path . $entry) && $entry[0] != '.') { |
|
| 354 | + while (false !== ($entry = $dir->read())) { |
|
| 355 | + if (is_dir($path . $entry) && $entry[0] != '.') { |
|
| 356 | 356 | $lang_info = $this->lng_get_info($entry); |
| 357 | - if($lang_info['LANG_NAME_ISO2'] == $entry) { |
|
| 357 | + if ($lang_info['LANG_NAME_ISO2'] == $entry) { |
|
| 358 | 358 | $this->lang_list[$lang_info['LANG_NAME_ISO2']] = $lang_info; |
| 359 | 359 | } |
| 360 | 360 | } |