diff --git a/plugins/master-slave.php b/plugins/master-slave.php new file mode 100644 index 00000000..d150ee29 --- /dev/null +++ b/plugins/master-slave.php @@ -0,0 +1,43 @@ + $master) + */ + function AdminerMasterSlave($masters) { + $this->masters = $masters; + } + + function credentials() { + if ($_POST && isset($this->masters[SERVER])) { + return array($this->masters[SERVER], $_GET["username"], get_session("pwds")); + } + } + + function login($login, $password) { + if (!$_POST && ($master = &$_SESSION["master"])) { + $connection = connection(); + $connection->query("DO MASTER_POS_WAIT('" . q($master['File']) . "', $master[Position])"); + $master = null; + } + } + + function messageQuery($query) { + //! doesn't work with sql.inc.php + $connection = connection(); + $result = $connection->query('SHOW MASTER STATUS'); + if ($result) { + restart_session(); + $_SESSION["master"] = $result->fetch_assoc(); + } + } + +}