//---  Scripting: Seyed Mahdi ©2004 @I.R.IRAN  ---\\
//alert("ali");
function getexpirydate(nodays){
	var UTCstring;
	Today = new Date();
	nomilli=Date.parse(Today);
	Today.setTime(nomilli+nodays*24*60*60*1000);
	UTCstring = Today.toUTCString();
	return UTCstring;
}
function setcookie(arg1, arg2, arg3){
	var arg1, arg2, arg3
	cookiestring = arg1 + "=" + escape(arg2) + ";EXPIRES=" + getexpirydate(arg3);
	document.cookie = cookiestring;
	if(!getcookie(arg1)){
		return false;
	}else{
		return true;
	}
}

function getcookie(arg1){
	var arg1;
	var cookiestring = "" + document.cookie;
	var index1 = cookiestring.indexOf(arg1);
	if (index1==-1 || arg1=="") return ""; 
	var index2=cookiestring.indexOf(';', index1);
	if (index2==-1) index2 = cookiestring.length; 
	return unescape(cookiestring.substring(index1 + arg1.length+1, index2));
}

function DeleteCookie(name) {
	var exp = new Date();
	exp.setTime(exp.getTime() - 1); 
	var cval = getcookie(name);
	if (cval != null) document.cookie = name + "=" + cval + "; expires=" + exp.toGMTString();
}

function encrypt(str, pwd) {
  var prand = "";
  for(var i=0; i<pwd.length; i++) {
    prand += pwd.charCodeAt(i).toString();
  }
  var sPos = Math.floor(prand.length / 5);
  var mult = parseInt(prand.charAt(sPos) + prand.charAt(sPos*2) + prand.charAt(sPos*3) + prand.charAt(sPos*4) + prand.charAt(sPos*5));
  var incr = Math.ceil(pwd.length / 2);
  var modu = Math.pow(2, 31) - 1;
  if(mult < 2) {
    alert("Algorithm cannot find a suitable hash. Please choose a different password. \nPossible considerations are to choose a more complex or longer password.");
    return null;
  }
  var salt = Math.round(Math.random() * 1000000000) % 100000000;
  prand += salt;
  while(prand.length > 10) {
    prand = (parseInt(prand.substring(0, 10)) + parseInt(prand.substring(10, prand.length))).toString();
  }
  prand = (mult * prand + incr) % modu;
  var enc_chr = "";
  var enc_str = "";
  for(var i=0; i<str.length; i++) {
    enc_chr = parseInt(str.charCodeAt(i) ^ Math.floor((prand / modu) * 255));
    if(enc_chr < 16) {
      enc_str += "0" + enc_chr.toString(16);
    } else enc_str += enc_chr.toString(16);
    prand = (mult * prand + incr) % modu;
  }
  salt = salt.toString(16);
  while(salt.length < 8)salt = "0" + salt;
  enc_str += salt;
  return enc_str;
}

function decrypt(str, pwd) {
  var prand = "";
  for(var i=0; i<pwd.length; i++) {
    prand += pwd.charCodeAt(i).toString();
  }
  var sPos = Math.floor(prand.length / 5);
  var mult = parseInt(prand.charAt(sPos) + prand.charAt(sPos*2) + prand.charAt(sPos*3) + prand.charAt(sPos*4) + prand.charAt(sPos*5));
  var incr = Math.round(pwd.length / 2);
  var modu = Math.pow(2, 31) - 1;
  var salt = parseInt(str.substring(str.length - 8, str.length), 16);
  str = str.substring(0, str.length - 8);
  prand += salt;
  while(prand.length > 10) {
    prand = (parseInt(prand.substring(0, 10)) + parseInt(prand.substring(10, prand.length))).toString();
  }
  prand = (mult * prand + incr) % modu;
  var enc_chr = "";
  var enc_str = "";
  for(var i=0; i<str.length; i+=2) {
    enc_chr = parseInt(parseInt(str.substring(i, i+2), 16) ^ Math.floor((prand / modu) * 255));
    enc_str += String.fromCharCode(enc_chr);
    prand = (mult * prand + incr) % modu;
  }
  return enc_str;
}

function codkon(arg1){
	var arg1,khorooji;
	khorooji = encrypt(arg1, resalet);
	return khorooji;
}

function decodkon(arg1){
	var arg1,khorooji;
	khorooji = decrypt(arg1, resalet);
	return khorooji;
}

var Wjodakon = ".!P|B!."
var WdefUsr = document.all.UserNameTB;
var WdefPas = document.all.PassTB;
function Wsetpasskon(arg1){
	var arg1;
	WparUsr = arg1.substring(0, arg1.indexOf(Wjodakon));
	WparPas = decodkon(arg1.substring(arg1.indexOf(Wjodakon)+Wjodakon.length));
	if (WdefUsr!=undefined) WdefUsr.value = WparUsr;
	if (WdefPas!=undefined) WdefPas.value = WparPas;
//	goinside = setTimeout('document.all.beusergif.click();', 1);
//	document.all.beusergif.click();
}

var goinside;
function Wsetpasskon2(arg1){
	var arg1;
	WparUsr = arg1.substring(0, arg1.indexOf(Wjodakon));
	WparPas = decodkon(arg1.substring(arg1.indexOf(Wjodakon)+Wjodakon.length));
	if (document.all.UserName!=undefined) document.all.UserName.value = WparUsr;
	if (document.all.Password!=undefined) document.all.Password.value = WparPas;
//	goinside = setTimeout('document.all.beusergif.click();', 20000);
}

function Wsavepasskon(){
	WparUsr = WdefUsr.value;
	WparPas = WdefPas.value;
	if (WparUsr.length>0 && WparPas.length>0){
		tarkibUP = WparUsr + Wjodakon + codkon(WparPas);
		yseted = setcookie(cookname, tarkibUP, 300);
		/*if (!yseted)
		 alert("!به دليل تنظيمات مرورگر، پارسي‏بلاگ نمي‏تواند رمز شما را در اين دستگاه ذخيره نمايد");*/
	}
}

var Wpasschek = document.all.savepass;
var resalet = "GoT"
function checkpas(){
	if (Wpasschek.checked) Wsavepasskon();
}

function checkkon(){
	DeleteCookie("nocheck");
//	clearTimeout(goinside);
	if (!Wpasschek.checked){
		WdefUsr.value = "";
		WdefPas.value = "";
		DeleteCookie(cookname);
		setcookie("nocheck", "Parsiblog", 300);
	}
}

cookname = "Parsicheck";
if (Wpasschek!=undefined){
	matncookie = getcookie(cookname);
	chekcookie = getcookie("nocheck");
//	alert(matncookie);
	if(matncookie.length>0) Wsetpasskon(matncookie);
	if(chekcookie.length>0) Wpasschek.checked=false;
}

if (document.all.MyMessage!=undefined) if (document.all.MyMessage.innerHTML.indexOf(shakhes)>0) DeleteCookie(cookname);

if (document.all.UserName!=undefined){
	matncookie = getcookie(cookname);
	if(matncookie.length>0) Wsetpasskon2(matncookie);
}
//---  Contact: info@parsiblog.com  ---\\

