/** * Deletes an existing DataRequest model. * If deletion is successful, the browser will be redirected to the 'index' page. * @param integer $id * @return mixed */ public function actionDelete($id) { if (AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'dev' || AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'master' || AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'admin') { $request = $this->findModel($id); $request->request_status = 4; $request->save(); Yii::$app->session->setFlash('success', 'Deleted successfully'); return $this->redirect(['index']); } }
public static function getRoles() { if (!Yii::$app->user->isGuest) { $role = AuthAssignment::getAssignment(Yii::$app->user->identity->id); } if ($role === 'dev' || $role === 'master') { return static::find()->select('name')->where(['type' => 1])->all(); } else { return static::find()->select('name')->where(['type' => 1])->andWhere(['!=', 'name', 'dev'])->andWhere(['!=', 'name', 'master'])->all(); } }
/** * Displays a single StudentForm model. * @param string $id * @return mixed */ public function actionView($id) { if (!Yii::$app->user->isGuest && \app\rbac\models\AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'parent') { $request = RequestDataAccess::find()->where(['user_id' => Yii::$app->user->identity->id])->andWhere(['request_status' => 2])->one(); if (!empty($request)) { return $this->render('view', ['model' => $this->findModel($id)]); } else { throw new NotFoundHttpException('The requested page does not exist.'); } } else { return $this->render('view', ['model' => $this->findModel($id)]); } }
public function actionRequestAccess($data) { if (Yii::$app->request->isAjax && !Yii::$app->user->isGuest) { Yii::$app->response->format = Response::FORMAT_JSON; $object = json_decode($data); if (AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'parent') { $request = new RequestDataAccess(); if (!RequestDataAccess::find()->where(['user_id' => Yii::$app->user->identity->id])->andWhere(['student_id' => $object->sid])->exists()) { $request->request_text = $object->sid; $request->user_id = Yii::$app->user->identity->id; $request->save(); $data = array('sent' => true, 'saved' => true); } else { $data = array('sent' => true, 'saved' => false); } return $data; } } }
<?php use app\rbac\models\AuthAssignment; use app\models\DataHelper; ?> <?php if (!Yii::$app->user->isGuest) { switch (AuthAssignment::getAssignment(Yii::$app->user->identity->id)) { case 'dev': echo DataHelper::menu('dev'); break; case 'master': echo DataHelper::menu('master'); break; case 'admin': echo DataHelper::menu('admin'); break; case 'principal': echo DataHelper::menu('principal'); break; case 'teacher': echo DataHelper::menu('teacher'); break; case 'cashier': echo DataHelper::menu('cashier'); break; case 'staff': echo DataHelper::menu('staff'); break; default:
/** * Deletes an existing EntranceExamForm model. * If deletion is successful, the browser will be redirected to the 'index' page. * @param string $id * @return mixed */ public function actionDelete($id) { if (AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'dev') { Yii::$app->session->setFlash('success', 'Deleted successfully'); return $this->redirect(['index']); } else { //$this->findModel($id)->delete(); return $this->redirect(['index']); } }
<?php Pjax::begin(['id' => 'anc-list-modal', 'timeout' => 360000]); ?> <?php echo UiListView::widget(['dataProvider' => DataCenter::recentAnnouncement(Yii::$app->session->get('announcementSize')), 'options' => ['class' => 'ui divided relaxed items', 'style' => 'padding-top: 10px;'], 'layout' => '{items}', 'itemView' => '_announcement-list']); ?> <?php Pjax::end(); ?> <div style="text-align: center; margin-bottom: -15px; margin-top: 10px; padding-bottom: 15px;"> <button id="view-more-announcement" class="ui fluid basic small circular icon button">View More</button> </div> <br> </div> <?php if (AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'dev' || AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'master' || AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'admin' || AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'principal') { ?> <div class="announcement-write"> <div class="ui fluid container"> <?php echo Html::textarea('', null, ['id' => 'ann-form', 'type' => 'textarea', 'style' => 'height: 60px; margin-bottom: 10px;', 'class' => 'form-control pva-form-control', 'maxlength' => 255, 'rows' => 4]); ?> <div class="ui right floated"> <button id="anc-send" type="button" method="post" class="ui big positive button" style="margin-right: 0;">Add</button> </div> </div> </div> <?php } ?> </div>
public function generateUpdate($options) { switch (Yii::$app->controller->id) { case 'entrance-exam': if (AuthAssignment::getAssignment(Yii::$app->user->identity->id) === 'principal') { $button1 = Html::button('Save', ['type' => 'submit', 'class' => 'ui link fluid huge primary button']); } else { $button1 = ''; } break; default: $button1 = Html::button('Save', ['type' => 'submit', 'class' => 'ui link fluid huge primary button']); break; } $button2 = Html::a('View', ['view', 'id' => $options['id']], ['class' => 'ui link fluid huge teal button']); $button3 = Html::a('Cancel', ['/' . Yii::$app->controller->id], ['class' => 'ui link fluid huge grey button']); $item = Html::tag('div', implode('<p></p>', [$button1, $button2, $button3]), ['class' => 'item']); $template = Html::tag('div', '<div class="ui fluid huge label item"><span>Options</span></div>' . $item, ['class' => ['ui fluid vertical menu']]); return $template; }
/** * Updates an existing User and Role models. * If update is successful, the browser will be redirected to the 'view' page. * * @param integer $id The user id. * @return string|\yii\web\Response * * @throws NotFoundHttpException */ public function actionUpdate($id) { // get role $role = Role::findOne(['user_id' => $id]); // get user details $user = $this->findModel($id); // Dev/Master can update everyone`s roles // admin will not be able to update role of Dev/Master if (AuthAssignment::getAssignment(Yii::$app->user->identity->id) !== 'dev' || AuthAssignment::getAssignment(Yii::$app->user->identity->id) !== 'master') { if ($role === 'dev' || $role === 'master') { throw new ForbiddenHttpException('Unauthorized Access', 403); } } // load user data with role and validate them if ($user->load(Yii::$app->request->post()) && $role->load(Yii::$app->request->post()) && Model::validateMultiple([$user, $role])) { // only if user entered new password we want to hash and save it if ($user->password) { $user->setPassword($user->password); } // if admin is activating user manually we want to remove account activation token if ($user->status == User::STATUS_ACTIVE && $user->account_activation_token != null) { $user->removeAccountActivationToken(); } $user->save(false); $role->save(false); Yii::$app->session->setFlash('success', 'Saved successfully'); return $this->redirect(['view', 'id' => $user->id]); } else { return $this->render('update', ['user' => $user, 'role' => $role]); } }
<?php } ?> <div class="ui top fixed huge inverted menu"> <div class="ui link item"> <span><a href="<?php echo Yii::$app->request->baseUrl; ?> "><img src="<?php echo Yii::$app->params['logo']; ?> " alt="Proverbs" class="ui mini avatar image"></a></span> </div> <div class="right floated small menu"> <?php if (!Yii::$app->user->isGuest && app\rbac\models\AuthAssignment::getAssignment(Yii::$app->user->identity->id) !== 'parent') { ?> <div id="new-announcement" class="ui top pointing dropdown item"> <i class="icon-flag"></i> <div class="notify announcement hidden"></div> <?php echo $this->render('announcement'); ?> </div> <?php } ?> <div class="ui link dropdown item"> <?php echo Html::img(Yii::$app->user->isGuest ? Yii::$app->request->baseUrl . Yii::$app->params['avatar'] : !empty(Yii::$app->user->identity->profile_image) ? Url::to(['/uthumbnail', 'id' => Yii::$app->user->identity->profile_image]) : Yii::$app->request->baseUrl . Yii::$app->params['avatar'], ['id' => 'thumbnail', 'style' => 'background: #f7f7f7;', 'class' => 'ui right thumbnail image', 'alt' => Yii::$app->user->identity->username]) . Html::tag('span', Yii::$app->user->identity->username . '<i class="dropdown icon" style="color: white; margin: 0 5px;"></i>', ['style' => 'margin: auto 10px; color: white;']); ?>
$avatar = Yii::$app->request->baseUrl . Yii::$app->params['avatar']; !empty($model->students_profile_image) ? $img = Yii::$app->request->baseUrl . '/uploads/students/' . $model->students_profile_image : ($img = $avatar); $model->isNewRecord ? $this->title = 'New' : ($this->title = implode(' ', [$model->first_name, !empty(trim($model->middle_name)) ? ucfirst(substr($model->middle_name, 0, 1)) . '.' : '', $model->last_name])); ?> <p></p> <?php $form = ActiveForm::begin(['class' => 'ui loading form']); ?> <div class="ui two column stackable grid"> <div class="four wide rounded column"> <div class="ui center aligned stackable cards"> <div class="card"> <div class="image"> <div id="image-upload-wrap"> <?php if (AuthAssignment::getAssignment(Yii::$app->user->identity->id) !== 'principal') { ?> <div id="image-upload-button"> <?php echo $form->field($model, 'file')->fileInput(['id' => 'file-upload-btn', 'class' => '', 'style' => 'color: #fff;'])->label(false); ?> </div> <?php } ?> </div> <?php if (!empty($model->students_profile_image)) { ?> <?php echo Html::img(['/file', 'id' => $model->students_profile_image]);