Proyectos de Subversion LeadersLinked - Backend

Rev

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

Rev Autor Línea Nro. Línea
3643 stevensc 1
<?php
1 www 2
$currentUser = $this->currentUserHelper();
3
$currentUser = $currentUser->getUser();
4
 
5
$routeTimeline = $this->url('feeds/timeline');
6
 
7
 
8
$this->headLink()->appendStylesheet($this->basePath('plugins/nprogress/nprogress.css'));
9
$this->inlineScript()->appendFile($this->basePath('plugins/nprogress/nprogress.js'));
10
 
11
$this->inlineScript()->appendFile($this->basePath('plugins/ckeditor/ckeditor.js'));
12
 
13
 
14
$this->headLink()->appendStylesheet($this->basePath('plugins/bootstrap-fileinput/css/fileinput.min.css'));
15
$this->headLink()->appendStylesheet($this->basePath('plugins/bootstrap-fileinput/themes/explorer-fa/theme.css'));
16
 
17
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/plugins/piexif.js'));
18
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/plugins/sortable.js'));
19
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/fileinput.js'));
20
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/js/locales/es.js'));
21
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/themes/fa/theme.js'));
22
$this->inlineScript()->appendFile($this->basePath('plugins/bootstrap-fileinput/themes/explorer-fa/theme.js'));
23
 
24
 
25
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-validation/jquery.validate.js'));
26
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-validation/additional-methods.js'));
27
$this->inlineScript()->appendFile($this->basePath('plugins/jquery-validation/localization/messages_es.js'));
28
 
29
$this->inlineScript()->appendFile($this->basePath('plugins/jsrender/jsrender.min.js'));
30
 
31
 
32
$this->inlineScript()->appendFile($this->basePath('plugins/bootbox/bootbox.all.min.js'));
33
 
