Create a searchable Google Maps mashup with the following fields from an XML document: Heading, Description, Address, Link, Date, End_date, Type, ID, Category. You will be provided with HTML/CSS that has form fields that must integrate into the search (using fields as parameters).
Bid only if you know how to optimize Maps performance: The XML document will be large, and there will be thousands of markers on the highest level, so markers must be clustered and the performance must be good.
Place the locations on the map based on the Address-field. This requires an extra parsing step: where the address cannot be understood, the system needs to try again with just the Zip and the City. For example, if the address "Impossible Road 776, Daytona Beach 32118" doesn't match, the system should place the marker based on just the Zip and the City ("Daytona Beach 32118", basically, what is left of the string after the first comma, simple).
Each item should display one of 9 different markers based on the ‘Marker’ value in the database. You will be provided the markers.
The info window for each entry should display the Heading, 500 characters of description, Address, Link, Date, End_date, Type, ID; and Save, Send to Friend, Share-buttons (Facebook, Twitter).
The map and the controls are to be placed on a webpage provided (HTML / CSS).
The code must be documented in a way that allows for straightforward modification of any parameters used for the maps or information display.
There has to be a user account component, where users can create accounts, save items they are viewing, send to a friend and participate in forum discussions. You can use any open source community etc. component for this, but it has to integrate with the provided HTML / CSS.