function payment_menu() {

so_clearInnerHTML(document.getElementById("payment_ul"));
so_clearInnerHTML(document.getElementById("arrow"));



// if current page is greater than total pages...
if (thispage > totalpages) {
	thispage = totalpages; // set current page to last page
	} // end if
// if current page is less than first page...
if (thispage < 1) {
	thispage = 1; // set current page to first page
	} // end if

// the offset of the list, based on current page 
offset = (thispage - 1) * rowsperpage;



for (i=offset; ((i < offset+rowsperpage) && (i < numrows)); i++) {
	
	payment=payment_other[i];
	ID=payment_other_id[i];
	
	// create <li> elements
	list = document.createElement("li"); 
	list.setAttribute("id",'list'+ID); 
	document.getElementById("payment_ul").appendChild(list);

	if (payment_ID == ID) { document.getElementById('list'+ID).style.backgroundColor="#E8E990"; }
	else {
	if ((loop = 1 - loop) == 1) { document.getElementById('list'+ID).style.backgroundColor="#D9E8EE"; }						
	}
	
	// create <a> elements 
	append = '?payment='+payment+'&thispage='+thispage+'&ID='+ID+'&type='+casino_type; 
	if (i<9) {num = '0'+(i+1);} else {num=(i+1);} // add leading zeros to one digit numbers
	linkText = document.createTextNode(num+'. '+payment);					
	links = document.createElement("a"); 
	
	if (casino_type=='') {
	links.setAttribute("href",'/payment-info-page.php'+append);
	links.setAttribute("title",'Learn more about '+payment);			
	}
	else {
	links.setAttribute("href",'/casino-payment-review.php'+append);
	links.setAttribute("title",casino_type+' accepting '+payment);
	}
	
	links.setAttribute("id",'link'+ID); 	
	document.getElementById('list'+ID).appendChild(links);
	document.getElementById('link'+ID).appendChild(linkText);

}
        


/******  build the pagination links ******/
arrowDiv = document.getElementById("arrow");

// if not on page 1, don't show back links
if (thispage > 1) {
// get previous page num
prevpage = thispage - 1;
// show < link to go back to 1 page
spanTag = document.createElement("span");              
spanTag.className ="bar";        
links = document.createElement("a"); 
links.setAttribute("href",'javascript:thispage=prevpage; payment_menu(); void(0)'); // does work with prevp(), but not with payment() - payment is no function ???
links.onclick = payment_menu;
//links.onclick = thispage=prevpage; nextp; // makes thispage=1 upnon first click

spanTag.appendChild(document.createTextNode('<'));
links.appendChild(spanTag); 
arrowDiv.appendChild(links);
} // end if


// range of num links to show
range = 1;
x1 = new Array; 
// loop to show links to range of pages around current page
for (x = ((thispage - range) - 1); x < ((thispage + range)  + 1); x++) {
	// if it's a valid page number...
	if ((x > 0) && (x <= totalpages)) {
		// if we're on current page...
		if (x == thispage) {
		// 'highlight' it but don't make a link
		spanTag = document.createElement("span");              
		spanTag.className ="bar";        
		spanTag.style.marginLeft="3px";
		//links.onclick = "thispage=nextpage; payment; return false"; 
		arrowDiv = document.getElementById("arrow");
		spanTag.appendChild(document.createTextNode(x));
		spanTag.style.backgroundColor='#FCDC5F';
		spanTag.style.color="black";
		arrowDiv.appendChild(spanTag);

		// if not current page...

		} else {
		// make it a link
		spanTag = document.createElement("span");              
		spanTag.className ="bar";        
		links = document.createElement("a");
		links.style.marginLeft="3px";
		links.setAttribute("href",'javascript:thispage='+x+'; payment_menu()');
		arrowDiv = document.getElementById("arrow");
		spanTag.appendChild(document.createTextNode(x));
		links.appendChild(spanTag); 
		arrowDiv.appendChild(links);
		} // end else
	} // end if 
} // end for

// if not on last page, show forward and last page links    
if (thispage != totalpages) {
// get next page
nextpage = thispage + 1;
// echo > link for next page 
spanTag = document.createElement("span");              
spanTag.className ="bar"; 
links = document.createElement("a"); 
links.style.marginLeft="3px";
links.setAttribute("href",'javascript: thispage=nextpage; payment_menu(); void(0)');
//links.onclick = "thispage=nextpage; payment_menu; return false"; 
arrowDiv = document.getElementById("arrow");

spanTag.appendChild(document.createTextNode('>'));
links.appendChild(spanTag); 
arrowDiv.appendChild(links);
} // end if                           

//txt = document.createTextNode('totalpages= '+totalpages+ ' numrows= ' + numrows + ' rowsperpage= '+rowsperpage+' thispage= '+thispage+' prevpage= '+prevpage+' x= '+x+' nextpage= '+nextpage+' offset= '+offset);
//document.getElementById("payment_ul").appendChild(txt); 
}


function so_clearInnerHTML(obj) {
	// perform a shallow clone on obj
	nObj = obj.cloneNode(false);
	// insert the cloned object into the DOM before the original one
	obj.parentNode.insertBefore(nObj,obj);
	// remove the original object
	obj.parentNode.removeChild(obj);
}

