$(document).ready(function() {
	
	/* Feedback */
	$('body').append('<p style="position:fixed !important;position:absolute;cursor:hand;cursor:pointer;width:80px;height:80px;background:url(/images/give-feedback.gif) top left no-repeat;" id="give-feedback" title="Gib uns dein Feedback.">&nbsp;</p>');
	
	$('#give-feedback').css('top', ($(window).height()-81) + 'px');
	$('#give-feedback').css('left', ($(window).width()-81) + 'px');
	
	if(getIsIE()) {
		$(document).scroll(function() {
			$('#give-feedback').css('top', ($(window).height()+$(this).scrollTop()-81) + 'px');
		});
		
		$(window).resize(function() {
			$('#give-feedback').css('top', ($(window).height()+$(this).scrollTop()-81) + 'px');
			$('#give-feedback').css('left', ($(window).width()-81) + 'px');
		});
	}
	
	$('#give-feedback').click(function() {
		window.open('/hilfe/feedback', 'feebackwindow', 'scrollbars=no,width=450,height=360');
	});
	
	$('#layout_userlogin').focus(function() {
		var val = $(this).val();
		
		var default_val = 'E-Mail/Benutzername';
		if(val == default_val) {
			$(this).val('');
		} else { }
		$(this).addClass('active');
	});
	$('#layout_userlogin').blur(function() {
		var val = $(this).val();
		
		var default_val = 'E-Mail/Benutzername';
		if(val == '') {
			$(this).val(default_val);
			$(this).removeClass('active');
		} else { 
			$(this).addClass('active');
		}
	});
	
	$('#layout_userpassword').focus(function() {
		var val = $(this).val();
		
		var default_val = 'Passwort';
		if(val == default_val) {
			$(this).val('');
		} else { }
		$(this).addClass('active');
	});
	$('#layout_userpassword').blur(function() {
		var val = $(this).val();
		
		var default_val = 'Passwort';
		if(val == '') {
			$(this).val(default_val);
			$(this).removeClass('active');
		} else { 
			$(this).addClass('active');
		}
	});
	
	$('.choose_category').click(function() {
		setTimeout("$('#choose-categories').submit()", 400);
	});
	
	/*
	$('#books-slider p').mouseover(function() {
		if(!$(this).hasClass('last_field')) {
			$(this).css('background', '#f0f0f0');
		}
	});
	
	$('#books-slider p').mouseout(function() {
		$(this).css('background', '');
	});
	*/
	
	$('#books-slider p').click(function() {
		document.location.href=$(this).find('a').attr('href');
	});
	
	$('a.left').click(function() {			
		var pos = $('#books-slider').position();
		var step = 501;
		if(pos['left'] < 0) {
			var nextPos = (pos['left']+501);
			if(nextPos > 0) {
				nextPos = 0;
			}
			$('#books-slider').animate({'left': '+='+step+'px'}, 'slow');
		}
    });
	
	$('a.right').click(function() {
		var pos = $('#books-slider').position();
		var step = -501;
		if(pos['left'] > -2600) {
			var nextPos = (pos['left']-501);
			if(nextPos < -2500) {
				nextPos = -3340;
			}
			$('#books-slider').animate({'left': '+='+step+'px'}, 'slow');
		}
    });
	
    /* toplinks hover */
	$('#header #stoebern-nav').mouseover(function() {
		$(this).addClass('stoebern-active');
	});
	$('#header #stoebern-nav').mouseout(function() {
		$(this).removeClass('stoebern-active');
	});
	$('#header #verkaufen-nav').mouseover(function() {
		$(this).addClass('verkaufen-active');
	});
	$('#header #verkaufen-nav').mouseout(function() {
		$(this).removeClass('verkaufen-active');
	});
	
	$('#header #verkaufen-nav').click(function() {
		document.location.href='/verkaufen';
	});
	$('#header #stoebern-nav').click(function() {
		document.location.href='/stoebern';
	});

    $('#choose-categories #category-0').click(function() {
    	if($('#choose-categories #category-0').is(':checked')) {
    		$('#choose-categories input').each(function() {
    			$(this).attr('checked', false);
    		});
    		$('#choose-categories #category-0').attr('checked', true);
    	}
    });


    $('.categories ul li label').click(function() {
    	$(this).parent().toggleClass('active');
    	$(this).parent().addClass('chosen');
    });
    $('.categories ul li').mouseover(function() {
    	if(!$(this).hasClass('active')) {
    		$(this).addClass('active');
    	} else {
    		$(this).addClass('chosen');
    	}
    });
    $('.categories ul li').mouseout(function() {
    	if(!$(this).hasClass('chosen')) {
    		$(this).removeClass('active');
    	}
    });
	
	/*$('#index_q').focus();
	
	$('#index_q').keyup(function() {
		var elm = $(this);
		var val = elm.val();
		
		if(val.length > 0) {
			elm.removeClass('active');
		} else {
			if(!elm.hasClass('active')) {
				elm.addClass('active');
			}
		}	
	});*/
	
	$('#index_q').blur(function() {
		var val = $(this).val();
		
		if(val == '') {
			$(this).addClass('active');
		} else { }
	});
	
	$('#index_q').focus(function() {
		$(this).removeClass('active');
	});
	
	/* Single (Offers) Seite */
	if($('#ajaxsinglemorebooks').length > 0) {
		
		var isbn = $('#isbn_info_string').html();
		testajax (isbn, 'ajaxsinglemorebooks');
		
		/*
		var page = getGETParameter("p"); 
		var typ = $('#singlemoreoffers').attr('rel');
		if(typ == 'more-books') {
			pathed = 'ajaxsinglemorebooks';
			
		} else {
			pathed = 'ajaxisbnoffers';
		}

		$.get('/books/' + pathed + '?isbn='+ $('#isbn_info_string').html() + '&callname='+ $('#callname_info_string').html() + '&p='+page+ '&orderstr='+ $('#isbn_order_string').html(), function(data){
			$('#singlemoreoffers').empty();
			$('#singlemoreoffers').html(data);
		});*/
	}
	
	/* ISBN Seite */
	if($('#ajaxisbnoffersgesuche').length > 0) {
		var isbn = $('#isbn_info_string').html();
		testajax (isbn, 'ajaxisbnoffers', 'ajaxisbnoffersgesuche');
	}
	
	/* Startseite Stadt */
	$('.dropdown').click(function() {
		$('.change-city').show();
		$('.change-city').addClass('loading');
		$.get('/user/ajaxchangecity', function(data){
			if(data == 'no') {
				document.location.href='/login';
			} else {
				$('.change-city').empty();
				$('.change-city').html(data);
				$('.change-city').removeClass('loading');
			}
		});
		return false;
	});
	
	$('.inbox-clicker').click(function() {
		$('#inbox').removeClass('hidden');
		$('#outbox').addClass('hidden');
		$(this).addClass('bold');
		$('.outbox-clicker').removeClass('bold');
	});
	
	$('.outbox-clicker').click(function() {
		$('#outbox').removeClass('hidden');
		$('#inbox').addClass('hidden');
		$(this).addClass('bold');
		$('.inbox-clicker').removeClass('bold');
	});
	
	/* Startseite Buchbox */
	$('.first-row .books .options a').click(function() {
		if(!$(this).hasClass('dropdown')) {
			$('#frameset').empty();
			$('#frameset').addClass('loading');
			$.get('/index/bookbox?type='+ $(this).attr('rel'), function(data){
				$('#frameset').html(data);
				$('#frameset').removeClass('loading');
			});
		}
	});
	$('.first-row .books a.markable').click(function() {
		$('.first-row .books a.markable').each(function() { 
			$(this).removeClass('active'); 
		});
		$(this).addClass('active');
		var checker = $(this).attr('rel');
		if(checker == 'recent') {
			$('.swap-more-link').attr('href', '/stoebern');
		} else if(checker == 'top') {
			$('.swap-more-link').attr('href', '/stoebern/top-angebote');
		} else if(checker == 'gesuche') {
			$('.swap-more-link').attr('href', '/stoebern/gesuche');
		}
	});
	
	/* dirrrrrrrrrrty as hell */
	/**************************/
	
	
	$('#recent-bookbox').click(function() {
		$('#frameset').empty();
		$('#frameset').addClass('loading');
		$.get('/index/bookbox?type='+ $(this).attr('rel'), function(data){
			$('#frameset').html(data);
			$('#frameset').removeClass('loading');
		});
	});
	
	/* Sidebar Stöbern Buchbox */
	$('#pagesidebar p a').click(function() {
		if(!$(this).hasClass('dropdown')) {
			element = $(this);
			$('#pagesidebar #content').empty();
			$('#pagesidebar #content').addClass('loading');
			$.get('/books/sidebarstoebernbookbox?type='+ $(this).attr('rel'), function(data){
				$('#pagesidebar p a').removeClass('bold');
				element.addClass('bold');
				$('#pagesidebar #content').html(data);
				$('#pagesidebar #content').removeClass('loading');
			});
		}
	});
	if($('#pagesidebar').length > 0) {
		$.get('/books/sidebarstoebernbookbox', function(data){
			$('#pagesidebar p a:first').addClass('bold');
			$('#pagesidebar #content').html(data);
			$('#pagesidebar #content').removeClass('loading');
		});
	}

	/* ISBN Review Feld */
	$('#read_excerpt_on').click(function() {
		$('#excerpt_dots').hide();
		$('#end_excerpt').show();
		return false;
	});
	$('#read_excerpt_off').click(function() {
		$('#excerpt_dots').show();
		$('#end_excerpt').hide();
		return false;
	});
	/*
	if($('div.excerpt').length > 0) {
		var element = $('div.excerpt div');
		var content = element.html();
		if(!content) {
			content = '';
		}
			contentLength = content.length;
		if(contentLength > 220) {
			var newContent = '<div class="littleredhood">' + content.substr(0,220) + '<span class="dots">... <a href="javascript:;">weiterlesen</a></span></div>';
				newContent += '<div class="ridingthewolf" style="display: none !important;">' + content.substr(220,contentLength) + '<p><span class="adddotss"><a href="javascript:;">schliessen</a></span></p></div>';
			element.html(newContent);
		}
	}
	
	$('.dots a').click(function() {
		$('.littleredhood .dots').hide();
		$('.ridingthewolf').show();
		return false;
	});
	
	$('.adddotss a').click(function() {
		$('.littleredhood .dots').show();
		$('.littleredhood').show();
		$('.ridingthewolf').css('display', 'none !important');
		return false;
	}); */
	
	/* Berwertung abgeben */
	$('.add_rating a').click(function() {
		var isbn = $(this).attr('rel');
		$('.votingdata').empty();
		$('.votingdata').addClass('loading');
		$.get("/rating/addrating?isbn=" + isbn, function(data){
			$('.votingdata').removeClass('loading');
			$('.votingdata').html(data);
		});
		return false;
	});
	
	/** Kommentieren */
	$('#addcomment_send').click(function() {
		var comment = $('#comment_content').val();
		
		if(comment.length > 12) {
			$.post("/comments/savecomment", { isbn: $('#isbn_info_string').html(), comment: comment, user: $('#sth_info_string').html() }, function(data){
				var currentHeight = $('.commentsbox').height();
				$('.commentsbox').css('height', currentHeight + 'px');
				$('.commentsbox').empty();
				$('.commentsbox').addClass('loading');
				loadComments($('#isbn_info_string').html(), 1);
				$('.addcommentbox').remove(); 
				$.scrollTo('.addcommentbox', 800);
			});
		} else {
			alert('Bitte gib einen etwas längeren Kommentar ein!');
			$('#comment_content').focus();
		}
	});
	
	if($('.commentsbox').length > 0) {
		loadComments($('#isbn_info_string').html(), 1);
	}
	
	$('.markas').click(function() {
		var operation = $(this).attr('rel');
		if(operation == 'all') {
			$('.messagelist input').attr('checked', true);
		} else if(operation == 'none') {
			$('.messagelist input').attr('checked', false);
		} else {
			$('.messagelist input').each(function() {
				if($(this).attr('rel') == operation) {
					$(this).attr('checked', true);
				} else {
					$(this).attr('checked', false);
				}
			});
		}
		return false;
	});
	
	$('#work-checked-messages').change(function() {
		var label = $('#work-checked-messages :selected').attr('title');
		if(label.length > 0) {
			var confirmer = confirm('Aktion \'Alle markierten Nachrichten ' + label + '\' durchführen?');
			if(confirmer) {
				$('#messages-listed').submit();
			}
		}
	});
	
	/* angebotsdetail */
	if($('.small-nav').length > 0) {
		$('.small-nav a').each(function(i) {
			if(i == 0) {
				$(this).addClass('active');
			} else {
				var elementName = $(this).attr('rel');
				$(this).removeClass('active');
				$('.' + elementName).hide();
			}
		});
	}
	
	$('.small-nav a').click(function() {
		var elementName = $(this).attr('rel');
		$(this).addClass('active');
		$('.' + elementName).show();
		
		$('.small-nav a').each(function() {
			var elementhideName = $(this).attr('rel');
			if(elementName != elementhideName) {
				$(this).removeClass('active');
				$('.' + elementhideName).hide();
			}
		});
		
	});
	
	/* user */
	$('#icq').blur(function() {
		var val = $(this).val();
			val = val.replace(/-/g, "");
		$(this).val(val);
	});
	
	$('#city_id').change(function() {
		var val = $(this, 'selected').val();
		$.get('/index/ajaxcitieslist?cid=' + val, function(data){
			$('#uni_id').empty();
			$('#uni_id').html(data);
		});
	});
	
	/* Merkzettel */
	$('.add2merkzettel').click(function() {
		var attrib = $(this).attr('rel');
		$.get('/user/add2merkzettel?parameter=' + attrib, function(data){
			if(data == 'insert') {
				alert('Das Buch wurde auf deinem Merkzettel markiert!');
			} else if(data == 'delete') {
				alert('Das Buch wurde von deinem Merkzettel entfernt!');
			} else if(data == 'nologin') {
				var confirmer = confirm('Der Merkzettel kann nur von eingeloggten Mitgliedern genutzt werden!\nJetzt einloggen?');
				if(confirmer) {
					document.location.href='/login';	
				}
			}
			loadMerkzettel();
		});
	});
	loadMerkzettel();
	
	var B = [];
	var A = [38,38,40,40,37,39,37,39,66,65];
	
	$(document).keydown(function(C) {
		B.push(C.keyCode);
		if(B.length > A.length) {
			B = B.slice((B.length-A.length))
		}
		if(B.toString().indexOf(A.toString()) >= 0) {
			B = [];
			showEasterEgg();
		}
	});
});

