В каталоге запрещено создавать новые темы, т.к. скриптов очень много, а мы стараемся делать хорошую навигацию по разделу и добавлять их упорядоченно. Скрипты, которых еще нет в этом разделе можно выкладывать в этой теме. И модератор добавит их на форум.
Добавление скриптов и css трюков для MYBB
Сообщений 111 страница 120 из 148
Поделиться11111.01.13 20:13
Тестовый...
Поделиться11312.01.13 00:37
Перенёс все скрипты на тестовый форум, на тестовом идёт снег, на рабочем нет.
Однако странно...
Поделиться11416.03.13 16:05
Вертикальный слайдер от Кофемана пост 277
Cпойлер cкрытия Инфы под N-кнопок в Профиле Топика пост 285 - *"Спойлит" также и награды и подарки от Rusff
Таблица с переключаемыми вкладками (и фонов всей таблицы, достоиство: -Любой произвольный дизайн) пост 308
Простой Слайдер картинок и контента пост 309 Автоцентрирование кнопок, реверс направления, выбор скорости, простая настройка, автоскролл контента по высоте при превышении
Отредактировано Deff (21.03.13 16:38)
Поделиться11517.05.13 21:15
Автор: mkusher
Нашла на тех. поддержке скрипт магазина.(Для ролевых!):
HTML-низ
<script type="text/javascript"> function compare_item(item_id) { if(parseInt($('#item_'+item_id+' td.tc3').text())<parseInt($('#item_'+item_id+' input.count').val())){ alert('В наличие не хватает товара'); $('#item_'+item_id+' input.count').focus(); return false; } if(parseInt($('#item_'+item_id+' input.count').val())<1){ alert('Вы должны покупать товар в количестве 1 и более'); $('#item_'+item_id+' input.count').focus(); return false; } return true; } function buy(item_id,seller_id,seller_nickname){ if(GroupID == 3) return false; if(!UserID || !UserLogin) return false; if(!compare_item) return false; $('#shop input[type="button"]').attr('disabled','disabled'); if(!$('#send_message').length) $("#pun-main").before('<div id="send_message" class="section"><p id="loading">Идет выполнение запроса...</p></div>') else $('#send_message p#loading').html('Идет выполнение запроса...'); var iframe = $('iframe#message')[0] iframe.className = 'main_iframe'; var curator = Math.floor(Math.random() * window["curators"].length) iframe.src = 'http://'+location.hostname+'/messages.php?action=new&uid='+window['curators'][curator]+'#autoseller'; iframe.onload = function(){wait_send('buy_send('+item_id+','+seller_id+',"'+seller_nickname+'",'+curator+')');}; } function check_send(iframe){ var iframe = $('iframe#message.main_iframe')[0]; iframe.doc = (iframe.contentDocument ? iframe.contentDocument : (iframe.contentWindow.document ? iframe.contentWindow.document : iframe.document)); if(/^Информация \((.*)\)$/.test(iframe.doc.getElementsByTagName('title')[0].innerHTML)) { crash_send(); return false; } else { $('#shop input[type="button"]').attr('disabled',''); $('#send_message p#loading').html('Запрос успешно отправлен'); } iframe.onload = function(){return true;} } function wait_send(code_str){ setTimeout(code_str, 2000); } function crash_send(){ $('#shop input[type="button"]').attr('disabled',''); $('#shop input[type="text"]').val('1'); $('#send_message p#loading').html('Запрос не был отправлен. Проверьте введенные Вами данные и попробуйте повторить попытку'); $('iframe#message.main_iframe')[0].onload = function(){return true;}; return false; } function buy_send(item_id,seller_id,seller_nickname,curator) { var iframe = $('iframe#message.main_iframe')[0]; if(iframe.src != 'http://'+location.hostname+'/messages.php?action=new&uid='+window['curators'][curator]+'#autoseller'){ return false; } iframe.doc = (iframe.contentDocument ? iframe.contentDocument : (iframe.contentWindow.document ? iframe.contentWindow.document : iframe.document)) var send_message = true; if(GroupID == 3) send_message = false; if(!UserID || !UserLogin) send_message = false; if(!compare_item) send_message = false; var form = iframe.doc.getElementById('post') || false; if(form==false) send_message = form; if(!send_message) { crash_send(); return false; } var seller = {id: seller_id,nickname: decodeURIComponent(seller_nickname)}; var buyer = {id: UserID,nickname: UserLogin}; var item = {id: item_id,name: $('#item_'+item_id+' td.tcl h3').text(), count: parseInt($('#item_'+item_id+' input.count').val()),price: parseInt($('#item_'+item_id+' td.tc2').text())}; if(item.count > parseInt($('#shop tr#item_'+item.id+' td.tc3').text())) return crash_send(); iframe.onload = function(){wait_send('check_send()');}; form.req_subject.value = 'Покупка #'+item.id+'('+item.count+')'; form.req_message.value = 'Пользователь [url=http://'+location.hostname+'/profile.php?section=fields&id?='+buyer.id+']'+buyer.nickname+'[/url] покупает "'+item.name+'" у пользователя [url=http://'+location.hostname+'/profile.php?section=fields&id?='+seller.id+']'+seller.nickname+'[/url] в количестве '+item.count+' по цене за штуку '+item.price+". \n"+'Сумма покупки: '+item.price*item.count; form.submit.click(); } if(window["shop_items"]) { $('#pun-main div.container').append('<table id="shop" cellspacing="0"><thead><tr><th class="tcl">Название</th> <th class="tc2">Цена</th> <th class="tc3">В наличие</th><th class="tcr">Заказать</th></tr></thead><tbody></tbody></table>'); var shop_items = window["shop_items"]; var action = ''; for(var i=0;i<shop_items.length;i++){ var action = GroupID == 3 ? '<a href="http://'+location.hostname+'/login.php">Войдите</a> или <a href="http://'+location.hostname+'/register.php">зарегистрируйтесь</a>, чтобы совершить покупку' : '<input class="count" type="text" style="width: 40%;float: left; margin-right: 15px;" maxlength="100" value="1"><input type="button" onclick="buy('+(i+1)+','+shop_items[i].seller.id+',\''+encodeURIComponent(shop_items[i].seller.nickname)+'\');" value="Заказать">'; $('<tr id="item_'+(i+1)+'" class="alt'+(i%2 + 1)+'"><td class="tcl"><div class="intd"><div class="tclcon"><h3>'+shop_items[i].name+'</h3>'+shop_items[i].description+'</div></div></td><td class="tc2">'+shop_items[i].price+'</td><td class="tc3">'+shop_items[i].count+'</td><td class="tcr">'+action+'</td></tr>').appendTo($('table#shop tbody')); } } window["curators"] = [3,18,12]; </script> <iframe id="message" width="0" height="0"></iframe>
Находим 3-ю строку снизу:
window["curators"] = [3,18,12];
Здесь цифры меняем на ID'ы кураторов.( То бишь людей, которым придет письмо в ЛС типа: "Пользователь Akella покупает "Сумка" у пользователя Фортуна в количестве 1 по цене за штуку NaN.
Сумма покупки: NaN")
Автор просил тапками не кидать за название "Кураторы".
Далее создаем новую страницу(пустую!) и добавляем в нее следующий код:
<script type="text/javascript">
//Shop items start
window["shop_items"] = [];
window["shop_items"][window["shop_items"].length] = {name: "Название товара/вещи",description: "Описание товара",price: "Цена за одну штуку",count: "Количество в продаже",seller: {id: "ID продавца", nickname: "Логин продавца"}};window["shop_items"][window["shop_items"].length] = {name: "Название товара/вещи 2",description: "Описание товара 2",price: "Цена за одну штуку 2",count: "Количество в продаже 2",seller: {id: "ID продавца 2", nickname: "Логин продавца 2"}};
//Shop items end
</script>
Здесь 2 предмета. Если хотите добавить еще, копируйте подчеркнутое N раз.
__
От меня: Скрипт протестила, работает все чудесно
Отредактировано Роллен (17.05.13 21:20)
Поделиться11620.05.13 05:50
http://forum.mybb.ru/viewtopic.php?id=32893
http://forum.mybb.ru/viewtopic.php?id=32830Второй позволяет быстро править создавать страницы наград-подарков
Поделиться11708.06.13 16:03
Роллен
Прикольный скрипт, но все же, подробностей не помешает:
Во первых, может ли куратор сам себе сделать запрос?
Ибо я, для проверки, сделал себя куратором, и сам сделал запрос на покупку. И естественно, мне никакого сообщения не пришло.
Еще также вопрос к описанию покупки - можно ли в нее вложить изображение? или ссылку?
В моем случае, например, этого сделать не получилось и скрипт накрылся медным тазом
Поделиться11811.04.14 11:00
Присоединяюсь к I.E.R.H.O.N.
И еще вопрос - можно ли этот код вписать в таблицу? (контейнер с боковыми вкладками)
Поделиться11904.08.14 13:27
I.E.R.H.O.N
А мне пришло, хотя я куратор, да еще и покупаю у самой себя.
Поделиться12014.09.18 01:37
когда баловалась с имитацией "соц сетей с различием в отображении своих и чужих постов", получила это:
<script> if(!!$('#pun-viewtopic')[0]){ $('#pun-viewtopic').find('.pa-author').each(function(){ if(GroupID!=3 && $(this).find('a').text()==UserLogin){ $(this).parent().parent().parent().addClass('mypost'); } }) } </script>
(навешивает на каждый контейнер с постом и профилем от юзера класс mypost, что позволяет, впилив составной селектор с большей спецефичностью, спокойно играться с расположением "своего" профиля, его фоном/фоном "своего" поста etc.)
вдруг кому пригодится
(куда вставлять - очевидно, низ, потому что нам нужно, чтобы уже построилось то, где мы будем искать)
Отредактировано Emerael (14.09.18 01:41)