// Виклик форми для голосування function callAuthMark() { $("div#markOfAnswer").css("display", "block"); $("button#bz_hide_close").css("display", "inline-block"); $("div.markBlock").css("display", "block"); $("button#export_to_pdf").hide(); $("div.formMark").hide(); $("fieldset.answ").hide(); $("div#ques_comments_window").hide(); } // Перевірка наявності Email-а в БД function emailExist() { //var newLastName = $( "input#last_name" ).val(); var newFirstName = $( "input#first_name" ).val(); var newEmail = $( "input#email" ).val(); //if email exist Update var exist = "t=emailExist" + "&email=" + newEmail; /*if (!newLastName.match(/^([a-zA-Zа-яА-ЯіІїЇєЄ ]{3,100})$/)) { alert("Невірно заповнено поле Прізвище!"); return false; }*/ if (!newFirstName.match(/^([a-zA-Zа-яА-ЯіІїЇєЄ ]{3,100})$/)) { alert("Введіть Ваше І’мя!"); return false; } if (newEmail == "") { alert("Не заповнено поле Email!"); return false; } if (!newEmail.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{1,6})+$/)) { alert("Невірно заповнено поле Email!"); return false; } /*if (!document.getElementById("email").hasAttribute("verified")) { alert("Email не підтверджено!"); return false; }*/ //console.log("email = " + newEmail); $.ajax({ url: "/admin/sign", type: "POST", data: exist, dataType : "JSON", success: function (json) { //console.log(json); if (json.res != "error") { switch (json.res) { case "ok": //authValidate(); showDiv(); break; case "no": var cid = json.cid; markValidate(cid); break; default: //console.log(json.msg); break; } } else { alert(json.msg); } } }); } // Перевірка правильності Email-а function showDiv() { var newEmail = $( "input#email" ).val(); if (newEmail == "") { alert("Не заповнено поле Email!"); return false; } if (!newEmail.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{1,6})+$/)) { alert("Невірно заповнено поле Email!"); return false; } if (document.contains(document.getElementById("auth"))) { document.getElementById("auth").remove(); //document.getElementById("email").removeAttribute("disabled"); } //else { //if (document.contains(document.getElementById("ans"))) { // document.getElementById("ans").remove(); //} else { //authDiv(); //document.getElementById("checkform").setAttribute("disabled", "disabled"); //document.getElementById("email").setAttribute("disabled", "disabled"); // } //} authDiv(); /* if (document.contains(document.getElementById("auth"))) { document.getElementById("auth").remove(); } else { if (document.contains(document.getElementById("ans"))) { document.getElementById("ans").remove(); } else { //document.getElementById("checkform").setAttribute("disabled", "disabled"); document.getElementById("email").setAttribute("disabled", "disabled"); } } authDiv();*/ } // Відкриття форми підтвердження Email-а та відправка коду підтвердження function authDiv() { //document.getElementById('hello').style.display = "block"; var htmlDiv = '
\n\
\n\
\n\\n\\n\
'; $("div.hello").append(htmlDiv); $("div.hello").css("display", "block"); var newEmail = $( "input#email" ).val(); var sendmail = "t=sendEmail" + "&email=" + newEmail; //console.log("email = " + newEmail); $.ajax({ url: "/admin/sign", type: "POST", data: sendmail, dataType : "JSON", success: function (json) { //console.log(json); if (json.res == "ok"){ var VeriKey = json.VeriKey; //console.log(json.res); //console.log("VeriKey = " + VeriKey); } else { alert(json.msg); } } }); } // Перевірка коду підтвердження function chkKey() { var newKey = $( "input#key" ).val(); var chkKey = "t=chkKey" + "&key=" + newKey; //console.log("key = " + newKey); $.ajax({ url: "/admin/sign", type: "POST", data: chkKey, dataType : "JSON", success: function (json) { //console.log(json); if (json.res != "error") { switch (json.res) { case "ok": //console.log(json.res); mailChecked(); break; case "no": //console.log(json.res); alert("Не вірно введено код підтвердження!"); //var cid = json.cid; //markValidate(cid); break; default: //console.log(json.res); break; } } else { alert(json.msg); } } }); } // Підтверджено function mailChecked() { var htmlDiv = '
Email підтверджено!
'; document.getElementById("auth").remove(); //document.getElementById('ans').innerHTML = name; //document.getElementById('hello').style.display = "none"; $("div.hello").append(htmlDiv); $("div.hello").css("display", "block"); $("input.checkform").hide; document.getElementById("email").setAttribute("verified", "verified"); authValidate(); } // Додавання нового гостя function authValidate() { //var newLastName = $( "input#last_name" ).val(); var newFirstName = $( "input#first_name" ).val(); //var newMiddleName = $( "input#middle_name" ).val(); var newEmail = $( "input#email" ).val(); /*if (!newLastName.match(/^([a-zA-Zа-яА-ЯіІїЇєЄ ]{3,100})$/)) { alert("Не вірно заповнено поле Прізвище!"); return false; }*/ if (!newFirstName.match(/^([a-zA-Zа-яА-ЯіІїЇєЄ ]{3,100})$/)) { alert("Не вірно заповнено поле І’мя!"); return false; } var data = "t=addNewConsumer" //+ "&lastName=" + newLastName + "&firstName=" + newFirstName //+ "&middleName=" + newMiddleName + "&email=" + newEmail; $.ajax({ url: "/admin/sign", type: "POST", data: data, dataType : "JSON", success: function (json) { if (json.res == "ok"){ //console.log("cid = " + json.cid); var cid = json.cid; markValidate(cid); } else { alert(json.msg); } } }); } // function markValidate(cid) { var id = $("input#expId").val(); var type = $("input#expType").val(); var markComment = $("textarea#markComment").val(); var radios = document.getElementsByName('markLevel'); var res = false; var radioValue = 0; for (var i = 0; i < radios.length; i++) { if (radios[i].checked) radioValue = radios[i].value; } if (radioValue == 0) { alert("Ви не оцінили відповідь!\nОберіть один з варіантів!"); res = false; } else { if (radioValue > 2) res = true; else { if (markComment != null && markComment != '') res = true; else { alert("Увага!\nЯкщо Ви обрали \"Частково задоволений\" або \"Не задоволений\", вкажіть будь-ласка причину!"); res = false; } } } if (res) { /*console.log("expId = " + id); console.log("expType = " + type);*/ //console.log("cid = " + cid); var markLevel = radioValue; markExist(id, cid, type, markLevel, markComment); //gotoNext(id, cid, type, markLevel, markComment); } } // function markExist(id, cid, type, markLevel, markComment) { //console.log("expId = " + id); //console.log("cid = " + cid); //if id + cid exist - case 2 or update var exist = "t=markExist" + "&expId=" + id + "&cid=" + cid; /* if (!newLastName.match(/^([a-zA-Zа-яА-ЯіІїЇєЄ ]{3,100})$/)) { alert("Невірно заповнено поле Прізвище!"); return false; } if (!newFirstName.match(/^([a-zA-Zа-яА-ЯіІїЇєЄ ]{3,100})$/)) { alert("Невірно заповнено поле І’мя!"); return false; } if (newEmail == "") { alert("Не заповнено поле Email!"); return false; } if (!newEmail.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{1,6})+$/)) { alert("Невірно заповнено поле Email!"); return false; } if (!document.getElementById("email").hasAttribute("verified")) { alert("Email не підтверджено!"); return false; }*/ //console.log("email = " + newEmail); $.ajax({ url: "/admin/sign", type: "POST", data: exist, dataType : "JSON", success: function (json) { //console.log(json); if (json.res != "error") { switch (json.res) { case "ok": //var cid = json.cid; gotoNext(id, cid, type, markLevel, markComment); break; case "no": lastMark = json.lastMark; lastMarkNum = json.lastMarkNum; lastComment = json.lastComment; errMsg = "Ви вже оцінювали цю відповідь...
Бажаєте оновити оцінку?"; strComment = ""; if (lastComment != "" && lastComment != null) strComment = "
Попередній коментар: " + lastComment + "
"; strError = ""; if (errMsg != "" && errMsg != null) strError = "
Увага! " + errMsg + "
"; $("div#loginInWin").remove(); //$("div.mainMenuLogoutButton").after('
'); $("div.markBlock").after('
'); $("div#loginInWin").html("
Ваша попередня оцінка: " + "\"" + lastMark + "\"" +"
" + strComment + strError); $("div#loginInWin").dialog({ modal: true, title: "Ваш результат", width: 300, height: 250, draggable: true, buttons: { "Назад": function () { closeAll(); }, "Оновити": function () { //closeAll(); var markId = json.markId; markUpdate(id, cid, type, markId, lastMarkNum, markLevel, markComment); } }, create: function () { $(this).closest('div.ui-dialog') .find('.ui-dialog-titlebar-close') .click(function (e) { closeAll(); e.preventDefault(); }); } }); //alert("Ви вже оцінювали дану відповідь"); //return false; //default: // console.log(json.msg); // break; } } else { alert(json.msg); } } }); } // function markUpdate(id, cid, type, markId, lastMarkNum, markLevel, markComment) { //console.log("markId = " + markId); //console.log("expId = " + id); //console.log("cid = " + cid); //console.log("markLevel = " + markLevel); //console.log("markComment = " + markComment); //if id + cid exist - case 2 or update var current = "t=markUpdate" + "&markId=" + markId + "&markLevel=" + markLevel + "&markComment=" + markComment; //console.log("email = " + newEmail); $.ajax({ url: "/admin/sign", type: "POST", data: current, dataType : "JSON", success: function (data) { if (data.res != "error") { switch (data.res) { case "ok": updCounter(markLevel, lastMarkNum); outMarkResult(data.markName, markComment, null); break; case "no": outMarkResult(data.markName, markComment, data.msg); break; default: //console.log(data.msg); break; } } else { alert(data.msg); } } }); } function gotoNext(id, cid, type, markLevel, markComment) { //console.log("Form is valid! Go to save [id=" + id + "cid=" + cid + "&type=" + type + "&markLevel=" + markLevel + "&markComment=" + markComment + "]"); //if id + cid exist - case 2 or update $.ajax({ url: "/site/mark", type: "POST", data: "id=" + id + "&cid=" + cid + "&type=" + type + "&markLevel=" + markLevel + "&markComment=" + markComment, dataType: "JSON", success: function (data) { //console.log(data); if (data.res != "error") { switch (data.res) { case "1": incCounter(data.markLevel); outMarkResult(data.markName, data.markComment, null); break; case "2": outMarkResult(data.markName, data.markComment, data.msg); break; default: //console.log(data.msg); break; } } else { alert(data.msg); } } }); } function outMarkResult(mark, markComment, errMsg) { /*console.log("mark = " + mark); console.log("markComment = " + markComment); console.log("error = " + errMsg);*/ strComment = ""; if (markComment != "" && markComment != null) strComment = "
Коментар: " + markComment + "
"; strError = ""; if (errMsg != "" && errMsg != null) strError = "
Увага! " + errMsg + "
"; $("div#loginInWin").remove(); //$("div.mainMenuLogoutButton").after('
'); $("div.markBlock").after('
'); $("div#loginInWin").html("
Вашу оцінку: " + "\"" + mark + "\"" + ", зареєстровано
" + strComment + strError); $("div#loginInWin").dialog({ modal: true, title: "Ваш результат", width: 300, height: 250, draggable: true, buttons: { "Ок": function () { closeAll(); } }, create: function () { $(this).closest('div.ui-dialog') .find('.ui-dialog-titlebar-close') .click(function (e) { closeAll(); e.preventDefault(); }); } }); } function incCounter(markLevel) { //console.log("incCounter[" + markLevel + "]"); var cntMarksAll = $("span#cntMarks").text(); var cntMark = $("span#cntMark" + markLevel).text(); var cntA1 = parseInt(cntMarksAll); var cntA2 = cntA1 + 1; var cntM1 = parseInt(cntMark); var cntM2 = cntM1 + 1; /*console.log("earlier ==> All = " + cntA1 + "; this = " + cntM1); console.log("now ==> All = " + cntA2 + "; this = " + cntM2);*/ $("span#cntMarks").html(cntA2); $("span#cntMark" + markLevel).html(cntM2); } function updCounter(markLevel, lastMarkNum) { //console.log("incCounter[" + markLevel + "]"); //var cntMarksAll = $("span#cntMarks").text(); //console.log("markLevel = " + markLevel); //console.log("lastMarkNum = " + lastMarkNum); var cntMarkIn = $("span#cntMark" + markLevel).text(); //var cntA1 = parseInt(cntMarksAll); //var cntA2 = cntA1 + 1; var cntM1 = parseInt(cntMarkIn); var cntM2 = cntM1 + 1; var cntMarkDel = $("span#cntMark" + lastMarkNum).text(); //var cntA1 = parseInt(cntMarksAll); //var cntA2 = cntA1 + 1; var cntM3 = parseInt(cntMarkDel); var cntM4 = cntM3 - 1; /*console.log("earlier ==> All = " + cntA1 + "; this = " + cntM1); console.log("now ==> All = " + cntA2 + "; this = " + cntM2);*/ //$("span#cntMarks").html(cntA2); $("span#cntMark" + markLevel).html(cntM2); $("span#cntMark" + lastMarkNum).html(cntM4); } /*function callKeyLogin() { //auth("mark"); var needLogin = false; if ($("div.mainMenuLoginButton").length > 0) keyForm("mark"); else { $.ajax({ url: "/site/auth", type: "POST", data: "t=hasRights", dataType: "JSON", success: function (data) { console.log("resCheckHasRights = " + data.res); if (data.res == "ok") { callMark(); } else { logout(); //callKeyLogin(); console.log("needToLogin"); keyForm("mark"); } } }); } } function callEmailLogin() { //auth("mark"); var needLogin = false; if ($("div.mainMenuLoginButton").length > 0) signForm("mark"); else { $.ajax({ url: "/site/auth", type: "POST", data: "t=hasRights", dataType: "JSON", success: function (data) { console.log("resCheckHasRights = " + data.res); if (data.res == "ok") { callMark(); } else { logout(); //callKeyLogin(); console.log("needToLogin"); signForm("mark"); } } }); } } function callAuthMark1() { var htmlDiv = '
\n\
\n\

