Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
  • Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Веб webMCR 2.4

Вложения:

  • MineCraft.zip
    MineCraft.zip
    Размер файла
    17,5 КБ
    Просмотров
    6
@NC22, слушай... А как сделать чтобы эта кнопка была только тогда когда игрок авторизуется?
Посмотреть вложение 7421
P.S. Просто я делаю через html.
Примерно так в index.php
Код:
if (!empty($user)) {
 
  if ($user->getPermission('add_news')) $menu_items['add_news'] = $menu->AddItem('Добавить новость', ($config['rewrite'])? 'go/news_add' : '?mode=news_add');
  if ($user->lvl() >= 15)              $menu_items['admin']    = $menu->AddItem('Управление', ($config['rewrite'])? 'go/control' : '?mode=control');
  if ($user->lvl() > 0)                $menu_items['options']  = $menu->AddItem('Настройки', ($config['rewrite'])? 'go/options' : '?mode=options');
 
 
if ($user->lvl() > 0)                $menu_items['Profile']  = $menu->AddItem('Профиль','Тут твоя ссылка или конфиги);
  $menu_items['exit'] = $menu->AddItem('Выход','login.php?out=1');
}
Это кусок кода. Желательно работать в нем. :)
 
@Aim-X, @satan_007,повторюсь... Ссылку "профиль" надо чтоб игрок видел тока после авторизацие. И сделать это надо в файле "style/index.php". Так как все меню идет там.

Сам код:
<div class="navbar navbar-fixed-top">

<div class="navbar-inner">
<div class="container">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a class="brand" href=""><?php echo $config['s_name'] ?></a>
<div class="nav-collapse collapse">
<ul class="nav menu">
<li id="main"><a href="/"><i class="icon-home"></i> Главная</a></li>
<li id="menu-main-btn"><a href="/"><i class="icon-globe"></i> Форум</a></li>

<!------------------------------------------------------------------>
<li class="dropdown">
<a href="#" id="drop2" role="button" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-info-sign"></i> Профиль<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu" aria-labelledby="drop2">

<li id="menu-top-btn"><a href="go/options"><i class="icon-info-sign"></i> Профиль</a></li>
<div class="divider"></div>
<li id="menu-ban-btn"><a href="login.php?out=1"><i class="icon-exclamation-sign"></i> Выход</a></li>
<!------------------------------------------------------------------>
</ul>
</li>

<li class="dropdown">
<a href="#" id="drop2" role="button" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-shopping-cart"></i> Онлайн магазин<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu" aria-labelledby="drop2">

<li id="menu-top-btn"><a href="shop"><i class="icon-shopping-cart"></i> Магазин</a></li>
<div class="divider"></div>
<li id="menu-ban-btn"><a href="donat"><i class="icon-shopping-cart"></i> Донат</a></li>

</ul>
</li>
<!------------------------------------------------------------------>
<li class="dropdown">
<a href="#" id="drop2" role="button" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-thumbs-up"></i> FAQ<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu" aria-labelledby="drop2">
<li id="menu-coma-btn"><a href="index.php-mode=commands"><i class="icon-info-sign"></i> Команды для игроков</a></li>
<li id="menu-rules-btn"><a href="/go/pravila"><i class="icon-map-marker"></i> Правила сервера</a></li>
</ul>
</li>
<!------------------------------------------------------------------>
<li class="dropdown">
<a href="#" id="drop2" role="button" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-list-alt"></i> Полезное<b class="caret"></b></a>
<ul class="dropdown-menu" role="menu" aria-labelledby="drop2">
<li class="nav-header">Статистика:</li>
<li id="menu-top-btn"><a href="index.php-mode=top"><i class="icon-fire"></i> Топ богачей</a></li>
<li id="menu-ban-btn"><a href="index.php-mode=banlist"><i class="icon-exclamation-sign"></i> Банлист</a></li>
<li class="nav-header">Полезное:</li>
<!--<li id="menu-skin-btn"><a href="/Skinposer"><i class="icon-heart"></i> Каталог скинов</a></li>-->
<li id="menu-map-btn"><a href="index.php-mode=generator"><i class="icon-map-marker"></i> Генератор достижений</a></li>
</ul>
</li>
<li class=""><a href=""></a></li>
<?php echo $content_menu; ?>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>

</div>
 
@Aim-X, @satan_007,повторюсь... Ссылку "профиль" надо чтоб игрок видел тока после авторизацие. И сделать это надо в файле "style/index.php". Так как все меню идет там.
Я может тебя не правильно понимаю, но я делаю так(файл index.php)

Код:
<?php
header('Content-Type: text/html; charset=UTF-8');
//$start_time = microtime(true); $mem_use = memory_get_usage();
 