34
$this->inlineScript()->captureStart();
35
echo <<<JS
36
jQuery( document ).ready(function( $ ) {
37
    var feed_unique_shared = '';
38
 
39
    $.validator.addMethod('requiredContent', function (value, element, param) {
40
        value = $.trim($.fn.stripHtml(value));
41
        return value.length > 0;
42
    }, 'ERROR_REQUIRED');
43
 
44
    $.fn.reload = function(page) {
45
        NProgress.start();
46
        $.ajax({
47
            'dataType'  : 'json',
48
            'accept'    : 'application/json',
49
            'method'    : 'get',
50
            'data'      : {
51
                'page' : page
52
            },
53
            'url'       :  '$routeTimeline'
54
        }).done(function(response) {
55
            if(response['success']) {
56
                $('.posts-section').empty();
57
 
58
                $( ".posts-section" ).append(
59
                    $( "#feedTemplate" ).render( response['data']['current']['items'] )
60
                );
61
 
62
 
63
                if(response['data']['total']['pages'] > 1 ) {
64
 
65
                    $('#paginator-process-comm').show();
66
                    if(response['data']['current']['page']  > 1) {
67
                        $('#btn-page-previous').data('page', response['data']['current']['page'] - 1);
68
                        $('#btn-page-previous').show();
69
                    } else {
70
                         $('#btn-page-previous').hide();
71
                    }
72
                    if(response['data']['current']['page'] <  response['data']['total']['pages']) {
73
                        $('#btn-page-next').data('page', response['data']['current']['page'] + 1);
74
                        $('#btn-page-next').show();
75
                    } else {
76
                         $('#btn-page-next').hide();
77
                    }
78
 
79
                    $('#paginator-process-comm').show();
80
 
81
                } else {
82
                    $('#paginator-process-comm').hide();
83
                }
84
 
85
 
86
            } else {
87
                $.fn.showError(response['data']);
88
            }
89
        }).fail(function( jqXHR, textStatus, errorThrown) {
90
            $.fn.showError(textStatus);
91
        }).always(function() {
92
            NProgress.done();
93
        });
94
 
95
    }
96
 
97
    $('#btn-page-previous').click(function(e) {
98
        e.preventDefault();
99
 
100
        var page = $(this).data('page');
101
        $.fn.reload(page);
102
 
103
    });
104
 
105
    $('#btn-page-next').click(function(e) {
106
        e.preventDefault();
107
 
108
        var page = $(this).data('page');
109
        $.fn.reload(page);
110
 
111
    });
112
 
113
    $.validator.setDefaults({
114
        debug: true,
115
        highlight: function(element) {
116
            $(element).addClass('form-group-has-error');
117
        },
118
        unhighlight: function(element) {
119
            $(element).removeClass('form-group-has-error');
120
        },
121
        errorElement: 'div',
122
        errorClass: 'form-group-invalid-feedback',
123
        errorPlacement: function(error, element) {
124
            if(element.context.id == 'file') {
125
                error.insertAfter(element.parent().parent().parent());
126
            } else {
127
               if(element.parent('.form-group').length) {
128
                    error.insertAfter(element.parent());
129
                } else {
130
                    error.insertAfter(element);
131
                }
132
            }
133
 
134
 
135
        }
136
    });
137
 
138
    $.fn.showFormErrorValidator = function(fieldname, errors) {
139
        var field = $(fieldname);
140
        if(field) {
141
            $(field).addClass('form-group-has-error');
142
 
143
            var error = $('<div id="' + fieldname +'-error" class="form-group-invalid-feedback">' + errors + '</div>');
144
 
145
            var element = $(fieldname)
146
            if(element.parent('.form-group').length) {
147
                error.insertAfter(element.parent());
148
            } else if(element.parent('.file-loading').length) {
149
                error.insertAfter(element.parent().parent());
150
            } else {
151
                error.insertAfter(element);
152
            }
153
        }
154
    };
155
 
156
    var validatorFeed = $('#form-feed').validate({
157
        debug: true,
158
        onclick: false,
159
        onkeyup: false,
160
        onfocusout: false,
161
        ignore: [],
162
        rules: {
163
            'shared_with' : {
164
                required: true,
165
            },
166
           'description': {
167
                updateCkeditor:function() {
168
                        CKEDITOR.instances.description_feed.updateElement();
169
                },
170
                required: true
171
            },
172
        },
173
 
174
        submitHandler: function(form)
175
        {
176
            $('input[type="submit"]').prop('disabled', true);
177
            NProgress.start();
178
            $.ajax({
179
                'dataType'  : 'json',
180
                'accept'    : 'application/json',
181
                'method'    : 'post',
182
                'url'       : $('#form-feed').attr('action'),
183
                'data'      : $('#form-feed').serialize(),
184
            }).done(function(response) {
185
                if(response['success']) {
186
                    var s = $( "#feedTemplate" ).render( response['data'] );
187
                    $(s).prependTo(".posts-section");
188
 
189
                   $('#form-feed')[0].reset()
190
                    $("#modal-feed-box").modal('hide');
191
                } else {
192
                    validatorFeed.resetForm();
193
                    if(jQuery.type(response['data']) == 'string') {
194
                        $.fn.showError(response['data']);
195
                    } else  {
196
                        $.each(response['data'], function( fieldname, errors ) {
197
                            $.fn.showFormErrorValidator('#form-feed #' + fieldname, errors);
198
                        });
199
                    }
200
                }
201
            }).fail(function( jqXHR, textStatus, errorThrown) {
202
                $.fn.showError(textStatus);
203
            }).always(function() {
204
                $('input[type="submit"]').prop('disabled', false);
205
                NProgress.done();
206
            });
207
            return false;
208
        },
209
        invalidHandler: function(form, validator) {
210
 
211
        }
212
    });
213
 
214
    $('.btn-modal-feed-close').click(function(e) {
215
        e.preventDefault();
216
        $('#form-feed')[0].reset()
217
        $('#modal-feed-box').modal('hide');
218
        return false;
219
    });
220
 
221
    $('#description-main, #btn-description-main').click(function(e) {
222
        e.preventDefault();
223
 
224
        $('#form-feed')[0].reset()
225
        validatorFeed.resetForm();
226
        $("#modal-feed-box").modal('show');
227
    })
228
 
229
    var validatorFeedImage = $('#form-feed-image').validate({
230
        debug: true,
231
        onclick: false,
232
        onkeyup: false,
233
        onfocusout: false,
234
        ignore: [],
235
        rules: {
236
            'shared_with' : {
237
                required: true,
238
            },
239
           'description': {
240
                updateCkeditor:function() {
241
                        CKEDITOR.instances.description_image.updateElement();
242
                },
243
                required: true
244
            },
245
           'file': {
246
                required: true,
247
                extension: 'jpg|jpeg|png',
248
                accept: 'image/jpg,image/jpeg,image/png'
249
            },
250
        },
251
 
252
        submitHandler: function(form)
253
        {
254
            var formdata = false;
255
            if (window.FormData){
256
                formdata = new FormData(form); //form[0]);
257
            }
258
 
259
            $('input[type="submit"]').prop('disabled', true);
260
            NProgress.start();
261
            $.ajax({
262
                'dataType'  : 'json',
263
                'accept'    : 'application/json',
264
                'method'    : 'post',
265
                'url'       :  $('#form-feed-image').attr('action'),
266
                'data'      : formdata ? formdata : $('#form-feed-image').serialize(),
267
                'processData': false,
268
                'contentType': false,
269
            }).done(function(response) {
270
                if(response['success']) {
271
 
272
 
273
                    var s = $( "#feedTemplate" ).render( response['data'] );
274
                    $(s).prependTo(".posts-section");
275
 
276
                    $("#modal-feed-image-box").modal('hide');
277
                } else {
278
                    validatorFeedImage.resetForm();
279
                    if(jQuery.type(response['data']) == 'string') {
280
                        $.fn.showError(response['data']);
281
                    } else  {
282
                        $.each(response['data'], function( fieldname, errors ) {
283
                            $.fn.showFormErrorValidator('#form-feed-image #' + fieldname, errors);
284
                        });
285
                    }
286
                }
287
            }).fail(function( jqXHR, textStatus, errorThrown) {
288
                $.fn.showError(textStatus);
289
            }).always(function() {
290
                $('input[type="submit"]').prop('disabled', false);
291
                NProgress.done();
292
            });
293
            return false;
294
        },
295
        invalidHandler: function(form, validator) {
296
 
297
        }
298
    });
299
 
300
    var validatorFeedVideo = $('#form-feed-video').validate({
301
        debug: true,
302
        onclick: false,
303
        onkeyup: false,
304
        onfocusout: false,
305
        ignore: [],
306
        rules: {
307
            'shared_with' : {
308
                required: true,
309
            },
310
           'description': {
311
                updateCkeditor:function() {
312
                        CKEDITOR.instances.description_video.updateElement();
313
                },
314
                required: true
315
            },
316
           'file': {
317
                required: true,
318
                extension: 'webm,mp4,webm',
319
                accept: 'video/webm,video/mpeg,video/mp4'
320
            },
321
        },
322
 
323
        submitHandler: function(form)
324
        {
325
            var formdata = false;
326
            if (window.FormData){
327
                formdata = new FormData(form); //form[0]);
328
            }
329
 
330
            $('input[type="submit"]').prop('disabled', true);
331
            NProgress.start();
332
            $.ajax({
333
                'dataType'  : 'json',
334
                'accept'    : 'application/json',
335
                'method'    : 'post',
336
                'url'       :  $('#form-feed-video').attr('action'),
337
                'data'      : formdata ? formdata : $('#form-feed-video').serialize(),
338
                'processData': false,
339
                'contentType': false,
340
            }).done(function(response) {
341
                if(response['success']) {
342
                    var s = $( "#feedTemplate" ).render( response['data'] );
343
                    $(s).prependTo(".posts-section");
344
 
345
                    $("#modal-feed-video-box").modal('hide');
346
                } else {
347
                    validatorFeedVideo.resetForm();
348
                    if(jQuery.type(response['data']) == 'string') {
349
                        $.fn.showError(response['data']);
350
                    } else  {
351
                        $.each(response['data'], function( fieldname, errors ) {
352
                            $.fn.showFormErrorValidator('#form-feed-video #' + fieldname, errors);
353
                        });
354
                    }
355
                }
356
            }).fail(function( jqXHR, textStatus, errorThrown) {
357
                $.fn.showError(textStatus);
358
            }).always(function() {
359
                $('input[type="submit"]').prop('disabled', false);
360
                NProgress.done();
361
            });
362
            return false;
363
        },
364
        invalidHandler: function(form, validator) {
365
 
366
        }
367
    });
368
 
369
    var validatorFeedDocument = $('#form-feed-document').validate({
370
        debug: true,
371
        onclick: false,
372
        onkeyup: false,
373
        onfocusout: false,
374
        ignore: [],
375
        rules: {
376
            'shared_with' : {
377
                required: true,
378
            },
379
           'description': {
380
                updateCkeditor:function() {
381
                        CKEDITOR.instances.description_document.updateElement();
382
                },
383
                required: true
384
            },
385
           'file': {
386
                required: true,
387
                extension: 'pdf',
388
                accept: 'application/pdf'
389
            },
390
        },
391
 
392
        submitHandler: function(form)
393
        {
394
            var formdata = false;
395
            if (window.FormData){
396
                formdata = new FormData(form); //form[0]);
397
            }
398
 
399
            $('input[type="submit"]').prop('disabled', true);
400
            NProgress.start();
401
            $.ajax({
402
                'dataType'  : 'json',
403
                'accept'    : 'application/json',
404
                'method'    : 'post',
405
                'url'       :  $('#form-feed-document').attr('action'),
406
                'data'      : formdata ? formdata : $('#form-feed-document').serialize(),
407
                'processData': false,
408
                'contentType': false,
409
            }).done(function(response) {
410
                if(response['success']) {
411
                    var s = $( "#feedTemplate" ).render( response['data'] );
412
                    $(s).prependTo(".posts-section");
413
 
414
                    $("#modal-feed-document-box").modal('hide');
415
                } else {
416
                    validatorFeedDocument.resetForm();
417
                    if(jQuery.type(response['data']) == 'string') {
418
                        $.fn.showError(response['data']);
419
                    } else  {
420
                        $.each(response['data'], function( fieldname, errors ) {
421
                            $.fn.showFormErrorValidator('#form-feed-document #' + fieldname, errors);
422
                        });
423
                    }
424
                }
425
            }).fail(function( jqXHR, textStatus, errorThrown) {
426
                $.fn.showError(textStatus);
427
            }).always(function() {
428
                $('input[type="submit"]').prop('disabled', false);
429
                NProgress.done();
430
            });
431
            return false;
432
        },
433
        invalidHandler: function(form, validator) {
434
 
435
        }
436
    });
437
 
438
 
439
 
440
 
441
 
442
    $('a.fa-file').on('click', function(e){
443
        e.preventDefault();
444
 
445
        $('#form-feed-document #shared_with').val('');
446
        $('#form-feed-document #file').val('');
447
        CKEDITOR.instances.description_document.setData('');
448
 
449
        $('#form-feed-document')[0].reset()
450
        validatorFeedDocument.resetForm();
451
        $('#modal-feed-document-box').modal('show');
452
    });
453
 
454
    $('#form-feed-document #file').fileinput({
455
        theme: 'fa',
456
        language: 'es',
457
        showUpload: false,
458
        dropZoneEnabled: false,
459
        maxFileCount: 1,
460
        allowedFileExtensions: ['pdf'],
461
    });
462
 
463
 
464
    $('.btn-modal-feed-document-close').on('click', function(e){
465
        e.preventDefault();
466
 
467
        $('#modal-feed-document-box').modal('hide');
468
        return false;
469
    });
470
 
471
 
472
    $('a.fa-camera').on('click', function(e){
473
        e.preventDefault();
474
 
475
        $('#form-feed-image #shared_with').val('');
476
        $('#form-feed-image #file').val('');
477
        CKEDITOR.instances.description_image.setData('');
478
 
479
        $('#form-feed-image')[0].reset()
480
        validatorFeedImage.resetForm();
481
        $('#modal-feed-image-box').modal('show');
482
    });
483
 
484
    $('#form-feed-image #file').fileinput({
485
        theme: 'fa',
486
        language: 'es',
487
        showUpload: false,
488
        dropZoneEnabled: false,
489
        maxFileCount: 1,
490
        allowedFileExtensions: ['jpg', 'jpeg', 'png', 'gif'],
491
    });
492
 
493
 
494
    $('.btn-modal-feed-image-close').on('click', function(e){
495
        e.preventDefault();
496
 
497
        $('#modal-feed-image-box').modal('hide');
498
        return false;
499
    });
500
 
501
 
502
    $('a.fa-video-camera').on('click', function(e){
503
        e.preventDefault();
504
 
505
        $('#form-feed-video #shared_with').val('');
506
        $('#form-feed-video #file').val('');
507
        CKEDITOR.instances.description_video.setData('');
508
 
509
 
510
        $('#form-feed-video')[0].reset()
511
        validatorFeedVideo.resetForm();
512
        $('#modal-feed-video-box').modal('show');
513
    });
514
 
515
    $('#form-feed-video #file').fileinput({
516
        theme: 'fa',
517
        language: 'es',
518
        showUpload: false,
519
        dropZoneEnabled: false,
520
        maxFileCount: 1,
521
        allowedFileExtensions: ['mp4', 'mpeg','webm'],
522
    });
523
 
524
 
525
    $('.btn-modal-feed-video-close').on('click', function(e){
526
        e.preventDefault();
527
 
528
        $('#modal-feed-video-box').modal('hide');
529
        return false;
530
    });
531
 
532
    $('body').on('click', 'a.btn-indicator', function(e) {
533
 
534
        e.preventDefault();
535
    });
536
 
537
 
538
 
539
 
540
 
541
 
542
    $('body').on('submit', 'form.form-comment-feed', function(e) {
543
        e.preventDefault();
544
 
545
        var form = $(this);
546
        var url = form.attr('action');
547
        var unique  = $(this).data('feed-unique');
548
 
549
        NProgress.start();
550
        $.ajax({
551
            'dataType'  : 'json',
552
            'accept'    : 'application/json',
553
            'method'    : 'post',
554
            'url'       :  url,
555
            'data'      : form.serialize(),
556
        }).done(function(response) {
557
            if(response['success']) {
558
                $('#comment-' + unique).val('');
559
 
560
                var s = $( "#commentTemplate" ).render( response['data'] );
561
                $(s).appendTo('.comment-sec-' + unique + ' ul');
562
 
563
                $('#btn-comments-' + unique).html('<i class="fa fa-comments"></i> ' + response['total_comments']);
564
 
565
                $('form.form-comment-feed > input[name="comment"]').val('');
566
 
567
            } else {
568
               $.fn.showError(response['data']);
569
            }
570
        }).fail(function( jqXHR, textStatus, errorThrown) {
571
            $.fn.showError(textStatus);
572
        }).always(function() {
573
            NProgress.done();
574
        });
575
        return false;
576
 
577
    });
578
 
579
 
580
    $.fn.deleteFeed = function(url, feed_unique) {
581
 
582
 
583
        NProgress.start();
584
        $.ajax({
585
            'dataType'  : 'json',
586
            'accept'    : 'application/json',
587
            'method'    : 'post',
588
            'url'       :  url,
589
        }).done(function(response) {
590
            if(response['success']) {
591
              $('.post-bar-' +  feed_unique).remove();
592
 
593
                $.fn.showSuccess(response['data']);
594
            } else {
595
                $.fn.showError(response['data']);
596
            }
597
        }).fail(function( jqXHR, textStatus, errorThrown) {
598
            $.fn.showError(textStatus);
599
        }).always(function() {
600
            NProgress.done();
601
        });
602
 
603
    }
604
 
605
    $('body').on('click', 'a.btn-feed-trash', function(e) {
606
        e.preventDefault();
607
        var url = $(this).data('link');
608
        var feed_unique = $(this).data('feed-unique');
609
 
610
 
611
 
612
 
613
        bootbox.confirm({
614
            message: 'Esta seguro de borrar esta publicación',
615
            buttons: {
616
                confirm: {
617
                    label: 'Si',
618
                    className: 'btn-danger'
619
                },
620
                cancel: {
621
                    label:  'No',
622
                    className: 'btn-default'
623
                }
624
            },
625
            callback: function (result) {
626
               if(result) {
627
                    $.fn.deleteFeed(url, feed_unique);
628
                }
629
            }
630
        });
631
    });
632
 
633
 
634
    $.fn.deleteComment = function(url, unique) {
635
 
636
         var feed_unique = $('.comment-' + unique).closest('div.comment-sec').data('feed-unique');
637
 
638
        NProgress.start();
639
        $.ajax({
640
            'dataType'  : 'json',
641
            'accept'    : 'application/json',
642
            'method'    : 'post',
643
            'url'       :  url,
644
        }).done(function(response) {
645
            if(response['success']) {
646
 
647
                $('.comment-' + unique).closest('li').remove();
648
                $('#btn-comments-' + feed_unique).html('<i class="fa fa-comments"></i> ' + response['data']['total_comments']);
649
 
650
                $.fn.showSuccess(response['data']['message']);
651
            } else {
652
                $.fn.showError(response['data']);
653
            }
654
        }).fail(function( jqXHR, textStatus, errorThrown) {
655
            $.fn.showError(textStatus);
656
        }).always(function() {
657
            NProgress.done();
658
        });
659
 
660
 
661
    }
662
 
663
 
664
    $('body').on('click', 'a.btn-comment-trash', function(e) {
665
        e.preventDefault();
666
        var url = $(this).data('link');
667
        var unique = $(this).data('comment-unique');
668
 
669
 
670
        bootbox.confirm({
671
            message: 'Esta seguro de borrar este comentario',
672
            buttons: {
673
                confirm: {
674
                    label: 'Si',
675
                    className: 'btn-danger'
676
                },
677
                cancel: {
678
                    label:  'No',
679
                    className: 'btn-default'
680
                }
681
            },
682
            callback: function (result) {
683
               if(result) {
684
                   $.fn.deleteComment(url, unique);
685
                }
686
            }
687
        });
688
    });
689
 
690
 
691
    $('div.modal').on("hide.bs.modal", function() {
692
    	$(".wrapper").removeClass("overlay");
693
    })
694
 
695
 
696
    $.fn.reload(1);
697
 
3646 stevensc 698
    CKEDITOR.replace('description_feed', {
699
				// Reset toolbar settings, so full toolbar will be generated automatically.
700
				toolbar: null,
701
				toolbarGroups: [
3653 stevensc 702
                    { name: 'editing', groups: [ 'find', 'selection', 'spellchecker', 'editing' ] },
3650 stevensc 703
                    { name: 'links', groups: [ 'links' ] },
3653 stevensc 704
                    { name: 'basicstyles', groups: [ 'basicstyles', 'cleanup' ] },
705
                    { name: 'paragraph', groups: [ 'list', 'indent', 'blocks', 'align', 'bidi', 'paragraph' ] },
3650 stevensc 706
                    '/',
3653 stevensc 707
                    { name: 'insert', groups: [ 'insert' ] },
708
                    { name: 'styles', groups: [ 'styles' ] },
709
                    { name: 'tools', groups: [ 'tools' ] },
710
                    { name: 'clipboard', groups: [ 'clipboard', 'undo' ] },
711
                    { name: 'forms', groups: [ 'forms' ] },
712
                    { name: 'document', groups: [ 'mode', 'document', 'doctools' ] },
713
                    { name: 'others', groups: [ 'others' ] },
714
                    { name: 'colors', groups: [ 'colors' ] },
715
                    { name: 'about', groups: [ 'about' ] }
3646 stevensc 716
                ],
3653 stevensc 717
                removeButtons: 'Anchor,Cut,Copy,Paste,PasteText,PasteFromWord,Undo,Redo,Source,About',
3646 stevensc 718
				removePlugins: 'elementspath,Anchor',
719
				height: 100
720
			});
1 www 721
    CKEDITOR.replace('description_video');
722
    CKEDITOR.replace('description_image');
723
    CKEDITOR.replace('description_document');
724
 
725
 
726
});
727
 
