Blame view

common/modules/fileloader/resources/handler.js 2.49 KB
14a09168   Alex Savenko   init commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
  $(function() {

      if(fileloader !== undefined) {

          $.each(fileloader, function(index, value) {

              var id = value.id;

              var model = value.model;

              var formData = {};

              if(typeof model == 'string' && model !== '') {

                  formData.model = model;

              }

              if(typeof id == 'string' && id !== '') {

                  formData.id = id;

                  $('#'+id).fileupload({

                      dataType: 'json',

                      url: '/fileloader/upload',

                      formData: formData,

                      done: function(e, data) {

                          if(!data.result.error) {

                              var id = data.result.result.id;

                              var input = $('#'+id);

                              var multiple = $(input).attr('multiple') !== undefined;

                              var wrapper = $(input).parents('.fileloader-wrapper').first();

                              var html = '<div class="fileloader-item-wrapper" data-id="'+data.result.result.file_id+'">'+

                                         data.result.result.input + '<p class="fileloader-item-name">'+

                                         '<a href="'+data.result.result.file_href+'" target="_blank">'+data.result.result.file_name+'</a></p>'+'<span class="fileloader-item-remove glyphicon glyphicon-remove"></span>'+

                                         '</div>';

                              $('#modal_form_contacts .contacts-form-help span').css({display:'none'});

                              if(!multiple) {

                                  var inputs = $(wrapper).find('.fileloader-item-remove');

                                  $.each(inputs, function(i, v) {

                                      $(v).trigger('click');

                                  });

                              }

                              $(html).appendTo($(wrapper).find('.fileloader-list'));

                          }

                      }

                  });

              }

          });

      }

      $(document).on('click', '.fileloader-item-remove', function(e) {

          var wrapper = $(this).parents('.fileloader-item-wrapper').first();

          var id = $(wrapper).data('id');

          $.post(

              '/fileloader/delete',

              {

                  id: id

              },

              function(data) {}

          );

          $('#modal_form_contacts .contacts-form-help span').css({display:'block'});

          $(wrapper).remove();

      });

  });