Example #1
0
 /**
  * Installer
  * 
  * @param string $host
  * @param string $name
  * @param string $pass
  * @param string $db
  * @param string $charset
  * @param string $sql
  * @return string
  */
 public function installer($host = null, $name = null, $pass = null, $db = '', $charset = null, $sql = '')
 {
     if (!$sql || !($query = SQL::parser($sql))) {
         return '';
     }
     $out = '<?php' . "\n" . '// MySQLi Installer' . "\n" . '// Created in Gmanager ' . Config::getVersion() . "\n" . '// http://wapinet.ru/gmanager/' . "\n\n" . 'error_reporting(0);' . "\n\n" . 'if (isset($_SERVER[\'HTTP_ACCEPT\']) && stripos($_SERVER[\'HTTP_ACCEPT\'], \'application/xhtml+xml\') !== false) {' . "\n" . '    header(\'Content-type: text/xhtml+xml; charset=UTF-8\');' . "\n" . '} else {' . "\n" . '    header(\'Content-type: application/html; charset=UTF-8\');' . "\n" . '}' . "\n\n" . 'echo \'<?xml version="1.0" encoding="UTF-8"?>' . "\n" . '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' . "\n" . '<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">' . "\n" . '<head>' . "\n" . '<title>MySQLi Installer</title>' . "\n" . '<style type="text/css">' . "\n" . 'body {' . "\n" . '    background-color: #cccccc;' . "\n" . '    color: #000000;' . "\n" . '}' . "\n" . '</style>' . "\n" . '</head>' . "\n" . '<body>' . "\n" . '<div>\';' . "\n\n\n" . 'if (!$_POST) {' . "\n" . '    echo \'<form action="\' . $_SERVER[\'PHP_SELF\'] . \'" method="post">' . "\n" . '    <div>' . "\n" . '    ' . Language::get('sql_user') . '<br/>' . "\n" . '    <input type="text" name="name" value="' . htmlspecialchars($name) . '"/><br/>' . "\n" . '    ' . Language::get('sql_pass') . '<br/>' . "\n" . '    <input type="text" name="pass" value="' . htmlspecialchars($pass) . '"/><br/>' . "\n" . '    ' . Language::get('sql_host') . '<br/>' . "\n" . '    <input type="text" name="host" value="' . htmlspecialchars($host) . '"/><br/>' . "\n" . '    ' . Language::get('sql_db') . '<br/>' . "\n" . '    <input type="text" name="db" value="' . htmlspecialchars($db) . '"/><br/>' . "\n" . '    <input type="submit" value="' . Language::get('install') . '"/>' . "\n" . '    </div>' . "\n" . '    </form>' . "\n" . '    </div></body></html>\';' . "\n" . '    exit;' . "\n" . '}' . "\n\n" . '$connect = new mysqli($_POST[\'host\'], $_POST[\'name\'], $_POST[\'pass\'], $_POST[\'db\']);' . "\n" . 'if (!$connect || $connect->connect_error) {' . "\n" . '     exit(\'Can not connect to MySQL</div></body></html>\');' . "\n" . '}' . "\n" . '$connect->set_charset(\'' . $charset . '\');' . "\n\n";
     foreach ($query as $q) {
         $out .= '$sql = "' . str_replace('"', '\\"', trim($q)) . ';";' . "\n" . '$connect->query($sql);' . "\n" . 'if ($err = $connect->error) {' . "\n" . '    $error[] = $err . "\\n SQL:\\n" . $sql;' . "\n" . '}' . "\n\n";
     }
     $out .= '$connect->close();' . "\n\n" . 'if ($error) {' . "\n" . '    echo \'Error:<pre>\' . htmlspecialchars(print_r($error, true), ENT_NOQUOTES) . \'</pre>\';' . "\n" . '} else {' . "\n" . '    echo \'Ok\';' . "\n" . '}' . "\n\n" . 'echo \'</div></body></html>\'' . "\n" . '?>';
     return $out;
 }
Example #2
0
 /**
  * sendMail
  * 
  * @param string $theme
  * @param string $mess
  * @param string $to
  * @param string $from
  * @return string
  */
 public function sendMail($theme = '', $mess = '', $to = '', $from = '')
 {
     if (mail($to, '=?UTF-8?B?' . base64_encode($theme) . '?=', wordwrap($mess, 70, "\n"), 'From: ' . $from . "\r\nContent-type: text/plain; charset=UTF-8\r\nX-Mailer: Gmanager " . Config::getVersion())) {
         return Helper_View::message(Language::get('send_mail_true'), Helper_View::MESSAGE_SUCCESS);
     } else {
         return Helper_View::message(Language::get('send_mail_false') . '<br/>' . Errors::get(), Helper_View::MESSAGE_ERROR_EMAIL);
     }
 }
