indexs.html 10.5 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">

    <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/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/05-util.js"></script>
    <script src="js/03-http.js"></script>
    <script src="js/jquery.iframe-transport.js"></script>
    <script src="js/jquery.ui.widget.js"></script>
    <script  src="js/jquery.fileupload.js"></script>

    <script  src="js/jquery.validationEngine.js"></script>
    <script  src="js/jquery.validationEngine-zh.js"></script>
    <script  src="js/jquery.isotope.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> 

</head>
<body>
    <div class="real-program-content recording-page">
        <div class="row">
            <div class="col-md-8" id="editorpanel">
                <div id="" class="recording-wrap">
                    <div class="recording-header">
                        <ul class="nav nav-tabs pull-left" id="recordertab">
                            <li class="active" style="margin-left: 34px;">
                                <a href="#recordzone" data-toggle="tab"><i class="icon iconfont icon-suspend"></i><p class="pull-right">&nbsp;课程录制区</p></a>
                            </li>
                            <li class="line"></li>
                            <li>
                                <a href="#replayzone" data-toggle="tab"><i class="icon iconfont icon-yulan"></i><p class="pull-right">&nbsp;课程预览区</p></a>
                            </li>
                        </ul>
                        <div id="editorwrapper">
                            <button type="button" class="lang btn btn-default btn-primary pull-right" id="htmlbutton" title="" data-editorname="html"></button>
                        </div>
                    </div>
                    
                    <div id="recordpanel" class="recording-content">
                        <div class="panel-body">
                            <input type="hidden" class="audio-url" value="">
                            <div class="tab-content" style="position:relative;">
                                <div class="tab-pane active" id="recordzone">
                                    <textarea id="HTMLeditor" title="HTML"></textarea>
                                    <textarea id="CSSeditor" title="CSS" style="display: none;"></textarea>
                                    <textarea id="JSeditor" title="Javascript" style="display: none;"></textarea>
                                </div>
                                <div class="tab-pane" id="replayzone">
                                    <textarea id="HTMLplayer"></textarea>
                                    <textarea id="CSSplayer"></textarea>
                                    <textarea id="JSplayer"></textarea>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="pause-shodow hidden">
                    <div class="compile-loading">
                        <img src="img/loading.png" alt="">
                    </div>
                    <div class="compile-reslut" style="display: none;">
                        <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="save_compile">保存并继续录制</button>
                            <button class="btn btn-danger btn-sm" id="cancel_compile">不保存继续录制</button>
                        </div>
                    </div>
                </div>
            </div>

            <div class="col-md-4" id="previewpanel">
                <div id="resultpanel" class="panel panel-default">
                    <div class="panel-heading">
                        <div class="btn-group">
                            <button type="button" class="btn btn-success" id="play" data-status="0" title="" style="display: none;"><</button>
                            <p id="replay">预览录制</p>
                        </div>
                        <div class="btn-group pull-right" id="comprunbtngrp"></div>
                    </div>
                    <div class="panel-body hidden" id="cmprun-output">
                        <div id="resultoutput">
                            <!-- Nav tabs -->
                            <ul class="nav nav-tabs" role="tablist" id="cmprun-tabs">
                                <li class="active"><a href="#stdin" role="tab" data-toggle="tab" class="text-warning">标准</a></li>
                                <li><a href="#cmpinfo" role="tab" data-toggle="tab" class="text-warning">编译</a></li>
                                <li><a href="#stderr" role="tab" data-toggle="tab" class="text-danger">错误</a></li>
                                <li><a href="#output" role="tab" data-toggle="tab" class="text-success">结果</a></li>
                            </ul>
                            <!-- Tab panes -->
                            <div class="tab-content">
                                <div class="tab-pane active padall15" id="stdin">
                                    <input type="text" class="form-control" id="input" placeholder="标准输入">
                                </div>
                                <div class="tab-pane padall15" id="cmpinfo"></div>
                                <div class="tab-pane padall15" id="stderr"></div>
                                <div class="tab-pane padall15" id="output"></div>
                            </div>
                        </div>
                    </div>
                    <div class="panel-body" id="ifrcontainer">
                        <iframe id="resultiframe" frameBorder="0" width="100%"></iframe>
                    </div>
                </div>
            </div>

        </div>
    </div>

    <!-- 录音控制条 -->
    <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 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>