Fix some Javascript errors and update build tools for eslint (#137)
Jeremy D

Jeremy D commited on 2021-02-13 10:39:25
Showing 53 changed files, with 104 additions and 83 deletions.


* Fix some Javascript errors and update build tools for eslint

* Try again

* Need Submodules

* Fix the software year
Try eslint another way.
... ...
@@ -13,7 +13,11 @@ jobs:
13 13
     name: LINT Checks
14 14
     steps:
15 15
       - uses: actions/checkout@master
16
+        with:
17
+          submodules: true
18
+      - name: Update Build Tools
19
+        run: git submodule foreach git pull origin master
16 20
       - name: Javascript LINT
17 21
         uses: tj-actions/eslint-changed-files@v4
18 22
         with:
19
-          config-path: buildTools/eslintrc
20 23
\ No newline at end of file
24
+          config-path: buildTools/eslintrc.js
21 25
\ No newline at end of file
... ...
@@ -6,3 +6,7 @@
6 6
 sd_plugins_lang/SDPlugin*.php
7 7
 sd_plugins_source/*
8 8
 css/helpdesk_custom.css
9
+node_modules
10
+package.json
11
+yarn.lock
12
+.eslintrc.js
... ...
@@ -1 +1 @@
1
-Subproject commit 7fbce5597c047eb0da1e993a1536cac39e5fce85
1
+Subproject commit 8dba4875660984affbe44e32ffb09a046b319962
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -1,4 +1,5 @@
1 1
 /* Javascript for the main Helpdesk */
2
+/*global ajax_indicator smf_prepareScriptUrl smf_scripturl sceditor shd_sendJSONDocument in_array shd_quickTicketJump shd_ajax_problem shd_quickTicketJump oEditorHandle_shd_message*/
2 3
 
3 4
 /* Implant a JSON handler for Ajax */
4 5
 function shd_getJSONDocument(sUrl, funcCallback, sMethod)
... ...
@@ -26,6 +27,7 @@ function shd_getJSONDocument(sUrl, funcCallback, sMethod)
26 27
 	return oMyDoc;
27 28
 }
28 29
 
30
+// eslint-disable-next-line no-unused-vars
29 31
 function shd_sendJSONDocument(sUrl, oData, funcCallback)
