if (window.location.search != ''){
		
	pars = new Array();
	pars['platform']='';
	pars['username']='';
	
	pars1 = window.location.search.substring(1).split('&');

	for (i=0; i<pars1.length; i++){

		pars2 = pars1[i].split('=');
		pars[pars2[0]] = unescape(pars2[1]);
	}
	
	name_ = pars['username'];
	platform_ = pars['platform'];
	
} else {

	platform_ = '';
	name_ = '';
	document.forms[0].reset();
}

dt_yes = false;
queue_ = '';
stat2 = '';
today_ = new Date().getTime();

if (typeof(DT_obj) != 'undefined'){

	if (!DT_obj.error && DT_obj.found != 0){

		if (DT_obj.players[0].queue != false){

			queue_ = '<tr><td align="center" colspan="3" class="queue-msg">This player has been queued for the next update and is <span class="bold-num">#'+DT_obj.players[0].queue+'</span> in the queue. Please refresh this page shortly...</td></tr>';
		}

		name_ = DT_obj.players[0].name;
		platform_ = DT_obj.players[0].platform;
		rank_ = DT_obj.players[0].rank; 
		rank_name_ = DT_obj.players[0].rank_name;
		veteran_ = DT_obj.players[0].veteran;
		level_ = DT_obj.players[0].level;
		time_ = Math.round(DT_obj.players[0].time);
		score_ = DT_obj.players[0].score; 
		kills_ = DT_obj.players[0].kills; 
		deaths_ = DT_obj.players[0].deaths;
		date_lastupdate_ = DT_obj.players[0].date_lastupdate;
		elo_ = DT_obj.players[0].elo;
		form_ = DT_obj.players[0].form;
		dogt_total_ = 0;
		kills_dt_ = 0;
		deaths_dt_ = 0;
		knv_kills_ = 0;
		leaderboard_ = 0;
		
		az = 'abcdefghijklmnopqrstuvwxyz';
		dtags = new Array();
		dtags_by_name = new Array();
		dtags_by_qnt = new Array();
		null_dt = 0;
		
		if (DT_obj.players[0].general.dogt){
		
			kills_dt_ = DT_obj.players[0].general.dogt;
		}
		if (DT_obj.players[0].general.dogr){
		
			deaths_dt_ = DT_obj.players[0].general.dogr;
		}
		
		if (DT_obj.players[0].gadgets){
		
			knv_kills_ = DT_obj.players[0].gadgets.knv.kills;
		}

		if (DT_obj.players[0].general.score_rank){
		
			leaderboard_ = DT_obj.players[0].general.score_rank;
		}
		
		
		if (DT_obj.players[0].dogtags){
		
			dogt_total_ = DT_obj.players[0].dogtags.dogt_total;
			
			for (i=0; i<DT_obj.players[0].dogtags.players.length; i++){
			
				if (!isNull(DT_obj.players[0].dogtags.players[i].name)){
				
					dtnm = DT_obj.players[0].dogtags.players[i].name+'';
					if (platform_ == '360'){dtnm = dtnm.replace(/\+/g, ' ');}
					
					dtags.push(dtnm);
					
					bron = DT_obj.players[0].dogtags.players[i].bron;
					silv = DT_obj.players[0].dogtags.players[i].silv;
					gold = DT_obj.players[0].dogtags.players[i].gold;
					
					dtags_by_name[dtnm] = bron+':'+silv+':'+gold;
					dtags_by_qnt[dtnm+'$'] = bron+silv+gold;
				}
			} 
			
			dtags.sort(sortByName);
			dtags_str = ','+dtags.join(',')+',';
		}
		
		knv_kills_ = (kills_dt_ > knv_kills_)?kills_dt_:knv_kills_;
		
		if (dtags.length>0){dt_yes = true;}

		spm_ = addCommas(Math.round(score_/((time_== 0)?1:time_/60)));
		dogtags_ = (dogt_total_>0)?addCommas(dogt_total_)+'/'+addCommas(dtags.length):addCommas(dtags.length);
		if (deaths_== 0){
		
			kd_ = 'N/A';
		
		} else {
		
			kd_ = (Math.round((kills_/deaths_)*100)/100).toFixed(2);
		}
		score_ = addCommas(score_);
		kills_ = addCommas(kills_);
		deaths_ = addCommas(deaths_);
		rank_ = ((rank_<10)?'00':'0')+rank_;
		form_ = ((form_<0)?'form_down':((form_>0)?'form_up':'form_0'));

		date_lastupdate_ = (isNaN(Date.parse(date_lastupdate_)))?'Last updated: '+date_lastupdate_:'This information is '+time2str((today_-Date.parse(date_lastupdate_))/1000)+' old';

		pl_html='<div class="div-wrap"><table width="100%">';

		pl_html+='<tr><td colspan="3" valign="middle" class="black-header2"><table width="100%" cellpadding="0" cellspacing="0"><tr><td align="left">&nbsp;'+name_+'</td><td align="right"><img src="'+platform_+'.png">&nbsp;</td></tr></table></td></tr>';
		pl_html+='<tr><td rowspan="6" align="center" valign ="middle" style="background-color:#f9f9f9;"><img src="ranks/r'+rank_+'.png"></td>';

		pl_html+='<td align="left" class="soldier-data">Rank: <span style="color:#DC8B06;">'+rank_name_+'</span></td><td align="left" class="soldier-data">Total score: <span style="color:#DC8B06;">'+score_+'</span></td></tr>';
		pl_html+='<tr><td align="left" class="soldier-data">Play time: <span style="color:#DC8B06;">'+time2str(time_)+'</span></td><td align="left" class="soldier-data">Score per minute: <span style="color:#DC8B06;">'+spm_+'</span></td></tr>';
		pl_html+='<tr><td align="left" class="soldier-data">BF Veteran level: <span style="color:#DC8B06;">'+veteran_+'</span></td><td align="left" class="soldier-data">'+platform_.toString().toUpperCase()+' Leaderboard position: <span style="color:#DC8B06;">'+addCommas(leaderboard_)+'</span></td></tr>';
		pl_html+='<tr><td align="left" class="soldier-data">Player level: <span style="color:#DC8B06;">'+level_+'</span></td><td align="left" class="soldier-data">Kills: <span style="color:#DC8B06;">'+kills_+'</span></td></tr>';
		pl_html+='<tr><td align="left" class="soldier-data">Skill level: <span style="color:#DC8B06;">'+addCommas(Math.round(elo_))+'</span></td><td align="left" class="soldier-data">Deaths: <span style="color:#DC8B06;">'+deaths_+'</span></td></tr>';
		pl_html+='<tr><td align="left" class="soldier-data">Player form: <span style="color:#DC8B06;"><img src="'+form_+'.gif"></span></td><td align="left" class="soldier-data">K/D ratio: <span style="color:#DC8B06;">'+kd_+'</span></td></tr>';

		pl_html+='<tr><td colspan="3" class="last-update"><table width="100%" cellpadding="0" cellspacing="0"><tr><td align="left">&nbsp;'+date_lastupdate_+'</td><td align="right" style="color:#c1c1c1;font-size:9px;font-weight:bold;">[<a style="color:#DC8B06;" href="http://bfbcs.com/stats_'+platform_+'/'+name_+'">FULL STATS<a>]</td></tr></table></td></tr>';
		pl_html+=queue_;
		pl_html+='</table></div>';
		
		if (dogt_total_>0){
		
			demo_dt_ = dogt_total_ - knv_kills_;
			demo_dt_ = (demo_dt_ <= 0)?0:demo_dt_;
			
		} else {
		
			demo_dt_= 0;
		}
		
		dogt_total_dt_ = demo_dt_+knv_kills_;
		
		
		if (deaths_dt_== 0){
		
			kd_dt_ = 'N/A';
		
		} else {
		
			kd_dt_ = (Math.round((knv_kills_/deaths_dt_)*100)/100).toFixed(2);
		}
		
		knv_kills_ = addCommas(knv_kills_);
		deaths_dt_ = addCommas(deaths_dt_);
		demo_dt_ = addCommas(demo_dt_);
		dogt_total_dt_ = addCommas(dogt_total_dt_);
		
		dt_html='<div class="div-wrap"><table width="100%">';

		dt_html+='<tr><td colspan="5" valign="middle" class="black-header2">DOGTAGS BREAKDOWN</td></tr>';
	
		dt_html+='<tr><td align="center" class="dt-bdh">Total</td><td colspan="3" align="center" class="dt-bdh">Full Game</td><td align="center" class="dt-bdh">Demo/Other</td></tr>';
		
		dt_html+='<tr><td align="center" class="soldier-data"><span style="color:#DC8B06;">'+dogt_total_dt_+'</span></td><td align="center" class="soldier-data">Kills: <span style="color:#DC8B06;">'+knv_kills_+'</span></td><td align="center" class="soldier-data">Deaths: <span style="color:#DC8B06;">'+deaths_dt_+'</span></td><td align="center" class="soldier-data">K/D ratio: <span style="color:#DC8B06;">'+kd_dt_+'</span></td><td align="center" class="soldier-data"><span style="color:#DC8B06;">'+demo_dt_+'</span></td></tr>';
		
		dt_html+='</table></div>';
		
		document.write(pl_html+dt_html);
		
		if (DT_obj.players[0].insiginias && DT_obj.players[0].achievements && DT_obj.players[0].pins && DT_obj.players[0].gadgets){

			knv_b_star_ = (DT_obj.players[0].gadgets.knv.stars.bron > 0)?1:0;
			knv_s_star_ = (DT_obj.players[0].gadgets.knv.stars.silv > 0)?1:0;
			knv_g_star_ = (DT_obj.players[0].gadgets.knv.stars.gold > 0)?1:0;
			knv_p_star_ = (DT_obj.players[0].gadgets.knv.stars.plat > 0)?1:0;
			
			for (x=0; x<DT_obj.players[0].pins.length; x++){
				
				if (DT_obj.players[0].pins[x].name == 'Melee Efficiency Pin'){
				
					eff_pin_cnt_ = DT_obj.players[0].pins[x].count;
					break;
				}
			}
			
			for (x=0; x<DT_obj.players[0].insiginias.length; x++){
				
				if (DT_obj.players[0].insiginias[x].name == 'Distinguished Melee Combat'){
				
					dist_ = (DT_obj.players[0].insiginias[x].count > 0)?1:0;
				}
				
				if (DT_obj.players[0].insiginias[x].name == 'Elite Melee Combat'){
				
					elite_ = (DT_obj.players[0].insiginias[x].count > 0)?1:0;
				}
			}
			
			for (x=0; x<DT_obj.players[0].achievements.length; x++){
				
				if (DT_obj.players[0].achievements[x].name == 'Battlefield Expert'){
				
					mp_ = (DT_obj.players[0].achievements[x].unlocked > 0)?1:0;
				}
				
				if (DT_obj.players[0].achievements[x].name == 'Ten Blades'){
				
					sp_ = (DT_obj.players[0].achievements[x].unlocked > 0)?1:0;
				}
			}
				
			extr_html='<div class="div-wrap"><table width="100%">';
			extr_html+='<tr><td colspan="5" align="left" valign="middle" class="black-header2">&nbsp;AWARDS & ACHIEVEMENTS</td></tr>';
			extr_html+='<tr><td rowspan="2" valign="top" class="award-data" style="background-image:url(\'extra/knv.png\');"><span style="color:#121212;">x</span><b>'+knv_kills_+'</b></td><td class="award-data" style="background-image:url(\'extra/b_star'+((knv_b_star_)?'':'_0')+'.png\');height:100px;">&nbsp;</td><td class="award-data" style="background-image:url(\'extra/s_star'+((knv_s_star_)?'':'_0')+'.png\');height:100px;">&nbsp;</td><td class="award-data" style="background-image:url(\'extra/g_star'+((knv_g_star_)?'':'_0')+'.png\');height:100px;">&nbsp;</td><td class="award-data" style="background-image:url(\'extra/p_star'+((knv_p_star_)?'':'_0')+'.png\');height:100px;">&nbsp;</td></tr>';
			extr_html+='<tr><td class="award-data2">10 knife kills</td><td class="award-data2">25 knife kills</td><td class="award-data2">50 knife kills</td><td class="award-data2">500 knife kills</td></tr>';
			extr_html+='<tr><td valign="top" class="award-data" style="background-image:url(\'extra/eff'+((eff_pin_cnt_>0)?'':'_0')+'.png\');height:100px;"><span style="color:#121212;">x</span><b>'+addCommas(eff_pin_cnt_)+'</b></td><td class="award-data" style="background-image:url(\'extra/dist'+((dist_)?'':'_0')+'.png\');height:100px;">&nbsp;</td><td class="award-data" style="background-image:url(\'extra/elite'+((elite_)?'':'_0')+'.png\');height:100px;">&nbsp;</td><td class="award-data" style="background-image:url(\'extra/mp'+((mp_)?'':'_0')+'.png\');height:100px;">&nbsp;</td><td class="award-data" style="background-image:url(\'extra/sp'+((sp_)?'':'_0')+'.png\');height:100px;">&nbsp;</td></tr>';
			extr_html+='<tr><td class="award-data2">4 knife kills IAR</td><td class="award-data2">100 knife kills</td><td class="award-data2">200 knife kills</td><td class="award-data2">MP: Knife 5 friends</td><td class="award-data2">SP: 10 knife kills</td></tr>';
			
			extr_html+='</table></div>';
			
			document.write(extr_html);
		}
		
	
		if (dt_yes){
	
			tbl = '<table width="100%">';
			tbl+='<tr><td colspan="4" valign="middle" class="black-header2">PLAYER LIST</td></tr>';
			
			if (dogt_total_>0){
	
				tbl+='<tr><td colspan="4" align="center" valign="middle" class="last-update"><img border="0" src="az_view_grey.gif"> <a href="javascript:void(0);" onclick="stat2write();"><img border="0" src="list_view.gif"></a></td></tr>';
			}
			tbl+='<tr><td colspan="4" align="center" class="pre-header">'+DT_obj.players[0].name+' <img src="mel.png"> the following players and took their <img src="dts/dt1.png"><img src="dts/dt2.png"><img src="dts/dt3.png"></td></tr>';
	
			for (i=0; i<az.length; i++){

				regExp = new RegExp(',[^'+az.charAt(i)+'].*?(?=,)','gi');
				dtags_str_n = dtags_str.replace(regExp, '').replace(/^,/,'').replace(/,$/,'');
	
				tbl += tableWrite(az.charAt(i).toUpperCase(),dtags_str_n,platform_);
			}

			dtags_str_n = dtags_str.replace(/,[a-z].*?(?=,)/gi, '').replace(/^,/,'').replace(/,$/,'');
			tbl += tableWrite('Non A-Z',dtags_str_n,platform_);
			tbl += '</table>';

			document.write('<div id="dtstats" class="div-wrap">'+tbl+'</div>');
		}
		
		BBcode = '[URL=http://bfbc2dogtags.com/'+platform_+'/'+escape(name_).replace(/\+/g, '%2B')+'][IMG]http://bfbc2dogtags.com/mydt.gif[/IMG][/URL]';
		HTMLcode = '<a href="http://bfbc2dogtags.com/'+platform_+'/'+escape(name_).replace(/\+/g, '%2B')+'"><img border="0" src="http://bfbc2dogtags.com/mydt.gif"></a>';
		
		code_html ='<div class="div-wrap"><table width="100%">';
		code_html+='<tr><td colspan="2" align="left" valign="middle" class="black-header2">&nbsp;USERBAR</td></tr>';
		code_html+='<tr><td colspan="2" align="center" valign="middle" class="code-data">'+HTMLcode+'</td></tr>';
		code_html+='<tr><td align="right" class="soldier-data">BB&nbsp;code</td><td class="code-data" align="left">'+BBcode+'</td></tr>';
		code_html+='<tr><td align="right" class="soldier-data">HTML&nbsp;code</td><td class="code-data" align="left">'+HTMLcode.replace(/</g,'&lt;').replace(/>/g,'&gt;')+'</td></tr>';
		code_html+='<tr><td align="right" class="soldier-data">URL</td><td class="code-data" align="left"><a style="color:#CC7E04;" href="http://bfbc2dogtags.com/'+platform_+'/'+escape(name_).replace(/\+/g, '%2B')+'">http://bfbc2dogtags.com/'+platform_+'/'+escape(name_).replace(/\+/g, '%2B')+'</a></td></tr>';
		
		code_html+='</table></div>';
		document.write(code_html);

	} else {


		if (DT_obj.error){
		
			er_html_txt = DT_obj.error.message;
	
		} else if (DT_obj.players_nodata){
	
			if (DT_obj.players_nodata[0].queue  == false){
		
				er_html_txt = 'Player <span class="bold-num">'+DT_obj.players_nodata[0].name+'</span> is found, however we are unable to update player profile at this time. Please try again later...';
		
			} else {
		
				er_html_txt = 'Player <span class="bold-num">'+DT_obj.players_nodata[0].name+'</span> is found and is <span class="bold-num">#'+DT_obj.players_nodata[0].queue+'</span> in the queue for the next update. Please refresh this page shortly...';
			}
			
	
		} else {

			er_html_txt = 'There is a problem with your request:<br> "Requested player cannot be found"';
		}

		document.write('<div class="div-wrap"><table width="100%"><tr><td align="center" valign="middle" class="err-msg">'+er_html_txt+'</td></tr></table></div>');
	}

} else {

	if (typeof(TW_obj) != "undefined"){

		tp='<div class="div-wrap"><table width="100%">';
		tp+='<td colspan="2" align="left" class="black-header">&nbsp;OFFICIAL BFBC2 NEWS</td>';

		for (k=0; k<TW_obj.length; k++){

			b_ = (!isNaN(Date.parse(TW_obj[k].created_at)) && (today_-Date.parse(TW_obj[k].created_at))/3600000<168)?'font-weight:bold;':'';
			tp+='<tr><td align="center" valign="middle" width="35" style="height:35px;background-color:#f9f9f9;padding:1px;"><img src="bfbc2.jpg"></td><td align="left" style="'+b_+'line-height:120%;background-color:#f9f9f9;color:#151515;padding:5px;font-size:11px;">'+TW_obj[k].text.replace(/(http\:\/\/.*?)(?=\s|$)/g,'<a style="color:#CC7E04;" href="$1">$1</a>')+' <span style="color:#999999;">['+TW_obj[k].created_at.replace(/\:[^\:]*?$/g, '')+']</span></td></tr>';
		}

		tp+='</table></div>';
		document.write(tp);
	
	} else {
	
		er_html_txt = 'Stat server is overloaded. Please try again in a minute...';
		document.write('<div class="div-wrap"><table width="100%"><tr><td align="center" valign="middle" class="err-msg">'+er_html_txt+'</td></tr></table></div>');
	
	}
}

