Proyectos de Subversion LeadersLinked - Backend

Rev

Rev 6268 | Rev 6273 | Ir a la última revisión | | Comparar con el anterior | Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 www 1
<?php
2
 
3
use LeadersLinked\Model\UserExperience;
4
 
5
$acl = $this->viewModel()
6
    ->getRoot()
7
    ->getVariable('acl');
8
$currentUserHelper = $this->currentUserHelper();
9
$currentUser = $currentUserHelper->getUser();
10
$currentCompany = $currentUserHelper->getCompany();
5761 stevensc 11
$companyId = $currentCompany->uuid;
1 www 12
 
13
$roleName = $currentUserHelper->getUserTypeId();
14
 
5743 stevensc 15
$routeWebsite = $this->url('profile/website', ['id' => $currentCompany->uuid]);
16
$routeCompanySize = $this->url('profile/company-size', ['id' => $currentCompany->uuid]);
17
$routeIndustry = $this->url('profile/industry', ['id' => $currentCompany->uuid]);
18
$routeExtended = $this->url('profile/extended', ['id' => $currentCompany->uuid]);
19
$routeSocialNetworks = $this->url('profile/social-network', ['id' => $currentCompany->uuid]);
20
$routeLocationAdd = $this->url('profile/location', ['id' => $currentCompany->uuid, 'operation' => 'add']);
21
$routeFoundationYear = $this->url('profile/foundation_year', ['id' => $currentCompany->uuid, 'operation' => 'add']);
22
$routeImageUpload = $this->url('profile/image', ['id' => $currentCompany->uuid, 'operation' => 'upload']);
23
$routeCoverUpload = $this->url('profile/cover', ['id' => $currentCompany->uuid, 'operation' => 'upload']);
24
$routeFooterUpload = $this->url('profile/footer', ['id' => $currentCompany->uuid, 'operation' => 'upload']);
25
$routeHeaderUpload = $this->url('profile/header', ['id' => $currentCompany->uuid, 'operation' => 'upload']);
1 www 26
 
27
 
28
$this->inlineScript()->appendFile('https://maps.googleapis.com/maps/api/js?key=' . $google_map_key . '&libraries=places');
29
 
30
$this->headLink()->appendStylesheet($this->basePath('plugins/nprogress/nprogress.css'));
31
$this->inlineScript()->appendFile($this->basePath('plugins/nprogress/nprogress.js'));
32
 
33
$this->inlineScript()->appendFile($this->basePath('plugins/ckeditor/ckeditor.js'));
34
 
35
 
36
$this->headLink()->appendStylesheet($this->basePath('plugins/bootstrap-fileinput/css/fileinput.min.css'));
37
$this->headLink()->appendStylesheet($this->basePath('plugins/bootstrap-fileinput/themes/explorer-fas/theme.css'));
38
 
39
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/plugins/piexif.js'));
40
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/plugins/sortable.js'));
41
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/fileinput.js'));
42
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/locales/es.js'));
43
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/themes/fas/theme.js'));
44
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/themes/explorer-fas/theme.js'));
45
 
46
 
47
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-validation/jquery.validate.js'));
48
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-validation/additional-methods.js'));
49
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-validation/localization/messages_es.js'));
50
 
51
 
52
 
53
$this->headLink()->appendStylesheet($this->basePath('plugins/select2/css/select2.min.css'));
54
$this->headLink()->appendStylesheet($this->basePath('plugins/select2-bootstrap4-theme/select2-bootstrap4.min.css'));
55
$this->inlineScript()->appendFile($this->basePath('plugins/select2/js/select2.min.js'));
56
 
57
 
58
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-input-number/input-number-format.jquery.min.js'));
59
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-confirmation/dist/bootstrap-confirmation.js'));
60
 
61
 
62
$this->headLink()->appendStylesheet($this->basePath('plugins/bootstrap4-toggle/css/bootstrap4-toggle.min.css'));
63
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap4-toggle/js/bootstrap4-toggle.min.js'));
64
 
65
 
66
 
67
 
68
 
69
$this->inlineScript()->appendFile($this->basePath('plugins/moment/moment-with-locales.min.js'));
70
$this->headLink()->appendStylesheet($this->basePath('plugins/bootstrap-datetimepicker/css/bootstrap-datetimepicker.css'));
71
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-datetimepicker/js/bootstrap-datetimepicker.min.js'));
72
 
