$(document).ready(function(){
	cookie_array();
//	check_basket('buy'); //track
//	check_basket('b-buy'); //album
	
	
  $("a.b-buy")
	       .click(function(){cart('album',this.id); this.title='В корзине'; return false})
	$("td.buy a[class != 'disable']")
	       .click(function(){cart('track',this.id); return false});
/*	$("td.buy a.disable")
	       .click(function(){return false});*/
	$("ul.search-index li")
	       .click(function(){toggle_search(this); return false});
	
	$("div.recomended div.decor li")
				.click(function(){recomended_active(this)});
	       
	       
})



function preview (el) {
	var object_onclick = "this.title = this.title == 'остановить' ? 'проиграть' : 'остановить'";
	
	var cols = document.getElementsByTagName ('td');
	var colsClass = el.className;

	for (var i = 0; i < cols.length; i++) {
		if (cols[i].className == colsClass && cols[i].firstChild.tagName != 'A') {
			cols[i].innerHTML = '<a title="проиграть" href="' + previewContent + '" onclick="return false"></a>';
			cols[i].onclick = function (event) { preview (this) };
		}
	}
	previewContent = el.firstChild.href;
	el.onclick = '';
	el.innerHTML = ''+
	'<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="22" height="22" title="остановить" onclick="' + object_onclick + '"><PARAM NAME=movie VALUE="/img/preview.swf"><PARAM NAME=flashvars value="source_mp3='+previewContent+'&splay=on&button_color=0xffffff"><PARAM NAME=quality VALUE=high><PARAM NAME=menu VALUE=false><PARAM NAME=scale VALUE=noscale><PARAM NAME=salign VALUE=TC><PARAM name=wmode value=transparent>'+
	'<EMBED src="/img/preview.swf" flashvars="source_mp3='+previewContent+'&splay=on&button_color=0xffffff" width="22" height="22" wmode="transparent" menu=false quality=high scale=noscale salign=TC swLiveConnect=true TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">'+
	'</EMBED></OBJECT>';
}

function indexPreview (el) {
	var activeClass = 'activePreview';

	if (el.className != activeClass) {
	
		$('tr.' + activeClass).removeClass(activeClass);
			
		el.className = activeClass;
		var elPreview = $('tr.' + activeClass + ' td.preview');
		preview(elPreview[0])
	}
}

function validphone() {
	var ip_error = document.getElementById('ip_error');
	var phone_error = document.getElementById('phone_error');
	
	ip_error.innerHTML = phone_error.innerHTML = '';
	
	if (document.alternatecredit.ip.value != '') {
		document.getElementById('ip_error').innerHTML = '';
		if (document.getElementById('phone').value != '') {
				if (!document.getElementById('phone').value.match(/[^0-9\(\)\-\+\ ]+/)) 
					//open_softkey (email, username, userid);
					return true;
				else phone_error.innerHTML = 'недопустимые символы'; return false
			}
		else  phone_error.innerHTML = 'поле не заполнено'; return false
	}
	else  ip_error.innerHTML = 'поле не заполнено'; return false
}


function credit () {
	var ip = document.alternatecredit.ip; //деньги
	var ps = document.alternatecredit.ps; //способ оплаты
	var ps_option = ps.getElementsByTagName('option');
	predel = 12;
	
		if (ip.value && ip.value < 100) {
			for (var i = predel; i < ps_option.length; i++) {
				ps_option[i].selected = false; // safari
				ps_option[i].disabled = true;
			}
			ps_option[0].selected = true;
			ps.onchange = function (event) {credit_ie(ps_option, predel)};
		}
		else {
			for (var i = predel; i < ps_option.length; i++) 
				ps_option[i].disabled = false;
				ps.onchange = '';
		}
}



function credit_ie (el_option, predel) {
	for (var i = predel; i < el_option.length; i++) {
		if (el_option[i].selected == true) {
			alert('Минимальная сумма платежа для данного способа оплаты - 100 руб.')
			el_option[0].selected = true;
		}
	}
}

