$(document).ready(function(){

   $('a[href^="http://"]').attr({target: "_blank", title: "Opens in a new window"});

	var thatchSlideShow = function(what) {
        var me = this;
        var timer = 6000;
        var fade = timer / 4;
        var stuff = {
            doSwitch: function() {
                var active = $(what+' div.f.active');
                if ( active.length == 0 ) {
				  active = $(what+' div.f:last');
				}
                var next =  active.next().length ? active.next() : $(what+' div.f:first');

                active.addClass('last-active');

                next.css({opacity: 0.0})
                .addClass('active')
                .animate({opacity: 1.0}, fade, function() {
                    active.removeClass('active last-active');
                });


            },
            init:function() {
                //force preload the slideshow
				height = 0;
				$(what+' div.f').each(function() {
					if ($(this).height() > height) {
						height = $(this).height();
					}
				});
				$(what+' div.f').height(height);
				$(what).height(height);
                $('#slideshow img').each(function() {
                    Preload.load($(this).attr('src'));
                });
                // start the slideshow
                setInterval(function() {
                    stuff.doSwitch.apply()},timer);
            }
        }
        stuff.init.apply(stuff);
        return stuff;
    };

	  var thatchSlideShow2 = function(what) {
        var me = this;
        var timer = 6000;
        var fade = timer / 4;
        var stuff = {
            doSwitch: function() {
                var active = $(what+' img.active');
                if ( active.length == 0 ) active = $(what+' img:last');
                var next =  active.next().length ? active.next() : $(what+' img:first');
                active.addClass('last-active');
                next.css({opacity: 0.0})
                .addClass('active')
                .animate({opacity: 1.0}, fade, function() {
                    active.removeClass('active last-active');
                });


            },
            init:function() {
				height = 0;
				$(what+' img').each(function() {
					if ($(this).height() > height) {
						height = $(this).height();
					}
				});
				$(what).height(height);
                //force preload the slideshow
                $(what+' img').each(function() {
                    Preload.load($(this).attr('src'));
                });
                // start the slideshow
                setInterval(function() {
                    stuff.doSwitch.apply()},timer);
            }
        }
        stuff.init.apply(stuff);
        return stuff;
    };



    if ($('#slideshow').length) {
        new thatchSlideShow('#slideshow');
    }

	if ($('#slideshow2').length) {
        new thatchSlideShow('#slideshow2');
    }

	if ($('#slideshow3').length) {
        new thatchSlideShow2('#slideshow3');
    }


$(function(){
	var hideDelay = 500;
	var currentID;
	var hideTimer = null;
	var container = $('<div id="tt" style="display:none"><div id="ttloading" style="margin:140px 0 140px 120px"><h1>Loading...</h1></div></div>');
	//$(container).css('opacity','0.9');
	$('body').append(container);

	$('.ajax-preview', '#newsright').live('mouseover', function(e){
		var id = $(this).attr('name');
		if (id == '')
			return;
		if (hideTimer)
			clearTimeout(hideTimer);

		var pos = $(this).offset();
		var left = e.pageX;
		var width = $(this).width();
		var leftoffset = $(container).width();
		container.css({
			left: (pos.left - leftoffset) + 'px',
			top: pos.top + 'px'
		});

		// check for the existence of a hidden div
		$('#ttloading').css('display', 'block');
		$('div.hidden', '#tt').css('display','none');

		if ($('#ajaxpreview'+id).is(":hidden")) {
			$('#ttloading').css('display', 'none');
			$('#ajaxpreview'+id).css('display', 'block');
			$('#tt').attr('rel', id);
		} else {
			$.ajax({
				type: 'GET',
				url: '/news/view/'+id,
				success: function(data){
					$('#tt').append(data);
					$('div.hidden', '#tt').css('display','none');
					$('#ttloading').css('display', 'none');
					$('#ajaxpreview'+id).css('display', 'block');
				}
			});
		}

		container.css('display', 'block');
	});

	$('.ajax-preview', '#newsright').live('mouseout', function(){
		var id = $(this).attr('name');
		if (hideTimer)
			clearTimeout(hideTimer);
		hideTimer = setTimeout(function(){
			container.css('display', 'none');
			$('#ajaxpreview'+id).css('display', 'none');
		}, hideDelay);
	});

	// Allow mouse over of details without hiding details
	$('#tt').mouseover(function(){
		if (hideTimer)
			clearTimeout(hideTimer);
	});

	// Hide after mouseout
	$('#tt').mouseout(function(){
		var id = $(this).attr('name');
		if (hideTimer)
			clearTimeout(hideTimer);
		hideTimer = setTimeout(function(){
			container.css('display', 'none');
			$('#ajaxpreview'+id).css('display', 'none');
		}, hideDelay);
	});
});

	if ($('#metachanger')) {
        var metadata = '';
        var id = $('#metalink').attr('rel');
        $('#metadiv').hide();
        $('#metalink').click(function(){
            $('#metadiv').slideToggle(500);
            //$("#metadiv").animate({ height: "300px" }).animate({height: "250px" }, "fast");

            $.get("/update.php", { getcontent: "1", id: $(this).attr('rel'), target: 'title' },function(data) {
                $("form.metaform input[name='title']").val(data);
            });
            $.get("/update.php", { getcontent: "1", id: $(this).attr('rel'), target: 'headline' },function(data) {
                $("form.metaform input[name='desc']").val(data);
            });

            $.get("/update.php", { getcontent: "1", id: $(this).attr('rel'), target: 'keywords' },function(data) {
                $("form.metaform input[name='keywords']").val(data);
            });

            $.get("/update.php", { getcontent: "1", id: $(this).attr('rel'), target: 'weight' },function(data) {
                $("form.metaform input[name='weight']").val(data);
            });

            return false;
        });

        $('form.metaform').submit(function() {
            var inputs = [];
            $(':input', this).each(function() {
                inputs.push(this.name + '=' + escape(this.value));
            });
            $('#metadiv').slideUp('fast');
             $.ajax({
                type: "POST",
                url: this.action,
                data: inputs.join('&'),
                beforeSend: function(){$("#loading").slideDown("fast");}, //show loading just when link is clicked
                complete: function(){ $("#loading").slideUp("fast");}, //stop showing loading when the process is complete
                success: function(html){ //so, if data is retrieved, store it in html
                    $("#metadiv").show("slow"); //animation
                    $('#metalog').slideDown('fast');
                    $("#metalog").html("<h2>Meta Log</h2><div style='clear:both'></div>"+html); //show the h
                    setTimeout(function(){
                        $('#metalog').slideUp('slow');
                    }, 5000);
                }
            });
            return false;
        });
    }
});

