﻿// Language class
function Language(varLangID, varName, varEnglishName, varFrenchName) {
    this.LangID = varLangID;
    this.Name = varName;
    this.EnglishName = varEnglishName;
    this.FrenchName = varFrenchName;
    this.LocalizedName = _LocalizedName;

    function _LocalizedName(varLangTypeID) {
        switch (varLangTypeID) {
            case "en":
                return this.EnglishName;
                break;
            case "fr":
                return this.FrenchName;
                break;
        }
    }
}

// LanguageCollection class
function LanguageCollection() {
    this.Languages = new Array();
    this.Add = _Add;
    this.Item = _Item;

    function _Add(objLanguage) {
        this.Languages[this.Languages.length] = objLanguage;
    }

    function _Item(varLangID) {
        for (j = 0; j < this.Languages.length; j++) {
            if (this.Languages[j].LangID == varLangID) {
                return this.Languages[j];
            }
        }
    }
}

// AtmListing class
function AtmListing(varATMID, varLat, varLong, varInstitution, varAddress, varCity, varProvince, varPostalCode, varLandmark, varDeposits, varHours, varDriveThru, varPinChange, varLanguages, varAtmCount) {
	this.ATMID = varATMID;
	this.Lat = varLat;
	this.Long = varLong;
	this.ToHtml = ReturnHtml;
	
	function ReturnAtmCount() {
		if (parseInt(varAtmCount) == 1) {
			return varAtmCount + " " + varMapAtmCount + "&nbsp;";
		}
		else {
			return varAtmCount + " " + varMapAtmCount + "&nbsp;";
		}
	}
	
	function ReturnDepositIcon() {
		if (varDeposits) {
			return "<img src=\"library/images/icons/icon_deposits.gif\" width=\"20\" height=\"20\" alt=\"" + varMapDeposits + "\" title=\"" + varMapDeposits + "\" />&nbsp;";
		}
		return "";
	}

	function ReturnDriveThruIcon() {
		if (varDriveThru) {
			return "<img src=\"library/images/icons/icon_drivethru.gif\" width=\"20\" height=\"20\" alt=\"" + varMapDriveThru + "\" title=\"" + varMapDriveThru + "\" />&nbsp;";
		}
		return "";
	}

	function ReturnPinChangeIcon() {
	    if (varPinChange) {
	        return "<img src=\"library/images/icons/icon_pinchange.gif\" width=\"20\" height=\"20\" alt=\"" + varMapPinChange + "\" title=\"" + varMapPinChange + "\" />&nbsp;";
	    }
	    return "";
	}
	
	function ReturnHourIcon() {
		var varIcon = "";
		var varAlt = ""
		switch (parseInt(varHours)) {
			case 1:
				varIcon = "icon_hours_business.gif";
				varAlt = varMapAvailableBusiness;
				break;
			case 2:
				varIcon = "icon_hours_available24.gif";
				varAlt = varMapAvailable24Hours;
				break;
			case 3:
				varIcon = "icon_hours_restricted.gif";
				varAlt = varMapAvailableRestricted;
				break;
		}
		return "<img src=\"library/images/icons/" + varIcon + "\" width=\"20\" height=\"20\" alt=\"" + varAlt + "\" title=\"" + varAlt + "\" />&nbsp;";
	}
	
	function ReturnLanguageIcons() {
		var varLanguageText = "";
		varLanguageText += "<img src=\"library/images/icons/icon_language_english.gif\" width=\"20\" height=\"20\" alt=\"" + varMapLanguageEnglish + "\" title=\"" + varMapLanguageEnglish + "\" />&nbsp;";
		varLanguageText += "<img src=\"library/images/icons/icon_language_french.gif\" width=\"20\" height=\"20\" alt=\"" + varMapLanguageFrench + "\" title=\"" + varMapLanguageFrench + "\" />&nbsp;";
		var arrOtherLanguages = varLanguages.split("|");
		if (arrOtherLanguages.length > 0) {
		    for (i = 0; i < arrOtherLanguages.length; i++) {
		        if (arrOtherLanguages[i] != "") {
		            var objLanguage = objLanguages.Item(arrOtherLanguages[i]);
		            var varName = objLanguage.Name;
		            var varLocalizedName = objLanguage.LocalizedName(varLanguage);
		            varLanguageText += "<img src=\"library/images/icons/icon_language_" + varName.toLowerCase() + ".gif\" width=\"20\" height=\"20\" alt=\"" + varLocalizedName + "\" title=\"" + varLocalizedName + "\" />&nbsp;";
		        }
		    }
		}
		return varLanguageText;
	}
	
	function ReturnHtml(varIncludeMap) {
	    var varHtml = "<div class=\"clsPopup\">"
	    varHtml += "<div class=\"clsAddress\"><b>" + varInstitution + "</b><br />" + varAddress + "<br />" + varCity + ", " + varProvince + ", " + varPostalCode;
	    if (varLandmark != "") {
	        varHtml += "<br />" + varLandmark;
	    }
	    varHtml += "</div>"
	    varHtml += "<div class=\"clsAtmIcons\">" + ReturnDepositIcon() + ReturnDriveThruIcon() + ReturnPinChangeIcon() + ReturnHourIcon() + ReturnLanguageIcons() + "</div>";
	    varHtml += "<div class=\"clsAtmFooter\">";
	    varHtml += "<div class=\"clsAtmCount\">" + ReturnAtmCount() + "</div>"
	    if (varIncludeMap) {
		    varHtml += "<div class=\"clsMapLink\"><a href=\"javascript:LaunchMap(" + varATMID + ", " + varAtmCount + ", " + varDriveThru + ", '" + varLanguage + "');void(0);\">" + varSearchResultsViewMap + "</a></div>";
		}
		varHtml += "</div>";
		varHtml += "</div>";
		
		return varHtml;
	}
}
