on master help sign in
fix prompt updating in websocket client

toggle eval button

commit1aacb4b24c91dea866fd1842ef1cdf97a0af331d authorAgentM <agentm@themactionfaction.com> dateThu 26 Jan 2017, 08:51 (10 years ago) parent8d057ba
2 files changed+31−21
src/bin/ProjectM36/Server/WebSocket/websocket-client.html+12−5 src/bin/ProjectM36/Server/WebSocket/websocket-client.js+19−16
src/bin/ProjectM36/Server/WebSocket/websocket-client.html+12−5
@@ -13,7 +13,6 @@
1313
1414.deletesection
1515{
16− float:right;
1716 border: 1px solid;
1817 padding: 3px;
1918 border-radius: 3px;
@@ -29,6 +28,7 @@ background-image: linear-gradient(to right, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.75
2928
3029.title
3130{
31+font-family: Courier;
3232padding: 3pt;
3333border: 1px solid;
3434border-radius: 3px;
@@ -36,6 +36,11 @@ background-image: linear-gradient(to top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1),
3636margin: 3px;
3737}
3838
39+.titlesection
40+{
41+margin-bottom: 5pt;
42+}
43+
3944.result table
4045{
4146 border-collapse: collapse;
@@ -95,8 +100,9 @@ margin: 3px;
95100 </form>
96101 <form onsubmit="return execTutorialD();">
97102 <input type="textarea" id="tutd" placeholder="Enter a TutorialD query here."/>
103+ <br/>
98104 <label id="promptinfo"></label>
99− <input type="submit" value="Evaluate TutorialD"/>
105+ <input type="submit" id="eval" value="Evaluate TutorialD" disabled="disabled"/>
100106 </form>
101107 <div id="samplesouter">
102108 <span>Try our <a href="https://github.com/agentm/project-m36/blob/master/docs/15_minute_tutorial.markdown">15 minute TutorialD Tutorial</a> or click these sample queries below:</span>
@@ -114,9 +120,10 @@ margin: 3px;
114120 </div>
115121 </div>
116122 <div id="sectiontemplate">
117− <span class="title"></span>
118− <span class="deletesection" onclick="return hideParent(this);">X</span>
119− <div style="clear: both;"></div>
123+ <div class="titlesection">
124+ <span class="deletesection" onclick="return hideResult(this);">-</span>
125+ <span class="title"></span>
126+ </div>
120127 <div class="result">
121128 </div>
122129 <span class="relinfo"></span>
src/bin/ProjectM36/Server/WebSocket/websocket-client.js+19−16
@@ -57,14 +57,18 @@ function connectOrDisconnect(form)
5757 var host = formin["host"].value;
5858 var port = formin["port"].value;
5959 var dbname = formin["dbname"].value;
60+
6061 var conninfo = document.getElementById("conninfo");
62+ var promptInfo = document.getElementById("promptinfo");
6163
6264 if(window.conn && window.conn.readyState() == 1)
6365 {
6466 //disconnect
6567 window.conn.close();
6668 conninfo.textContent = "Connect to:";
69+
6770 toggleConnectionFields(form, true, "Connect");
71+ promptInfo.textContent = "";
6872 }
6973 else
7074 {
@@ -98,6 +102,8 @@ function toggleConnectionFields(form, enabled, status)
98102{
99103 form.elements["connect"].value = status;
100104 var readonlyElements = [form.elements["host"], form.elements["port"], form.elements["dbname"]];
105+ var evalButton = document.getElementById("eval");
106+
101107 for(var ein=0; ein < readonlyElements.length; ein++)
102108 {
103109 var e = readonlyElements[ein];
@@ -110,6 +116,16 @@ function toggleConnectionFields(form, enabled, status)
110116 e.setAttribute("readonly", "readonly");
111117 }
112118 }
119+ //also update the eval/submit button
120+ if(enabled)
121+ {
122+ evalButton.setAttribute("disabled", "disabled");
123+ }
124+ else
125+ {
126+ evalButton.removeAttribute("disabled");
127+ }
128+
113129}
114130
115131function connectionOpened(event)
@@ -133,23 +149,10 @@ function execTutorialD()
133149 return false;
134150}
135151
136−function hideParent(element)
152+function hideResult(element)
137153{
138− var deleteNode = element.parentNode;
139− element.parentNode.parentNode.removeChild(deleteNode)
140−}
141−
142−function toggleSamples(element,show)
143−{
144− var samples = document.getElementById("samples");
145− if(show)
146− {
147− samples.style.display = "block";
148− }
149− else
150− {
151− samples.style.display = "none";
152− }
154+ var deleteNode = element.parentNode.parentNode;
155+ element.parentNode.parentNode.parentNode.removeChild(deleteNode)
153156}
154157
155158function installSampleHandlers()