



/* validate the post form */

function vldtpstfrm(formid) {
var curform=formid;
var curvalid=true;
var curmessage='';
var curtagtext=document.formPost.itmtgs.value;
var curtagarray=curtagtext.split(' ');
var errbox=document.getElementById('errmessage');
	if(document.formPost.itmnm.value.length < 5) {
	var curvalid=false;
	curmessage+='Your item name needs to be at least 6 characters.<br />';
	}
	for(i=0; i<curtagarray.length; i++) {
		if(curtagarray[i].length==1){
		var curvalid=false;
		curmessage+='Your tag "'+curtagarray[i]+'" needs to have at least 2 characters.<br />';
		}
	}
	if(curtagarray.length==1 && curtagarray[1]==undefined){
	var curvalid=false;
	curmessage+='You need to include a few tags - this is how sellers will find it!<br />';
	}
	
	if(curvalid==false){
	errbox.innerHTML=curmessage;
	errbox.style.display='block';
	}
return curvalid;
}

/* set the BuyOff duration to forever */
function setindefinite(ind,lmt) {
	if (typeof durvalue == 'undefined') {
	durvalue='';
	}
var durbox=document.getElementById(lmt);
var forbox=document.getElementById(ind);
	if(forbox.checked) {
	durvalue=durbox.value;
	durbox.value='--';
	durbox.disabled=true;
	}
	else {
	durbox.value=durvalue;
	durbox.disabled=false;
	durbox.focus();
	durbox.select();
	}
}


function editbuyoff(type,divedit,buyoff) {
toinsert = $(divedit);
var url = '/async/edtbo';
if(type=='edit'){
	var buyoffid = $F(buyoff);
	var pars = 'b=' + buyoffid;
	}
else if(type=='show'){
	var buyoffid = buyoff;
	var pars = 'r=' + buyoffid;
	}
	
	var myEditBx = new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: pars,
			onComplete: insertedtfrm
		});
}



function editmfbo(frmId,divedit) {
toinsert = $(divedit);
var pars = Form.serialize($(frmId));
var url = '/async/edtbo';
	var myResult = new Ajax.Request(
		url,
		{
			method: 'post',
			parameters: pars,
			onComplete: insertedtfrm
		});
}

function insertedtfrm(originalRequest) {
toinsert.innerHTML=originalRequest.responseText;
}

function findmatchingitems(strQ,skip) {
if(strQ.length > 10){
	var url = '/async/matchingitems';
	var pars = 'q=' + escape(strQ) + '&s=' + skip;
	
	var myMatchBx = new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: pars,
			onComplete: insertedmtchitms
		});
	}
	
else if(strQ.length == 0) {
	document.getElementById('matchingitems').innerHTML='';
	}
}

function insertedmtchitms(originalRequest) {
document.getElementById('matchingitems').innerHTML=originalRequest.responseText;
}

function findmatchingitemssell(strQ) {
if(isdefined('sellclosed')==false) {
	if(strQ.length > 10){
		var url = '/async/sellmatchingitems';
		var pars = 'q=' + escape(strQ);
		
		var myMatchBx = new Ajax.Updater(
			'sellmatchers',
			url,
			{
				method: 'get',
				parameters: pars
			});
		}
		
	else if(strQ.length == 0) {
		document.getElementById('sellmatchers').innerHTML='';
		}
	}
}


function usematchingitem(strItm,strItmName,strItmTgs) {
// set the "item name" field to pseudo-disabled
var frmItm = $('formPostid');
var objItmName = frmItm.itmnm;
var objItmTags = frmItm.itmtgs;
var objItmID = frmItm.newitm;
objItmName.style.color='gray';
objItmName.readOnly=true;
objItmName.value=strItmName;
objItmTags.value=strItmTgs;
objItmID.value=strItm;
$('unlocksec').innerHTML='<span class="font12"><span class="clickablespan" onclick="unlockmatchingitem()">Don\'t use this item</span></span>';
}

