Skip to content

Commit df738ee

Browse files
authored
Merge pull request #493 from timeoff-management/tom-xxx-prevent-double-submission
Prevent double submission from browser
2 parents a711ad7 + a08b6aa commit df738ee

28 files changed

+84
-65
lines changed

package-lock.json

Lines changed: 33 additions & 33 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/js/global.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,3 +274,22 @@ $(document).ready(function() {
274274

275275
fetchNotifications();
276276
});
277+
278+
/**
279+
* Prevent for double submission.
280+
*/
281+
$(document).ready(function(){
282+
$('.single-click').on('click', function(e) {
283+
e.stopPropagation();
284+
285+
$(e.target).prop('disabled', true);
286+
var form = $(e.target).closest('form');
287+
var submitName = $(e.target).attr('name');
288+
if (submitName !== undefined) {
289+
$('<input>').attr({type: 'hidden', name: submitName, value: '1'}).appendTo(form);
290+
}
291+
form.submit();
292+
293+
return false;
294+
});
295+
});

t/integration/department/one_by_one_crud.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -742,7 +742,7 @@ describe('CRUD for department secondary supervisers', function(){
742742
});
743743
});
744744

745-
it('Click on "Remove" button next to user C and observe that it disappeares from "secondary supervisors" section after page is reloaded', function(done){
745+
it('Click on "Remove" button next to user C and observe that it disappears from "secondary supervisors" section after page is reloaded', function(done){
746746
driver
747747
.findElement(By.css(`button[name="remove_supervisor_id"][value="${ user_id_C }"]`))
748748
.then(el => el.click())

views/audit/emails.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
</select>
4747
</div>
4848

49-
<button type="submit" class="btn btn-info">Filter</button>
49+
<button type="submit" class="btn btn-info single-click">Filter</button>
5050
{{# if show_reset_button }}
5151
<a href="/audit/email/" class="btn btn-default">Reset</a>
5252
{{/if}}

views/bankHolidays.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@
124124
{{!-- <button id="bankholiday-import-btn" class="btn btn-default" type="button">Import default holidays</button> --}}
125125
<button class="btn btn-default" type="button" data-toggle="modal" data-target="#add_new_bank_holiday_modal" id="add_new_bank_holiday_btn">Add new</button>
126126
{{#if bankHolidays.length}}
127-
<button type="submit" class="btn btn-success">Save changes</button>
127+
<button type="submit" class="btn btn-success single-click">Save changes</button>
128128
{{/if}}
129129
</div>
130130
</div>

views/department_details.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
Department details
1010
</div>
1111
<div class="col-md-1 col-md-offset-8">
12-
<button id="remove_btn" type="submit" class="pull-right btn btn-danger" data-toggle="tooltip" data-placement="top" title="Remove department"><i class="fa fa-trash"></i> Delete</button>
12+
<button id="remove_btn" type="submit" class="pull-right btn btn-danger single-click" data-toggle="tooltip" data-placement="top" title="Remove department"><i class="fa fa-trash"></i> Delete</button>
1313
</div>
1414
</div>
1515
</form>

views/departments_bulk_update.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@
7777

7878
<div class="row">
7979
<div class="col-md-offset-9 col-md-3">
80-
<button type="submit" class="btn btn-success pull-right">Save changes</button>
80+
<button type="submit" class="btn btn-success pull-right single-click">Save changes</button>
8181
<span class="pull-right">&nbsp;&nbsp;&nbsp;</span>
8282
<a href='/settings/departments-bulk-update/' class="btn btn-link pull-right">Cancel</a>
8383
</div>

views/forgot_password.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
<div class="form-group">
2121
<div class="col-md-offset-4 col-md-2">
22-
<button type="submit" class="btn btn-success" id="submit_login">Send instructions</button>
22+
<button type="submit" class="btn btn-success single-click" id="submit_login">Send instructions</button>
2323
</div>
2424
</div>
2525

views/general_settings.hbs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@
107107

108108
<div class="form-group">
109109
<div class="col-md-offset-2 col-md-10">
110-
<button type="submit" class="btn btn-success pull-right">Save changes</button>
110+
<button type="submit" class="btn btn-success pull-right single-click">Save changes</button>
111111
</div>
112112
</div>
113113
</form>
@@ -148,7 +148,7 @@
148148
</div>
149149
<div class="form-group">
150150
<div class="col-md-offset-2 col-md-11">
151-
<button type="submit" class="btn btn-success pull-right">Save schedule</button>
151+
<button type="submit" class="btn btn-success pull-right single-click">Save schedule</button>
152152
</div>
153153
</div>
154154
</form>
@@ -165,7 +165,7 @@
165165
</div>
166166
<div class="form-group">
167167
<form class="col-md-offset-2 col-md-11" id="calculate_carry_over_form" method="post" action="/settings/carryOverUnusedAllowance">
168-
<button class="btn btn-success pull-right" type="submit"><i class="fa fa-share"></i> Carry over allowance</button>
168+
<button class="btn btn-success pull-right single-click" type="submit"><i class="fa fa-share"></i> Carry over allowance</button>
169169
</form>
170170
</div>
171171
</div>
@@ -251,7 +251,7 @@
251251
<div class="col-md-12">
252252
<div class="pull-right">
253253
<button class="btn btn-default" data-toggle="modal" data-target="#add_new_leave_type_modal" type="button" id="add_new_leave_type_btn">Add new</button>
254-
<button type="submit" class="btn btn-success">Save changes</button>
254+
<button type="submit" class="btn btn-success single-click">Save changes</button>
255255
</div>
256256
</div>
257257
</div>

views/login.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525

2626
<div class="form-group">
2727
<div class="col-md-offset-4 col-md-1">
28-
<button type="submit" class="btn btn-success" id="submit_login">Login</button>
28+
<button type="submit" class="btn btn-success single-click" id="submit_login">Login</button>
2929
</div>
3030
<div class="col-md-4">
3131
<p class="pull-right"><a href="/forgot-password/">Forgot password?</a>{{#if allow_create_new_accounts }} | <a href="/register/">Register new company</a>{{/if}}</p>

views/partials/add_new_bank_holiday_modal.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
</div>
4141
<div class="modal-footer">
4242
<button type="button" class="btn btn-link" data-dismiss="modal">Cancel</button>
43-
<button type="submit" class="btn btn-success">Create</button>
43+
<button type="submit" class="btn btn-success single-click">Create</button>
4444
</div>
4545
</form>
4646
</div>

views/partials/add_new_department_modal.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
</div>
4747
<div class="modal-footer">
4848
<button type="button" class="btn btn-link" data-dismiss="modal">Cancel</button>
49-
<button type="submit" class="btn btn-success">Create</button>
49+
<button type="submit" class="btn btn-success single-click">Create</button>
5050
</div>
5151
</form>
5252
</div>

views/partials/add_new_leave_type_modal.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
</div>
4646
<div class="modal-footer">
4747
<button type="button" class="btn btn-link" data-dismiss="modal">Cancel</button>
48-
<button type="submit" class="btn btn-success">Create</button>
48+
<button type="submit" class="btn btn-success single-click">Create</button>
4949
</div>
5050
</form>
5151
</div>

views/partials/book_leave_modal.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@
7575
</div>
7676
<div class="modal-footer">
7777
<button type="button" class="btn btn-link" data-dismiss="modal">Cancel</button>
78-
<button type="submit" class="btn btn-success">Create</button>
78+
<button type="submit" class="btn btn-success single-click">Create</button>
7979
{{# if redirect_back_to }}
8080
<input type="hidden" name="redirect_back_to" value="{{redirect_back_to}}">
8181
{{else}}

views/partials/department_details/general.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@
8181

8282
<div class="row">
8383
<div class="col-md-12">
84-
<button id="save_changes_btn" type="submit" class="btn btn-success pull-right">Save changes to department</button>
84+
<button id="save_changes_btn" type="submit" class="btn btn-success pull-right single-click">Save changes to department</button>
8585
<a class="btn btn-link pull-right" href="/settings/departments/">Cancel</a>
8686
</div>
8787
</div>

views/partials/department_details/supervisers_modal.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
</div>
1212
<div class="modal-footer">
1313
<button type="button" class="btn btn-link" data-dismiss="modal">Cancel</button>
14-
<button type="submit" class="btn btn-success" name="do_add_supervisors" value="1">Add selected employees</button>
14+
<button type="submit" class="btn btn-success single-click" name="do_add_supervisors" value="1">Add selected employees</button>
1515
</div>
1616
</div>
1717
</form>

views/partials/remove_company_modal.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
</div>
1717
<div class="modal-footer">
1818
<button type="button" class="btn btn-link" data-dismiss="modal">Cancel</button>
19-
<button type="submit" class="btn btn-danger">Delete company account</button>
19+
<button type="submit" class="btn btn-danger single-click">Delete company account</button>
2020
</div>
2121
</form>
2222
</div>

views/partials/user_details/absences.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@
9999

100100
<div class="form-group">
101101
<div class="col-md-12">
102-
<button id="save_changes_btn" type="submit" class="btn btn-success pull-right">Save changes</button>
102+
<button id="save_changes_btn" type="submit" class="btn btn-success pull-right single-click">Save changes</button>
103103
</div>
104104
</div>
105105
</form>

views/partials/user_details/general.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@
9090

9191
<div class="row">
9292
<div class="col-md-12">
93-
<button id="save_changes_btn" type="submit" class="btn btn-success pull-right">Save changes</button>
93+
<button id="save_changes_btn" type="submit" class="btn btn-success pull-right single-click">Save changes</button>
9494
<a class="btn btn-link pull-right" href="/users/">Cancel</a>
9595
</div>
9696
</div>

views/partials/user_requests.hbs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,14 @@
3737
{{# unless this.is_pended_revoke_leave}}
3838
<form method="post" action="/requests/revoke/">
3939
<input type="hidden" value="{{this.id}}" name="request">
40-
<button type="submit" class="pull-right btn btn-default btn-xs revoke-btn" title="Revoke leave request. Subject of approval."><i class="fa fa-trash"></i> Revoke</button>
40+
<button type="submit" class="pull-right btn btn-default btn-xs revoke-btn single-click" title="Revoke leave request. Subject of approval."><i class="fa fa-trash"></i> Revoke</button>
4141
</form>
4242
{{/unless}}
4343
{{else}}
4444
{{#if_equal this.userId ../logged_user.id }}
4545
<form method="post" action='/requests/cancel/'>
4646
<input type="hidden" value="{{this.id}}" name="request">
47-
<button type="submit" class="pull-right btn btn-default btn-xs revoke-btn" title="Cancel leave request" value="cancel"><i class="fa fa-trash"></i> Cancel</button>
47+
<button type="submit" class="pull-right btn btn-default btn-xs revoke-btn single-click" title="Cancel leave request" value="cancel"><i class="fa fa-trash"></i> Cancel</button>
4848
</form>
4949
{{/if_equal}}
5050
{{/if}}

views/requests.hbs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,13 @@
4545
<td>{{this.comment.comment}}</td>
4646
<td>
4747
<form action="/requests/reject/" method="POST">
48-
<input class="btn btn-warning" type="submit" value="Reject">
48+
<input class="btn btn-warning single-click" type="submit" value="Reject">
4949
<input type="hidden" value="{{this.id}}" name="request">
5050
</form>
5151
</td>
5252
<td>
5353
<form action="/requests/approve/" method="POST">
54-
<input class="btn btn-success" type="submit" value="Approve">
54+
<input class="btn btn-success single-click" type="submit" value="Approve">
5555
<input type="hidden" value="{{this.id}}" name="request">
5656
</form>
5757
</td>

views/reset_password.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727

2828
<div class="form-group">
2929
<div class="col-md-offset-4 col-md-2">
30-
<button type="submit" class="btn btn-success" id="submit_login">Save</button>
30+
<button type="submit" class="btn btn-success single-click" id="submit_login">Save</button>
3131
</div>
3232
</div>
3333

views/settings_company_authentication.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@
109109

110110
<div class="form-group">
111111
<div class="col-md-offset-3 col-md-5">
112-
<button id="submit_registration" type="submit" class="pull-right btn btn-success">Save LDAP configuration</button>
112+
<button id="submit_registration" type="submit" class="pull-right btn btn-success single-click">Save LDAP configuration</button>
113113
</div>
114114
</div>
115115

0 commit comments

Comments
 (0)