nicrus
Король флуда
это резиновая лента
Смотрите видео ниже, чтобы узнать, как установить наш сайт в качестве веб-приложения на домашнем экране.
Примечание: Эта возможность может быть недоступна в некоторых браузерах.
это резиновая лента
не-а)
там вообще скотча нет. никакого.
ну вы еще подеритесьесть светящийся. (утром видел)
Кусачки тоже в бане походу. Клознуло сразуДа, нож оч. приглянулся, угробил пару аккаунтов, подождем до завтра
Чего я не знаюДНВ 3/5 сейчас не взять?
Русских - головой не поймешь....Чего я не знаю? Почему все так просят именно днв 3/5, а не днв 3/4? Чем оно лучше? И притом "старички"?
Второй день голову ломаю (... Бб тут ни при чём, с него тоже можно взять 3/4 по моб юзерлосс... Но все хотят именно 3/5...
Там наверное какая-то хитрая фишкаРусских - головой не поймешь....
(Влад): Зачем нужно жрать капусту, если есть картошка?Забирайте, аккаунты с купоном 3/4
Скажите, а как удалять предыдущую версию ? Захожу в хроме в установленные скрипты, удаляю версию 0.4, перезахожу в хром, а там опять 2 версии висит, обе включены.Скрипт для отображения списка вариантов товара с сортировкой по цене (UPDATE)
Предыдущий пост
Для тех, кто тарит рандомные центовики ради кеша - небольшое обновление.
Во всём остальном - изменений нет. Просто расширил условия сортировки.
Просьба была такой : "Можно ли сделать так, чтобы сверху всегда оказывался центовик с наибольшей ценой, ведь центовики центовикам рознь и первоначальная цена у них разная, а соответственно и размер кешбека. То есть ввести какую-то сортировку по той цене, что пишется зачеркнутой так, что самый дорогой центовик оказывается первым в списке?"
Пример - https://ru.aliexpress.com/item/32882818441.html
Посмотреть вложение 126623
Посмотреть вложение 126624
Код:// ==UserScript== // @name Show price combinations list - buttons // @namespace http://tampermonkey.net/ // @version 0.5 // @author Dimokin // @match https://ru.aliexpress.com/item/* // @match https://www.aliexpress.com/item/* // @grant none // @require http://code.jquery.com/jquery-3.3.1.min.js // ==/UserScript== (function() { 'use strict'; var $ = window.jQuery; $(document).ready(function() { let startHTML = document.querySelector("html").outerHTML.split('window.runParams =')[1]; let endHTML = startHTML.split('var GaData')[0]; function strToObj(str) { var obj = {}; if (str && typeof str === 'string') { var objStr = str.match(/\{(.)+\}/g); eval("obj =" + objStr); } return obj } let mainObject = strToObj(endHTML); console.log('mainObject', mainObject); console.log('mainObject 1', mainObject.skuModule.skuPriceList); mainObject.skuModule.skuPriceList.sort(function(a, b) { let actPriceField = a.skuVal.actSkuMultiCurrencyCalPrice ? 'actSkuMultiCurrencyCalPrice' : 'skuMultiCurrencyCalPrice'; let defaultPriceField = a.skuVal.actSkuMultiCurrencyCalPrice ? 'actSkuMultiCurrencyBulkPrice' : 'actSkuBulkCalPrice'; var keyA = parseFloat(a.skuVal[actPriceField]), keyB = parseFloat(b.skuVal[actPriceField]), keyC = parseFloat(a.skuVal[defaultPriceField]), keyD = parseFloat(b.skuVal[defaultPriceField]); if (keyA == keyB) { return (keyC > keyD) ? -1 : (keyA < keyD) ? 1 : 0; } else { return (keyA < keyB) ? -1 : 1; } }); console.log('mainObject 2', mainObject.skuModule.skuPriceList); var div = document.createElement('div'); div.className = 'prices'; div.innerHTML += ` <button class="price-toggle"> Show/Hide </div> `; $(div).append('<div class="price-list"></div>'); let pricesIndexes = []; mainObject.skuModule.skuPriceList.forEach(function(element) { let propsId = element.skuPropIds.split(','); let availableCount = element.skuVal.availQuantity; let propString = ''; let propIndex = []; if (propsId.length) { propsId.forEach(function(prop, index) { if (mainObject.skuModule.productSKUPropertyList && mainObject.skuModule.productSKUPropertyList.length) { mainObject.skuModule.productSKUPropertyList.forEach(function(listItem) { listItem.skuPropertyValues.forEach(function(skuProp, skuIndex) { if (prop == skuProp.propertyValueId && availableCount > 0) { propString += skuProp.propertyValueDisplayName; propIndex.push(skuIndex); } }); }); if (index !== propsId.length - 1) { propString += ' - ' } } }); } if (propIndex.length) { pricesIndexes.push(propIndex); } let priceField = element.skuVal.actSkuMultiCurrencyCalPrice ? 'actSkuMultiCurrencyCalPrice' : 'skuMultiCurrencyCalPrice'; let price = element.skuVal[priceField] var oldHtml = $(div).find('.price-list').html(); if (element.skuVal.availQuantity > 0) { $(div).find('.price-list').html(oldHtml + ` <div class="price-row"> <div class="price-row__left">${propString} </div> <div class="price-row__right">${price} ${mainObject.commonModule.currencyCode} <button class="buy" type="button">BUY</button> <button class="cart" type="button">CART</button></div> </div> `); } }); var styles = ` .prices { position: fixed; top: 0; right: 0; background: white; box-shadow: 1px -1px 4px 1px; max-width: 40%; max-height: 400px; padding: 10px 20px; overflow-y: auto; overflow-x: hidden; z-index:9999; } .price-list { margin-top: 15px; } .price-row { display:flex; padding:3px; margin-bottom:0; justify-content: space-between; cursor:pointer; } .price-row:hover,.price-row.active { background: lightgrey; } .price-row__left {} .price-row__right { display: inline-flex; min-width: 190px; align-items: center; justify-content: flex-end; text-align: right; margin-left: 20px; width: 10%; flex-shrink: 0; } .price-row__right .buy{ padding: 2px 6px; background-color: #ff4747; color: white; border: none; box-shadow: none; margin-left: 5px; } .price-row__right .cart{ padding: 2px 6px; background-color: #ff9a00; color: white; border: none; box-shadow: none; margin-left: 5px; } .price-toggle { display: block; margin-right: auto; cursor:pointer; }` var styleSheet = document.createElement("style") styleSheet.type = "text/css" styleSheet.innerText = styles document.head.appendChild(styleSheet) document.body.appendChild(div); $(document).on("click", ".price-toggle", function() { $(div).find('.price-list').toggle(); setTimeout($(window).trigger('resize'), 300); }); let propertyLists = $('.product-sku').find('.sku-property-list'); if (pricesIndexes.length) { pricesIndexes[0].forEach(function(price, priceIndex) { for (var i = 0; i < propertyLists.length; i++) { if (i === priceIndex) { let propIndex = pricesIndexes[0][priceIndex]; let prop = $('.sku-property-list').eq(i).find('.sku-property-item').eq(propIndex) if (prop.hasClass("selected")) {} else { prop.trigger('click'); } } } }); } $('.price-row').eq(0).addClass('active'); $('.price-row').click(function(event) { let index = $(this).index(); $('.price-row').each(function() { if ($(this).hasClass("active")) { $(this).removeClass('active'); } }); $(this).addClass('active'); let propertyLists = $('.product-sku').find('.sku-property-list'); pricesIndexes[index].forEach(function(price, priceIndex) { for (var i = 0; i < propertyLists.length; i++) { if (i === priceIndex) { let propIndex = pricesIndexes[index][priceIndex]; let prop = $('.sku-property-list').eq(i).find('.sku-property-item').eq(propIndex) if (prop.hasClass("selected")) {} else { prop.trigger('click'); } } } }); }); $('.price-row .buy').click(function(event) { setTimeout(function() { $('.product-action .buynow').trigger('click') }, 1000); }); $('.price-row .cart').click(function(event) { setTimeout(function() { $('.product-action .addcart').trigger('click') }, 1000); }); }); })();
Копируешь код и вставляешь поверх старогоСкажите, а как удалять предыдущую версию ? Захожу в хроме в установленные скрипты, удаляю версию 0.4, перезахожу в хром, а там опять 2 версии висит, обе включены.
Кто-то купоны 3/5 фармит, так что тут дело вкуса)(Влад): Зачем нужно жрать капусту, если есть картошка?
Ну все, сейчас все расскажут и покажут...Доброе утро. Проясните несколько моментов
1. Правильно ли я понимаю, что процесс регистрации аккаунта самый тонкий в деле абьюза? Зарегистрировав за день 5-10 аккаунтов большая часть дела уже сделана? Подтверждение регистрации по почте желательно или и так сойдет?
2. Потом пишут про отлежку. Что в эти 3-4 дня происходит? Али забывает страну/айпи регистрации?
Допустим через 3-4 дня я решил отоваривать зарегистрированные ранее акки. Обязательно ли я должен заходить с тех же ай-пи, браузеров (юзер агентов), отпечатков что и при регистрации или уже все равно?
3. Из скольки этапов состоит отовар? Когда я должен вводить адрес доставки? В какой момент? Непосредственно перед оплатой или заранее? Должен ли я заранее зайти и добавить товар в желаемое, потом зайти на эту же страницу с сайта кэшбексервиса и сунуть товар из желаемого в корзину? Оплачивать сразу или еще дать полежать в корзине в ожидании оплаты?
4. Для обработки каши нужно ли подтверждать получение товара? Насколько оправдан отовар акков на рандомные адреса для бОльшего объема каши?
Доброе утро. Проясните несколько моментов
1. Правильно ли я понимаю, что процесс регистрации аккаунта самый тонкий в деле абьюза? Зарегистрировав за день 5-10 аккаунтов большая часть дела уже сделана? Подтверждение регистрации по почте желательно или и так сойдет?
2. Потом пишут про отлежку. Что в эти 3-4 дня происходит? Али забывает страну/айпи регистрации?
Допустим через 3-4 дня я решил отоваривать зарегистрированные ранее акки. Обязательно ли я должен заходить с тех же ай-пи, браузеров (юзер агентов), отпечатков что и при регистрации или уже все равно?
3. Из скольки этапов состоит отовар? Когда я должен вводить адрес доставки? В какой момент? Непосредственно перед оплатой или заранее? Должен ли я заранее зайти и добавить товар в желаемое, потом зайти на эту же страницу с сайта кэшбексервиса и сунуть товар из желаемого в корзину? Оплачивать сразу или еще дать полежать в корзине в ожидании оплаты?
4. Для обработки каши нужно ли подтверждать получение товара? Насколько оправдан отовар акков на рандомные адреса для бОльшего объема каши?
чтоб побольше каши свалилось...И вообще, что бы человек ЗРЯ не тратил свое драгоценное время на поиск ответов, закажите все ему сами и доведите весь процесс до конца.