avatar_epmak

MuWebClone 1.5.3: новый релиз от WMC

Автор epmak, 2015 Янв. 06, 10:36

« назад - далее »

0 Пользователи и 3 гостей просматривают эту тему.

Ключевые слова [SEO] релизwmcmuwebclone 1.5.3

epmak

итак, ранее был опрос показал, что все - таки есть те кто заинтересован в появлении новой версии  MuWebClone 1.5.3.
Что же, тогда решено - анонсирую, что ей быть
Что нового или пофикшенного старого на данный момент:
  • пересмотрена работа с базой данных: исчезнут непонятные кракозябры
  • сайт полностью переходит на юникод
  • рефакторинг, лютый и беспощадный: убрал(или убреру, где не успел) использование global вообще
  • минимальная версия php должна быть теперь не ниже 5 (5.2 - пожалуй, идеально)
  • решено логически отделить дополнения (типа топа сильнейших, статистики, последних с форума) в отдельную папку: _sysvol/plugins
  • огромное количество всяких доработок, переработок внутри движка: и логических и синтаксических, но принцип не поменялся

Сайт пока не годится в использование, так как пока я просто работал с кодом
SVN
чейнж лог


Очень жду, что все-таки появятся люди, которые примут участие в разработке и версия выйдет не by epmak, а community edition
Спойлер
Мне не важны личности, которые изволят принять участие, а так же их пол, цвет волос, длина мужского прибора(или его отсутствие) и т.п. По моим планам 1.5 будет последней паблик версией MWC, я не брошу его саппорт полностью, но все - таки хочется, чтобы была хотя бы одна человеческая универсальная  и бесплатная веб-обвязка для muonline и я принял бы участие в ее разработке
[свернуть]

На данный момент остаются открытыми вопросы
  • Вещи: чтение, отображение(опции, картинки и т.п.) имеется в виду, как ВАМ будет удобнее, так как базы у каждого сервера свои и постоянно править их придется господам админам проектов.
  • Где храним новости: как было, в файлах или в базе и вообще нужны ли они как таковые: как вариант, можно подумать над интеграцией новостей с форума, но тогда и вы подключайтесь к разработке
  • Дизайны: стандартный и диз админки - это не горит, но все же.

На данный момент, форум проекта встанет отдельно: тут(не реклама)
и главное, помните одно: чем больше вы будете помогать, тем быстрее будет новая версия.


UPD
Кому интересна судьба развития сайта, смотрим за ревизиями(по сути чейнж логом) на свнке(ссылка выше)
все оттуда пересказывать не буду, скажу основное:
сайт завел.
главная страница работает как надо.
сейчас остались модули и, скорее всего, увеличение шаблонов в количестве (так как, если мне не изменяет память, была проблема с тем, что половина хтмл было в коде)
Инсталка переделана и работает
специально, для того чтобы кеширование поддерживало несколько баз, напилил функцию load_cache  и теперь проделав некоторые манипуляции в write_catche и load_cache получить поддержку нескольких баз (думаю, кое-кто будет рад)

Сильно напоминаю, что не решен вопрос с хранением новостей и чтением итемов. Если вы пальцами сами не пошевелите - скорее всего, я оставлю все как есть

Profesor08

#1
Новости обновляются редко, значит пихать в базу данных нету смысла. Да и кешировать их тоже нету смысла. Сохранить в json формате уже готовый html новостей. Будет просто организовать пагинацию и не возникнет необходимость в кешировании, хотя никто не запрещает. Также это позволит сделать отображение краткого текста новостей, для главной страницы. И возможность прочитать полную при нажатии на ссылку. И напихать еще кучу всего. И при всем этом, это будет в десятки раз быстрее и удобнее, чем пихать в базу, а потом тащить оттуда. Это по простому, но никто не запрещает заморочиться с кешированием отденых частей, оптимизировать всю работу так, чтоб не прикопаться и получить мизерный профит.

epmak

