// Strahotni.com framework

jQuery(function($) {
	(function() {
		if ('undefined' === typeof window.console) {
			window.console = {};
		}
		
		var console_functions = [
			'log', 'debug', 'info', 'warn', 'error', 'assert', 'dir', 'dirxml', 'trace',
			'group', 'groupCollapsed', 'groupEnd', 'time', 'timeEnd', 'profile', 'profileEnd',
			'count', 'exception', 'table'
		];
		
		$
			.each(console_functions, function(k, v) {
				if ('function' !== typeof window.console[v]) {
					window
						.console[v] = $
							.noop;
				}
			});
	})();
	
	$
		.extend(
			true,
			{
				getXML: function(url, data, callback) {
					$.get(url, data, callback, 'xml');
				},
				getHTML: function(url, data, callback) {
					$.get(url, data, callback, 'html');
				},
				getJSONP: function(url, data, callback) {
					$.get(url, data, callback, 'jsonp');
				},
				getText: function(url, data, callback) {
					$.get(url, data, callback, 'text');
				},
				postXML: function(url, data, callback) {
					$.post(url, data, callback, 'xml');
				},
				postHTML: function(url, data, callback) {
					$.post(url, data, callback, 'html');
				},
				postScript: function(url, data, callback) {
					$.post(url, data, callback, 'script');
				},
				postJSON: function(url, data, callback) {
					$.post(url, data, callback, 'json');
				},
				postJSONP: function(url, data, callback) {
					$.post(url, data, callback, 'jsonp');
				},
				postText: function(url, data, callback) {
					$.post(url, data, callback, 'text');
				}
			}
		)
		.ajaxSetup({
			cache: false
		});
	
	$('.preventDefault')
		.live(
			'click',
			function(e) {
				e
					.preventDefault();
			}
		);
	
    $('form')
        .has(
            $('.defaultText')
                .live('focus', function() {
                    var curr_obj = $(this);
                    
                    if (curr_obj.val() == curr_obj.data('defaultText')) {
                        curr_obj
                            .val('')
                            .removeClass('blured');
                    }
                })
                .live('blur', function() {
                    var curr_obj = $(this);
                    
                    if (0 === $.trim(curr_obj.val()).length) {
                        curr_obj
                            .addClass('blured')
                            .val(curr_obj.data('defaultText'));
                    }
                })
        )
        .submit(function() {
            $('.defaultText', this)
                .each(function() {
                    var curr_obj = $(this);
                    
                    if (curr_obj.val() == curr_obj.data('defaultText')) {
                        curr_obj
                            .val('');
                    }
                });
        });
		
    $('.target_blank')
        .removeClass('target_blank')
        .attr('target', '_blank');

    $('.defaultText[title]')
        .each(function() {
            var curr_obj = $(this);
            
            curr_obj
                .data('defaultText', curr_obj.attr('title'))
                .removeAttr('title');
            
            if (0 === $.trim(curr_obj.val()).length) {
                curr_obj
                    .addClass('blured')
                    .val(curr_obj.data('defaultText'));
            }
        });
        
    $('.autocompleteOff')
        .removeClass('autocompleteOff')
        .attr('autocomplete', 'off');
    
    $('#current_url')
        .val(document.location.href);
    
    $(':input.hoverSelect')
        .hover(function(e) {
            this
                .select();
        }, $.noop);
});

