Blame view

common/widgets/views/image_sizer.php 5.68 KB
29b842c0   Administrator   add field v.1
1
2
3
4
5
6
7
8
  <?php
  /**
   * Created by PhpStorm.
   * User: vitaliy
   * Date: 05.10.15
   * Time: 16:20
   */
  use yii\helpers\Html;
06d508f3   Administrator   add Vitaliy's wid...
9
10
  
  $id = $model::tableName().'_id';
29b842c0   Administrator   add field v.1
11
12
13
14
  
  ?>
  <div class="file-uploader-block">
      <?php if(!$multi):?>
29b842c0   Administrator   add field v.1
15
  
29b842c0   Administrator   add field v.1
16
17
18
19
  
          <?=  Html::activeHiddenInput( $model,$field,['id' => "{$field}_picture_link"]) ?>
          <input type="hidden" id="<?=$field?>_old_img" name="ImageSizerForm[old_img]" value="<?=$model->$field?>"/>
          <input type="hidden" id="<?=$field?>_new_img" name="ImageSizerForm[new_img]" value=""/>
06d508f3   Administrator   add Vitaliy's wid...
20
          <input type="hidden" id="<?=$field?>_row_id" name="ImageSizerForm[new_img]" value="<?=$model->$id?>"/>
3364fb6a   Виталий   tokar commit
21
22
23
24
25
26
          <div class="tst">
              <div id="<?= $field?>_img_block" class="admin-avatar-pattern-wr">
                  <div class="admin-avatar-pattern">
                      <?= $model->$field ? Html::img($model->$field): '' ?>
                  </div>
              </div>
3364fb6a   Виталий   tokar commit
27
28
29
30
31
32
33
34
          </div>
  
          <span class="btn btn-success fileinput-button uploader-button">
  <!--        <i class="glyphicon glyphicon-plus"></i>-->
          <span><?=$name?></span>
  
              <?=  Html::activeFileInput( new \common\models\ImageSizerForm(),'file',['id'=>$field, 'data-url'=>Yii::$app->getUrlManager()->createUrl('file/uploader/download-photo')]);?>
      </span>
29b842c0   Administrator   add field v.1
35
36
37
38
39
  
      <script>
      $(function(){
  
          $("#<?= $field?>").fileupload({
3364fb6a   Виталий   tokar commit
40
  
29b842c0   Administrator   add field v.1
41
42
43
44
45
46
47
              dataType: 'json',
              formData: {width: <?=$width?>,height:<?=$height?>},
              done: function (e, data) {
                  if($("#<?=$field?>_buttons_block").length){
                      $("#<?=$field?>_buttons_block").remove()
                  }
                  var host = window.location.host.toString();
3364fb6a   Виталий   tokar commit
48
                  var img = '<div class="admin-ava-wr"><img style="vertical-align: middle; width: <?=$width?>px; height: <?=$height?>px;" src="http://'+host+data.result.link+'"></div>'+
29b842c0   Administrator   add field v.1
49
50
51
52
                      '<div id="<?=$field?>_buttons_block">'+
                          '<button type="button" id="<?=$field?>_save_img" class="btn btn-success img-action-buttons" >Сохранить</button>'+
                          '<button type="button" id="<?=$field?>_remove_img" class="btn btn-danger img-action-buttons" >Отмена</button>'+
                      '</div>';
3364fb6a   Виталий   tokar commit
53
                  var block = $("#<?= $field?>_img_block .admin-avatar-pattern");
29b842c0   Administrator   add field v.1
54
55
                  block.find('img').remove();
                  block.append(img);
b20e4b53   Виталий   tokar commit
56
                  block.parents('.file-uploader-block').parent().addClass('success_download');
29b842c0   Administrator   add field v.1
57
58
59
60
61
62
63
64
65
66
67
                  $("#<?=$field?>_picture_link").val(data.result.link);
                  $("#<?=$field?>_new_img").val(data.result.link);
              }
          });
  
  
          $('body').on('click', '#<?=$field?>_save_img',function(){
              $("#<?=$field?>_buttons_block").remove();
              var old_url = $('#<?=$field?>_old_img').val();
              var new_url = $('#<?=$field?>_new_img').val();
              var model = '<?=str_replace('\\', '-',$model::className());?>';
a82865e3   Administrator   add Vitaliy's wid...
68
              $.post( "/file/delete-image",{new_url:new_url,old_img: old_url,model:model,field:"<?= $field?>", id:"<?=$model->$id?>",action:'save'},  function() {
29b842c0   Administrator   add field v.1
69
70
71
72
73
              });
              $("#<?=$field?>_picture_link").val(new_url);
          });
  
          $('body').on('click', '#<?=$field?>_remove_img',function(){
b20e4b53   Виталий   tokar commit
74
75
              $("#<?= $field?>_img_block").parent().parent().parent().removeClass('success_download')
  
29b842c0   Administrator   add field v.1
76
              $("#<?=$field?>_buttons_block").remove();
29b842c0   Administrator   add field v.1
77
78
              var old_url = $('#<?=$field?>_old_img').val();
              var new_url = $('#<?=$field?>_new_img').val();
a82865e3   Administrator   add Vitaliy's wid...
79
              $.post( "/file/delete-image",{old_img: new_url},  function() {
29b842c0   Administrator   add field v.1
80
81
              });
              $("#<?=$field?>_picture_link").val(old_url);
3364fb6a   Виталий   tokar commit
82
83
84
85
86
87
88
              if(old_url.length<=1){
                  $('#<?= $field?>_img_block').find('img').remove()
              }
              else {
                  $('#<?= $field?>_img_block').find('img').attr('src',old_url);
              }
  
29b842c0   Administrator   add field v.1
89
90
91
92
93
94
95
96
97
98
99
100
          });
  
  
      })
  </script>
  
  <?php else:?>
  
      <span class="btn btn-success fileinput-button uploader-button">
      <i class="glyphicon glyphicon-plus"></i>
      <span><?=$name?></span>
  