73
$this->inlineScript()->captureStart();
74
echo <<<JS
75
jQuery( document ).ready(function( $ ) {
76
 
77
 
78
 
79
    $.validator.addMethod('greaterThan', function (value, element, param) {
80
        var otherElement = $(param);
81
        return parseInt(value, 10) > parseInt(otherElement.val(), 10);
82
    }, 'ERROR_INVALID_MINIMUM');
83
 
84
 
85
    $.validator.addMethod('checkLocation', function (value, element, param) {
86
        var otherElement = $(param);
87
        return $.trim(otherElement.val()).length > 0;
88
    }, 'ERROR_PLACED_AUTOCOMPLETE_DOES_NOT_CONTAIN_GEOMETRY');
89
 
90
    var autocompleteLocation = new google.maps.places.Autocomplete(
91
        (document.getElementById('location_search')),
92
        {types: ['(cities)']}
93
    );
94
 
95
 
96
 
97
 
98
 
99
    $.fn.fillInAddressLocation = function() {
100
        console.log('fillInAddressLocation');
101
 
102
        var place = autocompleteLocation.getPlace();
103
        if (!place.geometry) {
104
            $.fn.showError('ERROR_PLACED_AUTOCOMPLETE_DOES_NOT_CONTAIN_GEOMETRY')
105
            return;
106
        } else {
107
        address1 = '';
108
        address2 = '';
109
        city1 = '';
110
        city2 = '';
111
        state = '';
112
        country = '';
113
        postal_code = '';
114
 
115
        formatted_address = place.formatted_address;
116
        latitude = place.geometry.location.lat();
117
        longitude = place.geometry.location.lng();
118
        var arrAddress = place.address_components;
119
 
120
        $.each(arrAddress, function(i, address_component) {
121
            if (address_component.types[0] == "route") {
122
                address1 = address_component.long_name;
123
            }
124
            if (address_component.types[0] == "sublocality") {
125
                address2 = address_component.long_name;
126
            }
127
            if (address_component.types[0] == "locality") {
128
                city1 = address_component.long_name;
129
            }
130
            if (address_component.types[0] == "administrative_area_level_2") {
131
                city2 = address_component.long_name;
132
            }
133
            if (address_component.types[0] == "administrative_area_level_1") {
134
                state = address_component.long_name;
135
            }
136
            if (address_component.types[0] == "country") {
137
                country = address_component.long_name;
138
            }
139
            if (address_component.types[0] == "postal_code") {
140
                postal_code = address_component.long_name;
141
            }
142
        });
143
 
144
        $('#form-location #formatted_address').val(formatted_address);
145
        $('#form-location #address1').val(address1);
146
        $('#form-location #address2').val(address2);
147
        $('#form-location #city1').val(city1);
148
        $('#form-location #city2').val(city2);
149
        $('#form-location #state').val(state);
150
        $('#form-location #country').val(country);
151
        $('#form-location #postal_code').val(postal_code);
152
        $('#form-location #latitude').val(latitude);
153
        $('#form-location #longitude').val(longitude);
154
 
155
        }
156
    }
157
    $.fn.renderLocation = function(data) {
158
        $('#locations-records').empty();
159
        if(Array.isArray(data)) {
160
            max = data.length;
161
            for(i = 0; i < max; i++)
162
            {
163
                var location = data[i];
164
                s = '<p>' + location['formatted_address'];
165
                if(location['is_main'] == 'y') {
166
                    s = s + ' (LABEL_MAIN_LOCATION) ';
167
                }
168
                s = s + ' <a href="#" title="" data-link="' + location['link_edit'] + '" class="btn-location-edit"><i class="fa fa-pencil"></i></a>&nbsp; ';
169
                s = s + ' <a href="#" title="" data-link="' + location['link_delete'] + '" class="btn-location-delete"><i class="fa fa-trash"></i></a>';
170
                s = s + ' </p>';
171
 
172
                if(i < (max - 1)) {
173
                    s = s + '<hr/>';
174
                }
175
                $('#locations-records').append(s);
176
            }
177
        }
178
    }
179
 
180
 
181
 
182
            $.validator.setDefaults({
183
            debug: true,
184
            highlight: function(element) {
185
                $(element).addClass('is-invalid');
186
            },
187
            unhighlight: function(element) {
188
                $(element).removeClass('is-invalid');
189
            },
190
            errorElement: 'span',
191
            errorClass: 'error invalid-feedback',
192
            errorPlacement: function(error, element) {
193
                if(element.parent('.form-group').length) {
194
                    error.insertAfter(element);
195
                } else if(element.parent('.toggle').length) {
196
                    error.insertAfter(element.parent().parent());
197
                } else {
198
                    error.insertAfter(element.parent());
199
                }
200
            }
201
        });
202
 
203
 
204
        $.fn.showFormErrorValidator = function(fieldname, errors) {
205
            var field = $(fieldname);
206
            if(field) {
207
                $(field).addClass('is-invalid');
208
 
209
 
210
                var error = $('<span id="' + fieldname +'-error" class="error invalid-feedback">' + errors + '</div>');
211
                if(field.parent('.form-group').length) {
212
                    error.insertAfter(field);
213
                } else  if(field.parent('.toggle').length) {
214
                    error.insertAfter(field.parent().parent());
215
                } else {
216
                    error.insertAfter(field.parent());
217
                }
218
            }
219
        };
220
 
221
 
222
 
223
 
224
    var validatorLocation = $('#form-location').validate({
225
        debug: true,
226
        onclick: false,
227
        onkeyup: false,
228
        onfocusout: false,
229
        ignore: [],
230
        rules: {
231
            'location_search': {
232
                required: true,
233
                checkLocation: '#form-location #latitude'
234
            }
235
        },
236
        submitHandler: function(form)
237
        {
238
            NProgress.start();
239
            $.ajax({
240
                'dataType'  : 'json',
241
                'accept'    : 'application/json',
242
                'method'    : 'post',
243
                'url'       :  $('#form-location').attr('action'),
244
                'data'      :  $('#form-location').serialize(),
245
            }).done(function(response) {
246
                if(response['success']) {
247
                    $.fn.renderLocation(response['data']);
248
 
249
                    $("#location-box").modal('hide');
250
                } else {
251
                    validatorLocation.resetForm();
252
                    $.fn.showError(response['data']);
253
                }
254
            }).fail(function( jqXHR, textStatus, errorThrown) {
255
                $.fn.showError(textStatus);
256
            }).always(function() {
257
                NProgress.done();
258
            });
259
            return false;
260
        },
261
        invalidHandler: function(form, validator) {
262
 
263
        }
264
    });
265
 
266
    $('.btn-location-add').on("click", function(e){
267
        e.preventDefault();
268
 
269
        $('#form-location').attr('action', '$routeLocationAdd');
270
        $('#form-location #location_search').val('');
271
        $('#form-location #formatted_address').val('');
272
        $('#form-location #address1').val('');
273
        $('#form-location #address2').val('');
274
        $('#form-location #country').val('');
275
        $('#form-location #state').val('');
276
        $('#form-location #city1').val('');
277
        $('#form-location #city2').val('');
278
        $('#form-location #postal_code').val('');
279
        $('#form-location #latitude').val('');
280
        $('#form-location #longitude').val('');
281
        validatorLocation.resetForm();
282
 
283
        $("#location-box").modal('show');
284
    });
285
 
286
    $('body').on('click', 'a.btn-location-edit', function(e) {
287
        e.preventDefault();
288
 
289
        var url = $(this).data('link');
290
 
291
        NProgress.start();
292
        $.ajax({
293
            'dataType'  : 'json',
294
            'accept'    : 'application/json',
295
            'method'    : 'get',
296
            'url'       : url,
297
        }).done(function(response) {
298
           if(response['success']) {
299
                $('#form-location').attr('action', url);
300
                $('#form-location #location_search').val(response['data']['formatted_address']);
301
                $('#form-location #formatted_address').val(response['data']['formatted_address']);
302
                $('#form-location #address1').val(response['data']['address1']);
303
                $('#form-location #address2').val(response['data']['address2']);
304
                $('#form-location #country').val(response['data']['country']);
305
                $('#form-location #state').val(response['data']['state']);
306
                $('#form-location #city1').val(response['data']['city1']);
307
                $('#form-location #city2').val(response['data']['city2']);
308
                $('#form-location #postal_code').val(response['data']['postal_code']);
309
                $('#form-location #latitude').val(response['data']['latitude']);
310
                $('#form-location #longitude').val(response['data']['longitude']);
311
 
312
                if(response['data']['is_main'] == 'y') {
313
                    $('#form-location #is_main').bootstrapToggle('on')
314
                } else {
315
                    $('#form-location #is_main').bootstrapToggle('off')
316
                }
317
 
318
                validatorLocation.resetForm();
319
 
320
                $("#location-box").modal('show');
321
            } else {
322
                $.fn.showError(response['data']);
323
            }
324
        }).fail(function( jqXHR, textStatus, errorThrown) {
325
            $.fn.showError(textStatus);
326
        }).always(function() {
327
            NProgress.done();
328
        });
329
        return false;
330
 
331
 
332
    });
333
 
334
    $('body').on('click', 'a.btn-location-delete', function(e) {
335
        e.preventDefault();
336
 
337
        var url = $(this).data('link');
338
 
339
        NProgress.start();
340
        $.ajax({
341
            'dataType'  : 'json',
342
            'accept'    : 'application/json',
343
            'method'    : 'post',
344
            'url'       : url,
345
        }).done(function(response) {
346
           if(response['success']) {
347
                $.fn.renderLocation(response['data']);
348
            } else {
349
                $.fn.showError(response['data']);
350
            }
351
        }).fail(function( jqXHR, textStatus, errorThrown) {
352
            $.fn.showError(textStatus);
353
        }).always(function() {
354
            NProgress.done();
355
        });
356
        return false;
357
 
358
 
359
    });
360
 
361
 
362
    $('.btn-location-close').on("click", function(e){
363
        e.preventDefault();
364
 
365
        $("#location-box").modal('hide');
366
        return false;
367
    });
368
 
369
    var validatorSocialNetwork = $('#form-social-network').validate({
370
        debug: true,
371
        onclick: false,
372
        onkeyup: false,
373
        ignore: [],
374
        rules: {
375
            'facebook': {
376
                required: false,
377
                maxlength: 250,
378
                url: true,
379
            },
380
            'twitter': {
381
                required: false,
382
                maxlength: 250,
383
                url: true,
384
            },
385
            'instagram': {
386
                required: false,
387
                maxlength: 250,
388
                url: true,
389
            },
390
        },
391
 
392
        submitHandler: function(form)
393
        {
394
            NProgress.start();
395
            $.ajax({
396
                'dataType'  : 'json',
397
                'accept'    : 'application/json',
398
                'method'    : 'post',
399
                'url'       :  $('#form-social-network').attr('action'),
400
                'data'      :  $('#form-social-network').serialize()
401
            }).done(function(response) {
402
                if(response['success']) {
403
 
404
					$('#social-networks').empty();
405
                    var s = $.trim(response['data']['facebook']);
406
                    if(s.length > 32) {
407
                        s = s.substring(0, 31) + '...'
408
                    }
409
                    $('#social-networks').append('<li><a href="' + response['data']['facebook'] + '" target="_blank" title="">' +
410
                        '<i class="fa fa-facebook-square"></i> ' + s + '</a></li>');
411
 
412
                    var s = $.trim(response['data']['twitter']);
413
                    if(s.length > 32) {
414
                        s = s.substring(0, 31) + '...'
415
                    }
416
                    $('#social-networks').append('<li><a href="' + response['data']['twitter'] + '" target="_blank" title="">' +
417
                        '<i class="fa fa-twitter"></i> ' + s + '</a></li>');
418
 
419
                    var s = $.trim(response['data']['instagram']);
420
                    if(s.length > 32) {
421
                        s = s.substring(0, 31) + '...'
422
                    }
423
                    $('#social-networks').append('<li><a href="' + response['data']['instagram'] + '" target="_blank" title="">' +
424
                        '<i class="fa fa-instagram"></i> ' + s + '</a></li>');
425
 
426
                    $("#social-networks-box").modal('hide');
427
                } else {
428
                    validatorSocialNetwork.resetForm();
429
                    if(jQuery.type(response['data']) == 'string') {
430
                        $.fn.showError(response['data']);
431
                    } else  {
432
                        $.each(response['data'], function( fieldname, errors ) {
433
                            $.fn.showFormErrorValidator('#form-social-network #' + fieldname, errors);
434
                        });
435
                    }
436
                }
437
            }).fail(function( jqXHR, textStatus, errorThrown) {
438
                $.fn.showError(textStatus);
439
            }).always(function() {
440
                NProgress.done();
441
            });
442
            return false;
443
        },
444
        invalidHandler: function(form, validator) {
445
 
446
        }
447
    });
448
 
449
 
450
 
451
    $('.btn-social-network-edit').on("click", function(e){
452
        e.preventDefault();
453
 
454
        NProgress.start();
455
        $.ajax({
456
            'dataType'  : 'json',
457
            'accept'    : 'application/json',
458
            'method'    : 'get',
459
            'url'       : '$routeSocialNetworks',
460
        }).done(function(response) {
461
           if(response['success']) {
462
                $('#form-social-network #facebook').val(response['data']['facebook']);
463
                $('#form-social-network #twitter').val(response['data']['twitter']);
464
                $('#form-social-network #instagram').val(response['data']['instagram']);
465
                validatorSocialNetwork.resetForm();
466
 
467
                $("#social-networks-box").modal('show');
468
            } else {
469
                $.fn.showError(response['data']);
470
            }
471
        }).fail(function( jqXHR, textStatus, errorThrown) {
472
            $.fn.showError(textStatus);
473
        }).always(function() {
474
            NProgress.done();
475
        });
476
        return false;
477
 
478
    });
479
 
480
    $('.btn-social-network-close').on("click", function(e){
481
        e.preventDefault();
482
 
483
        $("#social-networks-box").modal('hide');
484
        return false;
485
    });
486
 
487
 
488
    var validatorExtended = $('#form-extended').validate({
489
        debug: true,
490
        onclick: false,
491
        onkeyup: false,
492
        onfocusout: false,
493
        ignore: [],
494
        rules: {
495
            'description': {
496
                updateCkeditor:function() {
497
                        CKEDITOR.instances.description.updateElement();
498
                },
499
                required: false,
500
            },
501
        },
502
 
503
        submitHandler: function(form)
504
        {
505
            NProgress.start();
506
            $.ajax({
507
                'dataType'  : 'json',
508
                'accept'    : 'application/json',
509
                'method'    : 'post',
510
                'url'       :  $('#form-extended').attr('action'),
511
                'data'      :  $('#form-extended').serialize()
512
            }).done(function(response) {
513
                if(response['success']) {
514
 
515
                    $('#overview-description').html(response['data']['description']);
516
                    $("#extended-box").modal('hide');
517
                } else {
518
                    validatorExtended.resetForm();
519
                    if(jQuery.type(response['data']) == 'string') {
520
                        $.fn.showError(response['data']);
521
                    } else  {
522
                        $.each(response['data'], function( fieldname, errors ) {
523
                            $.fn.showFormErrorValidator('#form-extended #' + fieldname, errors);
524
                        });
525
                    }
526
                }
527
            }).fail(function( jqXHR, textStatus, errorThrown) {
528
                $.fn.showError(textStatus);
529
            }).always(function() {
530
                NProgress.done();
531
            });
532
            return false;
533
        },
534
        invalidHandler: function(form, validator) {
535
 
536
        }
537
    });
538
 
539
 
540
    $('.btn-extended-edit').on("click", function(e){
541
        e.preventDefault();
542
 
543
        NProgress.start();
544
        $.ajax({
545
            'dataType'  : 'json',
546
            'accept'    : 'application/json',
547
            'method'    : 'get',
548
            'url'       : '$routeExtended',
549
        }).done(function(response) {
550
           if(response['success']) {
551
                CKEDITOR.instances.description.setData(response['data']['description']);
552
                validatorExtended.resetForm();
553
 
554
                $("#extended-box").modal('show');
555
            } else {
556
                $.fn.showError(response['data']);
557
            }
558
        }).fail(function( jqXHR, textStatus, errorThrown) {
559
            $.fn.showError(textStatus);
560
        }).always(function() {
561
            NProgress.done();
562
        });
563
        return false;
564
 
565
    });
566
 
567
    $('.btn-extended-close').on("click", function(e){
568
        e.preventDefault();
569
 
570
        $("#extended-box").modal('hide');
571
        return false;
572
    });
573
 
574
 
575
	var validatorWebsite = $('#form-website').validate({
576
        debug: true,
577
        onclick: false,
578
        onkeyup: false,
579
        onfocusout: false,
580
        ignore: [],
581
        rules: {
582
            'website': {
583
                required: false,
584
                maxlength: 250,
585
                url: true,
586
            },
587
        },
588
 
589
        submitHandler: function(form)
590
        {
591
            NProgress.start();
592
            $.ajax({
593
                'dataType'  : 'json',
594
                'accept'    : 'application/json',
595
                'method'    : 'post',
596
                'url'       :  $('#form-website').attr('action'),
597
                'data'      :  $('#form-website').serialize()
598
            }).done(function(response) {
599
                if(response['success']) {
600
 
601
                    $('#overview-website').html(response['data']['website']);
602
                    $("#website-box").modal('hide');
603
                } else {
604
                    validatorWebsite.resetForm();
605
                    if(jQuery.type(response['data']) == 'string') {
606
                        $.fn.showError(response['data']);
607
                    } else  {
608
                        $.each(response['data'], function( fieldname, errors ) {
609
                            $.fn.showFormErrorValidator('#form-website #' + fieldname, errors);
610
                        });
611
                    }
612
                }
613
            }).fail(function( jqXHR, textStatus, errorThrown) {
614
                $.fn.showError(textStatus);
615
            }).always(function() {
616
                NProgress.done();
617
            });
618
            return false;
619
        },
620
        invalidHandler: function(form, validator) {
621
 
622
        }
623
    });
624
 
625
 
626
    $('.btn-website-edit').on("click", function(e){
627
        e.preventDefault();
628
 
629
        NProgress.start();
630
        $.ajax({
631
            'dataType'  : 'json',
632
            'accept'    : 'application/json',
633
            'method'    : 'get',
634
            'url'       : '$routeWebsite',
635
        }).done(function(response) {
636
           if(response['success']) {
637
                $('#form-website #website').val(response['data']['website']);
638
                validatorWebsite.resetForm();
639
 
640
                $("#website-box").modal('show');
641
            } else {
642
                $.fn.showError(response['data']);
643
            }
644
        }).fail(function( jqXHR, textStatus, errorThrown) {
645
            $.fn.showError(textStatus);
646
        }).always(function() {
647
            NProgress.done();
648
        });
649
        return false;
650
 
651
    });
652
 
653
    $('.btn-website-close').on("click", function(e){
654
        e.preventDefault();
655
 
656
        $("#website-box").modal('hide');
657
        return false;
658
    });
659
 
660
	var validatorFoundationYear = $('#form-foundation-year').validate({
661
        debug: true,
662
        onclick: false,
663
        onkeyup: false,
664
        onfocusout: false,
665
        ignore: [],
666
        rules: {
667
            'foundation_year': {
668
                required: true,
669
                maxlength: 4,
670
                digits: true,
671
            },
672
        },
673
 
674
        submitHandler: function(form)
675
        {
676
            NProgress.start();
677
            $.ajax({
678
                'dataType'  : 'json',
679
                'accept'    : 'application/json',
680
                'method'    : 'post',
681
                'url'       :  $('#form-foundation-year').attr('action'),
682
                'data'      :  $('#form-foundation-year').serialize()
683
            }).done(function(response) {
684
                if(response['success']) {
685
 
686
                    $('#overview-foundation-year').html(response['data']['foundation_year']);
687
                    $("#foundation-year-box").modal('hide');
688
                } else {
689
                    validatorFoundationYear.resetForm();
690
                    if(jQuery.type(response['data']) == 'string') {
691
                        $.fn.showError(response['data']);
692
                    } else  {
693
                        $.each(response['data'], function( fieldname, errors ) {
694
                            $.fn.showFormErrorValidator('#form-foundation-year #' + fieldname, errors);
695
                        });
696
                    }
697
                }
698
            }).fail(function( jqXHR, textStatus, errorThrown) {
699
                $.fn.showError(textStatus);
700
            }).always(function() {
701
                NProgress.done();
702
            });
703
            return false;
704
        },
705
        invalidHandler: function(form, validator) {
706
 
707
        }
708
    });
709
 
710
 
711
    $('.btn-foundation-year-edit').on("click", function(e){
712
        e.preventDefault();
713
 
714
        NProgress.start();
715
        $.ajax({
716
            'dataType'  : 'json',
717
            'accept'    : 'application/json',
718
            'method'    : 'get',
719
            'url'       : '$routeFoundationYear',
720
        }).done(function(response) {
721
           if(response['success']) {
722
				$('#form-foundation-year #foundation_year').val(response['data']['foundation_year'])
723
 
724
                validatorFoundationYear.resetForm();
725
 
726
                $("#foundation-year-box").modal('show');
727
            } else {
728
                $.fn.showError(response['data']);
729
            }
730
        }).fail(function( jqXHR, textStatus, errorThrown) {
731
            $.fn.showError(textStatus);
732
        }).always(function() {
733
            NProgress.done();
734
        });
735
        return false;
736
 
737
    });
738
 
739
    $('.btn-fondation-year-close').on("click", function(e){
740
        e.preventDefault();
741
 
742
        $("#foundation-year-box").modal('hide');
743
        return false;
744
    });
745
 
746
	var validatorCompanySize = $('#form-company-size').validate({
747
        debug: true,
748
        onclick: false,
749
        onkeyup: false,
750
        onfocusout: false,
751
        ignore: [],
752
        rules: {
753
            'company_size_id': {
754
                required: true,
755
            },
756
        },
757
 
758
        submitHandler: function(form)
759
        {
760
            NProgress.start();
761
            $.ajax({
762
                'dataType'  : 'json',
763
                'accept'    : 'application/json',
764
                'method'    : 'post',
765
                'url'       :  $('#form-company-size').attr('action'),
766
                'data'      :  $('#form-company-size').serialize()
767
            }).done(function(response) {
768
                if(response['success']) {
769
 
770
                    $('#overview-company-size').html(response['data']);
771
                    $("#company-size-box").modal('hide');
772
                } else {
773
                    validatorCompanySize.resetForm();
774
                    if(jQuery.type(response['data']) == 'string') {
775
                        $.fn.showError(response['data']);
776
                    } else  {
777
                        $.each(response['data'], function( fieldname, errors ) {
778
                            $.fn.showFormErrorValidator('#form-company-size #' + fieldname, errors);
779
                        });
780
                    }
781
                }
782
            }).fail(function( jqXHR, textStatus, errorThrown) {
783
                $.fn.showError(textStatus);
784
            }).always(function() {
785
                NProgress.done();
786
            });
787
            return false;
788
        },
789
        invalidHandler: function(form, validator) {
790
 
791
        }
792
    });
793
 
794
 
795
    $('.btn-company-size-edit').on("click", function(e){
796
        e.preventDefault();
797
 
798
        NProgress.start();
799
        $.ajax({
800
            'dataType'  : 'json',
801
            'accept'    : 'application/json',
802
            'method'    : 'get',
803
            'url'       : '$routeCompanySize',
804
        }).done(function(response) {
805
           if(response['success']) {
806
				$('#form-company-size #company_size_id').val(response['data']['company_size_id']).trigger('change');
807
 
808
                validatorCompanySize.resetForm();
809
 
810
                $("#company-size-box").modal('show');
811
            } else {
812
                $.fn.showError(response['data']);
813
            }
814
        }).fail(function( jqXHR, textStatus, errorThrown) {
815
            $.fn.showError(textStatus);
816
        }).always(function() {
817
            NProgress.done();
818
        });
819
        return false;
820
 
821
    });
822
 
823
    $('.btn-company-size-close').on("click", function(e){
824
        e.preventDefault();
825
 
826
        $("#company-size-box").modal('hide');
827
        return false;
828
    });
829
 
830
	var validatorIndustry = $('#form-industry').validate({
831
        debug: true,
832
        onclick: false,
833
        onkeyup: false,
834
        onfocusout: false,
835
        ignore: [],
836
        rules: {
837
            'industry_id': {
838
                required: true,
839
            },
840
        },
841
 
842
        submitHandler: function(form)
843
        {
844
            NProgress.start();
845
            $.ajax({
846
                'dataType'  : 'json',
847
                'accept'    : 'application/json',
848
                'method'    : 'post',
849
                'url'       :  $('#form-industry').attr('action'),
850
                'data'      :  $('#form-industry').serialize()
851
            }).done(function(response) {
852
                if(response['success']) {
853
 
854
                    $('#overview-industry').html(response['data']);
855
                    $("#industry-box").modal('hide');
856
                } else {
857
                    validatorIndustry.resetForm();
858
                    if(jQuery.type(response['data']) == 'string') {
859
                        $.fn.showError(response['data']);
860
                    } else  {
861
                        $.each(response['data'], function( fieldname, errors ) {
862
                            $.fn.showFormErrorValidator('#form-industry #' + fieldname, errors);
863
                        });
864
                    }
865
                }
866
            }).fail(function( jqXHR, textStatus, errorThrown) {
867
                $.fn.showError(textStatus);
868
            }).always(function() {
869
                NProgress.done();
870
            });
871
            return false;
872
        },
873
        invalidHandler: function(form, validator) {
874
 
875
        }
876
    });
877
 
878
 
879
    $('.btn-industry-edit').on("click", function(e){
880
        e.preventDefault();
881
 
882
        NProgress.start();
883
        $.ajax({
884
            'dataType'  : 'json',
885
            'accept'    : 'application/json',
886
            'method'    : 'get',
887
            'url'       : '$routeIndustry',
888
        }).done(function(response) {
889
           if(response['success']) {
890
				$('#form-industry #industry_id').val(response['data']['industry_id']).trigger('change');
891
 
892
                validatorIndustry.resetForm();
893
 
894
                $("#industry-box").modal('show');
895
            } else {
896
                $.fn.showError(response['data']);
897
            }
898
        }).fail(function( jqXHR, textStatus, errorThrown) {
899
            $.fn.showError(textStatus);
900
        }).always(function() {
901
            NProgress.done();
902
        });
903
        return false;
904
 
905
    });
906
 
907
    $('.btn-industry-close').on("click", function(e){
908
        e.preventDefault();
909
 
910
        $("#industry-box").modal('hide');
911
        return false;
912
    });
913
 
914
 
915
 
916
 
917
    var validatorImage = $('#form-image').validate({
918
        debug: true,
919
        onclick: false,
920
        onkeyup: false,
921
        onfocusout: false,
922
        ignore: [],
923
        rules: {
924
           'image': {
925
                required: true,
926
                extension: 'jpg|jpeg|png',
927
                accept: 'image/jpeg,image/png'
928
            },
929
        },
930
 
931
        submitHandler: function(form)
932
        {
933
            var formdata = false;
934
            if (window.FormData){
935
                formdata = new FormData(form); //form[0]);
936
            }
937
 
938
            NProgress.start();
939
            $.ajax({
940
                'dataType'  : 'json',
941
                'accept'    : 'application/json',
942
                'method'    : 'post',
943
                'url'       :  $('#form-image').attr('action'),
944
                'data'      : formdata ? formdata : $('#form-image').serialize(),
945
                'processData': false,
946
                'contentType': false,
947
            }).done(function(response) {
948
                if(response['success']) {
949
				    $('#company-img').attr('src',response['data']);
950
                    $("#image-box").modal('hide');
951
                } else {
952
                    validatorImage.resetForm();
953
                    if(jQuery.type(response['data']) == 'string') {
954
                        $.fn.showError(response['data']);
955
                    } else  {
956
                        $.each(response['data'], function( fieldname, errors ) {
957
                            console.log('#form-image #' + fieldname);
958
 
959
                            $.fn.showFormErrorValidator('#form-image #' + fieldname, errors);
960
                        });
961
                    }
962
                }
963
            }).fail(function( jqXHR, textStatus, errorThrown) {
964
                $.fn.showError(textStatus);
965
            }).always(function() {
966
                NProgress.done();
967
            });
968
            return false;
969
        },
970
        invalidHandler: function(form, validator) {
971
 
972
        }
973
    });
974
 
975
    $('.btn-image-open').on("click", function(e){
976
        e.preventDefault();
977
        $('#form-image #image').fileinput('reset');
978
        $('#form-image #image').val('');
979
        validatorImage.resetForm();
980
        $("#image-box").modal('show');
981
        return false;
982
    });
983
 
984
    $('.btn-image-close').on("click", function(e){
985
        e.preventDefault();
986
 
987
        $("#image-box").modal('hide');
988
        return false;
989
    });
990
 
772 geraldo 991
 
992
    var validatorCover = $('#form-header').validate({
993
        debug: true,
994
        onclick: false,
995
        onkeyup: false,
996
        onfocusout: false,
997
        ignore: [],
998
        rules: {
999
           'header': {
1000
                required: true,
1001
                extension: 'jpg|jpeg|png',
1002
                accept: 'image/jpeg,image/png'
1003
            },
1004
        },
1005
 
1006
        submitHandler: function(form)
1007
        {
1008
            var formdata = false;
1009
            if (window.FormData){
1010
                formdata = new FormData(form); //form[0]);
1011
            }
1012
 
1013
            NProgress.start();
1014
            $.ajax({
1015
                'dataType'  : 'json',
1016
                'accept'    : 'application/json',
1017
                'method'    : 'post',
1018
                'url'       :  $('#form-header').attr('action'),
1019
                'data'      : formdata ? formdata : $('#form-header').serialize(),
1020
                'processData': false,
1021
                'contentType': false,
1022
            }).done(function(response) {
1023
                if(response['success']) {
1024
                    $('#user-header-img').attr('src',response['data']);
786 geraldo 1025
                    $("#image-header-box").modal('hide');
819 geraldo 1026
                    location.reload();
772 geraldo 1027
                } else {
1028
                    validatorCover.resetForm();
1029
                    if(jQuery.type(response['data']) == 'string') {
1030
                        $.fn.showError(response['data']);
1031
                    } else  {
1032
                        $.each(response['data'], function( fieldname, errors ) {
1033
                            $.fn.showFormErrorValidator('#form-header #' + fieldname, errors);
1034
                        });
1035
                    }
1036
                }
1037
            }).fail(function( jqXHR, textStatus, errorThrown) {
1038
                $.fn.showError(textStatus);
1039
            }).always(function() {
1040
                NProgress.done();
1041
            });
1042
            return false;
1043
        },
1044
        invalidHandler: function(form, validator) {
1045
 
1046
        }
1047
    });
1048
 
6268 stevensc 1049
    /* $('.btn-header-open').on("click", function(e){
767 geraldo 1050
        e.preventDefault();
771 geraldo 1051
        $('#form-header #header').fileinput('reset');
1052
        $('#form-header #header').val('');
767 geraldo 1053
        validatorImage.resetForm();
1054
        $("#image-header-box").modal('show');
1055
        return false;
6268 stevensc 1056
    }); */
767 geraldo 1057
 
6268 stevensc 1058
    /* $('.btn-header-close').on("click", function(e){
767 geraldo 1059
        e.preventDefault();
1060
        $("#image-header-box").modal('hide');
1061
        return false;
6268 stevensc 1062
    }); */
767 geraldo 1063
 
1064
 
784 geraldo 1065
    var validatorCover = $('#form-footer').validate({
1066
        debug: true,
1067
        onclick: false,
1068
        onkeyup: false,
1069
        onfocusout: false,
1070
        ignore: [],
1071
        rules: {
1072
           'footer': {
1073
                required: true,
1074
                extension: 'jpg|jpeg|png',
1075
                accept: 'image/jpeg,image/png'
1076
            },
1077
        },
1078
 
1079
        submitHandler: function(form)
1080
        {
1081
            var formdata = false;
1082
            if (window.FormData){
1083
                formdata = new FormData(form); //form[0]);
1084
            }
1085
 
1086
            NProgress.start();
1087
            $.ajax({
1088
                'dataType'  : 'json',
1089
                'accept'    : 'application/json',
1090
                'method'    : 'post',
1091
                'url'       :  $('#form-footer').attr('action'),
1092
                'data'      : formdata ? formdata : $('#form-footer').serialize(),
1093
                'processData': false,
1094
                'contentType': false,
1095
            }).done(function(response) {
1096
                if(response['success']) {
1097
                    $('#user-footer-img').attr('src',response['data']);
786 geraldo 1098
                    $("#image-footer-box").modal('hide');
819 geraldo 1099
                    location.reload();
784 geraldo 1100
                } else {
1101
                    validatorCover.resetForm();
1102
                    if(jQuery.type(response['data']) == 'string') {
1103
                        $.fn.showError(response['data']);
1104
                    } else  {
1105
                        $.each(response['data'], function( fieldname, errors ) {
1106
                            $.fn.showFormErrorValidator('#form-footer #' + fieldname, errors);
1107
                        });
1108
                    }
1109
                }
1110
            }).fail(function( jqXHR, textStatus, errorThrown) {
1111
                $.fn.showError(textStatus);
1112
            }).always(function() {
1113
                NProgress.done();
1114
            });
1115
            return false;
1116
        },
1117
        invalidHandler: function(form, validator) {
1118
 
1119
        }
1120
    });
1121
 
1122
 
6266 stevensc 1123
    /* $('.btn-footer-open').on("click", function(e){
767 geraldo 1124
        e.preventDefault();
771 geraldo 1125
        $('#form-footer #footer').fileinput('reset');
1126
        $('#form-footer #footer').val('');
767 geraldo 1127
        validatorImage.resetForm();
771 geraldo 1128
        $("#image-footer-box").modal('show');
767 geraldo 1129
        return false;
6266 stevensc 1130
    }); */
767 geraldo 1131
 
6268 stevensc 1132
    /* $('.btn-footer-close').on("click", function(e){
767 geraldo 1133
        e.preventDefault();
771 geraldo 1134
        $("#image-footer-box").modal('hide');
767 geraldo 1135
        return false;
6268 stevensc 1136
    }); */
767 geraldo 1137
 
1138
 
1139
 
1 www 1140
    $('.btn-image-explorer').on("click", function(e){
1141
        e.preventDefault();
1142
        $('#form-image #image').click();
1143
        return false;
1144
    });
1145
 
1146
 
1147
    var validatorCover = $('#form-cover').validate({
1148
        debug: true,
1149
        onclick: false,
1150
        onkeyup: false,
1151
        onfocusout: false,
1152
        ignore: [],
1153
        rules: {
1154
           'cover': {
1155
                required: true,
1156
                extension: 'jpg|jpeg|png',
1157
                accept: 'image/jpeg,image/png'
1158
            },
1159
        },
1160
 
1161
        submitHandler: function(form)
1162
        {
1163
            var formdata = false;
1164
            if (window.FormData){
1165
                formdata = new FormData(form); //form[0]);
1166
            }
1167
 
1168
            NProgress.start();
1169
            $.ajax({
1170
                'dataType'  : 'json',
1171
                'accept'    : 'application/json',
1172
                'method'    : 'post',
1173
                'url'       :  $('#form-cover').attr('action'),
1174
                'data'      : formdata ? formdata : $('#form-cover').serialize(),
1175
                'processData': false,
1176
                'contentType': false,
1177
            }).done(function(response) {
1178
                if(response['success']) {
1179
				    $('#user-cover-img').attr('src',response['data']);
1180
                    $("#cover-box").modal('hide');
1181
                } else {
1182
                    validatorCover.resetForm();
1183
                    if(jQuery.type(response['data']) == 'string') {
1184
                        $.fn.showError(response['data']);
1185
                    } else  {
1186
                        $.each(response['data'], function( fieldname, errors ) {
1187
                            $.fn.showFormErrorValidator('#form-cover #' + fieldname, errors);
1188
                        });
1189
                    }
1190
                }
1191
            }).fail(function( jqXHR, textStatus, errorThrown) {
1192
                $.fn.showError(textStatus);
1193
            }).always(function() {
1194
                NProgress.done();
1195
            });
1196
            return false;
1197
        },
1198
        invalidHandler: function(form, validator) {
1199
 
1200
        }
1201
    });
1202
 
1203
 
1204
    $('.btn-cover-open').on("click", function(e){
1205
        e.preventDefault();
1206
        $('#form-cover #cover').fileinput('reset');
1207
        $('#form-cover #cover').val('');
1208
        validatorCover.resetForm();
1209
        $("#cover-box").modal('show');
1210
        return false;
1211
    });
1212
 
1213
    $('.btn-cover-close').on("click", function(e){
1214
        e.preventDefault();
1215
 
1216
        $("#cover-box").modal('hide');
1217
        return false;
1218
    });
1219
 
1220
    $('.btn-cover-explorer').on("click", function(e){
1221
        e.preventDefault();
1222
 
1223
        $('#form-cover #cover').click();
1224
        return false;
1225
    });
1226
 
1227
    $("#form-cover #cover").fileinput({
1228
        theme: 'fas',
1229
        language: 'es',
1230
        showUpload: false,
1231
        dropZoneEnabled: false,
1232
        maxFileCount: 1,
1233
        allowedFileExtensions: ['jpg', 'jpeg', 'png', 'gif'],
1234
        mainClass: "input-group",
1235
        msgPlaceholder: 'LABEL_RECOMMENDED_SIZE $image_size_cover',
1236
    });
1237
 
1238
    $("#form-image #image").fileinput({
1239
        theme: 'fas',
1240
        language: 'es',
1241
        showUpload: false,
1242
        dropZoneEnabled: false,
1243
        maxFileCount: 1,
1244
        allowedFileExtensions: ['jpg', 'jpeg', 'png', 'gif'],
1245
        mainClass: "input-group",
1246
        msgPlaceholder: 'LABEL_RECOMMENDED_SIZE $image_size_profile',
1247
    });
1248
 
780 geraldo 1249
 
1250
    $("#form-footer #footer").fileinput({
1251
        theme: 'fas',
1252
        language: 'es',
1253
        showUpload: false,
1254
        dropZoneEnabled: false,
1255
        maxFileCount: 1,
1256
        allowedFileExtensions: ['jpg', 'jpeg', 'png', 'gif'],
1257
        mainClass: "input-group",
1258
        msgPlaceholder: 'LABEL_RECOMMENDED_SIZE $image_size_footer',
1259
    });
1260
 
1261
 
1262
    $("#form-header #header").fileinput({
1263
        theme: 'fas',
1264
        language: 'es',
1265
        showUpload: false,
1266
        dropZoneEnabled: false,
1267
        maxFileCount: 1,
1268
        allowedFileExtensions: ['jpg', 'jpeg', 'png', 'gif'],
1269
        mainClass: "input-group",
1270
        msgPlaceholder: 'LABEL_RECOMMENDED_SIZE $image_size_header',
1271
    });
1272
 
1 www 1273
   $('#form-skill #skills').select2({
1274
        theme: 'bootstrap4',
1275
        width: '100%',
1276
        placeholder: 'LABEL_SELECT_ONE_SKILLS'
1277
    });
1278
    $('#form-language #languages').select2({
1279
        theme: 'bootstrap4',
1280
        width: '100%',
1281
        placeholder: 'LABEL_SELECT_ONE_LANGUAGE'
1282
    });
1283
 
1284
 
1285
    CKEDITOR.replace('description');
1286
 
1287
    autocompleteLocation.addListener('place_changed', $.fn.fillInAddressLocation);
1288
 
1289
    $('#form-location #is_main').bootstrapToggle({'on' : 'LABEL_MAIN_LOCATION',  'off' : 'LABEL_SECONDARY_LOCATION', 'width' : '160px', 'height' : '40px'});
1290
 
1291
    $('#form-foundation-year #foundation_year').datetimepicker({
1292
        viewMode: 'years',
1293
        format: 'YYYY'
1294
    });
1295
 
1296
 
1297
 
1298
 
1299
});
1300
 