#2
уже задумывался о том, чтобы хранить в хтмл как есть, мысли как жто сделать тоже мысли есть, но вот с пагинацией будет веселее :)

UPD:
со стандартными модулями пользовательской части, предположительно, закончено.
для тех, кому не терпится попробовать - можете смотреть, НО админку я еще не переделывал -> пользоватся ей не получится + на данный момент пересмотрел только стандартные (те, что сразу идут с вебом, установить ничего не получится!) модули.
Для тех, у кого сайт уже установлен, нужно просто создать папочку в корне с уже установленным сайтом, залиьт с свнки туда новую версию, скопировать с рабочего opt.php + изменить в нем адрес (учитывая папку). очистить папку _dat/cach в новой версии ( если в ней будет что-то кроме .htlaccess)
ну и все должно завестись. Чуть позже выложу описание класса connect и content + основной принцип работы (это пригодится в основном тем кто пожелает писать модули)

epmak

UPD 2:

доделал все основные модули до состояния работы (как - история отдельная)
к концу недели (ориентировочно)  буду думать что-то с инсталлом: на хостингах как-то не совсем адекватно отрабатывает конструкция try/catch, в результате некоторые юзвери могли наблюдать ахтунги в виде белого экрана, лечится включением ошибок, но буду думать, как сие дело отладить до запуска без бубнов

Как и обещал, выкладываю бета-версию MWC 1.5.3

Что нового:
Спойлер
  • Улучшенная работа с базой данных
  • исправление и улучшение кода самого движка (на сколько возможно, без изменения принципа работы)
  • в ряде стандартных модулей переписаны запросы, что существенно сказалось на скорости генерации
  • улучшены функции кеширования: в случае надобности изменить 2 функции, что позволит использовать несколько баз без потери функционала (раньше приходилось переписывать пол сайта, чтобы кешировались данные с разных баз)
  • переписана система новостей
  • переписана система загрузок
  • чат в админке был удален за ненадобностью
  • несколько изменен механизм ведения логов
  • лога All_ больше не будет
  • администраторская тема перенесена в папку theme
  • в папке configs появилась папка bkps, при изменении конфига через адмику, в нее будет размещаться конфиг ДО изменений. Учтите, что там хранится только 1 копия каждого конфига (хотя, при желании и изменении 2х строк кода, там может хранится только, сколько нужно)
[свернуть]

Минимальные требования для запуска:
  • php не ниже 5 версии
  • MS SQL SERVER не ниже 2005, иначе возникнут сложности в работе и при установке
Сайт полностью совместим с базами и opt.cfg версии 1.5.2

Напоминаю, что данная версия является Beta - работает только самая нужная часть модулей - все что представлены после установки. В админке часть модулей закрыта заглушками типа "under construction".
Данная версия нужна чтобы выявить все ошибки основной, базовой части веба.

Скачать веб можно либо с SVN, либо отсюда.
Сообщить об ошибках можно в пм или в этой теме

Так же напоминаю местному населению кодиров, эхепэшников, тех кто могет, и пр,пр... Ребят, очень сильно хочу чтобы и вы приняли участие над работой этой версии, повторяюсь, не хочу by epmak, очень хочу community edition! Скоро выложу документацию для разработчиков: описание классов работы с бд, шаблонизатора, функций (в последнем случае, описание есть прямо в коде, почти у всех).
Всем добра и с прошедшими.

epmak

апаю тему. кто-то вообще ткстировал? или те ~19 человек решили положить?

j0st1k

а что тестировать половина нерабочего..

InsurgenT

Вопрос, как у mwc если теряет базу(коннект)?
у меня малый опыт его использования, но я это к тому что новости и item-сы лучше делать в сайте.
то бишь новости хранить вот как проф предложил в html, а вещи считывать с item.txt серверного(закинул от своего сервера и готово).
это мое скромное мнение, что так будет лучше для всех

epmak

