function Community(){
	var _self = this;
	var _elementToShare = new Object();
	var _whereToAdd = "";
	var _type = ""
	
	this.shareElement = function(element,whereToAdd, type){		
		_whereToAdd = whereToAdd;
		_type = type;
		var elemHolderDiv = element.properties['holderDiv'];
		var elemWidth = parseInt(elemHolderDiv.style.width);
		var elemHeight = parseInt(elemHolderDiv.style.height);
		_elementToShare['element'] = element;
		_elementToShare['top'] = parseInt(elemHolderDiv.style.top);
		_elementToShare['left'] = parseInt(elemHolderDiv.style.left);
		
		var holder = document.getElementById("communityElementHolder");
		var div = document.getElementById("communityElementDiv")
		
		holder.style.height = elemHeight + 50;
		div.style.height = elemHeight + 220;
		elemHolderDiv.style.top = 25;
			
		if(elemWidth < 401){
			 elemHolderDiv.style.left = (380-elemWidth)/2;
			 holder.style.width = 380;
			 div.style.width = 400;
		}else{
			holder.style.width = elemWidth + 20;
			div.style.width = elemWidth + 40;
			elemHolderDiv.style.left = 10;
		}
		holder.appendChild(element.properties['holderDiv']);
		displayShareMenu()
	}
	this.shareTemplate = function(whereToAdd, type)
	{
		_whereToAdd = whereToAdd;
		_type = type;
		displayShareMenu()
	}
	
	function displayShareMenu()
	{
		var title = document.getElementById("addElementToCommunityTitle"); 
		if(_type == "element")
		{
			if(_whereToAdd == "community")
				title.innerHTML = "Add Element To Community";
			else			
				title.innerHTML = "Add Element To My Elements";
		}
		else
		{
			if(_whereToAdd == "community")
				title.innerHTML = "Share Website with Community";
			else			
				title.innerHTML = "Add Website To My Elements";
		}			
			
		document.getElementById("communityElementTags").value = "";
		
		var div = document.getElementById("communityElementDiv")
		div.style.display = "block";
		_utilities.centerObject(div);
		_utilities.displayCover();
	}
	
	this.hideAddElementDiv = function()
	{
		if(_type == "element"){
			var element =  _elementToShare['element']
			var parentElement = _elementsManager.getElementFromElementsTable(element.properties['parentId']);
			element.appendTo(parentElement.properties['holderDiv']);
			element.setPosition(_elementToShare['top'],_elementToShare['left']);
			_elementsManager.selectElementObj(element);
		}
		
		document.getElementById("communityElementDiv").style.display = "none";
		_utilities.hideCover();
	}
	
	this.addElementToCommunity = function()
	{
		var tags = document.getElementById("communityElementTags").value;
		if(_type == "element")
		{
			var element = _elementToShare['element']
			var oldLeftPos = element.properties['holderDiv'].style.left;
			var oldTopPos  = element.properties['holderDiv'].style.top;
			var oldParent  = element.properties['parentId']
			element.setPosition(0,0);
			element.properties['parentId'] = 'mainPage';
			
			var servlet = "AddToCommunityElements";
			if(_whereToAdd == "workspace") servlet = "AddToMyElements";
			_ajax.ajaxCall_process(servlet,element.toXML(),"&tags=" + tags +"&projId="+_pageInfo['projId']+"&projType="+_pageInfo['projType'],"_community.shareElementResponse")
			
			element.setPosition(oldTopPos,oldLeftPos);
			element.properties['parentId'] = oldParent;
		}
	}
	this.shareElementResponse = function(responseText){
		alert(responseText);
	    _self.hideAddElementDiv()
	}
	this.shareTemplateResponse = function(responseText){
		alert(responseText);
	}
	
	this.showTemplatePrompt = function(option){
		_whereToAdd = option;
		var templatePrompt = document.getElementById("shareTemplate_div");
		_utilities.centerObject(templatePrompt);
		_utilities.displayCover();
		templatePrompt.style.display = "block";
	}
	this.hideTemplatePrompt = function(){
		document.getElementById("shareTemplate_div").style.display = "none";
		_utilities.hideCover();
	}
	
	this.shareTemplate = function(){
		var servlet = "AddToCommunityTemplates";
		if(_whereToAdd == "myElements") servlet = "AddToMyTemplates";
		var designer = document.getElementById("designerName_template").value;
		var link = document.getElementById("designerLink_template").value;
		_ajax.ajaxCall_process(servlet,_utilities.createPageXML(),"&designer=" + designer+"&link="+link,"_community.setTemplateResponse")
		_self.hideTemplatePrompt();
	}
	this.setTemplateResponse = function(responseText){
		if(responseText == "1") alert("Template uploaded successfully.");
		else alert("There was a problem uploading the template.");
	}
	
}