function view_albums (div, urls, start, c, loadimage) {
	var div_in = document.getElementById(div);
	var div_hid = document.getElementById('hid-'+div);
	loading_name = div=='band' ? 'loading_bands' : 'loading';
	var loading = document.getElementById(loading_name);
	loadimage = loadimage ? loadimage : '';
	start = loadimage == '' ? start : start + c;
	
	//if (loadimage == '' && div != 'band') view_albums (div, urls, start, c, '&short=yes');
		
	
	var req = false;
	if (window.XMLHttpRequest) { req = new XMLHttpRequest(); if (req.overrideMimeType) req.overrideMimeType('text/xml'); } else if (window.ActiveXObject) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } }
		
		if (req) {
		req.onreadystatechange = function() {
			if (req.readyState !== 4 && loadimage == '') loading.style.visibility = 'visible';
			if (req.readyState == 4) if (req.status == 200) {
				//if (loadimage == '') {
					div_in.innerHTML = req.responseText;
					//alert('in:' + req.readyState);
					if (loadimage == '') loading.style.visibility = 'hidden';
				//	}
				//else div_hid.innerHTML = req.responseText;
		 	}
		}
			req.open('GET', urls + 'start=' + start + loadimage, true);
			req.send(null);
		}
}


function discover(e) {
	var active = $(e).hasClass("active");
	$("ul.list-genre > li").removeClass("active");
	if (!(active)) $(e).addClass('active')
}


function enable_form (track, el) {
var checks = document.getElementsByTagName('input');
	var buy = 0;
	var album = document.getElementById('album');
	for (var i = 0; i < checks.length; i++)
		if (checks[i].className == 'buy' && checks[i].checked) buy++;
		if (buy > 0) {
			if (track==buy) {
				album.action = '';
				window.location="/account/basket/?buy_album=" + el;
				return false;
			}
			else {
				album.action = '/account/basket/';
				album.submit();
			}
		}
		else {
			album.action = '';
			return false;
			}
}

function summ (track, album_price, album) {
var checks = document.getElementsByTagName('input');
var out = document.getElementById('track_summ');
var buy = 0;
var count = 0;
	for (var i = 0; i < checks.length; i++) {
		if ((checks[i].className == 'buy' && checks[i].checked) || (checks[i].className == 'del_album' && !(checks[i].checked))  || (checks[i].className == 'del_track' && !(checks[i].checked))) {
			count++;
			buy += checks[i].id * 1;
		}
	}
	buy = count==track ? album_price : buy;
	out.innerHTML = Math.round(buy) != buy ? buy.toFixed(2) : buy;
	if (document.album_form && document.album_form.buytrack) document.album_form.buytrack.disabled = (count > 0) ? false : true;
}

function enable (track, el) {
		var buy = album_input ();
		if (buy > 0) {
			if (track==buy) 
				cart('album', el);
			else {
				var checks = document.getElementsByTagName('input');
				for (var i = 0; i < checks.length; i++)
				if (checks[i].className == 'buy' && checks[i].checked) cart('track', checks[i].value);
			}
			window.location = '/account/basket/';
		}
		else {document.album_form.buytrack.disabled = true;}
}

function album_input() {
	var checks = document.getElementsByTagName('input');
	var buy = 0;
	for (var i = 0; i < checks.length; i++)
		if (checks[i].className == 'buy' && (checks[i].checked || (checks[i].type == 'hidden' && checks[i].id != ''))) buy++;
	return buy;
}

function validate_search (el) {
	src = el.query.value;
	if (src.length == 0) return false;
	if (src.length > 2) return true;
	else return false;
}

function WinResize() {
		i = document.getElementById("cover-full");
		ww = i.width + 55
		hh = i.height + 95
		if (ww < 300) ww = 300;
		if (ww > 900) ww = 900;
		if (hh > 725) hh = 725;
		window.resizeTo(ww,hh);
}


function getCookie( name ) {
	var start = document.cookie.indexOf( name + '=' );
	var len = start + name.length + 1;
	if ( ( !start ) && ( name != document.cookie.
substring( 0, name.length ) ) ) {
		return null;
	}
	if ( start == -1 ) return null;
	var end = document.cookie.indexOf( ';', len );
	if ( end == -1 ) end = document.cookie.length;
	return unescape( document.cookie.substring( len, end ) );
}
	
function setCookie( name, value, expires, path, domain, secure ) {
	var today = new Date();
	today.setTime( today.getTime() );
	if ( expires ) {
		expires = expires * 1000 * 60 * 60 * 24;
	}
	var expires_date = new Date( today.getTime() + (expires) );
	document.cookie = name+'=' + value +
		( ( expires ) ? ';expires='
+expires_date.toGMTString() : '' ) +
//expires.toGMTString()
		( ( path ) ? ';path=' + path : '' ) +
		( ( domain ) ? ';domain=' + domain : '' ) +
		( ( secure ) ? ';secure' : '' );
}
	
function deleteCookie( name, path, domain ) {
	if ( getCookie( name ) ) document.cookie = name + '=' +
			( ( path ) ? ';path=' + path : '') +
			( ( domain ) ? ';domain=' + domain : '' ) +
			';expires=Thu, 01-Jan-1970 00:00:01 GMT';
}

