Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

rss

Вы не зашли.

Объявление

#1 2013-11-04 19:51:15

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Добавлени видео и создание превью

Необходим плагин со следующими возможностями:
На странице добавления новости дополнительная строка + кнопка. Добавляем в строку ссыль на ютуб-видео, жмём на кнопку - плагин (скрипт) тянет с ютуба превью картинку и изменяет её размер (на заданный в скрипте) и название (название статьи транслитом). Учитывая, что иногда бывают сбои во время загрузки, то после нажатия кнопки нужна текстовая инфа: превью создано/ошибка загрузки, повторите попытку.

Нужны 3 переменные, которые будут использоваться в шаблонах темы:
вывод картинки (с title и alt)
ссылка на созданную картинку (на веб-сервере сайта)
вывод самого видео с заданными размерами (размер задаётся в коде плагина)

Ну как-то так, знаю, что всё это есть в открытом доступе в инете, но не вместе, а по частям. Знаний, чтобы соединить всё во едино и создать нормальный плагин нет. Поэтому готов заказать. Интересует цена и сроки.

Неактивен

 

#2 2013-11-04 20:06:21

infinity237
Модератор
Откуда: Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2674
Рейтинг :   174 
Профиль  Вебсайт

Re: Добавлени видео и создание превью

Вопросы конерктено по реализации:
1. Загрузили превью, но не добавили новость т.е. при таком подходе изображение остается не использованным?
2. Если заголовок новости не заполнен, то что выводить в этом случае?
3. Чем отличаются 1 и 2 переменные?
4. Вывод видео, это iframe от youtube что ли или как-то сливать видео и использовать свой плеер?
5. При редактировании новости нужна возможность пересоздавать превью?

Отредактированно infinity237 (2013-11-04 20:07:25)

Неактивен

 

#3 2013-11-05 17:13:24

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

infinity237 написал:

Вопросы конерктено по реализации:
1. Загрузили превью, но не добавили новость т.е. при таком подходе изображение остается не использованным?
2. Если заголовок новости не заполнен, то что выводить в этом случае?
3. Чем отличаются 1 и 2 переменные?
4. Вывод видео, это iframe от youtube что ли или как-то сливать видео и использовать свой плеер?
5. При редактировании новости нужна возможность пересоздавать превью?

1. Сразу уточню, точно не изучил пока функционал системы и не знаю, есть ли возможности "черновиков" и "автосохранения". Если черновик или автосейв есть и новость создана, но не опубликована, но ИМГ цеплять за новостью, если же новость просто уходит в небытие, то ИМГ лучше стерать с сервера.
2. В метаданных (тайтл и альт) ничего, а имя файла оставлять дефолтным (которое было при скачивании). Такая ситуация возможна только, если видео добавлять до заполнения названия новости, думаю это человеческий фактор, которого можно избежать.
3. Первая переменная выводит html-код изображения с метаданными к нему, вторая выводит только ссылку на изображение.
4. Стандартные средства ютуба: iframe или object
5. Не помешала бы возможность ручного передобавления изображения, через медиа библиотеку или проводник + если заменил ссылку на видео и нажал на кнопку весь описанный цикл выполнился заново с затиранием (пересохранением) данных прошлого цикла. Первая и вторая функции не должны быть связаны, т.е. может захочу только имагу заменить вручную, а может и всё видео.

Неактивен

 

#4 2013-11-06 18:29:49

infinity237
Модератор
Откуда: Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2674
Рейтинг :   174 
Профиль  Вебсайт

Re: Добавлени видео и создание превью

Aaron написал:

1. Сразу уточню, точно не изучил пока функционал системы и не знаю, есть ли возможности "черновиков" и "автосохранения". Если черновик или автосейв есть и новость создана, но не опубликована, но ИМГ цеплять за новостью, если же новость просто уходит в небытие, то ИМГ лучше стерать с сервера.

Архитектура CMS не предусматривает автосохранения и контроля использования изображений, поэтому реализация данного функционала невозможна без доработки CMS.

Неактивен

 

#5 2013-11-06 18:47:50

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

infinity237 написал:

Архитектура CMS не предусматривает автосохранения и контроля использования изображений, поэтому реализация данного функционала невозможна без доработки CMS.

