/* Marian M.Bida / marian [dot] bida [at] gmail [dot] com */
/* from common.js */
function goUserUpdatePassword()
{
	var msg = '';
	var red = '#ff0000';
	e = document.getElementById('updatePassword').elements;
	if (e['password'].value=='') {
		msg += '- "Password" is required field...\n';
		e['password'].style.borderColor=red;
	} else {
		e['password'].style.border='none';
	}

	if ((e['passconf'].value=='') && (e['password'].value!=e['passconf'].value)){
		msg += '- "Passwords do not match or not filled properly" is required field...\n';
		e['passconf'].style.borderColor = red;
	} else {
		e['passconf'].style.border = 'none';
	}
	if (msg != '') {
		alert(msg);
		return false;
	}
	return true;
}
function goUserUpdateContact()
{
	var msg='';
	var red='#ff0000';
	e = document.getElementById('updateContact').elements;
	if (e['tel'].value=='') {
		msg += '- "Telephone" is required field...\n';
		e['tel'].style.borderColor=red;
	} else {
		e['tel'].style.border='none';
	}
	if (!/^[\w\.\-]+@[\w\.\-]+\.[a-z]+$/.test(e['email'].value)) {
		msg += "- Email address\n";
		e['email'].style.borderColor=red;
		e['email'].value='';
	} else {
		e['email'].style.border='none';
	}
	if (msg != '') {
		alert(msg);
		return false;
	}
	return true;
}
function goUserUpdatePersonal()
{
	var msg='';
	var red='#ff0000';
	e = document.getElementById('updatePersonal').elements;
	if (e['first_name'].value==''){
		msg += '- "First Name" is required field...\n';
		e['first_name'].style.borderColor=red;
	} else {
		e['first_name'].style.border='none';
	}
	if (e['last_name'].value==''){
		msg += '- "Last Name" is required field...\n';
		e['last_name'].style.borderColor=red;
	} else {
		e['last_name'].style.border='none';
	}
	if (msg != '') {
		alert(msg);
		return false;
	}
	return true;
}
var getCategoryList = function(o) {
	var myCat = $("#category").val();
	if (myCat != '') {
		$("#subCategory").load('/components/myCategories.php?cat='+myCat);
	}
}
var createCategories = function( i ){
	var o=document.getElementById('subCategory');
	eval(ajax[i].response);
}
function userResult(i){
		var o=document.getElementById('user');
		var oErr=document.getElementById('userErr');
		var r=ajax[i].response;
		if(r=='ok'){
			o.style.borderColor='#6AA443';

		}else if(r=='bad'){
			o.style.borderColor='#ff0000';
			alert(userErrorMsg);
			o.value='';
		}
}
function emailResult(i){
		var o=document.getElementById('email');
		var oErr=document.getElementById('emailErr');
		var r=ajax[i].response;
		if(r=='ok'){
			o.style.borderColor='#6AA443';

		}else if(r=='bad'){
			o.style.borderColor='#ff0000';
			alert(emailErrorMsg);
			o.value='';
		}
}
/* end of common js include */
var isURL = function (argvalue) {

  if (argvalue.indexOf(" ") != -1)
    return false;
  else if (argvalue.indexOf("http://") == -1)
    return false;
  else if (argvalue == "http://")
    return false;
  else if (argvalue.indexOf("http://") > 0)
    return false;

  argvalue = argvalue.substring(7, argvalue.length);
  if (argvalue.indexOf(".") == -1)
    return false;
  else if (argvalue.indexOf(".") == 0)
    return false;
  else if (argvalue.charAt(argvalue.length - 1) == ".")
    return false;

  if (argvalue.indexOf("/") != -1) {
    argvalue = argvalue.substring(0, argvalue.indexOf("/"));
    if (argvalue.charAt(argvalue.length - 1) == ".")
      return false;
  }

  if (argvalue.indexOf(":") != -1) {
    if (argvalue.indexOf(":") == (argvalue.length - 1))
      return false;
    else if (argvalue.charAt(argvalue.indexOf(":") + 1) == ".")
      return false;
    argvalue = argvalue.substring(0, argvalue.indexOf(":"));
    if (argvalue.charAt(argvalue.length - 1) == ".")
      return false;
  }
  return true;
}

