Greasy Fork is available in English.
Copie les dernières commandes des sites SFBA dans le presse papier et met en forme en bbcode
当前为
// ==UserScript==
// @name SFBA report
// @namespace https://trade.aliexpress.com/
// @include https://trade.aliexpress.com/orderList.htm*
// @include https://www.banggood.com/index.php?*ordersList*
// @include https://www.amazon.fr/gp/your-account/order-history*
// @include https://www.amazon.fr/gp/css/order-history*
// @include https://user.gearbest.com/my-orders.html*
// @version 0.55
// @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
// ==/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();
}
else if (window.location.href.indexOf("gearbest") > -1)
{
getGBOrders();
}
}
function getGBOrders()
{
var post = "#SFBAreport [b]Gearbest[/b]\n\n";
var tags = document.getElementsByTagName('dl');
for (var i = 0; i < tags.length; i++)
{
if (tags[i].className == "clearfix")
{
var title = [];
var link = [];
var img = [];
var price;
title.push(tags[i].children[0].children[1].children[0].children[0].innerText);
link.push(tags[i].children[0].children[0].children[0].href);
img.push(tags[i].children[0].children[0].children[0].children[0].src);
price = tags[i].children[0].children[3].children[0].children[0].children[1].innerText;
post += formatPost(title, link, img, price);
}
}
GM_setClipboard(post);
}
function getBGOrders()
{
var priceList = [];
var post = "#SFBAreport [b]Banggood[/b]\n\n";
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 = [];
var link = [];
var img = [];
var price;
for (j = 0; j < tags[i].children[0].children.length; j++)
{
title.push( tags[i].children[0].children[j].children[0].title);
link.push(tags[i].children[0].children[j].children[0].href);
img.push(tags[i].children[0].children[j].children[0].children[0].src);
}
price = priceList[id];
post += formatPost(title, link, img, price);
id++;
}
}
GM_setClipboard(post);
}
function getAZOrders()
{
var post = "#SFBAreport [b]Amazon[/b]\n\n";
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 title = [];
var link = [];
var img = [];
var price;
img.push(tags[i].children[0].children[0].src);
link.push(tags[i].children[0].href);
title.push(tags[i].children[0].children[0].title);
price = priceList[id];
post += formatPost(title, link, img, price);
id++;
}
}
GM_setClipboard(post);
}
function getAEOrders()
{
var post = "#SFBAreport [b]Aliexpress[/b]\n\n";
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 title = [];
var link = [];
var img = [];
var price;
img.push(convertToLargePicture(tags[i].children[0].children[0].children[0].src));
link.push(tags[i].children[1].children[0].children[0].href);
title.push(tags[i].children[1].children[0].children[0].title);
price = tags[i].children[1].children[2].innerText;
post += formatPost(title, link, 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 = "";
for(i=0; i<img.length; i++)
{
post += "[img]" + img[i] + "[/img]";
}
post += "\n";
for (i=0; i<link.length; i++)
{
post += "[b][url=" + link[i] + "]" + truncate(title[i],80) + "[/url][/b]\n";
}
post += price + "\n";
post += "Mon avis: \n\n";
return post;
}