supersh Опубликовано 23 Марта 2008 Жалоба Поделиться Опубликовано 23 Марта 2008 Всем привет, после очередного похмелья у меня в голове родился прикол к 1 апреля.Смысл шутки в том чтобы пользователи обменивались аватарами в рандруме на протяжении всего дня.Увы в модификациях и устройстве форума я не силён если можно подскажите как это реализовать. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
WildRAID Опубликовано 23 Марта 2008 Жалоба Поделиться Опубликовано 23 Марта 2008 (изменено) Понравилась идейка.) Открыть /sources/ipsclass.php Найти: $member['avatar'] = $this->get_avatar( $member['avatar_location'], $this->member['view_avs'], $member['avatar_size'], $member['avatar_type'] ); Добавить ПЕРЕД: #Get some avatars if needed if(!count($this->random_avs)) { $this->DB->simple_construct(array('select' =>'avatar_location,avatar_size,avatar_type', 'from' => 'member_extra', 'where' => 'avatar_location!=""', 'order' => 'RAND()', 'limit' => array(30), ) ); $av_q = $this->DB->simple_exec(); while( $av = $this->DB->fetch_row( $av_q ) ) { $this->random_avs[] = $av; } } #Get a single random avatar $member = array_merge($member, $this->random_avs[array_rand($this->random_avs)]); Будет работать везде, где используется parse_member из ipsclass'а.) Уже затестил на юзерах. ПрикольнА.. ^__^ Изменено 23 Марта 2008 пользователем WildRAID Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 23 Марта 2008 Жалоба Поделиться Опубликовано 23 Марта 2008 Поленился тасовать. Решил просто перевернуть. Самым примитивным способом. На IPB 1.3: Topics.phpПосле$member['avatar'] = $std->get_avatar( $member['avatar'], $ibforums->member['view_avs'], $member['avatar_size'] );добавил$member['avatar'] = str_replace("<img src=","<img style='filter:flipV' src=",$member['avatar']); Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
DerSpinner Опубликовано 30 Марта 2008 Жалоба Поделиться Опубликовано 30 Марта 2008 на 2.3.4 ведь тоже попрёт "переворот" ? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 30 Марта 2008 Жалоба Поделиться Опубликовано 30 Марта 2008 Да. Только он только в IE работает... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 30 Марта 2008 Жалоба Поделиться Опубликовано 30 Марта 2008 Поковырялся в 1.3, не сумел перетасовать аватарки.Как только я добавляю запрос к БД, разваливается весь механизм вывода постов в топике. В дополнение к перевороту аватарок сделаю таракана, ползающего по форуму. Есть милая гифка с ползающей мошкой: http://vesvalo.net/tarak.gif Джаваскриптом запущу гифку гулять по странице по произвольной траектории.Надеюсь, мониторы никто не поразбтвает. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
DerSpinner Опубликовано 30 Марта 2008 Жалоба Поделиться Опубликовано 30 Марта 2008 эм. а какте аткое сделать? ну пользуещего таракана или ещё кого?куда и какой скрипт пихать?=)zarabee Danke! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 30 Марта 2008 Жалоба Поделиться Опубликовано 30 Марта 2008 Скрипт можно взять с http://vesvalo.net/tarak.jsВместе с гифкой положить в корень форума.В шаблон добавить: <script type="text/javascript" language="JavaScript1.2" src="tarak.js"></script> Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
DerSpinner Опубликовано 30 Марта 2008 Жалоба Поделиться Опубликовано 30 Марта 2008 огромное спасибо=)получилось=)добавил в "обьявление", оно ведь "глабально".хех...чтобы не обезьяничеть попробуй другую зверушку выбрать=) (хотя может не получиться, ибо с тараканом вообще весело=)))) п.с. в 2.3.4 "рандом" работает. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
sudmed Опубликовано 30 Марта 2008 Жалоба Поделиться Опубликовано 30 Марта 2008 Джаваскриптом запущу гифку гулять по странице по произвольной траектории.Что-то таракан ходит рывками, неплавно. Так и должно быть? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 30 Марта 2008 Жалоба Поделиться Опубликовано 30 Марта 2008 Что-то таракан ходит рывками, неплавно. Так и должно быть?Лень было самому скрипт писать, взял готовый скрипт, делающий дождь из голубых запятых, и чуть подправил.Но я протестировал на нескольких знакомых, все почти пальцами мониторы попачкали, пытаясь мошку придавить. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
supersh Опубликовано 31 Марта 2008 Автор Жалоба Поделиться Опубликовано 31 Марта 2008 WildRAIDСпасибо за помощь... Ну с первым апреля))) Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Dekker Опубликовано 31 Марта 2008 Жалоба Поделиться Опубликовано 31 Марта 2008 жалка в FF не работает Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
BESTRAFER Опубликовано 1 Апреля 2008 Жалоба Поделиться Опубликовано 1 Апреля 2008 а можно как-нить сделать замены слов или символов опроеделенных в сообщениях?или просто перемешивать буквы в словах? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Kosiak Опубликовано 1 Апреля 2008 Жалоба Поделиться Опубликовано 1 Апреля 2008 2FatCat, а не знаешь для ipb2.3 какой файл править, чтоб аватарки ворочались? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 1 Апреля 2008 Жалоба Поделиться Опубликовано 1 Апреля 2008 2FatCat, а не знаешь для ipb2.3 какой файл править, чтоб аватарки ворочались?По идее, тот же, что в хаке WildRAID, только переворот делать не перед кодом, а после него. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
xRay Опубликовано 7 Апреля 2008 Жалоба Поделиться Опубликовано 7 Апреля 2008 WildRAIDУ твоего хака перетасовки аваок идет SQL-запрос при каждой аватарке в итоге если в теме показывается по 10 аватарок то +10 запросов будет. А если больше, то еще больше... Ну очень оптимальное решение. Я когда это делал, то один раз при показе темы SQL-запрос на вбыорку аваок ну или не темы ну все равно один SQL-запрос добавлялся и все + можно в кеш пихнуть (даже файловый кеш для этого подойдет). Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
WildRAID Опубликовано 7 Апреля 2008 Жалоба Поделиться Опубликовано 7 Апреля 2008 Один запрос там.) Посмотрите внимательнее. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
xRay Опубликовано 7 Апреля 2008 Жалоба Поделиться Опубликовано 7 Апреля 2008 Да ну? функция parse_member вызывается для каждого поста темы (если глядеть по отработке темы)я тебе не про то что в твоем хаке не один sql-запрос а про то что твой хак нагенерит кучу запросов т.к. функция parse_member дераегтся не один раз же Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
WildRAID Опубликовано 7 Апреля 2008 Жалоба Поделиться Опубликовано 7 Апреля 2008 И все же - еще раз смотрим, что там написано.) Всего-то несколько строчек. Вчитайтесь. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
xRay Опубликовано 7 Апреля 2008 Жалоба Поделиться Опубликовано 7 Апреля 2008 Признаю что обшибся чудоксвсе ОК Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
yellow1 Опубликовано 7 Апреля 2008 Жалоба Поделиться Опубликовано 7 Апреля 2008 Аякс перезалейте с тараканом пожалуйста. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 7 Апреля 2008 Жалоба Поделиться Опубликовано 7 Апреля 2008 Аякс перезалейте с тараканом пожалуйста.Держи таракана. Понравилась идейка.)Я на 1.3 все мозги сломал. Пробовал в Topic.php и в functions.php выполнять запрос к БД - и в итоге у меня в топике выводится только первый пост. Все остальные посты или не выводятся вообще, или выводятся пустые.Может подскажешь, что я делаю не так? [краснеющий смайлик]tarak.zip Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
xRay Опубликовано 8 Апреля 2008 Жалоба Поделиться Опубликовано 8 Апреля 2008 FatCatпокажи свой SQL запросИ куда ты его всписывал в topic.php или в functions.php ? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
WildRAID Опубликовано 8 Апреля 2008 Жалоба Поделиться Опубликовано 8 Апреля 2008 Не знаком с 1.3, но могу предположить, что результаты дополнительного запроса заменяют собой результаты предыдущего, который выбирал посты. Чтобы этого избежать, следует запросам присваивать идентификаторы, и fetch_row делать по ним... например: $av_q = $this->DB->simple_exec(); while( $av = $this->DB->fetch_row( $av_q ) ) Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.