1301
 
1302
JS;
1303
$this->inlineScript()->captureEnd();
1304
 
6005 stevensc 1305
$jsonLocations = json_encode($locations);
6003 stevensc 1306
 
5743 stevensc 1307
$js = <<<JS
1308
const urlVars = {
1309
    routeWebsite: "$routeWebsite",
1310
    routeCompanySize: "$routeCompanySize",
1311
    routeIndustry: "$routeIndustry",
1312
    routeExtended: "$routeExtended",
1313
    routeSocialNetworks: "$routeSocialNetworks",
1314
    routeLocationAdd: "$routeLocationAdd",
1315
    routeFoundationYear: "$routeFoundationYear",
1316
    routeImageUpload: "$routeImageUpload",
1317
    routeCoverUpload: "$routeCoverUpload",
1318
    routeFooterUpload: "$routeFooterUpload",
5757 stevensc 1319
    routeHeaderUpload: "$routeHeaderUpload",
1320
    cover: "$cover",
5795 stevensc 1321
    companyId: "$companyId",
5925 stevensc 1322
    followers: "$follower",
5988 stevensc 1323
    image: "$image",
6002 stevensc 1324
    overview: "$overview",
6025 stevensc 1325
    locations: JSON.parse('$jsonLocations'),
6026 stevensc 1326
    industry: "$industry",
6027 stevensc 1327
    companySize: "$company_size",
6050 stevensc 1328
    companyName: "$company_name",
1329
    foundationYear: "$foundation_year",
6055 stevensc 1330
    website: "$website",
6059 stevensc 1331
    header: "$header",
1332
    footer: "$footer"
5743 stevensc 1333
}
1334
JS;
1335
 