728
 
729
JS;
730
$this->inlineScript()->captureEnd();
731
 
732
?>
733
 
3643 stevensc 734
    <section class="content-header">
735
    	<div class="container-fluid">
736
        	<div class="row mb-2">
737
            	<div class="col-sm-12">
738
                	<h1>LABEL_FEEDS</h1>
739
    			</div>
740
    		</div>
741
    	</div><!-- /.container-fluid -->
742
    </section>
1 www 743
 
3643 stevensc 744
 
745
    <section class="content">
746
    	<div class="container-fluid">
747
        	<div class="feed-container">
748
                <div class="">
749
                    <div class="main-ws-sec">
1 www 750
                        <div class="">
3643 stevensc 751
                            <div class="">
752
                                <div class="post-bar">
753
                                    <form id="form-main" name="form-main">
754
                                        <div class="post_topbar">
1 www 755
 
3643 stevensc 756
                                            <div class="mar-top clearfix">
757
                                                <div class="form-group">
758
                                                </div>
759
                                                <div class="form-group">
760
                                                    <textarea id="description-main" name="description-main" placeholder="¿Qué tienes en mente?" class="form-control" readonly="readonly" rows="2"></textarea>
761
                                                </div>
762
                                            </div>
763
                                            <div class="mar-top clearfix">
