public function init()
 {
     parent::init();
     if (empty($this->id)) {
         throw new InvalidConfigException('must config id attribute');
     }
     ImgareaselectAsset::registerWithStyle($this->getView(), $this->getStyleOption());
 }
Example #2
0
    <div class="form-group">
        <?php 
echo Html::submitButton($model->isNewRecord ? Yii::t('comments', 'Создать') : Yii::t('comments', 'Изменить'), ['class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-primary']);
?>
    </div>

    <?php 
ActiveForm::end();
?>

    <div style="max-width: 600px; margin: 0 auto;" class="text-center">
        <div id="preview-image"><img id="previewImage" src="" alt="preview"/></div>
        <label id="dropzone" for="uploadimage" class="dropzone text-muted">
            <i id="uploadIcon" class="fa fa-cloud-upload fa-5x"></i>
            <i id="loadingIcon" class="fa fa-spinner fa-spin fa-5x"></i>
            <br/>
            <?php 
echo Yii::t('comments', 'Перетащите сюда фотографию, или нажмите чтобы загрузка ее.');
?>
            <br/>
            <span class="text-danger" id="upload-error"></span>
        </label>
    </div>

</div>

<?php 
ImgAreaSelect::widget(['id' => '#previewImage', 'clientOptions' => ['minWidth' => 300, 'minHeight' => 300, 'aspectRatio' => '1:1', 'persistent' => true, 'show' => true, 'instance' => true, 'x1' => 0, 'y1' => 0, 'x2' => 0, 'y2' => 0], 'var' => 'previewImage']);
$this->registerJs("\n    input = \$('#uploadimage')[0];\n    \$('#" . ($model->isNewRecord ? 'createForm' : 'updateForm') . "').on('afterValidateAttribute', function (buff, buff, msg) {\n    if (msg.length === 0)\n    {\n        if (buff.input == '#uploadimage')\n        {\n            if (input.files && input.files[0]) {\n                reader.readAsDataURL(input.files[0]);\n            } else {\n                \$('#dropzone').css('display', 'inline-block');\n                \$('#preview-image').css('display', 'none');\n                \$('#preview-image img').attr('src', '');\n            }\n        }\n    } else {\n        \$('#upload-error').html(msg[0]);\n        dropzone.removeClass('noDrop');\n        \$('#uploadIcon').css('display', 'inline-block');\n        \$('#loadingIcon').css('display', 'none');\n    }\n});\n\n\$('#" . ($model->isNewRecord ? 'createForm' : 'updateForm') . "').on('beforeSubmit', function () {\n    console.log('test');\n    \$('#x1Cord').val(previewImage.getSelection().x1);\n    \$('#y1Cord').val(previewImage.getSelection().y1);\n    \$('#x2Cord').val(previewImage.getSelection().x2);\n    \$('#y2Cord').val(previewImage.getSelection().y2);\n});\n        ");
ImgareaselectAsset::registerWithStyle($this, ImgareaselectAsset::STYLE_DEFAULT);