var check_form_register = function(){
	var msg = '';
	msg +=	check_len( $('input[name=first_name]').val(), 4, "Име");
	msg +=	check_len( $('input[name=last_name]').val(), 4, "Фамилия");
	msg +=	check_empty( $('select[name=city_id]').val(), "Град");
	msg +=	check_len( $('input[name=mobile]').val(), 6, "Мобилен телефон");
	msg +=	check_len( $('input[name=email]').val(), 8, "E-mail");
	msg +=	check_email( $('input[name=email]').val(), "E-mail");
	msg +=	check_len( $('input[name=user]').val(), 6, "Потребител");
	msg +=	check_len( $('input[name=pass]').val(), 6, "Парола");
	msg +=	check_match( {one:$('input[name=pass]').val(), two:$('input[name=passconf]').val(), err:"Паролата и потвърдената парола не съвпадат"});
	return makeReturn(msg);
}
/* common */
var check_match = function( obj ){
	var out = '';
	if ( obj['one'] != obj['two'] ) {
		out = "-> \" " + obj['err'] + " \" \n";
	}
	return out;
}
var check_email = function( email, err ){
	var out = '';
	var regex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
	if( ! regex.test( email ) ) {
		out = "-> \" " + err + " \" е невалиден!\n";
	}
	return out;
}
var check_empty = function( str, err ) {
	var out = '';
	if( str.length == 0 ) {
		out = "-> \" " + err + " \" e задължително!\n";
	}
	return out;
}
var check_len = function( str, num, err )
{
	var out = '';
	if ( str.length < num ) {
		out = "-> \" " + err + " \", мин " + num + " символа!\n";
	}
	return out;
}
var makeReturn = function( msg )
{
	var out = false;
	if ( msg.length > 0 )
	{
		var str = "Липсващи или некоректно въведени данни:\n";
		str += msg;
		alert( str );
	} else {
		out = true;
	}
	return out;
}
CategoryModel = {
	category_id:0,
	getSubCategoryList:function(id)
	{
		$("#sub_category_id").attr("disabled", "disabled");
		if(id == undefined) return;
		$.post(conf.base_url + 'gate/', {mode:"category", act:"get_front_sub_category_option_list", category_id: id},
			function (data) {
				
				$("#sub_category_id").html(data.list);
				//if (data.category_id > 0) {
					//$("#sub_category_id").unbind("focus");
				//} else {
					//$("#sub_category_id").bind("focus", function(){
						//$(this).blur();
					//});
				//}
				$("#sub_category_id").removeAttr("disabled");
			},
			"json"
		);
	},
	init:function() {
		$("#category_id").unbind("change").bind("change", function(e){
			e.preventDefault();
			CategoryModel.getSubCategoryList($(this).val());
		});
	}
};
var init = function()
{
	$('.tabs > ul').tabs();
	$('#add_content').elastic();
	//
	function f_scrollTop() {
		try{
			return (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0 ) ;
		}catch( e ){ };
	}
	function f_clientWidth() {
		return Number( window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth || 0 );
	}
	function f_scrollLeft() {
		return Number( window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0 );
	}
	function f_clientHeight() {
		return Number( window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight || 0 );
	}
	function fix_fly_position(){
		try{
			var o = $('#fly_menu');
			var d = $(document);
			var all = [f_clientWidth(),f_clientHeight()];
			if( $.browser.msie ){
				var left	=	Number(all[0] + f_scrollLeft() - o.width() - 16);
				var top		=	Number(all[1] + f_scrollTop() - o.height());
				var top		=	Number( f_scrollTop() );
				document.getElementById('fly_menu').style.position = 'absolute';
				document.getElementById('fly_menu').style.left = left;
				document.getElementById('fly_menu').style.top = top;
			}else{
				var left	=	Number( all[0] + f_scrollLeft() - o.width() - 28);
				var top		=	Number( f_scrollTop() );
				o.css({'position':'absolute','left': left+'px','top': top + 'px'});
			}
		} catch( e ){};
		fix_fly_position1();

	};
	function fix_fly_position1(){
		try{
			var o = $('#myAdv');
			var d = $(document);
			var all = [f_clientWidth(),f_clientHeight()];
			if( $.browser.msie ){
				var left	=	Number(all[0] + f_scrollLeft() - o.width() - 120);
				var top		=	Number( f_scrollTop() );
				document.getElementById('myAdv').style.position = 'absolute';
				document.getElementById('myAdv').style.left = left;
				document.getElementById('myAdv').style.top = top;
			}else{
				var left	=	Number( all[0] + f_scrollLeft() - o.width() - 120);
				var top		=	Number( f_scrollTop() );
				o.css({'position':'absolute','left':left+'px','top': top + 'px'});
			}
		} catch( e ){};
	};
	if ($.browser.msie) {
		window.onscroll = fix_fly_position;
	}else{
		$( window ).scroll( fix_fly_position );
	}
	fix_fly_position();
	//autocomplete
	$("#search_field").autocomplete( conf.base_url + "search_gate.php", {
		width: 320,
		max: 4,
		highlight: false,
		scroll: true,
		scrollHeight: 300,
		formatItem: function(data, i, n, value) {
			return "<img src='images/" + value + "'/> " + value.split(".")[0];
		},
		formatResult: function(data, value) {
			return value.split(".")[0];
		}
	});
	CategoryModel.init();
}
function novWin (path, w, h) {
	window.open(path,"",'height='+h+',width='+w+',left='+((screen.width - w) / 2)+',top='+((screen.height - h) / 2)+',location=no,scrollbars=no,menubars=no,toolbars=no,resizable=no');
}
$(document).ready(init);
function tinyMceControll()
{
	this.add = function(controll) {
		var o = {
			mode:"specific_textareas",
			editor_selector:"mceEditor",
			theme:"advanced",
/*			plugins								:	"safari,pagebreak,layer,table,advhr,advimage,advlink,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,noneditable,visualchars,nonbreaking,xhtmlxtras",*/
			plugins								:	"safari,table,advhr,advimage,advlink,media,searchreplace,contextmenu,paste,visualchars,xhtmlxtras",
			theme_advanced_buttons1				:	"cleanup,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizeselect,|,forecolor,backcolor",
			theme_advanced_buttons2				:	"attribs,|,link,unlink,anchor,image,media,|,bullist,numlist,|,outdent,indent,blockquote,|cite,abbr,acronym,del,ins,|,undo,redo,|,search,replace,|,pastetext,pasteword",
			theme_advanced_buttons3				:	"tablecontrols,|,sub,sup,charmap,|,hr,advhr,removeformat,visualaid,|,code",
			theme_advanced_toolbar_location 	:	"top",
			theme_advanced_toolbar_align		:	"left",
			theme_advanced_statusbar_location	:	"bottom",
			theme_advanced_resizing				:	true,
			content_css							:	conf.base_url+'css/tiny_mce/content.css',
			remove_script_host					:	false,
			convert_urls						:	true,
			relative_urls						:	false,
			document_base_url					:	conf.base_url
		};
		if (controll != undefined || controll != null) {
			//o.external_image_list_url	=	conf.base_url+"ajax/multimedia/lists/image/"+controll;
			//o.media_external_list_url	=	conf.base_url+"ajax/multimedia/lists/media/"+controll;
			//o.external_link_list_url	=	conf.base_url+"ajax/multimedia/lists/link/"+controll;
		}
		tinyMCE.init(o);
	};
}
