/
user.coding.editor.html
68 lines (68 loc) · 6.11 KB
/
user.coding.editor.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
<div class="panel panel-custom panelCodeEditor"> <!-- content start -->
<div class="panel-heading">
Coding Area<a data-ng-click="collapseOther('bottom-content')" class="collapseIcon" data-ng-class="{expand:getBottomStatus()=='expand',normal:getBottomStatus()=='normal'}"></a>
</div>
<div class="panel-body row" id="bottom-content">
<div class="toolBar">
<div data-ng-class="{active:settingsOpen,inactive:!settingsOpen}">
<a class="settingsToggle" data-ng-click="toggleSettings()" data-ng-hide="currentStateName()==='user.viewCode'">settings</a>
<div class="settingsPanel" data-ng-show="settingsOpen && (currentStateName()=='user.coding' || currentStateName()==='user.practiceCode')">
<a data-ng-click="toggleSettings()" class="closeIcon"></a>
<div class="editorRow">
<label class="textWhite">Editor</label>
<ul class="editorDropDown settingDropDown"><li class="dropdown"><a class="dropdown-toggle disabled">{{getThemeName(themeIdx)}}</a><!--
--><ul class="dropdown-menu">
<li data-ng-repeat="t in themes track by $index"><a data-ng-click="setThemeIdx($index)" data-ng-class="{current: $index === themeIdx}">{{t.name}}</a></li>
</ul></li><!--
--></ul>
</div>
<div class="languageRow">
<label>Language</label>
<ul class="languageDropDown settingDropDown"><!--
--><li class="dropdown"><!--
--><a class="dropdown-toggle">{{getLangName(langIdx)}}</a><!--
--><ul class="dropdown-menu"><!--
--><li data-ng-repeat="l in languages track by $index"><a dropdown-toggle data-ng-click="setLangIdx($index)" data-ng-class="{current: $index === langIdx}">{{l.name}}</a></li><!--
--></ul><!--
--></li>
</ul>
</div>
<div class="lineNumberRow">
<label>Line Number</label>
<div><input type="radio" name="lineNumber" data-ng-value="true" id="showLineNumber" class="lineNumRadio" data-ng-model="showLineNumber" /><label for="showLineNumber" class="lineNumLbl">Show</label></div><!--
--><div><input type="radio" name="lineNumber" data-ng-value="false" id="hideLineNumber" class="lineNumRadio" data-ng-model="showLineNumber" /><label for="hideLineNumber" class="lineNumLbl">Hide</label></div>
</div>
<div class="btnWrapper">
<a data-ng-click="saveSetting()" class="btn btn-settings">OK</a>
</div>
</div>
</div>
<div class="middlePart">
<ul class="actionIcons"><!-- avoid unnecessary blank
<li class="link saveLink" data-ng-hide="currentStateName()==='user.viewCode' || !isConnected()">Save</li> avoid unnecessary blank
--><li class="link clearLink" data-ng-class="{disableLink : disableSubmit()}" data-ng-click="clearEditor()" data-ng-hide="currentStateName()==='user.viewCode' || !isConnected()">Clear</li><!-- avoid unnecessary blank
--><li class="link compileLink" data-ng-click="compileSolution()" data-ng-hide="currentStateName()==='user.viewCode' || !isConnected()">Compile</li><!--
--><li class="link submitLink" data-ng-class="{disableLink : disableSubmit()}" data-ng-click="submitSolution()" data-ng-hide="currentStateName()==='user.viewCode' || !isConnected()">Submit</li>
</ul><!-- avoid unnecessary blank
--><div data-ng-show="currentStateName()==='user.viewCode'">{{languages[langIdx].name}}</div><!--
--><div class="findInput" data-ng-hide="currentStateName()==='user.viewCode' && !isChallengePhase()"><input type="text" name="find" data-ng-model="searchText" data-ng-keypress="inputSearchText($event)" data-ng-change="searchByText()"/><a id="searchByText" data-ng-click="searchByText()" class="searchIcon"></a></div><!-- avoid unnecessary blank
--><div class="gotoInput" data-ng-hide="currentStateName()==='user.viewCode' && !isChallengePhase()"><label for="goto">Go To</label><input type="text" name="goto" id="goto" data-ng-model="gotoLine" data-ng-keypress="inputGotoText($event)"/></div>
</div>
<div class="rightPart">
<div class="challenged" data-ng-if="currentStateName()=='user.viewCode' && isChallengePhase() && isCoderAssigned(username(), defendantRoomID) && isChallenged()">This problem has been successfully challenged. </div><div data-ng-show="(currentStateName()=='user.coding' || currentStateName()==='user.practiceCode' || isChallengePhase() && isCoderAssigned(username(), defendantRoomID) && isInSameRoom()) && !isChallenged()" data-ng-class="{active:testOpen,inactive:!testOpen}"><a class="testToggle" data-ng-click="toggleTest()">{{panelName}}</a>
<div class="testPanel" data-ng-show="testOpen" data-test-panel>
</div>
</div>
</div>
</div>
<div data-ng-class="{showLineNumberPadding:showLineNumber,hideLineNumberPadding:!showLineNumber}" class="paddingRow"></div>
<textarea id="codeArea" name="codeArea" data-ui-codemirror="cmOption" data-ng-model="code" data-ng-class="{disableCursor:cm.options.readOnly}"></textarea>
<script id="script"></script>
<div class="errorBar">
<div data-ng-repeat="i in range(lineNumbers) track by $index" data-ng-class="{error:getErrorMessage($index).length > 0}">
<a data-ng-show="getErrorMessage($index).length > 0" data-tooltip="{{getErrorMessage($index)}}" data-tooltip-placement="left" data-tooltip-popup-delay='500'></a>
</div>
</div><!-- /.errorBar -->
</div>
<div data-test-report class="testReportPanel hide" id="testReport"></div>
</div> <!-- content end -->