var winPP,WinPPOk,lgType,f;
var dhtmlxCalendarLangModules = new Array();
 dhtmlxCalendarLangModules["ru"] = {
    langname:     "ru",
    dateformat:   "%d.%m.%Y",
    monthesFNames:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],
    monthesSNames:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],
    daysFNames:   ["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],
    daysSNames:   ["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],
    weekend:      [0, 6],
    weekstart:    1,
    msgClose:     "Закрыть",
    msgMinimize:  "Свернуть",
    msgToday:     "Сегодня"
};
function initWinPP() {winPP = new dhtmlXWindows();winPP.setImagePath("./imgs/");}
function infoHide() {document.getElementById("info").style.display="none";}
function infoShow(Title,text) {var e = document.getElementById("info");e.style.mozOpacity = 1;e.style.opacity = 1;e.style.filter = 'alpha(opacity=100)'; e.style.bottom=(0-(document.body.scrollTop || document.documentElement.scrollTop))+"px";if (Title.length > 40) Title=Title.substr(0,37)+"...";document.getElementById("infoTitle").innerHTML=Title;document.getElementById("infoTxt").innerHTML=text;e.style.display="block";setTimeout("infoHideO()",5000);}
function infoHideO() {var e = document.getElementById("info");var o = parseFloat(e.style.opacity);o.toFixed(2); o=o-0.05; o.toFixed(2);if (o<=0) {infoHide();}else {e.style.mozOpacity=o;e.style.opacity=o;e.style.filter='alpha(opacity='+o*100+')';setTimeout("infoHideO()",100);}}
function ppErrorHandler(type, desc, erData){infoShow("Ошибка",'Тип: '+type+'<br/>Описание: '+desc);return true;}
function chkEnter(evt) {evt = (evt) ? evt : event;var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode : ((evt.which) ? evt.which : 0)); if (charCode != 13) {return true;} eval(WinPPOk); return false;}
function WinPPAlertShow(WinType,txt) {
 document.body.style.overflow="hidden";
 var wAlert = winPP.createWindow("WinPPAlert", 10, 10, 340, 196);
 wAlert.button("park").hide(); wAlert.button("minmax1").hide(); wAlert.button("close").hide(); //wAlert.denyResize();
 var b = '<button onmouseover="this.className=\'h\'" onmouseout="this.className=\'\'" onclick="eval(WinPPOk)">Ok</button>';
 var sb = wAlert.attachStatusBar(); var c;
 switch (WinType) {
 case "Login": case "rLogin": wAlert.setText("Авторизация"); wAlert.setIcon("icon_users.gif", "icon_users.gif");
    window.scrollTo(0,0);
    txt= '<table width="100%" cellpadding="0">'+
    '<tr><td class="l" rowspan="2" style="vertical-align:top;padding-top:2px;">Тип&nbsp;авторизации:</td><td style="width:20px;"><input class="rb" type="radio" name="ltype" onclick=loginType(this.value) value="lp" checked="true"/></td><td>Пользователь,пароль</td></tr>'+
    '<tr><td style="width:20px;"><input class="rb" type="radio" name="ltype" onclick=loginType(this.value) value="uk"/></td><td>Универсальная карта</td></tr></table>'+
    '<table id="lt_lp" width="100%" cellpadding="4" style="border-top:1px solid #A4BED4">' +
    '<tr><td class="l">Пользователь:</td><td><input id="uName" value="'+ppTab.LL+'" onkeypress="return chkEnter(event)"/></td></tr>' +
    '<tr><td class="l">Пароль:</td><td style="text-align:right;"><input type="password" id="uPswd" onkeypress="return chkEnter(event)"/><div class="mes"><a href="javascript:restorePwd(\'res\')">Забыли пароль?</a></div></td></tr>' +
    '</table><table id="lt_uk" width="100%" cellpadding="4" style="display:none;border-top:1px solid #A4BED4">' +
    '<tr><td class="l">Пин&nbsp;код:</td><td><input type="password" id="ukCode" value="" onkeypress="return chkEnter(event)"/></td></tr>' +
    '</table><applet code="ru.fors.pguid.PGUIDApplet" archive="./pguid.jar" width="0" height="0" name="appC" id="appC">'+
    '<param name="legacy_lifecycle" value="true"/></applet>'; WinPPOk="Login()"; lgType="lp";
    if (WinType=="Login") c="CancelLK()"; else c="WinPPAlertHide()";
    b='<a title="Регистрация нового пользователя" href="javascript:showCondition(\'condition\',\'Условия регистрации на портале\')" style="position:absolute;left:5px;top:4px;">Зарегистрироваться</a>'+b;
    b+='<button onmouseover="this.className=\'h\'" onmouseout="this.className=\'\'" onclick="'+c+'">Отмена</button>';
    break;
 case "Confirm": wAlert.setText("Подтверждение"); wAlert.setIcon("icon_confirm.gif", "icon_confirm.gif");
  b+='<button onmouseover="this.className=\'h\'" onmouseout="this.className=\'\'" onclick="WinPPAlertHide()">Отмена</button>';
  wAlert.setDimension(300, 100);
  break;
 case "restoreAlert": wAlert.setText("Сообщение"); wAlert.setIcon("icon_alert.gif", "icon_alert.gif"); break;
 default: wAlert.setText("Сообщение"); wAlert.setIcon("icon_alert.gif", "icon_alert.gif"); WinPPOk="WinPPAlertHide()";
 }
 sb.setText(b);
 wAlert.attachHTMLString('<table class="wh100_0" style="background-color:#E1EFFF;">' +
    '<tbody><tr><td style="padding:5px 5px 5px 5px;vertical-align:top;">'+txt+'</td></tr></tbody></table>');
 wAlert.centerOnScreen();wAlert.setModal(true); wAlert.show();
}
function loginType(v) { var lp=document.getElementById("lt_lp"); var uk=document.getElementById("lt_uk");
  if (v=="lp") {uk.style.display="none";lp.style.display="block";} else {lp.style.display="none";uk.style.display="block";}
  lgType=v;
}