function unlockmatchingitem() {
// set the "item name" field to enabled
var frmItm = $('formPostid');
var objItmName = frmItm.itmnm;
var objItmTags = frmItm.itmtgs;
var objItmID = frmItm.newitm;
objItmName.style.color='black';
objItmName.readOnly=false;
objItmName.value='';
objItmTags.value='';
objItmID.value='true';
$('unlocksec').innerHTML='';
}

function showsuggesttags(strQ,mytagdiv,mytagbox) {
tagdiv = mytagdiv;
if(strQ.length > 1){
	var url = '/async/suggesttags';
	var pars = 'q=' + escape(strQ) + '&b=' + mytagbox;
	
	var myMatchBx = new Ajax.Request(
		url,
		{
			method: 'get',
			parameters: pars,
			onComplete: insertsuggesttags
		});
	}
}


function insertsuggesttags(originalRequest) {
document.getElementById(tagdiv).innerHTML=originalRequest.responseText;
}


function usesuggestedtag(tag,frmelement) {
var curtagtext=$(frmelement).value;
var curtagarray=curtagtext.split(' ');
var newtagarray = new Array;
var newtagtext='';
	for(i=0; i<curtagarray.length; i++) {
	var arraylength = curtagarray.length;
		if(i == ( arraylength - 1 )){
		// last tag in the group
		
			var curregexstr = curtagarray[i] + '[\\w\'-]*';
		
			var re = new RegExp(curregexstr,'i');
			
			if(tag.match(re)) { 
				// replace the last word
				// unless it is in the array
				if(curtagarray.indexOf(tag)==-1) {
					newtagarray[i] = tag;
				}
			}
			else {
				newtagarray[i] = curtagarray[i];
			}
		}
		else {
		newtagarray[i] = curtagarray[i];
		}
	}
	for(i=0; i<newtagarray.length; i++) {
		newtagtext+=newtagarray[i] + ' ';
	
	}
//newtagtext = rightTrim(newtagtext);
$(frmelement).value=newtagtext;
moveToEnd($(frmelement));

showsuggesttags($(frmelement).value,'suggestedtags','itmtgsid');

}

function rightTrim(sString) {
	while (sString.substring(sString.length-1, sString.length) == ' ')	{
		sString = sString.substring(0,sString.length-1);
	}
return sString;
}

function moveToEnd(el) {
	if (el.createTextRange) {
		var v = el.value;
		var r = el.createTextRange();
		r.moveStart('character', v.length);
		r.select();
	}
	else {
		el.focus();
	}
}

function boresort(srtvalue) {
window.parent.focus();
window.location.href='/sell?r='+srtvalue;
}

function disablesubmit(sbmtbtn,mssg) {
var submitbutton = $(sbmtbtn);
submitbutton.disabled=true;
submitbutton.value=mssg;
}

function highlighoption(divHighlight,divnoHighlight) {
window.parent.focus();
var myradios = document.frmConfirmSell.confirmsell_option;
var myboxtohl = $(divHighlight);
var myboxnohl = $(divnoHighlight);
if (myradios[0].checked==true) {
	myboxtohl.style.backgroundColor='#ccff99';
	}
else {
	myboxnohl.style.backgroundColor='#ffffff';
	}
if (myradios[1].checked==true) {
	myboxtohl.style.backgroundColor='#ccff99';
	}
else {
	myboxnohl.style.backgroundColor='#ffffff';
	}
}

function selectioption(toselect) {
var myselector = $(toselect);
myselector.checked=true;
}



function loaddynimages() {
for(i=0; i<imagesph.length; i++) {
	curimage = imagesph[i];
	curplaceholder = 'img' + imagesph[i];
	curlink = $('img' + imagesph[i]);
	curlink.innerHTML='<img src="/img/ldng.gif" />';
	var url = '/async/getimage';
	var pars = 'i=' + escape(curimage);
	
	myImgBx = new Ajax.Updater(
		curplaceholder,
		url,
		{
			method: 'get',
			parameters: pars
		});

	}
}

