// Виклик форми для голосування
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 = '
';
$("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 = "";
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 = "";
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\
';
$("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 = '