/*+-------------+----------------------------------------------------------*
 *|        /\   |   University of Bonn                                     *
 *|       |  |  |     Department of Geography                              *
 *|      _|  |_ |     Chair of Cartography                                 *
 *|    _/      \|                                                          *
 *|___|         |                                                          *
 *|             |     Meckenheimer Allee 172                               *
 *|             |     D-53115 Bonn, Germany                                *
 *+-------------+----------------------------------------------------------*/
/**
 * <p><b>Title: Marker</b></p>
 * <p><b>Description:</b> Marker for POS Search </p>
 *
 * <p><b>Copyright:</b> Copyright (c) 2008</p>
 * <p><b>Institution:</b> University of Bonn, Department of Geography</p>
 * @author Pascal Neis, neis@geographie.uni-bonn.de
 * @version 1.0 2008-07-11
 */

var markerStart;
var markerEnd;
var markerVia;

var markerPosition;
var markerSize;
var markerOffset;
var markerIconStart;
var markerIconEnd;
var markerIconPosition;
var markersPOI;
var markerIconVia;

markerSize = new OpenLayers.Size(25,35);
markerOffset = new OpenLayers.Pixel(-markerSize.w, -markerSize.h);
markerIconStart = new OpenLayers.Icon('img/arrow-green.png',markerSize,markerOffset);
markerIconEnd = new OpenLayers.Icon('img/arrow-finish.png',markerSize,markerOffset);
markerIconPosition = new OpenLayers.Icon('img/arrow-red.png',markerSize,markerOffset);
markerIconVia = new OpenLayers.Icon('img/arrow-orange.png', markerSize, markerOffset);

var markerIconDefault = new OpenLayers.Icon('img/arrow-gray-transparent.png', new OpenLayers.Size(25,35), new OpenLayers.Pixel(-markerSize.w, -markerSize.h));

