// JavaScript Document for Caglayangayrimenkul.com.tr
/*
	Copyright All Right Reserved "NetAjans Bright Ideas"
	Includes are : 
		#General Scripts
		#Some jquery codes
*/
jQuery.fn.ForceNumericOnly =
function()
{
    return this.each(function()
    {
        $(this).keydown(function(e)
        {
            var key = e.charCode || e.keyCode || 0;
            // allow backspace, tab, delete, arrows, numbers and keypad numbers ONLY
            return (
                key == 8 || 
                key == 9 ||
                key == 46 ||
                (key >= 37 && key <= 40) ||
                (key >= 48 && key <= 57) ||
                (key >= 96 && key <= 105));
        })
    })
};

jQuery.extend(jQuery.validator.messages, {
	required: "Bu alanın doldurulması zorunludur.",
	remote: "Lütfen bu alanı düzeltin.",
	email: "Lütfen geçerli bir e-posta adresi giriniz.",
	url: "Lütfen geçerli bir web adresi (URL) giriniz.",
	date: "Lütfen geçerli bir tarih giriniz.",
	dateISO: "Lütfen geçerli bir tarih giriniz(ISO formatında)",
	number: "Lütfen geçerli bir sayı giriniz.",
	digits: "Lütfen sadece sayısal karakterler giriniz.",
	creditcard: "Lütfen geçerli bir kredi kartı giriniz.",
	equalTo: "Lütfen aynı değeri tekrar giriniz.",
	accept: "Lütfen geçerli uzantıya sahip bir değer giriniz.",
	maxlength: jQuery.validator.format("Lütfen en fazla {0} karakter uzunluğunda bir değer giriniz."),
	minlength: jQuery.validator.format("Lütfen en az {0} karakter uzunluğunda bir değer giriniz."),
	rangelength: jQuery.validator.format("Lütfen en az {0} ve en fazla {1} uzunluğunda bir değer giriniz."),
	range: jQuery.validator.format("Lütfen {0} ile {1} arasında bir değer giriniz."),
	max: jQuery.validator.format("Lütfen {0} değerine eşit ya da daha küçük bir değer giriniz."),
	min: jQuery.validator.format("Lütfen {0} değerine eşit ya da daha büyük bir değer giriniz."),
	requiredgroup: "Bu değer veya bağlı olduğu değerin girilmesi zorunludur.",
	requiredto: "Bu değere bağlı olan değerde girilmelidir.",
	alphanumeric: "Sadece latin alfabesi, rakamlar, boşluk veya alt çizgi kullanılabilir",
	lettersonly: "Sadece latin alfabesi kullanılabilir, karakter veya farklı harfler kullanmayınız"
});
var _e = new Array;
_e[0] = 'Formunuz {0} hata içeriyor, lütfen form daki hataları düzeltiniz';