function showEasterEgg() {
	var bgwidth = $('body').outerWidth();
	var bgheigth = $('body').outerHeight()+100;
	
	var boxTop = $(window).height();
	var topped = parseInt(boxTop)-362;
	
	$('html').append('<div onclick="$(this).remove();$(\'#easter-box\').remove();" class="easter" id="overlay" style="background:#fff !important;background-color: #fff !important;width:' + bgwidth + 'px;height:' + bgheigth + 'px;">&nbsp;</div><div onclick="$(this).remove();$(\'#overlay\').remove();" id="easter-box" style="left:0px;top:' + topped + 'px"><img src="/images/easter.jpg" title="Wooooooooha!" /></div>');
	
}

function getIsIE() {
	var version = null;
	if (navigator.appName == "Microsoft Internet Explorer") {
		version = navigator.appVersion.charAt(22);
	}
	version = parseInt(version);
	
	if(version == 6 || version == 7) {
		return true;
	} else {
		return false;
	}
}

function loadMerkzettel() {
	$.get('/user/countmerkzettel', function(data){
		$('.merkzettel span').empty();
		$('.merkzettel span').html(data);
		$('#merkzettelCount').empty();
		$('#merkzettelCount').html(data);
	});
}

function loadComments(isbn, page) {
	$.get('/comments/loadcomments?isbn=' + isbn + '&page=' + page, function(data){
		$('.commentsbox').html(data);
		$('.commentsbox').css('height', 'auto');
		$('.commentsbox').removeClass('loading');
	});
}

