Компонент Медиагалерея v.1.2 beta для InstantCMS v.1.6 и выше

+51
6.48K
Вот и разработал компонент медиагалереи.

На ваш суд. Пока тест. Хотя и работоспособный вполне.

Галерея состоит из mp3 и flv файлов. К видео можно подгружать превью.
Размеры видеоплеера задаются в админке.

Видео:

Иллюстрация

Нажимаем на "Смотреть видео" и переходим к плееру.

Иллюстрация

В аудиогалерее список mp3. В админке можно настраивать сколько на страницу выводится, как видео так и аудио.

Админка:

Иллюстрация

Иллюстрация

Остальные страницы увидете в установленном варианте. Извинияюсь за сумбурность.

Установка:

Скопируйте папки из архива: /admin/, /components/, /templates/, /videofiles/ в корень вашего сайта.

Задайте папке videofiles и все подпапкам права 777

Далее:

Были внесены изменения в cms.php, cp.php, и /applets/menu.php

Данные вайлы находятся в папке "Дополнения" в архиве, можете ими заменить свои, если никаких изменений не производили с этими файлами.

Зайдите в админке в компоненты, перейдите в установку компонентов — там появится новый компонент Медиагалерея. Установите и пользуйтесь.

Если вы хотите внести изменения в данные фалы вручную — то:

cms.php

В функцию getMenuLink добавляем:

  1. if ($linktype=='media'){
  2. $menulink = '/media/'.$linkid;
  3. }
Получаем:

  1. /**
  2.   * Возвращает прямую ссылку на пункт меню по его типу и опции
  3.   * @param string $linktype
  4.   * @param string $linkid
  5.   * @param int $menuid
  6.   * @return string
  7.   */
  8. public function getMenuLink($linktype, $linkid, $menuid){
  9.  
  10. $inDB = cmsDatabase::getInstance();
  11. $inCore = cmsCore::getInstance();
  12.  
  13. $menulink = '';
  14.  
  15. if ($linktype=='component'){
  16. $menulink = '/'.$linkid;
  17. }
  18.  
  19. if ($linktype=='link'){
  20. $menulink = $linkid;
  21. }
  22.  
  23. if ($linktype=='category' || $linktype=='content'){
  24. $inCore->loadModel('content');
  25. $model = new cms_model_content();
  26. switch($linktype){
  27. case 'category': $menulink = $model->getCategoryURL(null, $inDB->get_field('cms_category', "id={$linkid}", 'seolink')); break;
  28. case 'content': $menulink = $model->getArticleURL(null, $inDB->get_field('cms_content', "id={$linkid}", 'seolink')); break;
  29. }
  30. }
  31.  
  32. if ($linktype=='blog'){
  33. $inCore->loadModel('blogs');
  34. $model = new cms_model_blogs();
  35. $menulink = $model->getBlogURL(null, $inDB->get_field('cms_blogs', "id={$linkid}", 'seolink'));
  36. }
  37.  
  38. if ($linktype=='uccat'){
  39. $menulink = '/catalog/'.$linkid;
  40. }
  41.  
  42. if ($linktype=='media'){
  43. $menulink = '/media/'.$linkid;
  44. }
  45.  
  46. if ($linktype=='pricecat'){
  47. $menulink = '/price/'.$linkid;
  48. }
  49.  
  50. return $menulink;
  51.  
  52. }
cp.php

В функцию cpMenutypeById (она в конце) добавляем:

  1. case 'media': $html = '<span id="menutype"><a href="'.$item['link'].'">Медиа</a></span> - '.$item['linkid'];
  2. break;