Ок, этот пункт можно опустить. Ничего не будет происходить с имг.

Так что, взяться можете?

Неактивен

 

#6 2013-11-07 02:23:49

infinity237
Модератор
Откуда: Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2674
Рейтинг :   174 
Профиль  Вебсайт

Re: Добавлени видео и создание превью

Вообщем как-то так.

Неактивен

 

#7 2013-11-10 14:45:18

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

infinity237 написал:

Вообщем как-то так.

благодарю, хотя ещё не поставил... как опробую отпишусь

Неактивен

 

#8 2014-02-06 21:12:31

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

infinity237, работает , кроче одно момента: почему-то ресайза нет, как я понял из кода, за изменение размера отвечает:

Код:

function img_resize($src, $dest, $width, $height, $rgb=0xFFFFFF, $quality=100)

Но почему-то, когда я в ней прописываю нужные мне значения $width=220, $height=124, система никак не реагирует и продолжает тупо грузить ИМГ стандартного размера.
Есть идеи из-за чего такая шляпа?
Кстати, можно организовать обрезку (имеются точные и неизменяемые значения что откуда срезать) и ресайз?

Неактивен

 

#9 2014-02-06 21:35:02

infinity237
Модератор
Откуда: Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2674
Рейтинг :   174 
Профиль  Вебсайт

Re: Добавлени видео и создание превью

В videothumb.class.php есть строка:

Код:

//$this->img_resize($this->config['imagesPath'] . $filename, $this->config['imagesPath'] . $filename, 100, 60);

Если её раскоментировать, то будет ресайзить, последние 2 параметра - указывают размеры.

Неактивен

 

#10 2014-02-06 22:17:30

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

infinity237 написал:

В videothumb.class.php есть строка:

Код:

//$this->img_resize($this->config['imagesPath'] . $filename, $this->config['imagesPath'] . $filename, 100, 60);

Если её раскоментировать, то будет ресайзить, последние 2 параметра - указывают размеры.

спасибо )

А можете подключить обрезку? Скрин с ютуба имеет сверху и снизу чёрную зону, можно ли обрезать эти зоны, а потом уже ресайзить?

Неактивен

 

#11 2014-02-06 22:20:14

infinity237
Модератор
Откуда: Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2674
Рейтинг :   174 
Профиль  Вебсайт

Re: Добавлени видео и создание превью

Aaron написал:

infinity237 написал:

В videothumb.class.php есть строка:

Код:

//$this->img_resize($this->config['imagesPath'] . $filename, $this->config['imagesPath'] . $filename, 100, 60);

Если её раскоментировать, то будет ресайзить, последние 2 параметра - указывают размеры.

спасибо )

А можете подключить обрезку? Скрин с ютуба имеет сверху и снизу чёрную зону, можно ли обрезать эти зоны, а потом уже ресайзить?

Сколько пикселей обрезать?

Неактивен

 

#12 2014-02-06 22:23:35

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

infinity237 написал:

Сколько пикселей обрезать?

45 сверху и 45 снизу

Неактивен

 

#13 2014-02-06 23:01:40

infinity237
Модератор
Откуда: Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2674
Рейтинг :   174 
Профиль  Вебсайт

Re: Добавлени видео и создание превью

В videothumb.class.php в класс добавить:

Код:

function img_crop($file_input, $file_output, $crop = 'square', $percent = false) {

    list($w_i, $h_i, $type) = getimagesize($file_input);
    if (!$w_i || !$h_i) {
        // echo 'Невозможно получить длину и ширину изображения';
        return false;
        }
        $types = array('','gif','jpeg','png');
        $ext = $types[$type];
        if ($ext) {
                $func = 'imagecreatefrom'.$ext;
                $img = $func($file_input);
        } else {
                echo 'Некорректный формат файла';
        return;
        }
    if ($crop == 'square') {
        $min = $w_i;
        if ($w_i > $h_i) $min = $h_i;
        $w_o = $h_o = $min;
    } else {
        list($x_o, $y_o, $w_o, $h_o) = $crop;
        if ($percent) {
            $w_o *= $w_i / 100;
            $h_o *= $h_i / 100;
            $x_o *= $w_i / 100;
            $y_o *= $h_i / 100;
        }
        if ($w_o < 0) $w_o += $w_i;
            $w_o -= $x_o;
           if ($h_o < 0) $h_o += $h_i;
            $h_o -= $y_o;
    }
    $img_o = imagecreatetruecolor($w_o, $h_o);
    imagecopy($img_o, $img, 0, 0, $x_o, $y_o, $w_o, $h_o);
    if ($type == 2) {
        imagejpeg($img_o,$file_output,100);
    } else {
        $func = 'image'.$ext;
        $func($img_o,$file_output);
    }
    
     imagedestroy($img);
     imagedestroy($img_o);

     return true;
}

