Merge branch 'html-home' into 'main'
Html home See merge request !4
Showing
11 changed files
with
178 additions
and
112 deletions
... | @@ -15,7 +15,7 @@ a{ | ... | @@ -15,7 +15,7 @@ a{ |
15 | color:var(--text-color); | 15 | color:var(--text-color); |
16 | 16 | ||
17 | } | 17 | } |
18 | -.menu{ | 18 | +.voi_menu{ |
19 | display:flex; | 19 | display:flex; |
20 | justify-content:space-between; | 20 | justify-content:space-between; |
21 | align-items:center; | 21 | align-items:center; |
... | @@ -25,10 +25,12 @@ a{ | ... | @@ -25,10 +25,12 @@ a{ |
25 | .menu_bar_content li:hover{ | 25 | .menu_bar_content li:hover{ |
26 | background-color:var(--accent-color); | 26 | background-color:var(--accent-color); |
27 | border-radius: 4px; | 27 | border-radius: 4px; |
28 | + color:var(--text-color); | ||
28 | } | 29 | } |
29 | .menu_bar_icons li:hover{ | 30 | .menu_bar_icons li:hover{ |
30 | background-color:var(--accent-color); | 31 | background-color:var(--accent-color); |
31 | border-radius: 4px; | 32 | border-radius: 4px; |
33 | + color:var(--text-color); | ||
32 | } | 34 | } |
33 | .menu_bar_logo{ | 35 | .menu_bar_logo{ |
34 | font-size: 20px; | 36 | font-size: 20px; |
... | @@ -37,6 +39,9 @@ a{ | ... | @@ -37,6 +39,9 @@ a{ |
37 | .menu_bar_logo i{ | 39 | .menu_bar_logo i{ |
38 | color:var(--accent-color); | 40 | color:var(--accent-color); |
39 | } | 41 | } |
42 | +.basic:hover{ | ||
43 | + color:var(--text-color); | ||
44 | +} | ||
40 | .menu_bar_content{ | 45 | .menu_bar_content{ |
41 | display:flex; | 46 | display:flex; |
42 | list-style: none; | 47 | list-style: none; |
... | @@ -54,13 +59,17 @@ a{ | ... | @@ -54,13 +59,17 @@ a{ |
54 | padding: 8px 12px; | 59 | padding: 8px 12px; |
55 | } | 60 | } |
56 | .menu_toggle{ | 61 | .menu_toggle{ |
62 | + color:var(--text-color); | ||
57 | display: none; | 63 | display: none; |
58 | position: absolute; | 64 | position: absolute; |
59 | right:32px; | 65 | right:32px; |
60 | font-size: 24px; | 66 | font-size: 24px; |
61 | } | 67 | } |
68 | +.menu_toggle:hover{ | ||
69 | + color:var(--text-color); | ||
70 | +} | ||
62 | @media screen and (max-width: 500px) { | 71 | @media screen and (max-width: 500px) { |
63 | - .menu{ | 72 | + .voi_menu{ |
64 | flex-direction: column; | 73 | flex-direction: column; |
65 | align-items: flex-start; | 74 | align-items: flex-start; |
66 | padding: 8px 24px; | 75 | padding: 8px 24px; |
... | @@ -82,6 +91,7 @@ a{ | ... | @@ -82,6 +91,7 @@ a{ |
82 | } | 91 | } |
83 | .menu_toggle{ | 92 | .menu_toggle{ |
84 | display: block; | 93 | display: block; |
94 | + color:var(--text-color); | ||
85 | } | 95 | } |
86 | .menu_bar_content.active, | 96 | .menu_bar_content.active, |
87 | .menu_bar_icons.active{ | 97 | .menu_bar_icons.active{ |
... | @@ -109,25 +119,35 @@ button:hover{ | ... | @@ -109,25 +119,35 @@ button:hover{ |
109 | margin: 23px; | 119 | margin: 23px; |
110 | } | 120 | } |
111 | #output{ | 121 | #output{ |
112 | - width:50%; | 122 | + margin:20px; |
113 | - margin-left:20px; | ||
114 | display:flex; | 123 | display:flex; |
115 | - border: 3px solid var(--accent-color); | 124 | + align-items:center; |
116 | height:700px; | 125 | height:700px; |
126 | + background-color:rgba(0,0,0,.87); | ||
127 | + color:var(--text-color); | ||
117 | } | 128 | } |
118 | #recordButton{ | 129 | #recordButton{ |
119 | line-height: 22px; | 130 | line-height: 22px; |
131 | + font-size:50px; | ||
120 | } | 132 | } |
121 | #transcribeButton{ | 133 | #transcribeButton{ |
122 | line-height: 22px; | 134 | line-height: 22px; |
135 | + font-size:50px; | ||
123 | } | 136 | } |
124 | .output_bar{ | 137 | .output_bar{ |
125 | display:flex; | 138 | display:flex; |
126 | - justify-content:space-around; | 139 | + justify-content:center; |
127 | color:black; | 140 | color:black; |
128 | - border: 3px solid var(--accent-color); | ||
129 | margin: 20px; | 141 | margin: 20px; |
142 | + font-size:100px; | ||
130 | } | 143 | } |
131 | -.ttp{ | 144 | +.basic{ |
132 | - | 145 | + color:var(--text-color); |
146 | + font-size:20px; | ||
147 | +} | ||
148 | +.fas.fa-arrow-circle-down{ | ||
149 | + color:var(--background-color); | ||
150 | + font-size:70px; | ||
151 | + display:block; | ||
152 | + text-align:center; | ||
133 | } | 153 | } |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -6,27 +6,29 @@ | ... | @@ -6,27 +6,29 @@ |
6 | <meta http-equiv="X-UA-Compatible" content="IE=edge"> | 6 | <meta http-equiv="X-UA-Compatible" content="IE=edge"> |
7 | <meta name="viewport" content="width=device-width, initial-scale=1.0"> | 7 | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
8 | <title>Voicoding</title> | 8 | <title>Voicoding</title> |
9 | - <script src="https://kit.fontawesome.com/a5f26fa106.js" crossorigin="anonymous"></script> | 9 | + <script defer src="https://kit.fontawesome.com/a5f26fa106.js" crossorigin="anonymous"></script> |
10 | - <script src="menu.js" defer></script> | 10 | + <script defer src="menu.js"></script> |
11 | <link rel="preconnect" href="https://fonts.gstatic.com"> | 11 | <link rel="preconnect" href="https://fonts.gstatic.com"> |
12 | <link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@300&display=swap" rel="stylesheet"> | 12 | <link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@300&display=swap" rel="stylesheet"> |
13 | - <script src="https://cdn.rawgit.com/mattdiamond/Recorderjs/08e7abd9/dist/recorder.js"></script> | 13 | + <script defer src="https://cdn.rawgit.com/mattdiamond/Recorderjs/08e7abd9/dist/recorder.js"></script> |
14 | <script defer src="client.js"></script> | 14 | <script defer src="client.js"></script> |
15 | <meta name="description" content="Free and open-source online code editor that allows you to write and execute code from a rich set of languages."> | 15 | <meta name="description" content="Free and open-source online code editor that allows you to write and execute code from a rich set of languages."> |
16 | <meta name="keywords" content="online editor, online code editor, online ide, online compiler, online interpreter, run code online, learn programming online, | 16 | <meta name="keywords" content="online editor, online code editor, online ide, online compiler, online interpreter, run code online, learn programming online, |
17 | - online debugger, programming in browser, online code runner, online code execution, debug online, debug C code online, debug C++ code online, | 17 | + online debugger, programming in browser, online code runner, online code execution, debug online, debug C code online, debug C++ code online, |
18 | - programming online, snippet, snippets, code snippet, code snippets, pastebin, execute code, programming in browser, run c online, run C++ online, | 18 | + programming online, snippet, snippets, code snippet, code snippets, pastebin, execute code, programming in browser, run c online, run C++ online, |
19 | - run java online, run python online, run ruby online, run c# online, run rust online, run pascal online, run basic online"> | 19 | + run java online, run python online, run ruby online, run c# online, run rust online, run pascal online, run basic online"> |
20 | + <meta name="author" content="Herman Zvonimir Došilović"> | ||
20 | 21 | ||
21 | 22 | ||
22 | <meta property="og:title" content="Judge0 IDE - Free and open-source online code editor"> | 23 | <meta property="og:title" content="Judge0 IDE - Free and open-source online code editor"> |
23 | <meta property="og:description" content="Free and open-source online code editor that allows you to write and execute code from a rich set of languages."> | 24 | <meta property="og:description" content="Free and open-source online code editor that allows you to write and execute code from a rich set of languages."> |
24 | <meta property="og:image" content="https://raw.githubusercontent.com/judge0/ide/master/.github/wallpaper.png"> | 25 | <meta property="og:image" content="https://raw.githubusercontent.com/judge0/ide/master/.github/wallpaper.png"> |
25 | 26 | ||
26 | - <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script> | 27 | + <script defer src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script> |
27 | 28 | ||
28 | - <script src="https://cdnjs.cloudflare.com/ajax/libs/golden-layout/1.5.9/goldenlayout.min.js" integrity="sha256-NhJAZDfGgv4PiB+GVlSrPdh3uc75XXYSM4su8hgTchI=" crossorigin="anonymous"></script> | 29 | + <script defer src="https://cdnjs.cloudflare.com/ajax/libs/golden-layout/1.5.9/goldenlayout.min.js" integrity="sha256-NhJAZDfGgv4PiB+GVlSrPdh3uc75XXYSM4su8hgTchI=" crossorigin="anonymous"></script> |
29 | - | 30 | + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/golden-layout/1.5.9/css/goldenlayout-base.css" integrity="sha256-oIDR18yKFZtfjCJfDsJYpTBv1S9QmxYopeqw2dO96xM=" crossorigin="anonymous" /> |
31 | + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/golden-layout/1.5.9/css/goldenlayout-dark-theme.css" integrity="sha256-ygw8PvSDJJUGLf6Q9KIQsYR3mOmiQNlDaxMLDOx9xL0=" crossorigin="anonymous" /> | ||
30 | 32 | ||
31 | <script> | 33 | <script> |
32 | var require = { | 34 | var require = { |
... | @@ -37,53 +39,49 @@ | ... | @@ -37,53 +39,49 @@ |
37 | } | 39 | } |
38 | }; | 40 | }; |
39 | </script> | 41 | </script> |
40 | - <script src="https://unpkg.com/monaco-editor/min/vs/loader.js"></script> | 42 | + <script defer src="https://unpkg.com/monaco-editor/min/vs/loader.js"></script> |
41 | - <script src="https://unpkg.com/monaco-editor@0.23.0/min/vs/editor/editor.main.nls.js"></script> | 43 | + <script defer src="https://unpkg.com/monaco-editor@0.23.0/min/vs/editor/editor.main.nls.js"></script> |
42 | - <script src="https://unpkg.com/monaco-editor@0.23.0/min/vs/editor/editor.main.js"></script> | 44 | + <script defer src="https://unpkg.com/monaco-editor@0.23.0/min/vs/editor/editor.main.js"></script> |
43 | 45 | ||
44 | - <script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.js" integrity="sha256-t8GepnyPmw9t+foMh3mKNvcorqNHamSKtKRxxpUEgFI=" crossorigin="anonymous"></script> | 46 | + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.css" integrity="sha256-9mbkOfVho3ZPXfM7W8sV2SndrGDuh7wuyLjtsWeTI1Q=" crossorigin="anonymous" /> |
47 | + <script defer src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.js" integrity="sha256-t8GepnyPmw9t+foMh3mKNvcorqNHamSKtKRxxpUEgFI=" crossorigin="anonymous"></script> | ||
45 | 48 | ||
46 | <link href="https://fonts.googleapis.com/css?family=Exo+2" rel="stylesheet"> | 49 | <link href="https://fonts.googleapis.com/css?family=Exo+2" rel="stylesheet"> |
47 | 50 | ||
48 | - <script type="text/javascript" src="third_party/download.js"></script> | 51 | + <script type="text/javascript" defer src="third_party/download.js"></script> |
49 | 52 | ||
50 | - <script type="text/javascript" src="js/ide.js" defer></script> | 53 | + <script type="text/javascript" defer src="js/ide.js"></script> |
51 | 54 | ||
52 | - <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.css" integrity="sha256-9mbkOfVho3ZPXfM7W8sV2SndrGDuh7wuyLjtsWeTI1Q=" crossorigin="anonymous" /> | 55 | + <link type="text/css" rel="stylesheet" href="css/ide.css"> |
53 | - <script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.js" integrity="sha256-t8GepnyPmw9t+foMh3mKNvcorqNHamSKtKRxxpUEgFI=" crossorigin="anonymous"></script> | ||
54 | - <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script> | ||
55 | 56 | ||
56 | - <script src="https://cdnjs.cloudflare.com/ajax/libs/golden-layout/1.5.9/goldenlayout.min.js" integrity="sha256-NhJAZDfGgv4PiB+GVlSrPdh3uc75XXYSM4su8hgTchI=" crossorigin="anonymous"></script> | 57 | + <title>Judge0 IDE - Free and open-source online code editor</title> |
57 | - <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/golden-layout/1.5.9/css/goldenlayout-base.css" integrity="sha256-oIDR18yKFZtfjCJfDsJYpTBv1S9QmxYopeqw2dO96xM=" crossorigin="anonymous" /> | 58 | + <link rel="shortcut icon" href="./favicon.ico" type="image/x-icon"> |
58 | - <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/golden-layout/1.5.9/css/goldenlayout-dark-theme.css" integrity="sha256-ygw8PvSDJJUGLf6Q9KIQsYR3mOmiQNlDaxMLDOx9xL0=" crossorigin="anonymous" /> | 59 | + <link rel="icon" href="./favicon.ico" type="image/x-icon"> |
60 | + | ||
61 | + <script async defer src="https://www.googletagmanager.com/gtag/js?id=G-RHNJ50BJ2F"></script> | ||
59 | <script> | 62 | <script> |
60 | - var require = { | 63 | + window.dataLayer = window.dataLayer || []; |
61 | - paths: { | 64 | + function gtag(){dataLayer.push(arguments);} |
62 | - "vs": "https://unpkg.com/monaco-editor/min/vs", | 65 | + gtag('js', new Date()); |
63 | - "monaco-vim": "https://unpkg.com/monaco-vim/dist/monaco-vim", | 66 | + gtag('config', 'G-RHNJ50BJ2F'); |
64 | - "monaco-emacs": "https://unpkg.com/monaco-emacs/dist/monaco-emacs" | ||
65 | - } | ||
66 | - }; | ||
67 | </script> | 67 | </script> |
68 | - <script src="https://unpkg.com/monaco-editor/min/vs/loader.js"></script> | 68 | + |
69 | - <script src="https://unpkg.com/monaco-editor@0.23.0/min/vs/editor/editor.main.nls.js"></script> | 69 | + <script defer type="text/javascript">window.$crisp=[];window.CRISP_WEBSITE_ID="ee4621ff-c682-44ac-8cfa-1835beddb98a";(function(){d=document;s=d.createElement("script"); src="https://client.crisp.chat/l.js";s.async=1;d.getElementsByTagName("head")[0].appendChild(s);})();</script> |
70 | - <script src="https://unpkg.com/monaco-editor@0.23.0/min/vs/editor/editor.main.js"></script> | ||
71 | - | ||
72 | </head> | 70 | </head> |
73 | <body> | 71 | <body> |
74 | - <nav class="menu"> | 72 | + <nav class="voi_menu"> |
75 | <div class="menu_bar_logo"> | 73 | <div class="menu_bar_logo"> |
76 | <i class="fas fa-microphone-alt"></i> | 74 | <i class="fas fa-microphone-alt"></i> |
77 | - <a href="Voico_Home.html">Voicoding</a> | 75 | + <a class = "basic" href="Voico_Menu.html">Voicoding</a> |
78 | </div> | 76 | </div> |
79 | <ul class="menu_bar_content"> | 77 | <ul class="menu_bar_content"> |
80 | - <a href="Voico_Home.html"><li>Home</li></a> | 78 | + <a class = "basic" href="Voico_Home.html"><li>Home</li></a> |
81 | - <a href="\Manual.txt"><li>Manual</li></a> | 79 | + <a class = "basic" href="\Manual.txt"><li>Manual</li></a> |
82 | - <a href="Voico_Info.html"><li>info</li></a> | 80 | + <a class = "basic" href="Voico_Info.html"><li>Info</li></a> |
83 | </ul> | 81 | </ul> |
84 | <ul class="menu_bar_icons"> | 82 | <ul class="menu_bar_icons"> |
85 | - <li><a = href="https://www.instagram.com/waterinbottle48/"><i class="fab fa-instagram"></i></a></li> | 83 | + <li><a class = "basic" href="https://www.instagram.com/waterinbottle48/"><i class="fab fa-instagram"></i></a></li> |
86 | - <li><a = href="http://khuhub.khu.ac.kr/2019102168/Voicoding"><i class="fab fa-github"></i></a></li> | 84 | + <li><a class = "basic" href="http://khuhub.khu.ac.kr/2019102168/Voicoding"><i class="fab fa-github"></i></a></li> |
87 | </ul> | 85 | </ul> |
88 | <a href="#" class="menu_toggle"><i class="fas fa-bars"></i></a> | 86 | <a href="#" class="menu_toggle"><i class="fas fa-bars"></i></a> |
89 | </nav> | 87 | </nav> |
... | @@ -92,16 +90,106 @@ | ... | @@ -92,16 +90,106 @@ |
92 | <button id="transcribeButton" disabled>To text</button> | 90 | <button id="transcribeButton" disabled>To text</button> |
93 | </div> | 91 | </div> |
94 | <div class="output_bar"> | 92 | <div class="output_bar"> |
95 | - <h3>Transcription Raw Data</h3> | 93 | + <h2>Transcription Raw Data</h2> |
96 | - <h3 style= "width:174.462px; text-align:center">TTP</h3> | ||
97 | </div> | 94 | </div> |
98 | <div id="output"></div> | 95 | <div id="output"></div> |
99 | - <div class="ttp"> | 96 | + <i class="fas fa-arrow-circle-down"></i> |
100 | - <div class="item no-left-padding borderless"> | 97 | + <div class="output_bar"> |
101 | - <button id="run-btn" class="ui primary labeled icon button"><i class="play icon"></i>Run (F9)</button> | 98 | + <h2>TTP</h2> |
99 | + </div> | ||
100 | + <div id="site-navigation" class="ui small inverted menu" style="margin:20px 20px 0px 20px;"> | ||
101 | + <div id="site-header" class="header item"> | ||
102 | + | ||
102 | </div> | 103 | </div> |
103 | - <div id="site-content"></div> | 104 | + <div class="left menu" > |
105 | + <div class="ui dropdown item site-links on-hover"> | ||
106 | + File <i class="dropdown icon"></i> | ||
107 | + <div class="menu"> | ||
108 | + <a class="item" target="_blank" href="/"><i class="file code icon"></i> New File</a> | ||
109 | + <div class="item" onclick="downloadSource()"><i class="download icon"></i> Download</div> | ||
110 | + <div id="insert-template-btn" class="item"><i class="file code outline icon"></i> Insert template | ||
111 | + for current language</div> | ||
112 | + </div> | ||
113 | + </div> | ||
114 | + | ||
115 | + <div class="item borderless"> | ||
116 | + | ||
117 | + </div> | ||
118 | + <div class="item fitted borderless wide screen only"> | ||
119 | + <div class="ui input"> | ||
120 | + <p id="compiler-options" type="text" placeholder="Compiler options"></p> | ||
121 | + </div> | ||
122 | + </div> | ||
123 | + <div class="item borderless wide screen only"> | ||
124 | + <div class="ui input"> | ||
125 | + <p id="command-line-arguments" type="text" placeholder="Command line arguments"></p> | ||
126 | + </div> | ||
127 | + </div> | ||
128 | + <div class="item no-left-padding borderless"> | ||
129 | + <button id="run-btn" class="ui primary labeled icon button"><i class="play icon"></i>Run (F9)</button> | ||
130 | + </div> | ||
131 | + | ||
132 | + </div> | ||
133 | + | ||
104 | </div> | 134 | </div> |
135 | + | ||
136 | + <div id="site-content"style="margin:0px 20px 20px 20px;"></div> | ||
137 | + | ||
138 | + <div id="site-modal" class="ui modal"> | ||
139 | + <div class="header"> | ||
140 | + <i class="close icon"></i> | ||
141 | + <span id="title"></span> | ||
142 | + </div> | ||
143 | + <div class="scrolling content"></div> | ||
144 | + <div class="actions"> | ||
145 | + <div class="ui small labeled icon cancel button"> | ||
146 | + <i class="remove icon"></i> | ||
147 | + Close (ESC) | ||
148 | + </div> | ||
149 | + </div> | ||
150 | + </div> | ||
151 | + | ||
152 | + <div id="site-settings" class="ui modal"> | ||
153 | + <i class="close icon"></i> | ||
154 | + <div class="header"> | ||
155 | + <i class="cog icon"></i> | ||
156 | + Settings | ||
157 | + </div> | ||
158 | + <div class="content"> | ||
159 | + <div class="ui form"> | ||
160 | + <div class="inline fields"> | ||
161 | + <label>Editor Mode</label> | ||
162 | + <div class="field"> | ||
163 | + <div class="ui radio checkbox"> | ||
164 | + <input type="radio" name="editor-mode" value="normal" checked="checked"> | ||
165 | + <label>Normal</label> | ||
166 | + </div> | ||
167 | + </div> | ||
168 | + <div class="field"> | ||
169 | + <div class="ui radio checkbox"> | ||
170 | + <input type="radio" name="editor-mode" value="vim"> | ||
171 | + <label>Vim</label> | ||
172 | + </div> | ||
173 | + </div> | ||
174 | + <div class="field"> | ||
175 | + <div class="ui radio checkbox"> | ||
176 | + <input type="radio" name="editor-mode" value="emacs"> | ||
177 | + <label>Emacs</label> | ||
178 | + </div> | ||
179 | + </div> | ||
180 | + </div> | ||
181 | + <div class="inline field"> | ||
182 | + <div class="ui checkbox"> | ||
183 | + <input type="checkbox" name="redirect-output"> | ||
184 | + <label>Redirect stderr to stdout</label> | ||
185 | + </div> | ||
186 | + </div> | ||
187 | + </div> | ||
188 | + </div> | ||
189 | + </div> | ||
190 | + | ||
105 | 191 | ||
192 | + <div id="editor-status-line"></div> | ||
193 | + | ||
106 | </body> | 194 | </body> |
107 | </html> | 195 | </html> |
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -13,7 +13,7 @@ a{ | ... | @@ -13,7 +13,7 @@ a{ |
13 | color:var(--text-color); | 13 | color:var(--text-color); |
14 | 14 | ||
15 | } | 15 | } |
16 | -.menu{ | 16 | +.voi_menu{ |
17 | display:flex; | 17 | display:flex; |
18 | justify-content:space-between; | 18 | justify-content:space-between; |
19 | align-items:center; | 19 | align-items:center; | ... | ... |
... | @@ -12,7 +12,7 @@ | ... | @@ -12,7 +12,7 @@ |
12 | <link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@300&display=swap" rel="stylesheet"> | 12 | <link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@300&display=swap" rel="stylesheet"> |
13 | </head> | 13 | </head> |
14 | <body> | 14 | <body> |
15 | - <nav class="menu"> | 15 | + <nav class="voi_menu"> |
16 | <div class="menu_bar_logo"> | 16 | <div class="menu_bar_logo"> |
17 | <i class="fas fa-microphone-alt"></i> | 17 | <i class="fas fa-microphone-alt"></i> |
18 | <a href="Voico_Home.html">Voicoding</a> | 18 | <a href="Voico_Home.html">Voicoding</a> | ... | ... |
... | @@ -13,7 +13,7 @@ a{ | ... | @@ -13,7 +13,7 @@ a{ |
13 | color:var(--text-color); | 13 | color:var(--text-color); |
14 | 14 | ||
15 | } | 15 | } |
16 | -.menu{ | 16 | +.voi_menu{ |
17 | display:flex; | 17 | display:flex; |
18 | justify-content:space-between; | 18 | justify-content:space-between; |
19 | align-items:center; | 19 | align-items:center; | ... | ... |
... | @@ -12,7 +12,7 @@ | ... | @@ -12,7 +12,7 @@ |
12 | <link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@300&display=swap" rel="stylesheet"> | 12 | <link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@300&display=swap" rel="stylesheet"> |
13 | </head> | 13 | </head> |
14 | <body> | 14 | <body> |
15 | - <nav class="menu"> | 15 | + <nav class="voi_menu"> |
16 | <div class="menu_bar_logo"> | 16 | <div class="menu_bar_logo"> |
17 | <i class="fas fa-microphone-alt"></i> | 17 | <i class="fas fa-microphone-alt"></i> |
18 | <a href="Voico_Home.html">Voicoding</a> | 18 | <a href="Voico_Home.html">Voicoding</a> | ... | ... |
1 | - | ||
2 | body { | 1 | body { |
3 | background: url(/images/judge0_background.png) no-repeat center center fixed; | 2 | background: url(/images/judge0_background.png) no-repeat center center fixed; |
4 | -webkit-background-size: cover; | 3 | -webkit-background-size: cover; |
... | @@ -87,6 +86,7 @@ body { | ... | @@ -87,6 +86,7 @@ body { |
87 | } | 86 | } |
88 | 87 | ||
89 | #site-content { | 88 | #site-content { |
89 | + display:flex; | ||
90 | height: calc(100% - 45px - 19px); | 90 | height: calc(100% - 45px - 19px); |
91 | } | 91 | } |
92 | 92 | ... | ... |
... | @@ -141,8 +141,8 @@ function localStorageGetItem(key) { | ... | @@ -141,8 +141,8 @@ function localStorageGetItem(key) { |
141 | } | 141 | } |
142 | 142 | ||
143 | function showMessages() { | 143 | function showMessages() { |
144 | - var width = $updates.offset().left - parseFloat($updates.css("padding-left")) - | 144 | + var width = 100//$updates.offset().left - parseFloat($updates.css("padding-left")) - |
145 | - $navigationMessage.parent().offset().left - parseFloat($navigationMessage.parent().css("padding-left")) - 5; | 145 | + //$navigationMessage.parent().offset().left - parseFloat($navigationMessage.parent().css("padding-left")) - 5; |
146 | 146 | ||
147 | if (width < 200 || messagesData === undefined) { | 147 | if (width < 200 || messagesData === undefined) { |
148 | return; | 148 | return; |
... | @@ -255,7 +255,7 @@ function getIdFromURI() { | ... | @@ -255,7 +255,7 @@ function getIdFromURI() { |
255 | } | 255 | } |
256 | 256 | ||
257 | function downloadSource() { | 257 | function downloadSource() { |
258 | - var value = parseInt($selectLanguage.val()); | 258 | + var value = parseInt(71); |
259 | download(sourceEditor.getValue(), fileNames[value], "text/plain"); | 259 | download(sourceEditor.getValue(), fileNames[value], "text/plain"); |
260 | } | 260 | } |
261 | 261 | ||
... | @@ -308,7 +308,7 @@ function run() { | ... | @@ -308,7 +308,7 @@ function run() { |
308 | 308 | ||
309 | var sourceValue = encode(sourceEditor.getValue()); | 309 | var sourceValue = encode(sourceEditor.getValue()); |
310 | var stdinValue = encode(stdinEditor.getValue()); | 310 | var stdinValue = encode(stdinEditor.getValue()); |
311 | - var languageId = resolveLanguageId($selectLanguage.val()); | 311 | + var languageId = resolveLanguageId(71); |
312 | var compilerOptions = $compilerOptions.val(); | 312 | var compilerOptions = $compilerOptions.val(); |
313 | var commandLineArguments = $commandLineArguments.val(); | 313 | var commandLineArguments = $commandLineArguments.val(); |
314 | 314 | ||
... | @@ -393,21 +393,21 @@ function fetchSubmission(submission_token) { | ... | @@ -393,21 +393,21 @@ function fetchSubmission(submission_token) { |
393 | 393 | ||
394 | function changeEditorLanguage() { | 394 | function changeEditorLanguage() { |
395 | monaco.editor.setModelLanguage(sourceEditor.getModel(), $selectLanguage.find(":selected").attr("mode")); | 395 | monaco.editor.setModelLanguage(sourceEditor.getModel(), $selectLanguage.find(":selected").attr("mode")); |
396 | - currentLanguageId = parseInt($selectLanguage.val()); | 396 | + currentLanguageId = parseInt(71); |
397 | $(".lm_title")[0].innerText = fileNames[currentLanguageId]; | 397 | $(".lm_title")[0].innerText = fileNames[currentLanguageId]; |
398 | - apiUrl = resolveApiUrl($selectLanguage.val()); | 398 | + apiUrl = resolveApiUrl(71); |
399 | } | 399 | } |
400 | 400 | ||
401 | function insertTemplate() { | 401 | function insertTemplate() { |
402 | - currentLanguageId = parseInt($selectLanguage.val()); | 402 | + currentLanguageId = parseInt(71); |
403 | sourceEditor.setValue(sources[currentLanguageId]); | 403 | sourceEditor.setValue(sources[currentLanguageId]); |
404 | changeEditorLanguage(); | 404 | changeEditorLanguage(); |
405 | } | 405 | } |
406 | 406 | ||
407 | function loadRandomLanguage() { | 407 | function loadRandomLanguage() { |
408 | // $selectLanguage.dropdown("set selected", values[Math.floor(Math.random() * $selectLanguage[0].length)]); | 408 | // $selectLanguage.dropdown("set selected", values[Math.floor(Math.random() * $selectLanguage[0].length)]); |
409 | - $selectLanguage.dropdown("set selected", 71); | 409 | + //$selectLanguage.dropdown("set selected", 71); |
410 | - apiUrl = resolveApiUrl($selectLanguage.val()); | 410 | + apiUrl = resolveApiUrl(71); |
411 | insertTemplate(); | 411 | insertTemplate(); |
412 | } | 412 | } |
413 | 413 | ||
... | @@ -591,7 +591,7 @@ $(document).ready(function () { | ... | @@ -591,7 +591,7 @@ $(document).ready(function () { |
591 | changeEditorMode(); | 591 | changeEditorMode(); |
592 | 592 | ||
593 | sourceEditor.getModel().onDidChangeContent(function (e) { | 593 | sourceEditor.getModel().onDidChangeContent(function (e) { |
594 | - currentLanguageId = parseInt($selectLanguage.val()); | 594 | + currentLanguageId = parseInt(71); |
595 | isEditorDirty = sourceEditor.getValue() != sources[currentLanguageId]; | 595 | isEditorDirty = sourceEditor.getValue() != sources[currentLanguageId]; |
596 | }); | 596 | }); |
597 | 597 | ... | ... |
client.js
deleted
100644 → 0
1 | -let rec = null; | ||
2 | -let audioStream = null; | ||
3 | -const recordButton = document.getElementById("recordButton"); | ||
4 | -const transcribeButton = document.getElementById("transcribeButton"); | ||
5 | -recordButton.addEventListener("click", startRecording); | ||
6 | -transcribeButton.addEventListener("click", transcribeText); | ||
7 | -let cnt = 0; | ||
8 | -function startRecording() { | ||
9 | - let constraints = { audio: true, video:false } | ||
10 | - recordButton.disabled = true; | ||
11 | - transcribeButton.disabled = false; | ||
12 | - navigator.mediaDevices.getUserMedia(constraints).then(function(stream) { | ||
13 | - const audioContext = new window.AudioContext(); | ||
14 | - audioStream = stream; | ||
15 | - const input = audioContext.createMediaStreamSource(stream); | ||
16 | - rec = new Recorder(input, { numChannels:1 }) | ||
17 | - rec.record() | ||
18 | - }).catch(function(err) { | ||
19 | - recordButton.disabled = false; | ||
20 | - transcribeButton.disabled = true; | ||
21 | - }); | ||
22 | -} | ||
23 | -function transcribeText() { | ||
24 | - transcribeButton.disabled = true; | ||
25 | - recordButton.disabled = false; | ||
26 | - rec.stop(); | ||
27 | - audioStream.getAudioTracks()[0].stop(); | ||
28 | - rec.exportWAV(uploadSoundData); | ||
29 | -} | ||
30 | -function uploadSoundData(blob) { | ||
31 | - let filename = new Date().toISOString(); | ||
32 | - let xhr = new XMLHttpRequest(); | ||
33 | - let formData = new FormData(); | ||
34 | - xhr.onload = function(e) { | ||
35 | - if(this.readyState === 4) { | ||
36 | - document.getElementById("output").innerHTML += `${cnt++}: ${JSON.parse(e.target.responseText)}<br>`; | ||
37 | - } | ||
38 | - }; | ||
39 | - formData.append("audio_data", blob, filename); | ||
40 | - xhr.open("POST", "/upload_sound", true); | ||
41 | - xhr.send(formData); | ||
42 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
s
0 → 100644
File mode changed
... | @@ -3,7 +3,7 @@ const multer = require('multer'); | ... | @@ -3,7 +3,7 @@ const multer = require('multer'); |
3 | const fs = require('fs'); | 3 | const fs = require('fs'); |
4 | const upload = multer(); | 4 | const upload = multer(); |
5 | const app = express(); | 5 | const app = express(); |
6 | -const port = 5501; | 6 | +const port = 5500; |
7 | app.use(express.static('Voicoding_web')); | 7 | app.use(express.static('Voicoding_web')); |
8 | app.use(express.static('./')); | 8 | app.use(express.static('./')); |
9 | async function testGoogleTextToSpeech(audioBuffer) { | 9 | async function testGoogleTextToSpeech(audioBuffer) { | ... | ... |
-
Please register or login to post a comment