LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
28.05.2012, 03:19:01 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 1.7 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1] 2  Все   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Элемент изображений eg_Image 1.1 (ajax upload)  (Прочитано 7905 раз)
0 Пользователей и 1 Гость смотрят эту тему.
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« : 03.12.2009, 23:27:58 »

Написал свой ajax-based элемент изображений для Zoo.
http://narod.ru/disk/16027896000/zoo_eg_image_1.1_UNZIP_OVER_SITE.zip.html

UPD.
----------------------------------------------------------------------------
Обновил элемент до версии 1.1.

Изменение:

    * Изображения нормально работают при размещении сайта на site.com, а также на site.com/subfolder
    * Добавлено API для получения ссылки на изображения в шаблоне (минуя $element->render() ):
      Тамбнейл: $element->getImageThSrc()
      Само изображение: $element->getImageSrc()
    * Реорганизация внутренней структуры скриптов и стилей


Установка: Как и раньше, скопировать содержимое архива поверх сайта. Файлы версии 1.0 можно удалить, а можно и не трогать. Они не будут использоваться.
----------------------------------------------------------------------------


Фичи:
  • Загрузка изображения прямо из страницы редактирования продукта (ajax)
  • Автоматическая уборка мусора (неприкрепленные, исходные изображения), без cron
  • Ресайз изображения
  • Два режима отображения: тамбнейл и полноразмерное изображение (на странице категории и подробного просмотра)

Содержимое архива надо скопировать на сайт с уже установленным zoo. (Прямо поверх существующего сайта). Появится новая группа элеметов, и там новый элемент.
Буду признателен за отзывы! =)










Joomla 1.5.14
Zoo 1.0.6 Pro

Замечание по политике именования элементов:
У компонента Zoo дела с именами переменных обстоят весьма прискорбно.. Некоторые могут не подойти, причем Вы это узнаете уже потом, фильтрации хорошее-плохое имя при его определении не происходит.
Можно безопасно использовать только "a-z" и "_", без пробелов.


PS.
Да, я знаю, что assets надо было разложить по папочкам, многое оптимизировать, зажать js и т.п.
Но и в текущем состоянии все выглядит довольно пристойно. Уже можно использовать во многих проектах.
« Последнее редактирование: 17.01.2010, 14:54:06 от snowindy » Записан
 
dieman
Осваиваюсь на форуме
***

Репутация: +5/-0
Offline Offline

Сообщений: 105


« Ответ #1 : 04.12.2009, 02:30:59 »

А куда копировать eg_assets и eg_php?
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #2 : 04.12.2009, 10:56:46 »

Весь архив надо распаковать поверх существующего сайта. Т.е. папки eg_assets и eg_php будут теперь находиться в корне сайта.
Записан
dieman
Осваиваюсь на форуме
***

Репутация: +5/-0
Offline Offline

Сообщений: 105


« Ответ #3 : 04.12.2009, 17:14:24 »

Спасибо большое.
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #4 : 07.12.2009, 13:48:25 »

Замечание по политике именования элементов:
У компонента Zoo дела с именами переменных обстоят весьма прискорбно.. Некоторые могут не подойти, причем Вы это узнаете уже потом, фильтрации хорошее-плохое имя при его определении не происходит.
Из замеченного:
  • Не используйте большие буквы в именах элементов
  • Нельзя использовать цифры в именах элементов
Короче, можно только "a-z" и "_".
« Последнее редактирование: 07.12.2009, 23:05:58 от snowindy » Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #5 : 16.12.2009, 15:31:56 »

Обновил элемент до версии 1.1.

Изменение:
  • Изображения нормально работают при размещении сайта на site.com, а также на site.com/subfolder
  • Добавлено API для получения ссылки на изображения в шаблоне (минуя $element->render() ):
    Тамбнейл: $element->getImageThSrc()
    Само изображение: $element->getImageSrc()
  • Реорганизация внутренней структуры скриптов и стилей

Установка: Как и раньше, скопировать содержимое архива поверх сайта. Старые файлы можно удалить, а можно и не трогать. Они не будут использоваться.
Записан
yondo
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 23


joomla 1.5


« Ответ #6 : 15.01.2010, 08:04:06 »

Столкнулся с проблемой следующего характера...
Задача:
вывести в категории изображение с помощью eg_Image 1.1 и в результате клика на изображении вывести его в полном размере с помощью Rokbox плагина.

