@@ -198,27 +198,7 @@ require('../../css/piklor.css');
198
198
cache : false ,
199
199
} ,
200
200
} ) ;
201
- $ . ajax ( OC . generateUrl ( '/apps/timetracker/ajax/tags' ) , {
202
- dataType : "json"
203
- } ) . done ( function ( data ) {
204
- var arr = $ ( '#locked-select-tags' ) . val ( ) . map ( function ( x ) {
205
- return parseInt ( x ) ;
206
- } ) ;
207
- $ . each ( data . Tags , function ( index , value ) {
208
- if ( arr . includes ( value . id ) ) {
209
- $ ( '#locked-select-tags' ) . append (
210
- '<option selected="selected" value="' + value . id + '">' + value . name + '</option>'
211
- ) ;
212
- } else {
213
- $ ( '#locked-select-tags' ) . append (
214
- '<option value="' + value . id + '">' + value . name + '</option>'
215
- ) ;
216
201
217
- }
218
- }
219
- ) ;
220
- $ ( '#locked-select-tags' ) . trigger ( "change" ) ;
221
- } ) ;
222
202
223
203
224
204
@@ -227,6 +207,10 @@ require('../../css/piklor.css');
227
207
width : '200px' ,
228
208
placeholder : "Select users..." ,
229
209
allowClear : true ,
210
+ results : function ( data ) {
211
+ lastResults = data . results ;
212
+ return { results : data } ;
213
+ } ,
230
214
ajax : {
231
215
headers : {
232
216
"requesttoken" : oc_requesttoken ,
@@ -417,30 +401,69 @@ require('../../css/piklor.css');
417
401
clientName : row . getData ( ) . client ,
418
402
} ;
419
403
420
- // var tagSelectData = [{
421
- // allowedTags: row.getData().allowedTags,
422
-
423
- // }];
424
-
425
- //form.find("#client-select-popup").select2("val",JSON.stringify(clientSelectData));
426
- $ ( "#client-select-popup" ) . val ( clientSelectData . clientId ) . change ( ) ;
427
- // $('#client-select-popup').append(
428
- // '<option selected="selected" value="' + clientSelectData.clientId + '">' + clientSelectData.clientName + '</option>'
429
- // );
404
+ if ( clientSelectData . clientId != null ) {
405
+ $ ( '#client-select-popup' ) . append (
406
+ '<option selected="selected" value="' + clientSelectData . clientId + '">' + clientSelectData . clientName + '</option>'
407
+ ) ;
408
+ $ ( "#client-select-popup" ) . trigger ( 'change' ) ;
409
+ }
430
410
431
411
form . find ( "#archived" ) . prop ( 'checked' , row . getData ( ) . archived ) ;
432
412
if ( isAdmin ( ) ) {
433
413
var tags = row . getData ( ) . origAllowedTags . map ( function ( e ) { return e . id ; } ) ;
434
414
var users = row . getData ( ) . allowedUsers ;
435
415
436
-
437
- //form.find("#locked-select-tags").select2("val",tags);
438
- // $('#locked-select-tags').append(tags.each( function(tag){
439
- // '<option selected="selected" value="' + tag + '">' + tag + '</option>'
440
- // }).join()
441
- // );
442
- $ ( "#locked-select-tags" ) . val ( tags ) . change ( ) ;
443
- $ ( "#locked-select-users" ) . val ( users ) . change ( ) ;
416
+ $ . ajax ( OC . generateUrl ( '/apps/timetracker/ajax/tags' ) , {
417
+ dataType : "json"
418
+ } ) . done ( function ( data ) {
419
+ $ ( '#locked-select-tags' ) . html ( '' ) ;
420
+ $ . each ( data . Tags , function ( index , value ) {
421
+ if ( tags . includes ( value . id ) ) {
422
+ var option = new Option ( value . name , value . id , true , true ) ;
423
+ $ ( '#locked-select-tags' ) . append ( option ) . trigger ( 'change' ) ;
424
+
425
+ }
426
+ }
427
+ ) ;
428
+ $ ( '#locked-select-tags' ) . trigger ( {
429
+ type : 'select2:select' ,
430
+ params : {
431
+ data : data
432
+ }
433
+ } ) ;
434
+
435
+ } ) ;
436
+
437
+ $ . ajax ( '/ocs/v2.php/cloud/users/details?offset=0&search=' , {
438
+ dataType : "json" ,
439
+ headers : {
440
+ "requesttoken" : oc_requesttoken ,
441
+
442
+ } ,
443
+ } ) . done ( function ( data ) {
444
+
445
+ var userMap = $ . map ( data . ocs . data . users , function ( val , i ) {
446
+ return { id : i , text :val . displayname } ;
447
+ } ) ;
448
+
449
+ $ ( '#locked-select-users' ) . val ( null ) . trigger ( 'change' ) ;
450
+ $ ( '#locked-select-users' ) . html ( '' ) ;
451
+ $ . each ( userMap , function ( index , value ) {
452
+ if ( users . includes ( value . text ) ) {
453
+ var option = new Option ( value . text , value . id , true , true ) ;
454
+ $ ( '#locked-select-users' ) . append ( option ) . trigger ( 'change' ) ;
455
+
456
+ }
457
+ }
458
+ ) ;
459
+ $ ( '#locked-select-users' ) . trigger ( {
460
+ type : 'select2:select' ,
461
+ params : {
462
+ data : data
463
+ }
464
+ } ) ;
465
+ } ) ;
466
+
444
467
form . find ( "#locked" ) . prop ( 'checked' , row . getData ( ) . locked ) ;
445
468
if ( $ ( '#locked' ) . is ( ':checked' ) ) {
446
469
$ ( "#locked-options" ) . removeClass ( 'hidden' ) ;
0 commit comments