764
                                                <button class="btn btn-sm btn-primary pull-right" type="button" id="btn-description-main"><i class="fa fa-pencil fa-fw"></i> LABEL_SHARE </button>
765
                                                <a class="btn btn-trans btn-icon fa fa-video-camera add-tooltip" href="#"></a>
766
                                                <a class="btn btn-trans btn-icon fa fa-camera add-tooltip" href="#"></a>
767
                                                <a class="btn btn-trans btn-icon fa fa-file add-tooltip" href="#"></a>
1 www 768
                                            </div>
769
                                        </div>
3643 stevensc 770
                                    </form>
771
                                </div>
1 www 772
                            </div>
773
                        </div>
3643 stevensc 774
                            <!--posts-section star-->
775
                        <div class="posts-section" >
776
 
777
                        </div>
778
 
779
                        <div class="process-comm" id="paginator-process-comm" style="display: none">
780
                            <button class="btn btn-sm btn-primary" data-page="0" id="btn-page-previous"> <i class="fa fa-chevron-left" aria-hidden="true"></i> LABEL_PREVIOUS </button>
781
                            <button class="btn btn-sm btn-primary" data-page="0" id="btn-page-next"> LABEL_NEXT <i class="fa fa-chevron-right" aria-hidden="true"></i> </button>