function indexcityselectloadcities(state_id) {
	$('.change-city').empty();
	$('.change-city').html('<p>&nbsp;</p>');
	$('.change-city').addClass('loading');
	$.get('/user/ajaxchangecity?state_id=' + state_id, function(data){
		$('.change-city').empty();
		$('.change-city').html(data);
		$('.change-city').removeClass('loading');
	});
}

function indexcityselectsetchange(reallyset) {
	var city_id = $('#city_select :selected').val();
	var state_id = $('#state_select :selected').val();
	
	$.get('/user/ajaxchangecity?set=' + reallyset + '&state_id=' + state_id + '&city_id='+city_id, function(data){
		$('span.meine-stadt').empty();
		$('span.meine-stadt').html(data);
		
		alert('Einstellung übernommen!');

		removeChangeCity();
		
		/* Bücherbox neu laden 
		$.get('/index/bookbox', function(data){
			$('#frameset').empty();
			$('#frameset').html(data);
			$('#frameset').removeClass('loading');
		});
		*/
		document.location.reload();
	});
}

function removeChangeCity() {
	$('.change-city').empty();
	$('.change-city').html('<p>&nbsp;</p>');
	$('.change-city').hide();
}


function ajaxisbngesuche() {
	$.get('/books/ajaxisbngesuche?isbn='+ $('#isbn_info_string').html(), function(data){
		$('#isbnoffers').empty();
		$('#isbnoffers').html(data);
	});
}
function ajaxisbnoffers() {
	$.get('/books/ajaxisbnoffers?isbn='+ $('#isbn_info_string').html(), function(data){
		$('#isbnoffers').empty();
		$('#isbnoffers').html(data);
	});
}

