// global variables //
var TIMER = 20;
var SPEED = 12;
var WRAPPER = 'content';

// calculate the current window width //
function pageWidth() {
	return window.innerWidth != null ? window.innerWidth : document.documentElement && document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body != null ? document.body.clientWidth : null;
}

// calculate the current window height //
function pageHeight() {
	return window.innerHeight != null? window.innerHeight : document.documentElement && document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body != null? document.body.clientHeight : null;
}

// calculate the current window vertical offset //
function topPosition() {
	return typeof window.pageYOffset != 'undefined' ? window.pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop ? document.body.scrollTop : 0;
}

// calculate the position starting at the left of the window //
function leftPosition() {
	return typeof window.pageXOffset != 'undefined' ? window.pageXOffset : document.documentElement && document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft ? document.body.scrollLeft : 0;
}

// build/show the dialog box, populate the data and call the fadeDialog function //
function showDialog(title,message,type,el,autohide) {
	if(!type) {
		type = 'error';
	}
	var dialog;
	var dialogheader;
	var dialogclose;
	var dialogtitle;
	var dialogcontent;
	var dialogmask;

	if(!document.getElementById('dialog')) {
		dialog = document.createElement('div');
		dialog.id = 'dialog';

		dialogheader = document.createElement('div');
		dialogheader.id = 'dialog-header';
		dialogtitle = document.createElement('div');
		dialogtitle.id = 'dialog-title';
		dialogclose = document.createElement('div');
		dialogclose.id = 'dialog-close'
		dialogcontent = document.createElement('div');
		dialogcontent.id = 'dialog-content';
		dialogmask = document.createElement('div');
		dialogmask.id = 'dialog-mask';
		document.body.appendChild(dialogmask);
		document.body.appendChild(dialog);
		dialog.appendChild(dialogheader);
		dialogheader.appendChild(dialogtitle);
		dialogheader.appendChild(dialogclose);
		dialog.appendChild(dialogcontent);
		dialogclose.setAttribute('onclick','hideDialog()');
		dialogclose.onclick = hideDialog;
		dialog.onclick = hideDialog;
		//dialogcontent.onclick = hideDialog;
	} else {
		dialog = document.getElementById('dialog');
		dialogheader = document.getElementById('dialog-header');
		dialogtitle = document.getElementById('dialog-title');
		dialogclose = document.getElementById('dialog-close');
		dialogcontent = document.getElementById('dialog-content');
		dialogmask = document.getElementById('dialog-mask');
		dialogmask.style.visibility = "visible";
		dialogmask.style.display = "block";
		dialog.style.visibility = "visible";
		dialog.style.display = "block";
	}

	dialog.style.opacity = .00;
	dialog.style.filter = 'alpha(opacity=0)';
	dialog.alpha = 0;

	dialogheader.className = type + "header";
	dialogtitle.innerHTML = title;
	dialogcontent.className = type;
	dialogcontent.innerHTML = message;
	

	//alert('qqq');

	/*dialog.timer = setInterval("fadeDialog(0)", );
	clearInterval(dialog.timer);
	*/
	//alert(message);

	var element = $(el);

	var dialWidth = element.width;
	var dialHeight = element.height;


	if (dialWidth < 70 ) {
		dialWidth = 700;
		element.width = 700;
	}
	if (dialHeight < 70 ) {
		dialHeight = 500;
		element.height = 500;
	}


	dialog.style.width = dialWidth + 14 +'px';
	dialogheader.style.width = dialWidth +'px';
	dialogcontent.style.height = dialHeight+'px';

	var width = pageWidth();
	var height = pageHeight();
	var left = leftPosition();
	var top = topPosition();
	var dialogwidth = dialog.offsetWidth;
	var dialogheight = dialog.offsetHeight;

	var topposition = top + (height / 2) - (dialogheight / 2);
	var leftposition = left + (width / 2) - (dialogwidth / 2);
	
	if (dialogheight > screen.availHeight){
		topposition = top;
	}

	dialog.style.top = topposition + "px";
	dialog.style.left = leftposition + "px";

	var content = document.getElementById(WRAPPER);
	dialogmask.style.height = content.offsetHeight + 'px';

	//showPlayer();

	dialog.timer = setInterval("fadeDialog(1)", TIMER);
	if(autohide) {
		dialogclose.style.visibility = "hidden";
		window.setTimeout("hideDialog()", (autohide * 1000));
	} else {
		dialogclose.style.visibility = "visible";
	}
}