require_once('./system.php');
BDConnect();
 
require(MCR_ROOT.'instruments/user.class.php');
MCRAuth::userLoad();
 
function GetRandomAdvice() { return ($quotes = @file(MCR_STYLE.'sovet.txt'))? $quotes[rand(0, sizeof($quotes)-1)] : "Советов нет"; }
 
$menu = new Menu();
$menu_items['wp'] = $menu->AddItem('Назад','http://mcdia.ru',false);
$menu_items['main'] = $menu->AddItem('Главная','',true);
 
if (!empty($user)) {
 
  if ($user->getPermission('add_news')) $menu_items['add_news'] = $menu->AddItem('Добавить новость', ($config['rewrite'])? 'go/news_add' : '?mode=news_add');
  if ($user->lvl() >= 15)              $menu_items['admin']    = $menu->AddItem('Управление', ($config['rewrite'])? 'go/control' : '?mode=control');
  if ($user->lvl() > 0)                $menu_items['options']  = $menu->AddItem('Настройки', ($config['rewrite'])? 'go/options' : '?mode=options');
  if ($user->lvl() > 0)                $menu_items['options']  = $menu->AddItem('Загрузки', 'http://mcdia.ru/Download/'); 
  $menu_items['exit'] = $menu->AddItem('Выход','login.php?out=1');
}
 
if (!empty($user)) {
 
$player      = $user->name();
$player_id    = $user->id();
$player_lvl  = $user->lvl();
$player_email = $user->email(); if (empty($player_email)) $player_email = 'Отсутствует';
$player_group = $user->getGroupName();
$player_money = $user->getMoney();
}
 
$content_main = ''; $content_side = ''; $addition_events = ''; $content_advice = GetRandomAdvice(); $mode = null;
 
if ( isset($_GET["mode"]) ) $mode = $_GET["mode"];
if ( isset($_GET["id"]) )  $mode = "news_full";
 
if ( empty($user) and in_array($mode, array("options", "news_add", "control"))) $mode = $config['s_dpage'];   
 
/* Загрузка контента */
 
switch ($mode) {
    case 'start': $page = 'Начать игру'; $content_main = Menager::ShowStaticPage(STYLE_URL.'start-game.html');  break;
    case '404':  $page = 'Страница не найдена'; $content_main = Menager::ShowStaticPage(STYLE_URL.'404.html'); break;
    case 'register':  include('./location/news.php');              break;
    case 'news_full': include('./location/news_full.php');        break;
    case 'options':  include('./location/options.php');          break;
    case 'news_add':  include('./location/news_add.php');        break;
    case 'control':  include('./location/admin.php');            break;
    default: $mode = $config['s_dpage']; include('./location/'.$config['s_dpage'].'.php');  break;
}
 
include('./location/side.php');
 
$servManager = new ServerMenager();
 
$content_menu        = $menu->Show();
$content_servers    = $servManager->Show('side');
 
unset($servManager);
 
include MCR_STYLE.'index.html';
//$exec_time = microtime(true) - $start_time; echo (microtime(true) - $start_time).'<br />'.(memory_get_usage() - $mem_use);
?>
Я не знаю что тут не так, но оно работает и вполне прилично. Эта строчка if ($user->lvl() > 0) как раз и проверяет залогинен ли человек.
 
Я может тебя не правильно понимаю, но я делаю так(файл index.php)

Код:
<?php
header('Content-Type: text/html; charset=UTF-8');
//$start_time = microtime(true); $mem_use = memory_get_usage();
 
require_once('./system.php');
BDConnect();
 
require(MCR_ROOT.'instruments/user.class.php');
MCRAuth::userLoad();
 
function GetRandomAdvice() { return ($quotes = @file(MCR_STYLE.'sovet.txt'))? $quotes[rand(0, sizeof($quotes)-1)] : "Советов нет"; }
 
$menu = new Menu();
$menu_items['wp'] = $menu->AddItem('Назад','http://mcdia.ru',false);
$menu_items['main'] = $menu->AddItem('Главная','',true);
 
if (!empty($user)) {
 
  if ($user->getPermission('add_news')) $menu_items['add_news'] = $menu->AddItem('Добавить новость', ($config['rewrite'])? 'go/news_add' : '?mode=news_add');
  if ($user->lvl() >= 15)              $menu_items['admin']    = $menu->AddItem('Управление', ($config['rewrite'])? 'go/control' : '?mode=control');
  if ($user->lvl() > 0)                $menu_items['options']  = $menu->AddItem('Настройки', ($config['rewrite'])? 'go/options' : '?mode=options');
  if ($user->lvl() > 0)                $menu_items['options']  = $menu->AddItem('Загрузки', 'http://mcdia.ru/Download/');
  $menu_items['exit'] = $menu->AddItem('Выход','login.php?out=1');
}
 
