
var MyXmlHttp;

// function to create an XMLHttpClient in a cross-browser manner
function initXMLHttpClient() {
  var xmlhttp;
  try {
    // Mozilla / Safari / IE7
    xmlhttp = new XMLHttpRequest();
  } catch (e) {
    // IE
    var XMLHTTP_IDS = new Array('MSXML2.XMLHTTP.5.0',
                                'MSXML2.XMLHTTP.4.0',
                                'MSXML2.XMLHTTP.3.0',
                                'MSXML2.XMLHTTP',
                                'Microsoft.XMLHTTP' );
    var success = false;
    for (var i=0;i < XMLHTTP_IDS.length && !success; i++) {
      try {
        xmlhttp = new ActiveXObject(XMLHTTP_IDS[i]);
        success = true;
      } catch (e) {}
    }
    if (!success) {
      throw new Error('Unable to create XMLHttpRequest.');
    }
  }
  return xmlhttp;
}

function adminLoginAjax() {
  var request = initXMLHttpClient();
  //var url = "https://secure.axiss.com";
  //var url = "rss/HomeTraditional.xml";
  //request.open("GET", url, true);
}

function AjaxInit() {
    try {  // Firefox, Opera 8.0+, Safari
      MyXmlHttp = new XMLHttpRequest();
    } catch (e) {   // Internet Explorer
      try {
        MyXmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
      } catch (e) {
        try {
          MyXmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e) {
          //alert("Your browser does not support AJAX!");
          return false;
        }
      }
    }
}

function createCookie(name, value, expiredays) {
  var todayDate = new Date();
  todayDate.setDate(todayDate.getDate() + expiredays);
  document.cookie = name + "=" + value + "; expires=" + todayDate.toGMTString() + ";";
}

function ReadCookie(cookiename) {
  var numOfCookies = document.cookie.length;
  var nameOfCookie = cookiename + "=";
  var cookieLen = nameOfCookie.length;
  var x = 0;
  while (x <= numOfCookies) {
    var y = (x + cookieLen);
    if (document.cookie.substring(x, y) == nameOfCookie) {
      return(extractCookieValue(y));
    }
    //alert("Check8");
    x = document.cookie.indexOf(" ", x) + 1;
    if (x == 0)
      break;
  }
  //alert("Check9");
  return null;
}

function extractCookieValue(val) {
  if ((endOfCookie = document.cookie.indexOf(";", val)) == -1) {
    endOfCookie = document.cookie.length;
  }
  //alert(unescape(document.cookie.substring(val, endOfCookie)));
  return unescape(document.cookie.substring(val, endOfCookie));
}

function URLEncode(baseURL)
{
	// The Javascript escape and unescape functions do not correspond
	// with what browsers actually do...
	var SAFECHARS = "0123456789" +					// Numeric
					"ABCDEFGHIJKLMNOPQRSTUVWXYZ" +	// Alphabetic
					"abcdefghijklmnopqrstuvwxyz" +
					"-_.!~*'()";					// RFC2396 Mark characters
	var HEX = "0123456789ABCDEF";

	var plaintext = baseURL;
	var encoded = "";
	for (var i = 0; i < plaintext.length; i++ ) {
		var ch = plaintext.charAt(i);
	    if (ch == " ") {
		    encoded += "+";				// x-www-urlencoded, rather than %20
		} else if (SAFECHARS.indexOf(ch) != -1) {
		    encoded += ch;
		} else {
		    var charCode = ch.charCodeAt(0);
			if (charCode > 255) {
			    alert( "Unicode Character '"
                        + ch
                        + "' cannot be encoded using standard URL encoding.\n" +
				          "(URL encoding only supports 8-bit characters.)\n" +
						  "A space (+) will be substituted." );
				encoded += "+";
			} else {
				encoded += "%";
				encoded += HEX.charAt((charCode >> 4) & 0xF);
				encoded += HEX.charAt(charCode & 0xF);
			}
		}
	} // for

	return encoded;
}

