_permission-form.php 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <?php
  2. /**
  3. * Author: lf
  4. * Blog: https://blog.feehi.com
  5. * Email: job@feehi.com
  6. * Created at: 2017-09-12 14:46
  7. */
  8. /**
  9. * @var $this yii\web\View
  10. * @var $model backend\models\form\RBACPermissionForm
  11. * @var $groups []
  12. * @var $categories []
  13. */
  14. use backend\widgets\ActiveForm;
  15. use common\widgets\JsBlock;
  16. $this->title = "Permissions";
  17. ?>
  18. <div class="row">
  19. <div class="col-sm-12">
  20. <div class="ibox">
  21. <?= $this->render('/widgets/_ibox-title') ?>
  22. <div class="ibox-content">
  23. <?php $form = ActiveForm::begin(); ?>
  24. <?= $form->field($model, 'route')->textInput() ?>
  25. <div class="hr-line-dashed"></div>
  26. <?= $form->field($model, 'method')->dropDownList(['GET'=>'GET', 'POST'=>'POST']) ?>
  27. <div class="hr-line-dashed"></div>
  28. <?= $form->field($model, 'description')->textInput() ?>
  29. <div class="hr-line-dashed"></div>
  30. <?= $form->field($model, 'sort')->textInput() ?>
  31. <div class="hr-line-dashed"></div>
  32. <?= $form->field($model, 'group', ['template'=>'{label}<div class="col-sm-{size}"><input name="groupType" checked value="new" type="radio">' . Yii::t('app', 'Input new') . ' &nbsp;&nbsp;<input value="select" name="groupType" type="radio">' . Yii::t('app', 'Chose from exists') . '<div class="form-group field-rbacpermissionform-group required">{input}</div>{error}</div>{hint}'])->textInput()?>
  33. <div class="hr-line-dashed"></div>
  34. <?= $form->field($model, 'category', ['template'=>'{label}<div class="col-sm-{size}"><input name="categoryType" checked value="new" type="radio">' . Yii::t('app', 'Input new') . ' &nbsp;&nbsp;<input value="select" name="categoryType" type="radio">' . Yii::t('app', 'Chose from exists') . '<div class="form-group field-rbacpermissionform-category required">{input}</div>{error}</div>{hint}'])->textInput()?>
  35. <div class="hr-line-dashed"></div>
  36. <?= $form->defaultButtons() ?>
  37. <?php ActiveForm::end(); ?>
  38. </div>
  39. </div>
  40. </div>
  41. </div>
  42. <?php JsBlock::begin() ?>
  43. <script>
  44. $(document).ready(function () {
  45. $("input[name=groupType]").change(function () {
  46. var val = $(this).val();
  47. var input;
  48. if( val === 'select' ){
  49. input = '<?= str_replace("\n", '', $form->field($model, 'group', ['template'=>'{input}'])->label(false)->dropDownList($groups) ) ?>';
  50. }else{
  51. input = '<?= str_replace("\n", '',$form->field($model, 'group', ['template'=>'{input}'])->label(false)->textInput() )?>';
  52. }
  53. $(this).parent().children("div.field-rbacpermissionform-group").remove();
  54. $(this).parent().append(input);
  55. })
  56. $("input[name=categoryType]").change(function () {
  57. var val = $(this).val();
  58. var input;
  59. if( val === 'select' ){
  60. input = '<?= str_replace("\n", '', $form->field($model, 'category', ['template'=>'{input}'])->label(false)->dropDownList($categories) ) ?>';
  61. }else{
  62. input = '<?= str_replace("\n", '',$form->field($model, 'category', ['template'=>'{input}'])->label(false)->textInput() )?>';
  63. }
  64. $(this).parent().children("div.field-rbacpermissionform-category").remove();
  65. $(this).parent().append(input);
  66. })
  67. })
  68. </script>
  69. <?php JsBlock::end() ?>