function WinPPAlertHide() {winPP.window("WinPPAlert").close();document.body.style.overflow="auto";}
function Login() { var l,str;
  if (lgType=="lp") {
   l = document.getElementById("uName");if (l.value == "") {l.focus();infoShow("Авторизация","Поле \"Пользователь\" должно быть заполнено.");return;}
   str = "uName=" + l.value;l = document.getElementById("uPswd");if (l.value == "") {l.focus();infoShow("Авторизация","Поле \"Пароль\" должно быть заполнено.");return;} str += "&uPswd=" + l.value;
  } else {l = document.getElementById("ukCode");if (l.value == "") {l.focus();infoShow("Авторизация","Поле \"Пин код\" должно быть заполнено.");return;}
     var a=document.getElementById("appC");
     try {str=a.getData(l.value);
      if (str.substr(0,3)=="er:") {infoShow("Авторизация",str.substr(3));return;}
      str = "uCode="+str.substr(3);
     } catch(e) {infoShow("Авторизация","Не установлен считыватель карт.");return;}
  }
  winPP.window("WinPPAlert").progressOn();winPP.window("WinPPAlert").setText("Проверка данных...");var loader = dhtmlxAjax.postSync("./php/Login.php",str);loader.getXMLTopNode("resp"); var at = loader.doXPath("//resp");winPP.window("WinPPAlert").progressOff();
  if (at[0].getAttribute("status")=="1") {winPP.window("WinPPAlert").close();ppTab.uDesc=at[0].getAttribute("uD");ppTab.UID=at[0].getAttribute("UID");eval(ppTab.aLogin);document.body.style.overflow="auto";}
  else { winPP.window("WinPPAlert").setText("Авторизация");infoShow("Авторизация",at[0].getAttribute("e")); }
}
function Logoff() {var loader = dhtmlxAjax.postSync("./php/Logoff.php","");document.location.replace("./");}
function WinPPBtn(bId,s,c) {if(s) document.getElementById(bId).className=c+"dis";else  document.getElementById(bId).className=c;document.getElementById(bId).disabled=s;}
function ppSortDT(a,b,order){ var adt=a.split(" ");var bdt=b.split(" "); var ad=adt[0].split("."); var at=adt[1].split(":"); var bd=bdt[0].split("."); var bt=bdt[1].split(":");
  if (ad[2]==bd[2]){if (ad[1]==bd[1]){if (ad[0]==bd[0]){if (at[0]==bt[0]){if (at[1]==bt[1]) return (at[2]>bt[2]?1:-1)*(order=="asc"?1:-1); else return (at[1]>bt[1]?1:-1)*(order=="asc"?1:-1);} else return (at[0]>bt[0]?1:-1)*(order=="asc"?1:-1);} else return (ad[0]>bd[0]?1:-1)*(order=="asc"?1:-1);} else return (ad[1]>bd[1]?1:-1)*(order=="asc"?1:-1);} else return (ad[2]>bd[2]?1:-1)*(order=="asc"?1:-1);
}
function ppSortDT2(a,b,order){ var adt=a.split(" ");var bdt=b.split(" "); var ad=adt[0].split(".");var at=adt[1].split(":"); var bd=bdt[0].split("."); var bt=bdt[1].split(":");
  if (ad[2]==bd[2]){if (ad[1]==bd[1]){if (ad[0]==bd[0]){if (at[0]==bt[0]) return (at[1]>bt[1]?1:-1)*(order=="asc"?1:-1); else return (at[0]>bt[0]?1:-1)*(order=="asc"?1:-1);} else return (ad[0]>bd[0]?1:-1)*(order=="asc"?1:-1);} else return (ad[1]>bd[1]?1:-1)*(order=="asc"?1:-1);} else return (ad[2]>bd[2]?1:-1)*(order=="asc"?1:-1);
}
function btnPPOver(b,cn) {if (b.className!="dis") b.className=cn;}
function btnPPdisable(b_id,f) {var b=document.getElementById(b_id);if(f){b.className="dis";} else {b.className="";} b.disabled=f;}


