
	  google.load("language", "1");
	  function translate(sLang,sObj,dLang,dObj,silent) {
	  	t = getText(sObj);	  	
		  		google.language.translate(t, sLang, dLang, function(result) {
				  if (!result.error) {
				  ret =  result.translation;
				  setText(dObj,ret);
				  } else if(!silent) alert(result.error.message);	  	  					  
		  	});	  	
	  	  	
	  }
	  
	  function translateElements(sLang,dLang,edesc){
		dojo.query(edesc).forEach(
		function(e) {
			if(e.innerHTML.length>3){
				try {
					translate(sLang,e,dLang,e,true);
					} catch(err){}
				}					
		});	
		}	  
	 
	  
	  function getText(e) {		
			var type = typeof e;
			if (type == 'string') return e;
			if (type == 'object') {
				if(e.value) return e.value;
				if(e.innerHTML) return e.innerHTML;
				if(e.getContent) return e.getContent();
			}
			return e;
		}

		function setText(e,t) {
			var type = typeof e;			

			if (type == 'object') {				
				try {e.value = t} catch(err){}
				try {e.innerHTML = t} catch(err){}									
					try {
						var tinyobj = tinyMCE.get(e.id);					
						tinyobj.setContent(t);
					} catch(err){}
				return;		
			}
			e = t
		}