Оцініть будь-ласка якість наданої відповіді:

\n\
\n\
\n\
\n\
\n\
\n\

Примітки, зауваження, пропозиції:

\n\ \n\
\n\
\n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\ \n\
Прізвище: \n\ \n\
Ім\'я: \n\ \n\
По батькові: \n\ \n\
Email: \n\ \n\ \n\ \n\
\n\
\n\
\n\
\n\
\n\ '; $("div.markBlock").append(htmlDiv); $("div.markBlock").css("display", "block"); // $("div.codeVerify").css("display", "block"); // $("td.codeVerify").hide(); $("button#export_to_pdf").hide(); $("div.formMark").hide(); $("fieldset.answ").hide(); $("div#ques_comments_window").hide(); }*/ /*function emailVerify() { $("div.codeVerify").css("display", "inline"); var newEmail = $( "input#email" ).val(); if (newEmail == "") { alert("Не заповнено поле Email!"); return false; } if (!newEmail.match(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{1,6})+$/)) { alert("Невірно заповнено поле Email!"); return false; } //if email exist Update var exist = "t=emailExist" + "&email=" + newEmail; //console.log("email = " + newEmail); $.ajax({ url: "/admin/sign", type: "POST", data: exist, dataType : "JSON", success: function (json) { console.log(json); if (json.res != "error") { switch (json.res) { case "ok": console.log(json.res); //authValidate(); break; case "no": console.log(json.res); //var cid = json.cid; //markValidate(cid); break; default: console.log(json.res); break; } } else { alert(json.msg); } } }); }*/ /*function markAuthValidate() { var id = $("input#expId").val(); var type = $("input#expType").val(); var markComment = $("textarea#markComment").val(); var radios = document.getElementsByName('markLevel'); var res = false; var radioValue = 0; var newLastName = $( "input#last_name" ).val(); var newFirstName = $( "input#first_name" ).val(); var newMiddleName = $( "input#middle_name" ).val(); var newEmail = $( "input#email" ).val(); // var newIpAddress = $( "input#ip_address" ).val(); var data = "t=addNewConsumer" + "&lastName=" + newLastName + "&firstName=" + newFirstName + "&middleName=" + newMiddleName + "&email=" + newEmail; for (var i = 0; i < radios.length; i++) { if (radios[i].checked) radioValue = radios[i].value; } if (radioValue == 0) { alert("Ви не оцінили відповідь!\nОберіть один з варіантів!"); res = false; } else { if (radioValue > 2) res = true; else { if (markComment != null && markComment != '') res = true; else { alert("Увага!\nЯкщо Ви частково задоволені або не задоволені відповіддю на питання, вкажіть будь-ласка причину!"); res = false; } } } if (res) { //console.log("expId = " + id); //console.log("expType = " + type); var markLevel = radioValue; //gotoNext(id, type, markLevel, markComment); var data = data; $.ajax({ url: "/admin/sign", type: "POST", data: data, dataType : "JSON", success: function (json) { if (json.res == "ok"){ //var markLevel = radioValue; gotoNext(id, type, markLevel, markComment); } else { alert(json.msg); } } }); } } function callMark() { var htmlDiv = '
\n\
\n\