Перед вызовом:

Код:

$this->img_resize($this->config['imagesPath'] . $filename, $this->config['imagesPath'] . $filename, 100, 60);

Добавить:

Код:

$this->img_crop($this->config['imagesPath'] . $filename, $this->config['imagesPath'] . $filename, array(0, 45, -45, -45));

Или просто перезалить.

Отредактированно infinity237 (2014-02-06 23:59:36)

Неактивен

 

#14 2014-02-06 23:43:11

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

а почему $filename, array(0, 45, -45, -45));?
так ведь обрезается сверху, справа, снизу, изменить второе значение в 0, то скрипт перестаёт работать. Нужно срезать только сверху и снизу

Неактивен

 

#15 2014-02-07 00:14:10

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

infinity237 написал:

Перезалил.

спасибо. сработало.
но появился ещё один косяк
обрезка стоит 45, и последующее уменьшение до размеров 220 на 124, режет и уменьшает без проблем, но на выходе почему-то на получившемся мелком изображении снизу появляется белая линия размером в 1 пиксель, будто при ресайзе возникла пустота и скрипт залил её этим цветом (который указан в коде). Но дело в том, что я глянул в фотошопе, пропорции сохранены 480х270 -> 220х124 , да на самом ютубе пропорции такие же. Что не так?

И ещё вопрос, а что означает этот кусок кода:?

if ($w_o <= 0) $w_o += $w_i;
            $w_o -= $x_o;
           if ($h_o <= 0) $h_o += $h_i;
            $h_o -= $y_o;

какие-то условия связанные с соотношением сторон?

Неактивен

 

#16 2014-02-07 00:35:32

infinity237
Модератор
Откуда: Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2674
Рейтинг :   174 
Профиль  Вебсайт

Re: Добавлени видео и создание превью

Перезалил. Теперь полоса в 1 пиксель должна пропасть.

Это для определение размеров изображения после обрезания.

Неактивен

 

#17 2014-02-07 00:56:34

Aaron
Пользователь
Зарегистрирован: 2013-10-13
Сообщений: 71
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

о да, теперь то что нужно.
И ещё, наверно последнее, можно сделать, чтобы изображения была 2: обрезанное и обрезанное+уменьшенное. В названии full и pre соответственно. Или лучше большие в одной папке, мелке в другой. Ну и у каждой картинки свои две переменные: html-код и url

Неактивен

 

#18 2014-02-07 01:59:30

infinity237
Модератор
Откуда: Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2674
Рейтинг :   174 
Профиль  Вебсайт

Re: Добавлени видео и создание превью

Перезалил.

Был изменен формат хранения данных в БД. Раньше там хранился полный путь, теперь хранится только имя файла.
В связи с этим требуется поменять JS код в add.tpl и edit.tpl. Подробнее в readme.

Неактивен

 

#19 2014-04-01 17:42:28

RocketBoy
Пользователь
Откуда: Калининград
Зарегистрирован: 2008-10-14
Сообщений: 552
Рейтинг :   27 
Профиль  Вебсайт

Re: Добавлени видео и создание превью

infinity237, ты мегачел! У меня как раз сайт видеостудии в рутине, а тут, то что надо big_smile

Неактивен

 

#20 2015-04-10 16:43:37

phoboss
Пользователь
Зарегистрирован: 2011-06-01
Сообщений: 43
Рейтинг :   
Профиль

Re: Добавлени видео и создание превью

плагин совместим с 0.9.4.RC1 + GIT 20150123?

Неактивен

 

Board footer

Powered by FluxBB

[ Generated in 0.022 seconds, 29 queries executed ]