// JavaScript Document
//place noPrint in class name if you do not want to print it

		function printList(titleStr, listId) {
			var data = document.getElementById(listId);	
			var w = window.open();			
			var d = w.document;
				d.title = titleStr;
			
			var styleSheetElement = d.createElement("link");
				styleSheetElement.rel = "stylesheet";
				styleSheetElement.type = "text/css";
				styleSheetElement.href = "/styles/print.css";
				styleSheetElement.id = "cssSheet";
			d.getElementsByTagName("head")[0].appendChild(styleSheetElement);
			d.getElementById("cssSheet").disabled = 0;
			
			var div = d.createElement("div");			
				div.id = "qa";
			
			printList.convertImages = 1;
			convert(data, d, div);
			
			d.body.appendChild(div);
			
			w.print();
			w.close();
		}
		
		function setClass (n) {
			if (n.parentNode != "[object]") return "parent";
			return "child";
		}
				
		function convert(n, doc, container) {
			printStrings(n);
			return;
			
			function printStrings(n) {
				if (n.nodeType == 3 && n.data.length > 1){
					var p = doc.createElement("p");
						p.className = setClass(n);
					p.appendChild(doc.createTextNode(n.data));
					container.appendChild(p);
				}
				else if (n.nodeType == 1 && !isClass(n, "noPrint")) {
					if (printList.convertImages && n.tagName.toLowerCase() == "img"){
						if (n.width > 600)
							var factor = 600 / n.width;
							
						var img = doc.createElement("img");
							img.src = n.src;						
							img.width = factor?factor*n.width:n.width;
							img.height = factor?factor*n.height:n.height;
						container.appendChild(img);
					}
					for(var m = n.firstChild; m != null; m = m.nextSibling){
						printStrings(m);
					}
				}
			}
		}
		
		function isClass (str, qry) {
			var classes = str.className.split(" ");
			for (var i=0; i < classes.length; i++) {
				if (classes[i].toLowerCase() == qry.toLowerCase())
					return 1;
			}
			return 0;
		}
		
		printList.convertImages = 0;
