/** * @return EntityQuery */ public static function findVysshegoProfessionalnogoObrazovaniya() { $sql_val = EtapObrazovaniya::asSql(EtapObrazovaniya::VYSSHEE_PROFESSIONALNOE_OBRAZOVANIE); $cond = Yii::$app->db->quoteValue($sql_val) . ' = any([[etapy_obrazovaniya]])'; //todo refactor own query with op return static::find()->where($cond); }
public function rules() { return [[['familiya', 'imya', 'otchestvo'], SqueezeLineFilter::className()], [['familiya', 'imya', 'otchestvo'], ImyaChelovekaValidator::className()], [['familiya', 'imya'], 'required'], ['otchestvo', 'default'], ['email', 'email'], ['email', 'required'], ['telefon', TelefonValidator::className()], ['telefon', 'default'], [['rabotaOrgAdres', 'rabotaOrgVedomstvo'], 'integer'], [['rabotaOrgAdres', 'rabotaOrgVedomstvo'], 'required'], ['rabotaOrgId', 'integer'], ['rabotaOrgId', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'rabotaOrgNazvanie'], ['rabotaOrgId', 'default'], ['rabotaOrgNazvanie', SqueezeLineFilter::className()], ['rabotaOrgNazvanie', NazvanieValidator::className()], ['rabotaOrgNazvanie', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'rabotaOrgId'], ['rabotaOrgNazvanie', 'default'], ['rabotaDolzhnostId', 'integer'], ['rabotaDolzhnostId', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'rabotaDolzhnostNazvanie'], ['rabotaDolzhnostId', 'default'], ['rabotaDolzhnostNazvanie', SqueezeLineFilter::className()], ['rabotaDolzhnostNazvanie', NazvanieValidator::className()], ['rabotaDolzhnostNazvanie', RequiredWhenTargetIsEmpty::className(), 'targetModel' => $this, 'targetAttribute' => 'rabotaDolzhnostId'], ['rabotaDolzhnostNazvanie', 'default'], ['rabotaEtapObrazovaniya', EnumValidator::className(), 'enumClass' => EtapObrazovaniya::className()], ['rabotaEtapObrazovaniya', 'default'], ['rabotaTelefon', TelefonValidator::className()], ['rabotaTelefon', 'default'], ['login', LoginFilter::className()], ['login', LoginValidator::className()], ['login', 'unique', 'targetClass' => Polzovatel::className(), 'targetAttribute' => 'login'], ['login', 'required'], ['podtverzhdenieParolya', 'compare', 'compareAttribute' => 'parol', 'message' => 'Пароль должен совпадать с подтверждением пароля.'], [['parol', 'podtverzhdenieParolya'], 'required'], [['roli'], 'required']]; }
public function asEtapObrazovaniya($value) { return static::asEnum($value, EtapObrazovaniya::className()); }
?> <?php echo $form->field($model, 'rabotaOrgAdres')->widget(Select2::classname(), ['data' => AdresnyjObjekt::findBurRajon()->commonOnly()->formattedAll(EntityQuery::DROP_DOWN, 'formalnoeNazvanie')]); ?> <?php echo SwitchingFields::widget(['commonOptions' => ['form' => $form, 'model' => $model, 'options' => ['template' => "{label}\n<div class=\"col-md-8\">\n{input}\n{hint}\n{error}\n{switch}\n</div>", 'options' => ['class' => 'form-group']]], 'field1Options' => ['attribute' => 'rabotaOrgId', 'switchIntroText' => 'Не нашли в списке?', 'switchLinkText' => 'Нажмите здесь чтобы ввести организацию вручную.', 'widgetClass' => DepDrop::classname(), 'widgetConfig' => ['type' => DepDrop::TYPE_SELECT2, 'data' => [$model->rabotaOrgId => null], 'pluginOptions' => ['depends' => [Html::getInputId($model, 'rabotaOrgVedomstvo'), Html::getInputId($model, 'rabotaOrgAdres')], 'loadingText' => 'Загрузка организаций...', 'initialize' => true, 'placeholder' => 'Выберите образовательную организацию', 'url' => Url::to(['kadry/rabota-org'])]], 'widgetConfigDisabled' => ['disabled' => true]], 'field2Options' => ['attribute' => 'rabotaOrgNazvanie', 'switchIntroText' => 'Возможно ваша организация есть в списке.', 'switchLinkText' => 'Нажмите здесь чтобы найти её в списке.']]); ?> <?php echo SwitchingFields::widget(['commonOptions' => ['form' => $form, 'model' => $model, 'options' => ['template' => "{label}\n<div class=\"col-md-8\">\n{input}\n{hint}\n{error}\n{switch}\n</div>", 'options' => ['class' => 'form-group']]], 'field1Options' => ['attribute' => 'rabotaDolzhnostId', 'switchIntroText' => 'Не нашли в списке?', 'switchLinkText' => 'Нажмите здесь чтобы ввести должность вручную.', 'widgetClass' => Select2::className(), 'widgetConfig' => ['data' => Dolzhnost::find()->commonOnly()->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie')], 'widgetConfigDisabled' => ['disabled' => true]], 'field2Options' => ['attribute' => 'rabotaDolzhnostNazvanie', 'switchIntroText' => 'Возможно ваша должность есть в списке.', 'switchLinkText' => 'Нажмите здесь чтобы найти её в списке.']]); ?> <?php echo $form->field($model, 'rabotaEtapObrazovaniya')->widget(Select2::className(), ['data' => EtapObrazovaniya::namesMap()]); ?> <?php echo $form->field($model, 'rabotaTelefon')->widget(MaskedInput::className(), ['mask' => '+79999999999']); ?> <div class="fields-group-heading"> <h3>Роли пользователя в системе</h3> </div> <?php echo $form->field($model, 'roli')->widget(Select2::classname(), ['data' => Rol::names(), 'options' => ['multiple' => true, 'placeholder' => 'Выберите роль ...']]); ?> </div>
public function getEtapyObrazovaniyaSpisok() { $str = ''; foreach ($this->etapy_obrazovaniyaAsArray as $val) { if (!empty($val)) { $str = $str . EtapObrazovaniya::getName($val) . "; "; } } return $str; }
use yii\helpers\Url; use app\entities\Dolzhnost; use app\enums\EtapObrazovaniya; use Yii; use app\widgets\Select3; $form = ActiveForm::begin(['id' => 'dolzhnostForm', 'options' => ['tabindex' => false]]); echo $form->field($model, 'fizLicoId')->hiddenInput()->label(false); echo $form->field($model, 'organizaciyaAdress')->widget(Select2::className(), ['data' => AdresnyjObjekt::findBurRajon()->commonOnly()->formattedAll(EntityQuery::DROP_DOWN, 'formalnoeNazvanie'), 'options' => ['placeholder' => 'Выберите район / город']]); echo $form->field($model, 'organizaciyaVedomstvo')->widget(Select2::classname(), ['data' => Vedomstvo::find()->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie'), 'options' => ['placeholder' => 'Выберите ведомство']]); echo '<label>Организация</label>'; echo Html::hiddenInput('', $model->organizaciyaId, ['id' => 'organizaciyaIdHiddenInput']); $depdropUrl = '/attestaciya/rabota-org' . ($model->organizaciyaId ? '?oid=' . $model->organizaciyaId : ''); echo $form->field($model, 'organizaciyaId')->widget(DepDrop::classname(), ['type' => DepDrop::TYPE_SELECT2, 'pluginOptions' => ['depends' => [Html::getInputId($model, 'organizaciyaVedomstvo'), Html::getInputId($model, 'organizaciyaAdress')], 'placeholder' => 'Выберите школу', 'url' => Url::to([$depdropUrl]), 'initialize' => true, 'allowClear' => true], 'pluginEvents' => ['change' => 'function (){ var organizaciyaIdInput = \'' . Html::getInputId($model, 'organizaciyaId') . '\'; var organizaciyaNazvanieInput = \'' . Html::getInputId($model, 'organizaciyaNazvanie') . '\'; if ($(\'#\'+organizaciyaIdInput).val()){ $(\'#\'+organizaciyaNazvanieInput).val(""); } }']])->label(false); echo '<p>Не нашли организацию в списке? <span class="slink" onclick="showOrganizaciyaNazvanie(\'' . Html::getInputId($model, 'organizaciyaNazvanie') . '\')">ввести наименование организации вручную</span></p>'; echo $form->field($model, 'organizaciyaNazvanie')->input('text', ['class' => 'hidden form-control', 'placeholder' => 'Наименование организации', 'onkeyup' => 'onOrganizaciyaNazvanieKeyUp(\'' . Html::getInputId($model, 'organizaciyaId') . '\',this.value,event)'])->label(false); //echo $form->field($model,'dolzhnostId')->widget(Select2::className(),[ // 'data' => Dolzhnost::getObshieDolzhnosti()->orderBy('nazvanie')->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie'), // 'options' => ['placeholder' => 'Выберите должность'], //]); echo Select3::widget(['model' => $model, 'attribute' => "dolzhnostId", 'secondAttribute' => "dolzhnostNazvanie", 'data' => Dolzhnost::getObshieDolzhnosti()->orderBy('nazvanie')->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie'), 'placeholder' => 'Выберите должность', 'secondPlaceholder' => 'Введите наименование должности']); //dolzhnostNazvanie echo $form->field($model, 'etapObrazovaniya')->widget(Select2::className(), ['data' => EtapObrazovaniya::namesMap(), 'options' => ['placeholder' => 'Выберите уровень образования']]); echo '<button class="btn btn-default" onclick="close_modal()">Закрыть</button> <button class="btn btn-primary">Сохранить</button>'; ActiveForm::end();
public function transformations() { return [['etapObrazovaniyaAsEnum' => 'etapObrazovaniya', EnumTransformer::className(), ['enum' => EtapObrazovaniya::className()]]]; }
/** * @var $model DolzhnostForm */ ?> <?php $form = ActiveForm::begin(['layout' => 'horizontal']); ?> <?php echo $form->field($model, 'dolzhnostDir')->widget(ComboWidget::className(), ['data' => Dolzhnost::find()->commonOnly()->formattedAll(EntityQuery::DROP_DOWN, 'nazvanie')]); ?> <?php echo $form->field($model, 'org_tip')->dropDownList(OrgTipDolzhnosti::namesMap()); ?> <?php echo $form->field($model, 'etap_obrazovaniya')->dropDownList(EtapObrazovaniya::namesMap()); ?> <?php echo $form->field($model, 'stazh')->widget(TouchSpin::className()); ?> <?php echo Html::submitButton('Сохранить', ['class' => 'btn btn-primary']); ?> <?php ActiveForm::end();
public function rules() { return [['dolzhnostDir', ComboValidator::className(), 'directoryAttribute' => 'dolzhnostDir', 'required' => true], ['dolzhnostDir', 'required'], ['org_tip', EnumValidator::className(), 'enumClass' => OrgTipDolzhnosti::className()], ['org_tip', 'required'], ['etap_obrazovaniya', EnumValidator::className(), 'enumClass' => EtapObrazovaniya::className()], ['etap_obrazovaniya', 'default'], ['stazh', StazhValidator::className()], ['stazh', 'required']]; }
use yii\grid\GridView; use app\enums\EtapObrazovaniya; use app\entities\Organizaciya; /* @var $this yii\web\View */ /* @var $searchModel app\models\organizaciya\OrganizaciyaSearch */ /* @var $dataProvider yii\data\ActiveDataProvider */ $this->title = 'Справочник организаций'; $this->params['breadcrumbs'][] = $this->title; ?> <div class="organizaciya-index"> <h1><?php echo Html::encode($this->title); ?> </h1> <?php // echo $this->render('_search', ['model' => $searchModel]); ?> <p> <?php echo Html::a('Новая организация', ['create'], ['class' => 'btn btn-success']); ?> </p> <?php echo GridView::widget(['dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => ['nazvanie', 'organizaciyaAdres', 'adres_dom', ['attribute' => 'etapyObrazovaniyaSpisok', 'filter' => EtapObrazovaniya::namesMap()], 'obschij:boolean', 'vedomstvoNazvanie', ['class' => 'yii\\grid\\ActionColumn']]]); ?> </div>