Записки динозавра

Автор блога: Ris
Все рубрики (13)

Аудиоплеер для контента. 2.x

Когда-то по заказу Sam Hain делал поле для загрузки и проигрывания аудиофайлов стандартным аудиоплеером html прямо в окне просмотра записи.
Так как заказчик не против, чтобы я поделился этой разработкой, выкладываю здесь.

Смысл следующий: в нужном типе контента создается новое поле с системным именем audio, и при добавлении или редактировании контента, если загрузить аудиофайл, запись о его названии приводится хуком к виду типа:
Код PHP:
  1. ---
  2. id: 4
  3. url_key: 64fea947
  4. name: '<audio controls="controls"><source src="/upload/000/u1/b0/a4/music.mp3"></audio>'
  5. size: 12085334
  6. path: 000/u1/b0/a4/music.mp3

Redactor. Вставка картинок, спойлер и удаление кнопок. 2.x

Продолжаем издеваться над интерфейсом двойки.
Теперь очередь дошла до редактора.
Я несколько раз спрашивал, как можно вставлять в редакторе картинки из сети. И мне неоднократно отвечали, что практически никак.

Порывшись в интернетах нашел плагин для редактора, позволяющий вставлять картинки из сети, сделанный Алексеем Киневым.
Слегка шваркнув его напильником, подключил к редактору. Также удалил четыре уж совсем одиозных кнопки, которые вообще не знаю, кому понадобятся.
Ну и напоследок воткнул туда спойлер. Который, правда, работает только при отключенном тупографе (Настройки-Типы контента - нужный тип контента - Поля - Текст. Убрать галку "обрабатывать типографом").

Выглядит это примерно так:
Redactor. Вставка картинок, спойлер и удаление кнопок.

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

Установка: скопировать с заменой содержимое архива в корень сайта.
Если что-то не понравится - просто заменить папку \wysiwyg\redactor\ на дефолтную из установщика.

Скачать файлы.

Скачать версию с кнопками "Отменить" и "Повторить".

В связи с появлением спойлеров в INSTSNTCMS 2.7.2, доработал спойлер для редактора:

Спойлер
Скачать версию для INSTANTCMS 2.7.2

Редактор для 2.8.2. Спойлер на яваскрипте. То есть будет работать в браузере Safary

Скачать редактор для 2.8.2

Смайлы BBCODE для INSTANTCMS2.7.1 2.x

Вдохновившись разработками Виктора, решил посмотреть, нужно ли для подключения бибикодов проводить такие глобальные изменения в движке.
Ведь надо-то всего лишь поменять пару тегов на пару других.
Скачал простенький парсер bbcode с сайта Markitup, слегка адаптировал и оформил в мини-компонент, который запускается по хуку 'html_filter'.
Также сделал дополнительный сет для маркитапа (идея Виктора), в который добавил возможность добавления смайлов. Как из набора, так и просто с клавиатуры, скобками и точками. Панель смайлов открывается прямо в панели редактора (всплывающие окна - зло).
На компьютере панель смайлов открывается и закрывается по клику на значок смайла (как в первой ветке), на мобильнике закрывается по клику в любом месте.

Инструмент для изменения кармы и рейтинга администратором 2.x

Что-то тема про поощрение пользователей из админки быстро решилась.
А существует слегка доработанная версия. Поэтому выкладываю в блоге.

Инструмент для изменения кармы и рейтинга администратором


Спойлер
Ссылка "Показать" из кармы выносит на репутацию, из показать рейтинг - на профиль.

Вот архив, закинуть в корень:
http://www.instantcms.ru/users/files/download6338.html

После заходим в профиль пользователя -> редактировать профиль и мотаем вниз.

Колобки для InstantCMS2

Чего не хватает во второй ветке, так это смайликов. На этом сайте есть множество разработок, но все смайлики. кроме колобков, недостаточно точно передают всё разнообразие человеческих эмоций.
Колобки для InstantCMS2


Неделю назад обнаружил учебник для самоваров по яваскрипту. Считаю, что создателям яваскрипта, в том виде, как он есть, нужно гвоздь в голову забить. Раньше я считал разработчиков PHP негодяями, но после ознакомления с яваскриптом, считаю их прекрасными людьми, заботящимися о вебмастерах и программистах.

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

Колобки для InstantCMS2

Спойлер
Картинки смайликов можно удалять и добавлять в папку /smiles/smilies/
Принимает файлы любых форматов. Панель смайлов открывается и закрывается по клику.
Установка - просто скоприровать содержимое архива в корень сайта.
Изменено только два системных файла: /wysiwyg/markitup/sets/default-ru/set.js и \wysiwyg\markitup\sets\default-ru\style.css
--------------------------------------------------------------------------------------------------------------------------
Смайлики доработаны 16.10.2016

Устранены баги с добавлением смайлов вместо личных сообщений в открытую в фоне панель комментариев. Панель смайлов открывается теперь во всплывающем окне и автоматически скрывается по клику в любом месте, кроме самой панели.
Смещение панели смайлов можно задавать изменением переменных x и y в самом верху файла \wysiwyg\markitup\sets\default-ru\set.js
Архив перезалит.

Доработка 17.10.2016

Для мобильных устройств сделал панель по центру экрана и закрытие по клику на любом месте.
Архив перезалит.

Собственно сам архив:

Скачать смайлики для INSTANTCMS2



Совсем забыл. Три кнопки с буквами R G B - ими можно покрасить текст. Выделить текст и нажать кнопку.

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

И снова мигратор

Традиционно первого апреля выходит новый мигратор с чего-нибудь на что-нибудь.
Не будем нарушать традиции. smile

Итак, давно переделал себе из мигратора от SJen для экспериментов небольшой мигратор с первой ветки на вторую. Использую для тестовых сайтов, для рабочего сайта пока рановато.
Мигратор просто переносит содержимое из таблиц при помощи insert-select-update. Логики минимум.

Есть возможность переноса как из таблицы на одном опенсервере, так и из перенесенных таблиц с другим префиксом.
Скажу честно, на моем сайте такие компоненты как объявления и универсальный каталог, статьи и новости не используются совсем, поэтому, возможно они могут переноситься некорректно.
Для пользования мигратором нужно сначала внимательно заполнить шапку файла \system\controllers\fmigrator\model.php

Если у Вас много комментариев (у меня около миллиона), то серверу может не хватить памяти для построения дерева комментариев.
Тогда в выборке в функции public function migrate_tree нужно добавить лимит типа LIMIT $nc, 200000. Тогда разложены по деревьям будут только последние двести тысяч. На них памяти хватит.
Также возникли проблемы с новостями, ведь на первой ветке новости - категория статей. Так что рейтингом и каментами в новостях пришлось пожертвовать.

Также хотелось сделать для удобства какой-нибудь индикатор выполнения, пока работает скрипт, но пои познания в яваскрипте и аяксе просто никакие.

Категорически не рекомендую использовать эту утилиту для рабочих сайтов!

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

Совсем забыл про картинки. Все папки из images загрузить в папку upload нового сайта.

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

Собственно сам мигратор
Страницы: Первая Предыдущая 1 2