var markerIcon_bus_stop = new OpenLayers.Icon('img/osm_symbols/bus_stop.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_parking = new OpenLayers.Icon('img/osm_symbols/parking.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_railway_station = new OpenLayers.Icon('img/osm_symbols/railway_station.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_tram_stop = new OpenLayers.Icon('img/osm_symbols/tram_stop.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_subway_entrance = new OpenLayers.Icon('img/osm_symbols/subway_entrance.png', new OpenLayers.Size(20,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_atm = new OpenLayers.Icon('img/osm_symbols/atm.png', new OpenLayers.Size(19,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_bank = new OpenLayers.Icon('img/osm_symbols/bank.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_bureau_de_change = new OpenLayers.Icon('img/osm_symbols/bureau_de_change.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_biergarten = new OpenLayers.Icon('img/osm_symbols/biergarten.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_bus_station = new OpenLayers.Icon('img/osm_symbols/bus_station.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_cafe = new OpenLayers.Icon('img/osm_symbols/cafe.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_cinema = new OpenLayers.Icon('img/osm_symbols/cinema.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_college = new OpenLayers.Icon('img/osm_symbols/college.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_courthouse = new OpenLayers.Icon('img/osm_symbols/courthouse.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_fast_food = new OpenLayers.Icon('img/osm_symbols/fast_food.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_fuel = new OpenLayers.Icon('img/osm_symbols/fuel.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_hospital = new OpenLayers.Icon('img/osm_symbols/hospital.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_library = new OpenLayers.Icon('img/osm_symbols/library.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_nightclub = new OpenLayers.Icon('img/osm_symbols/nightclub.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_pharmacy = new OpenLayers.Icon('img/osm_symbols/pharmacy.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_place_of_worship = new OpenLayers.Icon('img/osm_symbols/church.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_police = new OpenLayers.Icon('img/osm_symbols/police.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_post_box = new OpenLayers.Icon('img/osm_symbols/post_box.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_post_office = new OpenLayers.Icon('img/osm_symbols/post_office.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_pub = new OpenLayers.Icon('img/osm_symbols/pub.png', new OpenLayers.Size(22,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_public_building = new OpenLayers.Icon('img/osm_symbols/public_building.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_restaurant = new OpenLayers.Icon('img/osm_symbols/restaurant.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_school = new OpenLayers.Icon('img/osm_symbols/school.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_taxi = new OpenLayers.Icon('img/osm_symbols/taxi.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_telephone = new OpenLayers.Icon('img/osm_symbols/telephone.png', new OpenLayers.Size(19,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_theatre = new OpenLayers.Icon('img/osm_symbols/theatre.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_toilets = new OpenLayers.Icon('img/osm_symbols/toilets.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_townhall = new OpenLayers.Icon('img/osm_symbols/town_hall.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_university = new OpenLayers.Icon('img/osm_symbols/university.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_supermarket = new OpenLayers.Icon('img/osm_symbols/supermarket.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_convenience = new OpenLayers.Icon('img/osm_symbols/convenience.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_bakery = new OpenLayers.Icon('img/osm_symbols/bakery.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_butcher = new OpenLayers.Icon('img/osm_symbols/butcher.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_kiosk = new OpenLayers.Icon('img/osm_symbols/kiosk.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_information = new OpenLayers.Icon('img/osm_symbols/information.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_hotel = new OpenLayers.Icon('img/osm_symbols/hotel.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_motel = new OpenLayers.Icon('img/osm_symbols/motel.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_guest_house = new OpenLayers.Icon('img/osm_symbols/guest_house.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_guest_hostel = new OpenLayers.Icon('img/osm_symbols/hostel.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));

//*** own DS symbols ***
//leisure
var markerIcon_track = new OpenLayers.Icon('img/own_ds_symbols/leisure/bahn.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_pitch = new OpenLayers.Icon('img/own_ds_symbols/leisure/bolzplatz.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_slipway = new OpenLayers.Icon('img/own_ds_symbols/leisure/eisbahn.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_ice_rink = new OpenLayers.Icon('img/own_ds_symbols/leisure/eissporthalle.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_fishing = new OpenLayers.Icon('img/own_ds_symbols/leisure/fischen.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_garden = new OpenLayers.Icon('img/own_ds_symbols/leisure/garten.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_golf_course = new OpenLayers.Icon('img/own_ds_symbols/leisure/golfplatz.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_marina = new OpenLayers.Icon('img/own_ds_symbols/leisure/jachthafen.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_miniature_golf = new OpenLayers.Icon('img/own_ds_symbols/leisure/minigolf.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_nature_reserve = new OpenLayers.Icon('img/own_ds_symbols/leisure/naturschutzgebiet.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_park = new OpenLayers.Icon('img/own_ds_symbols/leisure/park.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_playground = new OpenLayers.Icon('img/own_ds_symbols/leisure/spielplatz.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_sports_centre = new OpenLayers.Icon('img/own_ds_symbols/leisure/sportcenter.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_stadium = new OpenLayers.Icon('img/own_ds_symbols/leisure/stadium.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_water_park = new OpenLayers.Icon('img/own_ds_symbols/leisure/wasserpark.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));



//sports
var markerIcon_athletics = new OpenLayers.Icon('img/own_ds_symbols/sports/athletik.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_australian_football = new OpenLayers.Icon('img/own_ds_symbols/sports/australischer_football.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_baseball = new OpenLayers.Icon('img/own_ds_symbols/sports/baseball.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_basketball = new OpenLayers.Icon('img/own_ds_symbols/sports/basketball.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_beachvolleyball = new OpenLayers.Icon('img/own_ds_symbols/sports/beachvolleyball.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_archery = new OpenLayers.Icon('img/own_ds_symbols/sports/bogenschiessen.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_boules = new OpenLayers.Icon('img/own_ds_symbols/sports/boule.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_bowl10pin = new OpenLayers.Icon('img/own_ds_symbols/sports/bowling_10pin.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_bowl9pin = new OpenLayers.Icon('img/own_ds_symbols/sports/bowling_9pin.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_cricket_nets = new OpenLayers.Icon('img/own_ds_symbols/sports/cricket_nets.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_cricket = new OpenLayers.Icon('img/own_ds_symbols/sports/cricket.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_football = new OpenLayers.Icon('img/own_ds_symbols/sports/football.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_golf = new OpenLayers.Icon('img/own_ds_symbols/sports/golf.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_gymnastics = new OpenLayers.Icon('img/own_ds_symbols/sports/gymnastik.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_hockey = new OpenLayers.Icon('img/own_ds_symbols/sports/hockey.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_dog_racing = new OpenLayers.Icon('img/own_ds_symbols/sports/hunderennen.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_canoe = new OpenLayers.Icon('img/own_ds_symbols/sports/kanu.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_climbing = new OpenLayers.Icon('img/own_ds_symbols/sports/klettern.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_korfball = new OpenLayers.Icon('img/own_ds_symbols/sports/korfball.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_crocket = new OpenLayers.Icon('img/own_ds_symbols/sports/krocket.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_motor = new OpenLayers.Icon('img/own_ds_symbols/sports/motorsport.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_orienteering = new OpenLayers.Icon('img/own_ds_symbols/sports/orientierungslauf.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_paragliding = new OpenLayers.Icon('img/own_ds_symbols/sports/paragliding.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_horse_racing = new OpenLayers.Icon('img/own_ds_symbols/sports/pferderennen.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_cycling = new OpenLayers.Icon('img/own_ds_symbols/sports/radfahren.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_bowls = new OpenLayers.Icon('img/own_ds_symbols/sports/rasenbowling.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_equestrian = new OpenLayers.Icon('img/own_ds_symbols/sports/reiten.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_chess = new OpenLayers.Icon('img/own_ds_symbols/sports/schach.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_squash = new OpenLayers.Icon('img/own_ds_symbols/sports/squash.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_diving = new OpenLayers.Icon('img/own_ds_symbols/sports/tauchen.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));

var markerIcon_soccer = new OpenLayers.Icon('img/own_ds_symbols/sports/fussball.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_team_handball = new OpenLayers.Icon('img/own_ds_symbols/sports/handball.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_pelota = new OpenLayers.Icon('img/own_ds_symbols/sports/pelato.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_racquet = new OpenLayers.Icon('img/own_ds_symbols/sports/racquetball.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_skating = new OpenLayers.Icon('img/own_ds_symbols/sports/rollschuhfahren.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_rowing = new OpenLayers.Icon('img/own_ds_symbols/sports/rudern.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_rugby = new OpenLayers.Icon('img/own_ds_symbols/sports/rugby.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_schooting = new OpenLayers.Icon('img/own_ds_symbols/sports/schiesssport.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_swimming = new OpenLayers.Icon('img/own_ds_symbols/sports/schwimmen.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_skateboard = new OpenLayers.Icon('img/own_ds_symbols/sports/skateboard.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_skiing = new OpenLayers.Icon('img/own_ds_symbols/sports/skisport.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_tennis = new OpenLayers.Icon('img/own_ds_symbols/sports/tennis.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_table_tennis = new OpenLayers.Icon('img/own_ds_symbols/sports/tischtennis.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
var markerIcon_volleyball = new OpenLayers.Icon('img/own_ds_symbols/sports/volleyball.png', new OpenLayers.Size(26,26), new OpenLayers.Pixel(-16, -12));
