﻿/*
* LeadFlash common javascript library
* @requires jQuery v1.2.6 or later
* Copyright (c) 2007-2009 LeadFlash, LLC
*/
if (window.loadFirebugConsole) { window.loadFirebugConsole() } else { if (!window.console) { window.console = {}; window.console.info = {}; window.console.log = {}; window.console.warn = {}; window.console.error = {} } } var TriState = {}; TriState.False = 0; TriState.True = -1; TriState.Default = -2; function ToggleLoggedInMenu(c, b) { var a = document.getElementById(c); var d = document.getElementById(b); if (a && d) { if (a.alt == "Show Menu") { a.alt = "Hide Menu"; a.src = "/images/menu/open.gif"; d.style.display = "" } else { a.alt = "Show Menu"; a.src = "/images/menu/closed.gif"; d.style.display = "none" } } } function GetQueryVariable(b, f) { var c = window.location.search.substring(1); var d = c.split("&"); for (var a = 0; a < d.length; a++) { var e = d[a].split("="); if (e[0] == b) { return e[1] } } return (f) ? f : "" } function EscapeQuote(a) { return a.split("'").join("\\'") } function trim(a) { return a.replace(/^[ ]+|[ ]+$/g, "") } function ClickButton(a) { document.getElementById(a).click() } function CurrencyFormatted(b) { var a = parseFloat(b); if (isNaN(a)) { a = 0 } var d = ""; if (a < 0) { d = "-" } a = Math.abs(a); a = parseInt((a + 0.005) * 100, 10); a = a / 100; var c = "" + a; if (c.indexOf(".") < 0) { c += ".00" } if (c.indexOf(".") == (c.length - 2)) { c += "0" } c = d + c; return c } function CommaFormatted(f) { var c = ","; var b, h, e; f = "" + f; b = f.split(".", 2); h = b[1]; e = parseInt(b[0], 10); if (isNaN(e)) { return "" } var g = ""; if (e < 0) { g = "-" } e = Math.abs(e); var k = "" + e; b = []; while (k.length > 3) { var j = k.substr(k.length - 3); b.unshift(j); k = k.substr(0, k.length - 3) } if (k.length > 0) { b.unshift(k) } k = b.join(c); if (h.length < 1) { f = k } else { f = k + "." + h } f = g + f; return f } function FormatCurrency(b) { var c = CurrencyFormatted(b); var a = CommaFormatted(c); return "$" + a } function addDays(a, b) { return new Date(a.getTime() + b * 24 * 60 * 60 * 1000) } function getDaysInMonth(c, b) { var a = new Array(31, ((b % 4 === 0 && b % 100 !== 0) || b % 400 === 0 ? 29 : 28), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); return a[c] } function hideSelects(c) { if (typeof document.body.style.maxHeight == "undefined") { var a = document.getElementsByTagName("select"); for (var b = 0; b < a.length; b++) { a[b].style.visibility = c } } } function showToolTip(b, a) { } function hideToolTip() { } function stt(b, a) { } function htt() { } function endsWith(c, b) { var a = new RegExp(b + "$"); return a.test(c) } function GetUsername() { var a = document.getElementById("ThisUser"); if (a) { return a.value } else { return "" } } function GetContextUserName() { var a = document.getElementById("ContextUser"); if (a) { return a.value } else { return "" } } function GetInnerText(a) { if (typeof a.textContent != "undefined") { return a.textContent } else { return a.innerText } } function SetInnerText(b, a) { if (typeof b.textContent != "undefined") { b.textContent = a } else { b.innerText = a } } function addMessageToDivWithIcon(c, b, d) { if (c) { if (b == "" || b == "CLEAR") { var a = document.getElementById("DefaultMessage"); if (a && a.value != "" && b.value != "CLEAR") { c.innerHTML = ""; addPageMessage(a.value) } else { c.innerHTML = ""; c.style.display = "none" } } else { if (d.substr(0, 4) != "<img") { d = '<img src="/images/icons/' + d + '.gif" alt="" title="" class="SpacedImage" />' } c.innerHTML += "<div>" + d + "&nbsp;" + b + "</div>"; c.style.display = "block" } } } function addMessageToDiv(b, a) { if (a == "") { addMessageToDivWithIcon(b, "", "") } else { addMessageToDivWithIcon(b, a, '<img src="/images/icons/bolt.gif" alt="" title="" class="SpacedImage" />') } } function addMessageToSpan(b, a, c) { if (b) { b.style.display = (a == "") ? "none" : ""; if (a.trim() == "") { c = "blank" } if (a.substr(0, 6) == "CLEAR:") { a = a.substr(6); b.innerHTML = "" } if (c != "" && c.substr(0, 4) != "<img") { c = '<img src="/images/icons/' + c + '.gif" alt="" title="" class="SpacedImage" />' } b.innerHTML = c + "&nbsp;" + a } } function addPageMessageWithIcon(a, c) { var b = document.getElementById("ErrorPane"); addMessageToDivWithIcon(document.getElementById(b.value), a, c) } function addPageMessage(a) { if (a == "") { addPageMessageWithIcon("", "") } else { addPageMessageWithIcon(a, '<img src="/images/icons/bolt.gif" alt="" title="" class="SpacedImage" />') } } function checkDate(b) { var c = b.match(/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/); if (c && c.length == 4) { var a = Number(c[1]); var f = Number(c[2]); var g = Number(c[3]); var e = new Date(g, a - 1, f); if ((e.getMonth() + 1 != a) || (e.getDate() != f) || (e.getFullYear() != g)) { return false } else { return true } } return false } function getFileSafeString(e) { var c = ""; var b = /\w/; var a; for (var d = 0; d < e.length; d++) { a = e.substr(d, 1); if (a == "-" || a == "_" || b.test(a)) { c = c + a } } return c } function addLoadEvent(a) { var b = window.onload; if (typeof window.onload != "function") { window.onload = a } else { window.onload = function() { if (b) { b() } a() } } } function Left(a, b) { if (b <= 0) { return "" } else { if (b > String(a).length) { return a } else { return String(a).substring(0, b) } } } function Right(b, c) { if (c <= 0) { return "" } else { if (c > String(b).length) { return b } else { var a = String(b).length; return String(b).substring(a, a - c) } } } function StartsWith(c, a) { var b = Left(c, a.length); return (b == a) } function EndsWith(c, a) { var b = Right(c, a.length); return (b == a) } function ValidDate(b) { var a = /^\d{1,2}\/\d{1,2}\/\d{4}$/; if (!a.test(b)) { return false } else { var f = b.split("/")[0]; var c = b.split("/")[1]; var d = b.split("/")[2]; var e = new Date(d, f - 1, c); if ((e.getMonth() + 1 != f) || (e.getDate() != c) || (e.getFullYear() != d)) { return false } else { return true } } } function EscapeHtml(a) { var c = document.createElement("div"); var b = document.createTextNode(a); c.appendChild(b); return c.innerHTML } function addToMessagePane(c, a, b) { c.each(function() { a = a || ""; b = b || ""; if (a == "") { $(this).empty().hide(); return } if (a.substr(0, 6) == "CLEAR:") { $(this).empty(); a = a.replace("CLEAR:", "") } if (b == "") { $(this).css("background-image", "").css("padding-left", "4px") } else { $(this).css("background-image", "url(/images/icons/" + b + ".gif)").css("background-repeat", "no-repeat").css("background-position", "left center").css("padding-left", "20px") } $(this).html(a).show() }) } function StripeAndMouseOver(b, a) { TableMouseOver(b, a); TableStripe(b, a) } function TableMouseOver(b, a) { if (a) { b.find("tbody tr").unbind("mouseover") } else { b.find("tbody tr").mouseover(function() { $(this).addClass("Over") }).mouseout(function() { $(this).removeClass("Over") }) } } function TableStripe(b, a) { b.find("tbody tr").css("background-color", "#ffffff"); b.find("tbody tr:odd").css("background-color", "#eeeeee") } function DateRange_Preset(c, a, e) { var f = "", b = ""; var d = $(c).val(); switch (d) { case "TDY": f = new Date(); b = f; break; case "YSD": f = new Date(); f = addDays(f, -1); b = f; break; case "WTD": b = new Date(); f = (b.getDay() == 1) ? f = b : addDays(b, (-1 * (b.getDay() - 1))); break; case "LW": b = new Date(); f = (b.getDay() == 1) ? f = b : addDays(b, (-1 * (b.getDay() - 1))); f = addDays(f, -7); b = addDays(f, 6); break; case "TM": f = new Date(); f = new Date(f.getFullYear(), f.getMonth(), 1); b = getDaysInMonth(f.getMonth(), f.getFullYear()); b = new Date(f.getFullYear(), f.getMonth(), b); break; case "LM": f = new Date(); f = new Date(f.getFullYear(), (f.getMonth() - 1), 1); b = getDaysInMonth(f.getMonth(), f.getFullYear()); b = new Date(f.getFullYear(), f.getMonth(), b); break; case "LTD": b = new Date(); f = addDays(b, -30); break; case "LSD": b = new Date(); f = addDays(b, -60); break; case "LND": b = new Date(); f = addDays(b, -90); break; default: f = new Date(); b = f } a.val(DateRange_Format(f)); e.val(DateRange_Format(b)) } function DateRange_Format(a) { var b = new Date(); if (a > b) { a = b } return PadString(a.getMonth() + 1) + "/" + PadString(a.getDate()) + "/" + a.getFullYear() } function PadString(b, a) { if (a == undefined) { a = "00" } b = "" + a + b; return Right(b, a.length) } function reqJSON(b, e, d, a) { var c = {}; c.type = e.Method || "POST"; c.url = b; c.processData = true; c.data = e; c.dataType = "json"; c.success = d; if (a) { c.error = a } $.ajax(c) } function errorFromJSON(a) { var f = "Unknown Error Encountered"; try { if ((_Mask & 32) > 0) { var c = a.responseText.indexOf("<title>") + 7; var b = a.responseText.indexOf("</title>"); f = a.responseText.substr(c, b - c) } } catch (d) { } return f } var _Blocker = null; function Blocker_Set(b, a) { _Blocker = {}; _Blocker.Obj = $("#" + b); _Blocker.Params = a || {} } function Blocker_Show(a) { if (_Blocker != null && _Blocker.Obj != null) { if (a) { _Blocker.Params.message = a } _Blocker.Obj.block(_Blocker.Params); _Blocker.Params.message = null } } function Blocker_Hide(a) { if (_Blocker != null && _Blocker.Obj != null) { if (a == 0) { _Blocker.Obj.unblock() } else { a = a || 1500; setTimeout("_Blocker.Obj.unblock();", a) } } } function DropDown_Set(b, d, a) { d = d || ""; a = a || d; if (b && b.options) { b.selectedIndex = -1; for (var c = 0; c < b.options.length; c++) { if (b.options[c].val == d) { b.selectedIndex = c; break } } if (b.selectedIndex > -1) { for (var c = 0; c < b.options.length; c++) { if (b.options[c].text == a) { b.selectedIndex = c; break } } } } } function AdjustLayout() { var b = xHeight("mainContent"); var a = BroswerHeight() - xHeight("header") - xHeight("header_menu") - xHeight("footer") - 15; if (a > b) { b = a } xHeight("mainContent", b); xShow("footer") } function BroswerHeight() { var a = 0; if (typeof (window.innerWidth) == "number") { a = window.innerHeight } else { if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) { a = document.documentElement.clientHeight } else { if (document.body && (document.body.clientWidth || document.body.clientHeight)) { a = document.body.clientHeight } } } return a } String.prototype.trim = function() { return this.replace(/^\s+|\s+$/g, "") }; String.prototype.contains = function(a) { return this.indexOf(a) >= 0 ? true : false }; String.prototype.beginsWith = function(b, a) { if (a == false) { return (b == this.substring(0, b.length)) } else { return (b.toLowerCase() == this.substring(0, b.length).toLowerCase()) } }; String.prototype.endsWith = function(b, a) { if (a == false) { return (b == this.substring(this.length - b.length)) } else { return (b.toLowerCase() == this.substring(this.length - b.length).toLowerCase()) } };
