﻿///
// script to hide many things for authenticated user or not
///
var form = document.getElementById('aspnetForm');
var action = unescape(form.getAttribute('action'));
var start = action.lastIndexOf('Source') + 7;
var stop = action.lastIndexOf('.aspx');
var origin = action.substring(start,stop);
var mTable;
// if origin is from pages - user view than hide many things
if(origin.lastIndexOf('Pages') != -1 || origin.lastIndexOf('pages') != -1) {
	///
	// hide toolbars
	///
	document.getElementById(getIdElementLike('toolBarTbltop')).style.display = 'none';
	var tables = document.getElementsByTagName('table');
	for(var x in tables) {
		if(tables[x].className == 'ms-toolbar') 
		{
			tables[x].style.display = 'none';
		}
		if(tables[x].className == 'ms-formtoolbar') 
		{
			//tables[x].style.display = 'none';
		}
		if(tables[x].className == 'ms-formtable') 
		{
			mTable = tables[x];
		}
	} 			
	
	///
	// hide several unused fields when displaying data to user
	///
	var idx = 12;
	mTable.rows[idx++].style.display = 'none';
	mTable.rows[idx++].style.display = 'none';
	mTable.rows[idx++].style.display = 'none';
	mTable.rows[idx++].style.display = 'none';
	mTable.rows[idx++].style.display = 'none';
	mTable.rows[idx++].style.display = 'none';
	
	///
	//	hide description row if its empty
	///
	var sDesc = mTable.rows[1].cells[1].innerHTML + '';
	var sTitle;
	if(navigator.appName == 'Microsoft Internet Explorer') {
		var sContent = sDesc.substring(sDesc.indexOf('<DIV>') + 5,sDesc.lastIndexOf('</DIV>')); 
		sTitle = sContent.substring(sContent.indexOf('<DIV>') + 5,sContent.lastIndexOf('</DIV>'));
	}
	else {
		var sContent = sDesc.substring(sDesc.indexOf('<div dir="">') + 5,sDesc.lastIndexOf('</div>')); 
		sTitle = sContent.substring(sContent.indexOf('<div>') + 5,sContent.lastIndexOf('</div>'));
	}
	
	sDesc = sTitle.replace('&nbsp;','');
	if(trim(sDesc) == '') {
		mTable.rows[1].style.display = 'none';
	}
	
	///
	// hide fields that don't have any value in it
	///
	for(var z in mTable.rows) {
		if(mTable.rows[z].innerHTML) {
			var sInner = mTable.rows[z].cells[1].innerHTML + '';
			var subInner = sInner.substring(sInner.indexOf('-->') + 3);
			subInner = subInner.replace('&nbsp;','');
			if(trim(subInner) ==  '') {
				mTable.rows[z].style.display = 'none';
			}
		}
	}

	///
	// script to hide button in details view
	///
	var alldayElement = document.getElementById('SPFieldAllDayEvent');
	var recurrenceElement = document.getElementById('SPFieldRecurrence');
	var workspaceElement = document.getElementById('SPFieldCrossProjectLink');
	
	alldayElement.parentNode.style.display = 'none';
	recurrenceElement.parentNode.style.display = 'none';
	workspaceElement.parentNode.style.display = 'none';
	
	var inputs = document.getElementsByTagName('input');
	for(var y in inputs) {
		if(inputs[y].className == 'ms-ButtonHeightWidth') {
			if(inputs[y].id == getIdElementLike('idIOGoBack')) {
				inputs[y].parentNode.parentNode.style.display = 'none';
				break;
			}
		}
	}
}

///***********************************************
// reform start time and end time for all day event
///
var tables = document.getElementsByTagName('table');
var table;
for(var i in tables) 
{
	if(tables[i].className == 'ms-formtable') 
	{
		table = tables[i];
	}
}	

// start time		
var sRow = 2;
var eRow = sRow + 1;
var sTime = table.rows[sRow].cells[1].innerHTML;
var sStart = sTime.indexOf('>') + 1;
var sEnd = sTime.lastIndexOf('/') + 5;
var startTime = sTime.substring(sStart,sEnd);
if(alldayElement.innerHTML.lastIndexOf('Yes') != -1) 
{
	table.rows[sRow].cells[1].innerHTML = GetDateString(startTime);
}
else 
{
	var sHour = sTime.substring(sEnd + 1);
	table.rows[sRow].cells[1].innerHTML = GetDateString(startTime) + ' ' + sHour;
}

// end time
var eTime = table.rows[eRow].cells[1].innerHTML;
var eStart = eTime.indexOf('>') + 1;
var eEnd = eTime.lastIndexOf('/') + 5;
var endTime = eTime.substring(eStart,eEnd);
if(alldayElement.innerHTML.lastIndexOf('Yes') != -1) 
{
	table.rows[eRow].cells[1].innerHTML = GetDateString(endTime);					
}
else 
{
	var eHour = eTime.substring(eEnd + 1);
	table.rows[eRow].cells[1].innerHTML = GetDateString(endTime) + ' ' + eHour;
}
//// *************************************************************

///////
///Sharepoint function
////////
function STSNavigate(Url)
{
//	if (isPortalTemplatePage(Url))
//		window.top.location=STSPageUrlValidation(Url);
//	else
		window.location=STSPageUrlValidation(Url);
}
function STSPageUrlValidation(url)
{
	return PageUrlValidation(url);
}
function PageUrlValidation(url)
{
	if (url.substr(0, 4) !="http" && url.substr(0,1) !="/")
	{
		var L_InvalidPageUrl_Text="Invalid page URL: ";
		alert(L_InvalidPageUrl_Text);
		return "";
	}
	else
		return url;
}