function delete_all_cart () {
	var r=confirm("Очистить предварительную корзину? \n");
	if (r==true) {
		setCookie('cart_tracks', '', 30, '/');
		setCookie('cart_albums', '', 30, '/');
		window.location = '/account/basket/';
	}
	
	else
		return false
}

function cookie_array() {
 cookie_tracks = getCookie('cart_tracks')!= null ? getCookie('cart_tracks').split(',') : [];
 cookie_albums = getCookie('cart_albums') != null ? getCookie('cart_albums').split(',') : [];
}

function cart (el, elId) {
	cookie_array();
	
	var cookieVar = el=='track' ? cookie_tracks : cookie_albums;
	var cookieName = 'cart_' + el + 's';
	var trackSumm = 0;
	
	
		if (cookieVar == '') {
			cookieVar[0] = elId;

			setCookie(cookieName, cookieVar, 30, '/')
			}
		else {
			for (var s=0; s<cookieVar.length; s++) 
					if(cookieVar[s] == elId) trackSumm = ++trackSumm;
			if (trackSumm == 0)
					addToCart(cookieVar, cookieName, elId)
		}
	window.location = '/account/basket/';
}

function addToCart(cookieVar, cookieName, elId) {
	cookieVar[cookieVar.length] = elId;
	setCookie(cookieName, cookieVar, 30, '/')
}


function check_basket(el) {
		var cookieVar = el=='buy' ? cookie_tracks : cookie_albums;
		var classElement = el == 'buy' ? 'td.' + el + ' a': 'a.' + el
		var classElementName = el == 'buy' ? 'disable': el + ' disable';
			$(classElement).filter (	
				function (pos){
					for (var i = 0, j = cookieVar.length; i < j; i++) {
						if (cookieVar[i] == this.id) {
							this.className = classElementName;
							this.innerHTML = 'в корзине';
					}
				}
    	}
		)
	}

function track_reload () {
	var checks = document.getElementsByTagName('input');

	for (var i = 0; i < checks.length; i++) {
			if (checks[i].className == 'del_track' && checks[i].checked == true) {
				del_el_cookie ('track', checks[i].value)
			}
			if (checks[i].className == 'del_album' && checks[i].checked == true) {
				del_el_cookie ('album', checks[i].value)
			}
		}
	window.location='/account/basket/';

}
	
function cart_del (element, id, button) {
	var tr = button.parentNode.parentNode;
	var del_input = tr.getElementsByTagName('input')[0];

	del_el_cookie (element, id);

	del_input.value = '';
	del_input.id = '';
	tr.style.display = 'none';
	
	if (document.basket.save && album_input() == 0) document.basket.save.disabled = true;
}

function del_el_cookie (element, id) {
	var cookieVar = element=='track' ? cookie_tracks : cookie_albums;
	var cookieName = 'cart_' + element + 's';
	
	for (var s=0; s<cookieVar.length; s++) {
		if(cookieVar[s] == id) cookieVar.splice(s, 1);
	}
	setCookie(cookieName, cookieVar, 30, '/')
}

function toggle_search (el) {
	$("ul.search-index li").removeClass('current')
	$(el).toggleClass('current')
		var divId = el.id.replace(/(index)*/, '');
	if (divId == 'all') {
		$("div.search_blocks").animate({opacity: 'show'}, "fast");
		$("div.footer").css({bottom: '0px'});
	}
	else {
		$("div.search_blocks").css({display:"none"})
		var divIdName = 'div#search'+divId;
		$(divIdName).animate({opacity: 'show'}, "fast");
		$("div.footer").css({bottom: '0px'});
	}
}


function req(divIn, pageUrl, error, ifGood) {
	var req = false;
	if (window.XMLHttpRequest) { req = new XMLHttpRequest(); if (req.overrideMimeType) req.overrideMimeType('text/xml'); } else if (window.ActiveXObject) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } }
	if (req) {
		req.onreadystatechange = function() {
			//if (req.status == 500) error;
			if (req.readyState == 4) if (req.status == 200) {
					divIn.innerHTML = req.responseText;
					ifGood
		 	}
		}
			req.open('GET', pageUrl);
			req.send(null);
		}
}

