Vanilla 1 is no longer supported or maintained. If you need a copy, you can get it here.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

WoW Itemstats

edited April 2007 in Vanilla 1.0 Help
I've uploaded yesterday my first addon, WoW ItemStats. You can get it at and it should work out of the box. Please report any problem with this addon here :)


  • New version 0.6: Should have no more problems with encoding (it was previously encoding all your posts in iso8859-1 instead of utf-8) Some people have downloaded it, and it would be great if someone could give me any feedback (success... or not :P )
  • edited November 2006
    I get the following error when it attempts to render the post: Fatal error: Call to undefined function: mb_convert_encoding() in /home/*******/public_html/forum/extensions/WowItemStats/default.php on line 57 Any ideas on this would be appreciated.
  • This function require the mbstring extension installed with php. Ask your provider if he can add this extension.
  • All it does is link to Allakhazam, it doesn't have a tooltip like the actual Itemstats does...
  • edited November 2006
    Anyone actually get this to work? I get this over every topic that has the itemstats are linked: Failed to update item: emberstone (Table 'wow.LUM_WIS_item_cache' doesn't exist)Failed to update item: emberstone (Table 'wow.LUM_WIS_item_cache' doesn't exist) When I run it I can't seem to make the databases table LUM_WIS_item_cache. Any help?
  • edited November 2006
    Sorry I've been away for a while now o_O @Xenocide: If you only have a link to allakhazam, then you have a pb with overlib (javascript library included with itemstats) me thinks. If itemstats does it, mine does to, as itemstats is unmodified, I've only configured it and wrote some code to use it as a plugin in vanilla, that's all ;) @Phoxxy: you can remove the call to "mb_convert_encoding()" but you may have some problems with encoding: some part are in UTF-8, other in iso-8859-1. This function just provides a conversion between encodings. Without that function you only may have some trouble with special chars like "éàè", etc. "Jambières du Jugement" for example
  • edited November 2006
    @Sixy: the tables seems to haven't been correctly created, the user used by vanilla in your configuration may not be able to create a table in the database you're using for vanilla. Have a look at WowItemStats/itemstats/include/itemcache.php to see how itemstats create the table if you can create it manually (with another user maybe)
  • edited December 2006
    @Phoxxy: here is an alternative: * Change in default.php: // Grab the item name. $item_name = mb_convert_encoding($match[3],"ISO-8859-1","UTF-8"); * Replace it by: // Grab the item name. $item_name = preg_replace("/([\xC2\xC3])([\x80-\xBF])/e","chr(ord('\\1')<<6&0xC0|ord('\\2')&0x3F)", $match[3]); * Then replace this: $item_html=mb_convert_encoding($item_html, "UTF-8"); * with this: $item_html=preg_replace("/([\x80-\xFF])/e","chr(0xC0|ord('\\1')>>6).chr(0x80|ord('\\1')&0x3F)",$item_html); It works for me on one of my site that don't have mb_convert_encoding :o)
  • This addon seems to be broken as of 1.1.1? I even tried a fresh install (Except for the database) and when the addon is enabled, discussions that have the [item]...[/item] content show as an empty page when viewing them.
  • may be broken (was tested on 1.0.1 -> 1.0.3), I don't have time to correct it right now :/ I may have a look this weekend :s
  • Take your time, it's not incredibly critical. Thanks for taking a look, though!
  • edited April 2007
    Ok, I found the issue. Finally got around to opening up the code to have a looksee, and discovered that you're using functions from the multi-byte string (mbstring) PHP extension, which apparently my host recently disabled. Because it's not enabled by default, you might want to consider a check to see if the function exists before calling mb_convert_encoding();. That fixed mine. Before the two lines that contain mb_convert_encoding calls, just add: if (function_exists("mb_convert_encoding"))
This discussion has been closed.