if (!empty($user)) {
 
$player      = $user->name();
$player_id    = $user->id();
$player_lvl  = $user->lvl();
$player_email = $user->email(); if (empty($player_email)) $player_email = 'Отсутствует';
$player_group = $user->getGroupName();
$player_money = $user->getMoney();
}
 
$content_main = ''; $content_side = ''; $addition_events = ''; $content_advice = GetRandomAdvice(); $mode = null;
 
if ( isset($_GET["mode"]) ) $mode = $_GET["mode"];
if ( isset($_GET["id"]) )  $mode = "news_full";
 
if ( empty($user) and in_array($mode, array("options", "news_add", "control"))) $mode = $config['s_dpage']; 
 
/* Загрузка контента */
 
switch ($mode) {
    case 'start': $page = 'Начать игру'; $content_main = Menager::ShowStaticPage(STYLE_URL.'start-game.html');  break;
    case '404':  $page = 'Страница не найдена'; $content_main = Menager::ShowStaticPage(STYLE_URL.'404.html'); break;
    case 'register':  include('./location/news.php');              break;
    case 'news_full': include('./location/news_full.php');        break;
    case 'options':  include('./location/options.php');          break;
    case 'news_add':  include('./location/news_add.php');        break;
    case 'control':  include('./location/admin.php');            break;
    default: $mode = $config['s_dpage']; include('./location/'.$config['s_dpage'].'.php');  break;
}
 
include('./location/side.php');
 
$servManager = new ServerMenager();
 
$content_menu        = $menu->Show();
$content_servers    = $servManager->Show('side');
 
unset($servManager);
 
include MCR_STYLE.'index.html';
//$exec_time = microtime(true) - $start_time; echo (microtime(true) - $start_time).'<br />'.(memory_get_usage() - $mem_use);
?>
Я не знаю что тут не так, но оно работает и вполне прилично. Эта строчка if ($user->lvl() > 0) как раз и проверяет залогинен ли человек.
Я понимаю о чем ты. Просто я не знаю как поменять стиль там. Поэтому пользуюсь html способом.
Если скажешь как в php поменять стиль тогда буду благодарен ;)

Если через html то стиль такой:
Безымянный.png
 
