@@ -115,6 +115,15 @@ <h2>Assignment Links</h2>
115115
116116 < button type ="submit " class ="btn btn-primary mt-5 "> Submit form</ button >
117117
118+ < div id ="submission-status " class ="mt-3 d-none ">
119+ < div class ="alert alert-info d-flex align-items-center mb-0 " role ="alert ">
120+ < div class ="spinner-border spinner-border-sm me-2 " role ="status ">
121+ < span class ="visually-hidden "> Sending to LMS...</ span >
122+ </ div >
123+ < span > Sending to LMS...</ span >
124+ </ div >
125+ </ div >
126+
118127 < div id ="error " class ="mt-3 alert alert-danger d-none "> </ div >
119128
120129 < div class ="mt-3 alert alert-warning " role ="alert ">
@@ -161,9 +170,16 @@ <h2>Assignment Links</h2>
161170 // verify that no LMS assignment is linked to from multiple RS assignments
162171 document . querySelector ( 'form' ) . addEventListener ( 'submit' , function ( e ) {
163172 let selects = document . querySelectorAll ( '.assign-select' ) ;
164- console . log ( selects ) ;
165173 const errorBox = document . getElementById ( 'error' ) ;
174+ const statusBox = document . getElementById ( 'submission-status' ) ;
175+ const submitButton = this . querySelector ( 'button[type="submit"]' ) ;
176+
177+ // reset any previous messages/state
166178 errorBox . innerHTML = '' ;
179+ errorBox . classList . add ( 'd-none' ) ;
180+ statusBox . classList . add ( 'd-none' ) ;
181+ submitButton . disabled = false ;
182+
167183 let selectedValues = [ ] ;
168184 let matches = [ ] ;
169185 //identify matches
@@ -189,6 +205,9 @@ <h2>Assignment Links</h2>
189205 containingRow . classList . remove ( 'error' ) ;
190206 }
191207 }
208+ } else {
209+ submitButton . disabled = true ;
210+ statusBox . classList . remove ( 'd-none' ) ;
192211 }
193212 } ) ;
194213 </ script >
0 commit comments