﻿var itineraryPoints = new Array(0);var attraction_index_itinerary = new Array();var marks_itinerary = new Array();var PolItinerary = null;DoMarkItineraryInMap = (function (attindex, point) {if (point) {attraction_index_itinerary[itineraryPoints.length] = attindex;itineraryPoints.push(point);AddRowItinerary(attindex, attraction_names[attindex]);}});var degreesPerRadian = 180 / Math.PI;function bearing(from, to) {var lat1 = from.latRadians();var lon1 = from.lngRadians();var lat2 = to.latRadians();var lon2 = to.lngRadians();var angle = -Math.atan2(Math.sin(lon1 - lon2) * Math.cos(lat2), Math.cos(lat1) * Math.sin(lat2) - Math.sin(lat1) * Math.cos(lat2) * Math.cos(lon1 - lon2));if (angle < 0) {angle += Math.PI * 2;}angle = angle * degreesPerRadian;angle = angle.toFixed(1);return angle;}function midArrows(points) {var arrowIcon = new GIcon();arrowIcon.iconSize = new GSize(24, 24);arrowIcon.shadowSize = new GSize(1, 1);arrowIcon.iconAnchor = new GPoint(12, 12);for (i = 0; i < marks_itinerary.length; i++) {G_Map.removeOverlay(marks_itinerary[i]);}for (i = 1; i < points.length; i++) {var dir = bearing(points[i - 1], points[i]);var dir = Math.round(dir / 3) * 3;while (dir >= 120) {dir -= 120;}arrowIcon.image = "http://www.google.com/intl/en_ALL/mapfiles/dir_" + dir + ".png";marks_itinerary.push(new GMarker(points[i], arrowIcon));G_Map.addOverlay(marks_itinerary[marks_itinerary.length - 1]);}}var _eventDoItineraryInMap;function AddEventToItinerary() {_eventDoItineraryInMap = GEvent.addListener(G_Map, "click", DoMarkItineraryInMap);}function RemoveEventToItinerary() {GEvent.removeListener(_eventDoItineraryInMap);}function clearItinerary() {for (i = 0; i < marks_itinerary.length; i++) {G_Map.removeOverlay(marks_itinerary[i]);}marks_itinerary = new Array();itineraryPoints = new Array();attraction_index_itinerary = new Array();if (PolItinerary != null) {G_Map.removeOverlay(PolItinerary);}var tbl = document.getElementById("tbl_itinerary");while (tbl.tBodies[0].rows.length > 1) {tbl.tBodies[0].deleteRow(1);}PolItinerary = null;isFirst = true;}function AddRowItinerary(attindex, _cellText) {var tbl = document.getElementById("tbl_itinerary");var tblb = tbl.tBodies[0];var row = document.createElement("tr");var cell1 = document.createElement("td");var cell2 = document.createElement("td");var cell3 = document.createElement("td");var cell4 = document.createElement("td");cell1.innerHTML = itineraryPoints.length;cell1.className = "order";cell2.innerHTML = "<img src=\"images/arrow_down.gif\" title=\"Down\"  onclick=\"setIndex(this);setDown()\" width=\"9\" style=\"padding-left:3px;padding-right:4px\" height=\"10\" /><img title=\"Up\" onclick=\"setIndex(this);setUp()\" src=\"images/arrow_up.gif\" width=\"9\" height=\"10\" />";cell3.innerHTML = _cellText;cell4.setAttribute("align", "center");cell4.innerHTML = "<img src=\"images/cross.gif\" width=\"11\" height=\"11\" title=\"Remove\" onclick=\"RemoveRowItinerary(" + attindex + ")\" />";row.appendChild(cell1);row.appendChild(cell2);row.appendChild(cell3);row.appendChild(cell4);tblb.appendChild(row);}function RemoveRowItinerary(index) {var i;var indexRow = 0;var band = true;for (i = 0; i < attraction_index_itinerary.length && band; i++) {if (attraction_index_itinerary[i] == index) {indexRow = i;band = false;}}if (band) {return;}attraction_index_itinerary.splice(indexRow, 1);var tbl = document.getElementById("tbl_itinerary");itineraryPoints.splice(indexRow, 1);if (marks_itinerary[indexRow] != null) {G_Map.removeOverlay(marks_itinerary[indexRow]);marks_itinerary.splice(indexRow, 1);}if (!band) {tbl.tBodies[0].deleteRow(indexRow + 1);}ShowUpdatedItinerary();}function ShowUpdatedItinerary() {if (PolItinerary != null) {G_Map.removeOverlay(PolItinerary);}if (itineraryPoints.length > 0) {UpdatePosition(0);PolItinerary = new GPolyline(itineraryPoints, "#0000FF");G_Map.addOverlay(PolItinerary);midArrows(itineraryPoints);}}function setItinerary() {var _attids = document.getElementById("iti_attids");var i = 0;_attids.value = "";for (i = 0; i < itineraryPoints.length; i++) {_attids.value = _attids.value + attraction_ids[attraction_index_itinerary[i]] + ",";}_attids.value = _attids.value.substring(0, _attids.value.length - 1);document.getElementById("iti_cliid").value = client_ID;document.getElementById("iti_urlmap").value = window.location.href;document.frm_getiti.submit();return true;}function chkAddIti(obj, index, lon, lat) {if (obj.checked) {DoCrossRequest("call=atratype&type=4");DoMarkItineraryInMap(index, new GLatLng(parseFloat(lat), parseFloat(lon)));} else {RemoveRowItinerary(index);}}function isChecked(index) {document.getElementById("chkiti").checked = false;for (i = 0; i < attraction_index_itinerary.length; i++) {if (attraction_index_itinerary[i] == index) {document.getElementById("chkiti").checked = true;}}}
