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

Веб [A.2.0 CC]MSC: WebSite Engine

Статус
Закрыто для дальнейших ответов.

danilko

Старожил
Пользователь
Баллы
103
Пост устарел, скоро подниму репозиторий и перепишу
Выкладываю чистую CMS, без новостной ленты, системы скинов и прочих скриптов специфичных minecraft-сборкам.

Последнее обновление темы 20 декабря 2013

Ссылка(DropBox) | GitHub.com (Со временем сборка будет меняться на более новые версии CMS)

Что внутри:
  • Ядро
  • Установщик, который будет в A.2.0(без всяких pre)
  • Основные библиотеки системы(авторизация, шаблоны и редакторы текста и кода)
  • Основные административные скрипты(из A.2.0 pre 3)
  • Основной шаблон и шаблоны админ-скриптов
  • Обработчик AJAX-запросов
Данная сборка полезна тем, кто хочет изучить как работает сама система, без вспомогательных скриптов, тем, кто хочет попробовать сделать свой скрипт\библиотеку\шаблон.

В постах ниже буду выкладывать краткую информацию о функциях CMS, которые можно использовать при разработке php-скриптов.
Все вопросы в ЛС, решение самых частых вопросов буду выкладывать сюда.
 
Последнее редактирование:
Шаблон скрипта.

Файл "scripts/example.php":
PHP:
<?php

class example{

}

?>

Для создания своих скриптов используйте менеджер скриптов в панели управления.

======================
= Работаем с библиотеками =
======================
Подключение библиотеки:
PHP:
libs::LoadLib($lib_name);

$lib_name - название библиотеки.
Возвращает true, если библиотека успешно загружена и false, если не удалось найти файл этой библиотеки.
Примечание: данную функцию можно не вызывать для библиотек templates и database, т.к. они загружаются ещё до запуска вашего скрипта.

Получение доступа к библиотеке:
PHP:
libs::GetLib($lib_name);

$lib_name - аналогично.
Возвращает объект, который был создан при загрузке библиотеки.
Примечание: возвращает null, если библиотека не загружена или не загрузилась с помощью LoadLib.

Описание наиболее полезных функций библиотеки "templates".

Загрузка шаблона.
PHP:
libs::GetLib("templates")->GetTmpl($file);
$file - название html-файла, который нужно загрузить.
Возвращает файл шаблона, который лижит в папке с основным шаблоном сайта или из папки стандартных шаблонов.

Загрузка шаблона с заполнением данных.
PHP:
libs::GetLib("templates")->GetRTmpl($file,$arr);
$file - аналогично предыдущей функции.
$arr - содержит массив переменных шаблона.
Возвращает шаблон, в котором в шаблонные переменные подставлены данные из массива $arr.
Примечание: если шаблон не будет найден, то будет возвращено сообщение об ошибке для пользователя.

Смена основного шаблона страницы(как в менеджере скриптов).
PHP:
libs::GetLib("templates")->setPageTmpl($name);
$name - название шаблона.
Возвращает true при успешной смене шаблона и false при ошибке.
Примечание: эта функция может быть использована только в административном интерфейсе скрипта.

Описание функций библиотеки "users".
Проверка авторизации посетителя.
PHP:
libs::GetLib("users")->GetLogin();
Возвращает 1, если авторизация пройдена, возвращает 0 в обратном случае.

Получение логина посетителя.
PHP:
libs::GetLib("users")->IsAuthorized();
Возвращает группу посетителя, если он авторизирован или возвращает "guest", если не авторизирован.

Получение формы авторизации\регистрации.
PHP:
libs::GetLib("users")->GetLoginForm();//авторизация
libs::GetLib("users")->GetRegisterForm();//регистрация
Возвращает HTML-код для авторизации\ресгитрации посетителя.
Примечание: используйте эти функции в комбинации с IsAuthorized, TryLogin и TryRegister.

Авторизация\регистрация посетителя с помощью форм, которые возвращают GetLoginForm и GetRegisterForm.
PHP:
libs::GetLib("users")->TryLogin();//авторизация
libs::GetLib("users")->TryRegister();//регистрация
TryRegister возвращает ошибку, если возникла ошибка или "ok", если регистрация прошла успешно.
TryLogin возвращает true, если авторизация прошла успешно или false в обратном случае.

Проверка логина и пароля пользователя.
PHP:
libs::GetLib("users")->VerifiLogin($login,$password);
$login - логин пользователя.
$password - пароль пользователя.
Воврает true или false, в зависимости от того верна пара логин\пароль.

Описание функций библиотеки "database".

Примечание: данная библиотека использует настройки из файла config.php, по этому название таблицы с которой вы работаете может отличаться от названия таблицы, которое вы передаете этим функциям. А так-же предполагается, что в каждой таблице есть поле "id".

Некоторых функций тут ещё нет, т.к. они и значения их параметров все аналогичны, если хотите можете посмотреть код этой библиотеки - файл "lib/database.php", либо в менеджере скриптов библиотека "database", позже добавлю.

Вставка данных в таблицу.
PHP:
libs::GetLib("database")->insert($table_name,$values);
$table_name - название таблицы.
$values - массив данных, в котором название каждого элемента соответствует определенному полю в таблице.

Очистка таблицы.
PHP:
libs::GetLib("database")->deleteAll($table_name);
$table_name - название таблицы.

Удаление строки таблицы по значению её поля "id".
PHP:
libs::GetLib("database")->deleteOnId($table_name,$id);
$table_name - название таблицы.
$id - значение поля "id".

Получение массива данных в таблице.
PHP:
libs::GeLib("database")->getAll($table_name, $order, $up);
$table_name - название таблицы.
$order - название поля, по которому идет сортировка возвращаемого массива.
$up - true, если значения поля должны увеличиваться и false - в обратном случае.

Получение строки таблицы по её "id".
PHP:
libs::GetLib("database")->getElementOnID($table_name, $id)
$table_name - название таблицы.
$id - значение поля "id".

Получение определенного поля таблицы.
PHP:
libs::GetLib("database")->getField($table_name, $field_out, $field_in, $value_in);
$table_name - название таблицы.
$field_out - название поля, значение которого будет возвращено.
$field_in - название поля, по которому будет определена строка таблицы.
$value_in - значение поля, по которому будет определена строка таблицы.

Получение строки таблицы по значению её поля 'id'.
PHP:
libs::GetLib("database")->getFieldOnID($table_name, $id, $field_out);
$table_name - название таблицы.
$id - значение поля "id".
$field_out - название поля, значение которого будет возвращено.

Установка значения поля.
PHP:
libs::GetLib("database")->setField($table_name, $field, $value, $field_in, $value_in);
$table_name - название таблицы.
$field - название поля, значение которого будет установлено.
$value - значение этого поля.
$field_in - название поля, по которому будет определена строка.
$value_in - значение поля, по которому будет определена строка.

Установка значения поля по его "id".
PHP:
libs::GetLib("database")->setFieldOnID($table_name, $id, $field, $value);
$table_name - название таблицы.
$id - значение поля "id"
$field - название поля, значение которго будет изменено.
$value - значение поля, которое будет установлено.

В процессе написания: информация по текстовым редакторам, AJAX.php и административном интерфейсе.

UPD: Добавлена ссылка на github.
UPD: немного доделал
UPD: Начал заполнять wiki на GitHub, может там что-нибудь найдете, если тут не нашли. Ссылка на wiki.
 
Последнее редактирование:
Статус
Закрыто для дальнейших ответов.

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

Назад
Верх