Blame view

common/widgets/views/image_sizer.php 5.49 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
56
57
58
59
60
61
62
63
64
65
66
                  block.find('img').remove();
                  block.append(img);
                  $("#<?=$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...
67
              $.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
68
69
70
71
72
73
              });
              $("#<?=$field?>_picture_link").val(new_url);
          });
  
          $('body').on('click', '#<?=$field?>_remove_img',function(){
              $("#<?=$field?>_buttons_block").remove();
29b842c0   Administrator   add field v.1
74
75
              var old_url = $('#<?=$field?>_old_img').val();
              var new_url = $('#<?=$field?>_new_img').val();
a82865e3   Administrator   add Vitaliy's wid...
76
              $.post( "/file/delete-image",{old_img: new_url},  function() {
29b842c0   Administrator   add field v.1
77
78
              });
              $("#<?=$field?>_picture_link").val(old_url);
3364fb6a   Виталий   tokar commit
79
80
81
82
83
84
85
              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
86
87
88
89
90
91
92
93
94
95
96
97
          });
  
  
      })
  </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...
98
          <?=  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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
      </span>
  
      <?=  Html::activeHiddenInput( $model,$field,['id' => "{$field}_picture_link"]) ?>
  
  
      <input type="hidden" name="ImageSizerForm[multi]" value="<?=$multi?>"/>
  
      <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',
                  formData: {width: <?=$width?>,height:<?=$height?>},
                  done: function (e, data) {
  
                      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...
135
                  $.post( "/file/delete-image",{old_img: url},  function( data ) {
29b842c0   Administrator   add field v.1
136
137
138
139
140
141
142
143
144
                      $( ".result" ).html( data );
                  });
              })
  
          })
      </script>
  
  <?php endif;?>
  </div>