Загрузка аватара при регистрации

3951

Хак+ плагин для выбора аватара при регистрации пользователя

Если аватар не выбран, то он будет вставлен случайным образом.
За счёт использования плагина объём хака сведён к минимуму.
В файле frontend.php есть комментарии о хаке.
Внимание, все файлы от версии 1.10.1


Установка:
1. залить содержимое архива.
2. установить плагин
3. включить плагин

скачать

Спасибо:
WMR кошелек: R105352751274

Если поставили, отпишитесь как работает.
Делаем на сайте поиск от Яндекса | хак +плагин выбора автара при регистрации + выбор города
Комментарии (64)
keven 17 января 2013 в 17:49 +1
+ отличный плагин
fact 17 января 2013 в 17:53 0
при переходе на 2.0 проблем из за плагина не возникнет?
fact 17 января 2013 в 17:56 0
и есть подозрение что там будет подобное встроено, во всяком случае хотелось бы чотбы хотя бы как необязательный пункт загрузка аватара при регистрации была в 2.0
fact 17 января 2013 в 17:56 0
ну а так конечно плюс
Димитриус 17 января 2013 в 20:24 +1
100% не будет)
Особенности плагина таковые)
eoleg 17 января 2013 в 18:24 +3
+
а как вы думаете если например заставлять загружать аватары так:
выбрать самый мерзкий и страшный аватар по умолчанию
fact 17 января 2013 в 19:11 0
не застявлять - а сделать в 2.0 - -необязательный пункт, как icq