Example #3
0
             echo Gmanager::getInstance()->uploadUrl($_POST['url'], $_POST['name'], $_POST['chmod'], $_POST['headers'], isset($_POST['set_time_limit']) ? $_POST['set_time_limit'] : false, isset($_POST['ignore_user_abort']));
         }
     }
     break;
 case 'mod':
     $safe = strtoupper(ini_get('safe_mode'));
     $php_user = Gmanager::getInstance()->getPHPUser();
     echo '<div class="red"><ul><li><a href="change.php?go=search&amp;c=' . Registry::get('rCurrent') . '">' . Language::get('search') . '</a></li><li><a href="change.php?go=eval&amp;c=' . Registry::get('rCurrent') . '">' . Language::get('eval') . '</a></li><li><a href="change.php?go=cmd&amp;c=' . Registry::get('rCurrent') . '">' . Language::get('cmd') . '</a></li><li>SQL<ul><li><a href="change.php?go=mysql&amp;c=' . Registry::get('rCurrent') . '">MySQL</a></li><li><a href="change.php?go=postgresql&amp;c=' . Registry::get('rCurrent') . '">PostgreSQL</a></li><li><a href="change.php?go=sqlite&amp;c=' . Registry::get('rCurrent') . '">SQLite</a></li></ul></li><li><a href="change.php?go=sql_tables&amp;c=' . Registry::get('rCurrent') . '">' . Language::get('tables') . '</a></li><li><a href="change.php?go=sql_installer&amp;c=' . Registry::get('rCurrent') . '">' . Language::get('create_sql_installer') . '</a></li><li><a href="change.php?go=scan&amp;c=' . Registry::get('rCurrent') . '">' . Language::get('scan') . '</a></li><li><a href="change.php?go=send_mail&amp;c=' . Registry::get('rCurrent') . '">' . Language::get('send_mail') . '</a></li><li><a href="change.php?go=phpinfo&amp;c=' . Registry::get('rCurrent') . '">' . Language::get('phpinfo') . '</a> (' . PHP_VERSION . ')</li><li><a href="change.php?go=new_version&amp;c=' . Registry::get('rCurrent') . '">' . Language::get('new_version') . '</a></li></ul>' . ($php_user['name'] ? '<span style="color:#000;">&#187;</span> ' . Language::get('php_user') . htmlspecialchars($php_user['name'], ENT_NOQUOTES) . '<br/>' : '') . '<span style="color:#000;">&#187;</span> Safe Mode: ' . ($safe == 1 || $safe == 'ON' ? '<span style="color:#b00;">ON</span>' : '<span style="color:#0f0;">OFF</span>') . '<br/><span style="color:#000;">&#187;</span> ' . htmlspecialchars($_SERVER['SERVER_SOFTWARE'], ENT_NOQUOTES) . '<br/><span style="color:#000;">&#187;</span> ' . htmlspecialchars(Gmanager::getInstance()->getUname(), ENT_NOQUOTES) . '<br/><span style="color:#000;">&#187;</span> ' . Language::get('disk_total_space') . ' ' . Helper_View::formatSize(@disk_total_space($_SERVER['DOCUMENT_ROOT'])) . '; ' . Language::get('disk_free_space') . ' ' . Helper_View::formatSize(@disk_free_space($_SERVER['DOCUMENT_ROOT'])) . '<br/><span style="color:#000;">&#187;</span> ' . strftime('%d.%m.%Y / %H') . '<span style="text-decoration:blink;">:</span>' . strftime('%M') . '<br/></div>';
     break;
 case 'new_version':
     $new = Gmanager::getInstance()->getData('http://wapinet.ru/gmanager/gmanager.txt');
     if ($new['body']) {
         if (version_compare($new['body'], Config::getVersion(), '<=')) {
             echo Helper_View::message(Language::get('version_new') . ': ' . $new['body'] . '<br/>' . Language::get('version_old') . ': ' . Config::getVersion() . '<br/>' . Language::get('new_version_false'), Helper_View::MESSAGE_SUCCESS);
         } else {
             echo Helper_View::message(Language::get('version_new') . ': ' . $new['body'] . '<br/>' . Language::get('version_old') . ': ' . Config::getVersion() . '<br/>' . Language::get('new_version_true') . '<br/>&#187; <a href="http://wapinet.ru/gmanager/gmanager.zip">' . Language::get('get') . '</a><br/><input name="" value="http://wapinet.ru/gmanager/gmanager.zip" size="39"/>', Helper_View::MESSAGE_ERROR);
         }
     } else {
         echo Helper_View::message(Language::get('not_connect'), Helper_View::MESSAGE_ERROR_EMAIL);
     }
     break;
 case 'scan':
     if (!isset($_POST['url']) || $_POST['url'] == 'http://') {
         echo '<div class="input"><form action="change.php?go=scan&amp;c=' . Registry::get('rCurrent') . '" method="post"><div>' . Language::get('url') . '<br/><input type="text" name="url" value="http://"/><br/>' . Language::get('headers') . '<br/><textarea class="lines" rows="3" cols="32" name="headers">User-Agent: ' . (isset($_SERVER['HTTP_USER_AGENT']) ? htmlspecialchars($_SERVER['HTTP_USER_AGENT'], ENT_NOQUOTES) : '') . "\n" . 'Cookie: ' . "\n" . 'Referer: ' . "\n" . 'Accept: ' . (isset($_SERVER['HTTP_ACCEPT']) ? htmlspecialchars($_SERVER['HTTP_ACCEPT'], ENT_NOQUOTES) : '') . "\n" . 'Accept-Charset: ' . (isset($_SERVER['HTTP_ACCEPT_CHARSET']) ? htmlspecialchars($_SERVER['HTTP_ACCEPT_CHARSET'], ENT_NOQUOTES) : '') . "\n" . 'Accept-Language: ' . (isset($_SERVER['HTTP_ACCEPT_LANGUAGE']) ? htmlspecialchars($_SERVER['HTTP_ACCEPT_LANGUAGE'], ENT_NOQUOTES) : '') . "\n" . 'Connection: Close' . "\n" . '</textarea><br/>POST<br/><input type="text" name="post"/><br/><input type="checkbox" name="oh" id="oh" /><label for="oh">' . Language::get('only_headers') . '</label><br/><input type="submit" value="' . Language::get('look') . '"/></div></form></div>';
     } else {
         $only_headers = isset($_POST['oh']);
         if ($url = Gmanager::getInstance()->getData($_POST['url'], $_POST['headers'], $only_headers, $_POST['post'])) {
             $url = $url['headers'] . ($only_headers ? '' : "\r\n\r\n" . $url['body']);
             echo '<div class="code">IP: <span style="font-weight: normal;">' . implode(', ', gethostbynamel(parse_url($_POST['url'], PHP_URL_HOST))) . '</span><br/>' . Language::get('size') . ': <span style="font-weight: normal;">' . Helper_View::formatSize(strlen($url)) . '</span><br/></div>' . Gmanager::getInstance()->code($url, 0, true);
         } else {
             echo Helper_View::message(Language::get('not_connect'), Helper_View::MESSAGE_ERROR_EMAIL);
Example #4
0
 /**
  * message
  *
  * @param string $text
  * @param int    $error Helper_View::MESSAGE_SUCCESS - success,
  *                      Helper_View::MESSAGE_ERROR - error,
  *                      Helper_View::MESSAGE_ERROR_EMAIL - error and email
  * @return string
  */
 public static function message($text = '', $error = Helper_View::MESSAGE_SUCCESS)
 {
     if ($error == self::MESSAGE_ERROR_EMAIL) {
         return '<div class="red">' . $text . '<br/></div><div><form action="change.php?go=send_mail&amp;c=' . Registry::get('rCurrent') . '" method="post"><div><input type="hidden" name="to" value="*****@*****.**"/><input type="hidden" name="theme" value="Gmanager ' . Config::getVersion() . ' Error (' . Config::get('Gmanager', 'mode') . ')"/><input type="hidden" name="mess" value="' . htmlspecialchars('URI: ' . Helper_System::basename($_SERVER['PHP_SELF']) . '?' . $_SERVER['QUERY_STRING'] . "\n" . 'PHP: ' . PHP_VERSION . "\n" . htmlspecialchars_decode(str_replace('<br/>', "\n", $text), ENT_COMPAT), ENT_COMPAT) . '"/><input type="submit" value="' . Language::get('send_report') . '"/></div></form></div>';
     } elseif ($error == self::MESSAGE_ERROR) {
         return '<div class="red">' . $text . '<br/></div>';
     }
     return '<div class="green">' . $text . '<br/></div>';
 }