Решаю:
Код:
<?php if (isset($elements['logoimg'])) : ?>
      <a rel="rokbox[700 700]" title="Title :: Desc" href="<?php echo $elements['logoimg']->render(ZOO_VIEW_ITEM); ?>"><?php echo $elements['logoimg']->render(ZOO_VIEW_CATEGORY); ?></a>
<?php endif; ?>

Результат:
При генерации страницы код выглядит следующим образом
Код:
<a src="/images/eg_zoo/eg_image/th_56b4c_logo-desee.jpg" image="" href="/<img alt=" title="Title :: Desc" rel="rokbox[700 700]">"><img src="/images/eg_zoo/eg_image/th_56b4c_logo-desee.jpg" alt="image"/></a>
при этом показа полного размера картинки не производится

Вопрос: как решить данную ситуацию. если применение плагина rokbox является единственным возможным?
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #7 : 15.01.2010, 20:14:12 »


    * Добавлено API для получения ссылки на изображения в шаблоне (минуя $element->render() ):
      Тамбнейл: $element->getImageThSrc()
      Само изображение: $element->getImageSrc()
 
Надо использовать вот это.
Записан
yondo
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 23


joomla 1.5


« Ответ #8 : 17.01.2010, 13:08:06 »

не могу понять как это работает..

Скажите пожалуйста что вставить в ссылку, чтобы открылось полное изображение?

<a rel="rokbox[900 600]" title="<?php echo $item->name; ?> :: " href="ЧТО ВСТАВИТЬ?">
<?php echo $elements['logoimg']->render(ZOO_VIEW_CATEGORY); ?></a>

Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #9 : 17.01.2010, 13:58:56 »

$element->getImageSrc()
Записан
yondo
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 23


joomla 1.5


« Ответ #10 : 17.01.2010, 14:30:00 »

вставлял..
при генерации выдаёт
<a href="/$element->getImageSrc()" title="title:: " rel="rokbox">
<img src="/images/eg_zoo/eg_image/th_56b4c_logo-desee.jpg" alt="image"/>   </a>
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #11 : 17.01.2010, 14:39:22 »

господи...

естественно, надо это оформить как код php!
<?php echo $elements['logoimg']->getImageSrc(); ?></a>
Записан
yondo
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 23


joomla 1.5


« Ответ #12 : 17.01.2010, 15:02:39 »

оо... дико извиняюсь..
спасибо тебе большое за ответы! с меня плюс!
Записан
yondo
Захожу иногда
**

Репутация: +1/-0
Offline Offline

Пол: Мужской
Сообщений: 23


joomla 1.5


« Ответ #13 : 22.01.2010, 10:18:11 »

snowindy не подскажете какой параметр изменить чтобы при изменении размера изображение не ухудшалось в качестве? поясню, когда изменяется размер даже на 10 пикселей. на чистом изображении появляются артефакты. как будто изображение сохранилось с качеством 60%.
Заранее спасибо
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #14 : 22.01.2010, 12:12:25 »

хмм.. Пока что эту ситуацию нельзя исправить изменением параметра.
Вы можете заглянуть в функцию smart_resize_image, которая используется на строке 13 eg_php/eg_util.php. И изменить что-то там.

Я эту функцию ресайза взял на каком-то форуме. Поэтому, если вы разберетесь в ней и поймете что и как надо "подкрутить", для должного качества изображения, или предоставите свою функцию с аналогичными действиями, - через день-два я выпущу следующую версию eg_Image, в которой будет тот самый параметр..
Записан
goga63
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 44


« Ответ #15 : 06.03.2010, 10:35:33 »

почему-то не работает кнопка закрытия загрузчика изображений... справо внизу крестик. Sad
Можно исправить ?

и еще...
при загрузке к оригинальному и уменьшенным изображениям добавляется цифровой префикс (на пример : image.jpg переименовывается в e38b35_image.jpg, rez_e38b35_image.jpg и  th_e38b35_image.jpg )
это нормально ? я имею ввиду e38b35
« Последнее редактирование: 06.03.2010, 11:27:27 от goga63 » Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #16 : 06.03.2010, 11:37:24 »

Хм, а какой браузер используете?
Где расположен сайт? (локальный сервер или уже у хостера)
После загрузки сама формочка убирается нормально?

Короче, дайте всю дополнительную инфу, пожалуйста.

Да, префиксы это нормально. Так и должно быть.
Записан
goga63
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 44


« Ответ #17 : 06.03.2010, 11:53:29 »

Хм, а какой браузер используете?

точно, проблема в IE с Mozilla  все нормально !
сайт на хостинге agava.
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #18 : 06.03.2010, 11:56:40 »