function getGETParameter(name) {
	name = name.replace(/[\[]/,'\\\[").replace(/[\]]/,"\\\]');
	var regexS = '[\\?&]'+name+'=([^&#]*)';
	var regex = new RegExp( regexS );
	var results = regex.exec( window.location.href );
	if( results == null )
	  return "";
	else
	  return results[1];
}

var isGetInitialized=false;
function testajax (isbn, type, target) 
{
	var zeige = getGETParameter("zeige");
	if (!isGetInitialized && zeige=='gesuche') {
		type = 'ajaxisbngesuche';
		isGetInitialized = true;
	}
	
	if($('#formtest').length > 0) {
		var formData = $("#formtest").serializeArray();
	} else {
		var formData = {};
		formData.isbn = isbn;
		formData.callname = $('#callname_info_string').html();
	}
	
	var orderstr=1;
	var page=1;
	if (!page) {
		page=1;
	}
	
	if (!target) {
		target=type;
	}
	
	//ajaxisbngesuche
	//ajaxsinglemorebooks
	if (!type) {
		type = 'ajaxisbnoffers';
	}
	
	
	
	//var pathed = 'ajaxisbnoffers';
	//var url = '/books/' + pathed + '?isbn='+ isbn + '&callname='+ callname + '&p='+page+ '&orderstr='+ orderstr;
	var url = '/books/' + type;
	
	$.post(url, formData, function(data){
			$('#'+target).empty();
			$('#'+target).html(data);
		});
}

//function changeAjaxPage (page, maxPerPage) {
function changeAjaxPage (page) {
	//alert("changed");
	$("#ajaxPageValue").val(page);
	//$("#ajaxMaxPerPageValue").val(maxPerPage);
	$('#formtest').change();

}

function testx () {
	alert(1);
	if($('#isbnoffers').length > 0) {
		var page = getGETParameter("p"); 
		var typ = $('#isbnoffers').attr('rel');
		if(typ == 'gesuche') {
			pathed = 'ajaxisbngesuche';
		} else {
			pathed = 'ajaxisbnoffers';
		}
		$.post('/books/' + pathed + '?isbn='+ $('#isbn_info_string').html() + '&callname='+ $('#callname_info_string').html() + '&p='+page+ '&orderstr='+ $('#isbn_order_string').html(), function(data){
		//$.get('/books/' + pathed + '?isbn='+ $('#isbn_info_string').html() + '&p='+page, function(data){
			$('#isbnoffers').empty();
			$('#isbnoffers').html(data);
		});
	}
}

