index.html 9.65 KB
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>互动编程</title>
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/responsive/css/bootstrap.min.css">
    <link href="css/validationEngine.jquery.css" rel="stylesheet">
    <link href="css/codemirror.css" rel="stylesheet">
    <link href="css/cm-theme/gbtags.css" rel="stylesheet">
    <link href="css/cm-theme/eclipse.css" rel="stylesheet">
    <link href="css/cm-theme/gbtags-dark.css" rel="stylesheet">
    <link href="css/font/iconfont.css" rel="stylesheet">
    <link href="css/font_all/iconfont.css" rel="stylesheet">
    <link href="css/layout.css" rel="stylesheet">
    <link href="css/main.css" rel="stylesheet">
    <link href="css/recording.css" rel="stylesheet">
    <link rel="stylesheet" href="js/zTree_v3-3.5.27/css/zTreeStyle/zTreeStyle.css">

    <script>
        var gxb_api = "https://restful1.gaoxiaobang.com";
        // var gxb_api = "http://192.168.80.236:8080"

    </script>

    <script src="js/jquery-1.7.1.js"></script>
    <script src="js/bootstrap.js"></script>

    <script src="js/humps-2.0.0/humps.js"></script>

    <script src="js/util/util.js"></script>
    <script  src="js/util/Hourglass.js"></script>


    <script src="js/spin.js"></script>
    <script src="js/ladda.js"></script>

    <script src="js/jquery-ui-1.8.20.custom.js"></script>
    <script src="js/codemirror.js"></script>
    <!-- <script src="js/handlebars-1.3.js"></script> -->
    <script src="js/emmet.js"></script>
    <script  src="js/jshint-2.6.min.js"></script>
    <script  src="js/jstorage.js"></script>

    <script  src="js/jquery.validationEngine.js"></script>
    <script  src="js/jquery.validationEngine-zh.js"></script>
    <script  src="js/jquery.isotope.js"></script>

    <link rel="stylesheet" href="css/demo.css">
    <script type="text/javascript" src="js/zTree_v3-3.5.27/js/jquery.ztree.core.js"></script>
    <!-- resize dom js -->
    <script type="text/javascript">
        $(function() {
            var app = $('#app')
            var appLeft = $('#appLeft');
            var appRight = $('#appRight');
            var handleLM = $('#handleLM');
            var handleMR = $('#handleMR');
            var appContainer = $('#appContainer');
            var appMian = $('#appMian');
            var appFooter = $('#appFooter');
            var appMianHeader = $('#appMianHeader')
            var winWidth = $(window).width();
            var winHeight = $(window).height();

            var isLeftResizing = false;
            var isRightResizing = false;
            var _width = 0;
            var _tempWidth = 0;
            var appLeftRatio = 140 / winWidth;
            var appRightRatio = 320 / winWidth;

            appContainer.height(winHeight - appFooter.height());
            appLeft.width($(window).width() * appLeftRatio);
            appRight.width($(window).width() * appRightRatio);
            appMian.width($(window).width() - appLeft.width() - appRight.width());
            appMianHeader.css('margin-left', -appLeft.width());
            
            $(window).resize(function(event) {
                /* Act on the event */
                appContainer.height(winHeight - appFooter.height());
                appLeft.width($(window).width() * appLeftRatio);
                appRight.width($(window).width() * appRightRatio);
                appMian.width($(window).width() - appLeft.width() - appRight.width());
                appMianHeader.css('margin-left', -appLeft.width());
            });

            // handleLM.on('mousedown', function (e) {
            //     isLeftResizing = true;
            // });
            // handleMR.on('mousedown', function (e) {
            //     isRightResizing = true;
            // });

            // $(document).on('mousemove', function (e) {
            //     if (!isLeftResizing && !isRightResizing){
            //         return;
            //     }

            //     if(isLeftResizing){
            //         _tempWidth = e.clientX;
            //     }else if(isRightResizing){
            //         _tempWidth = app.width() - e.clientX;
            //     }

            //     if(_tempWidth <= 80){
            //         _width = 80;
            //     }else if(_tempWidth >= 230){
            //         _width = 230;
            //     }else{
            //         _width = _tempWidth;
            //     }

            //     if(isLeftResizing){
            //         appLeft.width(_width);
            //         appMian.width($(window).width() - appRight.width() - _width);
            //     }

            //     if(isRightResizing){
            //         appRight.width(_width);
            //         appMian.width($(window).width() - appLeft.width() - _width);
            //     }
                
            // }).on('mouseup', function (e) {
            //     // stop resizing
            //     isLeftResizing = false;
            //     isRightResizing = false;
            // });
        });
    </script>
    <script src="js/gb.js"></script>
    <!-- <script src="js/gbreplayer.js"></script> -->

    <script src="js/gbdebug/mode/xml/xml.js"></script>
    <script src="js/gbdebug/mode/javascript/javascript.js"></script>
    <script src="js/gbdebug/mode/css/css.js"></script>
    <script src="js/gbdebug/mode/htmlmixed/htmlmixed.js"></script> 
    <script src="js/gbdebug/mode/clike/clike.js"></script> 
    <script src="js/gbdebug/mode/php/php.js"></script> 
    <script src="js/gbdebug/mode/python/python.js"></script> 
    <style type="text/css">
        #recordzone,
        #replayzone{
            display: none;
        }
        #recordzone.active,
        #replayzone.active{
            display: block;
        }
    </style>
