//测试某个字符是属于哪一类
function CharMode(iN)
{
	if(iN>=48 && iN <=57) //数字
	return 1;
	if(iN>=65 && iN<=90) //大写字母
	return 2;
	if(iN>=97 && iN<= 122)//小写字母
	return 4;
	else 
	return 8;//特殊字符
}

// 计算出当前密码中一共有多少模式
function bitTotal(num)
{
	modes = 0;
	for(i=0;i<4;i++){
		if(num & 1) modes++;
		num>>>=1;
	}
	return modes;
}
// 返回密码的强度级别
function checkStrong(sPW)
{
	if(sPW.length<=5)
	return false; //密码太短
	Modes =0;
	for(i=0; i<sPW.length;i++){
		//测试每一个字符的类别并统计一共有多少中模式。
		Modes|=CharMode(sPW.charCodeAt(i));
	}
	return bitTotal(Modes);
}
// 根据不同的级别显示不同的颜色  
function pwStrength(field)
{
	pwd = document.getElementById(field).value;
	obj = document.getElementById('pass_list');
	objLi = obj.getElementsByTagName('li');
	num = objLi.length;
	for(i=0;i<num;i++){
		objLi[i].className = '';
	}
	S_level = checkStrong(pwd);
	switch(S_level){
		case 1:
			document.getElementById('Llevel').className = 'pass_red';
			break;
		case 2:
			document.getElementById('Mlevel').className = 'pass_blue';
			break;
		case 3:
			document.getElementById('Hlevel').className = 'pass_green';
			break;
	}
}

function reloadPin()
{
	document.getElementById('codeImage').src='/getPin.php?'+Math.random();
}