105 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
| <?php
 | |
| 
 | |
| use backend\modules\document\models\DocumentField;
 | |
| use common\helpers\StatusHelper;
 | |
| use mihaildev\ckeditor\CKEditor;
 | |
| use yii\helpers\Html;
 | |
| use yii\widgets\ActiveForm;
 | |
| 
 | |
| /* @var $this yii\web\View */
 | |
| /* @var $model backend\modules\document\models\DocumentTemplate */
 | |
| /* @var $form yii\widgets\ActiveForm */
 | |
| ?>
 | |
| 
 | |
| <div class="row">
 | |
|     <div class="col-md-8">
 | |
|         <div class="document-template-form">
 | |
| 
 | |
|             <?php $form = ActiveForm::begin(); ?>
 | |
| 
 | |
|             <?= $form->field($model, 'title')->textInput(['maxlength' => true]) ?>
 | |
| 
 | |
|             <?= $form->field($model, 'status')->dropDownList(
 | |
|                 StatusHelper::statusList(),
 | |
|                 [
 | |
|                     'prompt' => 'Выберите'
 | |
|                 ]
 | |
|             ) ?>
 | |
| 
 | |
|             <?= $form->field($model, 'template_body')->widget(CKEditor::className(),[
 | |
|                 'editorOptions' => [
 | |
|                     'preset' => 'full', //разработанны стандартные настройки basic, standard, full данную возможность не обязательно использовать
 | |
|                     'inline' => false, //по умолчанию false
 | |
|                 ],
 | |
|             ]); ?>
 | |
| 
 | |
|             <div class="form-group">
 | |
|                 <?= Html::submitButton('Сохранить', ['class' => 'btn btn-success']) ?>
 | |
|             </div>
 | |
| 
 | |
|             <?php ActiveForm::end(); ?>
 | |
| 
 | |
|         </div>
 | |
|     </div>
 | |
| 
 | |
|     <div class="col-md-4">
 | |
|         <div class="table-responsive">
 | |
|             <h2>Поля договоров</h2>
 | |
|             <table class="table" id="fieldNameTable">
 | |
|                 <thead>
 | |
|                 <tr>
 | |
|                     <th>Поле</th>
 | |
|                     <th>Сигнатура поля</th>
 | |
|                 </tr>
 | |
|                 </thead>
 | |
|                 <tbody>
 | |
|                 <?php
 | |
|                 foreach (DocumentField::getTitleFieldTemplateArr() as $fieldTitle => $fieldTemplate) {
 | |
|                     echo "
 | |
|                                 <tr class='info'>
 | |
|                                     <td class='table-cell'>$fieldTitle</td>
 | |
|                                     <td class='table-cell'>$fieldTemplate</td>
 | |
|                                 </tr>
 | |
|                              ";
 | |
|                 }
 | |
|                 ?>
 | |
|                 </tbody>
 | |
|             </table>
 | |
|         </div>
 | |
|         <div>
 | |
|             <p>
 | |
|                 Нажмите на ячейку чтобы скопировать содержимое
 | |
|             </p>
 | |
|         </div>
 | |
|     </div>
 | |
| </div>
 | |
| 
 | |
| <script>
 | |
|     const popup = document.createElement('h4')
 | |
|     popup.textContent = 'Скопировано'
 | |
|     popup.style.cssText = `
 | |
|       background: #a6caf0;
 | |
|       position: absolute;
 | |
|       right: 0;
 | |
|       top: 0;
 | |
|       `
 | |
|     document.querySelectorAll('.table-cell').forEach(function (elm) {
 | |
|         elm.style.position = 'relative'
 | |
|         elm.addEventListener('click', function (e) {
 | |
|             e.target.style.backgroundColor = '#76d7c4'
 | |
|             var copyText = e.target.textContent
 | |
|             const el = document.createElement('textarea')
 | |
|             el.value = copyText
 | |
|             document.body.appendChild(el)
 | |
|             el.select()
 | |
|             document.execCommand('copy')
 | |
|             document.body.removeChild(el)
 | |
|             elm.appendChild(popup)
 | |
|             setTimeout(() => {
 | |
|                 elm.removeChild(popup)
 | |
|             }, 1000)
 | |
|         })
 | |
|     })
 | |
| </script>
 | |
| 
 | 
