ARGOS multigaming cms

changelog.png


9.8:
- Изменения в App/ - оправен е бъг, ако системата е в подпапка със смяната на стила през url /style/default (примерно)
- Изменения в аутолоудъра, вече не се зареждат неактивните екстеншъни (тези които са с ext_active=0 и тези, които не фигурират в датабазата)
- Добавени са нови класове и опции в админ панела за оптимизирането на изображения и ограничаването на качване на голи снимки и такива с насилие
- Добавени нови ланг дефиниции заради горните промени

Изменения в:
lang/
App/
core.php
includes/
admin/
install/
readme/
version.json

Изпълвате този sql накрая:
Код:
INSERT INTO argos_config(config_name, config_value)  VALUES ('gallery_moderation', 0);
INSERT INTO argos_config(config_name, config_value)  VALUES ('google_cloud_vision_api_key', '');
INSERT INTO argos_config(config_name, config_value)  VALUES ('gallery_optimization', 0);
INSERT INTO argos_config(config_name, config_value)  VALUES ('gallery_maxwidth', 800);
INSERT INTO argos_config(config_name, config_value)  VALUES ('gallery_maxheight', 800);
INSERT INTO argos_config(config_name, config_value)  VALUES ('gallery_quality', 80);
 
https://argoscms.xyz/test_things/comments/ - тук може да видите и тествате коментарите.
Те ще са за галерията със снимки и видео клиповете. Потребителите ще могат да пишат само, ако са регистрирани.
Ще им взима юзърнейма и аватара от phpbb интеграцията.
Също така в админ панела ще има таймлайни с коментарите и ще може да ги триете (модерирате)
Отне ми доста време да ги направя работещи, макар, че тази библиотека е стара, php частта беше предизвикателство.
Вече всичко ми е ясно относно нея и нищо няма да ми попречи в Сряда да я интегрирам.
 
Последно редактирано:
changelog.png


9.8.1:
- Добавена е възможност да създавате къстъм 404 error page от вашия темплейт, просто в него създавате 404.html и си го кодирате, както искате.
- Изтрити са php.ini и robots.txt, вече ненужни и нямащ смисъл да са в системата. Ботовете пренебрегват този файл, а php модулите се активират от cpanel или друг хост панел.
- Оптимизации по core.php

9.8 -> 9.8.1
Презамествате:
core.php
изтривате:
robots.txt
php.ini
 
Rich (BB code):
content: "@dssdsd  saddfs dfsdfdsf"
requestId: 1
в случая с коментарите е достатъчно, другото си го имаш в бекенда.
 
Да, това е ясно, че може да се случи и ще сложа csrf, отделно мога да сложа и captcha, но няма да седи добре, а и трябва да я инсертна с js.
Мисля, че csrf ще е достатъчно. Винаги ще може да стават такива неща, но поне да не е наведнъж..
 
image.png

9.9:
- Стартирането на сесията е преместено от core.php в BaseController-a, обхванато е с проверка дали е стартирана вече сесията.
- Phpbb интеграцията е обхваната с проверка, за да не се преизпълнява. Също така require на няколко места е заменено с require_once.
- Добавени са аякс коментари към видео клиповете и изображенията в галерията. + админски страници за изтриване на коментарите
- Добавена е нова функция timeago($epoch) която връща в чист текст преди колко секунди, часове, дни, години даден епоч е минал. Преди съм я дефинирал къстъм по контролери и екстеншъни, вече е вградена.
- Добавена е нова функция add_lang('lang_file') - тази функция зарежда езиков файл за определен контролер, няма да ви трябва на вас, а на мен, ако занапред имам контролери, които не са толкова зависими от главните ланг файлове и за тях ще се прави къстъм ланг файл.
- Добавен е кеш файл за рутирането и парсването на json файла (вече няма да се парсва, а ще инклудва готов кеш файл)
- Оптимизации по ядрото
- Всички библиотеки бяха ъпдейтнати през composer

9.8.1 -> 9.9:
Заменяте:
routes.json
App/
assets/
install/
includes/
admin/
template/your-style/js/globals.js
template/header.html,footer.html,gallery.html,videos.html
version.json
readme/

в header.html в head секцията поставяте:
Код:
<link rel="stylesheet" href="{{baseurl}}/assets/jquery-comments/jquery-comments.css?v={{css_js_ver}}">