ab6d9045   Administrator   add Vitaliy's wid...
101
          <?=  Html::activeFileInput( new \common\models\ImageSizerForm(),'file',['id'=>$field, 'data-url'=>Yii::$app->getUrlManager()->createUrl('file/uploader/download-photo'), 'multiple'=> 'multiple' ]);?>
29b842c0   Administrator   add field v.1
102
103
104
105
106
      </span>
  
      <?=  Html::activeHiddenInput( $model,$field,['id' => "{$field}_picture_link"]) ?>
  
  
ea09d15d   Yarik   test
107
      <input type="hidden" name="ImageSizerForm[multi]" value="true"/>
29b842c0   Administrator   add field v.1
108
109
110
111
112
113
114
115
116
117
118
119
120
121
  
      <div id="<?= $field?>_img_block">
          <?php
  
          foreach($this->context->getGallery() as  $image){
              echo $this->render('_gallery_item', [ 'item' => ['image'=>$image]]);
          }
          ?>
      </div>
      <script>
          $(function(){
  
              $("#<?= $field?>").fileupload({
                  dataType: 'json',
ea09d15d   Yarik   test
122
                  formData: {width: <?=$width?>,height:<?=$height?>, multi: 1},
29b842c0   Administrator   add field v.1
123
                  done: function (e, data) {
29b842c0   Administrator   add field v.1
124
125
126
127
128
129
130
131
132
133
134
135
136
                      var img = data.result.view;
                      var block = $("#<?= $field?>_img_block");
                      block.append(img);
                      var gallery = $("#<?= $field?>_picture_link");
                      gallery.val(gallery.val()+data.result.link+',');
                  }
              });
              $('body').on('click','.delete-gallery-item', function(){
                  var url = $(this).data('url');
                  $(this).parent('.gallery_image').remove();
                  var gallery = $("#<?= $field?>_picture_link");
                  var urls = gallery.val();
                  gallery.val(urls.replace(url+',', ""));
a82865e3   Administrator   add Vitaliy's wid...
137
                  $.post( "/file/delete-image",{old_img: url},  function( data ) {
29b842c0   Administrator   add field v.1
138
139
140
141
142
143
144
145
146
                      $( ".result" ).html( data );
                  });
              })
  
          })
      </script>
  
  <?php endif;?>
  </div>