Обрезка аватара во время загрузки.

Доработка хака "Обрезка аватара во время загрузки." для 1.10-1.10.1

#1 4 июля 2013 в 09:51
Добрый день. Для многих остается желанным хак «Обрезки аватара во время загрузки». У меня на сайте есть такой, но вот беда, я не могу его полноценно выделить, чтобы применить для другого сайта. Связь с автором утеряна, по этому предлагаю спецам Instantcms доработать имеющийся у меня и обрадовать этим не только меня но и других пользователей.
Хак создан под 1.10, но прекрасно работает и на 1.10.1.
Суть хака заключается в том, что во время загрузки аватара, естественно, имеется возможность выбрать область загруженного фото для применения ввиде главного изображения (аватара). А его особенность – создание 4-х изображений размерами: 1) 42х56 пикс., 2) 100х133 пикс., 3)200х267 пикс, 4)300х400 пикс. Не спрашивайте зачем такие размеры. Такая была задумка.
Выделенный мной хак стабильно работает в опере, мозиле и хроме, но абсолютно отказывается работать в IE. Еще одна лажа, которая присутствовала изначально – файлы png сохраняются ввиде черного фона.

Я думаю спецам не будет сложно понять в чем эти две проблемы и исправить ошибки. Спасибо всем, кто отзовется.

Сам хак здесь
Прикрепленный файл
obrezkaavatara_h7m2f.rar 18 Кб
#2 11 июля 2013 в 18:14
1. Спасибо всем, кто откликнулся smile.(глухо как в танке)
2. Для тех, кого заинтересовал хак скажу, что оказывается, не все так плохо. ИЕ, все же, обрезает аватарки, но только если зайти не под главным администратором(????). Так что для обычных пользователей этот факт неудобства не создаст.
#3 15 июля 2013 в 20:22

1. Спасибо всем, кто откликнулся .(глухо как в танке)

volchoc
Увидел, попробовал — все работает! За данное решение огромный респект автору!

Для тех кто будет ставить себе, сразу хочу предупредить — менять в файле upload_photo_zsvip.class разрешения аватаров под себя.

К примеру — у вас в настройках стоит ширина маленького аватара 50px, в то время как после установки данного решения у вас маленькие аватары станут 200px по ширине. И начнется свистопляска с аватарами на сайте.

А в целом решение рабочее.
#4 19 июля 2013 в 15:29
Спасибо за отзыв. Я рассчитывал что спецы найдут причину, почему не сохраняются аватарки, из PNG файлов.
#5 20 июля 2013 в 00:39

Я рассчитывал что спецы найдут причину, почему не сохраняются аватарки, из PNG файлов.

volchoc
Зачем искать спецов, если просто… возьми и сравни файлы классов upload_photo_zsvip.class и стандартного upload_photo
Если в стандартном классе upload_photo есть в 70 строке есть (в уcловии проверки разрешенных файлов, на загрузку) — разрешенное PNG
  1. if (!in_array($ext, array('jpg','jpeg','gif','png','bmp')
То в классе upload_photo_zsvip.class нет даже намека на PNG.
  1. if (!in_array($ext, array('jpg','jpeg','gif','bmp')
#6 26 июля 2013 в 00:36
Спасибо, но не помогает. Я это уже пробовал. А где и что можно добавить, чтобы при попытке загрузить файлы png и bmp появлялась ошибка "… не правильный тип файла..."
#7 26 июля 2013 в 07:52
Как раз этим и занимаюсь.Заменой graphik.inc на класс обработки изображений tulipIP. Выяснилось что tulipIP тоже имеет проблемы со смерживанием двух phg. Итоговая картинка искажается. А в остальном все методы класса работают на ура.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.