</head>
<body>
    <div id="app" class="wrapper">
        <div id="appContainer">
            <div id="appLeft">
                <ul id="folder" class="ztree"></ul>
                <div id="handleLM"></div>
            </div>
            <div id="appMian">
                <div id="appMianHeader">
                    <ul class="nav nav-tabs pull-left" id="recordertab">
                        <li class="active"><a href="#recordzone" data-toggle="tab"><i class="icon iconfont icon-suspend"></i>课程录制区</a></li>
                        <li><a href="#replayzone" data-toggle="tab"><i class="icon iconfont icon-yulan"></i>课程预览区</a></li>
                    </ul>
                </div>
                <div id="textarea">
                    <div id="recordzone" class="active">
                        
                    </div>
                    <div id="replayzone">
                        
                    </div>
                </div>
                <div id="handleMR"></div>
            </div>
            <div id="appRight">
            </div>
        </div>
        <div id="appFooter">
            <!-- 录音控制条 -->
            <div class="recording-ctrl-bar">
                <button id="start-recording" class="btn new-recording" type="button" data="1" title="开始录制"></button>
                <button id="re-recoding" class="btn new-recording" type="button" data="1" title="重新录制" style="display: none;"></button>
                <button class="btn pause-recording hidden" id="pause" data-status='0' title="录制暂停中">
                    <img src="img/pause.svg" alt="">
                </button>

                <button class="audio-play hidden" title="播放预览" data="1">
                    <i class="icon iconfont icon-play"></i>
                </button>
                <div class="recording-time" id="timer" value="">00:00:00</div>
                <div class="audio-view" style="display: none;">
                    <audio id="audio" autoplay></audio>
                </div>
                <div class="save-wrap">
                    <input type="button" id="upload" class="upload-teach" disabled="disabled" value="保存">
                    <input type="button" id="savecorde" class="upload-stud" style="display: none;" disabled="disabled" value="保存">
                    <input type="button" id="cancel" value="关闭">
                </div>
            </div>
        </div>
    </div>
    <!--  -->
    <div class="upload-tip" style="display: none;">
        <img src="img/upload_tip.png" alt="">
    </div>


    <!-- 准备开始 -->
    <div id="countdown" style="display: none;">
        <img src="" alt="">
    </div>
    
    <!-- 重新开始 -->
    <div class="re-tips" style="display: none;">
        <div class="re-reslut">
            <div class="tip-header">
                <span>提示</span>
            </div>
            <div class="tip-content">
                <p>你确定要重新录制吗?</p>
            </div>
            <div class="tip-footer">
                <button class="btn btn-success btn-sm" id="re-sure">确定</button>
                <button class="btn btn-danger btn-sm" id="re-cancel">取消</button>
            </div>
        </div>
    </div>
    

    <script src="js/recorder/Myna.js"></script>
    <script src="js/recording/recording.js"></script>

    <script>
    var recorder;
    var _role = getQuery('role');
    var _chapterId = getQuery('chapterId');
    var userId = getQuery('userId');

    var audio = document.querySelector('audio');
    var saveAudio = document.getElementById("save");

 
    // 结束播放事件
    audio.addEventListener("ended", function() {
        console.log('结束播放事件');
        Hourglass.stopTimer();
        $('.audio-play').attr('data', '1')
        $('.audio-play').prop('disabled', false);
    }, false);

    $('#upload').click(function(){
        uploadAudio()
    })

    function uploadAudio(ob) {
        $('.upload-tip').show();
        recorder.upload();
    }
    </script>
</body>
</html>