﻿
window.onresize = function() {
    var fon = document.getElementById("Fon");
    if (fon.style.display != "none") {
    fon.style.width = getWindowWidth() + "px";
    fon.style.height = getWindowHeight() + "px";
    }
}

var textAfter, url, sid, isOne, hiddenname;
var def = [];
var dch;
var chs = [];
var txt = [];
var result = '';
function SurveyInit(_textAfter, _sID, _url, _isOne,_hiddenname) {
    textAfter = _textAfter;
    sid = _sID;
    url = _url;
    isOne = _isOne;
    hiddenname = _hiddenname;
    document.getElementById('Survey').style.display = 'block';
    var fon = document.getElementById("Fon");
    fon.style.display = "block";
    fon.style.width = getWindowWidth() + "px";
    fon.style.height = getWindowHeight() + "px";
    dch = getelems();
    if (dch.length == 1) {
        var e = dch[0];
        e.checked = true;
        e.style.display = 'none';
    }

    for (var i = 0; i < dch.length; i++) {
        var e = dch[i];
        e.checked = false;
        if (e.type == 'text') {
            def.push(e.id);
            def[e.id] = e.value;
        }
    }
}

function getelems() {
    var ad = document.getElementById('Answers');
    if (ad) var ch = ad.getElementsByTagName('input');
    return ch;
}
function sendreport()
{
    var ch = getelems();
    if (ch.length > 1) {
        for (var i = 0; i < ch.length; i++) {
            var e = ch[i];
            if ((e.type == 'checkbox' || e.type == 'radio') && e.checked) {
                var t = e.nextSibling.nextSibling.firstChild;
                var tv = trim(t.value);
                if (t.nodeName.toLowerCase() != 'input') result += ('|' + e.id);
                else if (tv && tv != def[t.getAttribute('id')]) result += ('|' + t.getAttribute('id') + ':' + t.value);
                else txt.push(t);
            }
        }
    }
    else {
        var tar = document.getElementById('Answers').getElementsByTagName('textarea')[0];
        if (tar && tar.value) {
            result = tar.getAttribute('id') + ':' + tar.value;
            txt.push(tar)
        }
        else txt.push(tar);
    }
    send();
}

function send(){
    if(!result)showError();
    else {
        if (textAfter) {
            var da = document.getElementById('Answers');
            da.innerHTML = '';
            da.innerHTML = textAfter;
            da.style.textAlign = 'center';
            document.getElementById('Quest').innerHTML = '';
            var btn = document.getElementById('survey_btn');
            btn.src = 'Images/btn_sclose.png';
            btn.alt = 'закрыть';
            btn.onclick = oClose;
        }
        else oClose();
        new net.ContentLoader('Most.ashx',done,null,'POST','sid='+ sid+'&var='+result);
    }
}
function done(){if(url)location.href=url;}

function oClose() {//alert(hiddenname);
    var date = new Date();
    var ex = new Date(date.getFullYear(), date.getMonth() + 6, date.getDate(), 0, 0, 0);
    document.cookie = hiddenname + '=done; expires=' + ex.toGMTString();
    document.getElementById('Survey').style.display = 'none';
    document.getElementById("Fon").style.display = "none";
}

function showError() {
    if (txt && txt.length) {
        alert('Напишіть своє питання');
        txt[0].focus();
    }
    else if (isOne == "True") alert('Напишіть своє питання');
    else alert('Выберите, пожалуйста, хотя бы один вариант ответа');
}

function trim(str) {
    var _out = str;
    if (str) {
        if (str.charAt(0) == ' ') _out = str.slice(1);
        if (str.charAt(str.length - 1) == ' ') _out = str.slice(0, str.length - 1);
        if (_out.charAt(0) == ' ' || _out.charAt(_out.length - 1) == ' ') _out = trim(_out);
    }
    return _out;
}
function getWindowWidth() {
    var _out;   
    if (document.documentElement && document.documentElement.clientWidth) {
        _out = document.documentElement.clientWidth;
    }
    else if (document.body) {
        _out = document.body.clientWidth;
    }else if (self.innerWidth) {
        _out = self.innerWidth;
    }
    return _out;
}
function getWindowHeight() {
    var _out;
    if (self.innerHeight) {
        _out = self.innerHeight;
    }
    else if (document.documentElement && document.documentElement.clientHeight) {
        _out = document.documentElement.clientHeight;
    }
    else if (document.body) {
        _out = document.body.clientHeight;
    }
    return _out;
}
