// JavaScript Document// Last modified: 08-19-03
function isNN() {
	if (document.all)
		return false;
	else
		return true;
}

/**
* Change color of navigation cell onmouseover
* Change cursor to a hand (only in IE)
* @param Object c cell that we are modifying
*/
function navOver(c) {
	c.style.backgroundColor = "#F0F8FF";
	c.style.cursor = "hand";
}

/**
* Change color of navigation cell back to whatever
* background color is defined in the stylesheet
* for element .navColumn onmouseout
* @param Object c cell that we are modifying
*/
function navOut(c) {
	var i;
	var r = new Array();

	if (isNN()) {
		r = document.styleSheets[0].cssRules;
	}
	else {
		r = document.styleSheets[0].rules;
	}

	// Loop until we find the .navColumn
	for (i = 0; (i<r.length) && (r[i].selectorText != ".navRow"); i++);
	
	c.style.backgroundColor = r[i].style.backgroundColor;
}


/**
* Act as a link to a page
* Match anything between the link quotation marks
* @param Object c cell that we are in
*/
function navTo(c) {
	// If there is no link defined, do not navigate
	if (c == "" || c=="#")
	return;
	
	var pattern = /\"[\w\.\d-#\?=]+\"/;
	var url = (c.innerHTML.match(pattern))[0].replace(/\"/g, "");
	
	// Make sure something matched
	if (url!=null)
	document.location = url;
	return; 
} 

/**
* Open new window to upload a picture
*/
function uploadFile(type) {
	window.open('upload_file.php?t=' + type, 'uploadpic', 'width=400,height=200,resizable');
	void(0);
}

/**
* Open a new window to view member detail
*/
function viewMember(id) {
	window.open('view_member.php?id=' + id, 'viewmember', 'width=400,height=400,resizable=no,scrollbars');
	void(0);
}

/**
* Resize the window so we can see the whole picture
*/
function resizeWindow() {	
	
	var y = document.getElementById('content').height;
	
	if (x > 150 && y > 100)
		document.getElementById('subMenu').height.resizeTo(y);
}

function sameSize(a,b){
  
  a = document.getElementById(a);
  b = document.getElementById(b);

  // Zilla stuff
  if (window.getComputedStyle) {
    var h = document.defaultView.getComputedStyle(a,
             '').getPropertyValue('height');
    
    

  // IE stuff
  } else if (a.currentStyle) {
    var h = eval('a.currentStyle.height');
    
  }

  // Split off numbers and units
  hu = h.replace(/[\d|.]/g,'');
//h = h.replace(/[^\d|.]/g,'');
  h  = h.replace(hu,'');
 

  // Apply to the target element
  if (b.style) {
    b.style.height = h + hu;
	
    
  }

 

}

function slideOut(el) {
    if (el.timer) window.clearTimeout(el.timer);
    var h0 = 0,  // Current height
        w0 = 0,  // Current width
        hu, wu;  // Height & width units
    if (window.getComputedStyle) {
      var h = document.defaultView.getComputedStyle(el,
               '').getPropertyValue('height');
      var w = document.defaultView.getComputedStyle(el,
               '').getPropertyValue('width');
    } else if (el.currentStyle) {
      var h = eval('el.currentStyle.height');
      var w = eval('el.currentStyle.width');
    }

    hu = h.replace(/[\d|.]/g,'');
    h  = h.replace(hu,'');
    wu = w.replace(/[\d|.]/g,'');
    w  = w.replace(wu,'');
    var d   = 10;     // Delay between increments
    var inc = 200;    // Number of increments
    var hi  = h/inc;  // Height increments
    var wi  = w/inc;  // Width increments

    el.style.height  = h0 + hu;
    el.style.width   = w0 + wu;
    el.style.display = '';

    el.timer = window.setInterval(function() { // Start timer

      h0 += hi;
      w0 += wi;
      if ( h0 > h) {
        h0 = h;
        w0 = w;
        window.clearTimeout(el.timer);       // Stop timer
        el.timer = null;                     // Clear timer
      }

      el.style.height = h0 + hu;
      el.style.width  = w0 + wu;

    }, d);                                   // End timer code
  }
  
  

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i>d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

  
function MM_showHideLayers() { //v3.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
    obj.visibility=v; }
}



var base64EncodeChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var base64DecodeChars = new Array(
    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, -1, 63,
    52, 53, 54, 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, -1, -1, -1,
    -1,  0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14,
    15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, -1,
    -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
    41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1);

function base64encode(str) {
    var out, i, len;
    var c1, c2, c3;

    len = str.length;
    i = 0;
    out = "";
    while(i < len) {
 c1 = str.charCodeAt(i++) & 0xff;
 if(i == len)
 {
     out += base64EncodeChars.charAt(c1 >> 2);
     out += base64EncodeChars.charAt((c1 & 0x3) << 4);
     //out += "==";
     break;
 }
 c2 = str.charCodeAt(i++);
 if(i == len)
 {
     out += base64EncodeChars.charAt(c1 >> 2);
     out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
     out += base64EncodeChars.charAt((c2 & 0xF) << 2);
     out += "=";
     break;
 }
 c3 = str.charCodeAt(i++);
 out += base64EncodeChars.charAt(c1 >> 2);
 out += base64EncodeChars.charAt(((c1 & 0x3)<< 4) | ((c2 & 0xF0) >> 4));
 out += base64EncodeChars.charAt(((c2 & 0xF) << 2) | ((c3 & 0xC0) >>6));
 out += base64EncodeChars.charAt(c3 & 0x3F);
    }
    return out;
}

function base64decode(str) {
    var c1, c2, c3, c4;
    var i, len, out;

    len = str.length;
    i = 0;
    out = "";
    while(i < len) {
 /* c1 */
 do {
     c1 = base64DecodeChars[str.charCodeAt(i++) & 0xff];
 } while(i < len && c1 == -1);
 if(c1 == -1)
     break;

 /* c2 */
 do {
     c2 = base64DecodeChars[str.charCodeAt(i++) & 0xff];
 } while(i < len && c2 == -1);
 if(c2 == -1)
     break;

 out += String.fromCharCode((c1 << 2) | ((c2 & 0x30) >> 4));

 /* c3 */
 do {
     c3 = str.charCodeAt(i++) & 0xff;
     if(c3 == 61)
  return out;
     c3 = base64DecodeChars[c3];
 } while(i < len && c3 == -1);
 if(c3 == -1)
     break;

 out += String.fromCharCode(((c2 & 0XF) << 4) | ((c3 & 0x3C) >> 2));

 /* c4 */
 do {
     c4 = str.charCodeAt(i++) & 0xff;
     if(c4 == 61)
  return out;
     c4 = base64DecodeChars[c4];
 } while(i < len && c4 == -1);
 if(c4 == -1)
     break;
 out += String.fromCharCode(((c3 & 0x03) << 6) | c4);
    }
    return out;
}


//write new content without reloading document//

var AR=new Array();
if (document.innerHTML != null) AR[0]= document.innerHTML.getElementById('references');
AR[1]="It works with text";
AR[2]="Does it work with HTML?";
var I=0;
function next()
{
  I=(++I)%AR.length;
   document.getElementById("here").innerHTML=AR[I];
}


