function scCPinit() {
	var addListener = function() {
		if ( window.addEventListener ) {
			return function(el, type, fn) {
				el.addEventListener(type, fn, false);
			};
		} else if ( window.attachEvent ) {
			return function(el, type, fn) {
				var f = function() {
					fn.call(el, window.event);
				};
				el.attachEvent('on'+type, f);
			};
		} else {
			return function(el, type, fn) {
				el['on'+type] = fn;
			};
		}
	}();
	
	function toggleIns( obj, enbl ) {
		if (obj) {
			var insToToggle = obj.getElementsByTagName("input");
			for (var i = 0, j = insToToggle.length; i < j; i++) {
				insToToggle[i].disabled = !enbl;
			}
		}
	}
	
	function trimIns( ev ) {
		var ins = this.getElementsByTagName("input");
		for (var i = 0, j = ins.length; i < j; i++) {
			if (!ins[i].value) {
				ins[i].disabled = true;
			}
		}
	}
	
	function repaint( ev ) {
		if (window.scCPreqs) {
			for (var i in scCPreqs) {
				var targObj = document.getElementById(i);
				if (targObj) {
					var doOpen = false;
					for (var j = 0, k = scCPreqs[i].length; j < k; j++) {
						var testObj = document.getElementById(scCPreqs[i][j]);
						if (testObj && testObj.checked) {
							doOpen = true;
							break;
						}
					}
					// Toggling now handled by function togglePrintingOpts() in the file qtychkr.js
					if (doOpen) {
						targObj.style.display = "block";
						// toggleIns(targObj, true);
					} else {
						targObj.style.display = "none";
						// toggleIns(targObj);
					}
				}
			}
		}
	}
	
	var customPrint = document.getElementById("customPrint");
	if (customPrint) {
		var insToCheck = customPrint.getElementsByTagName("input");
		if (insToCheck) {
			addListener(insToCheck[0].form, "submit", trimIns);
		}
		for (var g = 0, h = insToCheck.length; g < h; g++) {
			addListener(insToCheck[g], "click", repaint);
		}
		repaint();
	}
}