$(document).ready(function() {
	/*
	* Author : JAMES PADOLSEY
	*/
	jQuery.expr[':'].regex = function(elem, index, match) {
		var matchParams = match[3].split(','),
			validLabels = /^(data|css):/,
			attr = {
				method: matchParams[0].match(validLabels) ? 
							matchParams[0].split(':')[0] : 'attr',
				property: matchParams.shift().replace(validLabels,'')
			},
			regexFlags = 'ig',
			regex = new RegExp(matchParams.join('').replace(/^\s+|\s+$/g,''), regexFlags);
		return regex.test(jQuery(elem)[attr.method](attr.property));
	}

	function initMenu() {
		$('div[class*=dir-menu] .dir-a').next().each(function() {
			if($(this).attr('class') != 'nohide') {
				$(this).hide();
			}
		})
		
		$('div[class*=dir-menu] li[class=subject] a').click(
			function() {
				var checkElement = $(this).next();
				if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
					return false;
				}
				if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
					$('div[class*=dir-menu] ul[class=main] ul:visible').slideUp('normal');
						checkElement.slideDown('normal');
						return false;
				}
			}
		);
	}
	initMenu();

	var WindowProfiles =
	{
		
	};
	$('a[id=search-go]').click(function(){
		$(this).parents().find('form').submit();
	});
	/*
	* Check popup links
	*/
	try {
		$("a[rel=popup]").popupwindow(WindowProfiles);
	} catch (e) {}

	$('marquee').marquee('pointer').mouseover(function () {
		$(this).trigger('stop');
	}).mouseout(function () {
		$(this).trigger('start');
	}).mousemove(function (event) {
		if ($(this).data('drag') == true) {
			this.scrollLeft = $(this).data('scrollX') + ($(this).data('x') - event.clientX);
		}
	}).mousedown(function (event) {
		$(this).data('drag', true).data('x', event.clientX).data('scrollX', this.scrollLeft);
	}).mouseup(function () {
		$(this).data('drag', false);
	});
	//$(document).pngFix();
	//$("a[rel=quick-view], *[target=quick-view]").fancybox({});

	Cufon.replace('h1, h2, .box-menu li.subject a.dir-a, h3', { color: '-linear-gradient(#ffffff, #e0e0e0)', hover: true, hoverables: { li: true, a: true, fontFamily: 'Aller' } });
	Cufon.replace('.cufon-noeffect, .submit', { fontFamily: 'Aller' });
	//, li.side-big-menu a.cufon

	var spt = $('span.protect-me');
	var at = / nerden /;
	var dot = / nokta /g;
	var addr = $(spt).text().replace(at,"@").replace(dot,".");
	$(spt).after('<a href="mailto:'+addr+'" title="">'+ addr +'</a>')
	$(spt).remove();

	$('.tip-w').tipsy({gravity: 'w',fade: true,html: true});
	$('.tip-n').tipsy({gravity: 'n',fade: true,html: true});
	$('.tip-nw').tipsy({gravity: 'nw',fade: true,html: true});
	$('.tip-ne').tipsy({gravity: 'ne',fade: true,html: true});
	$('.tip-e').tipsy({gravity: 'e',fade: true,html: true});
	$('.tip-sw').tipsy({gravity: 'sw',fade: true,html: true});
	$('.tip-s').tipsy({gravity: 's',fade: true,html: true});
	$('.tip-se').tipsy({gravity: 'se',fade: true,html: true});

	// Jump to ID
	$('a[class*=jump]').click(function() {
		var is = $(this).attr('rel');
		$('html, body').animate({
			scrollTop: $('#'+is).offset().top
		}, 1000);
	});

	$.fn.bookmark = function (title, url) {
		if (window.sidebar) { // Mozilla Firefox
			window.sidebar.addPanel(title, url, "");
		}
		else if (window.external) { // IE
			window.external.AddFavorite(url, title);
		}
		else if (window.opera && window.print) {
			window.external.AddFavorite(url, title);
		}
		else {
			alert('not supported');
		}
	}
	$.fn.ExternalLinks = function () {
		$("a[rel=external], a[target=_blank]").each(function() {
			if($(this).attr('rel') != 'noexternal') {
				$(this).addClass('externals');
				$(this).attr('target','_blank');
			}
		});
	}
	$.fn.jqCheckAll = function( id, name, flag )
	{
	   if (flag == 0)
	   {
		  $("form#" + id + " INPUT[@name=" + name + "][type='checkbox']").attr('checked', false);
	   } else {
		  $("form#" + id + " INPUT[@name=" + name + "][type='checkbox']").attr('checked', true);
	   }
	}
	/*
	* Check all checkboxes with given name
	* Author : Unknown
	*/
	$.fn.Checker = function(options) {
		settings = jQuery.extend({
			check: false
		}, options);

		if($(this).is(':checked')) {
			$(settings.check+' input[type=checkbox]').each(
				function() {
					if(!$(this).attr('disabled'))
					$(this).attr('checked','checked');
				}
			);
		} else {
			$(settings.check+' input[type=checkbox]').each(
				function() {
					if(!$(this).attr('disabled'))
					$(this).attr('checked','');
				}
			);
		}
	}
	/* Focus first element
	*/
	$.fn.FocusInput = function() {
		var elem = $('input:visible', this).get(0);
		var select = $('select:visible', this).get(0);
		if (select && elem) {
			if (select.offsetTop < elem.offsetTop) {
				elem = select;
			}
		}
		var textarea = $('textarea:visible', this).get(0);
		if (textarea && elem) {
			if (textarea.offsetTop < elem.offsetTop) {
				elem = textarea;
			}
		}
	
		if (elem) {
			elem.focus();
		}
		return this;
	}
	/*
	* Submit forms without submit button
	*/
	$.fn.Submiter = function() {
		if($(this).get(0)) {
			$(this).bind('keyup', 'return', function() {
				$(this).parents().find('form').submit();
				return false;
			});
		}
	};
	/*
	* Trigger submit buton
	*/
	$.fn.Submit = function() {
		$(this).trigger("submit");
		//$(document).unload(function() { $().ToggleLoading(); });
		//$(this).submit(function(){ $().ToggleLoading(); });
	}
});
