示例#1
0
 /**
  * Finds the User model based on its primary key value.
  * If the model is not found, a 404 HTTP exception will be thrown.
  * @param integer $id
  * @return User the loaded model
  * @throws NotFoundHttpException if the model cannot be found
  */
 protected function findModel($id)
 {
     if (($model = Group::findOne($id)) !== null) {
         return $model;
     } else {
         throw new NotFoundHttpException('The requested page does not exist.');
     }
 }
示例#2
0
 public function showGallery()
 {
     $app = Yii::$app;
     $groups = Group::getRoots();
     $products = [];
     if (!empty($groups)) {
         $default_group = $groups[0]->id;
         $group = $app->request->getQueryParam('group', $default_group);
         $products = Group::findOne($group)->linkedProducts;
     }
     return $this->renderPartial('_gallery', ['groups' => (array) $groups, 'products' => (array) $products]);
 }
 public function processCode($fullCode)
 {
     $code = $fullCode['code'];
     $original = $fullCode['original'];
     if ($this->isCodeActive($code)) {
         $group = Group::findOne($code->z_p_id)->toArray();
         $bank = Bank::findOne($code->z_b_id)->toArray();
         $form = Form::findOne(['f_klasse' => $bank['klasse'], 'f_p_id' => $group['p_id']]);
         $style = Style::findOne(['s_b_id' => $bank['b_id'], 's_p_id' => $group['p_id']]);
         if (!$style) {
             $style = Settings::getSetting('style');
         } else {
             $style = $style->style;
         }
         $label = Yii::$app->params['default_next_label'];
         $message = Yii::$app->params['default_next_message'];
         if ($this->language != "default") {
             $language = Language::findOne($this->language);
             if ($language != null) {
                 if ($language->label != '') {
                     $label = $language->label;
                 }
                 if ($language->message != '') {
                     $message = $language->message;
                 }
             }
         }
         Yii::$app->session['anketData'] = ['original' => $original, 'code' => $code->toArray(), 'group' => $group, 'bank' => $bank, 'form' => $form->f_id, 'status' => 0, 'lang' => $this->language, 'style' => $style, 'label' => $label, 'message' => $message];
         $meta = Meta::findOne(['m_z_id' => $code->z_id]);
         if (!$meta) {
             $meta = new Meta();
             $meta->m_z_id = $code->z_id;
             $meta->ip = $_SERVER['REMOTE_ADDR'];
             $meta->time_start = time();
         } else {
             $meta->ip = $_SERVER['REMOTE_ADDR'];
         }
         $meta->save();
         return true;
     }
     return false;
 }
 public function processCode($code)
 {
     if ($this->isCodeActive($code)) {
         $group = Group::findOne($code->z_p_id)->toArray();
         $bank = Bank::findOne($code->z_b_id)->toArray();
         $form = Form::findOne(['f_klasse' => $bank['klasse'], 'f_p_id' => $group['p_id']]);
         Yii::$app->session['anketData'] = ['code' => $code->toArray(), 'group' => $group, 'bank' => $bank, 'form' => $form->f_id, 'status' => 0, 'lang' => $this->language];
         $meta = Meta::findOne(['m_z_id' => $code->z_id]);
         if (!$meta) {
             $meta = new Meta();
             $meta->m_z_id = $code->z_id;
             $meta->ip = $_SERVER['REMOTE_ADDR'];
             $meta->time_start = time();
         } else {
             $meta->ip = $_SERVER['REMOTE_ADDR'];
         }
         $meta->save();
         return true;
     }
     return false;
 }
示例#5
0
 /**
  * 项目审核管理员设置
  *
  * @return string
  * @throws \Exception
  */
 public function actionEditRelation($id, $type = 0)
 {
     $group = Group::findOne($id);
     if (!$group) {
         throw new \Exception('关系不存在:)');
     }
     $project = Project::findOne($group->project_id);
     if ($project->user_id != $this->uid) {
         throw new \Exception('不可以操作其它人的项目:)');
     }
     if (!in_array($type, [Group::TYPE_ADMIN, Group::TYPE_USER])) {
         throw new \Exception('未知的关系类型:)');
     }
     $group->type = (int) $type;
     if (!$group->save()) {
         throw new \Exception('更新失败');
     }
     $this->renderJson([]);
 }
