jQuery.fn.enable = function() {
  return this.each(function(){
    this.removeAttribute("disabled");
  });
};

jQuery.fn.disable = function() {
  return this.each(function(){
	this.setAttribute("disabled", "disabled");
  });
};

function filesize_format(bytes_cnt)
{
	if (bytes_cnt < 1024)
	{
		return bytes_cnt + 'Bytes';
	}

	if (bytes_cnt > 1024*1024)
	{
		return Math.round(bytes_cnt/(1024.0*1024.0)*100)/100 + 'Mb';
	}
	return Math.round(bytes_cnt/(1024.0)*100)/100 + 'Kb';
}

function truncate_string(str, num)
{
	if(str.length > num)
	{
		return str.substr(0, num) + '...';
	}
	return str;
}

function member_files_search_send(from, to)
{
	$('.links_list_input button').disable();
	$('.member_files_search button').disable();

	$('.links_list_existed').hide();
	$('.links_list_deleted').hide();

	$.post('links_checker.php', {search_member_files_date_from: from, search_member_files_date_to: to}, member_files_search_recieve,'json');
}

function member_files_search_recieve(links)
{
	var buf = '';
	for(var id_str in links.links_existed)
	{
		buf+= links.links_existed[id_str].download_url+"\n";
	}
	for(var id_str in links.links_deleted)
	{
		buf+= links.links_deleted[id_str].download_url+"\n";
	}
	if(buf.length>0)
	{
		buf = buf.substr(0, buf.length-1);
	}

	$('.links_list_input textarea').val(buf);
	links_checker_recieve(links);
}

function links_checker_send(links)
{
	$('.links_list_input button').disable();
	$('.member_files_search button').disable();

	$('.links_list_existed').hide();
	$('.links_list_deleted').hide();

	$.post('links_checker.php', {links : links}, links_checker_recieve, 'json');
}

function links_checker_recieve(links)
{
	var upload_window_name = 'upload_' + Math.round(1000000*Math.random());
	$('.links_list_existed tbody').empty();
	$('.links_list_deleted tbody').empty();

	for(var id_str in links.links_existed)
	{
		var tr = document.createElement('tr');
		var td;

		td = document.createElement('td');
		$(td).text(links.links_existed[id_str].id_str);
		tr.appendChild(td);

		td = document.createElement('td');
		$(td).text( truncate_string(links.links_existed[id_str].filename, 30) );
		tr.appendChild(td);

		var a = document.createElement('a');
		a.href=links.links_existed[id_str].download_url;
		a.target = '_blank';
		$(a).text(links_checker_text.download_link);

		td = document.createElement('td');
		td.className = 'col_download';
		td.appendChild(a);
		tr.appendChild(td);

		$('.links_list_existed tbody').append(tr);
	}

	for(var id_str in links.links_deleted)
	{
		var tr = document.createElement('tr');
		var td;

		td = document.createElement('td');
		$(td).text(links.links_deleted[id_str].id_str);
		tr.appendChild(td);

		td = document.createElement('td');
		$(td).text( truncate_string(links.links_deleted[id_str].filename, 30) );
		tr.appendChild(td);


		var a = document.createElement('a');
		a.href = http_abs_path + '/m_upload.php';
		a.target = '_blank';
		$(a).text(links_checker_text.upload_link);

		td = document.createElement('td');
		td.className = 'col_upload';
		td.appendChild(a);
		tr.appendChild(td);

		$('.links_list_deleted tbody').append(tr);
	}

	if($('.links_list_existed tbody > *').length > 0)
	{
		$('.links_list_existed').show();
	}
	if($('.links_list_deleted tbody > *').length > 0)
	{
		$('.links_list_deleted').show();
	}

	$('.links_list_input button').enable();
	$('.member_files_search button').enable();
}

$(function(){
	$('.links_list_input button').click(function(){links_checker_send($('.links_list_input textarea').val())});
	$('.member_files_search button').click(function(){member_files_search_send($('#date_from').val(), $('#date_to').val())});

	$('.links_list_input button').enable();
	$('.member_files_search button').enable();
});