function Parameter (parName, parValue) {
	this.content = parName + "=\"" + parValue + "\"";
}
Parameter.prototype.toString = function() {
	return this.content;
}

function Tag (tagType, tagContent) {
	this.tagType = tagType;
	this.tagContent = tagContent;
	this.parameters = new Array();
}
Tag.prototype.toString = function() {
	var firstTag = "<" + this.tagType;
	if (this.parameters.length > 0) {
		for (var i=0; i < this.parameters.length; i++) {
			firstTag += " " + this.parameters[i].toString();
		}
		firstTag +=">";
	} else {
		firstTag += ">";
	}
    return firstTag + this.tagContent.toString() + "</" + this.tagType + ">";
}
Tag.prototype.addParam = function (param) {
	this.parameters.push(param);
}

function SingleTag (tagType) {
	this.tagType = tagType;
	this.parameters = new Array();
}
SingleTag.prototype.toString = function() {
	var firstTag = "<" + this.tagType;
	if (this.parameters.length > 0) {
		for (var i=0; i < this.parameters.length; i++) {
			firstTag += " " + this.parameters[i].toString();
		}
		firstTag +=" />";
	} else {
		firstTag += " />";
	}
    return firstTag;
}
SingleTag.prototype.addParam = function (param) {
	this.parameters.push(param);
}

function Text (txt) {
	this.content = txt;
}
Text.prototype.toString = function() {
	return this.content;
}

function fillForm() {
	var cfRoot = document.getElementById("cf");
	var content;
	
	var tagNaamText = new Tag("td","Naam:");
	var tagNaamFormField = new SingleTag("input");
	tagNaamFormField.addParam(new Parameter("type","text"));
	tagNaamFormField.addParam(new Parameter("name","snick"));
	tagNaamFormField.addParam(new Parameter("class","short"));
	var tagNaamForm = new Tag("td",tagNaamFormField);
	var tagNaamRow = new Tag("tr",new Text (tagNaamText.toString() + tagNaamForm.toString()));
	
	var tagImageText = new Tag("td","&nbsp;");
	var tagImageFormField = new SingleTag("img");
	tagImageFormField.addParam(new Parameter("src","security-image.php?width=144"));
	tagImageFormField.addParam(new Parameter("width","144"));
	tagImageFormField.addParam(new Parameter("height","30"));
	tagImageFormField.addParam(new Parameter("alt","Security Image"));
	var tagImageForm = new Tag("td",new Text (tagImageFormField.toString() + "<br/>Typ de code die in bovenstaande afbeelding staat over in onderstaand tekstveld:"));
	var tagImageRow = new Tag("tr",new Text (tagImageText.toString() + tagImageForm.toString()));
	
	var tagCodeText = new Tag("td","Code:");
	var tagCodeFormField = new SingleTag("input");
	tagCodeFormField.addParam(new Parameter("type","text"));
	tagCodeFormField.addParam(new Parameter("name","scode"));
	var tagCodeForm = new Tag("td",tagCodeFormField);
	var tagCodeRow = new Tag("tr",new Text (tagCodeText.toString() + tagCodeForm.toString()));
	
	var tagCommentText = new Tag("td","Reactie:");
	var tagCommentFormField = new Tag("textarea","");
	tagCommentFormField.addParam(new Parameter("class","short"));
	tagCommentFormField.addParam(new Parameter("name","scomment"));
	var tagCommentForm = new Tag("td",tagCommentFormField);
	var tagCommentRow = new Tag("tr",new Text (tagCommentText.toString() + tagCommentForm.toString()));
	
	var tagButtonText = new Tag("td","&nbsp;");
	var tagButtonFormField = new SingleTag("input");
	tagButtonFormField.addParam(new Parameter("type","submit"));
	tagButtonFormField.addParam(new Parameter("value","Reageer!"));
	tagButtonFormField.addParam(new Parameter("class","button"));
	tagButtonFormField.addParam(new Parameter("name","postit"));
	var tagButtonForm = new Tag("td", new Text("<br />" + tagButtonFormField.toString()));
	tagButtonForm.addParam(new Parameter("class","normal"));
	var tagButtonRow = new Tag("tr",new Text (tagButtonText.toString() + tagButtonForm.toString()));
	
	var table = new Tag("table", new Text(tagNaamRow.toString() + tagImageRow.toString() + tagCodeRow.toString() + tagCommentRow.toString() + tagButtonRow.toString()));
	
	content = table.toString();
	cfRoot.innerHTML = content;
}

function clearForm() {
	var cfRoot = document.getElementById("cf");
	cfRoot.innerHTML = "";
}