#7
j0st1k, чтобы заработала 2я половина, нужно ту основу, что сейчас есть довести до ума, чтобы потом не выяснялось, что оказывается, там есть баги. что на 1.4, что на 1.5 были вещи, которые не должны были работать по определнию, однако сайт до сих пор у многих на проектах стоит. Так что для меня этот вопрос скорее вызывает много смеха, к тому же я уже выше объяснял что и по чем.

InsurgenT, сейчас новости, как и раньше, лежат в самом сайте. Раньше это был 1 файл, сейчас под каждую новость создается файлик с хтмл разметкой + файл где список всех новостей с ссылками на файлы, как содержание у книги.
Итемы всегда были в сайте в php файле был массив, со списком. Сейчас я хочу сделать чтение вещей так, чтобы вы могли сами писать функцию, откуда сайт будет эти вещи читать из базы ли или из файла и т.п.

по поводу итем тхт: тут 2 варианта :
1. закинуть и читать каждый раз, НО ради 1 вещи лопатить файл, максимальная длина которого может быть 16*255 строк, это несколько накладно, особенно, если там реально надо узнать про 1 вещь и она окажется в районе скрулов
2. сделать ридер и упиливать в нужный формат, который потом будет читаться сайтом. Вещт интересная, для своей приватки я так и сделал, но, по понятным причинам выносить свой вариант в фри версию я не буду. Тут жду вас, желающих помочь (не обязательно его писать, дайте говтовый, зашью в сайт).

для чтения вещей могу использовать тот класс, что я выкладывал или же какой-то иной вариант, который предложите вы.

еще раз повторюсь, что у меня есть эгоистичное желание растормошить комьюнити и написать действительно не плохую основу для напила уже своего на этой базе. И именно по этой причине в сайте используется не классический MVC, а что-то вроде песочницы. чтобы вы не вникая в двиг самого сайта могли писать/портировать модули не именя за плечами огромного опыта программирования. Но чтобы это работало, надо чтобы и вы чуть-чуть задвигались.



ЦитироватьВопрос, как у mwc если теряет базу(коннект)?

сейчас код представляет собой
try
{

$db = new connect ($config["ctype"], $config["db_host"], $config["db_name"], $config["db_user"], $config["db_upwd"]);
}
catch(Exception $ex)
{
$info =  $ex->getTrace();
logs::WriteLogs("errors",$ex->getMessage()." Frile:".$info[0]["file"]." Line:".$info[0]["line"]);
die("Wooow... something went wrong! check logs!");
}
если на хостинге не включен насильный вылов ошибок и try catch работает, то на экране будет надпись "Wooow... something went wrong! check logs!"(на самом деле, там можно поставить все, что угодно), а в логах написано что-то вроде "нет соединения".
если же стоит параноидальный режим, то, скорее всего, белая страница. Но это в теории. То, что будет на практике хотелось бы услышать от вас, так как мне проверить негде.

UPD
Обновил архив (120rev)

- ряд небольших исправляшек
- удалил ненужные файлы, очистил от старой библиотеки вещей сайт

в общем, жду вас, дорогое комьюнити

InsurgenT

не вижу проблемы с итем, учитывая что паблик релиз, и такой подход самый благоприятный для многих.

я возможно не так выразился, я хотел уточнить как ведет себя сайт без базы, а также предложить. чтоб при потери базы сайт не становился белой страницей или ошибкой, а все оставалось как есть, чтоб админ например мог написать что идут работы на сервере.

а по поводу "комунити эдишон", мой совет забудь и отпусти, я для себя сделал выводы что нечего не выйдет здесь сообща. в отдельных случаях смотришь думаешь вот люди готовы вместе создать что-то, но это только так кажется.

epmak

#9
вместо
Цитироватьна экране будет надпись "Wooow... something went wrong! check logs!"
можно
вставить все что нужно, а это и редирект на форум и выдать любую страничку на экран.

Что касается полного вывода кеша заместо сервера и да и нет. надо подумать, как это сделать лучше



