
function checkParam(param,positionBuild)
{

	if (param) 
	{
		str=users[positionBuild]+''; str=str.toLowerCase(); str=str.replace(/,/g,' '); param=param.toLowerCase();
		if (str.indexOf(param)==-1) {return(false);}
		else return(true);
	}
	
}

//   
var colParam=new Array('','Автор','Кол-во публикаций');


function sortUsers(field,side,type) //field -   (int), side -   (int 0- ; 1- ), type -   (0-int; 1-str)
{
 	var res=new Array();
 	for (i=1; i<selected.length; i++)
		for (j=0; j<(selected.length-i); j++)
			{
				if (type==0)
				{
					if (side==0) {if (parseInt(selected[j][field])>parseInt(selected[j+1][field])) {res=selected[j]; selected[j]=selected[j+1]; selected[j+1]=res}};
					if (side==1) {if (parseInt(selected[j][field])<parseInt(selected[j+1][field])) {res=selected[j]; selected[j]=selected[j+1]; selected[j+1]=res}};
				}
				if (type==1)
				{
					if (side==0) {if (selected[j][field]>selected[j+1][field]) {res=selected[j]; selected[j]=selected[j+1]; selected[j+1]=res}};
					if (side==1) {if (selected[j][field]<selected[j+1][field]) {res=selected[j]; selected[j]=selected[j+1]; selected[j+1]=res}};
				}
			}
	sortString='<tr><th class="noSort">&nbsp;</th>';
	for (i=0;i<colParam.length;i++)
	if ((i==field) && (side==0))
	{
		if (i==2) sortString+='<th align="right" class="sortCol" onMouseOver="className=\'sortColDown\'" onMouseOut="className=\'sortCol\'" onClick="sortUsers('+i+',1,0)">'+colParam[i]+'</th>';
		else if (colParam[i]) sortString+='<th class="sortCol" onMouseOver="className=\'sortColDown\'" onMouseOut="className=\'sortCol\'" onClick="sortUsers('+i+',1,1)">'+colParam[i]+'</th>';
	}
	else
		if ((i==field) && (side==1))
		{
			if (i==2) sortString+='<th align="right" class="sortColDown" onMouseOver="className=\'sortCol\'" onMouseOut="className=\'sortColDown\'" onClick="sortUsers('+i+',0,0)">'+colParam[i]+'</th>';
			else if (colParam[i]) sortString+='<th class="sortColDown" onMouseOver="className=\'sortCol\'" onMouseOut="className=\'sortColDown\'" onClick="sortUsers('+i+',0,1)">'+colParam[i]+'</th>';
		}
		else
			{
				if (i==2) sortString+='<th align="right" class="noSort" onMouseOver="className=\'sortCol\'" onMouseOut="className=\'noSort\'" onClick="sortUsers('+i+',0,0)">'+colParam[i]+'</th>';
				else if (colParam[i]) sortString+='<th class="noSort" onMouseOver="className=\'sortCol\'" onMouseOut="className=\'noSort\'" onClick="sortUsers('+i+',0,1)">'+colParam[i]+'</th>';
			}
    sortString+='</tr>';
visualUsers(selected,0);
}

var selected=new Array();
function createUsers()
{
	sortString=0;
	var count=0;
	var flag=false;
	selected=new Array();

for(var i=0; i<users.length-1; i++)
	{

			if ((checkParam(searchAllFields,i)) || (searchAllFields=='')) 
			{
				selected[count]=new Array(); selected[count]=users[i]; 
//				str.replace(/searchAllFields/g, '<b>'+searchAllFields+'</b>');
				count++;
			}
	}
	visualUsers(selected,0);
}

function reSearch()
{
searchAllFields=document.getElementById('SearchParam').value;
createUsers();
sortUsers(2,1,0);
}

function visualUsers(arg,page)
{
		var str='';
		str+='<table cellpadding="0" cellspacing="1" class="pageNav"><tr>';
if (arg!='')
{
		var perPage=50;
		var lastPage=0;
		str+='<td width="100%" align="right" class="pageNav"><div>страницы:</div></td>';
			for (i=0; i<arg.length; i=i+perPage)
			{ 
				if (i>(arg.length-perPage)) i2=arg.length; else i2=i+perPage;
				if (page!=i/perPage) str+='<td class="pageNav" onMouseOver="className=\'pageNavOver\'" onMouseOut="className=\'pageNav\'" onClick="visualUsers(selected,'+(i/perPage)+')"><div>'+(i+1)+'-'+i2+'</div></td>';
				else str+='<td class="pageNavActive"><div>'+(i+1)+'-'+i2+'</div></td>';
			}
}
		str+='</tr></table>';
if (arg!='')
{		
		if (((page+1)*perPage) > arg.length) lastPage=arg.length; 
		else lastPage=((page+1)*perPage);

		str+='<table cellspacing="0" cellpadding="0" class="searchResult">';
		if (sortString) str+=sortString;
		else 
		{
			sortString='<tr><th class="noSort">&nbsp;</th>';
			for (i=0;i<colParam.length;i++)
			if (i==2) sortString+='<th align="right" class="noSort" onMouseOver="className=\'sortCol\'" onMouseOut="className=\'noSort\'" onClick="sortUsers('+i+',0,0)">'+colParam[i]+'</th>';
			else if (colParam[i]) sortString+='<th class="noSort" onMouseOver="className=\'sortCol\'" onMouseOut="className=\'noSort\'" onClick="sortUsers('+i+',0,1)">'+colParam[i]+'</th>';
			sortString+='</tr>'; str+=sortString;
		}
			for (i=(page*perPage); i<lastPage; i++)
			{
				str+='<td class="col0">'+(i+1)+'</td><td class="col1"><a href="/author/'+arg[i][0]+'">'+arg[i][1]+'</a></td><td class="col2">'+arg[i][2]+'</td></tr>';
			}
		str+='</table>';
} else str+='<table cellspacing="0" cellpadding="0" class="searchResult"><tr><th><center>Nothing</center></td></tr></table>';
document.getElementById("dbX").innerHTML=str;
}