Получаем:

  1. function cpMenutypeById($id){
  2. $inDB = cmsDatabase::getInstance();
  3.  
  4. $html = '';
  5. $maxlen = 35;
  6.  
  7. $item = $inDB->get_fields('cms_menu', 'id='.$id, 'linktype, linkid, link');
  8.  
  9. switch($item['linktype']){
  10. case 'link': $html = '<span id="menutype"><a href="'.$item['link'].'">Cсылка</a></span> - '.$item['linkid'];
  11. break;
  12. case 'component': $html = '<span id="menutype"><a href="'.$item['link'].'">Компонент</a></span> - '.$inDB->get_field('cms_components', "link='".$item['linkid']."'", 'title');
  13. break;
  14. case 'content': $html = '<span id="menutype"><a href="'.$item['link'].'">Статья</a></span> - '.$inDB->get_field('cms_content', 'id='.$item['linkid'], 'title');
  15. break;
  16. case 'category': $html = '<span id="menutype"><a href="'.$item['link'].'">Раздел</a></span> - '.$inDB->get_field('cms_category', 'id='.$item['linkid'], 'title');
  17. break;
  18. case 'pricecat': $html = '<span id="menutype"><a href="'.$item['link'].'">Прайс</a></span> - '.$inDB->get_field('cms_price_cats', 'id='.$item['linkid'], 'title');
  19. break;
  20. case 'uccat': $html = '<span id="menutype"><a href="'.$item['link'].'">Каталог</a></span> - '.$inDB->get_field('cms_uc_cats', 'id='.$item['linkid'], 'title');
  21. break;
  22. case 'blog': $html = '<span id="menutype"><a href="'.$item['link'].'">Блог</a></span> - '.$inDB->get_field('cms_blogs', 'id='.$item['linkid'], 'title');
  23. break;
  24. case 'media': $html = '<span id="menutype"><a href="'.$item['link'].'">Медиа</a></span> - '.$item['linkid'];
  25. break;
  26. }
  27. $clear = strip_tags($html);
  28. $r = strlen($html) - strlen($clear);
  29. if (strlen($clear)>$maxlen) { $html = substr($html, 0, $maxlen+$r).'...'; }
  30. return $html;
  31. }
В /applets/menu.php добавляем в блок
  1. <div><strong>Действие пункта меню</strong></div>
:

  1. <option value="media" <?php if (@$mod['linktype']=='media') { echo 'selected'; }?>>Открыть медиагалерею</option>
И наряду с остальными действиями меню вставить новое действие:

  1. <div id="t_media" class="menu_target" style="display:<?php if ($mod['linktype']=='media') { echo 'block'; } else { echo 'none'; } ?>">
  2. <div>
  3. <strong>Выберите медиагалерею</strong>
  4. </div>
  5. <div>
  6. <select name="media" id="pricecat" style="width:100%">
  7. <option value="video">Видеогалерея</option>
  8. <option value="audio">Аудиогалерея</option>
  9. </select>
  10. </div>
  11. </div>

Скачать архив с компонентом: Медиагалерея

Прошу тестировать, и о проблемах сообщать. На более низкие версии InstantCMS можно легко доделать. Обращайтесь кому надо. Компонент будет разрабатываться дальше.

В перспективе:
Модуль — новые видео
Модуль — нове аудио
Рейтинги записей
Число просмотров
Модули популярных записей
0
nikolas nikolas 14 лет назад #
+5.. пользователи могут добавлять или только админ?
+7
Symedia Symedia 14 лет назад #
Для ползователей будет попозжее.. Что успел за два дня - это вот, что представлено. Далее буду расширять на пользователей.
+2
lezginka.ru lezginka.ru 14 лет назад #
++
gromodar, как-то можно связать grabber_muztorrent.net_ver.2.0.1 с компонентом ?
+7
Symedia Symedia 14 лет назад #
Сделать можно всё. Никаких сложностей глобальных не вижу. Будет в следующей версии.
+2
14 лет назад #
Одним из важнейших достоинств вашего компонента и есть отсутствие всяких "грабберов"!
0
lezginka.ru lezginka.ru 14 лет назад #
Сережа Ющенко, ведь можно же сделать так, чтобы в админке отключать или подключать граббер
кто уже установил Медиагалерею, дайте ссылку, посмотреть в работе ?
+1
14 лет назад #
Лично мое мнение, уникальность компонента и состоит в том, что он сделан в instantCMS, а "грабберы" долго не живут. Вообще, плюс этому человеку, за то что он придумал, и за то, - что поделился с нами (хотя я компонент не скачивал).
+2
Symedia Symedia 14 лет назад #
++
gromodar, как-то можно связать grabber_muztorrent.net_ver.2.0.1 с компонентом ?