30 32
 {
31 33
 	ajax_indicator(true);
... ...
@@ -74,8 +76,7 @@ shd_privacyControl.prototype.callback = function (oRecvd)
74 76
 		alert(oRecvd.error);
75 77
 	else if (oRecvd && oRecvd.message)
76 78
 		$('#' + this.opt.sDestSpan).html(oRecvd.message);
77
-	else
78
-		if (confirm(shd_ajax_problem))
79
+	else if (confirm(shd_ajax_problem))
79 80
 		window.location = smf_scripturl + '?action=helpdesk;sa=privacychange;ticket=' + this.opt.ticket + ';' + this.opt.sSession;
80 81
 
81 82
 	return false;
... ...
@@ -92,7 +93,7 @@ shd_urgencyControl.prototype.init = function ()
92 93
 {
93 94
 	for (var i in this.opt.aButtonOps)
94 95
 	{
95
-		if (!this.opt.aButtonOps.hasOwnProperty(i))
96
+		if (!Object.prototype.hasOwnProperty.call(this.opt.aButtonOps, i))
96 97
 			continue;
97 98
 
98 99
 		var oDiv = $('#urglink_' + this.opt.aButtonOps[i]);
... ...
@@ -141,7 +142,7 @@ shd_urgencyControl.prototype.callback = function (oRecvd)
141 142
 		var btn_set = ['increase', 'decrease'];
142 143
 		for (var i in btn_set)
143 144
 		{
144
-			if (!btn_set.hasOwnProperty(i))
145
+			if (!Object.prototype.hasOwnProperty.call(btn_set, i))
145 146
 				continue;
146 147
 
147 148
 			var oBtn = oRecvd[btn_set[i]];
... ...
@@ -151,8 +152,7 @@ shd_urgencyControl.prototype.callback = function (oRecvd)
151 152
 		// Attach JS events to new links
152 153
 		this.init();
153 154
 	}
154
-	else
155
-		if (confirm(shd_ajax_problem))
155
+	else if (confirm(shd_ajax_problem))
156 156
 		window.location = smf_scripturl + '?action=helpdesk;sa=urgencychange;ticket=' + this.opt.iTicketId + ';change=' + this.opt.aButtonOps[this.direction] + ';' + this.opt.sSession;
157 157
 
158 158
 	return false;
... ...
@@ -169,7 +169,6 @@ shd_urgencyControl.prototype.clickList = function ()
169 169
 shd_urgencyControl.prototype.expandList = function ()
170 170
 {
171 171
 	this.bCollapsed = false;
172
-console.log('shd_urgencyControl.prototype.expandList:', this.opt.sSelectButtonId, $('#' + this.opt.sSelectButtonId), this.opt.sImageExpanded);
173 172
 	$('#urgency_' + this.opt.sSelf).attr('src', this.opt.sImageExpanded);
174 173
 
175 174
 	// Fetch the list of items
... ...
@@ -188,11 +187,11 @@ shd_urgencyControl.prototype.expandList_callback = function (oRecvd)
188 187
 		var cur = 0;
189 188
 		for (var i in oRecvd.urgencies)
190 189
 		{
191
-			if (!oRecvd.urgencies.hasOwnProperty(i))
190
+			if (!Object.prototype.hasOwnProperty.call(oRecvd.urgencies, i))
192 191
 				continue;
193 192
 
194 193
 			cur = oRecvd.urgencies[i];
195
-			selected = cur.selected ? ' selected="selected"' : '';
194
+			var selected = cur.selected ? ' selected="selected"' : '';
196 195
 			newhtml += '<option class="shd_urgencies" data-id="' + cur.id + '"' + selected + '>' + cur.name + '</option>';
197 196
 		}
198 197
 
... ...
@@ -239,7 +238,7 @@ function shd_attach_select(oOptions)
239 238
 	shd_attach_select.prototype.id = 0;
240 239
 	shd_attach_select.prototype.max = (oOptions.max) ? oOptions.max : -1;
241 240
 	shd_attach_select.prototype.addElement(document.getElementById(shd_attach_select.prototype.opts.file_item));
242
-};
241
+}
243 242
 
244 243
 shd_attach_select.prototype.addElement = function (element)
245 244
 {
... ...
@@ -293,7 +292,7 @@ shd_attach_select.prototype.checkExtension = function (filename)
293 292
 		return false; // pfft, didn't specify anything
294 293
 	}
295 294
 
296
-	var dot = filename.lastIndexOf(".");
295
+	var dot = filename.lastIndexOf('.');
297 296
 	if (dot == -1)
298 297
 	{
299 298
 		shd_attach_select.prototype.opts.message_ext_error_final = shd_attach_select.prototype.opts.message_ext_error.replace(' ({ext})', '');
... ...
@@ -346,7 +345,7 @@ shd_attach_select.prototype.checkActive = function()
346 345
 	var session_attach = 0;
347 346
 	for (var i in elements)
348 347
 	{
349
-		if (!elements.hasOwnProperty(i))
348
+		if (!Object.prototype.hasOwnProperty.call(elements, i))
350 349
 			continue;
351 350
 
352 351
 		if (elements[i] && elements[i].type == 'checkbox' && elements[i].name == 'attach_del[]' && elements[i].checked === true)
... ...
@@ -411,6 +410,7 @@ CannedReply.prototype.onReplyReceived = function (oRecvd)
411 410
 }
412 411
 
413 412
 // The quick jump function
413
+// eslint-disable-next-line no-unused-vars
414 414
 function shd_quickTicketJump(id_ticket)
415 415
 {
416 416
 	window.location.href = smf_prepareScriptUrl(smf_scripturl) + '?action=helpdesk;sa=ticket;ticket=' + id_ticket;
... ...
@@ -459,7 +459,7 @@ AjaxAssign.prototype.expand_callback = function (oRecvd)
459 459
 		var cur = 0;
460 460
 		for (var i in oRecvd.members)
461 461
 		{
462
-			if (!oRecvd.members.hasOwnProperty(i))
462
+			if (!Object.prototype.hasOwnProperty.call(oRecvd.members, i))
463 463
 				continue;
464 464
 
465 465
 			cur = oRecvd.members[i];
... ...
@@ -514,7 +514,7 @@ shd_notifications.prototype.init = function ()
514 514
 
515 515
 shd_notifications.prototype.receiveNotifications = function ()
516 516
 {
517
-	shd_getJSONDocument(smf_prepareScriptUrl(smf_scripturl) + "action=helpdesk;sa=ajax;op=notify;ticket=" + this.ticketId + ";" + this.opt.sSessionVar + '=' + this.opt.sSessionId + (this.opt.sPinglist ? ";" + this.opt.sPinglist : ''), this.onReceiveNotifications.bind(this));
517
+	shd_getJSONDocument(smf_prepareScriptUrl(smf_scripturl) + 'action=helpdesk;sa=ajax;op=notify;ticket=' + this.ticketId + ';' + this.opt.sSessionVar + '=' + this.opt.sSessionId + (this.opt.sPinglist ? ';' + this.opt.sPinglist : ''), this.onReceiveNotifications.bind(this));
518 518
 	return false;
519 519
 }
520 520
 
... ...
@@ -537,7 +537,7 @@ shd_notifications.prototype.onReceiveNotifications = function (oRecvd)
537 537
 		temphtml = '';
538 538
 		for (i in oRecvd.being_notified)
539 539
 		{
540
-			if (!oRecvd.being_notified.hasOwnProperty(i))
540
+			if (!Object.prototype.hasOwnProperty.call(oRecvd.being_notified, i))
541 541
 				continue;
542 542
 
543 543
 			cur = oRecvd.being_notified[i];
... ...
@@ -554,9 +554,9 @@ shd_notifications.prototype.onReceiveNotifications = function (oRecvd)
554 554
 		subtemplate = this.opt.oOptionalTemplate;
555 555
 
556 556
 		temphtml = '';
557
-		for (var i in oRecvd.optional)
557
+		for (i in oRecvd.optional)
558 558
 		{
559
-			if (!oRecvd.optional.hasOwnProperty(i))
559
+			if (!Object.prototype.hasOwnProperty.call(oRecvd.optional, i))
560 560
 				continue;
561 561
 
562 562
 			cur = oRecvd.optional[i];
... ...
@@ -584,7 +584,7 @@ shd_notifications.prototype.onReceiveNotifications = function (oRecvd)
584 584
 		temphtml = '';
585 585
 		for (i in oRecvd.optional_butoff)
586 586
 		{
587
-			if (!oRecvd.optional_butoff.hasOwnProperty(i))
587
+			if (!Object.prototype.hasOwnProperty.call(oRecvd.optional_butoff, i))
588 588
 				continue;
589 589
 
590 590
 			cur = oRecvd.optional_butoff[i];
... ...
@@ -1,4 +1,5 @@
1 1
 /* Javascript for the main Helpdesk Admin */
2
+/*global shd_sendJSONDocument sceditor reqOverlayDiv submitonce submitThisOnce */
2 3
 
3 4
 // Handle the JavaScript surrounding the admin center.
4 5
 $(document).ready(function(){
... ...
@@ -215,7 +216,7 @@ shd_custom_field_order.prototype.move = function (clickedKey, clickedOrder, move
215 216
 		return;
216 217
 
217 218
 	// Put this into the right place.
218
-	newOrder = this.cloneArray(currentOrder);
219
+	var newOrder = this.cloneArray(currentOrder);
219 220
 	newOrder.splice(clickedOrder, 1);
220 221
 	newOrder.splice(movedOrder, 0, clickedKey);
221 222
 
... ...
@@ -293,6 +294,9 @@ shd_AttributeValidate.prototype.init = function ()
293 294
 
294 295
 	/* After typing a key */
295 296
 	$('#' + this.opt.sEmailContainerId + ', #' + this.opt.sStarterContainerId + ', #' + this.opt.sFromContainerId + ', #' + this.opt.sToContainerId).keyup(this.validator.bind(this));
297
+
298
+	/* Do the actual thing */
299
+	$('#' + this.opt.sDoAttributeContainerId).on('click', this.click.bind(this));
296 300
 }
297 301
 
298 302
 /* Reattribute Posts: Does a radio change and processes the validator */
... ...
@@ -319,30 +323,41 @@ shd_AttributeValidate.prototype.validator = function ()
319 323
 	if (!$('#' + this.opt.sToContainerId).val())
320 324
 		this.valid = false;
321 325
 
322
-	warningMessage = this.origText.replace(/%member_to%/, $('#' + this.opt.sToContainerId).value);
326
+	this.warningMessage = this.origText.replace(/%member_to%/, $('#' + this.opt.sToContainerId).val());
323 327
 
324
-	if ($('#' + this.opt.sTypeEmailContainerId).is(":checked"))
328
+	if (this.valid && $('#' + this.opt.sTypeEmailContainerId).is(':checked'))
325 329
 	{
326
-		$('#' + this.opt.sStarterContainerId + ', #' + this.opt.sFromContainerId).val("");
330
+		$('#' + this.opt.sStarterContainerId + ', #' + this.opt.sFromContainerId).val('');
327 331
 		this.valid = $('#' + this.opt.sEmailContainerId).val() != '';
328
-		warningMessage = warningMessage.replace(/%type%/, this.opt.sEmailConfirmText).replace(/%find%/, $('#' + this.opt.sEmailContainerId).val());
332
+		this.warningMessage = this.warningMessage.replace(/%type%/, this.opt.sEmailConfirmText).replace(/%find%/, $('#' + this.opt.sEmailContainerId).val());
329 333
 	}
330
-	else if ($('#' + this.opt.sTypeStarterContainerId).is(":checked"))
334
+	else if (this.valid && $('#' + this.opt.sTypeStarterContainerId).is(':checked'))
331 335
 	{
332
-		$('#' + this.opt.sEmailContainerId + ' #' + this.opt.sFromContainerId).val("");
336
+		$('#' + this.opt.sEmailContainerId + ' #' + this.opt.sFromContainerId).val('');
333 337
 
334 338
 		this.valid = $('#' + this.opt.sStarterContainerId).val() != '';
335
-		warningMessage = this.origTextStarter.replace(/%member_to%/, $('#' + this.opt.sToContainerId).val()).replace(/%find%/, $('#' + this.opt.sStarterContainerId).val());			
339
+		this.warningMessage = this.origTextStarter.replace(/%member_to%/, $('#' + this.opt.sToContainerId).val()).replace(/%find%/, $('#' + this.opt.sStarterContainerId).val());			
336 340
 	}
337
-	else
341
+	else if (this.valid)
338 342
 	{
339
-		$('#' + this.opt.sEmailContainerId + ' #' + this.opt.sStarterContainerId).val("");
343
+		$('#' + this.opt.sEmailContainerId + ' #' + this.opt.sStarterContainerId).val('');
340 344
 
341 345
 		this.valid = $('#' + this.opt.sFromContainerId).val() != '';
342
-		warningMessage = warningMessage.replace(/%type%/, this.opt.sFromConfirmText).replace(/%find%/, $('#' + this.opt.sFromContainerId).val());
346
+		this.warningMessage = this.warningMessage.replace(/%type%/, this.opt.sFromConfirmText).replace(/%find%/, $('#' + this.opt.sFromContainerId).val());
343 347
 	}
344 348
 
345
-	$('#' + this.opt.sDoAttributeContainerId).prop("disabled", this.valid ? false : true);
349
+	$('#' + this.opt.sDoAttributeContainerId).prop('disabled', this.valid ? false : true);
350
+}
351
+
352
+/* Reattribute Posts: When they click */
353
+shd_AttributeValidate.prototype.click = function (event)
354
+{
355
+	event.preventDefault();
356
+
357
+	if (this.valid)
358
+		return confirm(this.warningMessage);
359
+	else
360
+		return false;
346 361
 }
347 362
 
348 363
 /* Roles Management */
... ...
@@ -415,7 +430,7 @@ shd_role.prototype.toggleBlock = function (e, block)
415 430
 	$('#' + this.opt.sBlockIcon.replace('%block%', block)).css('display', '');
416 431
 }
417 432
 
418
-shd_role.prototype.formConfirm = function (e)
433
+shd_role.prototype.formConfirm = function ()
419 434
 {
420 435
 	return confirm(this.opt.sDeleteConfirmText);
421 436
 }
... ...
@@ -429,8 +444,6 @@ function shd_cannedReplies(oOpts)
429 444
 	// Build our URL.
430 445
 	this.opt.sUrl = this.opt.sUrlBase +
431 446
 		';' + this.opt.sSessionVar + '=' + this.opt.sSessionId;
432
-
433
-console.log('shd_cannedReplies:', this.opt.sUrl);
434 447
 }
435 448
 
436 449
 shd_cannedReplies.prototype.init = function ()
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
... ...
@@ -5,7 +5,7 @@
5 5
 *       An advanced help desk modification built on SMF       *
6 6
 ***************************************************************
7 7
 *                                                             *
8
-*         * Copyright 2020 - SimpleDesk.net                   *
8
+*         * Copyright 2021 - SimpleDesk.net                   *
9 9
 *                                                             *
10 10
 *   This file and its contents are subject to the license     *
11 11
 *   included with this distribution, license.txt, which       *
12 12