@@ -29,7 +29,7 @@ |
||
| 29 | 29 | */ |
| 30 | 30 | protected $_repository; |
| 31 | 31 | |
| 32 | - /** |
|
| 32 | + /** |
|
| 33 | 33 | * @var ContainerPlus $_oldRepo |
| 34 | 34 | */ |
| 35 | 35 | protected $_oldRepo; |
@@ -86,7 +86,7 @@ |
||
| 86 | 86 | |
| 87 | 87 | public function get($entityClass, $id) { |
| 88 | 88 | $entityIndex = get_class($entityClass) . '\\' . $id; |
| 89 | - if(!isset($this->_repository[$entityIndex])) { |
|
| 89 | + if (!isset($this->_repository[$entityIndex])) { |
|
| 90 | 90 | |
| 91 | 91 | } |
| 92 | 92 | |
@@ -11,7 +11,7 @@ |
||
| 11 | 11 | class SnBootstrap { |
| 12 | 12 | |
| 13 | 13 | public static function install_benchmark() { |
| 14 | - register_shutdown_function(function () { |
|
| 14 | + register_shutdown_function(function() { |
|
| 15 | 15 | if (defined('IN_AJAX')) { |
| 16 | 16 | return; |
| 17 | 17 | } |
@@ -58,7 +58,7 @@ |
||
| 58 | 58 | $config->pass()->game_disable = GAME_DISABLE_STAT; |
| 59 | 59 | |
| 60 | 60 | $statMinimalInterval = intval($config->pass()->stats_minimal_interval); |
| 61 | - $config->pass()->var_stat_update_end= date(FMT_DATE_TIME_SQL, SN_TIME_NOW + ($statMinimalInterval ? $statMinimalInterval : STATS_RUN_INTERVAL_MINIMUM)); |
|
| 61 | + $config->pass()->var_stat_update_end = date(FMT_DATE_TIME_SQL, SN_TIME_NOW + ($statMinimalInterval ? $statMinimalInterval : STATS_RUN_INTERVAL_MINIMUM)); |
|
| 62 | 62 | $config->pass()->var_stat_update_msg = 'Update started'; |
| 63 | 63 | sn_db_transaction_commit(); |
| 64 | 64 | |
@@ -22,11 +22,11 @@ |
||
| 22 | 22 | |
| 23 | 23 | define('IN_AJAX', true); |
| 24 | 24 | |
| 25 | -if(($result = StatUpdateLauncher::scheduler_process()) && !defined('IN_ADMIN')) { |
|
| 25 | +if (($result = StatUpdateLauncher::scheduler_process()) && !defined('IN_ADMIN')) { |
|
| 26 | 26 | $result = htmlspecialchars($result, ENT_QUOTES, 'UTF-8'); |
| 27 | 27 | print(json_encode($result)); |
| 28 | 28 | } |
| 29 | 29 | |
| 30 | -if(!defined('IN_ADMIN')) { |
|
| 30 | +if (!defined('IN_ADMIN')) { |
|
| 31 | 31 | die(); |
| 32 | 32 | } |
@@ -7,9 +7,9 @@ discard block |
||
| 7 | 7 | * |
| 8 | 8 | */ |
| 9 | 9 | |
| 10 | -define('INSIDE' , true); |
|
| 11 | -define('INSTALL' , false); |
|
| 12 | -define('IN_ADMIN' , true); |
|
| 10 | +define('INSIDE', true); |
|
| 11 | +define('INSTALL', false); |
|
| 12 | +define('IN_ADMIN', true); |
|
| 13 | 13 | |
| 14 | 14 | require('../common.' . substr(strrchr(__FILE__, '.'), 1)); |
| 15 | 15 | |
@@ -20,12 +20,12 @@ discard block |
||
| 20 | 20 | function adm_lng_assign_string($lang_id, $locale_string_name, $value) { |
| 21 | 21 | global $locale_string_template, $languages_info, $languages, $domain; |
| 22 | 22 | |
| 23 | - if(is_array($value)) { |
|
| 24 | - foreach($value as $sub_key => $sub_value) { |
|
| 23 | + if (is_array($value)) { |
|
| 24 | + foreach ($value as $sub_key => $sub_value) { |
|
| 25 | 25 | adm_lng_assign_string($lang_id, "{$locale_string_name}[{$sub_key}]", $sub_value); |
| 26 | 26 | } |
| 27 | - } elseif($value) { |
|
| 28 | - if(!isset($locale_string_template[$locale_string_name])) { |
|
| 27 | + } elseif ($value) { |
|
| 28 | + if (!isset($locale_string_template[$locale_string_name])) { |
|
| 29 | 29 | $locale_string_template[$locale_string_name] = array(); |
| 30 | 30 | } |
| 31 | 31 | $locale_string_template[$locale_string_name] = array_merge($locale_string_template[$locale_string_name], array("[{$lang_id}]" => htmlentities($value, ENT_COMPAT, 'utf-8'))); |
@@ -46,11 +46,11 @@ discard block |
||
| 46 | 46 | global $domain, $lang_id; |
| 47 | 47 | |
| 48 | 48 | $return = "{$ident}'{$string_name}' => "; |
| 49 | - if(isset($string_value[$lang_id]) && !is_array($string_value[$lang_id])) { |
|
| 49 | + if (isset($string_value[$lang_id]) && !is_array($string_value[$lang_id])) { |
|
| 50 | 50 | $return .= "'" . str_replace(array("\\", "'"), array('\\\\', "\\'"), $string_value[$lang_id]) . "',"; |
| 51 | 51 | } else { |
| 52 | 52 | $return .= "array(\r\n"; |
| 53 | - foreach($string_value as $arr_name => $arr_data) { |
|
| 53 | + foreach ($string_value as $arr_name => $arr_data) { |
|
| 54 | 54 | $return .= adm_lng_parse_string($arr_name, $arr_data, $ident . ' '); |
| 55 | 55 | } |
| 56 | 56 | $return .= "{$ident}),\r\n"; |
@@ -103,12 +103,12 @@ discard block |
||
| 103 | 103 | |
| 104 | 104 | $string_name_new = false; |
| 105 | 105 | |
| 106 | - if(isset($honor_constants[$domain][$string_name_prefix])) { |
|
| 106 | + if (isset($honor_constants[$domain][$string_name_prefix])) { |
|
| 107 | 107 | $found_constants = array_keys($constants, $string_name); |
| 108 | - foreach($found_constants as $constant_name) { |
|
| 108 | + foreach ($found_constants as $constant_name) { |
|
| 109 | 109 | $honor_prefix_list = is_array($honor_constants[$domain][$string_name_prefix]) ? $honor_constants[$domain][$string_name_prefix] : array($honor_constants[$domain][$string_name_prefix]); |
| 110 | - foreach($honor_prefix_list as $honor_prefix) { |
|
| 111 | - if(strpos($constant_name, $honor_prefix) === 0) { |
|
| 110 | + foreach ($honor_prefix_list as $honor_prefix) { |
|
| 111 | + if (strpos($constant_name, $honor_prefix) === 0) { |
|
| 112 | 112 | $string_name_new = $constant_name; |
| 113 | 113 | break; |
| 114 | 114 | } |
@@ -118,13 +118,13 @@ discard block |
||
| 118 | 118 | |
| 119 | 119 | $string_name_new = $string_name_new ? $string_name_new : "'{$string_name}'"; |
| 120 | 120 | fwrite($file_handler, "{$ident}{$string_name_new} => "); |
| 121 | - if(isset($string_value[$lang_id]) && !is_array($string_value[$lang_id])) { |
|
| 121 | + if (isset($string_value[$lang_id]) && !is_array($string_value[$lang_id])) { |
|
| 122 | 122 | fwrite($file_handler, "'" . str_replace(array("\\", "'"), array('\\\\', "\\'"), $string_value[$lang_id]) . "',"); |
| 123 | 123 | // fwrite($file_handler, "'" . addslashes($string_value[$lang_id]) . "',"); |
| 124 | 124 | } else { |
| 125 | 125 | $string_name_prefix = $string_name_prefix . "[{$string_name}]"; |
| 126 | 126 | fwrite($file_handler, "array(\r\n"); |
| 127 | - foreach($string_value as $arr_name => $arr_data) { |
|
| 127 | + foreach ($string_value as $arr_name => $arr_data) { |
|
| 128 | 128 | adm_lng_write_string($arr_name, $arr_data, $ident . ' ', $string_name_prefix); |
| 129 | 129 | } |
| 130 | 130 | fwrite($file_handler, "{$ident}),\r\n"); |
@@ -144,13 +144,13 @@ discard block |
||
| 144 | 144 | $languages_info = lng_get_list(); |
| 145 | 145 | $domain = sys_get_param_str('domain'); |
| 146 | 146 | |
| 147 | -if($domain) { |
|
| 147 | +if ($domain) { |
|
| 148 | 148 | $lang_new = sys_get_param('lang_new'); |
| 149 | - if(!empty($lang_new) && is_array($lang_new)) { |
|
| 149 | + if (!empty($lang_new) && is_array($lang_new)) { |
|
| 150 | 150 | $constants = get_defined_constants(true); |
| 151 | 151 | $constants = $constants['user']; |
| 152 | 152 | ksort($constants); |
| 153 | - foreach($languages_info as $lang_id => $land_data) { |
|
| 153 | + foreach ($languages_info as $lang_id => $land_data) { |
|
| 154 | 154 | $file_handler = fopen(SN_ROOT_PHYSICAL . "language/{$lang_id}/{$domain}.mo.php.new", 'w'); |
| 155 | 155 | fwrite($file_handler, "<?php\r\n\r\n/*\r\n############################################################################# |
| 156 | 156 | # Filename: {$domain}.mo.php |
@@ -158,7 +158,7 @@ discard block |
||
| 158 | 158 | # Website: http://www.supernova.ws |
| 159 | 159 | # Description: Massive Multiplayer Online Browser Space Startegy Game\r\n#\r\n"); |
| 160 | 160 | |
| 161 | - foreach($land_data['LANG_COPYRIGHT'] as $lang_copyright) { |
|
| 161 | + foreach ($land_data['LANG_COPYRIGHT'] as $lang_copyright) { |
|
| 162 | 162 | $lang_copyright = str_replace(array('©', '"', '<', '>'), array('©', '"', '<', '>'), $lang_copyright); |
| 163 | 163 | fwrite($file_handler, "# {$lang_copyright}\r\n"); |
| 164 | 164 | } |
@@ -166,7 +166,7 @@ discard block |
||
| 166 | 166 | /**\r\n*\r\n* @package language\r\n* @system [{$land_data['LANG_NAME_ENGLISH']}]\r\n* @version " . SN_VERSION . "\r\n*\r\n*/\r\n |
| 167 | 167 | /**\r\n* DO NOT CHANGE\r\n*/\r\n\r\nif (!defined('INSIDE')) die();\r\n |
| 168 | 168 | \$a_lang_array = array(\r\n"); |
| 169 | - foreach($lang_new as $string_name => $string_value) { |
|
| 169 | + foreach ($lang_new as $string_name => $string_value) { |
|
| 170 | 170 | adm_lng_write_string($string_name, $string_value); |
| 171 | 171 | } |
| 172 | 172 | fwrite($file_handler, ");\r\n"); |
@@ -176,21 +176,21 @@ discard block |
||
| 176 | 176 | sys_redirect("admin_locale.php?domain={$domain}"); |
| 177 | 177 | } |
| 178 | 178 | |
| 179 | - foreach($languages_info as $lang_id => $lang_data) { |
|
| 179 | + foreach ($languages_info as $lang_id => $lang_data) { |
|
| 180 | 180 | $template->assign_block_vars('language', $lang_data); |
| 181 | 181 | $full_filename = SN_ROOT_PHYSICAL . "language/{$lang_id}/{$domain}.mo.php"; |
| 182 | 182 | $languages[$lang_id] = adm_lng_load($full_filename . (file_exists($full_filename . '.new') ? '.new' : '')); |
| 183 | - foreach($languages[$lang_id] as $locale_string_name => $cork) { |
|
| 183 | + foreach ($languages[$lang_id] as $locale_string_name => $cork) { |
|
| 184 | 184 | adm_lng_assign_string($lang_id, "[{$locale_string_name}]", $languages[$lang_id][$locale_string_name]); |
| 185 | 185 | } |
| 186 | 186 | } |
| 187 | 187 | |
| 188 | - foreach($locale_string_template as $locale_string_name => $locale_string_list) { |
|
| 188 | + foreach ($locale_string_template as $locale_string_name => $locale_string_list) { |
|
| 189 | 189 | $template->assign_block_vars('string', array( |
| 190 | 190 | 'NAME' => $locale_string_name, |
| 191 | 191 | )); |
| 192 | 192 | |
| 193 | - foreach($languages_info as $lang_id => $cork2) { |
|
| 193 | + foreach ($languages_info as $lang_id => $cork2) { |
|
| 194 | 194 | $template->assign_block_vars('string.locale', array( |
| 195 | 195 | 'LANG' => $lang_id, |
| 196 | 196 | 'VALUE' => $locale_string_list["[{$lang_id}]"], |
@@ -206,17 +206,17 @@ discard block |
||
| 206 | 206 | $dir = dir($path); |
| 207 | 207 | while (false !== ($lang_id = $dir->read())) { |
| 208 | 208 | $full_path = $path . $lang_id; |
| 209 | - if($lang_id[0] != "." && is_dir($full_path)) { |
|
| 209 | + if ($lang_id[0] != "." && is_dir($full_path)) { |
|
| 210 | 210 | $lang_file_list = dir($full_path); |
| 211 | 211 | while (false !== ($filename = $lang_file_list->read())) { |
| 212 | 212 | $lang_domain = strtolower(substr($filename, 0, strpos($filename, '.'))); |
| 213 | - if(!$lang_domain) { |
|
| 213 | + if (!$lang_domain) { |
|
| 214 | 214 | continue; |
| 215 | 215 | } |
| 216 | 216 | |
| 217 | 217 | $file_ext = strtolower(substr($filename, strpos($filename, '.'))); |
| 218 | - if($lang_domain != 'language') { |
|
| 219 | - if($file_ext == '.mo.php.new' || ($file_ext == '.mo.php' && empty($languages[$lang_id][$lang_domain]))) { |
|
| 218 | + if ($lang_domain != 'language') { |
|
| 219 | + if ($file_ext == '.mo.php.new' || ($file_ext == '.mo.php' && empty($languages[$lang_id][$lang_domain]))) { |
|
| 220 | 220 | $language_domains[$lang_domain] = $lang_domain; |
| 221 | 221 | $languages[$lang_id][$lang_domain] = $lang_domain; |
| 222 | 222 | } |
@@ -226,7 +226,7 @@ discard block |
||
| 226 | 226 | } |
| 227 | 227 | $dir->close(); |
| 228 | 228 | |
| 229 | - foreach($language_domains as $lang_domain) { |
|
| 229 | + foreach ($language_domains as $lang_domain) { |
|
| 230 | 230 | $template->assign_block_vars('domain', array( |
| 231 | 231 | 'NAME' => $lang_domain, |
| 232 | 232 | )); |
@@ -27,7 +27,7 @@ discard block |
||
| 27 | 27 | 'START_NAME' => $planetrow['name'], |
| 28 | 28 | ); |
| 29 | 29 | |
| 30 | - if(!empty($TargetPlanet)) { |
|
| 30 | + if (!empty($TargetPlanet)) { |
|
| 31 | 31 | $template_route += array( |
| 32 | 32 | 'END_TYPE_TEXT_SH' => $lang['sys_planet_type_sh'][$TargetPlanet['planet_type']], |
| 33 | 33 | 'END_COORDS' => uni_render_coordinates($TargetPlanet), |
@@ -38,8 +38,8 @@ discard block |
||
| 38 | 38 | $template->assign_block_vars('fleets', $template_route); |
| 39 | 39 | |
| 40 | 40 | $sn_groups_fleet = sn_get_groups('fleet'); |
| 41 | - foreach($fleetarray as $ship_id => $ship_count) { |
|
| 42 | - if(in_array($ship_id, $sn_groups_fleet) && $ship_count) { |
|
| 41 | + foreach ($fleetarray as $ship_id => $ship_count) { |
|
| 42 | + if (in_array($ship_id, $sn_groups_fleet) && $ship_count) { |
|
| 43 | 43 | // $ship_base_data = get_ship_data($ship_id, $user); |
| 44 | 44 | $template->assign_block_vars('fleets.ships', array( |
| 45 | 45 | 'ID' => $ship_id, |
@@ -57,11 +57,10 @@ discard block |
||
| 57 | 57 | $fleet_capacity += get_unit_param($Ship, P_CAPACITY) * $Count; |
| 58 | 58 | } |
| 59 | 59 | |
| 60 | - $max_duration = $target_mission == MT_EXPLORE ? get_player_max_expedition_duration($user) : |
|
| 61 | - (isset($missiontype[MT_HOLD]) ? 12 : 0); |
|
| 62 | - if($max_duration) { |
|
| 60 | + $max_duration = $target_mission == MT_EXPLORE ? get_player_max_expedition_duration($user) : (isset($missiontype[MT_HOLD]) ? 12 : 0); |
|
| 61 | + if ($max_duration) { |
|
| 63 | 62 | $config_game_speed_expedition = ($target_mission == MT_EXPLORE && $config->game_speed_expedition ? $config->game_speed_expedition : 1); |
| 64 | - for($i = 1; $i <= $max_duration; $i++) { |
|
| 63 | + for ($i = 1; $i <= $max_duration; $i++) { |
|
| 65 | 64 | $template->assign_block_vars('duration', array( |
| 66 | 65 | 'ID' => $i, |
| 67 | 66 | 'TIME' => pretty_time(ceil($i * 3600 / $config_game_speed_expedition)), |
@@ -80,7 +79,7 @@ discard block |
||
| 80 | 79 | // $TableTitle = uni_render_planet_full($planetrow) . ' => ' . uni_render_planet_full($temp); |
| 81 | 80 | |
| 82 | 81 | $sn_group_resources = sn_get_groups('resources'); |
| 83 | - for($i = 0; $i<3; $i++) { |
|
| 82 | + for ($i = 0; $i < 3; $i++) { |
|
| 84 | 83 | $amount = $planetrow[$sn_group_resources[$i]] - ($i == 2 ? $consumption : 0); |
| 85 | 84 | $template->assign_block_vars('resources', array( |
| 86 | 85 | 'ID' => $i, |
@@ -90,7 +89,7 @@ discard block |
||
| 90 | 89 | )); |
| 91 | 90 | } |
| 92 | 91 | |
| 93 | - if($sn_module['unit_captain']->manifest['active'] && ($captain = $sn_module['unit_captain']->unit_captain_get($planetrow['id'])) && $captain['unit_location_type'] == LOC_PLANET) { |
|
| 92 | + if ($sn_module['unit_captain']->manifest['active'] && ($captain = $sn_module['unit_captain']->unit_captain_get($planetrow['id'])) && $captain['unit_location_type'] == LOC_PLANET) { |
|
| 94 | 93 | $template->assign_vars(array( |
| 95 | 94 | 'CAPTAIN_ID' => $captain['unit_id'], |
| 96 | 95 | 'CAPTAIN_LEVEL' => $captain['captain_level'], |
@@ -112,9 +111,9 @@ discard block |
||
| 112 | 111 | |
| 113 | 112 | |
| 114 | 113 | 'speedallsmin' => sys_get_param_float('speedallsmin'), |
| 115 | - 'speed' => sys_get_param_int('speed') , |
|
| 114 | + 'speed' => sys_get_param_int('speed'), |
|
| 116 | 115 | |
| 117 | - 'fleet_group' => sys_get_param_id('fleet_group') , |
|
| 116 | + 'fleet_group' => sys_get_param_id('fleet_group'), |
|
| 118 | 117 | 'acs_target_mr' => sys_get_param_str('acs_target_mr'), |
| 119 | 118 | |
| 120 | 119 | 'MAX_DURATION' => $max_duration, |
@@ -39,11 +39,11 @@ discard block |
||
| 39 | 39 | $planet = sys_get_param_int('planet', $planetrow['planet']); |
| 40 | 40 | |
| 41 | 41 | $target_mission = sys_get_param_int('target_mission'); |
| 42 | -if($target_mission == MT_COLONIZE || $target_mission == MT_EXPLORE) { |
|
| 42 | +if ($target_mission == MT_COLONIZE || $target_mission == MT_EXPLORE) { |
|
| 43 | 43 | $planet_type = PT_PLANET; |
| 44 | -} elseif($target_mission == MT_RECYCLE) { |
|
| 44 | +} elseif ($target_mission == MT_RECYCLE) { |
|
| 45 | 45 | $planet_type = PT_DEBRIS; |
| 46 | -} elseif($target_mission == MT_DESTROY) { |
|
| 46 | +} elseif ($target_mission == MT_DESTROY) { |
|
| 47 | 47 | $planet_type = PT_MOON; |
| 48 | 48 | } else { |
| 49 | 49 | $planet_type = sys_get_param_int('planet_type'); |
@@ -59,15 +59,15 @@ discard block |
||
| 59 | 59 | //$FlyingFleets = doquery("SELECT COUNT(fleet_id) as Number FROM {{fleets}} WHERE `fleet_owner`='{$user['id']}'", true); |
| 60 | 60 | //$FlyingFleets = $FlyingFleets['Number']; |
| 61 | 61 | $FlyingFleets = fleet_count_flying($user['id']); |
| 62 | -if($MaxFleets <= $FlyingFleets && $fleet_page && $fleet_page != 4) { |
|
| 62 | +if ($MaxFleets <= $FlyingFleets && $fleet_page && $fleet_page != 4) { |
|
| 63 | 63 | messageBox($lang['fl_noslotfree'], $lang['fl_error'], "fleet." . PHP_EX, 5); |
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | $MaxExpeditions = get_player_max_expeditons($user); |
| 67 | -if($MaxExpeditions) { |
|
| 67 | +if ($MaxExpeditions) { |
|
| 68 | 68 | // $FlyingExpeditions = doquery("SELECT COUNT(fleet_owner) AS `expedi` FROM {{fleets}} WHERE `fleet_owner` = {$user['id']} AND `fleet_mission` = '" . MT_EXPLORE . "';", '', true); |
| 69 | 69 | // $FlyingExpeditions = $FlyingExpeditions['expedi']; |
| 70 | - $FlyingExpeditions = fleet_count_flying($user['id'], MT_EXPLORE); |
|
| 70 | + $FlyingExpeditions = fleet_count_flying($user['id'], MT_EXPLORE); |
|
| 71 | 71 | } else { |
| 72 | 72 | $FlyingExpeditions = 0; |
| 73 | 73 | } |
@@ -80,8 +80,8 @@ discard block |
||
| 80 | 80 | $fleetarray = json_decode(base64_decode(str_rot13(sys_get_param('usedfleet'))), true); |
| 81 | 81 | $fleetarray = is_array($fleetarray) ? $fleetarray : array(); |
| 82 | 82 | |
| 83 | - foreach($fleetarray as $ship_id => &$ship_amount) { |
|
| 84 | - if(!in_array($ship_id, sn_get_groups('fleet')) || (string)floatval($ship_amount) != $ship_amount || $ship_amount < 1) { |
|
| 83 | + foreach ($fleetarray as $ship_id => &$ship_amount) { |
|
| 84 | + if (!in_array($ship_id, sn_get_groups('fleet')) || (string) floatval($ship_amount) != $ship_amount || $ship_amount < 1) { |
|
| 85 | 85 | $debug->warning('Supplying wrong ship in ship list on fleet page', 'Hack attempt', 302, array('base_dump' => true)); |
| 86 | 86 | die(); |
| 87 | 87 | } |
@@ -112,11 +112,11 @@ discard block |
||
| 112 | 112 | $target_mission = MT_COLONIZE; |
| 113 | 113 | $planet_type = PT_PLANET; |
| 114 | 114 | } else { |
| 115 | - messageBox ("<font color=\"red\"><b>". $lang['fl_no_planet_type'] ."</b></font>", $lang['fl_error']); |
|
| 115 | + messageBox("<font color=\"red\"><b>" . $lang['fl_no_planet_type'] . "</b></font>", $lang['fl_error']); |
|
| 116 | 116 | } |
| 117 | 117 | } else { |
| 118 | 118 | $recyclers = 0; |
| 119 | - foreach(sn_get_groups('flt_recyclers') as $recycler_id) { |
|
| 119 | + foreach (sn_get_groups('flt_recyclers') as $recycler_id) { |
|
| 120 | 120 | $recyclers += $fleetarray[$recycler_id]; |
| 121 | 121 | } |
| 122 | 122 | if ($recyclers > 0 && $planet_type == PT_DEBRIS) { |
@@ -141,7 +141,7 @@ discard block |
||
| 141 | 141 | |
| 142 | 142 | $missiontype[MT_HOLD] = $lang['type_mission'][MT_HOLD]; |
| 143 | 143 | |
| 144 | - if($planet_type == PT_MOON && $fleetarray[SHIP_HUGE_DEATH_STAR]) { |
|
| 144 | + if ($planet_type == PT_MOON && $fleetarray[SHIP_HUGE_DEATH_STAR]) { |
|
| 145 | 145 | $missiontype[MT_DESTROY] = $lang['type_mission'][MT_DESTROY]; |
| 146 | 146 | } |
| 147 | 147 | } |
@@ -201,14 +201,14 @@ discard block |
||
| 201 | 201 | ); |
| 202 | 202 | |
| 203 | 203 | $is_transport_missions = false; |
| 204 | -if($missiontype) { |
|
| 204 | +if ($missiontype) { |
|
| 205 | 205 | $sn_group_missions = sn_get_groups('missions'); |
| 206 | - foreach($missiontype as $mission_data_id => $mission_data) { |
|
| 206 | + foreach ($missiontype as $mission_data_id => $mission_data) { |
|
| 207 | 207 | $is_transport_missions = $is_transport_missions || (isset($sn_group_missions[$mission_data_id]['transport']) && $sn_group_missions[$mission_data_id]['transport']); |
| 208 | 208 | } |
| 209 | 209 | } |
| 210 | 210 | |
| 211 | -switch($fleet_page) { |
|
| 211 | +switch ($fleet_page) { |
|
| 212 | 212 | case 1: |
| 213 | 213 | require('includes/includes/flt_page1.inc'); |
| 214 | 214 | break; |
@@ -75,121 +75,121 @@ discard block |
||
| 75 | 75 | } |
| 76 | 76 | |
| 77 | 77 | switch ($fleet_page) { |
| 78 | - case 3: |
|
| 78 | + case 3: |
|
| 79 | 79 | |
| 80 | - case 2: |
|
| 81 | - $fleet_group_mr = sys_get_param_id('fleet_group'); |
|
| 82 | - $fleetarray = json_decode(base64_decode(str_rot13(sys_get_param('usedfleet'))), true); |
|
| 83 | - $fleetarray = is_array($fleetarray) ? $fleetarray : array(); |
|
| 80 | + case 2: |
|
| 81 | + $fleet_group_mr = sys_get_param_id('fleet_group'); |
|
| 82 | + $fleetarray = json_decode(base64_decode(str_rot13(sys_get_param('usedfleet'))), true); |
|
| 83 | + $fleetarray = is_array($fleetarray) ? $fleetarray : array(); |
|
| 84 | 84 | |
| 85 | - foreach($fleetarray as $ship_id => &$ship_amount) { |
|
| 86 | - if(!in_array($ship_id, sn_get_groups('fleet')) || (string)floatval($ship_amount) != $ship_amount || $ship_amount < 1) { |
|
| 87 | - $debug->warning('Supplying wrong ship in ship list on fleet page', 'Hack attempt', 302, array('base_dump' => true)); |
|
| 88 | - die(); |
|
| 89 | - } |
|
| 90 | - $ship_amount = floatval($ship_amount); |
|
| 91 | - } |
|
| 92 | - |
|
| 93 | - $UsedPlanet = false; |
|
| 94 | - $YourPlanet = false; |
|
| 95 | - $missiontype = array(); |
|
| 96 | - if ($planet > SN::$config->game_maxPlanet) { |
|
| 97 | - $target_mission = MT_EXPLORE; |
|
| 98 | - $missiontype[MT_EXPLORE] = $lang['type_mission'][MT_EXPLORE]; |
|
| 99 | - } elseif ($galaxy && $system && $planet) { |
|
| 100 | - $check_type = $planet_type == PT_MOON ? PT_MOON : PT_PLANET; |
|
| 101 | - |
|
| 102 | - $TargetPlanet = DBStaticPlanet::db_planet_by_gspt($galaxy, $system, $planet, $check_type); |
|
| 103 | - |
|
| 104 | - if ($TargetPlanet['id_owner']) { |
|
| 105 | - $UsedPlanet = true; |
|
| 106 | - if ($TargetPlanet['id_owner'] == $user['id']) { |
|
| 107 | - $YourPlanet = true; |
|
| 85 | + foreach($fleetarray as $ship_id => &$ship_amount) { |
|
| 86 | + if(!in_array($ship_id, sn_get_groups('fleet')) || (string)floatval($ship_amount) != $ship_amount || $ship_amount < 1) { |
|
| 87 | + $debug->warning('Supplying wrong ship in ship list on fleet page', 'Hack attempt', 302, array('base_dump' => true)); |
|
| 88 | + die(); |
|
| 108 | 89 | } |
| 90 | + $ship_amount = floatval($ship_amount); |
|
| 109 | 91 | } |
| 110 | 92 | |
| 111 | - if (!$UsedPlanet) { |
|
| 112 | - if ($fleetarray[SHIP_COLONIZER]) { |
|
| 113 | - $missiontype[MT_COLONIZE] = $lang['type_mission'][MT_COLONIZE]; |
|
| 114 | - $target_mission = MT_COLONIZE; |
|
| 115 | - $planet_type = PT_PLANET; |
|
| 116 | - } else { |
|
| 117 | - messageBox ("<font color=\"red\"><b>". $lang['fl_no_planet_type'] ."</b></font>", $lang['fl_error']); |
|
| 118 | - } |
|
| 119 | - } else { |
|
| 120 | - $recyclers = 0; |
|
| 121 | - foreach(sn_get_groups('flt_recyclers') as $recycler_id) { |
|
| 122 | - $recyclers += $fleetarray[$recycler_id]; |
|
| 93 | + $UsedPlanet = false; |
|
| 94 | + $YourPlanet = false; |
|
| 95 | + $missiontype = array(); |
|
| 96 | + if ($planet > SN::$config->game_maxPlanet) { |
|
| 97 | + $target_mission = MT_EXPLORE; |
|
| 98 | + $missiontype[MT_EXPLORE] = $lang['type_mission'][MT_EXPLORE]; |
|
| 99 | + } elseif ($galaxy && $system && $planet) { |
|
| 100 | + $check_type = $planet_type == PT_MOON ? PT_MOON : PT_PLANET; |
|
| 101 | + |
|
| 102 | + $TargetPlanet = DBStaticPlanet::db_planet_by_gspt($galaxy, $system, $planet, $check_type); |
|
| 103 | + |
|
| 104 | + if ($TargetPlanet['id_owner']) { |
|
| 105 | + $UsedPlanet = true; |
|
| 106 | + if ($TargetPlanet['id_owner'] == $user['id']) { |
|
| 107 | + $YourPlanet = true; |
|
| 108 | + } |
|
| 123 | 109 | } |
| 124 | - if ($recyclers > 0 && $planet_type == PT_DEBRIS) { |
|
| 125 | - $target_mission = MT_RECYCLE; |
|
| 126 | - $missiontype[MT_RECYCLE] = $lang['type_mission'][MT_RECYCLE]; |
|
| 127 | - } elseif ($planet_type == PT_PLANET || $planet_type == PT_MOON) { |
|
| 128 | - if ($YourPlanet) { |
|
| 129 | - $missiontype[MT_RELOCATE] = $lang['type_mission'][MT_RELOCATE]; |
|
| 130 | - $missiontype[MT_TRANSPORT] = $lang['type_mission'][MT_TRANSPORT]; |
|
| 110 | + |
|
| 111 | + if (!$UsedPlanet) { |
|
| 112 | + if ($fleetarray[SHIP_COLONIZER]) { |
|
| 113 | + $missiontype[MT_COLONIZE] = $lang['type_mission'][MT_COLONIZE]; |
|
| 114 | + $target_mission = MT_COLONIZE; |
|
| 115 | + $planet_type = PT_PLANET; |
|
| 131 | 116 | } else { |
| 132 | - // Not Your Planet |
|
| 133 | - if ($fleetarray[SHIP_SPY]) { |
|
| 134 | - // Only spy missions if any spy |
|
| 135 | - $missiontype[MT_SPY] = $lang['type_mission'][MT_SPY]; |
|
| 117 | + messageBox ("<font color=\"red\"><b>". $lang['fl_no_planet_type'] ."</b></font>", $lang['fl_error']); |
|
| 118 | + } |
|
| 119 | + } else { |
|
| 120 | + $recyclers = 0; |
|
| 121 | + foreach(sn_get_groups('flt_recyclers') as $recycler_id) { |
|
| 122 | + $recyclers += $fleetarray[$recycler_id]; |
|
| 123 | + } |
|
| 124 | + if ($recyclers > 0 && $planet_type == PT_DEBRIS) { |
|
| 125 | + $target_mission = MT_RECYCLE; |
|
| 126 | + $missiontype[MT_RECYCLE] = $lang['type_mission'][MT_RECYCLE]; |
|
| 127 | + } elseif ($planet_type == PT_PLANET || $planet_type == PT_MOON) { |
|
| 128 | + if ($YourPlanet) { |
|
| 129 | + $missiontype[MT_RELOCATE] = $lang['type_mission'][MT_RELOCATE]; |
|
| 130 | + $missiontype[MT_TRANSPORT] = $lang['type_mission'][MT_TRANSPORT]; |
|
| 136 | 131 | } else { |
| 137 | - // If no spies... |
|
| 138 | - if ($fleet_group_mr) { |
|
| 139 | - $missiontype[MT_AKS] = $lang['type_mission'][MT_AKS]; |
|
| 132 | + // Not Your Planet |
|
| 133 | + if ($fleetarray[SHIP_SPY]) { |
|
| 134 | + // Only spy missions if any spy |
|
| 135 | + $missiontype[MT_SPY] = $lang['type_mission'][MT_SPY]; |
|
| 140 | 136 | } else { |
| 141 | - $missiontype[MT_ATTACK] = $lang['type_mission'][MT_ATTACK]; |
|
| 142 | - $missiontype[MT_TRANSPORT] = $lang['type_mission'][MT_TRANSPORT]; |
|
| 143 | - |
|
| 144 | - $missiontype[MT_HOLD] = $lang['type_mission'][MT_HOLD]; |
|
| 145 | - |
|
| 146 | - if($planet_type == PT_MOON && $fleetarray[SHIP_HUGE_DEATH_STAR]) { |
|
| 147 | - $missiontype[MT_DESTROY] = $lang['type_mission'][MT_DESTROY]; |
|
| 137 | + // If no spies... |
|
| 138 | + if ($fleet_group_mr) { |
|
| 139 | + $missiontype[MT_AKS] = $lang['type_mission'][MT_AKS]; |
|
| 140 | + } else { |
|
| 141 | + $missiontype[MT_ATTACK] = $lang['type_mission'][MT_ATTACK]; |
|
| 142 | + $missiontype[MT_TRANSPORT] = $lang['type_mission'][MT_TRANSPORT]; |
|
| 143 | + |
|
| 144 | + $missiontype[MT_HOLD] = $lang['type_mission'][MT_HOLD]; |
|
| 145 | + |
|
| 146 | + if($planet_type == PT_MOON && $fleetarray[SHIP_HUGE_DEATH_STAR]) { |
|
| 147 | + $missiontype[MT_DESTROY] = $lang['type_mission'][MT_DESTROY]; |
|
| 148 | + } |
|
| 148 | 149 | } |
| 149 | 150 | } |
| 150 | 151 | } |
| 151 | 152 | } |
| 152 | 153 | } |
| 153 | 154 | } |
| 154 | - } |
|
| 155 | - |
|
| 156 | - if (!$target_mission && is_array($missiontype)) { |
|
| 157 | - $target_mission = MT_ATTACK; |
|
| 158 | - } |
|
| 159 | - |
|
| 160 | -// $sn_group_missions = sn_get_groups('missions'); |
|
| 161 | -// foreach($sn_group_missions as $mission_id => $cork) { |
|
| 162 | -// $missiontype[$mission_id] = $lang['type_mission'][$mission_id]; |
|
| 163 | -// } |
|
| 164 | -// |
|
| 165 | -// |
|
| 166 | - ksort($missiontype); |
|
| 167 | - |
|
| 168 | - $speed_percent = sys_get_param_int('speed', 10); |
|
| 169 | - $travel_data = flt_travel_data($user, $planetrow, array('galaxy' => $galaxy, 'system' => $system, 'planet' => $planet), $fleetarray, $speed_percent); |
|
| 170 | - |
|
| 171 | -// $fleet_speed = flt_fleet_speed($user, $fleetarray); |
|
| 172 | - $fleet_speed = $travel_data['fleet_speed']; |
|
| 173 | - $distance = $travel_data['distance']; |
|
| 174 | - $duration = $travel_data['duration']; |
|
| 175 | - $consumption = $travel_data['consumption']; |
|
| 176 | - // No Break |
|
| 177 | - |
|
| 178 | - case 1: |
|
| 179 | - if ($galaxy && $system && $planet) { |
|
| 180 | - $check_type = $planet_type == PT_MOON ? PT_MOON : PT_PLANET; |
|
| 181 | - |
|
| 182 | - $TargetPlanet = DBStaticPlanet::db_planet_by_gspt($galaxy, $system, $planet, $check_type); |
|
| 183 | - } |
|
| 184 | - |
|
| 185 | - case 0: |
|
| 186 | - $template_result += array( |
|
| 187 | - 'thisgalaxy' => $planetrow['galaxy'], |
|
| 188 | - 'thissystem' => $planetrow['system'], |
|
| 189 | - 'thisplanet' => $planetrow['planet'], |
|
| 190 | - 'thisplanet_type' => $planetrow['planet_type'], |
|
| 191 | - ); |
|
| 192 | - // no break |
|
| 155 | + |
|
| 156 | + if (!$target_mission && is_array($missiontype)) { |
|
| 157 | + $target_mission = MT_ATTACK; |
|
| 158 | + } |
|
| 159 | + |
|
| 160 | + // $sn_group_missions = sn_get_groups('missions'); |
|
| 161 | + // foreach($sn_group_missions as $mission_id => $cork) { |
|
| 162 | + // $missiontype[$mission_id] = $lang['type_mission'][$mission_id]; |
|
| 163 | + // } |
|
| 164 | + // |
|
| 165 | + // |
|
| 166 | + ksort($missiontype); |
|
| 167 | + |
|
| 168 | + $speed_percent = sys_get_param_int('speed', 10); |
|
| 169 | + $travel_data = flt_travel_data($user, $planetrow, array('galaxy' => $galaxy, 'system' => $system, 'planet' => $planet), $fleetarray, $speed_percent); |
|
| 170 | + |
|
| 171 | + // $fleet_speed = flt_fleet_speed($user, $fleetarray); |
|
| 172 | + $fleet_speed = $travel_data['fleet_speed']; |
|
| 173 | + $distance = $travel_data['distance']; |
|
| 174 | + $duration = $travel_data['duration']; |
|
| 175 | + $consumption = $travel_data['consumption']; |
|
| 176 | + // No Break |
|
| 177 | + |
|
| 178 | + case 1: |
|
| 179 | + if ($galaxy && $system && $planet) { |
|
| 180 | + $check_type = $planet_type == PT_MOON ? PT_MOON : PT_PLANET; |
|
| 181 | + |
|
| 182 | + $TargetPlanet = DBStaticPlanet::db_planet_by_gspt($galaxy, $system, $planet, $check_type); |
|
| 183 | + } |
|
| 184 | + |
|
| 185 | + case 0: |
|
| 186 | + $template_result += array( |
|
| 187 | + 'thisgalaxy' => $planetrow['galaxy'], |
|
| 188 | + 'thissystem' => $planetrow['system'], |
|
| 189 | + 'thisplanet' => $planetrow['planet'], |
|
| 190 | + 'thisplanet_type' => $planetrow['planet_type'], |
|
| 191 | + ); |
|
| 192 | + // no break |
|
| 193 | 193 | |
| 194 | 194 | } |
| 195 | 195 | |
@@ -211,35 +211,35 @@ discard block |
||
| 211 | 211 | } |
| 212 | 212 | |
| 213 | 213 | switch($fleet_page) { |
| 214 | - case 1: |
|
| 215 | - require('includes/includes/flt_page1.inc'); |
|
| 216 | - break; |
|
| 217 | - |
|
| 218 | - case 2: |
|
| 219 | - require_once('includes/includes/flt_page2.inc'); |
|
| 220 | - sn_fleet_page2(); |
|
| 221 | - break; |
|
| 222 | - |
|
| 223 | - case 3: |
|
| 224 | - require_once('includes/includes/flt_page3.inc'); |
|
| 225 | - sn_fleet_page3(); |
|
| 226 | - break; |
|
| 227 | - |
|
| 228 | - case 4: |
|
| 229 | - require('includes/includes/flt_page4.inc'); |
|
| 230 | - break; |
|
| 231 | - |
|
| 232 | - case 5: |
|
| 233 | - $template = gettemplate('fleet5', true); |
|
| 234 | - $pageFleet5Gathering = new \Deprecated\PageFleet5Gathering(); |
|
| 235 | - $pageFleet5Gathering->modelFleet5Gathering($user, $planetrow, $template); |
|
| 236 | - // Building list of own planets & moons |
|
| 237 | - $pageFleet5Gathering->viewPage5Gathering($user, $planetrow, $template); |
|
| 238 | - break; |
|
| 239 | - |
|
| 240 | - default: |
|
| 241 | - define('SN_RENDER_NAVBAR_PLANET', true); |
|
| 242 | - |
|
| 243 | - require('includes/includes/flt_page0.inc'); |
|
| 244 | - break; |
|
| 214 | + case 1: |
|
| 215 | + require('includes/includes/flt_page1.inc'); |
|
| 216 | + break; |
|
| 217 | + |
|
| 218 | + case 2: |
|
| 219 | + require_once('includes/includes/flt_page2.inc'); |
|
| 220 | + sn_fleet_page2(); |
|
| 221 | + break; |
|
| 222 | + |
|
| 223 | + case 3: |
|
| 224 | + require_once('includes/includes/flt_page3.inc'); |
|
| 225 | + sn_fleet_page3(); |
|
| 226 | + break; |
|
| 227 | + |
|
| 228 | + case 4: |
|
| 229 | + require('includes/includes/flt_page4.inc'); |
|
| 230 | + break; |
|
| 231 | + |
|
| 232 | + case 5: |
|
| 233 | + $template = gettemplate('fleet5', true); |
|
| 234 | + $pageFleet5Gathering = new \Deprecated\PageFleet5Gathering(); |
|
| 235 | + $pageFleet5Gathering->modelFleet5Gathering($user, $planetrow, $template); |
|
| 236 | + // Building list of own planets & moons |
|
| 237 | + $pageFleet5Gathering->viewPage5Gathering($user, $planetrow, $template); |
|
| 238 | + break; |
|
| 239 | + |
|
| 240 | + default: |
|
| 241 | + define('SN_RENDER_NAVBAR_PLANET', true); |
|
| 242 | + |
|
| 243 | + require('includes/includes/flt_page0.inc'); |
|
| 244 | + break; |
|
| 245 | 245 | } |
@@ -75,11 +75,11 @@ |
||
| 75 | 75 | * @return float[] - [int resourceId] -> [float ratesNormalizedToResourceCost] |
| 76 | 76 | */ |
| 77 | 77 | public function getResourceExchangeIn($resourceId) { |
| 78 | - if(empty($this->resourceExchangeRates[$resourceId])) { |
|
| 78 | + if (empty($this->resourceExchangeRates[$resourceId])) { |
|
| 79 | 79 | $defaultRates = $this->getResourcesExchange(); |
| 80 | 80 | |
| 81 | 81 | $this->resourceExchangeRates[$resourceId] = []; |
| 82 | - foreach($defaultRates as $defaultResourceId => $defaultRate) { |
|
| 82 | + foreach ($defaultRates as $defaultResourceId => $defaultRate) { |
|
| 83 | 83 | $this->resourceExchangeRates[$resourceId][$defaultResourceId] = $defaultRate / $defaultRates[$resourceId]; |
| 84 | 84 | } |
| 85 | 85 | } |
@@ -16,7 +16,7 @@ discard block |
||
| 16 | 16 | */ |
| 17 | 17 | if (!defined('IN_PHPBB')) |
| 18 | 18 | { |
| 19 | - exit; |
|
| 19 | + exit; |
|
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | /** |
@@ -24,227 +24,227 @@ discard block |
||
| 24 | 24 | */ |
| 25 | 25 | class phpbb_hook |
| 26 | 26 | { |
| 27 | - /** |
|
| 28 | - * Registered hooks |
|
| 29 | - */ |
|
| 30 | - var $hooks = array(); |
|
| 31 | - |
|
| 32 | - /** |
|
| 33 | - * Results returned by functions called |
|
| 34 | - */ |
|
| 35 | - var $hook_result = array(); |
|
| 36 | - |
|
| 37 | - /** |
|
| 38 | - * internal pointer |
|
| 39 | - */ |
|
| 40 | - var $current_hook = NULL; |
|
| 41 | - |
|
| 42 | - /** |
|
| 43 | - * Initialize hook class. |
|
| 44 | - * |
|
| 45 | - * @param array $valid_hooks array containing the hookable functions/methods |
|
| 46 | - */ |
|
| 47 | - function phpbb_hook($valid_hooks) |
|
| 48 | - { |
|
| 49 | - foreach ($valid_hooks as $_null => $method) |
|
| 50 | - { |
|
| 51 | - $this->add_hook($method); |
|
| 52 | - } |
|
| 53 | - |
|
| 54 | - if (function_exists('phpbb_hook_register')) |
|
| 55 | - { |
|
| 56 | - phpbb_hook_register($this); |
|
| 57 | - } |
|
| 58 | - } |
|
| 59 | - |
|
| 60 | - /** |
|
| 61 | - * Register function/method to be called within hook |
|
| 62 | - * This function is normally called by the modification/application to attach/register the functions. |
|
| 63 | - * |
|
| 64 | - * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 65 | - * @param mixed $hook The replacement function/method to be called. Passing function name or array with object/class definition |
|
| 66 | - * @param string $mode Specify the priority/chain mode. 'normal' -> hook gets appended to the chain. 'standalone' -> only the specified hook gets called - later hooks are not able to overwrite this (E_NOTICE is triggered then). 'first' -> hook is called as the first one within the chain. 'last' -> hook is called as the last one within the chain. |
|
| 67 | - */ |
|
| 68 | - function register($definition, $hook, $mode = 'normal') |
|
| 69 | - { |
|
| 70 | - $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 71 | - $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 72 | - |
|
| 73 | - // Method able to be hooked? |
|
| 74 | - if (isset($this->hooks[$class][$function])) |
|
| 75 | - { |
|
| 76 | - switch ($mode) |
|
| 77 | - { |
|
| 78 | - case 'standalone': |
|
| 79 | - if (!isset($this->hooks[$class][$function]['standalone'])) |
|
| 80 | - { |
|
| 81 | - $this->hooks[$class][$function] = array('standalone' => $hook); |
|
| 82 | - } |
|
| 83 | - else |
|
| 84 | - { |
|
| 85 | - trigger_error('Hook not able to be called standalone, previous hook already standalone.', E_NOTICE); |
|
| 86 | - } |
|
| 87 | - break; |
|
| 88 | - |
|
| 89 | - case 'first': |
|
| 90 | - case 'last': |
|
| 91 | - $this->hooks[$class][$function][$mode][] = $hook; |
|
| 92 | - break; |
|
| 93 | - |
|
| 94 | - case 'normal': |
|
| 95 | - default: |
|
| 96 | - $this->hooks[$class][$function]['normal'][] = $hook; |
|
| 97 | - break; |
|
| 98 | - } |
|
| 99 | - } |
|
| 100 | - } |
|
| 101 | - |
|
| 102 | - /** |
|
| 103 | - * Calling all functions/methods attached to a specified hook. |
|
| 104 | - * Called by the function allowing hooks... |
|
| 105 | - * |
|
| 106 | - * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 107 | - * @return bool False if no hook got executed, true otherwise |
|
| 108 | - */ |
|
| 109 | - function call_hook($definition) |
|
| 110 | - { |
|
| 111 | - $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 112 | - $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 113 | - |
|
| 114 | - if (!empty($this->hooks[$class][$function])) |
|
| 115 | - { |
|
| 116 | - // Developer tries to call a hooked function within the hooked function... |
|
| 117 | - if ($this->current_hook !== NULL && $this->current_hook['class'] === $class && $this->current_hook['function'] === $function) |
|
| 118 | - { |
|
| 119 | - return false; |
|
| 120 | - } |
|
| 121 | - |
|
| 122 | - // Call the hook with the arguments attached and store result |
|
| 123 | - $arguments = func_get_args(); |
|
| 124 | - $this->current_hook = array('class' => $class, 'function' => $function); |
|
| 125 | - $arguments[0] = &$this; |
|
| 126 | - |
|
| 127 | - // Call the hook chain... |
|
| 128 | - if (isset($this->hooks[$class][$function]['standalone'])) |
|
| 129 | - { |
|
| 130 | - $this->hook_result[$class][$function] = call_user_func_array($this->hooks[$class][$function]['standalone'], $arguments); |
|
| 131 | - } |
|
| 132 | - else |
|
| 133 | - { |
|
| 134 | - foreach (array('first', 'normal', 'last') as $mode) |
|
| 135 | - { |
|
| 136 | - if (!isset($this->hooks[$class][$function][$mode])) |
|
| 137 | - { |
|
| 138 | - continue; |
|
| 139 | - } |
|
| 140 | - |
|
| 141 | - foreach ($this->hooks[$class][$function][$mode] as $hook) |
|
| 142 | - { |
|
| 143 | - $this->hook_result[$class][$function] = call_user_func_array($hook, $arguments); |
|
| 144 | - } |
|
| 145 | - } |
|
| 146 | - } |
|
| 147 | - |
|
| 148 | - $this->current_hook = NULL; |
|
| 149 | - return true; |
|
| 150 | - } |
|
| 151 | - |
|
| 152 | - $this->current_hook = NULL; |
|
| 153 | - return false; |
|
| 154 | - } |
|
| 155 | - |
|
| 156 | - /** |
|
| 157 | - * Get result from previously called functions/methods for the same hook |
|
| 158 | - * |
|
| 159 | - * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 160 | - * @return mixed False if nothing returned if there is no result, else array('result' => ... ) |
|
| 161 | - */ |
|
| 162 | - function previous_hook_result($definition) |
|
| 163 | - { |
|
| 164 | - $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 165 | - $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 166 | - |
|
| 167 | - if (!empty($this->hooks[$class][$function]) && isset($this->hook_result[$class][$function])) |
|
| 168 | - { |
|
| 169 | - return array('result' => $this->hook_result[$class][$function]); |
|
| 170 | - } |
|
| 171 | - |
|
| 172 | - return false; |
|
| 173 | - } |
|
| 174 | - |
|
| 175 | - /** |
|
| 176 | - * Check if the called functions/methods returned something. |
|
| 177 | - * |
|
| 178 | - * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 179 | - * @return bool True if results are there, false if not |
|
| 180 | - */ |
|
| 181 | - function hook_return($definition) |
|
| 182 | - { |
|
| 183 | - $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 184 | - $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 185 | - |
|
| 186 | - if (!empty($this->hooks[$class][$function]) && isset($this->hook_result[$class][$function])) |
|
| 187 | - { |
|
| 188 | - return true; |
|
| 189 | - } |
|
| 190 | - |
|
| 191 | - return false; |
|
| 192 | - } |
|
| 193 | - |
|
| 194 | - /** |
|
| 195 | - * Give actual result from called functions/methods back. |
|
| 196 | - * |
|
| 197 | - * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 198 | - * @return mixed The result |
|
| 199 | - */ |
|
| 200 | - function hook_return_result($definition) |
|
| 201 | - { |
|
| 202 | - $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 203 | - $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 204 | - |
|
| 205 | - if (!empty($this->hooks[$class][$function]) && isset($this->hook_result[$class][$function])) |
|
| 206 | - { |
|
| 207 | - $result = $this->hook_result[$class][$function]; |
|
| 208 | - unset($this->hook_result[$class][$function]); |
|
| 209 | - return $result; |
|
| 210 | - } |
|
| 211 | - |
|
| 212 | - return; |
|
| 213 | - } |
|
| 214 | - |
|
| 215 | - /** |
|
| 216 | - * Add new function to the allowed hooks. |
|
| 217 | - * |
|
| 218 | - * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 219 | - */ |
|
| 220 | - function add_hook($definition) |
|
| 221 | - { |
|
| 222 | - if (!is_array($definition)) |
|
| 223 | - { |
|
| 224 | - $definition = array('__global', $definition); |
|
| 225 | - } |
|
| 226 | - |
|
| 227 | - $this->hooks[$definition[0]][$definition[1]] = array(); |
|
| 228 | - } |
|
| 229 | - |
|
| 230 | - /** |
|
| 231 | - * Remove function from the allowed hooks. |
|
| 232 | - * |
|
| 233 | - * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 234 | - */ |
|
| 235 | - function remove_hook($definition) |
|
| 236 | - { |
|
| 237 | - $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 238 | - $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 239 | - |
|
| 240 | - if (isset($this->hooks[$class][$function])) |
|
| 241 | - { |
|
| 242 | - unset($this->hooks[$class][$function]); |
|
| 243 | - |
|
| 244 | - if (isset($this->hook_result[$class][$function])) |
|
| 245 | - { |
|
| 246 | - unset($this->hook_result[$class][$function]); |
|
| 247 | - } |
|
| 248 | - } |
|
| 249 | - } |
|
| 27 | + /** |
|
| 28 | + * Registered hooks |
|
| 29 | + */ |
|
| 30 | + var $hooks = array(); |
|
| 31 | + |
|
| 32 | + /** |
|
| 33 | + * Results returned by functions called |
|
| 34 | + */ |
|
| 35 | + var $hook_result = array(); |
|
| 36 | + |
|
| 37 | + /** |
|
| 38 | + * internal pointer |
|
| 39 | + */ |
|
| 40 | + var $current_hook = NULL; |
|
| 41 | + |
|
| 42 | + /** |
|
| 43 | + * Initialize hook class. |
|
| 44 | + * |
|
| 45 | + * @param array $valid_hooks array containing the hookable functions/methods |
|
| 46 | + */ |
|
| 47 | + function phpbb_hook($valid_hooks) |
|
| 48 | + { |
|
| 49 | + foreach ($valid_hooks as $_null => $method) |
|
| 50 | + { |
|
| 51 | + $this->add_hook($method); |
|
| 52 | + } |
|
| 53 | + |
|
| 54 | + if (function_exists('phpbb_hook_register')) |
|
| 55 | + { |
|
| 56 | + phpbb_hook_register($this); |
|
| 57 | + } |
|
| 58 | + } |
|
| 59 | + |
|
| 60 | + /** |
|
| 61 | + * Register function/method to be called within hook |
|
| 62 | + * This function is normally called by the modification/application to attach/register the functions. |
|
| 63 | + * |
|
| 64 | + * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 65 | + * @param mixed $hook The replacement function/method to be called. Passing function name or array with object/class definition |
|
| 66 | + * @param string $mode Specify the priority/chain mode. 'normal' -> hook gets appended to the chain. 'standalone' -> only the specified hook gets called - later hooks are not able to overwrite this (E_NOTICE is triggered then). 'first' -> hook is called as the first one within the chain. 'last' -> hook is called as the last one within the chain. |
|
| 67 | + */ |
|
| 68 | + function register($definition, $hook, $mode = 'normal') |
|
| 69 | + { |
|
| 70 | + $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 71 | + $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 72 | + |
|
| 73 | + // Method able to be hooked? |
|
| 74 | + if (isset($this->hooks[$class][$function])) |
|
| 75 | + { |
|
| 76 | + switch ($mode) |
|
| 77 | + { |
|
| 78 | + case 'standalone': |
|
| 79 | + if (!isset($this->hooks[$class][$function]['standalone'])) |
|
| 80 | + { |
|
| 81 | + $this->hooks[$class][$function] = array('standalone' => $hook); |
|
| 82 | + } |
|
| 83 | + else |
|
| 84 | + { |
|
| 85 | + trigger_error('Hook not able to be called standalone, previous hook already standalone.', E_NOTICE); |
|
| 86 | + } |
|
| 87 | + break; |
|
| 88 | + |
|
| 89 | + case 'first': |
|
| 90 | + case 'last': |
|
| 91 | + $this->hooks[$class][$function][$mode][] = $hook; |
|
| 92 | + break; |
|
| 93 | + |
|
| 94 | + case 'normal': |
|
| 95 | + default: |
|
| 96 | + $this->hooks[$class][$function]['normal'][] = $hook; |
|
| 97 | + break; |
|
| 98 | + } |
|
| 99 | + } |
|
| 100 | + } |
|
| 101 | + |
|
| 102 | + /** |
|
| 103 | + * Calling all functions/methods attached to a specified hook. |
|
| 104 | + * Called by the function allowing hooks... |
|
| 105 | + * |
|
| 106 | + * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 107 | + * @return bool False if no hook got executed, true otherwise |
|
| 108 | + */ |
|
| 109 | + function call_hook($definition) |
|
| 110 | + { |
|
| 111 | + $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 112 | + $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 113 | + |
|
| 114 | + if (!empty($this->hooks[$class][$function])) |
|
| 115 | + { |
|
| 116 | + // Developer tries to call a hooked function within the hooked function... |
|
| 117 | + if ($this->current_hook !== NULL && $this->current_hook['class'] === $class && $this->current_hook['function'] === $function) |
|
| 118 | + { |
|
| 119 | + return false; |
|
| 120 | + } |
|
| 121 | + |
|
| 122 | + // Call the hook with the arguments attached and store result |
|
| 123 | + $arguments = func_get_args(); |
|
| 124 | + $this->current_hook = array('class' => $class, 'function' => $function); |
|
| 125 | + $arguments[0] = &$this; |
|
| 126 | + |
|
| 127 | + // Call the hook chain... |
|
| 128 | + if (isset($this->hooks[$class][$function]['standalone'])) |
|
| 129 | + { |
|
| 130 | + $this->hook_result[$class][$function] = call_user_func_array($this->hooks[$class][$function]['standalone'], $arguments); |
|
| 131 | + } |
|
| 132 | + else |
|
| 133 | + { |
|
| 134 | + foreach (array('first', 'normal', 'last') as $mode) |
|
| 135 | + { |
|
| 136 | + if (!isset($this->hooks[$class][$function][$mode])) |
|
| 137 | + { |
|
| 138 | + continue; |
|
| 139 | + } |
|
| 140 | + |
|
| 141 | + foreach ($this->hooks[$class][$function][$mode] as $hook) |
|
| 142 | + { |
|
| 143 | + $this->hook_result[$class][$function] = call_user_func_array($hook, $arguments); |
|
| 144 | + } |
|
| 145 | + } |
|
| 146 | + } |
|
| 147 | + |
|
| 148 | + $this->current_hook = NULL; |
|
| 149 | + return true; |
|
| 150 | + } |
|
| 151 | + |
|
| 152 | + $this->current_hook = NULL; |
|
| 153 | + return false; |
|
| 154 | + } |
|
| 155 | + |
|
| 156 | + /** |
|
| 157 | + * Get result from previously called functions/methods for the same hook |
|
| 158 | + * |
|
| 159 | + * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 160 | + * @return mixed False if nothing returned if there is no result, else array('result' => ... ) |
|
| 161 | + */ |
|
| 162 | + function previous_hook_result($definition) |
|
| 163 | + { |
|
| 164 | + $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 165 | + $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 166 | + |
|
| 167 | + if (!empty($this->hooks[$class][$function]) && isset($this->hook_result[$class][$function])) |
|
| 168 | + { |
|
| 169 | + return array('result' => $this->hook_result[$class][$function]); |
|
| 170 | + } |
|
| 171 | + |
|
| 172 | + return false; |
|
| 173 | + } |
|
| 174 | + |
|
| 175 | + /** |
|
| 176 | + * Check if the called functions/methods returned something. |
|
| 177 | + * |
|
| 178 | + * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 179 | + * @return bool True if results are there, false if not |
|
| 180 | + */ |
|
| 181 | + function hook_return($definition) |
|
| 182 | + { |
|
| 183 | + $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 184 | + $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 185 | + |
|
| 186 | + if (!empty($this->hooks[$class][$function]) && isset($this->hook_result[$class][$function])) |
|
| 187 | + { |
|
| 188 | + return true; |
|
| 189 | + } |
|
| 190 | + |
|
| 191 | + return false; |
|
| 192 | + } |
|
| 193 | + |
|
| 194 | + /** |
|
| 195 | + * Give actual result from called functions/methods back. |
|
| 196 | + * |
|
| 197 | + * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 198 | + * @return mixed The result |
|
| 199 | + */ |
|
| 200 | + function hook_return_result($definition) |
|
| 201 | + { |
|
| 202 | + $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 203 | + $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 204 | + |
|
| 205 | + if (!empty($this->hooks[$class][$function]) && isset($this->hook_result[$class][$function])) |
|
| 206 | + { |
|
| 207 | + $result = $this->hook_result[$class][$function]; |
|
| 208 | + unset($this->hook_result[$class][$function]); |
|
| 209 | + return $result; |
|
| 210 | + } |
|
| 211 | + |
|
| 212 | + return; |
|
| 213 | + } |
|
| 214 | + |
|
| 215 | + /** |
|
| 216 | + * Add new function to the allowed hooks. |
|
| 217 | + * |
|
| 218 | + * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 219 | + */ |
|
| 220 | + function add_hook($definition) |
|
| 221 | + { |
|
| 222 | + if (!is_array($definition)) |
|
| 223 | + { |
|
| 224 | + $definition = array('__global', $definition); |
|
| 225 | + } |
|
| 226 | + |
|
| 227 | + $this->hooks[$definition[0]][$definition[1]] = array(); |
|
| 228 | + } |
|
| 229 | + |
|
| 230 | + /** |
|
| 231 | + * Remove function from the allowed hooks. |
|
| 232 | + * |
|
| 233 | + * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
|
| 234 | + */ |
|
| 235 | + function remove_hook($definition) |
|
| 236 | + { |
|
| 237 | + $class = (!is_array($definition)) ? '__global' : $definition[0]; |
|
| 238 | + $function = (!is_array($definition)) ? $definition : $definition[1]; |
|
| 239 | + |
|
| 240 | + if (isset($this->hooks[$class][$function])) |
|
| 241 | + { |
|
| 242 | + unset($this->hooks[$class][$function]); |
|
| 243 | + |
|
| 244 | + if (isset($this->hook_result[$class][$function])) |
|
| 245 | + { |
|
| 246 | + unset($this->hook_result[$class][$function]); |
|
| 247 | + } |
|
| 248 | + } |
|
| 249 | + } |
|
| 250 | 250 | } |
@@ -22,8 +22,7 @@ discard block |
||
| 22 | 22 | /** |
| 23 | 23 | * phpBB Hook Class |
| 24 | 24 | */ |
| 25 | -class phpbb_hook |
|
| 26 | -{ |
|
| 25 | +class phpbb_hook { |
|
| 27 | 26 | /** |
| 28 | 27 | * Registered hooks |
| 29 | 28 | */ |
@@ -44,8 +43,7 @@ discard block |
||
| 44 | 43 | * |
| 45 | 44 | * @param array $valid_hooks array containing the hookable functions/methods |
| 46 | 45 | */ |
| 47 | - function phpbb_hook($valid_hooks) |
|
| 48 | - { |
|
| 46 | + function phpbb_hook($valid_hooks) { |
|
| 49 | 47 | foreach ($valid_hooks as $_null => $method) |
| 50 | 48 | { |
| 51 | 49 | $this->add_hook($method); |
@@ -65,8 +63,7 @@ discard block |
||
| 65 | 63 | * @param mixed $hook The replacement function/method to be called. Passing function name or array with object/class definition |
| 66 | 64 | * @param string $mode Specify the priority/chain mode. 'normal' -> hook gets appended to the chain. 'standalone' -> only the specified hook gets called - later hooks are not able to overwrite this (E_NOTICE is triggered then). 'first' -> hook is called as the first one within the chain. 'last' -> hook is called as the last one within the chain. |
| 67 | 65 | */ |
| 68 | - function register($definition, $hook, $mode = 'normal') |
|
| 69 | - { |
|
| 66 | + function register($definition, $hook, $mode = 'normal') { |
|
| 70 | 67 | $class = (!is_array($definition)) ? '__global' : $definition[0]; |
| 71 | 68 | $function = (!is_array($definition)) ? $definition : $definition[1]; |
| 72 | 69 | |
@@ -79,8 +76,7 @@ discard block |
||
| 79 | 76 | if (!isset($this->hooks[$class][$function]['standalone'])) |
| 80 | 77 | { |
| 81 | 78 | $this->hooks[$class][$function] = array('standalone' => $hook); |
| 82 | - } |
|
| 83 | - else |
|
| 79 | + } else |
|
| 84 | 80 | { |
| 85 | 81 | trigger_error('Hook not able to be called standalone, previous hook already standalone.', E_NOTICE); |
| 86 | 82 | } |
@@ -106,8 +102,7 @@ discard block |
||
| 106 | 102 | * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
| 107 | 103 | * @return bool False if no hook got executed, true otherwise |
| 108 | 104 | */ |
| 109 | - function call_hook($definition) |
|
| 110 | - { |
|
| 105 | + function call_hook($definition) { |
|
| 111 | 106 | $class = (!is_array($definition)) ? '__global' : $definition[0]; |
| 112 | 107 | $function = (!is_array($definition)) ? $definition : $definition[1]; |
| 113 | 108 | |
@@ -128,8 +123,7 @@ discard block |
||
| 128 | 123 | if (isset($this->hooks[$class][$function]['standalone'])) |
| 129 | 124 | { |
| 130 | 125 | $this->hook_result[$class][$function] = call_user_func_array($this->hooks[$class][$function]['standalone'], $arguments); |
| 131 | - } |
|
| 132 | - else |
|
| 126 | + } else |
|
| 133 | 127 | { |
| 134 | 128 | foreach (array('first', 'normal', 'last') as $mode) |
| 135 | 129 | { |
@@ -159,8 +153,7 @@ discard block |
||
| 159 | 153 | * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
| 160 | 154 | * @return mixed False if nothing returned if there is no result, else array('result' => ... ) |
| 161 | 155 | */ |
| 162 | - function previous_hook_result($definition) |
|
| 163 | - { |
|
| 156 | + function previous_hook_result($definition) { |
|
| 164 | 157 | $class = (!is_array($definition)) ? '__global' : $definition[0]; |
| 165 | 158 | $function = (!is_array($definition)) ? $definition : $definition[1]; |
| 166 | 159 | |
@@ -178,8 +171,7 @@ discard block |
||
| 178 | 171 | * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
| 179 | 172 | * @return bool True if results are there, false if not |
| 180 | 173 | */ |
| 181 | - function hook_return($definition) |
|
| 182 | - { |
|
| 174 | + function hook_return($definition) { |
|
| 183 | 175 | $class = (!is_array($definition)) ? '__global' : $definition[0]; |
| 184 | 176 | $function = (!is_array($definition)) ? $definition : $definition[1]; |
| 185 | 177 | |
@@ -197,8 +189,7 @@ discard block |
||
| 197 | 189 | * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
| 198 | 190 | * @return mixed The result |
| 199 | 191 | */ |
| 200 | - function hook_return_result($definition) |
|
| 201 | - { |
|
| 192 | + function hook_return_result($definition) { |
|
| 202 | 193 | $class = (!is_array($definition)) ? '__global' : $definition[0]; |
| 203 | 194 | $function = (!is_array($definition)) ? $definition : $definition[1]; |
| 204 | 195 | |
@@ -217,8 +208,7 @@ discard block |
||
| 217 | 208 | * |
| 218 | 209 | * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
| 219 | 210 | */ |
| 220 | - function add_hook($definition) |
|
| 221 | - { |
|
| 211 | + function add_hook($definition) { |
|
| 222 | 212 | if (!is_array($definition)) |
| 223 | 213 | { |
| 224 | 214 | $definition = array('__global', $definition); |
@@ -232,8 +222,7 @@ discard block |
||
| 232 | 222 | * |
| 233 | 223 | * @param mixed $definition Declaring function (with __FUNCTION__) or class with array(__CLASS__, __FUNCTION__) |
| 234 | 224 | */ |
| 235 | - function remove_hook($definition) |
|
| 236 | - { |
|
| 225 | + function remove_hook($definition) { |
|
| 237 | 226 | $class = (!is_array($definition)) ? '__global' : $definition[0]; |
| 238 | 227 | $function = (!is_array($definition)) ? $definition : $definition[1]; |
| 239 | 228 | |
@@ -37,7 +37,7 @@ discard block |
||
| 37 | 37 | /** |
| 38 | 38 | * internal pointer |
| 39 | 39 | */ |
| 40 | - var $current_hook = NULL; |
|
| 40 | + var $current_hook = null; |
|
| 41 | 41 | |
| 42 | 42 | /** |
| 43 | 43 | * Initialize hook class. |
@@ -114,7 +114,7 @@ discard block |
||
| 114 | 114 | if (!empty($this->hooks[$class][$function])) |
| 115 | 115 | { |
| 116 | 116 | // Developer tries to call a hooked function within the hooked function... |
| 117 | - if ($this->current_hook !== NULL && $this->current_hook['class'] === $class && $this->current_hook['function'] === $function) |
|
| 117 | + if ($this->current_hook !== null && $this->current_hook['class'] === $class && $this->current_hook['function'] === $function) |
|
| 118 | 118 | { |
| 119 | 119 | return false; |
| 120 | 120 | } |
@@ -145,11 +145,11 @@ discard block |
||
| 145 | 145 | } |
| 146 | 146 | } |
| 147 | 147 | |
| 148 | - $this->current_hook = NULL; |
|
| 148 | + $this->current_hook = null; |
|
| 149 | 149 | return true; |
| 150 | 150 | } |
| 151 | 151 | |
| 152 | - $this->current_hook = NULL; |
|
| 152 | + $this->current_hook = null; |
|
| 153 | 153 | return false; |
| 154 | 154 | } |
| 155 | 155 | |