I'll do this later.
EVElopedia Items Database Bug (Red Links)
I've always seen a bunch a red links around EVElopedia when linking to the "Items Database". Take this page for example. All of those red links actually point to an item in the "Items Database", yet they're red designating a non-existent page.
SNOOPING: So I did a bit of snooping around, and this is what I've come up with:
- If I were to link to the 150mm Light AutoCannon I page, it would link as a red link. This is because the page has not been edited to include community information -- it is a virgin page if you will.
- However, if I link to the Ogre II page, it will return as a normal orange link. Why is this? Because that page has community input, as you can see at the bottom. This tipped me off that the Items Database info displayed is actually seperate from the wiki database -- it's a whole 'nother database altogether from what I can tell (which makes sense).
- BUT! I also found a page that was link too just fine (orange text), yet had no community input. The page in question is the Electron Bomb page. WTF? Turns out that, while empty now, the page had been the subject of a test before (you can read the history: "Removed old test data") and then cleared. This tipped me off that the link checker checks to see if the wiki page has NULL data or not, and not just 'empty' data. If it has never been edited (first case here), then when trying to find the page it would come back as NULL, thus the link checker will return false and display a red link. However, if it had been edited, even if the page was cleared of all edits, it wouldn't be NULL anymore, it would just be blank, thus the link checker would return true and make a normal, orange link.
CONCLUSION/SUMMARY: The reason that they are red is because the EVElopedia code considers the wiki page as non-existant. It considers it non existant because it has yet to be manually edited, thus the wiki's database entry is NULL for that page. So why do we see information when navigating to that page? It seems that the CCP Devs have modified the MediaWiki source code to display info from two databases whenever you navigate to an "Items Database" page: the evelopedia wiki database (which is what the wiki queries) and the items database. It would seem that whenever you link to an items pages, the wiki software only checks to see if there's an entry for it in the wiki database and not the items database.
So, although the page exists to us, it does not exist to the EVElopdia source code, since the source code only checks for wiki content from the wiki database, not from the official items database.
SUGGESTION: My suggestion to Devs is to either:
- Whenever adding items to the "Items Database", make sure the EVElopedia article representing that item is not NULL, but instead blank. You can fix this retroactively by creating a PHP script that changes each item's wiki page from NULL to nothing (which, for the non-programmers, are NOT the same thing). That way the MediaWiki link checker doesn't see NULL, but instead sees a blank value and returns true.
- Modify the MediaWiki link checker to include the items database in it's checks. Currently, it seems to only check the wiki database and return false (thus red) if the entry is NULL. If it would also check the items database, it would see that there is info available and return true.
I'd love to get a Dev's input on this. I've created a test page here using the examples from above if anyone wants to see this in action
Also, I have no idea if it's a known issue, and if it is, what the Dev's response has been. So if that's the case, then this is a moot point. =x
--Sable Blitzmann 07:50, 7 September 2009 (UTC)
Test/Live Demo of Bug
- Compressed Dark Glitter Blueprint: Red link, has never had a manual edit before, but the page does exist.
- Ogre II: Regular link, has contributor edits.
- Electron Bomb: Regular link, although the wiki page is blank. It's a regular link because it has been edited before.
Don't mind this section, it's just an area to test Wiki formatting and such