782
                        </div>
783
                            <!--posts-section end-->
1 www 784
                    </div>
3643 stevensc 785
                </div> <!--main-ws-sec end-->
786
		    </div>
787
	    </div>
788
    </section>
1 www 789
 
790
 
791
<div class="modal" tabindex="-1" role="dialog" id="modal-feed-image-box">
3643 stevensc 792
	<div class="modal-dialog" role="document">
793
		<?php
794
		$form = $this->formFeed;
1 www 795
        $form->setAttributes([
796
            'method' => 'post',
797
            'action' => $this->url('feeds/add'),
798
            'name' => 'form-feed-image',
799
            'id' => 'form-feed-image',
3643 stevensc 800
            'enctype' => 'multipart/form-data'
1 www 801
        ]);
802
        $form->prepare();
803
        echo $this->form()->openTag($form);
3643 stevensc 804
 
805
 
806
        ?>
807
		<div class="modal-content">
808
    		<div class="modal-header">
809
         		<h3 class="modal-title">LABEL_SHARE_IMAGE</h3>
810
        	</div>
811
   			<div class="modal-body">
1 www 812
                <div class="form-group">
3643 stevensc 813
                	<?php
1 www 814
                    $element = $form->get('description');
815
                    $element->setAttributes(['id' => 'description_image', 'rows' => '2', 'placeholder' => '¿Qué tienes en mente?', 'class' => 'form-control']);