if (platform_ != ''){

	document.getElementById(platform_).checked=true;
}

if (name_ != '') {
	
	document.getElementById('username').value = name_;
	document.title += ' - '+name_;
}


function jump2top(){

	if (dt_yes){document.location.hash='top';}
}

function sortByName(a,b){

	x = (isNull(a))?'':a.toLowerCase();
    y = (isNull(b))?'':b.toLowerCase();
	
    return ((x < y) ? -1 : ((x > y) ? 1 : 0));
	
}

function stat1write(){
	
	document.getElementById('dtstats').innerHTML = tbl;
}

function stat2write(){

	if (stat2 == ''){
	
		stat2 = '<table width="100%">';
		
		if (tbl != ''){
	
			stat2 += '<tr><td colspan="4" align="center" valign="middle" class="last-update"><a href="javascript:void(0);" onclick="stat1write();"><img border="0" src="az_view.gif"></a> <img border="0" src="list_view_grey.gif"></td></tr>';
		}
		
		stat2 += '<tr><td colspan="4" align="center" class="pre-header">'+DT_obj.players[0].name+' <img src="mel.png"> the following players and took their <img src="dts/dt1.png"><img src="dts/dt2.png"><img src="dts/dt3.png"></td></tr>';
		stat2 += '<tr><td align="center" class="black-header2">USERNAME</td><td align="center" class="black-header2">#&nbsp;DOGTAGS</td><td align="center" class="black-header2">DOGTAGS&nbsp;COLLECTED</td><td align="center" class="black-header2">&gt;</td></tr>';
	
		dtags_by_qnt.sort();
		
		for (var a in dtags_by_qnt){
		
			a = a.replace(/\$$/,'');
		
			dt_data = dtags_by_name[a].split(':');
			dt_img = '';
			
			for (d=0;d<dt_data[0];d++){dt_img+='<img src="dts/dtm1.gif"> ';}
			for (d=0;d<dt_data[1];d++){dt_img+='<img src="dts/dtm2.gif"> ';}
			for (d=0;d<dt_data[2];d++){dt_img+='<img src="dts/dtm3.gif"> ';}

			stat2 += '<tr><td valign="middle" align="right" class="dt-name">'+a.replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;')+'&nbsp;</td><td valign="middle" align="right" class="dt-name">'+dtags_by_qnt[a+'$']+'&nbsp;</td><td valign="middle" align="right" class="dt-name">'+dt_img+'</td><td valign="middle" align="center" width="5%" class="dt-name"><span style="font-family:verdana;color:#999999;font-size:8px;font-weight:bold;">[<a style="color:#DC8B06;font-size:8px;" href="?platform='+platform_+'&username='+escape(a)+'">DT</a>]</span></td></tr>';
		}
	
		stat2 += '<tr><td colspan="4" align="center" valign="middle" class="last-update" style="font-size:12px;padding:7px;"><b>Total:</b> '+addCommas(DT_obj.players[0].dogtags.dogt_bron)+'<img src="dts/dt1.png">'+addCommas(DT_obj.players[0].dogtags.dogt_silv)+'<img src="dts/dt2.png">'+addCommas(DT_obj.players[0].dogtags.dogt_gold)+'<img src="dts/dt3.png"></td></tr></table>';
	}
	
	document.getElementById('dtstats').innerHTML = stat2;
}



