Proyectos de Subversion LeadersLinked - Backend

Rev

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

Rev 7774 Rev 7783
Línea 102... Línea 102...
102
       var route_experience = '';
102
       var route_experience = '';
103
       var route_languages =  '';
103
       var route_languages =  '';
104
       var route_degrees = '';
104
       var route_degrees = '';
105
       var route_skills =  '';
105
       var route_skills =  '';
106
       var route_last_date_of_application =  '';
106
       var route_last_date_of_application =  '';
-
 
107
                                
-
 
108
 
Línea 107... Línea 109...
107
 
109
 
108
        var allowDelete = $allowDelete;
110
        var allowDelete = $allowDelete;
109
        var allowEdit = $allowEdit;
111
        var allowEdit = $allowEdit;
Línea -... Línea 112...
-
 
112
        var allowUsersWhoApplied = $allowUsersWhoApplied;
-
 
113
        
-
 
114
        var gridTable = $('#gridTable').dataTable( {
-
 
115
            'processing': true,
-
 
116
            'serverSide': true,
-
 
117
            'searching': true,
-
 
118
            'order': [[ 0, 'desc' ]],
-
 
119
            'ordering':  true,
-
 
120
            'ordenable' : true,
-
 
121
            'responsive': true,
-
 
122
            'select' : false,
-
 
123
        	'paging': true,
-
 
124
            'pagingType': 'simple_numbers',
-
 
125
 
-
 
126
    		'ajax': {
-
 
127
    			'url' : '$routeDatatable',
-
 
128
    			'type' : 'get',
-
 
129
                'beforeSend': function (request) {
-
 
130
                  NProgress.start();
-
 
131
                },
-
 
132
                'dataFilter': function(response) {
-
 
133
                    var response = jQuery.parseJSON( response );
-
 
134
                    
-
 
135
                    var json                = {};
-
 
136
                    json.recordsTotal       = 0;
-
 
137
                    json.recordsFiltered    = 0;
-
 
138
                    json.data               = [];
-
 
139
                    
-
 
140
                    if(response.success) {
-
 
141
                        json.recordsTotal       = response.data.total;
-
 
142
                        json.recordsFiltered    = response.data.total;
-
 
143
                        json.data               = response.data.items;
-
 
144
                    } else {
-
 
145
                        $.fn.showError(response.data)
-
 
146
                    }
-
 
147
                    
-
 
148
                    return JSON.stringify( json );
-
 
149
                }
-
 
150
    		},
-
 
151
            'language' : {
-
 
152
                'sProcessing':     'LABEL_DATATABLE_SPROCESSING',
-
 
153
                'sLengthMenu':     'LABEL_DATATABLE_SLENGTHMENU',
-
 
154
                'sZeroRecords':    'LABEL_DATATABLE_SZERORECORDS',
-
 
155
                'sEmptyTable':     'LABEL_DATATABLE_SEMPTYTABLE',
-
 
156
                'sInfo':           'LABEL_DATATABLE_SINFO',
-
 
157
                'sInfoEmpty':      'LABEL_DATATABLE_SINFOEMPTY',
-
 
158
                'sInfoFiltered':   'LABEL_DATATABLE_SINFOFILTERED',
-
 
159
                'sInfoPostFix':    '',
-
 
160
                'sSearch':         'LABEL_DATATABLE_SSEARCH',
-
 
161
                'sUrl':            '',
-
 
162
                'sInfoThousands':  ',',
-
 
163
                'sLoadingRecords': 'LABEL_DATATABLE_SLOADINGRECORDS',
-
 
164
                'oPaginate': {
-
 
165
                    'sFirst':    'LABEL_DATATABLE_SFIRST',
-
 
166
                    'sLast':     'LABEL_DATATABLE_SLAST',
-
 
167
                    'sNext':     'LABEL_DATATABLE_SNEXT',
-
 
168
                    'sPrevious': 'LABEL_DATATABLE_SPREVIOUS'
-
 
169
                },
-
 
170
                'oAria': {
-
 
171
                    'sSortAscending':  ': LABEL_DATATABLE_SSORTASCENDING',
-
 
172
                    'sSortDescending': ':LABEL_DATATABLE_SSORTDESCENDING'
-
 
173
                },
-
 
174
            },
-
 
175
            'drawCallback': function( settings ) {
-
 
176
                NProgress.done();
-
 
177
                $('button.btn-delete').confirmation({
-
 
178
                    rootSelector: 'button.btn-delete',
-
 
179
                    title : 'LABEL_ARE_YOU_SURE',
-
 
180
                    singleton : true,
-
 
181
                    btnOkLabel: 'LABEL_YES',
-
 
182
                    btnCancelLabel: 'LABEL_NO',
-
 
183
                    onConfirm: function(value) {
-
 
184
                        action = $(this).data('href');
-
 
185
                        NProgress.start();
-
 
186
                        $.ajax({
-
 
187
                            'dataType'  : 'json',
-
 
188
                            'accept'    : 'application/json',
-
 
189
                            'method'    : 'post',
-
 
190
                            'url'       :  action,
-
 
191
                        }).done(function(response) {
-
 
192
                            if(response['success']) {
-
 
193
                                $.fn.showSuccess(response['data']);
-
 
194
                                gridTable.api().ajax.reload(null, false);
-
 
195
                            } else {
-
 
196
                                $.fn.showError(response['data']);
-
 
197
                            }
-
 
198
                        }).fail(function( jqXHR, textStatus, errorThrown) {
-
 
199
                            $.fn.showError(textStatus);
-
 
200
                        }).always(function() {
-
 
201
                            NProgress.done();
-
 
202
                        });
-
 
203
                    },
-
 
204
                });
-
 
205
            },
-
 
206
            'aoColumns': [
-
 
207
                { 'mDataProp': 'last_date_of_application' },
-
 
208
                { 'mDataProp': 'title' }, 
-
 
209
                { 'mDataProp': 'details' },
-
 
210
                { 'mDataProp': 'actions' },
-
 
211
    	    ],
-
 
212
            'columnDefs': [
-
 
213
 
-
 
214
                {
-
 
215
                    'targets': -2,
-
 
216
                    'orderable': false,
-
 
217
                    'render' : function ( data, type, row ) {
-
 
218
                        var s = 'LABEL_STATUS : ' + row['details']['status'] + '<br>';
-
 
219
                        s = s + 'LABEL_EMPLOYMENT_TYPE : <br>' + row['details']['employment_type'] + '<br>';
-
 
220
                        s = s +  'LABEL_QTY_USERS_WHO_APPLIED : ' + row['details']['users_who_applied'] + '<br>';
-
 
221
 
-
 
222
                        return s;
-
 
223
                    }
-
 
224
                },
-
 
225
 
-
 
226
                {
-
 
227
                    'targets': -1,
-
 
228
                    'orderable': false,
-
 
229
                    'render' : function ( data, type, row ) {
-
 
230
                        s = '';
-
 
231
                        
-
 
232
                        if(allowEdit && data['link_edit']  ) {
-
 
233
                            s = s + '<button class="btn btn-info btn-sm btn-edit" style="margin-top: 5px" data-href="' + data['link_edit']+ '" data-toggle="tooltip" title="LABEL_EDIT"><i class="fa fa-pencil"></i> LABEL_EDIT </button><br>';
-
 
234
                        }
-
 
235
                        if(allowDelete && data['link_delete']  ) {
-
 
236
                            s = s + '<button class="btn btn-danger btn-sm btn-delete" style="margin-top: 5px" data-href="' + data['link_delete']+ '" data-toggle="tooltip" title="LABEL_DELETE"><i class="fa fa-trash"></i> LABEL_DELETE </button><br>';
-
 
237
                        }
-
 
238
                        if(allowUsersWhoApplied && data['link_users_who_applied']  ) {
-
 
239
                            s = s + '<button class="btn btn-primary btn-sm btn-users-who-applied" style="margin-top: 5px" data-href="' + data['link_users_who_applied']+ '" data-toggle="tooltip" title="LABEL_USERS_WHO_APPLIED"><i class="fa fa-users"></i> LABEL_USERS_WHO_APPLIED </button><br>';
-
 
240
                        }
-
 
241
 
-
 
242
                        return s;
-
 
243
                    }
-
 
244
                }
Línea 110... Línea 245...
110
        var allowUsersWhoApplied = $allowUsersWhoApplied;
245
              ],
111
        
246
        });
