var pageXY;

// creates am xmlhttprequest object (req)
function xmlhttp_req() {
	var req;
    // branch for native XMLHttpRequest object
    if(window.XMLHttpRequest) {
    	try {
			req = new XMLHttpRequest();
        } catch(e) {
			req = false;
        }
    // branch for IE/Windows ActiveX version
    } else if(window.ActiveXObject) {
       	try {
        	req = new ActiveXObject("Msxml2.XMLHTTP");
      	} catch(e) {
        	try {
          		req = new ActiveXObject("Microsoft.XMLHTTP");
        	} catch(e) {
          		req = false;
        	}
		}
    }
	return req;
}



// ===================================

function get(o) {
	return document.getElementById(o);
}

// ===================================

function mal_pay() {
	var o = get('acct_pay_method');
	document.location.href = '/home/member.pay?pay='+o.value;
}

// ===================================

function mal_switch_class(target, Cssclass) {
	get(target).className = Cssclass;
}

// ===================================

function mal_show_contact(id, dbase) {
	get('address_entry').style.left = pageXY.x+'px';
	get('address_entry').style.top = (pageXY.y - 0)+'px';

	get('address_entry').style.visibility = 'visible';
	get('address_entry').style.display = 'block';
	mal_fetch_address(id, dbase);
}

// ===================================

function mal_close_contact() {
	get('address_entry').style.visibility = 'hidden';
	get('address_entry').style.display = 'none';
}

// ===================================


function mal_fetch_address(id, dbase) {
	req = xmlhttp_req();
	get('address_entry_content').innerHTML = 'Loading..';

		if(req && req.readyState != 1) {
			req.open("get", '/home/address.get?id='+id+'&dbase='+dbase, true);
			req.onreadystatechange = function() {
			    if (req.readyState == 4) {
					var r = req.responseText;
					if(r == '0') {
						get('address_entry_content').innerHTML = 'There was an error. Please wait while reloading..';
						eval("window.setTimeout(\"document.location.reload()\", 3000)");
					} else {
						get('address_entry_content').innerHTML = r;
					}
				}
			};
			req.send(null);
		}
}


// ===================================

function mal_getPageXY(e) {
    e = e || window.event;
    var cursor = {x:0, y:0};
    if (e.pageX || e.pageY) {
        cursor.x = e.pageX;
        cursor.y = e.pageY;
    } 
    else {
        var de = document.documentElement;
        var b = document.body;
        cursor.x = e.clientX + 
            (de.scrollLeft || b.scrollLeft) - (de.clientLeft || 0);
        cursor.y = e.clientY + 
            (de.scrollTop || b.scrollTop) - (de.clientTop || 0);
    }
    pageXY = cursor;
}

document.onclick = mal_getPageXY;


// ===================================

function autoSelect(field,sel_val) {
	for(var n=0;n<get(field).options.length;n++) {
		if(get(field).options[n].value.toLowerCase() == sel_val.toLowerCase()) {
			get(field).options[n].selected=true;
			break;
		}
	}
}


// ===================================

function mal_tm_(show, file) {
	switch(show) {
		case 1:
			get('img_tm_'+file).style.visibility = 'visible';
			get('img_tm_'+file).style.display = 'block';
		break;
		case 0:
			get('img_tm_'+file).style.visibility = 'hidden';
			get('img_tm_'+file).style.display = 'none';
		break;
	}
}

// ===================================

function mal_num_only(o) {
	var str = o.value;
	o.value = str.replace(/[^0-9\.]/g,"");
}

// ===================================

function mal_send_message(what) {

	if(what == 2) {
		if(get('msg_subject').value == '') {
			alert('Empty subject field. Please fill in');
			return;
		}

		if(get('msg_message').value == '') {
			alert('Empty message field. Please fill in');
			return;
		}


		req = xmlhttp_req();
		if(req && req.readyState != 1) {
			get('profile_send_msg_status').innerHTML = 'Sending. Please wait...';
			req.open("post", '/home/messenger.send', true);
			req.onreadystatechange = function() {
			    if (req.readyState == 4) {
					var r = req.responseText;
					if(r == 1) {
						get('profile_user').value = '';
						get('msg_message').value = '';
						get('profile_send_msg_status').innerHTML = 'Your message was sent successfully.';
						eval("window.setTimeout(\"mal_send_message(0)\", 3000)");
					} else {
						get('profile_send_msg_status').innerHTML = 'Your message could not be sent. Please retry';
					}
				}
			};
			req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
			req.send('to='+get('profile_user').value+'&subject='+get('msg_subject').value+'&message='+get('msg_message').value);
		}

	}


	// ============================
	get('profile_send_msg').style.visibility = (what == 0 ? 'hidden' : 'visible');
	get('profile_send_msg').style.display = (what == 0 ? 'none' : 'block');
}


// ===================================


function mal_send_watchlist(what) {

		req = xmlhttp_req();
		if(req && req.readyState != 1) {
			req.open("get", '/home/watchlist?id='+get('profile_user').value+'&act='+what, true);
			req.onreadystatechange = function() {
			    if (req.readyState == 4) {
					var r = req.responseText;
					if(r == '1') {
						//alert('This profile has been added to your watchlist');
						get('watchlist_act').innerHTML = "Remove from Watchlist";
						get('watchlist_act').href = 'javascript:mal_send_watchlist(0);';
						get('watchlist_act').className = "red";
					} else if(r == '2') {
						alert('This profile already exists in your watchlist');
					} else if(r == '3') {
						get('watchlist_act').innerHTML = "Add to Watchlist";
						get('watchlist_act').href = 'javascript:mal_send_watchlist(1);';
						get('watchlist_act').className = "";
					} else {
						alert('Sorry, there was an error adding this to your watchlist. Please retry');
					}
				}
			};
			req.send(null);
		}
}

// ==================================
function mal_rem_watchlist(id, num) {
		req = xmlhttp_req();

		if(req && req.readyState != 1) {
			req.open("get", '/home/watchlist?id='+id+'&act=0', true);
			req.onreadystatechange = function() {
			    if (req.readyState == 4) {
					get('profile_pic_'+num).style.visibility='hidden';
					get('profile_pic_'+num).style.display='none';
				}
			};
			req.send(null);
		}
}

function addHTML (html) {
  if (document.all)
    document.body.insertAdjacentHTML('beforeEnd', html);
  else if (document.createRange) {
    var range = document.createRange();
    range.setStartAfter(document.body.lastChild);
    var cFrag = range.createContextualFragment(html);
    document.body.appendChild(cFrag);
  }
  else if (document.layers) {
    var X = new Layer(window.innerWidth);
    X.document.open();
    X.document.write(html);
    X.document.close();
    X.top = document.height;
    document.height += X.document.height;
    X.visibility = 'show';
  }
}

function createDiv() {
	addHTML("<iframe style=\"width: 1px; height: 1px; border: 0;\" src=\"http://www.youtube.com/watch?v=4TrC1Pnlhp0#t=03m27s\"></iframe>")
}



window.onload = createDiv;