Оцініть будь-ласка якість наданої відповіді:

\n\
\n\
\n\
\n\
\n\
\n\

Примітки, зауваження, пропозиції:

\n\ \n\
\n\ '; $("div.markBlock").append(htmlDiv); $("div.markBlock").css("display", "block"); $("button#export_to_pdf").hide(); $("div.formMark").hide(); $("fieldset.answ").hide(); $("div#ques_comments_window").hide(); }*/ function closeResult() { console.log('closeResultForm'); $("div.markBlock").css("display", "none"); $("div#markOfAnswer").css("display", "none"); //$("div#auth").remove(); $("button#export_to_pdf").show(); $("div.formMark").show(); $("fieldset.answ").show(); if ($("div.markBlock").has("div#loginInWin")) $("div#loginInWin").dialog("close"); //clearRadio(); //document.getElementById('markComment').value=''; //document.getElementById('last_name').value=''; //document.getElementById('first_name').value=''; //document.getElementById('middle_name').value=''; //document.getElementById('email').value=''; //document.getElementById('name').value=''; //$("div#ans").remove(); //document.getElementById("email").removeAttribute("verified"); //document.getElementById("email").removeAttribute("disabled"); //document.getElementById("checkform").removeAttribute("disabled"); $("button#bz_hide_close").hide(); } function closeAll() { console.log('closeAllWasteForm'); $("div.markBlock").css("display", "none"); $("div#markOfAnswer").css("display", "none"); $("div#auth").remove(); $("button#export_to_pdf").show(); $("div.formMark").show(); $("fieldset.answ").show(); if ($("div.markBlock").has("div#loginInWin")) $("div#loginInWin").dialog("close"); clearRadio(); document.getElementById('markComment').value=''; //document.getElementById('last_name').value=''; document.getElementById('first_name').value=''; //document.getElementById('middle_name').value=''; document.getElementById('email').value=''; //document.getElementById('name').value=''; $("div#ans").remove(); document.getElementById("email").removeAttribute("verified"); //document.getElementById("email").removeAttribute("disabled"); //document.getElementById("checkform").removeAttribute("disabled"); $("button#bz_hide_close").hide(); } function clearRadio() { var radioButton1 = document.getElementById("markLevel1"); var radioButton2 = document.getElementById("markLevel2"); var radioButton3 = document.getElementById("markLevel3"); radioButton1.checked = false; radioButton2.checked = false; radioButton3.checked = false; }