function showVideoDialog(title,message,hgt,wdh,autohide) {

	var dialog;
	var dialogheader;
	var dialogclose;
	var dialogtitle;
	var dialogcontent;
	var dialogmask;
	if(!document.getElementById('dialog')) {
		dialog = document.createElement('div');
		dialog.id = 'dialog';
		dialogheader = document.createElement('div');
		dialogheader.id = 'dialog-header';
		dialogtitle = document.createElement('div');
		dialogtitle.id = 'dialog-title';
		dialogclose = document.createElement('div');
		dialogclose.id = 'dialog-close'
		dialogcontent = document.createElement('div');
		dialogcontent.id = 'dialog-content';
		dialogmask = document.createElement('div');
		dialogmask.id = 'dialog-mask';
		document.body.appendChild(dialogmask);
		document.body.appendChild(dialog);
		dialog.appendChild(dialogheader);
		dialogheader.appendChild(dialogtitle);
		dialogheader.appendChild(dialogclose);
		dialog.appendChild(dialogcontent);
		dialogclose.setAttribute('onclick','hideDialog()');
		dialogclose.onclick = hideDialog;
		//dialog.onclick = hideDialog;
	} else {
		dialog = document.getElementById('dialog');
		dialogheader = document.getElementById('dialog-header');
		dialogtitle = document.getElementById('dialog-title');
		dialogclose = document.getElementById('dialog-close');
		dialogcontent = document.getElementById('dialog-content');
		dialogmask = document.getElementById('dialog-mask');
		dialogmask.style.visibility = "visible";
		dialogmask.style.display = "block";
		dialog.style.visibility = "visible";
		dialog.style.display = "block";
	}

	dialog.style.opacity = .00;
	dialog.style.filter = 'alpha(opacity=0)';
	dialog.alpha = 0;

	var type = "success";
	dialogheader.className = type + "header";
	dialogtitle.innerHTML = title;
	dialogcontent.className = type;
	dialogcontent.innerHTML = message;

	new Draggable('dialog');
	
	/*window.setTimeout("dialogcontent.innerHTML = message;", 5000);

	dialog.timer = setInterval("fadeDialog(0)", );
	clearInterval(dialog.timer);
	*/
	//alert(message);



	var dialWidth = wdh;
	var dialHeight = hgt;


	dialog.style.width = dialWidth + 14 +'px';
	dialogheader.style.width = dialWidth +'px';
	dialogcontent.style.height = dialHeight+'px';

	var width = pageWidth();
	var height = pageHeight();
	var left = leftPosition();
	var top = topPosition();
	var dialogwidth = dialog.offsetWidth;
	var dialogheight = dialog.offsetHeight;

	var topposition = top + (height / 2) - (dialogheight / 2);
	var leftposition = left + (width / 2) - (dialogwidth / 2);

	dialog.style.top = topposition + "px";
	dialog.style.left = leftposition + "px";

	var content = document.getElementById(WRAPPER);
	dialogmask.style.height = content.offsetHeight + 'px';


	//showPlayer();

	dialog.timer = setInterval("fadeDialog(1)", TIMER);
	if(autohide) {
		dialogclose.style.visibility = "hidden";
		window.setTimeout("hideDialog()", (autohide * 1000));
	} else {
		dialogclose.style.visibility = "visible";
	}
}


// hide the dialog box //
function hideDialog() {
	var dialog = document.getElementById('dialog');
	clearInterval(dialog.timer);
	dialog.timer = setInterval("fadeDialog(0)", TIMER);
}

// fade-in the dialog box //
function fadeDialog(flag) {
	if(flag == null) {
		flag = 1;
	}
	var dialog = document.getElementById('dialog');

	var value;
	if(flag == 1) {
		value = dialog.alpha + SPEED;
	} else {
		value = dialog.alpha - SPEED;
	}
	dialog.alpha = value;
	dialog.style.opacity = (value / 100);

	dialog.style.filter = 'alpha(opacity=' + value + ')';
	if(value >= 99) {
		clearInterval(dialog.timer);
		dialog.timer = null;
	} else if(value <= 1) {
		//alert('mmm');
		//dialogcontent.removeChild(dialogcontent.lastChild);
		//dialog.style.visibility = "hidden";
		dialog.style.display = "none";
		//document.getElementById('dialog-mask').style.visibility = "hidden";
		document.getElementById('dialog-mask').style.display = "none";
		clearInterval(dialog.timer);
		//dialogcontent.removeChild(dialogcontent.lastChild);
		//alert('mmm');
		$('dialog').remove();
		$('dialog-mask').remove();
		/*	delete dialog;
		delete dialogcontent;*/
	};


}

function showPlayer(videoName){
	var s1 = new SWFObject("http://sharprint.ru/mediaplayer/mediaplayer.swf","mediaplayer","520","480","7");
	s1.addParam("allowfullscreen","true");
	s1.addVariable("width","520");
	s1.addVariable("height","480");
	s1.addVariable("loop","true");
	s1.addVariable("quality ","autolow");
	s1.addParam("wmode", "transparent");
	s1.addVariable("file","http://sharprint.ru/media/gallery/video/video_"+videoName+".flv");
	s1.addVariable("image","http://sharprint.ru/media/gallery/video/img_"+videoName+".jpg");
	s1.write("video");
}
