<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Question.aspx.cs" Inherits="Quiz.WebSite.Question" %>
<%@ Import Namespace="Quiz.SiteBase" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<meta name="format-detection" content="telephone=no">
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0,user-scalable=no">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<title>绍兴市柯桥区教育满意度调查</title>

<link href="http://vote.on168.com.cn/jindu/assets/reset.css" rel="stylesheet"/>
<link href="http://vote.on168.com.cn/jindu/assets/style.css?1323" rel="stylesheet"/>
<script src="http://vote.on168.com.cn/jindu/assets/jquery-1.8.3.min.js"></script>

<!--[if lte IE 9]>
<script src="http://apps.bdimg.com/libs/html5shiv/3.7/html5shiv.min.js"></script>
<![endif]-->

<link href="http://vote.on168.com.cn/jindu/assets/AlerBottom/AlerBottom.css" rel="stylesheet"/>
<script src="http://vote.on168.com.cn/jindu/assets/AlerBottom/AlerBottom.js"></script>
<style>
	#AlerBottom{ top:45px; z-index:999;}
	#AlerBottom.AlerBottom-loading .AlerBottomBg-in{ background:rgba(255,174,0,0.7)}
	#AlerBottom.AlerBottom-success .AlerBottomBg-in{ background:rgba(255,174,0,0.7)}
	.people{line-height:25px;  border-bottom:1px dashed #e5c97f;}
	.people .name{ display:inline-block; margin-right:10px; }
	.people .mobile{ display:inline-block; float:right;}
	.goTop{ position:absolute; right:0; top:0; width:50px; height:45px; text-align:center; font-size:16px;}
	.goTop:active{ background:#2dd1af; }
	.fa-sort-amount-desc{ -webkit-transform:rotate(-180deg)}
	.loading .la-ball-clip-rotate { display:inline-block; color:#aaa;margin-left:5px;}
</style>

</head>

<body class="bodybg">
	<header class="header">
    	<a class="back" onclick="history.back()"></a>
        <div class="mid">绍兴市柯桥区教育满意度调查</div>
        <a class="goTop" onclick="goTop()"><i class="fa fa-sort-amount-desc"></i></a>
    </header>
    <section class="h-header"></section>
    <section id="submitBg"></section>
    <span class="hasChecked"><span class="hasChecked-num">0</span>/<%=Countall-1 %></span>
    <section class="question-wrap">
    	<h3 class="topTitle">开始答题</h3>
        <section class="h-10"></section>
        <div class="p-school"><span class="schoolname">学校:</span><div class="mid"></div></div> 
        <%--<p class="people"><span class="name">姓名:</span><span class="mobile">手机号码:</span></p> --%>
        <section class="h-30"></section>
        <form id="form1">
            <article class="loading" id="jiazai">加载中 <div class="la-ball-clip-rotate la-mm "><div></div></div></article>
            <!--题目-->
           
        <!--End 题目--> 
            <input type="hidden" id="mobile" name="mobile" />
            <input type="hidden" name="qtype" value="<%=UserType %>"/>
            <input type="hidden" name="name" id="name"/>
            <input type="hidden" name="schoolname" id="schoolname"/>
        <input type="button" id="save" value="提交" onclick="return check();" style="display: none" class="input-submit" />
            </form>
    </section>
	
<div class="MidAler" style="display:none">
	<div class="title">答卷提交</div>
    <div class="info">
    	<div class="loading"><i class="fa fa-circle-o-notch"></i> 提交中...<span></span>%</div>
        <div class="error"><i class="fa fa-minus-circle"></i> 提交失败!请稍候重试(<span>5</span>)</div>
        <div class="success"><i class="fa fa-check-circle"></i> 提交成功!页面跳转中(<span>5</span>)</div>
    </div>
    <div class="progress">
    	<div class="in"></div>
    </div>
</div>
<div class="cover-bg"></div>
<section class="footer">
    <img src="http://vote.on168.com.cn/jindu/images/copyright.gif"/> 杭州顺治科技股份有限公司
    <br/>客服热线:<a>400-826-2468</a>
</section>

<link href="http://vote.on168.com.cn/jindu/assets/icheck/skins/flat/orange.css" rel="stylesheet"/>
<script src="http://vote.on168.com.cn/jindu/assets/icheck/icheck.min.js"></script>

<style>
	.cover-bg{ display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,.7); z-index:1001;}
	.MidAler{ display:none; position:fixed; left:30px; right:30px; min-height:125px; top:50%; margin-top:-62.5px; background:#fff; z-index:1100; border-radius:1px;}
	.MidAler .title{ height:29px; padding:20px 10px 0; text-align:center; font-size:18px; font-weight:bold; line-height:29px;}
	.MidAler .fa{ margin:0 5px;}
	.MidAler .info{ min-height:30px; line-height:30px; padding:15px 10px 25px; text-align:center; font-size:16px;}
	.MidAler .info .loading{ color:#999; display:none;}
	.MidAler .info .loading .fa{ -webkit-animation:rotating 1.2s linear infinite; color:#bbb; font-size:18px;}
	.MidAler .info .error{ color:#e03030; display:none;}
	.MidAler .info .success{ color:#4cb300; display:none;}
	.MidAler .progress{ height:20px; background:#ddd; position:relative;}
	.MidAler .progress .in{ height:100%; width:0; -webkit-transition:all .2s linear;}
	@-webkit-keyframes rotating{
		0%{ -webkit-transform:rotate(0);}
		100%{ -webkit-transform:rotate(360deg);}
	}
</style>

<script>

    //答案的本地储存
    var open_id = 'sxy';
    var localArray = new Array();//本地储存
    var localArray_old = JSON.parse(localStorage.getItem(open_id));//进入页面时读取
    var localArray_old_index = localStorage.getItem(open_id + "@&index");//读取本地存储的索引
    var noscrollArray = localArray_old;//不滑动项副本(在系统勾选时,不需要滑动)
    if (noscrollArray == null) {
        noscrollArray = new Array();//如果没有localArray_old本地储存,则初始化副本数组,以确保不出错
    }

    $(function() {
        var name = localStorage.getItem("name");
        if (name == null || name == "underfined"||name=="") {
            name = "未填写";
        }
        var mobile = localStorage.getItem("mobile");
        var schoolname = localStorage.getItem("schoolname");
        $('.people .name').text("姓名:" + name);
        $('.people .mobile').text("手机号码:" + mobile);
        $('.p-school .mid').text(schoolname);

        $('#mobile').val(mobile);
        $('#name').val(name);
        $('#schoolname').val(schoolname);

        //打开页面时加载
        if (localArray_old) {
            $.AlerBottom({
                status: 'loading', //状态
                msg: '正在加载上次的答题记录..', //文字0
                duration: null, //默认多少秒后隐藏,设null则一直不隐藏
                callback: function() {
                    //如果有本地存储,就加载到存储的最后一题
                    setTimeout(function() {
                        GetQuestion(parseInt(localArray_old_index) + 1, true);
                    }, 500);
                }
            });
        } else {
            $.AlerBottom({
                status: 'loading', //状态
                msg: '题目载入中...', //文字0
                duration: null, //默认多少秒后隐藏,设null则一直不隐藏
                callback: function() {
                    //如果没本地存储,正常加载
                    setTimeout(function() {
                        GetQuestion();
                    }, 500);
                }
            });
        }
        $(window).load(function() {
            $.AlerBottom({
                status: 'loadingEnd', //显示或隐藏,默认为show
                time: 2000,
                duration: null,
                callback: function() {
                    $.AlerBottom({
                        status: 'success',
                        msg: '加载完成',
                        duration: 2000
                    });
                    $('#jiazai').show();

                    //页面加载完成后,再加载广告并显示
                    var $guanggaoImg = $('#guanggao img');
                    $guanggaoImg.attr('src', $guanggaoImg.attr('data-url'));
                    $('#guanggao').show();
                }
            });
        });
    });


    //点击答案后,变更右上角的答题数量,并滑动到下一题
    var checkedNum = 0;
    var $hasCheckedNum = $('.hasChecked-num');
    var $question = $('.question-wrap .question');//如异步加载需重新执行一次
    
    var allNum = $question.length;

    $('.question-wrap').on('ifChecked', '.iradio_flat-orange', function () {
        var $this = $(this);
        localstorageSave(this);//保持到web客户端
        setTimeout(function () {
            checkedNum++;
            $hasCheckedNum.text(checkedNum);
            scrollToNoCheck($this.parents('.question').index());
        }, 100);
    });
    $('.question-wrap').on('ifUnchecked', '.iradio_flat-orange', function () {
        checkedNum--;
        $hasCheckedNum.text(checkedNum);
    });
    

    //点击右下角答题数,

    //答完后跳转到下一题
    function scrollToNoCheck(index) {
        var cur;
        var curId = $question.eq(index).find('.questionId').val();//当前题目的id
        /*判断是否在 不滑动项副本 里
         *  如果在副本里(noscrollArray[curId]!=null),则表示为系统点击触发,不滑动,并且删除该条记录,以确保用户点击时能够滑动
         *  如果不在副本里(noscrollArray[curId]==null),则表示该动作是用户点击触发,进入滑动动作
         */
        if (noscrollArray[curId] == null) {
            //滑动动作
            for (var i = index; i < allNum; i++) {
                cur = $question.eq(i);
                if (cur.find('.checked').length < 1) {
                    var _scrollTo = cur.offset().top - 70;
                    $('body').animate({ 'scrollTop': _scrollTo }, 500);
                    if (localStorage.getItem(open_id + "@&index") == "undefined" || i > localStorage.getItem(open_id + "@&index")) {
                        localStorage.setItem(open_id + "@&index", i);
                    }
                    return false;
                }
                if (i == (parseInt(allNum) - 1) && cur.find('.checked').length > 0) {
                    var _scrollTo = cur.offset().top - 70;
                    $('body').animate({ 'scrollTop': _scrollTo }, 500);
                    localStorage.setItem(open_id + "@&index", i);
                }
            };

            //End 滑动动作
        } else {
            noscrollArray[curId] = null;//将本条从不滑动的数组中去除
        }
    }

    //异步加载
    var current = 0;
    var xhloading = false;

    var _winHeight = $(window).height();
    //var _winHeight2 = _winHeight * 0.5;
    var _nowCur;
    $(window).scroll(function () {
        _nowCur = $(document).height() - $(document).scrollTop() - _winHeight;
        if (_nowCur <= _winHeight) {
            if (!xhloading) { return false; }
            GetQuestion();
        }
    })

    function GetQuestion(num, isFirst) {
        xhloading = false;
        if (!num) {
            num = 20;//num是加载的条数
        }
        if (isFirst == null) {
            isFirst = false;
        }
        var qtype = "<%=UserType%>";
        $.post('Ajax/GetQuestion', {  current: current, num: num,qtype:qtype }, function (json) {
            if (json.Status == 1) {
                    $('#jiazai').before(json.Data);

                    $question = $('.question-wrap .question');//如异步加载需重新执行一次
                    allNum = $question.length;

                    for (var k = current; k < current + num; k++) {
                        var $CurQuestion = $question.eq(k);
                        $CurQuestion.find('input[type="radio"]').iCheck({
                            radioClass: 'iradio_flat-orange'
                        });

                        //将本地读取的答案 - 勾选
                        if (localArray_old != null) {
                            var CurAnswer = localArray_old[$CurQuestion.find('.questionId').val()];

                            if (CurAnswer) {
                                $CurQuestion.find('input[type="radio"]').each(function () {
                                    if ($(this).val() == CurAnswer) {
                                        $(this).iCheck('check');
                                    }
                                })
                            }
                        }
                    }

                    current += num;
                    //GetQuestion();
                    xhloading = true;
                    if (isFirst) {
                        scrollToNoCheck(localArray_old_index);
                    }
                }
                else {
                    $('#save').show();
                    $('#jiazai').html('已加载全部');
                }
            }, 'json');
    }

    //储存到本地
    function localstorageSave(target) {
        var $this = $(target);
        var answer = $this.find('input[type="radio"]').val();
        //console.log(answer);
        var questionId = $this.parents('.b').find('.questionId').val().toString();
        localArray[questionId] = answer;
        localStorage.setItem(open_id, JSON.stringify(localArray));
        //console.log(JSON.parse(localStorage.getItem(open_id)));
    }

    //弹出层进度条,代替圆形进度条
    var $MidAler = $('.MidAler');
    var $MidAler_loading = $MidAler.find('.info .loading');
    var $MidAler_error = $MidAler.find('.info .error');
    var $MidAler_success = $MidAler.find('.info .success');
    var $MidAler_progressIn = $MidAler.find('.progress .in');
    var isEnd = false;
    var $loadingspan = $MidAler_loading.find('span');
    function loading() {
        var _progress = 0;
        isEnd = false;
        $MidAler_progressIn.css({ 'background-color': '#ff9c27', 'width': 0 });
        $loadingspan.text(0);

        $MidAler.fadeIn(300);
        $MidAler_loading.show();
        var _loadingSpanT = setInterval(function () {
            console.log(_progress + ',' + isEnd);
            if (_progress < 60 && !isEnd) {
                _progress += 5;
                $MidAler_progressIn.css('width', _progress + '%');
            } else if (_progress < 95 && !isEnd) {
                _progress += 1;
                $MidAler_progressIn.css({ 'width': _progress + '%', 'background-color': '#83e95f' });
            } else {
                clearInterval(_loadingSpanT);
            }

            $loadingspan.text(_progress);
        }, 200);
    }

    //检查是否全部答完,若没答完,则滑动到该题
    function check() {
        var requiredNum = $('.question-wrap .question.required').length;
        if (checkedNum < requiredNum) {
            $.AlerBottom({
                status: 'error',         //状态
                msg: '抱歉,尚有题目未选择',           //文字0
                duration: 3000             //默认多少秒后隐藏,设null则一直不隐藏
            });
            scrollToNoCheck(0);
            return false;
        }
        else {
            $('.input-submit').addClass('input-gray').attr('disable', 'true');//按钮变灰且不可点
            $('#submitBg').fadeIn(300);//背景变暗
            loading();

            //提交
            var d = $('#form1').serialize();
            $.post('Ajax/questions', d, function (json) {
                if (json.Status == 1) {
                    //提交成功,移除本地储存
                    localStorage.removeItem(open_id);
                    localStorage.setItem(open_id + "count", json.Data);

                    setTimeout(function() {
                        isEnd = true;
                        $loadingspan.text('100');
                        $MidAler_progressIn.css({ 'background-color': '#4cb300', 'width': "100%" });
                        var tick = 6;
                        var $tickspan = $MidAler_success.find('span');
                        $MidAler_loading.hide();
                        $MidAler_success.fadeIn(500);
                        var clock = setInterval(function() {
                            if (tick > 0) {
                                tick--;
                                $tickspan.text(tick);
                            } else {
                                clearInterval(clock);
                                location.href = "Thanks.html?mobile="+$('#mobile').val();
                            }
                        }, 1000);
                    }, 1000);

                }
                else {
                    //$('#submitBg').fadeOut(300);
                    $('.input-submit').removeClass('input-gray').removeAttr('disable');
                    setTimeout(function () {
                        isEnd = true;
                        $loadingspan.text('95');
                        $MidAler_progressIn.css({ 'background-color': '#e03030' });

                        //$pie_progress.find('.pie_progress__error').text(json.Message);
                        if (json.Message == "请勿重复提交") {
                            $MidAler_error.find('.errorMsg').text("您已经答过一次");
                        } else {
                            $MidAler_error.find('.errorMsg').text("提交失败!请稍候重试");
                        };

                        var $tickspan = $MidAler_error.find('.pencent');
                        $MidAler_loading.hide();
                        $MidAler_error.fadeIn(500);
                        var tick = 6;
                        var clock = setInterval(function () {
                            if (tick > 0) {
                                tick--;
                                $tickspan.text(tick);
                            } else {
                                clearInterval(clock);
                                $MidAler_error.hide();
                                $MidAler.fadeOut(300);
                                $('#submitBg').fadeOut(300);
                                $('.input-submit').removeClass('input-gray').removeAttr('disable');
                            }
                        }, 1000);
                    }, 2000)
                }
            }, 'json');
        }
    }

    //返回顶部
    function goTop() {
        $('.goTop').css('background', '#ffcb43');
        $('body').animate({ 'scrollTop': 0 }, 500);
        setTimeout(function() {
            $('.goTop').css('background', 'none');
        }, 1000);
    }
    </script>
    
    <div style="display:none;">
        <!-- #include file="cs.aspx" -->
        <img src="<%= new CS("1259782995").TrackPageView()%>" width="0" height="0"/>
    </div>
</body>
</html>