function loaddynimagessell() {
for(i=0; i<imagesph.length; i++) {
	curimage = imagesph[i];
	curplaceholder = 'img' + imagesph[i];
	curlink = $('img' + imagesph[i]);
	curlink.innerHTML='<img src="/img/ldng.gif" />';
	var url = '/async/getimage';
	var pars = 'i=' + escape(curimage) + '&tbl=holder';
	
	myImgBx = new Ajax.Updater(
		curplaceholder,
		url,
		{
			method: 'get',
			parameters: pars
		});

	}
}


function mfboresort(srtvalue) {
var srchq = document.mfsearch.q.value;
var curloc = String(window.location);
var botc = curloc.indexOf('&displaybought');
var bot = '';
if (botc > 0) {
	bot = '&displaybought';
	}
window.parent.focus();
window.location.href='/myflippid?q=' + srchq + '&r='+srtvalue + bot;
}




function mfoffrresort(srtvalue) {
var srchq = document.mfsearch.q.value;
var curloc = String(window.location);
var offc = curloc.indexOf('&viewolderoffers');
var off = '';
if (offc > 0) {
	off = '&viewolderoffers';
	}
window.parent.focus();
window.location.href='/myflippid?t=offers&q=' + srchq + '&r='+srtvalue + off;
}


function mfmssgresort(srtvalue) {
var srchq = document.mfsearch.q.value;
var curloc = String(window.location);
window.parent.focus();
window.location.href='/myflippid?t=messages&q=' + srchq + '&r='+srtvalue;
}


function mfadresort(srtvalue) {
var srchq = document.mfsearch.q.value;
var curloc = String(window.location);
window.parent.focus();
window.location.href='/myflippid?t=adlist&q=' + srchq + '&r='+srtvalue;
}


function mfwlresort(srtvalue) {
var srchq = document.mfsearch.q.value;
var curloc = String(window.location);
window.parent.focus();
window.location.href='/myflippid?t=watch&q=' + srchq + '&r='+srtvalue;
}


function setpayopts(toinsert,type) {
curplaceholder = 'paymthdinfobx-' + toinsert;
var url = '/async/setpayopts';
var pars = 'type=' + type + '&prec=' + toinsert;
myImgBx = new Ajax.Updater(
	curplaceholder,
	url,
	{
		method: 'get',
		parameters: pars
	});
}


function checkdurint(radioObj,intObj,type) {

if(radioObj.checked) {
	if(type=='days' && parseFloat(intObj.value) > 15) {
		intObj.value=15;
		}
	else if(type=='hours' && parseFloat(intObj.value) > 360) {
		intObj.value=360;
		}
	}

intObj.focus();
intObj.select();
}



function boresortsrch(srtvalue,srchStr) {
window.parent.focus();
window.location.href='/sell?q=' + escape(srchStr) + '&r='+srtvalue;
}


function boresortl(srtvalue,srchStr) {
window.parent.focus();
window.location.href='/sell?l=' + srchStr + '&r='+srtvalue;
}



function removeofferimage(imgplchldr,imgnmbr,offr,img) {
var url = '/async/removeimage';
var pars = 'offer=' + offr + '&image=' + imgnmbr + '&imageid=' + img;
myImgBx = new Ajax.Updater(
	imgplchldr,
	url,
	{
		method: 'get',
		parameters: pars
	});
}

function showMsgFrm(u) {
var url = '/async/usermessage';
var pars = 'u=' + u;
var mssgdiv = 'mssgdiv';
myFrmSec = new Ajax.Updater(
	mssgdiv,
	url,
	{
		method: 'get',
		parameters: pars
	});
}

