• DONATE to NULLED!
    Форуму и его команде можно помочь, мотивировать модераторов разделов.
    Помогите модератору этого раздела killoff лично.

Помощь Доработать плейлист для видео

sa22-01

Постоялец
Регистрация
8 Июл 2014
Сообщения
74
Реакции
10
Здравствуйте. Разработчики, отзовитесь! Я не могу найти человека, разбирающегося в Js. Все либо заняты, либо не хотят дорабатывать чужие скрипты, либо просто не отвечают.
Есть небольшой модуль для создания плейлиста для видеозаписей. Вот пример на моём сайте:
видео.jpg
Как видно, прямо над видеозаписями есть кнопки (в данном случае одна) переключения сезонов. А мне нужно, чтобы на этих кнопках были написаны озвучки. Например вместо "Сезон 1, Сезон 2, Сезон 3" было "AniStar, Русский дубляж, Невафильм" и т.д. Вот на Для просмотра ссылки Войди или Зарегистрируйся так и сделано. А поскольку у них Для просмотра ссылки Войди или Зарегистрируйся закодирован, я не могу посмотреть чем их код отличается от стандартного.
Может можно подправить как-то код, чтобы я мог сам прописывать названия этим верхним кнопкам? Пишите свои скайпы, а я с вами свяжусь.

Я прикрепляю архив с модулем.

П.с. Killof и DomiTori посоветовали модуль Конструктор видео. Он хороший, удобный и мне понравился. И, наверное, я буду его использовать, если этот никто не исправит. Но у меня не онлайн кинотеатр. Я добавляю определенные серии по мультам и одному сериалу. То есть их не много, но хотелось бы собрать серии с разными озвучками. Поэтому и нужно переключение между ними. А конструтор - это полноценный модуль для работы с видео, требующий к тому же правки движка.
 

Вложения

  • pleylist.rar
    11,5 KB · Просмотры: 20
В личку напиши FTP до реального сайта, где у тебя модуль стоит... И логин/пароль в админку...
 
В личку напиши FTP до реального сайта, где у тебя модуль стоит... И логин/пароль в админку...
У модуля нет админки. Он состоит из картинок и одного js файла с кодом:
Код:
var pos = 0;
var poz = 0;
var sea = null;
var width = 530;
var vk = new Object();
(vk = {
    init: function () {
        document.write("<div id=\"player-vk-write\" align=\"center\">                            <ul id=\"player-vk-season\"><li id=\"seasons\"></li></ul>                            <div id=\"player-vk-player\"></div>                            <ul id=\"player-vk-serial\"></ul>                            <a href=\"javascript://\" class=\"prev\" onclick=\"vk.move(1);\">prev</a>                           <a href=\"javascript://\" class=\"next\" onclick=\"vk.move(0);\">next</a>                           <a href=\"javascript://\" class=\"prev1\" onclick=\"vk.move1(1);\">prev</a>                           <a href=\"javascript://\" class=\"next1\" onclick=\"vk.move1(0);\">next</a>                           <\/div>")
    },
    player: function (a, b) {
        document.getElementById("player-vk-player").innerHTML = "";
        var d = document.createElement("iframe");
        d.src = String(a);
        d.width = "100%";
        d.height = "372";
        d.setAttribute("border", "0");
        d.setAttribute("frameborder", "0");
        d.setAttribute("scrolling", "no");
        d.setAttribute("allowfullscreen", "");
        d.setAttribute("webkitallowfullscreen", "");
        d.setAttribute("mozallowfullscreen", "");
        d.setAttribute("oallowfullscreen", "");
        d.setAttribute("msallowfullscreen", "");
        document.getElementById("player-vk-player").appendChild(d);
        if (document.getElementById("player-vk-serial")) {
            c = document.getElementById("player-vk-serial").getElementsByTagName("span");
            for (var i = 0; i < c.length; i++) {
                c[i].removeAttribute("class")
            }
        }
        b.setAttribute("class", "active")
    },
    season: function (a, b) {
        if (document.getElementById("player-vk-season")) {
            c = document.getElementById("player-vk-season").getElementsByTagName("span");
            for (var i = 0; i < c.length; i++) {
                document.getElementById("season" + i).style.display = "none";
                c[i].removeAttribute("class")
            }
            document.getElementById("season" + a).style.display = "";
            sea = a
        }
        b.setAttribute("class", "active")
    },
    show: function (a, b) {
        for (var i = 0; i < a; i++) {
            document.getElementById("player-vk-season").getElementsByTagName("li")[0].innerHTML += "<span onclick=\"vk.season(" + i + ", this)\">Сезон " + (i + 1) + "</span>";
            document.getElementById("player-vk-serial").innerHTML += "<li id=\"season" + i + "\" style=\"display:none;\"></li>"
        }
        for (var i = 0; i < a; i++) {
            for (var j = 0; j < b[i].length; j++) {
                document.getElementById("season" + i).innerHTML += "<span onclick=\"vk.player('" + b[i][j] + "', this);\">Серия " + (j + 1) + "</span>"
            }
        }
        document.getElementById("player-vk-season").getElementsByTagName("span")[0].setAttribute("class", "active");
        document.getElementById("player-vk-season").getElementsByTagName("span")[0].click();
        document.getElementById("season0").getElementsByTagName("span")[0].click();
        document.getElementById("season0").style.display = ""
    },
    move: function (d) {
        var a, b;
        var c = document.getElementById("seasons");
        var e = c.offsetWidth;
        var f = c.offsetLeft;
        if (d == 0) {
            clearTimeout(a);
            b = setInterval(function () {
                pos = pos - 10;
                if (pos >= (f - width) && pos >= -(e - width)) {
                    c.style.left = pos + "px"
                } else clearTimeout(b)
            }, 15)
        }
        if (d == 1) {
            clearTimeout(b);
            b = setInterval(function () {
                pos = pos + 10;
                if (pos <= (f + width) && pos <= 0) {
                    c.style.left = pos + "px"
                } else clearTimeout(b)
            }, 15)
        }
    },
    move1: function (d) {
        var a, b;
        var c = document.getElementById("season" + sea);
        var e = c.offsetWidth;
        var f = c.offsetLeft;
        if (d == 0) {
            clearTimeout(a);
            b = setInterval(function () {
                poz = poz - 10;
                if (poz >= (f - width) && poz >= -(e - width)) {
                    c.style.left = poz + "px"
                } else clearTimeout(b)
            }, 15)
        }
        if (d == 1) {
            clearTimeout(b);
            b = setInterval(function () {
                poz = poz + 10;
                if (poz <= (f + width) && poz <= 0) {
                    c.style.left = poz + "px"
                } else clearTimeout(b)
            }, 15)
        }
    }
});
 