1336
$this->inlineScript()->appendScript($js);
1337
$this->inlineScript()->appendFile('/react-bundles/profile/profileBundle.js');
1 www 1338
?>
1339
 
777 geraldo 1340
<style>
5743 stevensc 1341
    .user-profile-ov {
1342
        position: relative;
1343
    }
777 geraldo 1344
 
5743 stevensc 1345
    .user-profile-ov .add-dp {
1346
        position: absolute;
1347
        top: 30%;
1348
        right: 10%;
1349
    }
779 geraldo 1350
 
5743 stevensc 1351
    .user-profile-ov .add-dp i {
1352
        font-size: 14px;
1353
        border: 2px solid #fff;
1354
        background: #e44d3a;
1355
        padding: 11px;
1356
        color: #ffff
1357
    }
777 geraldo 1358
</style>
1359
 
1 www 1360
<!-- Content Header (Page header) -->
5743 stevensc 1361
<div id="profile">
5800 stevensc 1362
</div>
1 www 1363
<div class="modal" tabindex="-1" role="dialog" id="extended-box">
5743 stevensc 1364
    <div class="modal-dialog" role="document">
1365
        <?php
1366
        $form = $this->formExtended;
1367
        $form->setAttributes([
1368
            'method' => 'post',
1369
            'action' => $routeExtended,
1370
            'name' => 'form-extended',
1371
            'id' => 'form-extended'
1372
        ]);