function sendmessage(frmObj) {
$('sbmtid').disabled=true;
var url = '/async/usermessage';
var pars = Form.serialize(frmObj);
var mssgdiv = 'mssgdiv';
myFrmSec = new Ajax.Updater(
	mssgdiv,
	url,
	{
		method: 'post',
		parameters: pars
	});
}


function messageresponse(u,m,type) {
var url = '/async/usermessage';
if (type=='message') {
	var passtype = 'm'
	}
	else if (type=='offer') {
	var passtype = 'o'
	}
	else if (type=='response') {
	var passtype = 'r'
	}
var pars = 'u=' + u + '&' + passtype + '=' + m;
var mssgdiv = 'mssgdiv';
myFrmSec = new Ajax.Updater(
	mssgdiv,
	url,
	{
		method: 'get',
		parameters: pars
	});

}

function cancelmessage() {
$('mssgdiv').innerHTML='';
}


function mfmrkpd(buyoff,plchldr,unmark) {
if(unmark) {
	var sure = confirm('Are you sure you want to un-mark this as paid?');
	}
else {
	var sure = confirm('Are you sure you want to mark this as paid?');
	}
if (sure) {
	var url = '/async/bomarkpaid';
	var pars = 'i=' + buyoff + '&output=true';
	if(unmark) {
		pars+='&unmark=true';
		}
	var myimgh = new Ajax.Updater(
		plchldr,
		url,
		{
			method: 'get',
			parameters: pars
		});
	}
}


function changeselldes(type,value) {
var pars = 'type=' + type + '&selltext=' + escape(value);
var url = '/async/selldescription';
var selldes = 'selldes';
myFrmSec = new Ajax.Updater(
	selldes,
	url,
	{
		method: 'post',
		parameters: pars
	});
}


function clrsllmtch() {
sellclosed = 'do not open';
$('sellmatchers').innerHTML='';
}


function getsellrelatedtags(nm) {
if(nm.length > 10) {
	var url = '/async/sellrelatedtags';
	var pars = 'item_name=' + nm;
	var relholder = 'reltags';
	myFrmSec = new Ajax.Updater(
		relholder,
		url,
		{
			method: 'get',
			parameters: pars
		});
	}
}


function sellchngimgtyp(type,itemname) {
var url = '/async/sellimages';
var pars = 'g=' + type + '&itmnm=' + itemname;
if(type=='find') {
	if ($('itmnmid').value=='') {
	alert('Please type the item name and some tags so we know what to look for!');
	return false;
	}
	$('sellpic').innerHTML='<img src="/img/ldng.gif" />';
	myFrmSec = new Ajax.Updater(
		'sellpic',
		url,
		{
			method: 'get',
			parameters: pars,
			evalScripts: true
		});
}
else {
	myFrmSec = new Ajax.Updater(
		'sellpic',
		url,
		{
			method: 'get',
			parameters: pars
		});
	
	}
}

function loadsellpics(originalRequest) {
$('sellpic').innerHTML=originalRequest.responseText;
loaddynimagessell();
}

function choosesellimage(image) {
var url = '/async/sellimages';
var pars = 'g=chosen' + '&m=' + image;
myFrmSec = new Ajax.Updater(
	'sellpic',
	url,
	{
		method: 'get',
		parameters: pars
	});
}


function sellusematchingitem(strItm,strItmName,strItmTgs,imgid) {
// set the "item name" field to pseudo-disabled
var frmItm = $('sellitmid');
var objItmName = frmItm.itmnm;
var objItmTags = frmItm.itmtgs;
var objItmID = frmItm.itm;
objItmName.style.color='gray';
objItmName.readOnly=true;
objItmName.value=strItmName;
objItmTags.value=strItmTgs;
objItmID.value=strItm;
$('unlocksec').innerHTML='<span class="font12"><span class="clickablespan" onclick="sellunlockmatchingitem()">Don\'t use this item</span></span>';

// set the item image

var url = '/async/sellimages';
var pars = 'g=localimg' + '&i=' + imgid;
myFrmSec = new Ajax.Updater(
	'sellpic',
	url,
	{
		method: 'get',
		parameters: pars
	});

}


