/*
 * Browse Bar for Megaloverapid | BestJav4u
 * By blacknight@megaloverapid
 * Ver 1.5
 */

var langEB = {
	load_studio: 'Loading ... Get all studios and labels',
	load_genre: 'Loading ... Get all genres',
	load_archive: 'Loading ... Get all archives',
	load_release: 'Loading ... Get all release date',
	load_char: 'Loading ... Get all actress name begins {ch}',
	error: 'Error ... Please try again'
}

// thanks j-gal-lover
var langJB = {
	load_studio: 'すべてのメーカーとレーベル（を開く）',
	load_genre: 'すべてのジャンル（を開く）',
	load_archive: 'アーカイブすべて（を開く）',
	load_release: 'すべての発売日（を開く）',
	load_char: '{ch}で始まる女優名（ローマ字順）（を開く）',
	error: 'エラーです。もう一度試して下さい'
}

var langG = websiteLanguage == 'en' ? langEB : langJB;
 
var browseBar = {
	
	prepare: function() {
		this.isOpening = false;
		this.scroll = new Fx.Scroll('container', {});
		this.idOpening = '';
	},
	
	open: function() {
		if(this.isOpening) return;
		
		this.isOpening = true;
		this.changeToStudio();
		$('bar').morph({'bottom': 0});
	},
	
	close: function() {
		this.isOpening = false;
		$('bar').morph({'bottom': -204});
	},
	
	scrollUp: function() {
		var size = $('container').getScroll();
		this.scroll.start(false, size.y - 60);
	},
	
	scrollDown: function() {
		var size = $('container').getScroll();
		this.scroll.start(false, size.y + 60);
	},
	
	changeToStudio: function() {
		this.closeSubmenu();
		this.change('studio', websiteFullPath + websiteLanguage + '/ajax/studios', langG.load_studio);
	},
	
	changeToGenre: function() {
		this.closeSubmenu();
		this.change('genre', websiteFullPath + websiteLanguage + '/ajax/genres', langG.load_genre);
	},
	
	changeToArchives: function() {
		this.closeSubmenu();
		this.change('archives', websiteFullPath + websiteLanguage + '/ajax/archive', langG.load_archive);
	},
	
	changeToReleaseDate: function() {
		this.closeSubmenu();
		this.change('release', websiteFullPath + websiteLanguage + '/ajax/release', langG.load_release);
	},
	
	changeToActresses: function() {
		if($('browse_atresses_submenu').style.display == 'block') return;
		
		this.closeSubmenu();
		$('browse_atresses_submenu').style.display = 'block';
		this.change('actresses_a', websiteFullPath + websiteLanguage + '/ajax/actresses/a', langG.load_char.substitute({ch: 'A'}));
	},
	
	changeToFriends: function() {
		this.closeSubmenu();
		this.change('friends', '', '');
	},
	
	// changeToActresssName
	change_: function(c) {
		this.change('actresses_' + c, websiteFullPath + websiteLanguage + '/ajax/actresses/' + c, langG.load_char.substitute({ch: c.toUpperCase()}));
	},
	
	change: function(id, link, msg) {
		id = 'browse_' + id;
		if(this.idOpening == id) return;
		
		if(this.idOpening != '' && $(this.idOpening)) {
			$(this.idOpening).style.display = 'none';
		}
		this.scroll.start(false, 0);
		
		if($(id)) {
			$(id).style.display = 'block';
			this.idOpening = id;
			return;
		}
		
		$('browse_load').style.display = 'block';
		$('browse_load').innerHTML = msg;
		
		new Request({
			url: link,
			onSuccess: function(txt) {
				$('browse_load').style.display = 'none';
				new Element('ul', {
					'id': id,
					'class': 'clearfix'
				}).injectAfter('browse_load').innerHTML = txt;
				this.idOpening = id;
			}.bind(this),
			onFailure: function() {
				$('browse_load').innerHTML = langG.error;
				this.idOpening = 'browse_load';
			}.bind(this)
		}).send();
	},
	
	closeSubmenu: function() {
		$('browse_atresses_submenu').style.display = 'none';
	}

}