1373
        $form->prepare();
1374
        echo $this->form()->openTag($form);
1375
        ?>
1376
        <div class="modal-content">
1377
            <div class="modal-header">
1378
                <h3 class="modal-title">LABEL_CHANGE</h3>
770 geraldo 1379
            </div>
5743 stevensc 1380
            <div class="modal-body">
1381
                <div class="form-group">
1382
                    <?php
1383
                    $element = $form->get('description');
1384
                    $element->setAttributes(['class' => 'form-control']);
1385
                    $element->setOptions(['label' => 'LABEL_OVERVIEW']);
1386
                    echo $this->formLabel($element);
1387
                    echo $this->formTextArea($element);
1388
                    ?>
1389
                </div>
1390
            </div>
1391
            <div class="modal-footer">
1392
                <button type="submit" class="btn btn-primary">LABEL_SAVE</button>
1393
                <button type="button" class="btn btn-default btn-extended-close">LABEL_CANCEL</button>
1394
            </div>
1395
            <?php echo $this->form()->closeTag($form); ?>
1396
        </div>
1397
    </div>
1 www 1398
</div>
1399
<div class="modal" tabindex="-1" role="dialog" id="foundation-year-box">
5743 stevensc 1400
    <div class="modal-dialog" role="document">
1401
        <?php