function sellunlockmatchingitem() {
// set the "item name" field to pseudo-disabled
var frmItm = $('sellitmid');
var objItmName = frmItm.itmnm;
var objItmTags = frmItm.itmtgs;
var objItmID = frmItm.itm;
objItmName.style.color='black';
objItmName.readOnly=false;
objItmName.value='';
objItmTags.value='';
objItmID.value='new';
$('unlocksec').innerHTML='';


var url = '/async/sellimages';
var pars = 'g=upload';
myFrmSec = new Ajax.Updater(
	'sellpic',
	url,
	{
		method: 'get',
		parameters: pars
	});


}


function editad(id) {

var plc = 'adedt' + id;
var adtd = 'adtd' + id;
var url = '/async/edtad';
var pars = 'a=' + id;
$(adtd).colSpan=7;
var editr = new Ajax.Updater(
	plc,
	url,
	{
		method: 'get',
		parameters: pars
	});
}

function editlstnr(id)
	{
	var plc = 'ltedt' + id;
	var adtd = 'lttd' + id;
	var url = '/async/edtlstnr';
	var pars = 'a=' + id;
	$(adtd).colSpan=4;
	var editr = new Ajax.Updater(
		plc,
		url,
	{
		method: 'get',
		parameters: pars
	});
	}



function adquickupdate(frm,id) {
var plc = 'adedt' + id;
var adtd = 'adtd' + id;
var form = $(frm);
var formpars = Form.serialize(form);
var url = '/async/edtad';
var editr = new Ajax.Updater(
	plc,
	url,
	{
		method: 'post',
		parameters: formpars,
		evalScripts: true
	});
}

function lstnrqkupdt(frm,id) {
var plc = 'ltedt' + id;
var adtd = 'lttd' + id;
var form = $(frm);
var formpars = Form.serialize(form);
var url = '/async/edtlstnr';
var editr = new Ajax.Updater(
	plc,
	url,
	{
		method: 'post',
		parameters: formpars,
		evalScripts: true
	});
}

function clrlstn(id)
	{
	var plc = 'ltedt' + id;
	var adtd = 'lttd' + id;
	var form = $(plc);
	form.innerHTML='';
	var form = $(adtd);
	form.innerHTML='';
	}

function adupdttblinfo(id,nm,tgs,prc,shp,qty) {
$('itmnm'+id).innerHTML=nm;
$('tags'+id).innerHTML=tgs;
$('prc'+id).innerHTML=prc;
$('shp'+id).innerHTML=shp;
$('qty'+id).innerHTML=qty;
}


function mfshwmssg(id) {

var opens = getElementsByClassName(document.getElementById('mssgstbl'), 'div', 'mfmmssgbdy'); 
var arrs = getElementsByClassName(document, '*', 'msgimg'); 

for(i=0;i<opens.length;i++) {
	opens[i].innerHTML='';
	arrs[i].src = '/img/smuna.gif';
	}

var arimg = $('msgar' + id);
arimg.src = '/img/smunadn.gif';
var plc = 'msgvw' + id;
var url = '/async/viewmessage';
var pars = 'm=' + id;
$(plc).innerHTML = '<img class="vam" src="/img/loadingCir.gif" /> Loading your message...';
var editr = new Ajax.Updater(
	plc,
	url,
	{
		method: 'post',
		parameters: pars,
		evalScripts: true
	});
}


function hidemessages() {

var opens = getElementsByClassName(document.getElementById('mssgstbl'), 'div', 'mfmmssgbdy'); 
var arrs = getElementsByClassName(document, '*', 'msgimg'); 

for(i=0;i<opens.length;i++) {
	opens[i].innerHTML='';
	arrs[i].src = '/img/smuna.gif';
	}
	
}


