title = Yii::$app->name . ' | ' . Yii::t( 'sandbox/index/all', 'Заголовок страницы поданных заявлений: `Проверка заявлений`' ); $appLanguage = Yii::$app->language; ChangeGridViewPaginationAsset::register($this); $this->registerCssFile('css/manager_style.css', ['depends' => ['frontend\assets\FrontendAsset']]); $timeZoneError = false; $timeZoneLocal = date_default_timezone_get(); $timeZoneGlobal = ini_get('date.timezone'); if (strcmp($timeZoneLocal, $timeZoneGlobal) || strlen((string)$timeZoneGlobal) < 1) : echo Html::tag( 'div', Yii::t( 'sandbox/index/all', 'Текст ошибки о не корректно настроенном часовом поясе; на стр. поданных заявлений: `В портале не установлен часовой пояс. Вы не сможете работать с порталом до того, как проблема будет решена. Приносим извинения за неудобства. Обратитесь к администратору портала.`' ), ['class' => 'alert alert-danger'] ); else : ?>
user->identity->hasCampaignsToModerateWithRestrictedResubmission()) : ?> render('partial/_notification_and_chat_btns') ?>

$currentUser->username] ), [ 'class' => 'alert alert-danger', 'role' => 'alert' ] ); } else { $emptyText = ''; } ?> filters) : ?>
'login-form', 'action' => Url::toRoute(['sandbox/' . ($type === 'moderate' ? 'index' : $type)]), 'method' => 'GET', ]) ?> filters as $filter) : ?> 'top']; switch ($filter->name) { case 'status': case 'agreement': case 'preferences': case 'statusBlock': case 'campaign_code': case 'educationForm': case 'targetReception': case 'review_agreement': case 'hasIndividualAchievement': case 'financial_basis': case 'education_level': case 'admission_category': $options['placeholder'] = Yii::t( 'sandbox/index/filter-block', 'Текст для пустого значения выпадающего списка; блока с фильтрами на стр. поданных заявлений: `Выберите ...`' ); $options['class'] = 'col-12 form-control small_font'; $data = []; switch ($filter->name) { case 'statusBlock': $data = BachelorApplication::getBlockStatusAliasList(); break; case 'educationForm': $data = ArrayHelper::merge( ['' => ''], ArrayHelper::map( Speciality::find() ->select(['eduform_name', 'education_form_ref.reference_uid', 'education_form_ref_id']) ->joinWith('educationFormRef education_form_ref') ->groupBy(['eduform_name', 'education_form_ref.reference_uid', 'education_form_ref_id']) ->where([Speciality::tableName() . '.archive' => false]) ->all(), 'educationFormRef.reference_uid', 'eduform_name' ) ); break; case 'campaign_code': $data = ArrayHelper::merge( [null => Yii::t( 'sandbox/index/filter-block', 'Текст для значения "Все ПК" в выпадающем списке; блока с фильтрами на стр. поданных заявлений: `Все ПК`' )], ArrayHelper::map($listOfAdmissionCampaign, 'reference_uid', 'name') ); break; case 'status': $data = BachelorApplication::sandboxMessages(); break; case 'agreement': case 'preferences': case 'targetReception': case 'review_agreement': case 'hasIndividualAchievement': $data = [ null => Yii::t( 'sandbox/index/filter-block', 'Текст для значения "Все" в выпадающем списке; блока с фильтрами на стр. поданных заявлений: `Все`' ), 1 => Yii::t( 'sandbox/index/filter-block', 'Текст для значения "Есть" в выпадающем списке; блока с фильтрами на стр. поданных заявлений: `Есть`' ), 2 => Yii::t( 'sandbox/index/filter-block', 'Текст для значения "Нет" в выпадающем списке; блока с фильтрами на стр. поданных заявлений: `Нет`' ) ]; break; case 'financial_basis': $data = ArrayHelper::merge( ['' => ''], ArrayHelper::map( Speciality::find() ->select(['finance_name', 'education_source_ref.reference_uid', 'education_source_ref_id']) ->joinWith('educationSourceRef education_source_ref') ->groupBy(['finance_name', 'education_source_ref.reference_uid', 'education_source_ref_id']) ->where([Speciality::tableName() . '.archive' => false]) ->all(), 'educationSourceRef.reference_uid', 'finance_name' ) ); break; case 'education_level': $data = ArrayHelper::merge( ['' => ''], ArrayHelper::map( Speciality::find() ->select(['edulevel_name', 'education_level_ref.reference_uid', 'education_level_ref_id']) ->joinWith('educationLevelRef education_level_ref') ->groupBy(['edulevel_name', 'education_level_ref.reference_uid', 'education_level_ref_id']) ->where([Speciality::tableName() . '.archive' => false]) ->all(), 'educationLevelRef.reference_uid', 'edulevel_name' ) ); break; case 'admission_category': $data = ArrayHelper::merge( ['' => ''], ArrayHelper::map( AdmissionCategory::find()->notMarkedToDelete()->active()->all(), 'ref_key', 'description' ) ); break; } $field = $form->field($searchModel, $filter->name) ->widget(Select2::class, [ 'language' => $appLanguage, 'data' => $data, 'options' => $options, 'pluginOptions' => ['allowClear' => true], ]); break; case 'citizenship': case 'historyChanges': case 'specialityName': case 'lastManagerName': $options['multiple'] = true; $options['placeholder'] = Yii::t( 'sandbox/index/filter-block', 'Текст для пустого значения выпадающего списка; блока с фильтрами на стр. поданных заявлений: `Выберите ...`' ); $options['class'] = 'col-12 form-control small_font'; $data = []; switch ($filter->name) { case 'specialityName': $firstQuery = Speciality::find() ->select(['speciality_name', 'directionRef.reference_uid', 'direction_ref_id']) ->joinWith('directionRef directionRef') ->leftJoin( 'bachelor_speciality', 'dictionary_speciality.id = bachelor_speciality.speciality_id' ) ->where(['dictionary_speciality.archive' => false]) ->andWhere(['bachelor_speciality.archive' => false]) ->andWhere([ 'in', 'bachelor_speciality.application_id', (clone $applications->query)->select('bachelor_application.id') ]) ->groupBy(['speciality_name', 'directionRef.reference_uid', 'direction_ref_id']); if (isset($searchModel->{$filter->name}) && $searchModel->{$filter->name}) { $additionalQuery = Speciality::find() ->alias('additional_dictionary_spec') ->select(['speciality_name', 'directionRef.reference_uid', 'direction_ref_id']) ->joinWith('directionRef directionRef') ->where(['additional_dictionary_spec.archive' => false]) ->andWhere([ 'in', 'directionRef.reference_uid', $searchModel->{$filter->name} ]); $firstQuery->union($additionalQuery); } $data = ArrayHelper::map( $firstQuery->all(), 'directionRef.reference_uid', 'speciality_name' ); break; case 'historyChanges': $data = ApplicationHistory::historyTypeNames(); break; case 'citizenship': $data = ArrayHelper::merge( [null => Yii::t( 'sandbox/index/filter-block', 'Текст для значения "Все" в выпадающем списке; блока с фильтрами на стр. поданных заявлений: `Все`' )], ArrayHelper::map( Country::find()->active()->orderBy('name')->all(), 'id', 'name' ) ); break; case 'lastManagerName': $userTableName = User::tableName(); $rbacAuthAssignmentTableName = RBACAuthAssignment::tableName(); $data = ArrayHelper::map( (new Query()) ->select("{$userTableName}.username, {$userTableName}.id") ->from($userTableName) ->leftJoin($rbacAuthAssignmentTableName, "{$userTableName}.id = {$rbacAuthAssignmentTableName}.user_id") ->andWhere(["{$rbacAuthAssignmentTableName}.item_name" => 'manager']) ->all(), 'id', 'username' ); break; } $field = $form->field($searchModel, $filter->name) ->widget(Select2::class, [ 'language' => $appLanguage, 'value' => $searchModel->{$filter->name}, 'data' => $data, 'options' => $options, 'pluginOptions' => [ 'tags' => true, 'tokenSeparators' => [',', ' '], 'maximumInputLength' => 10 ], ]); break; case 'sent_at': case 'birthday': case 'created_at': case 'last_management_at': $field = $form->field($searchModel, $filter->name) ->widget(DatePicker::class, [ 'language' => $appLanguage, 'separator' => Yii::t( 'sandbox/index/filter-block', 'Текст для междометия дат стоящим между дат начала и конца; блока с фильтрами на стр. поданных заявлений: `по`' ), 'name2' => "to_{$filter->name}", 'attribute2' => "to_{$filter->name}", 'type' => DatePicker::TYPE_RANGE, 'options' => array_merge( ['placeholder' => Yii::t( 'sandbox/index/filter-block', 'Текст для пустого значения даты начала; блока с фильтрами на стр. поданных заявлений: `Начало`' )], $options ), 'options2' => array_merge( ['placeholder' => Yii::t( 'sandbox/index/filter-block', 'Текст для пустого значения даты окончания; блока с фильтрами на стр. поданных заявлений: `Конец`' )], $options ), 'pluginOptions' => [ 'autoclose' => false, 'format' => 'dd.mm.yyyy', ] ]); break; case 'exam_form': $data = ArrayHelper::map( StoredDisciplineFormReferenceType::findAll(['archive' => false]), 'reference_uid', 'reference_name' ); $examCode = Yii::$app->configurationManager->getCode('discipline_exam_form'); if (isset($data[$examCode])) { $data = [$examCode => $data[$examCode]] + $data; } $egeCode = Yii::$app->configurationManager->getCode('discipline_ege_form'); if (isset($data[$egeCode])) { $data = [$egeCode => $data[$egeCode]] + $data; } $field = $form->field($searchModel, $filter->name)->widget(Select2::class, [ 'data' => $data, 'options' => [ 'data-placement' => 'top', 'placeholder' => Yii::t( 'sandbox/index/filter-block', 'Текст для пустого значения выпадающего списка; блока с фильтрами на стр. поданных заявлений: `Выберите ...`' ), 'class' => 'col-12 form-control small_font', ], 'pluginOptions' => ['allowClear' => true], ]); break; case 'phone_number': $field = $form->field($searchModel, $filter->name)->widget(MaskedInput::class, [ 'mask' => [PhoneWidget::$phoneNumberMask], 'clientOptions' => ['clearMaskOnLostFocus' => true, 'greedy' => false], 'options' => [ 'placeholder' => '+7(999)9999999', 'data-mask' => PhoneWidget::$phoneNumberMask, 'class' => 'col-12 form-control small_font', ] ]); break; case 'snils': $field = $form->field($searchModel, $filter->name)->widget(MaskedInput::class, [ 'mask' => '999-999-999 99', 'clientOptions' => ['clearMaskOnLostFocus' => false], 'options' => [ 'class' => 'col-12 form-control small_font', ], ]); break; default: $field = $form->field($searchModel, $filter->name) ->textInput($options); break; } ?> label(Yii::t( 'abiturient/filter-table', $filter->label )), ['class' => 'col-xl-3 col-lg-4 col-md-6 col-12'] ) ?>
'btn btn-primary'] ) ?> filterLoaded) { $resetType = ('moderate' === $type) ? 'index' : $type; echo Html::a( Yii::t( 'sandbox/index/filter-block', 'Подпись для кнопки сброса фильтров; блока с фильтрами на стр. поданных заявлений: `Сбросить`' ), ['sandbox/reset-filters', 'type' => $resetType], ['class' => 'btn btn-outline-secondary'] ); } ?>
true, 'headerContainer' => ['class' => 'thead-light'], 'tableOptions' => ['class' => 'table-sm valign-middle'], 'striped' => false, 'summary' => false, 'emptyText' => $emptyText, 'dataProvider' => $applications, 'rowOptions' => function ($model) use ($type) { if ( $type != 'want-delete' && $model->status == BachelorApplication::STATUS_WANTS_TO_RETURN_ALL ) { return ['class' => 'table-danger']; } $tnBachelorApplication = BachelorApplication::tableName(); $hasAdmissionAgreement = BachelorApplication::hasAdmissionAgreementQuery( BachelorApplication::find() ->andWhere(["{$tnBachelorApplication}.id" => $model->id]) )->exists(); if ($hasAdmissionAgreement) { return ['class' => 'table-info']; } return []; }, 'pager' => [ 'firstPageLabel' => '<<', 'prevPageLabel' => '<', 'nextPageLabel' => '>', 'lastPageLabel' => '>>', ], 'columns' => $searchModel->getColumnsLayout($type), 'formatter' => [ 'class' => 'yii\i18n\Formatter', 'nullDisplay' => '' ], ]); ?>
formName()}[pageSize]", $searchModel->pageSize, ArrayHelper::map( [20, 50, 100, 200, 500], function ($data) { return $data; }, function ($data) { return $data; } ), ['itemOptions' => ['labelOptions' => [ 'onclick' => 'window.changePagination($(this))', 'class' => 'btn btn-success pagination_size', ]]] ) ?>
' . Yii::t( 'sandbox/index/all', 'Подпись кнопки для быстрой прокрутки в начало страницы; на стр. поданных заявлений: `Наверх`' ), [ 'id' => 'btn_to_up_scroll', 'onclick' => 'window.toTop()', 'class' => 'btn btn-warning pull-right', ] ) ?>