а насчёт страшного аватара по умолчанию - хорошая задумка
fact 17 января 2013 в 19:12 0
например обнажённая девушка по пояс - а грудь прикрывает табличка которую она держит - Загрузи аватар!
lokanaft 17 января 2013 в 19:21 +2
Так все и будут с такой аватаркой, и даже на другие сайты её скопируют =D
BELIEVER 17 января 2013 в 20:49 0
да это точно smile
IRATE 17 января 2013 в 21:44 0
Femen?
AndroS 18 января 2013 в 18:38 0
Ага, есть у меня где-то с текстом "Я как лох без аватара"... Только вот не кажется ли вам. что можно народ так распугать? smile Ну, еще конечно от тематики сайта зависит
Димитриус 17 января 2013 в 20:36 0
что мешает ноупик поставить на свой?)
Роман 17 января 2013 в 18:52 0
Спасибо, пригодиться
Soul 17 января 2013 в 19:36 +2
Димитриус:
Если поставили, отпишитесь как работает
проверил - работает. +
Димитриус 17 января 2013 в 20:36 +1
Спасибо!
BELIEVER 17 января 2013 в 20:51 0
а на 1.10 работает???
Димитриус 17 января 2013 в 21:30 0
Будет, он не советую...
BELIEVER 17 января 2013 в 21:49 0
Спасибо понял
Edik_Salonikski 17 января 2013 в 21:35 0
Спасибо!
Dost 18 января 2013 в 03:01 0
Спасибо
Димитриус 18 января 2013 в 09:44 +1
Если есть идеи по улучшению, то пишите попробую сделать
Edik_Salonikski 18 января 2013 в 11:31 0
ну как илеа добавить выбор города в регестрацию.
Димитриус 18 января 2013 в 20:07 0
Так кому еще город нужен в этом плагине при регистрации?
AlLar 18 января 2013 в 23:20 0
Мне бы очень пригодился, но так как для провинции то хотелось бы с возможностью забить
перечень основных поселений! Было бы супер!
Димитриус 18 января 2013 в 18:11 0
Есть на примере скрипт?
Edik_Salonikski 18 января 2013 в 18:48 0
Только огромный плюс +
hydraq 18 января 2013 в 20:45 0
посмотрите - нет не у кого такого глюка после включения этого модуля?
""
Изображение уменьшено. Щелкните, чтобы увидеть оригинал.
Димитриус 18 января 2013 в 20:45 0
хм... откуда она у вас могла появится!?)))
Edik_Salonikski 18 января 2013 в 21:43 0
така во не наблюдал.на сайте
Patriot 19 января 2013 в 00:44 0
Плагин включил, но в профиле не появилась вкладка "загрузка аватара". Куда копнуть?
Димитриус 19 января 2013 в 10:44 0
данное действие доступно только при регистрации. к профилю отношения не имеет.
Николай (asd43) 19 января 2013 в 00:46 0
Есть проблеммища))), установил вообщем ну а поле выберите ПОЛ отсутствует, естественно при отправке формы регистрации пишет не ВЫБРАН ПОЛ, че делать? Автору скинул ссылку на сайт в личку, сайт то уже рабочий! и надо что бы работало)))
Николай (asd43) 19 января 2013 в 00:59 +1
Извиняюсь - ложная тревога, комент удалить не могу, вообщем как и всегда, не скопировал файл в свой шаблон, все летает все отлично. спасибо за нужную вещь, недавно думал о таком а тут на тебе уже сделали.
Николай (asd43) 19 января 2013 в 01:51 0
выбор города при регистрации вообще было бы класс, а то вроде некоторые пользователи и пишут город, кто с заглавной буквы кто с прописной, а кто то и по английски выдает, бардак для поиска по городу, так что тема актуальна, может не для всех типов сайтов это принципиальна но все таки было супер. и по добавлению города в список тоже поддерживаю, много ПГТ котрые не присутствуют в списках
Максим Шорин 19 января 2013 в 11:19 +2
Имхо - как ни горько это говорить, но плагины в инстант развиты очень слабо.. имею ввиду включение в шаблон.. иногда проще сделать хак чем писать плагин.. что по сути не правильно считая патчи и миграцию...
Димитриус 19 января 2013 в 15:17 0
Вот по этому, и постарался сделать плагином... но не обошлось и без хака...
BELIEVER 19 января 2013 в 16:20 0
хорошо 1.10.1 работает ?
IRATE 19 января 2013 в 16:33 0
Нормально.
Димитриус 19 января 2013 в 16:45 0
под него и делал
Максим Шорин 19 января 2013 в 16:22 0
Подругому никак не сделаешь. Хотя.. добавили же плагины для роутеров.. может и для шаблонов замутят ?
• Mike • 19 января 2013 в 16:45 0
Можно к Smarty попробовать написать плагин отлавливающий некоторые события, надо “повертеть”…
Максим Шорин 19 января 2013 в 17:06 0
да по сути через смарти то и нужно отправить массив, просто элементы массива распределить поплотнее и в нужных местах...
Крот 19 января 2013 в 17:28 0
а написать в шаблоне cmsCore::callEvent('событие',array(данные)); не поможет?
lokanaft 19 января 2013 в 17:46 0
Поможет, если все данные для шаблона будут в одном массиве, например не:
Код PHP:
  1. $smarty->assign('actions', $actions);
  2. $smarty->assign('cfg', $cfg);
  3. $smarty->assign('user_id', cmsUser::getInstance()->id);
, а:
Код PHP:
  1. $smarty->assign('template', array(
  2. 'actions' => $actions,
  3. 'cfg' => $cfg,
  4. 'user_id' => cmsUser::getInstance()->id));
И в $smarty->display будет такой эвент.
Крот 19 января 2013 в 18:18 0
а зачем в один то, если чтобы достать из {php} что то делаем с этими данными {/php}
то все переменные легко "достаются" в шаблоне (через tpl_vars).

