Greasy Fork is available in English.
Display Full Category Path in TM Listings
当前为
// ==UserScript==
// @name trademe Full Category Path insert
// @description Display Full Category Path in TM Listings
// @namespace http://None.com
// @include http://www.trademe.co.nz/*auction-*
// @include http://www.trademe.co.nz/*Listing.aspx*
// @grant none
// @version 1
/*
>> Description:
TM Make plenty of pointless changes to their site.
Previously when you are viewing an action listing, the path to the category the auction
is listed in is displayed as a link form just above the auction title.
EX.: Home > Computers > Desktops > No monitor
clicking any part of the link would have taken you to the associated category directory.
With the new change, if you click on an auction link from within a members listing pages, the
catagory links from that auction listing will only display auctions from that
particular member not all members as it used to do.
EX: MembersName > Computers > Desktops > No monitor
This stupid change has annoyed me long enough to create this script.
Instead of replacing the members only category path, it creates another link below it
containing the normal full path.
This script will not run on following categories as they are not effected by this change
(1) Trade Me Jobs
(2) Trade Me Property
(3) Trade Me Property
(4) Movies-TV
*/
// ==/UserScript==
var i;
var code = document.documentElement.innerHTML;
bc = window.TradeMe.BreadCrumbs; // get breadcrumbs value
var temp1 = code.indexOf('<a href="/">Home</a>'); // Check if page already has full root category path
var temp2 = bc.indexOf('Trade Me Jobs'); // Check if listing is in Jobs
var temp3 = bc.indexOf('Trade Me Motors'); // Check if listing is in Motors
var temp4 = bc.indexOf('Trade Me Property'); // Check if listing is in Property
if (temp1 < 0 && temp2 < 0 && temp3 < 0 && temp4 < 0) {
var pathU = bc.split("|");
var bc = bc.toLowerCase(); // Convert breadcrumbs to lowercase for use in url path
var pathL = bc.split("|");
for (i = 0; i < pathL.length; i++) {
pathL[i] = pathL[i].replace(" & ", "-"); // Replace Amperstand`s with a dash
pathL[i] = pathL[i].replace(", ", "-"); // Replace comma with a dash
pathL[i] = pathL[i].replace(" ", "-"); // Replace space with a dash
}
var codeInsert = '<a href="/">Home</a> >\n\n';
codeInsert += '<a href="/' + pathL[0] + '">' + pathU[0] + '</a> >\n\n';
if (pathL.length > 1) {
codeInsert += '<a href="/' + pathL[0] + '/' + pathL[1] + '">' + pathU[1] + '</a> >\n\n';
}
if (pathL.length > 2) {
codeInsert += '<a href="/' + pathL[0] + '/' + pathL[1] + '/' + pathL[2] + '">' + pathU[2] + '</a> >\n\n';
}
if (pathL.length > 3) {
codeInsert += '<a href="/' + pathL[0] + '/' + pathL[1] + '/' + pathL[2] + '/' + pathL[3] + '">' + pathU[3] + '</a> >\n\n';
}
codeInsert = codeInsert.substring(0, codeInsert.length - 7); // Remove the greater-than symbol from the last catagory
codeInsert += '</p>'
document.getElementById("BreadcrumbsContainer").innerHTML += codeInsert;
}