image_upload новое дыхание. Обновление модуля.

Главные вкладки

Аватар пользователя gor gor 4 ноября 2008 в 17:56

Приветствую всех.
Предоставляю на ваш суд обновленый вариант image_upload.
Разработчику оригинального кода, свои правки я выслал, надеюсь он в ближайшее время их применит и обновит официальную сылку модуля.

Ссылка на скачивание image_upload
Описание:

image_upload
Новые функции:

- интеграция с imagecache.
- аплоад форма поддерживает для сортировки drag&drop механизм

Новые настройки:
страница типа ноды:
- возможность вывода приатаченных рисунков
- выбор imagecache namespace для данного типа ноды. Используется сразу при аплоаде картинок а также при выводе приатаченых картинок.

настройки модуля views:
- возможность указания imagecache namespace при создании views приатаченных рисунков

Новые возможности для програмистов:
- добавлен theme_image_upload_node_image_view, который вызывается в hook_nodeapi если стоит галочка "Show Images in node view."

А также в зависимости добавлена запись о зависимости от imagecache

Удалено:
встроенный механизм генерации превьюшек размером 100x100

Пробуем, пишем баги.

Drupal developer,
Gor

Комментарии

Аватар пользователя dfaker dfaker 4 ноября 2008 в 18:58

Работает Smile Радует что нет особых зависимостей - универсальный. Развитие: генерация списка загруженных файлов в виде тумбов со своим правилом imagecache, быстрая вставка относительной ссылки в редактор, интеграция с cck - шутка, просто imagefield еще наверно долго ждать финала. Интеграцию с views пока не пробовал

Аватар пользователя gor gor 5 ноября 2008 в 17:54

Химический Али wrote:
а что он может и почему его надо применят ьвмест окакго-нибудь Image?

впринципе это расширеный upload модуль drupal.
При аплоаде (мультиаплоаде) картинок на сайт, видно саму картинку в блоке аплоада. При этом я добавил чтоб ее видно было через imagecache а не во весь размер.

Еще одна полезная функция - во views можно использовать эти рисунки что загружены. Опять же с возможностью вывода через imagecache
Также интегрированы рисунки с лайтбокс2

Собсно и все.

Аватар пользователя gorr gorr 6 ноября 2008 в 1:28

Интересно, пока что вроде бы не нужно такое было, но расширение возможностей, это хорошо, спасибо.

Аватар пользователя gor gor 6 ноября 2008 в 4:02

Всегда рад, обращайтесь.
Делал для себя, и своих клиентов - увидел что кто то тоже подобное делает, наложил свои наработки и вауаля)

Аватар пользователя romandor romandor 25 ноября 2008 в 11:03

А есть ли возможность от категорий избавится (при выводе изображений в ноде)?
я про это:

<?php
foreach($node->images as $fid => $image) {
  if($image->term_name == 'Default') {
    echo $image->img_html; // HTML for the image thumb, when clicked shows the full image (uses lightbox2 if available)
  }
}
?>

как вариант реализации - связь "нода -> картинки"

Аватар пользователя alex_ku alex_ku 10 ноября 2015 в 11:45

приветствую всех!
помогите плиз решить проблему:
поставил image_upload но он не работает как надо.
правильнее сказать что image_upload работает (если выключить javascript).
со включеным JS после загрузки файла имею такую картину:

сильно подозреваю что проблема где-то в друпале. потому что file_upload тоже не работает с теми же симптомами.
drupal 6.6

PS: пока писал сообщение, пришло в голову отключить все модули - дабы найти конфликт.
в результате проблема локализована - модуль Book.
есть идеи что бы там было криво ?

Аватар пользователя alex_ku alex_ku 7 декабря 2008 в 1:14

проблема найдена.
суть в том что я правил book.module в редакторе и он мне подставил EFBBBF в начало файла.

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

еще один вопрос - можно ли видеть картинки при препросмотре ?

Аватар пользователя alex_ku alex_ku 8 декабря 2008 в 1:11

и еще один вопрос - может недосмотрел где в настройках ...
возможно ли сохранять на сайте только ресайзнутое (или другим способом измененное через ImageCache ) изображение, а оригинал не сохранять вообще ?

Аватар пользователя alex_ku alex_ku 12 декабря 2008 в 13:18

можно еще один вопрос...

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

Аватар пользователя alex_ku alex_ku 12 декабря 2008 в 14:41

не знаю как это делать "правильно"
я это решил так:

module_upload.module:

    case 'view':
      if(variable_get('image_upload_show_images_'. $node->type, 0)){
        $node->content['images'] = array(
          '#value' => theme('image_upload_node_image_view', $node->images),
          '#weight' => 1,
        );
      }
Аватар пользователя alex_ku alex_ku 17 декабря 2008 в 1:29

Гор, подскажите пожалуйста, каким образом разрешить/запретить image_upload для конкретного node type с помощью API ?
Я хочу создать свой тип ноды в модуле и для него разрешить/запретить загрузку изображений плюс очень хочется иметь возможность
настроить image_cache через апи для созданного типа ноды...
Возможно ли это (знаю что да). Вопрос - как?

Аватар пользователя gor gor 17 декабря 2008 в 2:43

Для " разрешить/запретить загрузку изображений " необходимо зайти в admin/content/node-type/{тут тип вашего node_type}
И в блоке "Image Upload" -> "Use Image Upload for this node.:" поставить галочку YES

С Уважением, Gor

Аватар пользователя gor gor 17 декабря 2008 в 16:45

Данный модуль не предлагает API который бы позволял присоединить отсоединить этот модуль.

Можно попробывать через
variable_set('image_upload_enabled_'. $node_type, 1);
где $node_type - ваш тип ноды.

Аватар пользователя alex_ku alex_ku 17 декабря 2008 в 23:06

вдруг кому-то пригодится:
создание пресета програмным способом

<?php
    // Preset
    $imagecachepreset = new stdClass ();
    $imagecachepreset->presetname = 'MYPRESETNAME';
    drupal_write_record('imagecache_preset', $imagecachepreset);
   
    // Action
    $imagecacheaction = new stdClass ();
    $imagecacheaction->presetid = $imagecachepreset->presetid;
    $imagecacheaction->module = 'imagecache';
    $imagecacheaction->action = 'imagecache_scale_and_crop';
    $imagecacheaction->data = array(
                            'width' => '200',
                            'height' => '200'
                        );
    drupal_write_record('imagecache_action', $imagecacheaction);
?>

нашел тут в комментах.