function tableWrite(head,content,platform){

	html='';
	dt_nn_html='';
	
	if(content!= ''){
	
		content_arr = content.split(',');
		itr = (content_arr.length < 4)?4:((content_arr.length%4 > 0)?content_arr.length+4-content_arr.length%4:content_arr.length);
	
		html += '<tr><td colspan="4" align="left" class="black-header2">&nbsp;'+head+'</td>';
	
		for (j=0; j<itr; j++){

			if (dogt_total_>0 && typeof(content_arr[j]) != 'undefined'){
			
				dt_nn = dtags_by_name[content_arr[j]].split(':');
				dt_nn_html = dt_nn[0]+'<img src="dts/dt1s.gif">'+dt_nn[1]+'<img src="dts/dt2s.gif">'+dt_nn[2]+'<img src="dts/dt3s.gif"> ';
			}
	
			if (j%4 == 0){html+='</tr><tr>';}
			html+='<td align="right" class="dt-name">'+((typeof(content_arr[j]) != 'undefined')?content_arr[j].replace(/&/g,'&amp;').replace(/</g,'&lt;').replace(/>/g,'&gt;')+'<br><span style="font-family:verdana;color:#999999;font-size:8px;font-weight:bold;">'+dt_nn_html+'[<a style="color:#DC8B06;font-size:8px;" href="?platform='+platform+'&username='+escape(content_arr[j])+'">DT</a>]</span>':'&nbsp;')+'</td>';	
		
		}
	
		html+='</tr>';
	}
	
	return html;
}

function addCommas(num){
	
		return num.toString().split('').reverse().join('').replace(/(\d\d\d)(?=\d)/g, '$1,').split('').reverse().join('');
}

function time2str(t_){

	days_ = parseInt((t_<86400)?0:t_/86400);
	hours_ = ((t_-days_*86400)<3600)?0:parseInt((t_-days_*86400)/3600);
	minutes_ = (((t_-days_*86400)-hours_*3600)<60)?0:parseInt(((t_-days_*86400)-hours_*3600)/60);
	return days_+'d '+hours_+'h '+minutes_+'m';

}

function formSubmit(){

	document.getElementById('loadingImg').style.visibility = "visible";

	pf = (document.getElementById('pc').checked)?'pc':((document.getElementById('360').checked)?'360':((document.getElementById('ps3').checked)?'ps3':''));
	un = escape(document.getElementById('username').value.replace(/^\s+/,'').replace(/\s+$/,''));
	
	if (pf == ''){
	
		alert('PLATFORM option is not selected');
		return;
	}
	
	if (un == ''){
	
		alert('USERNAME field is empty');
		return;
	}
	
	document.location.href='?platform='+pf+'&username='+un;
}

function isNull(what){

	return what==null;
}