каким образом связать? чтоб компонент грабил?
0
lezginka.ru lezginka.ru 14 лет назад #
чтобы видео(музыку) грабил(возможность отключать и включать "грабеж"),т.е.интерферировать граббер
0
lezginka.ru lezginka.ru 14 лет назад #
интегрировать, хотел сказать
+4
Symedia Symedia 14 лет назад #
Подумаю. Может, что и придумаю.
0
Микулин Сергей Микулин Сергей 14 лет назад #
Спасибо большое. уже давно ждал.
-2
Агроном Агроном 14 лет назад #
Лично мое мнение что тут пока только 2 плюса. первый в том что это отдельный компонент, а второй в том что при загрузки аудио файла не нужно вставлять картинку как в этом варианте видео и аудио на основе УК и много минусов по отношению к этому же варианту. Впрочем если компонент будет развиваться, то это будет замечательно. хочется загружать видео в любых форматах и без картинки превью.
+2
Symedia Symedia 14 лет назад #
Согласен. Самому хочется этого. Но пока так. Именно в этом направлении и будет развиваться. Как в основном. На основе УК - ну кому как. А я не любитель сильно стандартные компоненты пилякать. Решено было отдельным компонентом. Вот и получили в короткие сроки. Дальше будем продумывать. И искать бесплатные плееры, для улучшения. Может вы подскажете пару трйку?
+1
airy airy 14 лет назад #
хочется загружать видео в любых форматах и без картинки превью.
это какой же сервак надо иметь что бы такое производить при большом количестве посетителей?
+3
Symedia Symedia 14 лет назад #
Наверное имелось ввиду, чтобы любое видео сервер сам конвертировал в flv.
0
lezginka.ru lezginka.ru 14 лет назад #
gromodar, особо хотел обратить внимание на плеер. если получится, использовать такой плеер,который позволяет вставлять свою рекламу, это действительно будет полезно,экономически :)
+2
Symedia Symedia 14 лет назад #
Учту. Пока что плеер самый распространенный JW.
+2
Димитриус Димитриус 14 лет назад #
Этот плеер тоже может.
У него есть еще такая хорошая вещь как возможность плэйлисты читать в формате xml. Если сделать так, то песни будут сами переключаться
+2
Symedia Symedia 14 лет назад #
Спасибо за информацию, обязательно прикручу плейлист. Если получится..
+2
Zau4man Zau4man 14 лет назад #
В моем профиле есть архивчик с 3мя плеерами.
Может пригодится http://instantcms.ru/users/files/download655.html
+2
Symedia Symedia 14 лет назад #
Спасибо, посмотрю обязательно. Полезная вещь. +1
0
ГеймОверСистемХалтед ГеймОверСистемХалтед 14 лет назад #
Молодец.
Предложение. Может свяжетесь с Админом да в оф релиз все войдет?
0
Fuze Fuze 14 лет назад #
не войдет, прекращайте полемику "втыкания" всего в оф релиз.
+1
ГеймОверСистемХалтед ГеймОверСистемХалтед 14 лет назад #
Стой, кто идет? Уже никто и никуда не идет 8)) Завязал.
+1
Symedia Symedia 14 лет назад #
А зачем? Пускай будет отдельным дополнением. Кому надо, тот устанавливает. А 1.7, как нам обещают, будет и без того достаточно "натыкан" новшествами и исправлениями. Самая большая сложность в медиагалерее - это добавления в админку для пункта меню, чтобы не ссылкой прописывать.
0
Amurland Amurland 14 лет назад #
хорошо
-4
Алексей Т Алексей Т 14 лет назад #
Установил, загрузил видео, опубликовал
а на http://www.bilarius.ru/media пусто
+2
Symedia Symedia 14 лет назад #
А почему /media? - /media/video или media/audio. В админке выбрали для пункта меню - открыть Медиагалерею?
-4
Алексей Т Алексей Т 14 лет назад #
сори просто я пункт меню создал из Добавить пункт меню а там только сам компонент
Спасибо!
+1
Symedia Symedia 14 лет назад #
Весьма приятно видеть, что работает не тлько у меня, но и у вас. )
0
Symedia Symedia 14 лет назад #
http://www.bilarius.ru/media/video
+4
Symedia Symedia 14 лет назад #

ВНИМАНИЕ!

В процессе отладки закралась ошибка в шаблоне компонента!

Если кто установил, то в файле шаблона com_audio_view.tpl {$item.mp3} надо поменять на {$item.file}.