Във footer.html под js библиотеките поставяте:
Код:
<script type="text/javascript" src="{{baseurl}}/assets/jquery-comments/jquery-comments.min.js?v={{css_js_ver}}"></script>
<script type="text/javascript" src="{{baseurl}}/assets/jquery-comments/jquery-comments-loader.js?v={{css_js_ver}}"></script>

Махате от globals.js:
Код:
//magnific popup for files
if ($(".see_with_magnific").length > 0) {
  $('.see_with_magnific').magnificPopup({
    type: 'image',
    closeOnContentClick: true,
    mainClass: 'mfp-img-mobile',
    image: {
      verticalFit: true
    }
  });
}

//magnific popup for videos
if ($(".see_with_magnific_v").length > 0) {
  $('.see_with_magnific_v').magnificPopup({
    disableOn: 700,
    type: 'iframe',
    mainClass: 'mfp-fade',
    removalDelay: 160,
    preloader: false,
    fixedContentPos: false
  });
}

Инсертвате този sql:
Код:
  CREATE TABLE IF NOT EXISTS `argos_gallery_comments` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `parent` int(11) DEFAULT NULL,
    `content` text NOT NULL,
    `creator` int(11) NOT NULL,
    `fullname` varchar(255) NOT NULL,
    `profile_picture_url` varchar(255) NOT NULL,
    `created` bigint NOT NULL,
    `modified` bigint NOT NULL,
    `created_by_admin` tinyint(1) DEFAULT 0,
    `created_by_current_user` tinyint(1) DEFAULT 0,
    `upvote_count` int(11) DEFAULT 0,
    `user_has_upvoted` tinyint(1) DEFAULT 0,
    `is_new` tinyint(1) DEFAULT 1,
    `requestid` int(11) DEFAULT NULL,
    PRIMARY KEY (`id`)
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

  CREATE TABLE IF NOT EXISTS `argos_videos_comments` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `parent` int(11) DEFAULT NULL,
    `content` text NOT NULL,
    `creator` int(11) NOT NULL,
    `fullname` varchar(255) NOT NULL,
    `profile_picture_url` varchar(255) NOT NULL,
    `created` bigint NOT NULL,
    `modified` bigint NOT NULL,
    `created_by_admin` tinyint(1) DEFAULT 0,
    `created_by_current_user` tinyint(1) DEFAULT 0,
    `upvote_count` int(11) DEFAULT 0,
    `user_has_upvoted` tinyint(1) DEFAULT 0,
    `is_new` tinyint(1) DEFAULT 1,
    `requestid` int(11) DEFAULT NULL,
    PRIMARY KEY (`id`)
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

  CREATE TABLE IF NOT EXISTS `argos_gallery_votes` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `comment_id` int(11) NOT NULL,
    `user_ip` varchar(45) NOT NULL,
    `requestid` int(11) DEFAULT NULL,
    PRIMARY KEY (`id`)
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

  CREATE TABLE IF NOT EXISTS `argos_videos_votes` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `comment_id` int(11) NOT NULL,
    `user_ip` varchar(45) NOT NULL,
    `requestid` int(11) DEFAULT NULL,
    PRIMARY KEY (`id`)
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

Във videos.html добавяте:
Код:
data-request-id="{{video_id}}"
в href връзката след
Код:
rel="nofollow"

Същото и в gallery.html
Добавяте това:
Код:
data-request-id="{{pic_id}}"
след:
Код:
href="{{baseurl}}/uploads/images/{{pic_link}}"
и си правите промените от по-горе във вашите header.html/footer.html и в gallery.hml/videos.html

След което вдигате Css/js версиите и запазвате промените от раздел Конфигурация.
 
Празниците минаха и ядрото вече ще бъде 140 лв.
В Събота и Неделя ще пусна версия 10.0, в която ще има важна оптимизация свързана с Беис контролера и зареждането на ланг файловете.
Планирам да добавя и нов бутон при екстеншъните, чрез който ще може да спирате всички наведнъж.
Ще се добавят в беис контролера къстъм проверки за пост рекуести за логин и логаут към phpbb.
Така вече формата ще е по проста и ще може да ги ползвате тях, вместо да слагате hidden полета и т.н.
Нейм параметрите ще са: phpbb_login и phpbb_logout.