示例#6
0
 /**
  * 项目审核管理员设置
  *
  * @return string
  * @throws \Exception
  */
 public function actionEditRelation($id, $type = 0)
 {
     $group = Group::findOne($id);
     if (!$group) {
         throw new \Exception(yii::t('conf', 'relation not exists'));
     }
     $project = Project::findOne($group->project_id);
     if ($project->user_id != $this->uid) {
         throw new \Exception(yii::t('w', 'you are not master of project'));
     }
     if (!in_array($type, [Group::TYPE_ADMIN, Group::TYPE_USER])) {
         throw new \Exception(yii::t('conf', 'unknown relation type'));
     }
     $group->type = (int) $type;
     if (!$group->save()) {
         throw new \Exception(yii::t('w', 'update failed'));
     }
     $this->renderJson([]);
 }
示例#7
0
$this->params['breadcrumbs'][] = $this->title;
?>
<div class="user-text-index">

    <p>
        <?php 
echo Html::a('Neuer Benutzertext', ['user-text/create/' . $type], ['class' => 'btn btn-success']);
?>
    </p>

    <?php 
echo GridView::widget(['dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [['class' => 'yii\\grid\\SerialColumn'], 'ut_id', ['attribute' => 'p_id', 'filterType' => GridView::FILTER_SELECT2, 'filter' => InputHelper::getDropdownOptions('app\\models\\Group', 'p_id', 'bezeichnung', true, true), 'filterWidgetOptions' => ['pluginOptions' => ['allowClear' => true]], 'value' => function ($model, $key, $index, $widget) {
    if (!$model->p_id) {
        return 'Alle';
    }
    $group = \app\models\Group::findOne($model->p_id);
    return $group ? $group->bezeichnung : $model->p_id;
}, 'filterInputOptions' => ['placeholder' => 'Bitte wählen Sie'], 'format' => 'raw'], ['attribute' => 'b_id', 'filterType' => GridView::FILTER_SELECT2, 'filter' => InputHelper::getDropdownOptions('app\\models\\Bank', 'b_id', 'bezeichnung', true, true), 'filterWidgetOptions' => ['pluginOptions' => ['allowClear' => true]], 'value' => function ($model, $key, $index, $widget) {
    if (!$model->b_id) {
        return 'Alle';
    }
    $group = \app\models\Bank::findOne($model->b_id);
    return $group ? $group->bezeichnung : $model->b_id;
}, 'filterInputOptions' => ['placeholder' => 'Bitte wählen Sie'], 'format' => 'raw'], ['attribute' => 'l_id', 'filterType' => GridView::FILTER_SELECT2, 'filter' => InputHelper::getDropdownOptions('app\\models\\Language', 'l_id', 'name', true, true, true), 'filterWidgetOptions' => ['pluginOptions' => ['allowClear' => true]], 'value' => function ($model, $key, $index, $widget) {
    if (!$model->b_id) {
        return 'Default';
    }
    $group = \app\models\Language::findOne($model->l_id);
    return $group ? $group->name : $model->l_id;
}, 'filterInputOptions' => ['placeholder' => 'Bitte wählen Sie'], 'format' => 'raw'], ['attribute' => 't_id', 'value' => function ($model, $key, $index, $widget) {
    $group = \app\models\Text::findOne($model->t_id);
示例#8
0
 /**
  * 删除项目的用户关系
  *
  * @return string
  * @throws \Exception
  */
 public function actionDeleteRelation($id)
 {
     $group = Group::findOne($id);
     if (!$group) {
         throw new \Exception('关系不存在:)');
     }
     $project = Project::findOne($group->project_id);
     if ($project->user_id != $this->uid) {
         throw new \Exception('不可以操作其它人的项目:)');
     }
     if (!$group->delete()) {
         throw new \Exception('删除失败');
     }
     $this->renderJson([]);
 }
示例#9
0
 public function afterSave($insert, $changedAttributes)
 {
     parent::afterSave($insert, $changedAttributes);
     $oldImages = $this->imagesWithoutPlaceholder;
     $newImages = $this->pictures;
     // Detach old images
     foreach ($oldImages as $img) {
         if (!in_array($img->filePath, $newImages)) {
             $this->removeImage($img);
         } else {
             $newImages = array_diff($newImages, [$img->filePath]);
         }
     }
     // Attach new images
     foreach ($newImages as $path) {
         $this->attachImage($path);
     }
     // Set main image
     $mainImage = $this->findImageByPath($this->mainPicture);
     if ($mainImage) {
         $this->setMainImage($mainImage);
     }
     // Link and unlink groups
     $oldGroups = ArrayHelper::map($this->linkedGroups, 'id', 'id');
     $newGroups = $this->groups;
     $addGroups = array_diff($newGroups, $oldGroups);
     $removeGroups = array_diff($oldGroups, $newGroups);
     foreach ($addGroups as $gid) {
         $this->link('linkedGroups', Group::findOne($gid));
     }
     foreach ($removeGroups as $gid) {
         $this->unlink('linkedGroups', Group::findOne($gid), true);
     }
 }