// following code is MIT licensed (C) Gary Haran 2007
/**
* Provide the same behavior as window.scrollTo to divs with overflow without removing
* the ability to scroll a page to a given element.
*/
Element.addMethods({
  scrollTo: function(element, left, top){
	var element = $(element);
	if (arguments.length == 1){
	  var pos = element.cumulativeOffset();
	  window.scrollTo(pos[0], pos[1]);
	} else {
	  element.scrollLeft = left;
	  element.scrollTop  = top;
	}
	return element;
  }
});

/**
* Effect.Scroll allows you to animate scrolling on a page (or div w/ overflow: scroll || auto)
*/
Effect.Scroll = Class.create();
Object.extend(Object.extend(Effect.Scroll.prototype, Effect.Base.prototype), {
  initialize: function(element) {
	this.element = $(element);
	if(!this.element) throw(Effect._elementDoesNotExistError);
	this.start(Object.extend({x: 0, y: 0}, arguments[1] || {}));
  },
  setup: function() {
	var scrollOffsets = (this.element == window) 
				? document.viewport.getScrollOffsets() 
				: Element._returnOffset(this.element.scrollLeft, this.element.scrollTop) ;
	this.originalScrollLeft = scrollOffsets.left;
	this.originalScrollTop  = scrollOffsets.top;
  },
  update: function(pos) {
	this.element.scrollTo(Math.round(this.options.x * pos + this.originalScrollLeft), Math.round(this.options.y * pos + this.originalScrollTop));
  }
});

// Smoothly scroll the window to the next step
scrollMeTo = function(elm) {
	if (!$(elm)) {alert('Error: element does not exist.');return;}
	var position = $(elm).cumulativeOffset();
	var position2 = $(elm).cumulativeScrollOffset();
	new Effect.Scroll(window, { y: position.top-position2.top-100, afterFinish: function(){/*alert('done');*/}, duration: 0.8 });
}
function isValidPhone(strPhone) {
	var regPhone = /^(\+\d)*\s*(\(\d{3}\)\s*)*\d{3}(-{0,1}|\s{0,1})\d{2}(-{0,1}|\s{0,1})\d{2}$/;
	return strPhone.match(regPhone);
}

function isValidEmail(str) {
   return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
}
function playVideo(vid) {
	if (vid == 1) {
		var html = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="1121" height="846"><param name="movie" value="getting_started.swf" /><param name="quality" value="high" /><param name="play" value="true" /><embed src="getting_started.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="1121" height="846"></embed></object>';
		var width = '1121';
		var height = '846';
	} else {
		return;
	}
	var createBox = new boxOverlay({
		width:(parseInt(width)+12)+'px',
		height:height+'px',
		content:'<div style="border:6px solid white;background-color:white;position:relative;"><div style="position:absolute;width:125px;height:65px;right:0px;top:-50px;z-index:34;cursor:pointer;" onclick="removeOverlay();"><img src="/images/sb_button_close.png"></div>'+html+'</div>'
	});
	createBox.init();
}














function modifyTitleAndKeywords() {
	var f = ['	<div class="title">Title, slogan, keywords, description</div>',
			 '		<div style="padding-top:20px;"></div>',
			 '		<div style="position:relative;">',
			 '		<table width="100%">',
			 '			<tr>',
			 '				<td valign="middle">',
			 '					<div style="font-size:12px;color:#999;font-weight:bold;margin-bottom:3px;margin-top:7px;">Title</div>',
			 '					<input type="text" class="text" style="width:600px;" value="'+siteTitle+'" id="tk_title">',
			 '					<div style="font-size:12px;color:#999;font-weight:bold;margin-bottom:3px;margin-top:7px;">Slogan</div>',
			 '					<input type="text" class="text" style="width:600px;" value="'+siteSlogan+'" id="tk_slogan">',
			 '					<div style="font-size:12px;color:#999;font-weight:bold;margin-bottom:3px;margin-top:7px;">Keywords</div>',
			 '					<input type="text" class="text" style="width:600px;" value="'+siteKeywords+'" id="tk_keywords">',
			 '					<div style="font-size:12px;color:#999;font-weight:bold;margin-bottom:3px;margin-top:7px;">Description</div>',
			 '					<input type="text" class="text" style="width:600px;" value="'+siteDescription+'" id="tk_description">',
			 '				</td>',
			 '			</tr>',
			 '		</table>',
			 '		<div align="right" style="padding-top:5px;"><img src="/wwwroot/r/relyoncsi.com/sitebuilder/images/button_save.png" style="cursor:pointer;" onclick="saveTitleAndKeywords()"></div>',
			 '	</div>'];
	var createBox = new boxOverlay({
		width:'650px',
		height:'435px',
		content:'<div class="box"><div class="close" onclick="removeOverlay();"><img src="/wwwroot/r/relyoncsi.com/sitebuilder/images/box_close.png"></div>'+f.join('')+'</div>'
	});
	createBox.init();
	// Variables
	var _tk_title = $('tk_title');
	// Events
	Event.observe(_tk_title,'keypress',function(e) {if(e.keyCode==13){saveTitleAndKeywords();}});
	Event.observe($('tk_slogan'),'keypress',function(e) {if(e.keyCode==13){saveTitleAndKeywords();}});
	Event.observe($('tk_keywords'),'keypress',function(e) {if(e.keyCode==13){saveTitleAndKeywords();}});
	Event.observe($('tk_description'),'keypress',function(e) {if(e.keyCode==13){saveTitleAndKeywords();}});
	// Bring focus to input box
	_tk_title.focus();
}
function saveTitleAndKeywords() {
	_saving();
	siteTitle = $('tk_title').value;
	siteSlogan = $('tk_slogan').value;
	siteKeywords = $('tk_keywords').value;
	siteDescription = $('tk_description').value;
	
	new Ajax.Request('/wwwroot/r/relyoncsi.com/sitebuilder/editor/account/ajax/modifytitlekeywords.php',{
		postBody:'&title='+escape(siteTitle)+'&slogan='+escape(siteSlogan)+'&keywords='+escape(siteKeywords)+'&description='+escape(siteDescription),
		onSuccess:function(transport) {
			eval(transport.responseText);
			removeOverlay();
		},
		onException:function(transport) {
			removeOverlay();
			error('There was a problem saving your information, please try again soon. An error report has been generated.');
		}
	});
}