changed direct public access of maniacontrol properties to using getter methods

This commit is contained in:
Steffen Schröder
2014-08-03 01:34:18 +02:00
parent e560919096
commit 4d3dc92ad5
64 changed files with 2337 additions and 2055 deletions

View File

@ -45,8 +45,11 @@ class InstallMenu implements ConfiguratorMenu, ManialinkPageAnswerListener {
public function __construct(ManiaControl $maniaControl) {
$this->maniaControl = $maniaControl;
$this->maniaControl->authenticationManager->definePermissionLevel(self::SETTING_PERMISSION_INSTALL_PLUGINS, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
$this->maniaControl->manialinkManager->registerManialinkPageAnswerListener(self::ACTION_REFRESH_LIST, $this, 'handleRefreshListAction');
// Permissions
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_INSTALL_PLUGINS, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
// Callbacks
$this->maniaControl->getManialinkManager()->registerManialinkPageAnswerListener(self::ACTION_REFRESH_LIST, $this, 'handleRefreshListAction');
}
/**
@ -122,7 +125,7 @@ class InstallMenu implements ConfiguratorMenu, ManialinkPageAnswerListener {
// List plugins
foreach ($pluginList as $plugin) {
if ($this->maniaControl->pluginManager->isPluginIdInstalled($plugin->id)) {
if ($this->maniaControl->getPluginManager()->isPluginIdInstalled($plugin->id)) {
// Already installed -> Skip
continue;
}
@ -270,6 +273,6 @@ class InstallMenu implements ConfiguratorMenu, ManialinkPageAnswerListener {
* @param Player $player
*/
public function handleRefreshListAction(array $actionCallback, Player $player) {
$this->maniaControl->configurator->showMenu($player, $this);
$this->maniaControl->getConfigurator()->showMenu($player, $this);
}
}

View File

@ -47,10 +47,10 @@ class PluginManager {
$this->initTables();
$this->pluginMenu = new PluginMenu($maniaControl);
$this->maniaControl->configurator->addMenu($this->pluginMenu);
$this->maniaControl->getConfigurator()->addMenu($this->pluginMenu);
$this->pluginInstallMenu = new InstallMenu($maniaControl);
$this->maniaControl->configurator->addMenu($this->pluginInstallMenu);
$this->maniaControl->getConfigurator()->addMenu($this->pluginInstallMenu);
}
/**
@ -59,7 +59,7 @@ class PluginManager {
* @return bool
*/
private function initTables() {
$mysqli = $this->maniaControl->database->mysqli;
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
$pluginsTableQuery = "CREATE TABLE IF NOT EXISTS `" . self::TABLE_PLUGINS . "` (
`index` int(11) NOT NULL AUTO_INCREMENT,
`className` varchar(100) NOT NULL,
@ -152,22 +152,22 @@ class PluginManager {
$plugin->unload();
if ($plugin instanceof CallbackListener) {
$this->maniaControl->callbackManager->unregisterCallbackListener($plugin);
$this->maniaControl->callbackManager->unregisterScriptCallbackListener($plugin);
$this->maniaControl->getCallbackManager()->unregisterCallbackListener($plugin);
$this->maniaControl->getCallbackManager()->unregisterScriptCallbackListener($plugin);
}
if ($plugin instanceof CommandListener) {
$this->maniaControl->commandManager->unregisterCommandListener($plugin);
$this->maniaControl->getCommandManager()->unregisterCommandListener($plugin);
}
if ($plugin instanceof ManialinkPageAnswerListener) {
$this->maniaControl->manialinkManager->unregisterManialinkPageAnswerListener($plugin);
$this->maniaControl->getManialinkManager()->unregisterManialinkPageAnswerListener($plugin);
}
if ($plugin instanceof TimerListener) {
$this->maniaControl->timerManager->unregisterTimerListenings($plugin);
$this->maniaControl->getTimerManager()->unregisterTimerListenings($plugin);
}
$this->savePluginStatus($pluginClass, false);
$this->maniaControl->callbackManager->triggerCallback(self::CB_PLUGIN_UNLOADED, $pluginClass, $plugin);
$this->maniaControl->getCallbackManager()->triggerCallback(self::CB_PLUGIN_UNLOADED, $pluginClass, $plugin);
return true;
}
@ -205,7 +205,7 @@ class PluginManager {
* @return bool
*/
private function savePluginStatus($className, $active) {
$mysqli = $this->maniaControl->database->mysqli;
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
$pluginStatusQuery = "INSERT INTO `" . self::TABLE_PLUGINS . "` (
`className`,
`active`
@ -327,7 +327,7 @@ class PluginManager {
* @return bool
*/
public function getSavedPluginStatus($className) {
$mysqli = $this->maniaControl->database->mysqli;
$mysqli = $this->maniaControl->getDatabase()->getMysqli();
$pluginStatusQuery = "SELECT `active` FROM `" . self::TABLE_PLUGINS . "`
WHERE `className` = ?;";
$pluginStatement = $mysqli->prepare($pluginStatusQuery);
@ -378,7 +378,7 @@ class PluginManager {
$plugin->load($this->maniaControl);
} catch (\Exception $e) {
$message = "Error during Plugin Activation of '{$pluginClass}': '{$e->getMessage()}'";
$this->maniaControl->chat->sendError($message, $adminLogin);
$this->maniaControl->getChat()->sendError($message, $adminLogin);
$this->maniaControl->log($message);
$this->savePluginStatus($pluginClass, false);
return false;
@ -387,7 +387,7 @@ class PluginManager {
$this->activePlugins[$pluginClass] = $plugin;
$this->savePluginStatus($pluginClass, true);
$this->maniaControl->callbackManager->triggerCallback(self::CB_PLUGIN_LOADED, $pluginClass, $plugin);
$this->maniaControl->getCallbackManager()->triggerCallback(self::CB_PLUGIN_LOADED, $pluginClass, $plugin);
return true;
}
@ -462,7 +462,7 @@ class PluginManager {
*/
public function fetchPluginList(callable $function) {
$url = ManiaControl::URL_WEBSERVICE . 'plugins';
$this->maniaControl->fileReader->loadFile($url, function ($dataJson, $error) use (&$function) {
$this->maniaControl->getFileReader()->loadFile($url, function ($dataJson, $error) use (&$function) {
$data = json_decode($dataJson);
call_user_func($function, $data, $error);
});

View File

@ -52,16 +52,19 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
private $maniaControl = null;
/**
* Create a new plugin menu instance
* Construct a new plugin menu instance
*
* @param ManiaControl $maniaControl
*/
public function __construct(ManiaControl $maniaControl) {
$this->maniaControl = $maniaControl;
$this->maniaControl->manialinkManager->registerManialinkPageAnswerListener(self::ACTION_BACK_TO_PLUGINS, $this, 'backToPlugins');
$this->maniaControl->callbackManager->registerCallbackListener(CallbackManager::CB_MP_PLAYERMANIALINKPAGEANSWER, $this, 'handleManialinkPageAnswer');
$this->maniaControl->authenticationManager->definePermissionLevel(self::SETTING_PERMISSION_CHANGE_PLUGIN_SETTINGS, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
// Callbacks
$this->maniaControl->getCallbackManager()->registerCallbackListener(CallbackManager::CB_MP_PLAYERMANIALINKPAGEANSWER, $this, 'handleManialinkPageAnswer');
$this->maniaControl->getManialinkManager()->registerManialinkPageAnswerListener(self::ACTION_BACK_TO_PLUGINS, $this, 'backToPlugins');
// Permissions
$this->maniaControl->getAuthenticationManager()->definePermissionLevel(self::SETTING_PERMISSION_CHANGE_PLUGIN_SETTINGS, AuthenticationManager::AUTH_LEVEL_SUPERADMIN);
}
/**
@ -79,7 +82,7 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
*/
public function backToPlugins($callback, Player $player) {
$player->destroyCache($this, self::CACHE_SETTING_CLASS);
$this->maniaControl->configurator->showMenu($player, $this);
$this->maniaControl->getConfigurator()->showMenu($player, $this);
}
/**
@ -90,7 +93,7 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
$script->addFeature($paging);
$frame = new Frame();
$pluginClasses = $this->maniaControl->pluginManager->getPluginClasses();
$pluginClasses = $this->maniaControl->getPluginManager()->getPluginClasses();
// Config
$pagerSize = 9.;
@ -131,7 +134,7 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
// Display normal Plugin List
// Plugin pages
$posY = 0.;
$pluginUpdates = $this->maniaControl->updateManager->pluginUpdateManager->getPluginsUpdates();
$pluginUpdates = $this->maniaControl->getUpdateManager()->getPluginUpdateManager()->getPluginsUpdates();
usort($pluginClasses, function ($pluginClassA, $pluginClassB) {
/** @var Plugin $pluginClassA */
@ -149,7 +152,7 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
$posY = $height * 0.41;
}
$active = $this->maniaControl->pluginManager->isPluginActive($pluginClass);
$active = $this->maniaControl->getPluginManager()->isPluginActive($pluginClass);
$pluginFrame = new Frame();
$pageFrame->add($pluginFrame);
@ -251,7 +254,7 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
*/
private function getPluginSettingsMenu(Frame $frame, $width, $height, Paging $paging, Player $player, $settingClass) {
// TODO: centralize menu code to use by mc settings and plugin settings
$settings = $this->maniaControl->settingManager->getSettingsByClass($settingClass);
$settings = $this->maniaControl->getSettingManager()->getSettingsByClass($settingClass);
$pageSettingsMaxCount = 11;
$posY = 0;
@ -344,7 +347,7 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
*/
public function handleManialinkPageAnswer(array $callback) {
$login = $callback[1][1];
$player = $this->maniaControl->playerManager->getPlayer($login);
$player = $this->maniaControl->getPlayerManager()->getPlayer($login);
if (!$player) {
return;
}
@ -360,22 +363,22 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
if ($enable) {
$pluginClass = substr($actionId, strlen(self::ACTION_PREFIX_ENABLEPLUGIN));
/** @var Plugin $pluginClass */
$activated = $this->maniaControl->pluginManager->activatePlugin($pluginClass, $player->login);
$activated = $this->maniaControl->getPluginManager()->activatePlugin($pluginClass, $player->login);
if ($activated) {
$this->maniaControl->chat->sendSuccess($pluginClass::getName() . ' activated!', $player);
$this->maniaControl->getChat()->sendSuccess($pluginClass::getName() . ' activated!', $player);
$this->maniaControl->log("{$player->login} activated '{$pluginClass}'!", true);
} else {
$this->maniaControl->chat->sendError('Error activating ' . $pluginClass::getName() . '!', $player);
$this->maniaControl->getChat()->sendError('Error activating ' . $pluginClass::getName() . '!', $player);
}
} else if ($disable) {
$pluginClass = substr($actionId, strlen(self::ACTION_PREFIX_DISABLEPLUGIN));
/** @var Plugin $pluginClass */
$deactivated = $this->maniaControl->pluginManager->deactivatePlugin($pluginClass);
$deactivated = $this->maniaControl->getPluginManager()->deactivatePlugin($pluginClass);
if ($deactivated) {
$this->maniaControl->chat->sendSuccess($pluginClass::getName() . ' deactivated!', $player);
$this->maniaControl->getChat()->sendSuccess($pluginClass::getName() . ' deactivated!', $player);
$this->maniaControl->log("{$player->login} deactivated '{$pluginClass}'!", true);
} else {
$this->maniaControl->chat->sendError('Error deactivating ' . $pluginClass::getName() . '!', $player);
$this->maniaControl->getChat()->sendError('Error deactivating ' . $pluginClass::getName() . '!', $player);
}
} else if ($settings) {
// Open Settings Menu
@ -384,15 +387,15 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
}
// Reopen the Menu
$this->maniaControl->configurator->showMenu($player, $this);
$this->maniaControl->getConfigurator()->showMenu($player, $this);
}
/**
* @see \ManiaControl\Configurators\ConfiguratorMenu::saveConfigData()
*/
public function saveConfigData(array $configData, Player $player) {
if (!$this->maniaControl->authenticationManager->checkPermission($player, self::SETTING_PERMISSION_CHANGE_PLUGIN_SETTINGS)) {
$this->maniaControl->authenticationManager->sendNotAllowed($player);
if (!$this->maniaControl->getAuthenticationManager()->checkPermission($player, self::SETTING_PERMISSION_CHANGE_PLUGIN_SETTINGS)) {
$this->maniaControl->getAuthenticationManager()->sendNotAllowed($player);
return;
}
if (!$configData[3] || strpos($configData[3][0]['Name'], self::ACTION_PREFIX_SETTING) !== 0) {
@ -403,7 +406,7 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
foreach ($configData[3] as $settingData) {
$settingIndex = (int)substr($settingData['Name'], $prefixLength);
$settingObject = $this->maniaControl->settingManager->getSettingObjectByIndex($settingIndex);
$settingObject = $this->maniaControl->getSettingManager()->getSettingObjectByIndex($settingIndex);
if (!$settingObject) {
continue;
}
@ -413,12 +416,12 @@ class PluginMenu implements CallbackListener, ConfiguratorMenu, ManialinkPageAns
}
$settingObject->value = $settingData['Value'];
$this->maniaControl->settingManager->saveSetting($settingObject);
$this->maniaControl->getSettingManager()->saveSetting($settingObject);
}
$this->maniaControl->chat->sendSuccess('Plugin Settings saved!', $player);
$this->maniaControl->getChat()->sendSuccess('Plugin Settings saved!', $player);
// Reopen the Menu
$this->maniaControl->configurator->showMenu($player, $this);
$this->maniaControl->getConfigurator()->showMenu($player, $this);
}
}