PDA

View Full Version : TM script troubleshoot?



omg.UFOs
05-04-2020, 03:38 AM
This is not my script. I've had this script for awhile now, it shows the old Neopets toolbar at the top of the screen. Everything works except when im at the Trading Post. When I'm at the Trading post and try to go to my Inventory or My Shop it gives me a 404 error.. It only happens in the Trading post.. Can someone take a look and possibly see whats wrong here?:S


// ==UserScript==
[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]
[Only registered and activated users can see links]
// ==/UserScript==

(function() {
var toolbar = $(`<div style="text-align:center">
<img src="[Only registered and activated users can see links]" alt="" usemap="#shopbar" />
<map name="shopbar">
<area shape="poly" coords="503, 68, 503, 43, 520, 46, 524, 66" />
<area shape="poly" coords="469, 66, 468, 41, 498, 45, 498, 63" />
<area shape="poly" coords="435, 38, 442, 65, 461, 67, 467, 38" />
<area shape="poly" coords="407, 64, 409, 40, 434, 44, 437, 66, 408, 71" />
<area shape="poly" coords="384, 58, 383, 36, 406, 34, 400, 64" />
<area shape="poly" coords="360, 64, 360, 38, 379, 36, 379, 60" />
<area shape="poly" coords="339, 60, 333, 33, 353, 30, 357, 59" />
<area shape="poly" coords="311, 61, 310, 34, 329, 33, 334, 64" />
<area shape="poly" coords="248, 56, 300, 55, 300, 81, 277, 110, 255, 100" />
<area shape="poly" coords="248, 54, 259, 7, 286, 9, 303, 55" />
<area shape="poly" coords="208, 66, 211, 40, 238, 42, 241, 73" />
<area shape="poly" coords="189, 73, 186, 40, 205, 40, 205, 73" />
<area shape="poly" coords="159, 77, 151, 42, 181, 42, 183, 74" />
<area shape="poly" coords="131, 74, 119, 46, 143, 43, 154, 77" />
<area shape="poly" coords="85, 77, 90, 42, 115, 49, 128, 78" />
<area shape="poly" coords="55, 80, 58, 50, 82, 56, 79, 80" />
<area shape="poly" coords="30, 49, 40, 42, 52, 49, 52, 67, 39, 73, 29, 66" />
</map>
</div>`)
var links = ['inventory.phtml', 'market.phtml?type=your', '/guilds/index.phtml', '/auctions.phtml', '/noticeboard.phtml', '/market.phtml?type=wizard', '/battledome/battledome.phtml', '/objects.phtml', '/market_map.phtml', '/soupkitchen.phtml', '/market_plaza.phtml', '/stockmarket.phtml?type=list&search=%&bargain=true', '/bank.phtml', '/island/tradingpost.phtml', '/donations.phtml', '/safetydeposit.phtml', '/neohome.phtml']
var alts = ['Inventory', 'My shop', 'Guild', 'Auctions', 'Noticeboard', 'Shop Wizard', 'Battledome', 'Neopia Central', 'Market Map', 'Soup Kitchen', 'The Neopian Plaza', 'Stock Market', 'Bank', 'Trading Post', 'Money Tree', 'Safety Deposit Box', 'Neohome']

$("a[href='/market.phtml?type=wizard']").parent().filter(function(){return $(this).parents("ul").length == 0}).replaceWith(toolbar);
toolbar.find('area').each(function(){
$(this).attr("title", alts[links.length - $(this).index() - 1])
$(this).attr("href", links[links.length - $(this).index() - 1])
});
})();

Bat
05-04-2020, 06:56 AM
TL;DR - add / to the beginning of the links that you're having issues with.

The addresses for your inventory and shop in the "links" array are missing a forward-slash ( / ) at the beginning which tells the browser that those pages are in the site's root directory. The rest of the links start out with a forward-slash, so the browser interprets them properly no matter where you are on the site.

For example, the Trading Post link looks like:


/island/tradingpost.phtml

So the browser interprets the address like:


[Only registered and activated users can see links]

Your inventory link looks like:


inventory.phtml

So, as long as your current location on the site is in the root directory at [Only registered and activated users can see links] the browser interprets the address like:


[Only registered and activated users can see links]

However, when you're not in the root directory, like when you're visiting any of the Neopian Worlds or navigating the games section, the browser interprets the address to your inventory to be relative to the current directory you're in. For example, if you're visiting the Trading Post, your current directory is [Only registered and activated users can see links] so the browser interprets the location of your inventory to be:


[Only registered and activated users can see links]

omg.UFOs
05-04-2020, 08:42 AM
Wow, that worked! :D ive been just letting this issue go for like 2 yrs now, who knew the solution was so simple! Thank you! :D