816
                    echo $this->formTextArea($element);
817
                    ?>
3643 stevensc 818
   				</div>
819
   				<div class="form-group">
820
                	<div class="file-loading">
821
                 		<?php
1 www 822
                        $element = $form->get('file');
823
                        $element->setAttributes(['accept' => 'image/jpg,image/jpeg,image/png']);
824
                        echo $this->formFile($element);
825
                        ?>
3643 stevensc 826
                	</div>
827
          		</div>
828
          	</div>
829
           	<div class="modal-footer">
830
           		<button type="submit" class="btn btn-sm btn-primary save">LABEL_UPLOAD</button>
831
            	<button type="button" class="btn btn-sm btn-default cancel btn-modal-feed-image-close">LABEL_CANCEL</button>
832
			</div>
833
 
834
		</div>
835
    	<a href="#" title="" class="close-box btn-feed-image-close"><i class="la la-close"></i></a>
836
    	<?php echo $this->form()->closeTag($form); ?>
837
	</div>
1 www 838
</div>
839
 
840
 
841
<div class="modal" tabindex="-1" role="dialog" id="modal-feed-video-box">
3643 stevensc 842
	<div class="modal-dialog" role="document">
843
		<?php
844
		$form = $this->formFeed;
1 www 845
        $form->setAttributes([
846
            'method' => 'post',
847
            'action' => $this->url('feeds/add'),
848
            'name' => 'form-feed-video',
849
            'id' => 'form-feed-video',
3643 stevensc 850
            'enctype' => 'multipart/form-data'
1 www 851
        ]);
852
        $form->prepare();
853
        echo $this->form()->openTag($form);
3643 stevensc 854
 
1 www 855
 
3643 stevensc 856
        ?>
857
		<div class="modal-content">
858
    		<div class="modal-header">
859
         		<h3 class="modal-title">LABEL_SHARE_VIDEO</h3>
860
        	</div>
861
   			<div class="modal-body">
1 www 862
                <div class="form-group">
3643 stevensc 863
                	<?php
1 www 864
                    $element = $form->get('description');
865
                    $element->setAttributes(['id' => 'description_video', 'rows' => '2', 'placeholder' => '¿Qué tienes en mente?', 'class' => 'form-control']);
866
                    echo $this->formTextArea($element);
867
                    ?>
3643 stevensc 868
   				</div>
869
   				<div class="form-group">
870
                	<div class="file-loading">
871
                 		<?php
1 www 872
                        $element = $form->get('file');
873
                        $element->setAttributes(['accept' => 'video/webm,video/mpeg,video/mp4']);
874
                        echo $this->formFile($element);
875
                        ?>
3643 stevensc 876
                	</div>
877
          		</div>
878
         	</div>
879
         	<div class="modal-footer">