Много вопросов
при обновлении с версии 1.8 до 2.0 нужно импортировать бд
ругается на эти строки
ALTER TABLE `news` ADD `category_id` int(10) NOT NULL DEFAULT 1;
--
-- Там где '_' меняете на свой указанный при установке joomla
--
ALTER TABLE `_user` ADD `female` tinyint(1) NOT NULL DEFAULT '2';
ALTER TABLE `_user` ADD `group` int(10) NOT NULL DEFAULT 1;
ALTER TABLE `_user` ADD `comments_num` int(10) NOT NULL;
ALTER TABLE `_user` ADD `create_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00';
ALTER TABLE `_user` ADD `active_last` datetime NOT NULL DEFAULT '0000-00-00 00:00:00';
ALTER TABLE `_user` ADD `play_times` int(10) NOT NULL;
ALTER TABLE `_user` ADD `undress_times` int(10) NOT NULL;
ALTER TABLE `_user` ADD `default_skin` tinyint(1) NOT NULL DEFAULT '2';

ALTER TABLE `_user` DROP `lvl`;

таблица news с ключем category_id уже есть до меня
что делать с таблицами "_user" ?
у меня нет ни joomla ни какой то другой cms
при запуске инсталляции ругается на теже самые поля "_user"

коментирую в файле config.php

// 'users' => $config_xenAuth['bd_table_accounts'],
// 'login' => $config_xenAuth['bd_aUsername'],
// 'id' => $config_xenAuth['bd_aUserID'],
// 'password' => $config_xenAuth['bd_aPassword'],

ругается дальше в файле base.class.php
/*
public static function StringLen($text) {
return mb_strlen($text, 'UTF-8');
}
*/

подозреваю что те таблицы которые так уверенно хотели создаться нужно было создать

так что делать?
 
@lugair, конфиг не оригинальный и файлы импорта таблиц тоже, возможно и остальные файлы аналогично. Сравните с тем что опубликовано у меня и перекачайте последний релиз 2.0. Восстановите состояние БД на момент версии 1.8, если названия таблиц не менялись, то при обновлении проблем не будет.
 
@lugair, конфиг не оригинальный и файлы импорта таблиц тоже, возможно и остальные файлы аналогично. Сравните с тем что опубликовано у меня и перекачайте последний релиз 2.0. Восстановите состояние БД на момент версии 1.8, если названия таблиц не менялись, то при обновлении проблем не будет.
Будете делать донат, шоп? ^^
 
@NC22, как в php поменять вид меню?
@NC22, как сделать кнопку которая будет тока после авторизации?
 
@lugair, конфиг не оригинальный и файлы импорта таблиц тоже, возможно и остальные файлы аналогично. Сравните с тем что опубликовано у меня и перекачайте последний релиз 2.0. Восстановите состояние БД на момент версии 1.8, если названия таблиц не менялись, то при обновлении проблем не будет.

Автор, что именно изменили в версии v2.0-r7-260213? Какие файлы?
На гитхабе 5 часов назад было обновление.
 
@lugair, конфиг не оригинальный и файлы импорта таблиц тоже, возможно и остальные файлы аналогично. Сравните с тем что опубликовано у меня и перекачайте последний релиз 2.0. Восстановите состояние БД на момент версии 1.8, если названия таблиц не менялись, то при обновлении проблем не будет.

Я заполняю все поля нажимаю продолжить и у меня белый экран
я очистил базу (благо пользователей мало потом можно их импортировать)
при чистой установке сервер дает такую ошибку
[Wed Feb 27 12:05:23 2013] [error] [client 192.168.10.1] PHP Fatal error: Call to undefined function mb_strlen() in /home/www/vhosts/minecraft.1111.ru/httpdocs/instruments/base.class.php on line 31, referer: http://minecraft.1111.ru/install/install.php comon
ссылается на строку return mb_strlen($text, 'UTF-8');
 
NC22, что насчет выше поста и:
Не работоспособность iconomy.
Совместимости каталога скинов с движком. (единая авторизация)
 
Слушайте, почти не в тему, но. Столкнулся с такой проблемой, что не читаются php вложения, типо ZephCMS, в том числе и mcshop. Ошибка 500(internal server error).Кто подскажет?
add: Движок dle 9.6, на поддомене тоже не пашет. Путь к примеру такой http://сайт.ру/shop/index.php, или http://shop.сайт.ру/index.php
 
Слушайте, почти не в тему, но. Столкнулся с такой проблемой, что не читаются php вложения, типо ZephCMS, в том числе и mcshop. Ошибка 500(internal server error).Кто подскажет?
add: Движок dle 9.6, на поддомене тоже не пашет. Путь к примеру такой http://сайт.ру/shop/index.php, или http://shop.сайт.ру/index.php

Наиболее частой причиной ошибки 500 (Internal Server Error, внутренняя ошибка сервера) является неверный синтаксис файла .htaccess или наличие в нем неподдерживаемых директив. Чаще всего достаточно закомментировать директиву Options (для этого нужно поставить в начале строки решетку — #), и проблема исчезнет.
Ошибка 500 также может возникать вследствие неправильного обращения с CGI-скриптами:
  • CGI-скрипты должны иметь окончания строк в формате UNIX (\n), а не в формате Windows (\r\n). Для этого их надо загружать на сервер по FTP в режиме ASCII.
  • CGI-скрипты и папки, в которых они находятся, должны быть доступны для записи только владельцу, то есть иметь права 0755 (drwxr-xr-x).
  • В результате работы CGI-скрипта сформированны неправильные HTTP-заголовки ответа. В этом случае для решения проблемы полезно обратиться к error_log (его можно найти в контрольной панели в разделе «Статитистика / Лог-файлы / Лог ошибок»).
 
Наиболее частой причиной ошибки 500 (Internal Server Error, внутренняя ошибка сервера) является неверный синтаксис файла .htaccess или наличие в нем неподдерживаемых директив. Чаще всего достаточно закомментировать директиву Options (для этого нужно поставить в начале строки решетку — #), и проблема исчезнет.
Ошибка 500 также может возникать вследствие неправильного обращения с CGI-скриптами:
  • CGI-скрипты должны иметь окончания строк в формате UNIX (\n), а не в формате Windows (\r\n). Для этого их надо загружать на сервер по FTP в режиме ASCII.
  • CGI-скрипты и папки, в которых они находятся, должны быть доступны для записи только владельцу, то есть иметь права 0755 (drwxr-xr-x).
  • В результате работы CGI-скрипта сформированны неправильные HTTP-заголовки ответа. В этом случае для решения проблемы полезно обратиться к error_log (его можно найти в контрольной панели в разделе «Статитистика / Лог-файлы / Лог ошибок»).

Молодец, я это в гугле и сам читал, не помогло.
 
@vlad2012, неблагодарная бяка!
 

Поделиться этой страницей

Назад
Верх