или там есть иная причина?
• Mike • 19 января 2013 в 18:22 0
З-ий Smarty отучил от вставки {php}… )
Крот 19 января 2013 в 23:22 0
а поподробнее можно, проблемы с безопасностью или что-то другое?
lokanaft 19 января 2013 в 18:35 0
А зачем тогда эвент? Или для каждого элемента по эвенту?
Мой пример для переделки того, что пойдёт в шаблон. • Mike • предлагает для отдельных элементов по эвенту вызывать обработчики - это сколько ж вызовов будет? Понимаю вызвать, чтобы поля добавить. И то мне кажется, что набор полей, например, регистрации, надо передавать в массиве, дабы туда можно было впихнуть что угодно и куда угодно, а шаблон бы это всё разобрал.
• Mike • 19 января 2013 в 18:41 0
Да кто ж мешает масссив передать и обработать в плагине…
Любая переменная доступная в шаблоне обработается так же как и в коде компонента или еще где-то
• Mike • 19 января 2013 в 18:43 0
«Подругому никак не сделаешь. Хотя.. добавили же плагины для роутеров.. может и для шаблонов замутят»?

Это и есть плагин для шаблона…
lokanaft 21 января 2013 в 10:54 0
В любом случае, это:
Код PHP:
  1. {call_event event='TEST_SMARTY' item = $mod.title}
уже не плагин, а костыль какой то, плагин надо чтобы включил - и везде он сразу работает, на всех шаблонах. Не понравилось - удалил.
• Mike • 19 января 2013 в 18:20 +2
/includes/smarty/libs/plugins/function.call_event.php
Код PHP:
  1.  
  2. <?php
  3. /**
  4.  * Smarty plugin
  5.  * @package Smarty
  6.  * @subpackage plugins
  7.  */
  8. function smarty_function_call_event($params, &$smarty)
  9. {
  10. return cmsCore::callEvent($params['event'], $params['item']);
  11. }
  12.  
пример использования в шаблоне на примере /templates/_default_/modules/module.tpl
вызов: {call_event event='TEST_SMARTY' item = $mod.title}
код плагина не привожу он отлавливает событие 'TEST_SMARTY' и добавляет к титлу текст: Smarty©

Код HTML:
  1.  
  2. <div class="{$mod.css_prefix}module">
  3. {if $mod.showtitle neq 0}
  4. <div class="{$mod.css_prefix}moduletitle">
  5. {call_event event='TEST_SMARTY' item = $mod.title}
  6. {if $cfglink}
  7. <span class="fast_cfg_link">
  8. <a href="javascript:moduleConfig({$mod.id})" title="Настроить модуль">
  9. <img src="/templates/{template}/images/icons/settings.png"/>
  10. </a>
  11. </span>
  12. {/if}
  13. </div>
  14. {/if}
  15. <div class="{$mod.css_prefix}modulebody">{$mod.body}</div>
  16. </div>
  17.  
Димитриус 19 января 2013 в 21:19 +1
Интересный вариант...
надо попробывать
Student 26 марта 2013 в 20:45 0
Блин,ребят, кто-нибудь перешлите пожалуйста файл com_registration.tpl из 1.10 - я свой нечаянно удалил(((((
boss 20 августа 2013 в 14:22 0
Чтото на 1.10.2 не работает плагин sad кто нибудь уже тестил?
Олег с клещами 12 сентября 2013 в 11:40 +2
Точно не работает на 1.10.2. Надо дружно взывать к автору!!! Может доработает?
boss 10 октября 2013 в 12:50 0
Хочу ещё раз поднять тему и спросить, ожидается ли в дальнейшем обновление хака на 1.10.2 ?
Rainbow 28 октября 2013 в 22:05 0
На 1.10.2 работает нужно просто перенести хак из frontend.php смержив с новым из 1.10.2
В файле frontend.php есть комментарии о хаке.
Max 1 февраля 2014 в 01:39 0
На 1.10.3 к сожалению не работает.
Max 1 февраля 2014 в 01:47 0
Обшибся я, работает smile +1
Скела 29 марта 2014 в 11:30 0
Буду признателен, если поделитесь как настроили под 1.10.3 - хорошо бы решение для всех выложить!
Димитриус 29 марта 2014 в 11:41 0
Вот тут посмотрите для версии 1.10.3 перейти