// ==UserScript== // @name SFBA report // @namespace https://trade.aliexpress.com/ // @include https://trade.aliexpress.com/orderList.htm* // @include https://www.banggood.com/index.php?com=account&t=ordersList* // @include https://www.amazon.fr/gp/your-account/order-history* // @version 0.3 // @description Copie les dernières commandes des sites SFBA dans le presse papier et met en forme en bbcode // @grant GM_setClipboard // @grant GM_registerMenuCommand // @downloadURL none // ==/UserScript== GM_registerMenuCommand('Copier les produits', checkCurrentSite); function checkCurrentSite() { if(window.location.href.indexOf("banggood") > -1) { getBGOrders(); } else if(window.location.href.indexOf("aliexpress") > -1) { getAEOrders(); } else if (window.location.href.indexOf("amazon") > -1) { getAZOrders(); } } function getBGOrders() { var priceList = []; var post = ""; var priceTags = document.getElementsByTagName('td'); for (var j = 0; j < priceTags.length; j++) { if (priceTags[j].className == "price") { priceList.push(priceTags[j].innerText); } } var tags = document.getElementsByTagName('div'); var id = 0; for (var i = 0; i < tags.length; i++) { if (tags[i].className == "picture_box") { var title = tags[i].children[0].children[0].children[0].title; var link = tags[i].children[0].children[0].children[0].href; var img = tags[i].children[0].children[0].children[0].children[0].src; var price = priceList[id]; post += formatPost(title, link, img, price); id++; } } GM_setClipboard(post); } function getAZOrders() { post = ""; var priceList = []; var priceTags = document.getElementsByTagName('div'); for (var j = 0; j < priceTags.length; j++) { if (priceTags[j].className == "a-fixed-left-grid-col a-col-right") { if (priceTags[j].children[3].children[0].innerText !== "") { priceList.push(priceTags[j].children[3].children[0].innerText); } else if (priceTags[j].children[2].children[0].innerText !== "") { priceList.push(priceTags[j].children[2].children[0].innerText); } } } var tags = document.getElementsByTagName('div'); var id = 0; for (var i = 0; i < tags.length; i++) { if (tags[i].className == "item-view-left-col-inner") { var img = tags[i].children[0].children[0].src; var link = tags[i].children[0].href; var title = tags[i].children[0].children[0].title; var price = priceList[id]; post += formatPost(title, link, img, price); id++; } } GM_setClipboard(post); } function getAEOrders() { var post = ""; var tags = document.getElementsByTagName('td'); for (var i = 0; i < tags.length; i++) { if (tags[i].hasAttribute("class")) { if (tags[i].className == "product-sets") { var img = tags[i].children[0].children[0].children[0].src; var link = tags[i].children[1].children[0].children[0].href; var title = tags[i].children[1].children[0].children[0].title; var price = tags[i].children[1].children[2].innerText; post += formatPost(title, link, convertToLargePicture(img), price); } } } GM_setClipboard(post); } function convertToLargePicture(picture) { // Picture url format is https://ae01.alicdn.com/kf/blablabla.jpg_50x50.jpg return picture.replace("50x50", "100x100"); } function truncate(str, n) { var isTooLong = str.length > n, s_ = isTooLong ? str.substr(0,n-1) : str; s_ = isTooLong ? s_.substr(0,s_.lastIndexOf(' ')) : s_; return isTooLong ? s_ + '...' : s_; } function formatPost(title, link, img, price) { var post = ""; post += "[img]http://reho.st/" + img + "[/img]\n"; post += "[b][url=" + link + "]" + truncate(title,50) + "[/url][/b]\n"; post += price + "\n"; post += "Mon avis: \n\n"; return post; }