112
 
247
 
113
    $.validator.addMethod('greaterThanFloat', function (value, element, param) {
248
    $.validator.addMethod('greaterThanFloat', function (value, element, param) {
Línea 267... Línea 402...
267
        invalidHandler: function(form, validator) {
402
        invalidHandler: function(form, validator) {
Línea 268... Línea 403...
268
            
403
            
269
        }
404
        }
Línea -... Línea 405...
-
 
405
    });
-
 
406
 
-
 
407
    $('body').on('click', 'button.btn-edit', function(e) {
-
 
408
        e.preventDefault();
-
 
409
 
-
 
410
        var href = $(this).data('href');
-
 
411
 
-
 
412
        NProgress.start();
-
 
413
            $.ajax({
-
 
414
                'dataType'  : 'json',
-
 
415
                'accept'    : 'application/json',
-
 
416
                'method'    : 'get',
-
 
417
                'url'       :  href,
-
 
418
            }).done(function(response) {
-
 
419
                if(response['success']) {
-
 
420
                    $('#add-job-box').modal('hide');
-
 
421
                    gridTable.api().ajax.reload(null, false);
-
 
422
 
-
 
423
                    $('#overview-title').html(response['data']['title']);
-
 
424
                    $('#overview-job-category').html(response['data']['job_category']);
-
 
425
					$('#overview-last-date-of-application').html(response['data']['last_date_of_application']);
-
 
426
					$('#overview-employment-type').html(response['data']['employment_type']);
-
 
427
                    $('#overview-location').html(response['data']['location']);
-
 
428
 
-
 
429
                    $('#overview-status').html(response['data']['status']);
-
 
430
                    $('#overview-description').html(response['data']['description']);					
-
 
431
 
-
 
432
                    
-
 
433
                    if(response['data']['salary']) {
-
 
434
					   $('#overview-salary').html(response['data']['salary']);
-
 
435
                    } else {
-
 
436
                       $('#overview-salary').html('')
-
 
437
                    } 
-
 
438
 
-
 
439
                    if(response['data']['experience']) {
-
 
440
					   $('#overview-experience').html(response['data']['experience'] + ' LABEL_YEARS');
-
 
441
                    } else {
-
 
442
                       $('#overview-experience').html('')
-
 
443
                    } 
-
 
444
 
-
 
445
 
-
 
446
 
-
 
447
                    $('#list-skills').empty();
-
 
448
                    $.each(response['data']['skills'], function(i, name) {
-
 
449
                        $('#list-skills').append('<li>' + name + '</li>');
-
 
450
                    });
-
 
451
 
-
 
452
                    $('#list-languages').empty();
-
 
453
                    $.each(response['data']['languages'], function(i, name) {
-
 
454
                        $('#list-languages').append('<li>' + name + '</li>');
-
 
455
                    });
-
 
456
 
-
 
457
                    $('#list-degrees').empty();
-
 
458
                    $.each(response['data']['degrees'], function(i, name) {
-
 
459
                        $('#list-degrees').append('<li>' + name + '</li>');
-
 
460
                    });
-
 
461
 
-
 
462
 
-
 
463
                    route_status =  response['data']['route_status'];
-
 
464
                    route_title =   response['data']['route_title'];
-
 
465
                    route_extended =   response['data']['route_extended'];
-
 
466
                    route_location =   response['data']['route_location'];
-
 
467
                    route_job_category =   response['data']['route_job_category'];
-
 
468
                    route_employment_type =   response['data']['route_employment_type'];
-
 
469
                    route_salary =   response['data']['route_salary'];
-
 
470
                    route_experience =  response['data']['route_experience'];
-
 
471
                    route_languages =   response['data']['route_languages'];
-
 
472
                    route_degrees =  response['data']['route_degrees'];
-
 
473
                    route_skills =   response['data']['route_skills'];
-
 
474
                    route_last_date_of_application =   response['data']['route_last_date_of_application'];
-
 
475
                    
-
 
476
 
-
 
477
                    $('#divListing').hide();
-
 
478
                    $('#divEdit').show();
-
 
479
 
-
 
480
                } else {
-
 
481
                    validatorAdd.resetForm();
-
 
482
                    if(jQuery.type(response['data']) == 'string') {
-
 
483
                        $.fn.showError(response['data']);
-
 
484
                    } else  {
-
 
485
                        $.each(response['data'], function( fieldname, errors ) {
-
 
486
                            $.fn.showFormErrorValidator('#form-add #' + fieldname, errors);
-
 
487
                        });
-
 
488
                    }
-
 
489
                }
-
 
490
            }).fail(function( jqXHR, textStatus, errorThrown) {
-
 
491
                $.fn.showError(textStatus);
-
 
492
            }).always(function() {
-
 
493
                NProgress.done();
-
 
494
            });
-
 
495
            return false;
-
 
496
    });
-
 
497
 
270
    });
498
 
271
 
499
 
272
    $(".close-box, .btn-add-job-cancel").on("click", function(e){
500
    $(".close-box, .btn-add-job-cancel").on("click", function(e){
273
        e.preventDefault();
501
        e.preventDefault();
274
        $('#add-job-box').modal('hide');
502
        $('#add-job-box').modal('hide');