880
            	<button type="submit" class="btn btn-sm btn-primary save">LABEL_UPLOAD</button>
881
            	<button type="button" class="btn btn-sm btn-default cancel btn-modal-feed-video-close">LABEL_CANCEL</button>
882
           	</div>
883
 
884
		</div>
885
    	<a href="#" title="" class="close-box btn-feed-video-close"><i class="la la-close"></i></a>
886
    	<?php echo $this->form()->closeTag($form); ?>
887
	</div>
1 www 888
</div>
889
 
890
<div class="modal" tabindex="-1" role="dialog" id="modal-feed-document-box">
3643 stevensc 891
	<div class="modal-dialog" role="document">
892
		<?php
893
		$form = $this->formFeed;
1 www 894
        $form->setAttributes([
895
            'method' => 'post',
896
            'action' => $this->url('feeds/add'),
897
            'name' => 'form-feed-document',
898
            'id' => 'form-feed-document',
3643 stevensc 899
            'enctype' => 'multipart/form-data'
1 www 900
        ]);
901
        $form->prepare();
902
        echo $this->form()->openTag($form);
3643 stevensc 903
 
1 www 904
 
3643 stevensc 905
 
906
        ?>
907
		<div class="modal-content">
908
    		<div class="modal-header">
909
         		<h3 class="modal-title">LABEL_SHARE_DOCUMENT</h3>
910
        	</div>
911
   			<div class="modal-body">
1 www 912
                <div class="form-group">
3643 stevensc 913
                	<?php
1 www 914
                    $element = $form->get('description');
915
                    $element->setAttributes(['id' => 'description_document', 'rows' => '2', 'placeholder' => '¿Qué tienes en mente?', 'class' => 'form-control']);
916
                    echo $this->formTextArea($element);
917
                    ?>
3643 stevensc 918
   				</div>
919
   				<div class="form-group">
920
                	<div class="file-loading">
921
                 		<?php
1 www 922
                        $element = $form->get('file');
923
                        $element->setAttributes(['accept' => 'application/pdf']);
924
                        echo $this->formFile($element);
925
                        ?>
3643 stevensc 926
                	</div>
927
          		</div>
928
          	</div>
1 www 929
            <div class="modal-footer">
3643 stevensc 930
            	<button type="submit" class="btn btn-sm btn-primary save">LABEL_UPLOAD</button>
931
            	<button type="button" class="btn btn-sm btn-default cancel btn-modal-feed-document-close">LABEL_CANCEL</button>
1 www 932
            </div>
3643 stevensc 933
		</div>
934
    	<a href="#" title="" class="close-box btn-feed-document-close"><i class="la la-close"></i></a>
935
    	<?php echo $this->form()->closeTag($form); ?>
936
	</div>
1 www 937
</div>
938
 
939
<div class="modal" tabindex="-1" role="dialog" id="modal-feed-box">
3643 stevensc 940
	<div class="modal-dialog" role="document">
941
		<?php
942
		$form = $this->formFeed;
1 www 943
        $form->setAttributes([
944
            'method' => 'post',
945
            'action' => $this->url('feeds/add'),
946
            'name' => 'form-feed',
947
            'id' => 'form-feed',
948
        ]);
949
        $form->prepare();
950
        echo $this->form()->openTag($form);
3643 stevensc 951
 
1 www 952
 
3643 stevensc 953
 
954
        ?>
955
		<div class="modal-content">
956
    		<div class="modal-header">
957
         		<h3 class="modal-title">LABEL_SHARE</h3>
958
        	</div>
959
   			<div class="modal-body">
1 www 960
                <div class="form-group">
3643 stevensc 961
                	<?php
1 www 962
                    $element = $form->get('description');
963
                    $element->setAttributes(['id' => 'description_feed', 'rows' => '2', 'placeholder' => '¿Qué tienes en mente?', 'class' => 'form-control']);
964
                    echo $this->formTextArea($element);
965
                    ?>
3643 stevensc 966
   				</div>
967
   			</div>
1 www 968
            <div class="modal-footer">
3643 stevensc 969
            	<button type="submit" class="btn btn-sm btn-primary save">LABEL_SAVE</button>
970
            	<button type="button" class="btn btn-sm btn-default cancel btn-modal-feed-close">LABEL_CANCEL</button>
1 www 971
            </div>
3643 stevensc 972
		</div>
973
    	<a href="#" title="" class="close-box btn-modal-feed-close"><i class="la la-close"></i></a>
974
    	<?php echo $this->form()->closeTag($form); ?>
975
	</div>
1 www 976
</div>
977
 
978
 
979
 
980
 
981
<script id="commentTemplate" type="text/x-jsrender">
3643 stevensc 982
                    <li>
1 www 983
				        <div class="comment-list">
984
							 <div class="comment comment-{{:unique}}" >
985
    					         <a href="{{>user_url}}"><h3>{{>user_name}}</h3>
986
    						     <span><img src="<?php echo $this->basePath('images/clock.png') ?>" alt="">{{>time_elapsed}}
987
                                {{if link_delete}}
988
                                    <a href="#" class="btn-comment-trash" data-link="{{:link_delete}}" data-comment-unique="{{>unique}}"><i class="fa fa-trash"></i></a>
