Загрузка файлов комъюзерами — плагин для MaxSite CMS.

Пользовательские пункты в меню и breadcrumbs в MaxSite CMS.Кнопки закладок для MaxSite CMS. Загрузка файлов комъюзерами — плагин для MaxSite CMS.19 февраля 2019 г.Просмотров: 950Комментарии: 1
MaxSite CMSMaxSite

Позволяет комъюзерам загружать файлы и вставлять в комментарии BB-коды [myfile], [myimg], [mydoc].

При выводе комментариев BB-коды преобразуются в изображения и фреймы.

За основу взят код из загрузок в форме редактирования записи.

В MaxSite CMS определились с загрузками и много с чем еще — чем не повод заняться переделкой заброшенных работ к актуальному состоянию.

Плагин comuser_uploader в форму комментирования вставляется загрузчик файлов комьзером со списком файлов. По клику на миниатюру в текст комментария вставляется bb-код.

Загрузка файлов комъюзерами - плагин для MaxSite CMS.

Загрузить.

comuser_uploader_04.zip

old

comuser_uploader_01.zip

comuser_uploader_02.zip

comuser_uploader_03.zip

Особенности

Загрузка файлов возможна только комюзером — юзер не сможет вставлять изображения.

Для комюзера создается подкаталог «uploads/userfile/comuser_id».

Необходимо чтобы был включен плагин «comment_button», чтобы было куда вставлять кнопку «Загрузки» по хуку «comment_button_more».

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

По клику на миниатюру в комментарий вставляется bb-код:

для изображения [myimg=comuser_id]file_name[/myimg]
для файла [myfile=comuser_id]file_name[/myfile]
для документов [mydoc=comuser_id]file_name[/mydoc]

Для вставки в поле «commenys_content» bb-кода по клику на миниатюру в списке файлов должен быть включен плагин comment_smiles — скрипт вставки подключается в нем.

Теоретически можно и не передавать в bb-коде comuser_id — его можно узнать по comusers_id комментария, в который файл вставляется. Я так делал в плагине обработки bb-кодов для форума dialog_out.

Предполагалось что в глобальной переменной сидит нужный нам id.

global $comment_creator_id; // в глобальной переменной атрибуты текущего коммента

Но зачем лишние сложности.

Bb-код [myimg=comuser_id]file_name.jpg[/myimg] в тексте комментария преобразуется в

<a href=»http://site/uploads/userfile/comuser_id/file_name.jpg» class=»lightbox»><img title=»file_name.jpg» src=»http://site/uploads/userfile/comuser_id/mini/file_name.jpg» alt=»file_name.jpg»></a>

Поэтому чтобы появлялось окно с полным изображением необходимо включить плагин lightbox.

Для bb-кода [mydoc] создается фрейм google-doc, если это указано в настройках.

Как-то коряво работают watermark. Выдает ошибку в библиотеке, но watermark проставляет.

Структура.

Форма загрузки изображений при комментировании.

Находится в файле manager-comments.php
.

Получение файлов пользователя all-fgiles-update-ajax.php
.

Загрузка файлов пользователя uploads-require-maxsite.php
.

Личный кабинет комюзера.

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

Страница личного кабинета реализована в файле uploads.php
.

Форма загрузки изображений в файле manager-uploads.php
.

Получение файлов пользователя для отображения осуществляется в файле all-files-comuser-ajax.php
.

Загрузка файлов пользователя осуществляется тем же загрузчиком в файле uploads-require-maxsite.php
.

Публичная страница загрузок комюзера.

Загрузки комюзера могут просматривать другие комюзеры на странице загрузок в публичном профиле комюзера, если это не запрещено в настройках.

Публичная страница загрузок реализована в файле uploads_all.php
.

Форма выбора сортировки и получения отсортированных файлов вынесена отдельно manager-uploads.php
.

Получение файлов пользователя для отображения на публичной странице осуществляется в all-files-ajax.php
.

Админка.

Из скриншотов админки будет понятно как работает плагин.

Загрузка файлов комъюзерами - плагин для MaxSite CMS.

Загрузка файлов комъюзерами - плагин для MaxSite CMS.

Версия 02

В новой версии реализованы:

1. Страница личного кабинета комюзера, где он сможет сортировать и удалять загрузки.

2. Страницы пользователей, на которых можно просматривать загруженные файлы.

3. Функция, возвращающая файлы пользователя со ссылками на комменты, где эти файлы были использованы.

4. Возможность просмотра мест, где файлы были использованы.

5. Удаленные пользователем файлы помещаются в заданную папку.

Загрузка файлов комъюзерами - плагин для MaxSite CMS.

См. также «Пользовательские пункты в меню и breadcrumbs в MaxSite CMS».

Версия 03

В новой версии реализованы:

1. Изменения связанные с интеграцией в плагин личного кабинета profile. Общие меню публичных страниц и меню личного кабинета.

2. Виджет последних использованных в комментариях пользователем файлов.

Версия 04

1. Изменения в подключении thumb_generate() в Version 105, описанные в github.com/maxsite/cms/issues/391

2. В виджете последних использованых файлов отображаются также и использованные в сообщениях форума.

3. Ограничение на загрузку не одобренных файлов.

4. Хлебные крошки для компонентов Breadcrumbs.

Источник: fil-tec.ru