//
//	netforge javascript api
//
function netforge_class() {
	//
	//	get element by id cross browser class
	//
	this.getElementByID = function(id){
		var obj = null;
		if(document.getElementById){
			//	w3c dom method
			obj = document.getElementById(id);
		}else if(document.all){
			//	id's must be unique and not coincide with name
			obj = document.all[id];
		}
		//	will return null if no element exists
		return obj;
	}
	
	//
	//	preloads images
	//
	this.preloadImages = function(){
		var arguments = this.preloadImages.arguments;
		for (var i = 0; i < arguments.length; i++) 
		{
			var image = new Image();
			image.src = arguments[i];
		}
	}
	
	//
	//	addevent
	//
	this.addEvent = function(id, _event){
		
	}
	
	//
	//	writes text into a frame
	//
	this.writeIntoFrame = function(frameid, html) {
		var frame = this.getElementByID(frameid);
		var doc = frame.contentDocument;
        if (doc == undefined || doc == null)
            doc = frame.contentWindow.document;
		
        doc.open();
        doc.write(text);
        doc.close();
	}
	
	//
	//	sets the visibility of a list of elements
	//
	this.setVisibility = function(visible) {
		var arguments = this.setVisibility.arguments;
		this.altlist = Array(arguments.length);
		for (var i = 1; i < arguments.length; i++) 
		{
			var element = this.getElementByID(arguments[i]);
			if(visible == false){
				element.style.visibility = 'hidden'; 
				element.style.display = 'none';
			} else {
				element.style.visibility = 'visible'; 
				element.style.display = '';
			}
		}
	}
	
	//
	//	toggles visibility of multiple element base
	//
	this.toggleVisible = function() {
		var arguments = this.toggleVisible.arguments;
		this.altlist = Array(arguments.length);
		for (var i = 0; i < arguments.length; i++) 
		{
			var element = this.getElementByID(arguments[i]);
			if(element.style.visibility != 'hidden'){
				element.style.visibility = 'hidden'; 
				element.style.display = 'none';
			} else {
				element.style.visibility = 'visible'; 
				element.style.display = '';
			}
		}
	}
	
	//	will be initialized if you include window.js
	this.window = null;
	//	will be initialized if you include slideshow.js
	this.slideshow = null;
	//	will be initialize if you include validate.js
	this.validator = null;
	
	//
	//	loads the plugins for you
	//
	this.installPlugins = function(root){
		var arguments = this.installPlugins.arguments;
		this.altlist = Array(arguments.length);
		for (var i = 1; i < arguments.length; i++) 
		{
			document.write('<script language="javascript" src="'+root+arguments[i]+'.js"></script>');
		}
	}
}

var netforge = new netforge_class();