function enableGridSelection(target) {
var appName = navigator.userAgent.toLowerCase();
if(appName.indexOf("msie") > 0 || appName.indexOf("chrome") > 0)
target.onselectstart=function(){return true};
else if (appName.indexOf("firefox") > 0){target.style.MozUserSelect="text";}
else {target.onmousedown=function(){return true};target.style.cursor = "default";}
}

function changePwd(){
  var b = '<button onmouseover="this.className=\'h\'" onmouseout="this.className=\'\'" onclick="WinPPCPOk()">Ok</button><button onmouseover="this.className=\'h\'" onmouseout="this.className=\'\'" onclick="WinPPCPHide()">Отмена</button>';
  var wCP = winPP.createWindow("WinPPCP", 10, 10, 320, 140);
  wCP.setText("Смена пароля пользователя");
  wCP.button("park").hide(); wCP.button("minmax1").hide();wCP.button("close").hide();
  var sb = wCP.attachStatusBar();
  var  dhxLayoutWNU=wCP.attachLayout("1C");
  dhxLayoutWNU.cells("a").hideHeader();
  dhxLayoutWNU.cells("a").childNodes[0].childNodes[1].style.backgroundColor="#E1EFFF";
  dhxLayoutWNU.cells("a").childNodes[0].childNodes[1].childNodes[0].style.overflowY="auto";
  var f='<div id="CPForm" style="padding:5px 5px 5px 5px;';
  if (_isIE) f+='width:100%;';
  f+='">'+
   '<table style="width:100%">'+
   '<tr><td class="fz">Текущий&nbsp;пароль</td><td><input type="password" validate="NotEmpty" style="width:100%;" id="u_opwd" name="u_name"/></td></tr>'+
   '<tr><td class="fz">Новый&nbsp;пароль</td><td><input style="width:100%;" validate="NotEmpty" type="password" id="u_npwd" name="u_pass"/></td></tr>'+
   '</table></div>';
  dhxLayoutWNU.cells("a").attachHTMLString(f);
  wCP.centerOnScreen();wCP.setModal(true); wCP.show();
  sb.setText(b);
}

function WinPPCPOk(){
  var op = document.getElementById("u_opwd").value;
  var np = document.getElementById("u_npwd").value;
 if (!dhtmlxValidation.isNotEmptyReq(op)) {infoShow("Личный кабинет","Поле \"Старый&nbsp;пароль\" должно быть заполнено"); return;}
 if (!dhtmlxValidation.isNotEmptyReq(np)) {infoShow("Личный кабинет","Поле \"Новый пароль\" должно быть заполнено"); return;}
 if (np.length<5) {infoShow("Личный кабинет","\"Новый пароль\" должен содержать не менее 5 символов"); return;}
 winPP.window("WinPPCP").progressOn();
 var str="op="+op+"&np="+np;
 var loader = dhtmlxAjax.postSync("./php/changePwd.php",str);loader.getXMLTopNode("resp"); var at = loader.doXPath("//resp");WinPPCPHide();
 if (at[0].getAttribute("status")=="1") {infoShow("Личный кабинет",at[0].getAttribute("e"));}
 else {infoShow("Личный кабинет",at[0].getAttribute("e"));changePwd();}
//WinPPCPHide();
}
function WinPPCPHide(){ winPP.window("WinPPCP").progressOff(); winPP.window("WinPPCP").close(); }