1402
        $form = $this->formFoundationYear;
1403
        $form->setAttributes([
1404
            'method' => 'post',
1405
            'action' => $routeFoundationYear,
1406
            'name' => 'form-foundation-year',
1407
            'id' => 'form-foundation-year'
1408
        ]);
1409
        $form->prepare();
1410
        echo $this->form()->openTag($form);
1411
        ?>
1412
        <div class="modal-content">
1413
            <div class="modal-header">
1414
                <h3 class="modal-title">LABEL_CHANGE</h3>
770 geraldo 1415
            </div>
5743 stevensc 1416
            <div class="modal-body">
1417
                <div class="form-group">
1418
                    <?php
1419
                    $element = $form->get('foundation_year');
1420
                    $element->setAttributes(['class' => 'form-control']);
1421
                    $element->setOptions(['label' => 'LABEL_FOUNDATION_YEAR']);
1422
                    echo $this->formLabel($element);
1423
                    echo $this->formText($element);
1424
                    ?>
1425
                </div>
1426
            </div>
1427
            <div class="modal-footer">
1428
                <button type="submit" class="btn btn-primary">LABEL_SAVE</button>
1429
                <button type="button" class="btn btn-default btn-fondation-year-close">LABEL_CANCEL</button>
1430
            </div>
1431
            <?php echo $this->form()->closeTag($form); ?>