Я в курсе... Вам объяснить зачем оно мне или просто возмём и сделаем?
 
Хорошо, сейчас отправлю. :glob:
Сообщение получил, не обещаю сделать ибо с JS знаком поверхностно, но последние извращения с jQuery вполне удачны, так что...
Единственное сегодня просто вынесли мозг на работе, бошка уже не варит. Завтра утром будет время - займусь.

P.s. доступ в админку нужен чтобы поправить текст статьи, ибо заголовки то вставлять надо :)
P.p.s. FTP соответственно для правки самого JS, ибо мне ппц лень ставить к себе на сайт и мучаться с его запуском))
 
Сообщение получил, не обещаю сделать ибо с JS знаком поверхностно, но последние извращения с jQuery вполне удачны, так что...
Единственное сегодня просто вынесли мозг на работе, бошка уже не варит. Завтра утром будет время - займусь.
Только если вам не сложно. А то я могу тогда уж использовать конструктор, чтобы не выносить мозг себе и окружающим.

Завтра утром будет время - займусь.
Я кстати подумал использовать конструтор Для просмотра ссылки Войди или Зарегистрируйся уже, но он в кодировке windows-1251. Разработчик пишет, что нужно перекодировать все файлы PHP и Js в utf-8. Я так и сделал. И программой перекодировал и вручную. Все равно при входе в админку такая ошибка:
Код:
 Fatal error: Uncaught exception 'Exception' with message 'Can`t unserialize version.txt!' in Z:\home\tecna.ru\www\engine\inc\include\p_construct\classes\VideoConstructor.php:59 Stack trace: #0 Z:\home\tecna.ru\www\engine\inc\include\p_construct\classes\VideoConstructor.php(27): VideoConstructor->version('ver') #1 Z:\home\tecna.ru\www\engine\inc\parser_constructor.php(28): VideoConstructor::getInstance() #2 Z:\home\tecna.ru\www\admin.php(100): include_once('Z:\home\tecna.r...') #3 {main} thrown in Z:\home\tecna.ru\www\engine\inc\include\p_construct\classes\VideoConstructor.php on line 59
Безымянный.png
А если оригинальные файлы кинуть, все работает, но с кракозябрами. Почему так?

А если оригинальные файлы кинуть, все работает, но с кракозябрами. Почему так?
Проблема решилась.
 
Последнее редактирование модератором:
Назад
Сверху