Уважаемые пользователи!
C 7 ноября 2020 года phpBB Group прекратила выпуск обновлений и завершила дальнейшее развитие phpBB версии 3.2.
С 1 августа 2024 года phpBB Group прекращает поддержку phpBB 3.2 на официальном сайте.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.2 до 31 декабря 2024 года.
С учетом этого, настоятельно рекомендуется обновить конференции до версии 3.3.

Установка mediaelementjs

Проблемы с установкой или работой phpBB 3.1.x? Получите помощь здесь!
С 1 июля 2018 года phpBB Group прекращает поддержку phpBB версии 3.1.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.1 до 1 января 2019 года.
Подробнее: Окончание поддержки phpBB 3.1.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Мини [FAQ] по phpBB3.1.x | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
meow
phpBB 1.4.0
Сообщения: 30
Стаж: 8 лет 6 месяцев
Благодарил (а): 4 раза

Установка mediaelementjs

Сообщение meow »

Помогите поставить http://mediaelementjs.com/ на 3.1.10
Это проигрыватель, который многократно лучше audio в HTML5.

Мне нужно составить BBCode.

Что сделано:
1. Залит весь пак на сервер.
2. В overall_header.html внутри head прописано:

<script src="{ROOT_PATH}player/build/jquery.js"></script>
<script src="{ROOT_PATH}player/build/mediaelement-and-player.min.js"></script>
<link rel="stylesheet" href="{ROOT_PATH}player/build/mediaelementplayer.min.css" />
<link rel="stylesheet" href="{ROOT_PATH}player/build/mejs-skins.css" />

3. Такой BBCode

Код: Выделить всё

[mp3]{URL}[/mp3]
Html замена:
<player id="player2" src="{URL}" type="audio/mp3" controls="controls"></player><script>
$var player = new MediaElementPlayer("#player"); player.play(); </script>
выдает ошибку в консоли:

Код: Выделить всё

Uncaught SyntaxError: Unexpected identifier
    at eval (<anonymous>)
    at jquery.min.js:2
    at Function.globalEval (jquery.min.js:2)
    at n.fn.init.domManip (jquery.min.js:3)
    ....
Весь интернет перерыт, не знаю что делать.
Аватара пользователя
Sumanai
phpBB 3.0.0 RC5
Сообщения: 1668
Стаж: 9 лет 5 месяцев
Благодарил (а): 257 раз
Поблагодарили: 195 раз

Re: Установка mediaelementjs

Сообщение Sumanai »

Посмотрите, как это сделано в phpBBex: код в шапке не нужен, так как он замедляет загрузку и возникает дублирование jquery.
В общем случае вам нужно добавить в своё расширение в файл события шаблона overall_footer_after.html код типа

Код: Выделить всё

<script src="{ROOT_PATH}assets/mejs/mediaelement.js?assets_version={T_ASSETS_VERSION}"></script>
<script>
(function(){
	var s = document.createElement('link');
	s.setAttribute('rel', 'stylesheet');
	s.setAttribute('href', '{ROOT_PATH}assets/mejs/mediaelement.css');
	document.getElementsByTagName("head")[0].appendChild(s);
})();
</script>
Файлы из каталога \assets\mejs\ дистрибутива phpBBex сложить у себя по аналогичному пути, хотя по идее можно и сменить пути на другие.
А инициализацию производить отложено, в ббкоде типа

Код: Выделить всё

<audio id="attach_audio" preload="none" controls>
	<source src="{URL}" type="audio/mp3">
</audio>
<script>
function addListener(obj, type, listener) {
	if (obj.addEventListener) {
		obj.addEventListener(type, listener, false);
		return true;
	} else if(obj.attachEvent) {
		obj.attachEvent('on' + type, listener);
		return true;
	}
	return false;
}
addListener(window, 'load', function() {
	jQuery(function($)
	{
		$('#attach_audio_{_file.ATTACH_ID}').mediaelementplayer();
	});
});
</script>
Главный минус- невозможность вставить более двух плееров. В phpBBex используется уникальный идентификатор на основе ID вложения, у вас так не выйдет. Впрочем, ваш код, если его исправить, обладает тем же недостатком.
По идее, нужно сохранять ссылку на текущий контекст и использовать его вместо ID, но я с яваскриптом не дружу.
meow
phpBB 1.4.0
Сообщения: 30
Стаж: 8 лет 6 месяцев
Благодарил (а): 4 раза

Re: Установка mediaelementjs

Сообщение meow »

Огромное спасибо за помощь. Запустилось.
А самое главное прояснилось в голове как это принципиально работает.
Sumanai писал(а):Главный минус- невозможность вставить более двух плееров. В phpBBex используется уникальный идентификатор на основе ID вложения, у вас так не выйдет. Впрочем, ваш код, если его исправить, обладает тем же недостатком.
По идее, нужно сохранять ссылку на текущий контекст и использовать его вместо ID, но я с яваскриптом не дружу.
Да, недостаток очевиден.
Рассматриваю Soundmanager 2 как возможный плеер, но он не умеет выдирать названия треков из mp3. Но блин красивый. :D
http://www.schillmania.com/projects/sou ... mo/bar-ui/
А вы сами что используете как плеер для phpbb?
meow
phpBB 1.4.0
Сообщения: 30
Стаж: 8 лет 6 месяцев
Благодарил (а): 4 раза

Re: Установка mediaelementjs

Сообщение meow »

Если кому интересно, то нашелся грамотный человек, добавивший Native поддержку аудио в phpbb.
Играет прям с attachment`ов.

Применить можно отсюда.
https://github.com/phpbb/phpbb/pull/4439/files
Аватара пользователя
Sumanai
phpBB 3.0.0 RC5
Сообщения: 1668
Стаж: 9 лет 5 месяцев
Благодарил (а): 257 раз
Поблагодарили: 195 раз

Re: Установка mediaelementjs

Сообщение Sumanai »

meow писал(а): Если кому интересно, то нашелся грамотный человек, добавивший Native поддержку аудио в phpbb.
Фигня. В phpBBex это сделано лучше.
meow писал(а): Играет прям с attachment`ов.
Как в phpBBex. Только там используется стандартный элемент, а в эксе- уже упомянутый mediaelementjs, создающий единое оформление и добавляющий поддержку старым браузерам.
Аватара пользователя
Balamut
Former team member
Сообщения: 2213
Стаж: 19 лет 1 месяц
Откуда: {postrow.POSTER_FROM}
Поблагодарили: 105 раз

Re: Установка mediaelementjs

Сообщение Balamut »

а крестиком он вышивать умеет?
//
// That's all, Folks!
// -------------------------------------------------
Аватара пользователя
Sumanai
phpBB 3.0.0 RC5
Сообщения: 1668
Стаж: 9 лет 5 месяцев
Благодарил (а): 257 раз
Поблагодарили: 195 раз

Re: Установка mediaelementjs

Сообщение Sumanai »

Нет, это веб-форум.

Вернуться в «Поддержка phpBB 3.1.x»