1432
        </div>
1433
    </div>
1 www 1434
</div>
1435
<div class="modal" tabindex="-1" role="dialog" id="website-box">
5743 stevensc 1436
    <div class="modal-dialog" role="document">
1437
        <?php
1438
        $form = $this->formWebsite;
1439
        $form->setAttributes([
1440
            'method' => 'post',
1441
            'action' => $routeWebsite,
1442
            'name' => 'form-website',
1443
            'id' => 'form-website'
1444
        ]);
1445
        $form->prepare();
1446
        echo $this->form()->openTag($form);
1447
        ?>
1448
        <div class="modal-content">
1449
            <div class="modal-header">
1450
                <h3 class="modal-title">LABEL_CHANGE</h3>
770 geraldo 1451
            </div>
5743 stevensc 1452
            <div class="modal-body">
1453
                <div class="form-group">
1454
                    <?php
1455
                    $element = $form->get('website');
1456
                    $element->setAttributes(['class' => 'form-control']);
1457
                    $element->setOptions(['label' => 'LABEL_WEBSITE']);
1458
                    echo $this->formLabel($element);
1459
                    echo $this->formText($element);
1460
                    ?>
1461
                </div>
1462
            </div>
1463
            <div class="modal-footer">
1464
                <button type="submit" class="btn btn-primary">LABEL_SAVE</button>
1465
                <button type="button" class="btn btn-default btn-website-close">LABEL_CANCEL</button>
1466
            </div>
1467
            <?php echo $this->form()->closeTag($form); ?>
1468
        </div>
1469
    </div>
1 www 1470
</div>
1471
<div class="modal" tabindex="-1" role="dialog" id="industry-box">
5743 stevensc 1472
    <div class="modal-dialog" role="document">
1473
        <?php
1474
        $form = $this->formIndustry;
1475
        $form->setAttributes([
1476
            'method' => 'post',
1477
            'action' => $routeIndustry,
1478
            'name' => 'form-industry',
1479
            'id' => 'form-industry'
1480
        ]);
1481
        $form->prepare();
1482
        echo $this->form()->openTag($form);
1483
        ?>
1484
        <div class="modal-content">
1485
            <div class="modal-header">
1486
                <h3 class="modal-title">LABEL_CHANGE</h3>
770 geraldo 1487
            </div>
5743 stevensc 1488
            <div class="modal-body">
1489
                <div class="form-group">
1490
                    <?php
1491
                    $element = $form->get('industry_id');
1492
                    $element->setAttributes(['class' => 'form-control']);
1493
                    $element->setOptions(['label' => 'LABEL_INDUSTRY']);
1494
                    echo $this->formLabel($element);
1495
                    echo $this->formSelect($element);
1496
                    ?>
1497
                </div>
1498
            </div>
1499
            <div class="modal-footer">
1500
                <button type="submit" class="btn btn-primary">LABEL_SAVE</button>
1501
                <button type="button" class="btn btn-default btn-industry-close">LABEL_CANCEL</button>
1502
            </div>
1503
            <?php echo $this->form()->closeTag($form); ?>
1504
        </div>
1505
    </div>
1 www 1506
</div>
1507
<div class="modal" tabindex="-1" role="dialog" id="company-size-box">
5743 stevensc 1508
    <div class="modal-dialog" role="document">
1509
        <?php