989
                                {{/if}}
990
                                 </span>
991
 
992
								 <p>{{>comment}}</p>
993
						     </div>
994
	                   </div>
995
	               </li>
996
</script>
997
 
998
<script id="feedTemplate" type="text/x-jsrender">
999
    <div class="post-bar post-bar-{{>feed_unique}}">
1000
        <div class="post_topbar">
1001
            <div class="usy-dt">
1002
                <a href="{{>owner_url}}">
1003
                    <img src="{{>owner_image}}" alt="" style="width:50px; height: auto">
1004
                    <div class="usy-name">
1005
                        <h3>{{>owner_name}}</h3>
1006
                        <span>
1007
                            <img src="<?php echo $this->basePath('images/clock.png') ?>" alt="">
1008
                            {{>owner_time_elapse}}
1009
                            {{if feed_delete_url}}
1010
                                <a href="#" class="btn-feed-trash" data-link="{{:feed_delete_url}}" data-feed-unique="{{>feed_unique}}"><i class="fa fa-trash"></i></a>
1011
                            {{/if}}
1012
                        </span>
1013
                    </div>
1014
                </a>
1015
            </div>
1016
        </div>
1017
        <div class="job_descp">
1018
            <p>
1019
            <div  class="show-read-more">{{:owner_description}}</div>
1020
            </p>
1021
            {{if owner_file_image}}
1022
             <img src="{{>owner_file_image}}" class="Entradas">
1023
            {{/if}}
1024
            {{if owner_file_video}}
1025
             <video src="{{>owner_file_video}}" controls  poster="{{>owner_file_image_preview}}">
1026
            {{/if}}
1027
            {{if owner_file_document}}
1028
                <a href="{{>owner_file_document}}" target="_blank">Descargar</a>
1029
            {{/if}}
1030
 
1031
    {{if shared_name}}
1032
    <div class="post-bar">
1033
        <div class="post_topbar">
1034
            <div class="usy-dt">
1035
                <img src="{{>shared_image}}" alt="" style="width:50px; height: auto">
1036
                <div class="usy-name">
1037
                    <h3>{{>shared_name}}</h3>
1038
                    <span><img style="width: 12px; height: auto" src="<?php echo $this->basePath('images/clock.png') ?>" alt="">{{>shared_time_elapse}}</span>
1039
                </div>
1040
            </div>
1041
        </div>
1042
        <div class="job_descp">
1043
            <p>
1044
            <div  class="show-read-more">{{:shared_description}}</div>
1045
            </p>
1046
            {{if shared_file_image}}
1047
             <img src="{{>shared_file_image}}" class="Entradas">
1048
            {{/if}}
1049
            {{if shared_file_video}}
1050
             <video src="{{>shared_file_video}}" controls  poster="{{>shared_file_image_preview}}">
1051
            {{/if}}
1052
            {{if shared_file_document}}
1053
                <a href="{{>shared_file_document}}" target="_blank">Descargar</a>
1054
            {{/if}}
1055
        </div>
1056
    </div>
1057
    {{/if}}
1058
 
1059
 
1060
        </div>
1061
        <div class="job-status-bar">
1062
            <ul class="like-com">
1063
                <li>
1064
                    <a href="#" id="btn-comments-{{>feed_unique}}" class="btn-indicator"><i class="fa fa-comments"></i> {{>owner_comments}}</a>
1065
                </li>
1066
                <li>
1067
                    <a href="#" id="btn-share-{{>feed_unique}}" class="btn-indicator"><i class="fa fa-share"></i> {{>owner_shared}}</a>
1068
                </li>
1069
            </ul>
1070
 
1071
        </div>
1072
        {{if comments}}
1073
            <div class="comment-section">
1074
                <div class="comment-sec comment-sec-{{>feed_unique}}" data-feed-unique="{{>feed_unique}}">
1075
                    <ul>
1076
                        {{for comments}}
1077
                            <li>
1078
                                <div class="comment-list">
1079
                                    <div class="comment comment-{{:unique}}" >
1080
                                        <span><img src="<?php echo $this->basePath('images/clock.png') ?>" alt="">{{>time_elapsed}}
1081
                                        <a href="{{>user_url}}"><h3>{{>user_name}}</h3>
1082
                                        {{if link_delete}}
1083
                                            <a href="#" class="btn-comment-trash" data-link="{{:link_delete}}"
1084
                                                data-comment-unique="{{>unique}}"><i class="fa fa-trash"></i></a>
1085
                                        {{/if}}
1086
                                        </span>
1087
 
1088
                                        <p>{{>comment}}</p>
1089
                                    </div>
1090
                                </div>
1091
                            </li>
1092
                        {{/for}}
1093
                    </ul>
1094
                </div>
1095
            </div>
1096
        {{/if}}
1097
        <div class="comment_box">
1098
            <form  class="form-comment-feed" data-feed-unique="{{>feed_unique}}"  action="{{>comment_add_url}}">
1099
                <input type="text" name="comment" id="comment-{{>feed_unique}}" maxlength="256"  placeholder="LABEL_WRITE_A_COMMENT">
1100
                <button type="submit">LABEL_SEND</button>
1101
            </form>
1102
        </div>
1103
    </div>
1104
</script>