function mfwlnotes(id,type) {

var plc = 'wlnotes' + id;
var objnotes = $(plc);
var url = '/async/watchlistnotes';
var pars = 'w=' + id + '&type=' + type;
var nts = new Ajax.Updater(
	plc,
	url,
	{
		method: 'get',
		parameters: pars
	});
}


function mfwlsavenotes(id) {

var plc = 'wlnotes' + id;
var form = $('newwlnotes' + id );
var pars = Form.serialize(form);
var url = '/async/watchlistnotes';
var nts = new Ajax.Updater(
	plc,
	url,
	{
		method: 'get',
		parameters: pars
	});
}



function togglechecked(checker,inputClass) {
var inputArray = getElementsByClassName(document,'input',inputClass);
var setter = false;
if (checker.checked==true) {
	setter = true
	}
for(i=0;i<inputArray.length;i++){
		inputArray[i].checked=setter;
	}
}



function submitcheckform(inputClass,postto,method,goname) {
var objcts = getElementsByClassName(document,'input',inputClass);
var myform = document.createElement('form');
myform.setAttribute('name','tempForm');
myform.setAttribute('id','tempForm');
myform.setAttribute('action',postto);
myform.setAttribute('method',method);
for(i=0;i<objcts.length;i++) {
	if(objcts[i].checked==true) {
		var tempinput = document.createElement('input');
		tempinput.setAttribute('name',objcts[i].name);
		tempinput.setAttribute('value',objcts[i].value);
		myform.appendChild(tempinput);
		}
	}
var tempinput = document.createElement('input');
tempinput.setAttribute('name','posted');
tempinput.setAttribute('value','true');
myform.appendChild(tempinput);
var tempinput = document.createElement('input');
tempinput.setAttribute('name',goname);
tempinput.setAttribute('value','true');
myform.appendChild(tempinput);
$('formholder').appendChild(myform);
myform.submit();
}



function addoptpayopt(paymentoption) {
var plc = 'nonintegratedpayments';
var pars = 'newpaymentoption=' + escape(paymentoption);
var url = '/async/setpayopts_optional';
var nts = new Ajax.Updater(
	plc,
	url,
	{
		method: 'get',
		parameters: pars
	});
}

function removepaymentoption(paymentoption) {
var plc = 'nonintegratedpayments';
var pars = 'removepaymentoption=' + escape(paymentoption);
var url = '/async/setpayopts_optional';
var nts = new Ajax.Updater(
	plc,
	url,
	{
		method: 'get',
		parameters: pars
	});
}

function simpletm(mins,id,tense)
	{
	var tns=(parseInt(tense));
	var nummin=Math.abs(parseInt(mins));
	var sgn=((nummin==(parseInt(mins))) ? 1 : -1);
	var hrs=Math.round(nummin/60);
	var dys=Math.round(nummin/1440);
	var outpt=new String;

	if(dys>1 && dys<=90)
		{
		outpt+=(dys+' '+' days');
		}

	else if(dys>90)
		{
		outpt+=('--');
		}
	else if(dys==1)
		{
		outpt+=('1 day');
		}
	
	else
		{
		if(hrs>1)
			{
			outpt+=(hrs+' '+' hours');
			}
		else if(hrs==1)
			{
			outpt+=('1 hour');
			}
		else
			{
			outpt+=('less than 1 hour');
			}
		}

	if(tns*sgn<0)
		{
		outpt+=(' ago');

		if(tns>0)
			{
			outpt=('<span style="color: red; font-weight:900;">'+outpt+'</span>');
			}
		}
	
document.getElementById(id).innerHTML=outpt;

	}


function getnewimage() {
var pars = 'getnewcode=true';
var url = '/async/authimage';
var plc = 'hrimg';
var su = new Ajax.Updater(
	plc,
	url,
	{
		method: 'get',
		parameters: pars,
		evalScripts: true
	});
}


function setnewcode(code) {
$('hrcode').value=code;
}