1510
        $form = $this->formCompanySize;
1511
        $form->setAttributes([
1512
            'method' => 'post',
1513
            'action' => $routeCompanySize,
1514
            'name' => 'form-company-size',
1515
            'id' => 'form-company-size'
1516
        ]);
1517
        $form->prepare();
1518
        echo $this->form()->openTag($form);
1519
        ?>
1520
        <div class="modal-content">
1521
            <div class="modal-header">
1522
                <h3 class="modal-title">LABEL_CHANGE</h3>
770 geraldo 1523
            </div>
5743 stevensc 1524
            <div class="modal-body">
1525
                <div class="form-group">
1526
                    <?php
1527
                    $element = $form->get('company_size_id');
1528
                    $element->setAttributes(['class' => 'form-control']);
1529
                    $element->setOptions(['label' => 'LABEL_COMPANY_SIZE']);
1530
                    echo $this->formLabel($element);
1531
                    echo $this->formSelect($element);
1532
                    ?>
1533
                </div>
1534
            </div>
1535
            <div class="modal-footer">
1536
                <button type="submit" class="btn btn-primary">LABEL_SAVE</button>
1537
                <button type="button" class="btn btn-default btn-company-size-close">LABEL_CANCEL</button>
1538
            </div>
1539
            <?php echo $this->form()->closeTag($form); ?>
1540
        </div>
1541
    </div>
1 www 1542
</div>
1543
<div class="modal" tabindex="-1" role="dialog" id="location-box">
5743 stevensc 1544
    <div class="modal-dialog" role="document">
1545
        <?php
1546
        $form = $this->formLocation;
1547
        $form->setAttributes([
1548
            'method' => 'post',
1549
            'action' => '',
1550
            'name' => 'form-location',
1551
            'id' => 'form-location'
1552
        ]);
1553
        $form->prepare();
1554
        echo $this->form()->openTag($form);
1555
 
1556
        $fieldnames = [
1557
            'formatted_address',
1558
            'address1',
1559
            'address2',
1560
            'country',
1561
            'state',
1562
            'city1',
1563
            'city2',
1564
            'postal_code',
1565
            'latitude',
1566
            'longitude',
1567
        ];
1568
 
1569
        foreach ($fieldnames as $fieldname) {
1570
 
1571
            $element = $form->get($fieldname);
1572
            echo $this->formHidden($element);
1573
        }
1574
        ?>
1575
        <div class="modal-content">
1576
            <div class="modal-header">
1577
                <h3 class="modal-title">LABEL_CHANGE</h3>
770 geraldo 1578
            </div>
5743 stevensc 1579
            <div class="modal-body">
1580
                <div class="form-group datefm">
1581
                    <?php
1582
                    $element = $form->get('location_search');
1583
                    $element->setAttributes(['class' => 'form-control']);
1584
                    $element->setOptions(['label' => 'LABEL_LOCATION']);
1585
                    echo $this->formLabel($element);
1586
                    echo $this->formText($element);
1587
                    ?>
1588
                    <i class="fa fa-map-marker"></i>
1589
                </div>
1590
                <div class="form-group">
1591
                    <?php
1592
                    $element = $form->get('is_main');
1593
                    echo $this->formCheckbox($element);
1594
                    ?>
1595
                </div>
770 geraldo 1596
            </div>
5743 stevensc 1597
            <div class="modal-footer">
1598
                <button type="submit" class="btn btn-primary ">LABEL_SAVE</button>
1599
                <button type="button" class="btn btn-default btn-location-close">LABEL_CANCEL</button>
1600
            </div>
1601
            <?php echo $this->form()->closeTag($form); ?>
1602
        </div>
1603
    </div>
1 www 1604
</div>
1605
<div class="modal" tabindex="-1" role="dialog" id="social-networks-box">
5743 stevensc 1606
    <div class="modal-dialog" role="document">
1607
        <?php
1608
        $form = $this->formSocialNetwork;
1609
        $form->setAttributes([
1610
            'method' => 'post',
1611
            'action' => $routeSocialNetworks,
1612
            'name' => 'form-social-network',
1613
            'id' => 'form-social-network'
1614
        ]);
1615
        $form->prepare();
1616
        echo $this->form()->openTag($form);
1617
        ?>
1618
        <div class="modal-content">
1619
            <div class="modal-header">
1620
                <h3 class="modal-title">LABEL_CHANGE</h3>
770 geraldo 1621
            </div>
5743 stevensc 1622
            <div class="modal-body">
1623
                <div class="form-group">
1624
                    <?php
1625
                    $element = $form->get('facebook');
1626
                    $element->setAttributes(['class' => 'form-control']);
1627
                    $element->setOptions(['label' => 'LABEL_FACEBOOK']);
1628
                    echo $this->formLabel($element);
1629
                    echo $this->formText($element);
1630
                    ?>
1631
                </div>
1632
                <div class="form-group">
1633
                    <?php
1634
                    $element = $form->get('twitter');
1635
                    $element->setAttributes(['class' => 'form-control']);
1636
                    $element->setOptions(['label' => 'LABEL_TWITTER']);
1637
                    echo $this->formLabel($element);
1638
                    echo $this->formText($element);
1639
                    ?>
1640
                </div>
1641
                <div class="form-group">
1642
                    <?php
1643
                    $element = $form->get('instagram');
1644
                    $element->setAttributes(['class' => 'form-control']);
1645
                    $element->setOptions(['label' => 'LABEL_INSTAGRAM']);
1646
                    echo $this->formLabel($element);
1647
                    echo $this->formText($element);
1648
                    ?>
1649
                </div>
1650
                <div class="form-group">
1651
                </div>
1652
                <div class="modal-footer">
1653
                    <button type="submit" class="btn btn-primary">LABEL_SAVE</button>
1654
                    <button type="button" class="btn btn-default btn-social-network-close">LABEL_CANCEL</button>
1655
                </div>
770 geraldo 1656
            </div>
5743 stevensc 1657
            <?php echo $this->form()->closeTag($form); ?>
1658
        </div>
1659
    </div>
1660
</div>
1661
<div class="modal" tabindex="-1" role="dialog" id="image-box">
1662
    <div class="modal-dialog" role="document">
1663
        <?php
1664
        $form = $this->formImage;
1665
        $form->setAttributes([
1666
            'method' => 'post',
1667
            'action' => $routeImageUpload,
1668
            'name' => 'form-image',
1669
            'id' => 'form-image',
1670
            'enctype' => 'multipart/form-data'
1671
        ]);
1672
        $form->prepare();
1673
        echo $this->form()->openTag($form);
1674
        ?>
1675
        <div class="modal-content">
1676
            <div class="modal-header">
1677
                <h3 class="modal-title">LABEL_CHANGE</h3>
770 geraldo 1678
            </div>
5743 stevensc 1679
            <div class="modal-body">
1680
                <div class="form-group">
1681
                    <div class="file-loading">
1682
                        <?php
1683
                        $element = $form->get('image');
1684
                        $element->setAttributes(['class' => 'form-control', 'accept' => 'image/jpeg,image/png']);
1685
                        $element->setOptions(['label' => 'LABEL_IMAGE']);
1686
                        echo $this->formLabel($element);
1687
                        echo $this->formFile($element);
1688
                        ?>
1689
                    </div>
1690
                </div>
770 geraldo 1691
            </div>
1692
            <div class="modal-footer">
5743 stevensc 1693
                <button type="submit" class="btn btn-primary">LABEL_UPLOAD</button>
1694
                <button type="button" class="btn btn-default btn-image-close">LABEL_CANCEL</button>
770 geraldo 1695
            </div>
5743 stevensc 1696
            <?php echo $this->form()->closeTag($form); ?>
1697
        </div>
1698
    </div>
6060 stevensc 1699
</div>