Архив компонента перезалит с исправлением.
-3
Алексей Т Алексей Т 14 лет назад #
а комментарии будут подключены?
+2
Symedia Symedia 14 лет назад #
Обязательно!
+1
Антон Антон 14 лет назад #
Я в шокеsmileСпасибо. Компонент отличный. Только вот сразу возник вопрос. А почему аудиозаписи ограничены прослушиванием всего в 33 сек?
+1
Антон Антон 14 лет назад #
сорри... разобралсяsmileв файле com_audio_view.tpl в строке s{$item.id}.addVariable(&#8217;duration&#8217;,&#8217;33&#8217;); нужно было заменить 33 на любое другое.
+1
Symedia Symedia 14 лет назад #
Ну вот и отлично!)
+1
Symedia Symedia 14 лет назад #
А это важный момент! обязательно доработаю.
+2
Антон Антон 14 лет назад #
я кстати там auto поставил показывает реальное время
0
14 лет назад #
Чего то у меня стоит s{$item.id}.addVariable(&#8217;duration&#8217;,&#8217;auto&#8217;), а вот все равно ограничение на 33 секунды всего
0
Symedia Symedia 14 лет назад #
А тот который нужно шаблон копаешь? или в обоих?
0
14 лет назад #
Да в обоих шаблонах смотрел
0
Symedia Symedia 14 лет назад #
А у вас что пишет в админке, какой допустимый размер загружаемых фалов на сервер?
0
Антон Антон 14 лет назад #
и аудио и видео 32 mb
+2
Symedia Symedia 14 лет назад #
В новой версии везде auto будет стоять. Когда делал не обратил внимания на эту мелоч.
+1
lolik lolik 14 лет назад #
+100500
+1
qwest qwest 14 лет назад #
А через медиа галерею флеш игры сделать нельзя ???
+3
Symedia Symedia 14 лет назад #
Все возможно. Это одно из направлений дальнейшей разработки.
-3
Алексей Т Алексей Т 14 лет назад #

хорошо бы категории сделать?

+3
Symedia Symedia 14 лет назад #
Это первоочередное, в данный момент в прцессе разработки.
+2
Славик Славик 14 лет назад #
а можно сделать чтоб в админке был выбор не загружать на свой хостинг медиа файлы, а был выбор вставить ссылку на mp3 и flv файлы...
+5
Symedia Symedia 14 лет назад #
Да, можно. Делаем.
+1
14 лет назад #
Вот это хороши вариант, поддерживаю!
-3
Алексей Т Алексей Т 14 лет назад #
и с ютуба и так далее во всех!
+2
Symedia Symedia 14 лет назад #
Не вижу особой проблемы в реализации этого. Будет сделано. Только бы список всех пожеланий собрать вместе.. Чтоб спланировать все доработки.
-2
Алексей Т Алексей Т 14 лет назад #
я нарисую...
+2
Barrio Barrio 14 лет назад #
да вот не загружать а ютюба вставлять былобы вообще круто
-2
Алексей Т Алексей Т 14 лет назад #
Пользуюсь уже галереей все супер!
Нахватает
Комментариев
Вставки кода на другие ресурсы
Голосования за видео
Категорий
+2
Symedia Symedia 14 лет назад #
Приятно.) Ожидайте все будет. Не все сразу. По мере свободного времени - дорабатываю.
0
Symedia Symedia 14 лет назад #
Спасибо за список. Так более удобнее.
+1
Юрий Юрий 14 лет назад #
Поставил к себе на портал - все супер.
Не хватает кроме выше перечисленного:
Добавление записей пользователями
Поиска по галерее
0
Symedia Symedia 14 лет назад #
В процессе доработки.
+2
Юрий Юрий 14 лет назад #
Добавлю пожелание:
неплохо бы еще количество просмотров и рейтинг
-4
Алексей Т Алексей Т 14 лет назад #
Григорий есть какие то движение, а то я уже собираюсь удалить ее
0
Symedia Symedia 14 лет назад #
Пока что все в процессе.
0
alexz31 alexz31 14 лет назад #
Много эксперемнтировал, но файл более 20мб. не получается загрузить. Загружается нормально, потом до конца загрузка доходит, страница перезагружается и всё. На всякий случай по FTP гляжу файла нет. На странице загрузки в админке у меня написано: Допустимый на сервере размер загружаемого файла - 50M. Может потому не добавляется, что в настройках сервера у моего хостера http://___sydney.sweb.ru/phpinfo.php5 написано post_max_size - 20м и ещё там написано upload_max_filesize - 50м. Но для себя вышел из положения так: загружаю любой маленький FLV файл, например 2 мб, потом по FTP загружаю большой FLV файл например 70 мб., переименовываю его названием маленького файла и всё работает, а маленький файл естественно удаляю. Немного не удобно, но работает. Скажите у кого получалось загружать большие файлы хотя бы до 50 мб.?
0
GNabi GNabi 13 лет назад #
Пробовал ставить в версию 1,7. Мною были обнаружены след. ошибки: 1)В админке при добавлении пункта меню не отображается поле для выбора "Видеогалерея" и "Аудиогалерея"; 2)Видео не добавляется...
0
lezginka.ru lezginka.ru 13 лет назад #
кто установил на 1,6 и 1,7 ? у кого уже работает ?
0
13 лет назад #
у меня без проблем
0
13 лет назад #
Я ошибся изменяюсь, не понял вопроса
0
Иван Шкута Иван Шкута 13 лет назад #
Установил на 1.7, админка работает, а пользовательская часть белая. Что это может быть?
+1
casshern casshern 13 лет назад #
Автор поста может уточнить, хотя бы примерно, когда будет реализовано использование видео с различных tub'ов
0
13 лет назад #
Подскажите пожалуйста!Вот всё установил как описанно выше - в админке всё добавляется и всё просматривается.А вот на самом сайте в разделе медиагалерея пустая страница и никакой информации нет,где трабла???
0
Symedia Symedia 13 лет назад #
На данный момент продолжается разработка и доводка данного компонента. Ссылка должна быть либо /audio либо video/ . Ожидаем рабочую версию компонента.
0
13 лет назад #
Забыл добавить что обновился на версию 1.7 на 1.6 не тестировал данный модуль.
-1
fact fact 13 лет назад #
Были внесены изменения в cms.php, cp.php, и /applets/menu.php - а где это всё находится?
0
13 лет назад #
открой тотал и поиском найдешь...
Григорий...вы находите время заниматься? что то угасла такая замечательная идея.