function restorePwd(id){
  document.body.style.overflow="hidden";
  WinPPAlertHide();
  var wRP = winPP.createWindow("WinPPRP", 10, 10, 340, 140);
  switch (id){
    case 'res': var b = '<button onmouseover="this.className=\'h\'" onmouseout="this.className=\'\'" onclick="WinPPRPOk(\'res\')">Ок</button><button onmouseover="this.className=\'h\'" onmouseout="this.className=\'\'" onclick="WinPPRPHide(1)">Отмена</button>';
                wRP.setText("Восстановление пароля пользователя");
                var str1 = 'Имя&nbsp;пользователя';
                var str2 = 'Новый пароль будет Вам выслан на адрес электронной почты, заполненный при регистрации';
                break;
    case 'act': var b = '<button onmouseover="this.className=\'h\'" onmouseout="this.className=\'\'" onclick="WinPPRPOk(\'act\')">Ок</button><button onmouseover="this.className=\'h\'" onmouseout="this.className=\'\'" onclick="WinPPAAHide(1)">Отмена</button>';
                wRP.setText("Активация аккаунта пользователя");
                var str1 = 'Код&nbsp;активации';
                var str2 = 'Введите код активации, полученный при регистрации';
                break;
  }
  wRP.button("park").hide(); wRP.button("minmax1").hide();wRP.button("close").hide();
  var sb = wRP.attachStatusBar();
  var  dhxLayoutWNU=wRP.attachLayout("1C");
  dhxLayoutWNU.cells("a").hideHeader();
  dhxLayoutWNU.cells("a").childNodes[0].childNodes[1].style.backgroundColor="#E1EFFF";
  dhxLayoutWNU.cells("a").childNodes[0].childNodes[1].childNodes[0].style.overflowY="auto";
  var f='<div id="CRForm" style="padding:5px 5px 5px 5px;';
  if (_isIE) f+='width:100%;';
  f+='">'+
   '<table style="width:100%">'+
   '<tr><td class="fz">'+str1+'</td><td><input type="text" validate="NotEmpty" style="width:100%;" id="u_name" name="u_name"/></td></tr>'+
   '<tr><td colspan="2">'+str2+'</td></tr>'+
   '</table></div>';
  dhxLayoutWNU.cells("a").attachHTMLString(f);
  wRP.centerOnScreen();wRP.setModal(true); wRP.show();
  sb.setText(b);
  document.getElementById("u_name").focus();
}

function WinPPRPOk(id){
  var em = document.getElementById("u_name").value;
  switch (id){
    case 'res': if (!dhtmlxValidation.isNotEmptyReq(em)) {infoShow("Информация","Поле \"Имя&nbsp;пользователя\" должно быть заполнено"); return;}
                var str="em="+em;
                  winPP.window("WinPPRP").progressOn();
                var loader = dhtmlxAjax.postSync("./php/restorePwd.php",str);
                break;
    case 'act': if (!dhtmlxValidation.isNotEmptyReq(em)) {infoShow("Информация","Поле \"Код&nbsp;авторизации\" должно быть заполнено"); return;}
                var str="em="+em;
                  winPP.window("WinPPRP").progressOn();
                var loader = dhtmlxAjax.postSync("./php/Act.php",str);
                break;
    }
  loader.getXMLTopNode("resp"); var at = loader.doXPath("//resp");
  winPP.window("WinPPRP").progressOff();

  if (at[0].getAttribute("status")=="1") {
    WinPPRPHide(0); WinPPOk = "CancelLK()";
    WinPPAlertShow("restoreAlert", at[0].getAttribute("e"));
  }
  else infoShow("Информация",at[0].getAttribute("e"));
}
function WinPPRPHide(n){
  if (n==1) document.location.replace("./");
  document.body.style.overflow="auto";winPP.window("WinPPRP").progressOff(); winPP.window("WinPPRP").close();}


