var jwj = {};

jwj.board = {};
	
	jwj.board.setDesignArea = function(designArea, content, visualArea) {
		designArea.document.designMode = "On";
		designArea.document.open("text/html");
		designArea.document.write("<STYLE>P {margin-top:2; margin-bottom:2;}</STYLE>\n");
		designArea.document.close();
		designArea.document.body.style.cssText = "font:normal 12px 굴림,Gulim,Verdana,Arial; background-color:FFFFFF; " +
				"color:555555; border:1px solid C9C9C9; width:614; height:300; padding:3 0 0 2;";
		designArea.document.body.innerHTML = content.value;
		visualArea.style.visibility = "visible";
	}
	
	jwj.board.checkHtmlPro = function(designArea, content, useHtml, visualArea, sourceArea) {
		if ( useHtml[0].checked == true ) {
			designArea.document.body.innerHTML = content.value;
			visualArea.style.visibility = "visible";
			sourceArea.style.visibility = "hidden";
		} else if ( useHtml[1].checked == true ) {
			content.value = designArea.document.body.innerHTML;
			visualArea.style.visibility = "hidden";
			sourceArea.style.visibility = "visible";
		}
	}


jwj.validator = {};

	jwj.validator.validNull = function(element) {
		var param = element.value;
		var strBuffer = "";
		for ( var i = 0; i < param.length; i++ ) {
			var c = param.charAt(i);
			if ( c != " " ) {
				strBuffer = c;
			}
		}
		return strBuffer == "" ? true : false;
	}
	
	jwj.validator.validNumber = function(element) {
		var param = element.value;
		return isNaN(param) || param.indexOf(" ")>=0;
	}
	
	jwj.validator.validEmail = function(element) {
		var param = element.value;
		var regExp = /(\S+)@(\S+)\.(\S+)/;
		return !regExp.test(param) && !param.indexOf(" ")>=0;
	}
	
	jwj.validator.validArray = function(element) {
		var result = true;
		if ( element.length != undefined ) {
			for ( var i = 0; i < element.length; i++ ) {
				if ( element[i].checked == true ) {
					result = false;
					break;
				}
			}
		}
		return result;
	}
	
	jwj.validator.validExtension = function (privateExtension, insertExtension) {
		var strExtension = insertExtension.substring(insertExtension.lastIndexOf(".")+1, insertExtension.length);
		var boolExt = true;
		for ( var i = 0; i < privateExtension.length; i++ ) {
			if ( privateExtension[i] == strExtension.toLowerCase() ) {
				boolExt = false;
				break;
			}
		}
		return boolExt;
	}
	
jwj.util = {};

	jwj.util.setMultiFormEncoding = function(element) {
		element.encoding = "multipart/form-data";
	}
	
	jwj.util.setDefaultFormEncoding = function(element) {
		element.encoding = "application/x-www-form-urlencoded";
	}
	
	jwj.util.getSelectedEa = function(element) {
		var result = 0;
		if ( element.options.length != undefined ) {
			for ( var i = 0; i < element.options.length; i++ ) {
				if ( element.options[i].selected == true ) {
					result++;
				}
			}
		}
		return result;
	}
	
	jwj.util.addOption = function(element, paramValue, paramText) {
		var opt = document.createElement("option");
		opt.setAttribute("value", paramValue);
		var txt = document.createTextNode(paramText);
		opt.appendChild(txt);
		element.appendChild(opt);
	}
	
	jwj.util.removeOption = function(element, index) {
		var opt = element.getElementsByTagName("option");
		if ( opt.length != "undefined" ) {
			element.removeChild(opt[index]);
		}
	}
	
	jwj.util.removeOptions = function(element) {
		var opt = element.getElementsByTagName("option");
		var len = opt.length;
		for ( var i = 0; i < len; i++ ) {
			if ( opt.length != "undefined" ) {
				element.removeChild(opt[0]);
			}
		}
	}
	
	jwj.util.getOptionText = function(element) {
		return element.options[element.options.selectedIndex].text;
	}
	
	jwj.util.removeCheckbox = function(element) {
		if ( element.length == undefined ) {
			element.checked = false;
		} else {
			for ( var i = 0; i < element.length; i++ ) {
				element[i].checked = false;
			}
		}
	}
	
	jwj.util.getByteLength = function(element) {
		var byteLength = 0;
		for (var inx = 0; inx < element.value.length; inx++) {
			var oneChar = escape(element.value.charAt(inx));
			if ( oneChar.length == 1 ) {
				byteLength ++;
			} else if (oneChar.indexOf("%u") != -1) {
				byteLength += 2;
			} else if (oneChar.indexOf("%") != -1) {
				byteLength += oneChar.length/3;
			}
		}
		return byteLength;
	}
	

function $N(param) {
	return document.getElementsByName(param);
}

function $D(param) {
	return dojo.widget.byId(param);
}