Пысы..файлы ток админ может добавлять?
0
Blit Blit 13 лет назад #
Григорий как ваш проект? Жив ещё? Выкладывайте бета-версию!
+2
Symedia Symedia 13 лет назад #
В общем, делается проект, в котором нужна медиагалерея, соответственно будет закончена разработка, и выложена здесь.
0
lezginka.ru lezginka.ru 13 лет назад #
Григорий , а можно озвучить "время и деньги" ?
0
Symedia Symedia 13 лет назад #
Время можно озвучить. Срок разработки проекта - 2 месяца, а вот про деньги не понял?
0
googlebot googlebot 13 лет назад #
Имеет смысл подождать 1.8, выйти должна в начале апреля.
0
Symedia Symedia 13 лет назад #
А сути это не поменяет. Структура инстанта настолько стройная, что то, что было разработанно на старые версии - весьма легко адаптируется под новые.
0
13 лет назад #
Спасибо за галерею, она великолепно встала на 1.8, но возник вопрос: в каком файле нужно изменить вес загружаемого файла? У меня везде стоит "не более 2М". Искала во всех файлах галереи, так и не нашла. Может пропустила?
И еще, можно ли сделать так, чтобы выбранный файл можно было вставить в пост блога?
0
Dezerit Dezerit 13 лет назад #
размер файла зависит от хостинга. или php.ini или .haccess
про пост не отвечу, не ставил еще
0
Symedia Symedia 13 лет назад #
Для блогов не доработано.
0
Blit Blit 13 лет назад #
Григорий, как сделать, чтобы музыку можно было добавлять по прямой ссылке со стороннего сервиса.
0
Ne OS Ne OS 13 лет назад #
Народ установил все по инструкции на версию 1.8 вот только вместо сайта белая страница. Кто с этим сталкивался или знает в чем дело отзовитесь.
0
Blit Blit 13 лет назад #
Ссылку нужно прописывать так: media/video или media/audio
0
Ne OS Ne OS 13 лет назад #
Можно по подробней?! Где именно...
0
Ne OS Ne OS 13 лет назад #
Я так и не понял в чем проблема но этот компонент так и не заработал у меня на сайте!
0
Cleverking Cleverking 13 лет назад #
Зайди в phpmyadmin, открой свою базу и найди каталог с названием cms_menu.Затем просто отредактируй нужный пункт меню вставив вместо "/media","/media/audio" - для аудио и "/media/video" - для видео
0
igolka97 igolka97 13 лет назад #
Проверь какая версия phpстоит у тебя должно быть 5.2.0 или выше если ниже тогда делай откат на 1.7
0
LBM LBM 12 лет назад #
Сделал все по инструкции на 1.8. Джае пункт в Компанентах не появился ((((

Еще от автора

XML карта сайта для контента
Представляю первую версию генератора XML карты сайта для контента(статьи)
Обновление модуля "Расписание намазов".
Немного переработанный модуль парсера расписания намазов. Добавлена админка. 1.7 - 1.9: namaz1.9.zip 1.10: namaz1.10.zip
Универсальный модуль к компоненту Медиагалерея v.1.2 - Новые записи
В продолжение разработки Медиагалереи v.1.2 Модуль выводит новые аудио или видеозаписи.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.