$(function() {

	var ua = $.browser;
	var runtimes = 'html5';

	var uploader = new plupload.Uploader({
		runtimes : runtimes,
		browse_button : 'selectfile',
		container : 'container',
		max_file_size : '1024mb',
		chunk_size : '16mb',
		url : 'upload.php',
		flash_swf_url : '/plupload/js/plupload.flash.swf',
		silverlight_xap_url : '/plupload/js/plupload.silverlight.xap',
	});

	$('#uploadfiles').click(function(e) {
		uploader.start();
		e.preventDefault();
	});

	uploader.init();

	uploader.bind('FilesAdded', function(up, files) {
		$('#filelist').show();
		$.each(files, function(i, file) {
			$('#filelist').append(
			'<div id="' + file.id + '" class="upload-progress">' +
				file.name + ' (' + plupload.formatSize(file.size) + ') <b></b>' +
			'</div>');
		});

		up.refresh(); // Reposition Flash/Silverlight
		uploader.start();
	});

	uploader.bind('UploadProgress', function(up, file) {
		$('#' + file.id + " b").html(file.percent + "%");
	});

	uploader.bind('Error', function(up, err) {
		$('#filelist').show();
		$('#filelist').append('<div id="' + err.file.id + '" class="upload-progress"><li class="upload-error">'+err.file.name+': '+err.message+'</li></div>');

		up.refresh(); // Reposition Flash/Silverlight
	});

	uploader.bind('FileUploaded', function(up, file, response) {
		var a = $.parseJSON(response["response"]);
		file.size = ConvertFileSize(file.size);
		$('#' + file.id).html('<li class="upload-success"><a href="/'+a["userdir"]+'" class="tip" original-title="'+file.name+' ('+file.size+')">http://www.onedayfiles.com/'+a["userdir"]+'</a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="/img.php?d=http://www.onedayfiles.com/'+a["userdir"]+'/&t=png" id="qr-'+file.id+'" style="float: right"><img width="18" border="0" src="/img/qr.png"></a></li>');
		$('.tip').tipsy({fade: true});
		$('#qr-'+file.id).lightBox({fixedNavigation:false});
	});

	$('.tip').tipsy({fade: true});
	$('.qr').each(function(){
		$(this).lightBox({fixedNavigation:false});
	});

	$('div[id$="html5_container"]').css("z-index", "-1");

	$('#selectfile').mousemove(function(){
		$('#selectfile').css("background-image", "url('/img/promobg2.png')");
	});

	$('#selectfile').mouseout(function(){
		$('#selectfile').css("background-image", "url('/img/promobg.png')");
	});

	$('#selectfile').click(function(){
		if($.browser.mozilla)
			$('input[id$="html5"]').trigger('click');
	});

	$('#auth_user').bind('mousemove', function(){
		$('#auth_user').addClass('button_hover');
	});

	$('#auth_user').bind('mouseout', function(){
		$('#auth_user').removeClass('button_hover');
	});

	$('#auth_user').bind('mousedown', function(){
		$('#auth_user').addClass('button_down');
	});

	$('#auth_user').bind('mouseup', function(){
		$('#auth_user').removeClass('button_down');
	});

	mailru.loader.require('api', function() {
		// инициализируем внутренние переменные
		// не забудьте поменять на ваши значения app_id и private_key
		mailru.connect.init(622228, '242c42c2b86c1fa7dc8e2155a85b1094');
		// регистрируем обработчики событий,
		// которые будут вызываться при логине и логауте
		mailru.events.listen(mailru.connect.events.login, function(session){
			window.location.reload();
		});
		mailru.events.listen(mailru.connect.events.logout, function(){
			window.location.reload();
		});
		// проверка статуса логина, в result callback'a приходит
		// вся информация о сессии (см. следующий раздел)
		mailru.connect.getLoginStatus(function(result) {
			if (result.is_app_user != 1) {
				// пользователь не залогинен, надо показать ему кнопку логина
				// вешаем кнопку логина (пример для jquery)
				//-$('<a class="mrc__connectButton">вход@mail.ru</a>').appendTo('body');
				// эта функция превращает только что вставленный элемент в
				// стандартную кнопку Mail.Ru
				mailru.connect.initButton();
			} else {
				// все ок, можно работать
 				// получаем полную информацию о текущем пользователе
				//mailru.common.users.getInfo(function(result){console.log(result[0].uid)});
			}
		});
	});
});

function ConvertFileSize(size)
{
	var txt = "";
	if(size < 1024) txt = size + " байт";
	else if (size < 1024 * 1024) txt = (size / 1024) + " кб.";
	else if (size < 1024 * 1024 * 1024) txt = (size / 1024 / 1024) + " мб.";
	else if (size < 1024 * 1024 * 1024 * 1024) txt = (size / 1024 / 1024 / 1024) + " гб.";
	return txt;
}

function openAuthForm()
{
	$("#dialogauth").dialog({
		title: "Аутентификация",
		height: 300,
		width: 350,
		modal: true,
		resizable: false,
		draggable: false,
		zIndex: 999991
	});

	$('.fb_button')
		.addClass('fb_button_large')
		.removeClass('fb_button_medium')
		.css('width', '308px')
		.css('margin-left', '8px');

	$('.mrc__connectButton')
		.css('width', '308px')
		.css('background-position', 'center')
		.css('margin-top', '8px')
		.css('margin-left', '8px');

	$('.odkl-oauth-lnk')
		.css('width', '142px')
		.css('background-color', '#FFFFFF')
		.css('background-position', 'center')
		.css('margin-top', '8px')
		.css('margin-left', '8px');
}

function logout(type)
{
	if(type == 1)
	{
		VK.Auth.logout(function()
		{
			location.reload();
		});
	}
	if(type == 2)
	{
		mailru.connect.logout();
	}
	if(type == 3)
	{
		FB.logout(function(response) {
			location.reload();
		});
	}
	return false;
	$.post("logout.php", {}, function(obj){
		if(obj.e == 0) location.reload();
	}, 'json');
}

function doVKLogin() {
	VK.Auth.login(
		onVKlogined,
		VK.access.FRIENDS | VK.access.WIKI
	);
}
function onVKlogined(response)
{
	if(response.session) {
		$.post("/auth.php", {type: 1, r: response}, function(obj)
		{
			if(obj.error == 0) location.reload();
		}, 'json');
		//alert('user: '+response.session.mid);
	} else {
		//alert('not auth');
	}
}