/*******************************************************************************
 *  Preloading
 ******************************************************************************/
var Preload = {
    load: function(trigger, handlers) {
        if( (typeof trigger).toLowerCase() == 'string' ){
            src = trigger;
        }else{
            src = $(trigger).attr('href');
            try{
                opts = eval( '({' + $(trigger).attr('rel') + '})' );
            }catch(e){}
        }
        //test if it is an image, otherwise, use ajax
        if( src.match(/.jpg$|.jpeg$|.png$|.gif$|.bmp$|.tif$|.tiff$|.gi$/i) ){
            var img = new Image();
            if( handlers ){
                if( handlers.loaded && typeof handlers.loaded == 'function' ){
                    img.onload = function(){
                        response = {
                            width: img.width,
                            height: img.height,
                            obj: $('<img>').attr('src',img.src)
                        };
                        handlers.loaded( response );
                    };
                }
                if( handlers.loaded && typeof handlers.error == 'function' ){
                    img.onerror = function( err ){
                        handlers.error( err );
                    }
                }
            }
            img.src = src;
        }else if( src.match(/.swf$|.flv$|.SWF$|.FLV$/i) ){
            if( $.fn.flash ){
                if( handlers ){
                    if( handlers.loaded && typeof handlers.loaded == 'function' ){
                    // todo: code flash handling
                    }
                }
            }
        }else{
            $.get(
                src,
                function( html ){
                    if( handlers ){
                        if( handlers.loaded && typeof handlers.loaded == 'function' ){
                            var content = $('<div>').html( html );
                            response = {
                                width: parseInt(content.children(0).css('width')),
                                height: parseInt(content.children(0).css('height')),
                                obj: content,
                                data: html
                            };
                            handlers.loaded( response );
                        }
                    }
                }
            );
        }
    }
};