Вчера был разработан модуль для экспорта вещей из Item.txt в удобоваримый для сайта формат (спасибо Сократу и Инсу)
думаю, что следующим шагом будет создание класса для вывода опций вещей

Profesor08

Цитата: epmak от 2015 Янв. 19, 05:47  Вчера был разработан модуль для экспорта вещей из Item.txt в удобоваримый для сайта формат (спасибо Сократу и Инсу)
думаю, что следующим шагом будет создание класса для вывода опций вещей
Предложу сделать хтмл шаблон для опций отдельно в файлике. Считывать его 1 раз.

epmak

с этого момента по-подробнее

Profesor08

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

epmak

в этом смысле.
шаблон не всегда уместен, понятно, что будет массив. Будет класс, который будет сопсно и зиниматься этим.
к тому же, нужна будет библиотека тултипера, которая аяксом будет вылавливать нужный шаблон. идеи?

epmak

Добавил класс чтения вещей.
Важно:
для тех, кто занят в тесте, обновиться с SVNки (opt.php только не убейте свой)
в админке есть модуль для создания базы данных вещей на сайт, создайте базу вещей (файлы базы появятся в _sysvol/itemBase/)
далее, по адресу ваш_сайт/itemShow.php?item=8D0000000000000000C000FFFFFFFFFF1484728BFFFFFFFFFFFFFFFFFFFFFFFF вы должны увидеть разобранную по позициям вещь
примечание: 8D0000000000000000C000FFFFFFFFFF1484728BFFFFFFFFFFFFFFFFFFFFFFFF хекс-код вещи. сайт читает вещи от 2 до 8 сезона. насколько правильно, вы должны мне сказать.
сопсно, тестируем отписываемся.

Profesor08

Цитата: epmak от 2015 Янв. 19, 14:30  которая аяксом будет вылавливать нужный шаблон
В отношении показа опций вещей, это гадость.

epmak

Продолжил дальнейшую чистку файлов: под нож попала смсделюкс. Сопсно, встал вопрос, какую платежку использовать и с предложениями желательно прикладывать либо скрипт, который можно прикрутить, либо ссылку на то, как можно интегрировать платежную систему в сайт

Начал потихоньку документировать классы и возможности движка. Ознакомится можно тут (не реклама)

j0st1k

Хотелось бы чтоб в рейтенге отображалось кто играет с випкой.
Последние темы с форума хотелосьбы что б все было уже настроено оставалось только вписать путь к форуму и все .. (Упростить)
И возможно чтоб сайт работал сразу на 1-2-3 базы ..

epmak

#18
Цитата: j0st1k от 2015 Янв. 24, 09:41  Хотелось бы чтоб в рейтенге отображалось кто играет с випкой.
это уже личная "хотелка", зовется обычна кастумом. пути осуществления:
1. писать самому
2. заказывать у кого-то

Цитата: j0st1k от 2015 Янв. 24, 09:41  Последние темы с форума хотелось бы что б все было уже настроено оставалось только вписать путь к форуму и все .. (Упростить)
не получится. форумов не 1 штука. Максимум, что можно придумать - чтение рсс ленты с форума

Цитата: j0st1k от 2015 Янв. 24, 09:41  И возможно чтоб сайт работал сразу на 1-2-3 базы ..
возможность есть.
1. пишем модуль переключения, точнее, плагин
2. либо изменяем opt.php, либо пишем, как делал когда-то профессор: opt1.php, opt2.php и т.п.
3. write_cach и read_cach изменяем чтобы он воркал с учетом выбранного сервера (работа с $_SESSION)
а далее подключаем нужный опт и получаем профит.

j0st1k

все ясно что и стоило ожидать. Спасибо

Похожие темы (5)

Сообщений: 4
Просмотров: 2417

Сообщений: 205
Просмотров: 33011

Сообщений: 8
Просмотров: 5873

Сообщений: 7
Просмотров: 2951