Вече са направени адски много неща, първия пост в темата е от февруари 2022, и сега вече след месец ще станат 3 години от както я ъпдейтвам, така че цената е разумна според мен.

За контакт с мен:
discord:
.pok4
 
image.png

10.0:
- Опимизации в includes/functions.php
- Оптимизации в BaseController.php и Dependencies.php
- Добавени са 2 нови метода в BaseController-a за логин и логаут към phpbb.
- Изменения в assets
- Добавен е бутон за спиране на всички екстеншъни в админ панелската им страница

9.9 -> 10.0:
Заменяте:
assets/
readme/
App/
includes/
admin/
lang/
 
image.png

10.1:
- Фиксове по функцията за транслейт през Google API (Не превеждаше някои текстове докрай)
- Aboutus страницата вече се превежда автоматично на всички езици с новата функция detect_language() и translate функцията през Google API.
- 'ahref' връзката в pagination функцията е заменена с div (защото 'а' атрибута беше без href и няма смисъл от него)
- Добавени са нови темплейтни дефиниции в News.php контролера, вече в темплейтите може да ползавате {{#is_index_page}} и {{#is_blog_page}}

10.0 -> 10.1:
Замяна на:
App/
includes/
readme/
version.json
 
image.png


10.2:
- Добавен е флоод лимит на аякс коментарите към Галерията с изображения и Видео клипчетата.
- Оптимизации по контролерите

10.1 > 10.2:
Заменяте:
App/
version.json
readme/
 
image.png


11.0:
- Добавен е нов клас LangWrapper в Entity папката, който ще следи за наслоявания в масивите с преводите и няма да ги допуска.
- Добавен е нов бутон в екстеншън страницата 'Пусни последно спряните' с който може да пуснете последно спряните екстеншъни от бутона 'Спри всички'. Работи с кеш и се появява и помни 1 час. Добре ще е ако тествате нещо.

10.1 -> 11.0:
Презамествате:
admin/
App/
lang/
readme/
version.json
 
Core.php и includes/ папката са завършени. С grok и chatgpt минах всичко, което не е sql ориентирано и беше оптимизирано.
5 функции бяха пренаписани.
Утре ще излезе версия 12.0 с променените функции, които целят по-бързото зареждане.
След това в по нови версии ще добавя и cronjobs таб в админ панела, от който ще може да сетвате крон задачи.
Ще има проверка дали сте под линукс и дали shell_exec е налична и тогава ще се визуализира таблицата и формата за добавяне.

След като свърша с крон таба (версия 13.0), ще се ориентирам към оптимизация на контролери и модели.
След тях ще има индентация на код и след това нов default стил, в който ще има всичко нужно и спазване на добрите практики с цел бързо зареждане.
 
image.png


12.0:
- Оптимизации в includes/functions.php и includes/phpbb_bridge.php
- Изменения в App/ папката по някои контролери

11.0 -> 12.0
Замяна на:
App/
includes/
readme/
version.json
 
image.png


12.1:
- Добавени са новите логин форми към phpBB. (използа се phpbb_login нейм параметъра)
- Изменения в globals.js (свързано с изобразяването на езиците)

12.0 -> 12.1
Замяна на:
App/
readme/
version.json
template/your-style/js/globals.js
template/your-style/default (отваряте sidr.html и виждате как е направена формата за логин и си я сменяте с вашата във вашия темплейт (не е задължително, но е препоръчително)
(Махнати са hidden полетата и name="login" е сменено с name="phpbb_login"
 
В следващ ъпдейт ще може да премахнете :
Код:
if (count(get_included_files()) == 1) exit("Direct access not permitted."); //Don't edit
от екстеншъните и sql.php, тъй като и това товари доста. С var dump го тествах и връща масив от 38 файла ~ средно. При 30 екстеншъна ще товари и то доста.
Ще бъде заменено от htaccess правило, което ще бъде добавено в главния htaccess файл:
Код:
RewriteRule ^ext/.*\.php$ - [F,L]
Това може да се счита за не-цялостно тестван метод, другия вариант е с дефиниция (define), но засега ще е с htaccess и ако нещо гръмне, ще го преправяме тогава.
 

Back
Горе