а какой IE?
Записан
goga63
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 44


« Ответ #19 : 06.03.2010, 12:02:10 »

Internet Explorer 7.0.5730.13
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #20 : 06.03.2010, 12:58:13 »

Ну попользуйтесь пока файрфоксом...
исправлю этот баг в следующей версии)
Записан
delames
Осваиваюсь на форуме
***

Репутация: +9/-0
Offline Offline

Сообщений: 177


Решаю программные вопросы за $ - Обращайтесь!


« Ответ #21 : 06.03.2010, 16:32:42 »

Действительно выскакивают артефакты на изображении.. Вот глянь: http://promokurs.ru/videouroki/99-copy/times.html
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #22 : 06.03.2010, 16:54:22 »

хмм...
возможно, эта проблема вызвана встроенным ресайзом.
На большинстве изображений проблем не бывает.
Я встречал артефакты когда использовалась macOS и фотошоп при его создании...

попробуйте предварительно конвертнуть изображение через "save as", если оно чужое. Т.е., пересохранить его в том же или другом формате.. Может быть, это вылечит артефакты.
Записан
delames
Осваиваюсь на форуме
***

Репутация: +9/-0
Offline Offline

Сообщений: 177


Решаю программные вопросы за $ - Обращайтесь!


« Ответ #23 : 06.03.2010, 17:38:31 »

То что с ресайзом - это факт.. Это была гифка. Может ему не нравится этот формат. Но дело в том, что например для меня этот компонент интересен тем что снимает проблему выбора изображения при добавлении материала пользователем. Поэтому нужно чтобы функция ресайза работала стабильно со всеми популярными форматами, по крайней мере bmp, jpg, gif
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #24 : 06.03.2010, 18:48:33 »

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

jpg, png  и bmp кущаются нормально.

На моей практике, gif в вебе почти не используется для настоящих изображений. - только служебные обрезки (кнопки с красивостями, уголки). Посему и Вам не советую особо полагаться на gif, в силу его ограниченности. Лучше тогда на png.
Записан
delames
Осваиваюсь на форуме
***

Репутация: +9/-0
Offline Offline

Сообщений: 177


Решаю программные вопросы за $ - Обращайтесь!


« Ответ #25 : 06.03.2010, 20:28:23 »

png весят больше) Попробую.. Короче я так понимаю, на каждый итем это еще + 1 запрос к бд! Слушай, может имеет смысл создать эти 2 поля в в zoo_type_ ? Как это сделано стандартно
Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #26 : 06.03.2010, 20:35:10 »

да, вполне логично больше интегрироваться с zoo.
учту для следующей версии.
Записан
delames
Осваиваюсь на форуме
***

Репутация: +9/-0
Offline Offline

Сообщений: 177


Решаю программные вопросы за $ - Обращайтесь!


« Ответ #27 : 07.03.2010, 00:54:10 »

Какая то лажа.. Я пошел простым путем.. Заменил унаследованный класс Simple на SimpleParams.. Определил 2 переменные big и small.
В твоей функции Upload после определения названий ресайзнутых ихображений пишу типа $this->big = $resImgName;

и в самом низу класса добавляю бинд функцию

// init vars
$params   =& $this->getParams();
   
$params->set('imgbig', $this->imgbig);
$params->set('imgsmall', $this->imgsmall);

$this->params = $params->toString();

Записывается это дело стандартно как все элементы в zoo только блин с пустыми переменными $this->imgbig ... И чего они не цепляются )))

Отказывайся от дополнительной таблицы. Используй SimpleParams
« Последнее редактирование: 07.03.2010, 12:23:42 от delames » Записан
snowindy
Осваиваюсь на форуме
***

Репутация: +3/-0
Offline Offline

Сообщений: 32


« Ответ #28 : 07.03.2010, 01:15:03 »

я так и не понял, тебе удалось записать данные изображение в тип или нет?
проблема в том, что значения не сохраняются?
Записан
delames
Осваиваюсь на форуме
***

Репутация: +9/-0
Offline Offline

Сообщений: 177


Решаю программные вопросы за $ - Обращайтесь!


« Ответ #29 : 07.03.2010, 12:22:20 »

вообщем сохнаняется только imgbig = и imgsmall = ..... После = должны быть значения переменных но они пустые почему-то... Не записываются они в функции upload. Попробуй и ты изменить так как я описал.. Может у тебя получится. Bind функцию возьми у ImageElement.
« Последнее редактирование: 07.03.2010, 12:55:41 от delames » Записан
Страниц: [1] 2  Все   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.16 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet