Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 14302 | Rev 15035 | Ir a la última revisión | Mostrar el archivo completo | | | Autoría | Ultima modificación | Ver Log |

Rev 14302 Rev 14989
Línea 6... Línea 6...
6
 
6
 
7
 
7
 
8
$routeAdd       = $this->url('settings/competencies/add');
8
$routeAdd       = $this->url('settings/competencies/add');
9
$routeDatatable = $this->url('settings/competencies');
-
 
10
$routeImport    = $this->url('settings/competencies/import');
-
 
11
 
-
 
12
 
-
 
13
$routeAddBehavior    = $this->url('settings/behaviors/add');
-
 
14
 
9
$routeDatatable = $this->url('settings/competencies');
Línea 15... Línea 10...
15
 
10
$routeImport    = $this->url('settings/competencies/import');
16
$routeImport    = $this->url('settings/competencies/import');
11
$routeImport    = $this->url('settings/competencies/import');
17
 
12
 
18
 
13
 
Línea -... Línea 14...
-
 
14
$allowAdd       = $acl->isAllowed($roleName, 'settings/competencies/add') ? 1 : 0;
-
 
15
$allowEdit      = $acl->isAllowed($roleName, 'settings/competencies/edit') ? 1 : 0;
-
 
16
$allowDelete    = $acl->isAllowed($roleName, 'settings/competencies/delete') ? 1 : 0;
Línea 19... Línea 17...
19
$allowAdd       = $acl->isAllowed($roleName, 'settings/competencies/add') ? 1 : 0;
17
$allowImport    = $acl->isAllowed($roleName, 'settings/competencies/import') ? 1 : 0;
20
$allowEdit      = $acl->isAllowed($roleName, 'settings/competencies/edit') ? 1 : 0;
18
 
Línea 63... Línea 61...
63
 
61
 
Línea 64... Línea 62...
64
$status_active = \LeadersLinked\Model\Competency::STATUS_ACTIVE;
62
$status_active = \LeadersLinked\Model\Competency::STATUS_ACTIVE;
65
 
63
 
66
$this->inlineScript()->captureStart();
-
 
67
echo <<<JS
64
$this->inlineScript()->captureStart();
-
 
65
echo <<<JS
-
 
66
jQuery(document).ready(function($) {
-
 
67
    var allowEdit = $allowEdit;
68
let behaviors = [];
68
    var allowDelete = $allowDelete;
69
jQuery(document).ready(function($) {
69
 
70
    $.validator.setDefaults({
70
    $.validator.setDefaults({
71
        debug: true,
71
        debug: true,
72
        highlight: function(element) {
72
        highlight: function(element) {
73
            $(element).addClass('is-invalid');
73
            $(element).addClass('is-invalid');
74
        },
74
        },
75
        unhighlight: function(element) {
75
        unhighlight: function(element) {
76
            $(element).removeClass('is-invalid');
76
            $(element).removeClass('is-invalid');
77
        },
77
        },
78
        errorElement: 'span',
78
        errorElement: 'span',
79
        errorClass: 'error invalid-feedback',
-
 
80
        errorPlacement: function(error, element) {
-
 
81
            const child = element.children(':first-child');
-
 
82
            if (element[0].localName == 'input') {
-
 
83
                let _error = error
-
 
84
                _error[0].style.display = 'block'
79
        errorClass: 'error invalid-feedback',
85
                _error.insertBefore(element);
80
            errorPlacement: function(error, element) {
86
            } else if (element.parent('.form-group').length) {
81
                if(element.parent('.form-group').length) {
87
                error.insertAfter(element);
82
                    error.insertAfter(element);
88
            } else if (element.parent('.toggle').length) {
83
                } else if(element.parent('.toggle').length) {
89
                error.insertAfter(element.parent().parent());
84
                    error.insertAfter(element.parent().parent());
-
 
85
                } else {
90
            } else {
86
                    error.insertAfter(element.parent());
91
                error.insertAfter(element.parent());
-
 
92
            }
87
                }
-
 
88
            }
93
        }
89
    });
94
    });
90
 
95
    $.fn.showFormErrorValidator = function(fieldname, errors) {
91
    $.fn.showFormErrorValidator = function(fieldname, errors) {
96
        var field = $(fieldname);
92
        var field = $(fieldname);
97
        if (field) {
93
        if (field) {
98
            $(field).addClass('is-invalid');
94
            $(field).addClass('is-invalid');
99
            var error = $('<span id="' + fieldname + '-error" class="error invalid-feedback">' + errors + '</div>');
95
            var error = $('<span id="' + fieldname + '-error" class="error invalid-feedback">' + errors + '</div>');
100
            if (field.parent('.form-group').length) {
96
                if(field.parent('.form-group').length) {
101
                error.insertAfter(field);
97
                    error.insertAfter(field);
102
            } else if (field.parent('.toggle').length) {
98
                } else  if(field.parent('.toggle').length) {
103
                error.insertAfter(field.parent().parent());
99
                    error.insertAfter(field.parent().parent());
104
            } else {
100
                } else {
105
                error.insertAfter(field.parent());
101
                    error.insertAfter(field.parent());
106
            }
102
                }
107
        }
-
 
108
    };
-
 
-
 
103
        }
109
    var allowEdit = $allowEdit;
104
    };
110
    var allowDelete = $allowDelete;
105
 
111
    var gridTable = $('#gridTable').dataTable({
106
    var gridTable = $('#gridTable').dataTable({
112
        'processing': true,
107
        'processing': true,
113
        'serverSide': true,
108
        'serverSide': true,
Línea 244... Línea 239...
244
                    return s;
239
                    return s;
245
                }
240
                }
246
            }
241
            }
247
        ],
242
        ],
248
    });
243
    });
-
 
244
 
249
    var validator = $('#form').validate({
245
    var validator = $('#form').validate({
250
        debug: true,
246
        debug: true,
251
        onclick: false,
247
        onclick: false,
252
        onkeyup: false,
248
        onkeyup: false,
253
        ignore: [],
249
        ignore: [],
Línea 266... Línea 262...
266
                required: true,
262
                required: true,
267
            },
263
            },
268
            'status': {
264
            'status': {
269
                required: false,
265
                required: false,
270
            },
266
            },
-
 
267
 
271
        },
268
        },
272
        submitHandler: function(form) {
269
        submitHandler: function(form) {
273
            if (behaviors.length == 0) {
270
            if ($('input[type="hidden"].behavior_id').length == 0) {
274
                $.fn.showError('ERROR_NOT_OBSERVABLE_CONDUCT');
271
                $.fn.showError('ERROR_NOT_OBSERVABLE_BEHAVIOR');
275
            } else {
272
            } else {
276
                $.ajax({
273
                $.ajax({
277
                    'dataType': 'json',
274
                    'dataType': 'json',
278
                    'accept': 'application/json',
275
                    'accept': 'application/json',
279
                    'method': 'post',
276
                    'method': 'post',
280
                    'url': $('#form').attr('action'),
277
                    'url': $('#form').attr('action'),
281
                    'data': {
-
 
282
                        'name': $('#name').val(),
278
                    'data': $('#form').serialize(),
283
                        'description': $('#description').val(),
-
 
284
                        'competency_type_id': $('#competency_type_id').val(),
-
 
285
                        'status': $('#status').val(),
-
 
286
                        'behaviors': JSON.stringify(behaviors)
-
 
287
                    }
-
 
288
                }).done(function(response) {
279
                }).done(function(response) {
289
                    NProgress.start();
280
                    NProgress.start();
290
                    if (response['success']) {
281
                    if (response['success']) {
291
                        $.fn.showSuccess(response['data']);
282
                        $.fn.showSuccess(response['data']);
292
                        $('#row-form').hide();
283
                        $('#row-form').hide();
Línea 310... Línea 301...
310
            }
301
            }
311
            return false;
302
            return false;
312
        },
303
        },
313
        invalidHandler: function(form, validator) {}
304
        invalidHandler: function(form, validator) {}
314
    });
305
    });
-
 
306
 
315
    $('body').on('click', 'button.btn-add', function(e) {
307
    $('body').on('click', 'button.btn-add', function(e) {
316
        e.preventDefault();
308
        e.preventDefault();
-
 
309
        NProgress.start();
-
 
310
 
-
 
311
 
-
 
312
        $.ajax({
-
 
313
            'dataType': 'json',
-
 
314
            'method': 'get',
-
 
315
            'url': '$routeAdd',
-
 
316
        }).done(function(response) {
-
 
317
            if (response['success']) {
-
 
318
 
-
 
319
                $('#table-behaviors tbody').empty();
-
 
320
                
-
 
321
                $('#select-behavior').children().not(':first').remove();
-
 
322
                $.each(response['data']['behaviors'], function(index, element) {
-
 
323
                    $('#select-behavior').append($('<option>', {
-
 
324
                        value: element.id,
-
 
325
                        text: element.description
-
 
326
                    }));
-
 
327
                });
-
 
328
 
-
 
329
               
317
        $('span[id="form-title"]').html('LABEL_ADD');
330
                $('span[id="form-title"]').html('LABEL_ADD');
318
        $('#form').attr('action', '$routeAdd');
331
                $('#form').attr('action', '$routeAdd');
319
        $('#form #name').val('');
332
                $('#form #name').val('');
320
        $('#form #competency_type_id').val('').trigger('change');
333
                $('#form #competency_type_id').val('').trigger('change');
321
        $('#form #status').bootstrapToggle('on');
334
                $('#form #competency_type_id').val('').trigger('change');
322
        behaviors = [];
335
                $('#form #status').bootstrapToggle('on');
323
        CKEDITOR.instances.description.setData('');
336
                CKEDITOR.instances.description.setData('');
-
 
337
 
324
        validator.resetForm();
338
                validator.resetForm();
-
 
339
 
325
        $('#row-form').show();
340
                $('#row-form').show();
326
        $('#row-list').hide();
341
                $('#row-list').hide();
-
 
342
            } else {
-
 
343
                $.fn.showError(response['data']);
-
 
344
            }
-
 
345
        }).fail(function(jqXHR, textStatus, errorThrown) {
-
 
346
            $.fn.showError(textStatus);
-
 
347
        }).always(function() {
327
        renderData([]);
348
            NProgress.done();
-
 
349
        });
-
 
350
 
-
 
351
 
-
 
352
 
-
 
353
 
328
        return false;
354
        return false;
329
    });
355
    });
330
    var competenciesUuid = null
-
 
-
 
356
 
331
    $('body').on('click', 'button.btn-edit', function(e) {
357
    $('body').on('click', 'button.btn-edit', function(e) {
332
        e.preventDefault();
358
        e.preventDefault();
333
        $("button.btn-delete").confirmation('hide');
359
        $("button.btn-delete").confirmation('hide');
334
        NProgress.start();
360
        NProgress.start();
335
        var action = $(this).data('href');
361
        var action = $(this).data('href');
Línea 344... Línea 370...
344
                $('#form').attr('action', action);
370
                $('#form').attr('action', action);
345
                $('#form #name').val(response['data']['name']);
371
                $('#form #name').val(response['data']['name']);
346
                $('#form #competency_type_id').val(response['data']['competency_type_id']).trigger('change');
372
                $('#form #competency_type_id').val(response['data']['competency_type_id']).trigger('change');
347
                $('#form #status').bootstrapToggle(response['data']['status'] == '$status_active' ? 'on' : 'off')
373
                $('#form #status').bootstrapToggle(response['data']['status'] == '$status_active' ? 'on' : 'off')
348
                CKEDITOR.instances.description.setData(response['data']['description']);
374
                CKEDITOR.instances.description.setData(response['data']['description']);
-
 
375
 
-
 
376
 
-
 
377
                $('input[type="hidden"].behavior').remove();
-
 
378
                $('#select-behavior').children().not(':first').remove();
-
 
379
                
-
 
380
 
-
 
381
                $('#table-behaviors tbody').empty();
-
 
382
 
349
                behaviors = response['data']['behaviors'] || [];
383
                $.each(response['data']['behaviors'], function(index, element) {
350
                competenciesUuid = response['data']['uuid'];
384
                    $('#select-behavior').append($('<option>', {
-
 
385
                        value: element.id,
-
 
386
                        text: element.description
-
 
387
                    }));
-
 
388
 
-
 
389
                    if(element.checked ) {
351
                renderData(behaviors);
390
                        let data = {
-
 
391
                            id : element.id, 
-
 
392
                            description : element.description,
-
 
393
                        };
-
 
394
                            
-
 
395
                        $('#table-behaviors tbody').append(
-
 
396
                            $('#trBehaviorTemplate').render( data )
-
 
397
                        );
-
 
398
 
-
 
399
 
-
 
400
                    }
-
 
401
                 });
-
 
402
 
-
 
403
               
-
 
404
                
-
 
405
 
352
                validator.resetForm();
406
                validator.resetForm();
353
                $('#row-form').show();
407
                $('#row-form').show();
354
                $('#row-list').hide();
408
                $('#row-list').hide();
355
            } else {
409
            } else {
356
                $.fn.showError(response['data']);
410
                $.fn.showError(response['data']);
Línea 360... Línea 414...
360
        }).always(function() {
414
        }).always(function() {
361
            NProgress.done();
415
            NProgress.done();
362
        });
416
        });
363
        return false;
417
        return false;
364
    });
418
    });
-
 
419
 
365
    $('body').on('click', 'button.btn-refresh', function(e) {
420
    $('body').on('click', 'button.btn-refresh', function(e) {
366
        e.preventDefault();
421
        e.preventDefault();
367
        gridTable.api().ajax.reload(null, false);
422
        gridTable.api().ajax.reload(null, false);
368
        return false;
423
        return false;
369
    });
424
    });
-
 
425
 
370
    $('body').on('click', 'button.btn-import', function(e) {
426
    $('body').on('click', 'button.btn-import', function(e) {
371
        e.preventDefault();
427
        e.preventDefault();
372
        NProgress.start();
428
        NProgress.start();
373
        $.ajax({
429
        $.ajax({
374
            'dataType': 'json',
430
            'dataType': 'json',
Línea 386... Línea 442...
386
        }).always(function() {
442
        }).always(function() {
387
            NProgress.done();
443
            NProgress.done();
388
        });
444
        });
389
        return false;
445
        return false;
390
    });
446
    });
-
 
447
 
391
    $('body').on('click', 'button.btn-cancel', function(e) {
448
    $('body').on('click', 'button.btn-cancel', function(e) {
392
        e.preventDefault();
449
        e.preventDefault();
393
        $('#modal').modal('hide');
450
        $('#row-form').hide();
-
 
451
        $('#row-list').show();
394
    });
452
    });
-
 
453
 
395
    $('#form #competency_type_id').select2({
454
    $('#form #competency_type_id').select2({
396
        theme: 'bootstrap4',
455
        theme: 'bootstrap4',
397
        width: '100%',
456
        width: '100%',
398
    });
457
    });
Línea 399... Línea 458...
399
 
458
 
400
    $('#select-conduct').select2({
459
    $('#select-behavior').select2({
401
        theme: 'bootstrap4',
460
        theme: 'bootstrap4',
402
        width: '100%',
461
        width: '100%',
Línea 403... Línea 462...
403
    });
462
    });
Línea 420... Línea 479...
420
            { name: 'tools', items: [ 'Maximize' ] }
479
            { name: 'tools', items: [ 'Maximize' ] }
421
        ],
480
        ],
422
        removePlugins: 'elementspath,Anchor',
481
        removePlugins: 'elementspath,Anchor',
423
        heigth: 100
482
        heigth: 100
424
    });
483
    });
425
    /**
484
 
426
     * Clicked on add new conduct
-
 
427
     */
485
 
428
    $('body').on('click', 'button[id="btn-add-conduct"]', function(e) {
-
 
429
        e.preventDefault();
-
 
430
        $('#form-conduct #conduct-id').val('');
-
 
431
        $('#form-conduct #conduct-description').val('');
-
 
432
        $('#modal-conduct h4[class="modal-title"]').html('LABEL_ADD LABEL_CONDUCT');
-
 
433
        $('#modal-conduct').modal('show');
-
 
434
    });
-
 
435
    /**
-
 
436
     * Clicked on edit conduct
-
 
437
     */
-
 
438
    $('body').on('click', 'button.btn-edit-conduct', function(e) {
-
 
439
        e.preventDefault();
-
 
440
        var id = $(this).data('conduct');
-
 
441
        behaviors.map((item) => {
-
 
442
            if (item.id == id) {
-
 
443
                $('#form-conduct #conduct-id').val(item.id);
-
 
444
                $('#form-conduct #conduct-description').val(item.description);
-
 
445
                $('#modal-conduct h4[class="modal-title"]').html('LABEL_EDIT LABEL_CONDUCT');
-
 
446
                $('#modal-conduct').modal('show');
-
 
447
                return;
-
 
448
            }
-
 
449
        });
-
 
450
    });
-
 
451
    /**
-
 
452
     * Clicked on remove conduct
-
 
453
     */
-
 
454
    $('body').on('click', 'button.btn-delete-conduct', function(e) {
486
    $('body').on('click', 'button.btn-remove-behavior', function(e) {
455
        e.preventDefault();
487
        e.preventDefault();
-
 
488
        
456
        var id = $(this).data('conduct');
489
        var key = '#tr_behavior_id_' + $(this).data('id');
-
 
490
        var element = $(key);
-
 
491
        if(element) {
-
 
492
            $(element).remove();
-
 
493
        }
-
 
494
 
-
 
495
        return false; 
-
 
496
        
-
 
497
 
-
 
498
 
-
 
499
        
-
 
500
       
-
 
501
        /*
457
        bootbox.confirm({
502
        bootbox.confirm({
458
            title: "LABEL_DELETE LABEL_CONDUCT",
503
            title: "LABEL_DELETE LABEL_CONDUCT",
459
            message: "LABEL_QUESTION_DELETE",
504
            message: "LABEL_QUESTION_DELETE",
460
            buttons: {
505
            buttons: {
461
                cancel: {
506
                cancel: {
Línea 468... Línea 513...
468
            callback: function(result) {
513
            callback: function(result) {
469
                if (result) {
514
                if (result) {
470
                    removeBehavior(id);
515
                    removeBehavior(id);
471
                }
516
                }
472
            }
517
            }
473
        });
518
        });*/
474
    });
519
    });
475
    /**
-
 
476
     * Clicked cancel new/edit Form
-
 
477
     */
520
 
478
    $('button.btn-conduct-submit').click(function(e) {
521
    $('#btn-select-behavior').click(function(e) {
479
        if ($("#conduct-description").val() == "") {
522
        e.preventDefault();
-
 
523
 
480
            $.fn.showError('ERROR_ENTER_DESCRIPTION');
524
        var id  = $('#select-behavior option:selected').val(); 
481
            return;
-
 
482
        } else {
525
        if(!id) {
483
            $("#conduct-id").val() == "" 
-
 
484
                ?addBehavior($("#conduct-description").val()) 
-
 
485
                :editBehavior($("#conduct-id").val(), $("#conduct-description").val())
-
 
486
            $('#modal-conduct').modal('hide');
-
 
487
            return;
526
            return false;
488
        }
527
        }
-
 
528
 
-
 
529
        var description = $('#select-behavior option:selected').text();
-
 
530
        var key         = '#tr_behavior_id_' + id ;
-
 
531
 
-
 
532
        console.log("key = "  + key);
-
 
533
        var element     = $(key);
-
 
534
 
-
 
535
 
-
 
536
        console.log(element);
-
 
537
        if(element.length > 0) {
-
 
538
 
-
 
539
            $.fn.showError( 'ERROR_BEHAVIOR_WAS_PREVIOUSLY_ADDED');
-
 
540
            return false;
-
 
541
        }
-
 
542
 
-
 
543
        let data = {
-
 
544
            id : id, 
-
 
545
            description : description,
-
 
546
        };
-
 
547
            
-
 
548
        $('#table-behaviors tbody').append(
-
 
549
            $('#trBehaviorTemplate').render( data )
-
 
550
        );
-
 
551
 
-
 
552
        return false;
-
 
553
 
-
 
554
        
-
 
555
 
489
    });
556
    });
490
    /**
557
 
491
     * Clicked cancel new/edit Form
-
 
-
 
558
  
492
     */
559
 
493
    $('button.btn-edit-cancel').click(function(e) {
560
    $('button.btn-edit-cancel').click(function(e) {
494
        e.preventDefault();
561
        e.preventDefault();
495
        $('#row-form').hide();
562
        $('#row-form').hide();
496
        $('#row-list').show();
563
        $('#row-list').show();
497
    });
564
    });
498
    /**
-
 
499
     * Add Behavior to array
-
 
500
     */
-
 
501
    const addBehavior = (description) => {
-
 
502
        $.ajax({
-
 
503
            'dataType': 'json',
-
 
504
            'accept': 'application/json',
-
 
505
            'method': 'post',
-
 
506
            'url': '$routeAddBehavior',
-
 
507
            'data': {
-
 
508
                'description': description
-
 
509
            }
-
 
510
        }).done(function(response) {
-
 
511
            if (response['success']) {
-
 
512
                behaviors.push({
-
 
513
                    'id': response['uuid'],
-
 
514
                    'description': description
-
 
515
                });
-
 
516
                renderData(behaviors);
-
 
517
            } else {
-
 
518
                $.fn.showError(response['message'] || 'ERROR_UNKNOWN');
-
 
519
            }
-
 
520
        });
-
 
521
    }
-
 
522
    /**
-
 
523
     * Edit item behavior
-
 
524
     */
-
 
525
    const editBehavior = (id, description) => {
-
 
526
        $.ajax({
-
 
527
            'dataType': 'json',
-
 
528
            'accept': 'application/json',
-
 
529
            'method': 'post',
-
 
530
            'url': '/settings/behaviors/edit/' + id,
-
 
531
            'data': {
-
 
532
                'description': description
-
 
533
            }
-
 
534
        }).done(function(response) {
-
 
535
            if (response['success']) {
-
 
536
                behaviors.map((item) => {
-
 
537
                    if (item.id == id) {
-
 
538
                        item.description = description;
-
 
539
                    }
-
 
540
                });
-
 
541
                renderData(behaviors);
-
 
542
            } else {
-
 
543
                $.fn.showError(response['message'] || 'ERROR_UNKNOWN');
-
 
544
            }
-
 
545
        });
-
 
546
    }
565
 
547
    /**
-
 
548
     * Remove behavior
-
 
549
     */
-
 
550
    const removeBehavior = (id) => {
-
 
551
        $.ajax({
-
 
552
            'dataType': 'json',
-
 
553
            'accept': 'application/json',
-
 
554
            'method': 'post',
-
 
555
            'url': '/settings/behaviors/delete/' + id+'/'+competenciesUuid,
-
 
556
        })
-
 
557
        .done(function(response) {
-
 
558
            if (response['success']) {
-
 
559
                behaviors = behaviors.filter((item) => item.id != id);
-
 
560
                renderData(behaviors);
-
 
561
            } else {
-
 
562
                $.fn.showError(response['message'] || 'ERROR_UNKNOWN');
-
 
563
            }
-
 
564
        })
-
 
565
    }
566
    
566
    /**
-
 
567
     * Render Sections data
-
 
568
     */
-
 
569
    const renderData = (data) => {
-
 
570
        getAllBehaviors();
-
 
571
        data.length > 0 ?
-
 
572
            $("#rows").html($("#behaviorTemplate").render(data)) :
-
 
573
            $("#rows").html('')
-
 
574
    }
567
 
575
    /**
-
 
576
     * get alls Behavios
-
 
577
     */
-
 
578
    const getAllBehaviors = () => {
-
 
579
        $('#select-conduct').children().remove();
-
 
580
        $('#select-conduct').append($('<option>', {
-
 
581
            value: '',
-
 
582
            text: 'LABEL_SELECT'
-
 
583
        }));
-
 
584
        $.getJSON("/settings/behaviors", function(data) {
-
 
585
            $.each(data.data, function(i, item) {
-
 
586
                console.log(filterItemById(item.uuid));
-
 
587
                if (!filterItemById(item.uuid)) {
-
 
588
                    $('#select-conduct').append($('<option>', {
-
 
589
                        value: item.uuid,
-
 
590
                        text: item.description
-
 
591
                    }));
-
 
592
                }
-
 
593
            });
-
 
594
        });
-
 
595
    }
568
 
596
    /**
-
 
597
     * Clicked cancel new/edit Form
-
 
598
     */
-
 
599
    $('body').on('click', 'button[id="btn-select-conduct"]', function(e) {
-
 
600
        if ($("#select-conduct").val() == "") {
-
 
601
            $.fn.showError('LABEL_ERROR_SELECT_CONDUCT');
-
 
602
        } else {
-
 
603
            behaviors.push({
-
 
604
                'id': $("#select-conduct").val(),
-
 
605
                'description': $('select[name="select-conduct"] option:selected').text()
-
 
606
            });
-
 
607
            renderData(behaviors);
-
 
608
        }
-
 
609
    });
-
 
610
    /**
-
 
611
     * Filter section selected
-
 
612
     */
-
 
613
    const filterItemById = (id) => behaviors.filter((item) => item.id == id ? item : false)[0];
-
 
614
});
569
});
Línea 615... Línea 570...
615
 
570
 
616
JS;
571
JS;
617
$this->inlineScript()->captureEnd();
572
$this->inlineScript()->captureEnd();
Línea 661... Línea 616...
661
                </div>
616
                </div>
662
            </div>
617
            </div>
663
        </div>
618
        </div>
664
    </div>
619
    </div>
665
</section>
620
</section>
-
 
621
 
666
<!-- The Form creation -->
622
<!-- The Form creation -->
667
<section class="content" id="row-form" style="display: none">
623
<section class="content" id="row-form" style="display: none">
668
    <div class="container-fluid">
624
    <div class="container-fluid">
669
        <div class="row">
625
        <div class="row">
670
            <div class="col-md-12 col-sm-12 col-12">
626
            <div class="col-md-12 col-sm-12 col-12">
Línea 727... Línea 683...
727
                                    echo $this->formLabel($element);
683
                                    echo $this->formLabel($element);
728
                                    echo $this->formTextArea($element);
684
                                    echo $this->formTextArea($element);
729
                                    ?>
685
                                    ?>
730
                                </div>
686
                                </div>
731
                            </div>
687
                            </div>
732
                            <?php echo $this->form()->closeTag($form); ?>
-
 
-
 
688
                           
733
                            <div class="col-md-12 col-sm-12 col-12">
689
                            <div class="col-md-12 col-sm-12 col-12">
734
                                <div class="form-group">
690
                                <div class="form-group">
735
                                    <div class="row">
691
                                    <div class="row">
736
                                        <div class="col-md-4 col-sm-4 col-xs-12">
692
                                        <div class="col-md-8 col-sm-8 col-xs-12">
737
                                            <select name="select-conduct" id="select-conduct" class="form-control">
693
                                            <select name="select-behavior" id="select-behavior" >
-
 
694
                                           		<option>LABEL_SELECT</option>
738
                                            </select>
695
                                            </select>
739
                                        </div>
696
                                        </div>
740
                                        <div class="col-md-4 col-sm-4 col-xs-12">
697
                                        <div class="col-md-4 col-sm-4 col-xs-12">
741
                                            <button type="button" class="btn btn-primary" id="btn-select-conduct" data-toggle="tooltip" title="LABEL_ADD LABEL_CONDUCT">LABEL_ADD LABEL_CONDUCT</button>
698
                                            <button type="button" class="btn btn-primary" id="btn-select-behavior" data-toggle="tooltip" title="LABEL_ADD LABEL_BEHAVIOR">LABEL_ADD LABEL_BEHAVIOR</button>
742
                                        </div>
-
 
743
                                        <div class="col-md-4 col-sm-4 col-xs-12 text-right">
-
 
744
                                            <button type="button" class="btn btn-primary" id="btn-add-conduct" data-toggle="tooltip" title="LABEL_NEWS LABEL_CONDUCT"><i class="fa fa-plus" aria-hidden="true"></i> LABEL_NEWS LABEL_CONDUCT</button>
-
 
745
                                        </div>
699
                                        </div>
746
                                    </div>
700
                                    </div>
747
                                </div>
701
                                </div>
748
                            </div>
702
                            </div>
749
                        </div>
703
                        </div>
750
                        <div class="col-xs-12 col-md-12">
704
                        <div class="col-xs-12 col-md-12">
751
                            <br />
705
                            <br />
752
                            <div class="table-responsive">
706
                            <div class="table-responsive">
753
                                <table class="table table-bordered">
707
                                <table id="table-behaviors" class="table table-bordered">
754
                                    <thead>
708
                                    <thead>
755
                                        <tr>
709
                                        <tr>
756
                                            <th style="width: 60%;">LABEL_DESCRIPTION</th>
710
                                            <th style="width: 60%;">LABEL_DESCRIPTION</th>
757
                                            <th style="width: 20%;">LABEL_ACTIONS</th>
711
                                            <th style="width: 20%;">LABEL_ACTIONS</th>
758
                                        </tr>
712
                                        </tr>
759
                                    </thead>
713
                                    </thead>
-
 
714
                                    <tbody >
760
                                    <tbody id="rows"></tbody>
715
                                    </tbody>
761
                                </table>
716
                                </table>
762
                            </div>
717
                            </div>
763
                            <div class="col-xs-12 col-md-12">
718
                            <div class="col-xs-12 col-md-12 text-right">
764
                                <div class="form-group">
-
 
-
 
719
                        
765
                                    <button type="submit" form="form" class="btn btn-primary">LABEL_SAVE</button>
720
                                    <button type="submit" form="form" class="btn btn-primary">LABEL_SAVE</button>
766
                                    <button type="button" class="btn btn-secondary btn-edit-cancel">LABEL_CANCEL</button>
721
                                    <button type="button" class="btn btn-secondary btn-edit-cancel">LABEL_CANCEL</button>
767
                                </div>
-
 
-
 
722
                 
768
                            </div>
723
                            </div>
769
                        </div>
724
                        </div>
-
 
725
                         <?php echo $this->form()->closeTag($form); ?>
770
                    </div>
726
                    </div>
771
                </div>
727
                </div>
772
            </div>
728
            </div>
773
        </div>
729
        </div>
774
</section>
730
</section>
775
<!---end form--->
-
 
776
<!--start modal conduct-->
-
 
-
 
731
 
777
<div id="modal-conduct" class="modal" tabindex="-1" role="dialog">
732
<script id="trBehaviorTemplate" type="text/x-jsrender">
778
    <div class="modal-dialog modal-lg" role="document">
-
 
779
        <form action="#" name="form-conduct" id="form-conduct">
-
 
780
            <input type="hidden" name="conduct-id" id="conduct-id" value="" />
-
 
781
            <input type="hidden" name="conduct-competencia" id="conduct-competencia" value="" />
-
 
782
            <div class="modal-content">
733
    <tr id="tr_behavior_id_{{:id}}">
-
 
734
        
783
                <div class="modal-header">
735
       <td class="text-left">
784
                    <h4 class="modal-title">LABEL_ADD LABEL_CONDUCT</h4>
-
 
785
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close">
736
         <input type="hidden" class="behavior_id" name="behavior_id[]" value="{{:id}}" />      
786
                        <span aria-hidden="true">&times;</span>
-
 
787
                    </button>
-
 
788
                </div>
-
 
789
                <div class="modal-body">
-
 
790
                    <div class="form-group">
-
 
791
                        <label for="conduct-name">LABEL_DESCRIPTION</label>
-
 
792
                        <input type="text" name="conduct-description" id="conduct-description" class="form-control" maxlength="200" value="" />
-
 
793
                    </div>
-
 
794
                </div>
-
 
795
                <div class="modal-footer">
-
 
796
                    <button type="button" class="btn btn-primary btn-conduct-submit">LABEL_SAVE</button>
-
 
797
                    <button type="button" class="btn btn-secondary" data-dismiss="modal">LABEL_CLOSE</button>
-
 
798
                </div>
737
         {{:description}}
799
            </div>
-
 
800
        </form>
738
       </td>   
801
    </div>
-
 
802
</div>
-
 
803
<!---end modal conduct --->
-
 
804
<!--start template--->
-
 
805
<script id="behaviorTemplate" type="text/x-jsrender">
-
 
806
    <tr>
-
 
807
       <td class="text-left">{{:description}}</td>   
-
 
808
       <td>
739
       <td>
809
           <button class="btn btn-default btn-edit-conduct" data-conduct="{{:id}}" data-toggle="tooltip"  data-original-title="LABEL_EDIT"><i class="fa fa-edit" aria-hidden="true"></i> LABEL_EDIT</button>
-
 
810
           <button class="btn btn-default btn-delete-conduct" data-conduct="{{:id}}" data-toggle="tooltip"  data-original-title="LABEL_DELETE"><i class="fa fa-ban" aria-hidden="true"></i> LABEL_DELETE</button>   
740
           <button class="btn btn-default btn-remove-behavior" data-id="{{:id}}" data-toggle="tooltip"  data-original-title="LABEL_DELETE"><i class="fa fa-ban" aria-hidden="true"></i> LABEL_DELETE</button>   
811
       </td>
741
       </td>
812
   </tr>
742
   </tr>
813
</script>
743
</script>
814
<!--end template--->
-
 
815
744