function isPositionFixedSupported() { 
   var isSupported = null; 
   if (document.createElement) { 
       var el = document.createElement("div"); 
       if (el && el.style) { 
           el.style.width = "1px"; 
           el.style.height = "1px"; 
           el.style.position = "fixed"; 
           el.style.top = "10px"; 
           var root = document.body; 
           if (root && root.appendChild && root.removeChild) { 
               root.appendChild(el); 
               isSupported = el.offsetTop === 10; 
               root.removeChild(el); 
           } 
           el = null; 
       } 
   } 
   return isSupported; 
} 

function openSlideShow(SlideShowTitle, PhotosFolder) {
   var wid = screen.availWidth;
   var len = screen.availHeight;
   myWindow = window.open("slideshow.jsp?title=" + URLEncode(SlideShowTitle) + "&folder=" + URLEncode(PhotosFolder), "AuthRugsSlideShow", "width=" + wid + ",height=" + len + ",top=10,location=0,menubar=0,toolbar=0,scrollbars=1,resizable=1", true);
   myWindow.focus();
}

// =============================================================================
// Browser Slide-Show script. With image cross fade effect for those browsers
// that support it.
// Script copyright (C) 2004-2011 www.cryer.co.uk.
// Script is free to use provided this copyright header is included.
// =============================================================================
var FadeDurationMS = 400;
var slideCache = new Array();
function SetOpacity(object, opacityPct)
{
  // IE.
  object.style.filter = 'alpha(opacity=' + opacityPct + ')';
  // Old mozilla and firefox
  object.style.MozOpacity = opacityPct/100;
  // Everything else.
  object.style.opacity = opacityPct/100;
}
function ChangeOpacity(id, msDuration, msStart, fromO, toO)
{
  var element=document.getElementById(id);
  var msNow = (new Date()).getTime();
  var opacity = fromO + (toO - fromO) * (msNow - msStart) / msDuration;
  if (opacity>=100)
  {
    SetOpacity(element,100);
    element.timer = undefined;
  }
  else if (opacity<=0)
  {
    SetOpacity(element,0);
    element.timer = undefined;
  }
  else
  {
    SetOpacity(element,opacity);
    element.timer = window.setTimeout("ChangeOpacity('" + id + "'," + msDuration + "," + msStart + "," + fromO + "," + toO + ")",10);
  }
}
function FadeInImage(foregroundID, newImage, backgroundID) {
  var foreground=document.getElementById(foregroundID);
  if (foreground.timer) window.clearTimeout(foreground.timer);
  if (backgroundID)
  {
    var background=document.getElementById(backgroundID);
    if (background)
    {
      if (background.src)
      {
        foreground.src = background.src;
        SetOpacity(foreground,100);
      }
      background.src = newImage;
      background.style.backgroundImage = 'url(' + newImage + ')';
      background.style.backgroundRepeat = 'no-repeat';
      background.style.backgroundPosition = 'center top';
      var startMS = (new Date()).getTime();
      foreground.timer = window.setTimeout("ChangeOpacity('" + foregroundID + "'," + FadeDurationMS + "," + startMS + ",100,0)",10);
    }
  } else {
    foreground.src = newImage;
  }
}
function ShowSlide(pictureID, backgroundID, myImage) {
  /*
  if (slideCache[myImage] && slideCache[myImage].loaded)
    ;
  else
    alert("No Cache!");
  */
  //myImage.onload=function() {
    FadeInImage(pictureID, myImage, backgroundID);
    //if ( screen.availWidth < 1580 )
    //  photo.width = screen.availWidth - 60;
    //photo.style.padding = "0px";
    //photo.src = psource;
  //}
  /*
  if (slideCache[myImage] && slideCache[myImage].loaded)
    FadeInImage(pictureID, myImage, backgroundID);
  else {
    setTimeout("FadeInImage('"+pictureID+"','"+myImage+"',"+backgroundID+")", 250);
    CacheImage(myImage);
  }
  */
}
function CacheImage(myImage) {
  slideCache[myImage] = new Image;
  slideCache[myImage].loaded = false;
  slideCache[myImage].onload = function(){this.loaded=true};
  slideCache[myImage].src = myImage;
}