function view_user (userblock, req_url) {
	var req = false;
	//var userblock = document.getElementById('account');
	//var req_url = "/account/userblock/?sidebar=yes"
	if (window.XMLHttpRequest) { req = new XMLHttpRequest(); if (req.overrideMimeType) req.overrideMimeType('text/html'); } else if (window.ActiveXObject) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } }
	if (req) {
		req.onreadystatechange = function() {
			if (req.readyState == 4) {
			if (req.status == 200) userblock.innerHTML = req.responseText;
				else {userblock.innerHTML = '<span class="error">Не удалось получить данные</span>';}
			}
		 }
		req.open('GET', req_url, true);
		req.send(null);
	}
}

function select_all (element) {
	var form_name = document.getElementById('album') ? 'album' : 'basket'
	var inputs = document.getElementById(form_name).getElementsByTagName ('input');
	for (var i = 0; i < inputs.length; i++)
		if(inputs[i].type == 'checkbox' &&  inputs[i].disabled == false) {
			if ((form_name == 'basket' && inputs[i].className != 'buy') || form_name == 'album') inputs[i].checked = element.checked;
		}
}

function track_info (el, track_id) {
	var req = false;
	var info = document.createElement ('div');
	info.className = 'trackinfo';
	info.innerHTML = 'Загрузка информации о треке';
	el.parentNode.appendChild (info);
	el.onclick = function (event) { remove_track_info (this, track_id); return false}
	el.title = 'Скрыть информацию о треке';

	if (window.XMLHttpRequest) { req = new XMLHttpRequest(); if (req.overrideMimeType) req.overrideMimeType('text/xml'); } else if (window.ActiveXObject) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } }
	if (req) {
		req.onreadystatechange = function() { if (req.readyState == 4) if (req.status == 200)
			info.innerHTML = req.responseText;
		 };
		req.open('GET', '/track/' + track_id + '/', true);
		req.send(null);
	}
}


function remove_track_info (el, track_id) {
	var elParent = el.parentNode;
	$(elParent).find('div').remove()
	el.onclick = function (event) { track_info (this, track_id); return false}
	el.title = 'Показать информацию о треке';
}

function addRemoveClass (el, className) {
	if (el.className) {
		el.removeAttribute('class')
		el.removeAttribute('className')
	}
	else el.className = className;
}


function letterLang(el, current, otherlang) {
		var alfabet = 'alfabet_' + current;
		var alfabet_other = 'alfabet_' + otherlang;
		document.getElementById(alfabet_other).style.display = 'block';
		document.getElementById(alfabet).style.display = 'none';
		el.innerHTML = otherlang;
		el.onclick = function (event) {letterLang(this, otherlang, current)};
}

function inner_block (el_parent, el_children, item_length) {
	var el = el_parent + ' ' + el_children;
	var itemLength = item_length;
	
	$(el).filter (	
		function (pos){
				while (this.offsetHeight > itemLength) {
					var symbol = this.innerHTML.search(/.[^ -]*[^ +&,.-]*$/)
					//alert(symbol);
					this.innerHTML = this.innerHTML.substr (0, symbol) + '...'
				}
		}
	)
}

function buy_value(el) {
	var check = el.getElementsByTagName('input');
	var count_check = 0;
	
	for (var i = 0; i < check.length; i++) {
		if ((check[i].className == 'del_track' || check[i].className == 'del_album') && !(check[i].checked)) {
			check[i+1].checked = true;
			count_check++;
		}
	}
	if (count_check > 0)
		return true
	else {
		alert('Не выбраны треки и/или альбомы для покупки');
		return false
	}
}

function recomended_active (el) {
	$('div.recomended li').removeClass('active'); $(el).addClass('active')
}

function recLoadTrack(albumId, position) {
	innerDiv = document.getElementById('play' + position);
	req(innerDiv, '/account/album/'+ albumId +'/?play=yes');
	innerDiv.style.display = 'block'
}


function flv_video (data, img) {
document.write(
'<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="300" height="265" id="videoplayer" align="middle">' +
'<param name="allowScriptAccess" value="sameDomain" />' +
'<param name="allowFullScreen" value="false" />' +

//'<param name="movie" value="/video/videoplayer.swf?settings=/video/settings.xml&data=' + data + '&img=' + img + '" /><param name="quality" value="high" />' +
'<param name="movie" value="/video/videoplayer.swf" /><param name="quality" value="high" />' +
'<param name="flashvars" value="settings=/video/settings.xml&data=' + data + '&img=' + img + '"/>' +

//'<param name="movie" value="/video/videoplayer.swf?settings=/video/settings.xml&data=/video/preview.flv&img=' + img + '" /><param name="quality" value="high" />' +
'<embed src="/video/videoplayer.swf?settings=/video/settings.xml&data=' + data + '&img=' + img + '" quality="high" width="300" height="265" name="videoplayer" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" />' +
'</object>');
}