Extension:YahooMaps

What can this extension do?
This extension allows you to easily create Yahoo maps and markers. The extended descriptions of the markers are all wikitext, enabling links, images, etc. Yahoo maps (unlike Google maps) are allowed to be used for both private (i.e. intranet) and public sites. Additionally, it provides the ability to place a small geocoding tool that will convert addresses to marker descriptions.

Map Example
 39.945337 | -105.16412 | KEF | Superior, CO Home of Key Equipment Finance

All tag attributes are optional, and default to: (basically, centered on the US)
 * style = ''
 * zoom = 15
 * lat = 37.4041960114344
 * lon = -100.008194923401

Installation

 * 1) Create a directory called YahooMaps in your extensions directory
 * 2) Download the following 4 files into your YahooMaps directory
 * 3) YahooMaps.php
 * 4) yproxy.php
 * 5) xmlsax.js and xmlw3cdom.js from http://sourceforge.net/projects/xmljs

Parameters
You should add your [Yahoo Maps application ID] as a parameter within LocalSettings.php just prior to the. Unfortunately, the solution is a bit overzealous, and will cause your map to display incorrectly--it will start out ok, but after about a second all markers will be offset downward by some amount proportional to n-1 (where n is the marker number). To fix this, change the following: function setrelative (nodes) { var i = 0; while (i < nodes.length) { if(((nodes[i].style.float && nodes[i].style.float != ('none') ||       (nodes[i].align && nodes[i].align != ('none'))) && (!nodes[i].style.position || nodes[i].style.position != 'relative'))) {           nodes[i].style.position = 'relative'; }       i++; } } to: function setrelative (nodes) { var i = 0; while (i < nodes.length) { if(((nodes[i].style.float && nodes[i].style.float != ('none') ||       (nodes[i].align && nodes[i].align != ('none'))) && (!nodes[i].style.position || nodes[i].style.position != 'relative'))) {	   if (nodes[i].id.substring(7,0) != 'ymarker') { nodes[i].style.position = 'relative'; }       }        i++; } }

Popups have a white background
Having just installed Mediawiki 1.11, I'm noticing that the markers tend to have a boxy, white background that wasn't present in 1.8 (at least they do in Monobook). To solve this, add the following to your common.css system message: .yahoomap table { background-color: transparent; }