/** * Creates a new Post model. * For ajax request will return json object * and for non-ajax request if creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $request = Yii::$app->request; $model = new Post(); if ($request->isAjax) { /* * Process for ajax request */ Yii::$app->response->format = Response::FORMAT_JSON; if ($request->isGet) { return ['code' => '200', 'message' => 'OK', 'data' => $this->renderPartial('create', ['model' => $model])]; } else { if ($model->load($request->post()) && $model->save()) { return ['code' => '200', 'message' => 'Create Post success']; } else { return ['code' => '400', 'message' => 'Validate error', 'data' => $this->renderPartial('create', ['model' => $model])]; } } } else { /* * Process for non-ajax request */ if ($model->load($request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model]); } } }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'update' page. * * @param integer $post_type post_type_id * * @throws \yii\web\ForbiddenHttpException * @throws \yii\web\NotFoundHttpException * @return mixed */ public function actionCreate($post_type) { $model = new Post(); $postType = $this->findPostType($post_type); $model->post_comment_status = Option::get('default_comment_status'); if (!Yii::$app->user->can($postType->post_type_permission)) { throw new ForbiddenHttpException(Yii::t('writesdown', 'You are not allowed to perform this action.')); } if ($model->load(Yii::$app->request->post())) { $model->post_type = $postType->id; $model->post_date = Yii::$app->formatter->asDatetime($model->post_date, 'php:Y-m-d H:i:s'); if ($model->save()) { if ($termIds = Yii::$app->request->post('termIds')) { foreach ($termIds as $termId) { $termRelationship = new TermRelationship(); $termRelationship->setAttributes(['term_id' => $termId, 'post_id' => $model->id]); if ($termRelationship->save() && ($term = $this->findTerm($termId))) { $term->updateAttributes(['term_count' => $term->term_count++]); } } } if ($meta = Yii::$app->request->post('meta')) { foreach ($meta as $meta_name => $meta_value) { $model->setMeta($meta_name, $meta_value); } } Yii::$app->getSession()->setFlash('success', Yii::t('writesdown', '{post_type} successfully saved.', ['post_type' => $postType->post_type_sn])); return $this->redirect(['update', 'id' => $model->id]); } } return $this->render('create', ['model' => $model, 'postType' => $postType]); }
public function createPost() { $newPost = new Post(); $newPost['title'] = $this->title; $newPost['content'] = $this->content; $newPost['permit'] = $this->permit[0]; if ($this->upload()) { $newPost['image'] = $this->thumbnail; } if ($this->date == "") { $newPost['create_at'] = date("Y-m-d"); } else { $newPost['create_at'] = $this->date; } $newPost['user_id'] = $this->user_id; $newPost->save(); if ($newPost['permit'] == 2) { foreach ($this->reader as $userId) { $newPostProtected = new PostProtected(); $newPostProtected['create_at'] = $newPost['create_at']; $newPostProtected['post_id'] = $newPost['id']; $newPostProtected['user_id'] = $userId; $newPostProtected->save(); } } }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); if ($model->load(Yii::$app->request->post()) && $model->save()) { $redirect = yii::$app->request->post('goto') == 'list' ? ['index'] : ['update', 'id' => $model->id]; return $this->redirect($redirect); } return $this->render('create', ['model' => $model]); }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model]); } }
/** * Создание поста. * @return string|Response */ public function actionCreate() { $model = new Post(); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { $model->author_id = Yii::$app->user->id; return $this->render('create', ['model' => $model, 'category' => Category::find()->all(), 'tags' => Tags::find()->all(), 'authors' => User::find()->all()]); } }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); $user_id = yii::$app->getUser()->id; if ($model->load(Yii::$app->request->post()) && $model->save()) { //return $this->redirect(['view', 'model' => $model]); return $this->redirect(['index', 'user_id' => $user_id]); } else { return $this->render('create', ['model' => $model]); } }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); //$authot = new User(); //$authot->attributes='selected'; if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model, 'category' => Category::find()->all(), 'autor' => User::find()->all()]); } }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); $categoryModel = new CategoryPost(); $treeParents = TreeHelper::build($categoryModel->find()->addOrderBy('tree')->addOrderBy('lft')->all()); if ($model->load(Yii::$app->request->post()) && $model->save()) { return $this->redirect(['index']); } else { return $this->render('create', ['model' => $model, 'treeParents' => $treeParents]); } }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); if ($model->load(Yii::$app->request->post()) && $model->save()) { foreach (Category::getCategoriesById($model->categories_id) as $category) { $model->link('categories', $category); } return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model]); } }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); if ($model->load(Yii::$app->request->post())) { $model->created_at = time(); $model->updated_at = time(); if ($model->save()) { return $this->redirect(['view', 'id' => $model->id]); } } else { return $this->render('create', ['model' => $model, 'category' => Category::find()->all()]); } }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); $model->type = 'post'; $model->user_id = \Yii::$app->user->id; if ($model->load(Yii::$app->request->post())) { $model->category_id = implode(',', $model->category_id); if ($model->save()) { return $this->redirect(['view', 'id' => $model->id]); } } else { return $this->render('create', ['model' => $model]); } }
public function actionAddPost() { $post = new Post(); $user = Yii::$app->user->identity; $post->load(Yii::$app->request->post(), ''); $post->user_id = $user->id; $post->img = UploadedFile::getInstanceByName('image'); if ($post->save()) { if ($post->img) { $post->saveImage(); } return $post; } else { return $post->getErrors(); } }
/** * Creates a new Content model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); $model->allowComment = true; $model->allowFeed = true; $model->allowPing = true; if (Yii::$app->request->isPost) { if ($model->load(Yii::$app->request->post())) { $model->inputCategories = Yii::$app->request->post('inputCategories', []); $model->inputTags = Yii::$app->request->post('inputTags', []); $model->inputAttachments = Yii::$app->request->post('inputAttachments', []); if ($model->save()) { return $this->redirect(['index']); } } } return $this->render('create', ['model' => $model]); }
public function actionCreate($url) { exit; $html = SimpleHtmlDom::file_get_html($url); foreach ($html->find('ul[id="news_home"] li') as $item) { $model = new Post(); $image = str_replace('_240x144', null, $item->find('img', 0)->src); $model['category_id'] = 1; $model['title'] = trim($item->find('a[class="title_tin"]', 0)->plaintext); $model['image'] = $this->saveImage($image); $detail = $item->find('a[class="title_tin"]', 0)->href; $html_detail = SimpleHtmlDom::file_get_html($detail); $summary = $html_detail->find('p[class="lead"]', 0)->plaintext; $content = strip_tags($html_detail->find('div[class="fck_detail width_common"]', 0)->innertext, '<img><strong><br /><br><p>'); $model['content'] = $summary . $content; $model->save(); } }
public function actionNewPost() { $this->checkIsGuest(); $data = $this->getPostValue('Post'); $threadId = $data['thread_id']; $post = new Post(); $post->thread_id = $threadId; $post->user_id = $this->identity->id; $post->user_name = $this->identity->username; $post->title = isset($data['title']) ? $data['title'] : ''; $post->body = $data['body']; $post->create_time = $this->getCurrentTime(); $post->modify_time = $this->getCurrentTime(); $post->supports = 0; $post->againsts = 0; $post->floor = 0; $post->note = ''; if ($post->save()) { Thread::updateAllCounters(['posts' => 1], ['id' => $threadId]); } return $this->redirect(['view', 'id' => $post->thread_id]); }
public function actionNewPost() { if (!YiiForum::checkAuth('post_add')) { return $this->noPermission(); } YiiForum::checkIsGuest(); $post = new Post(); $threadId = YiiForum::getGetValue('threadid'); $data = YiiForum::getPostValue('Post'); if ($data == null) { $thread = Thread::findOne(['id' => $threadId]); $locals = []; $locals['thread'] = $thread; $locals['currentBoard'] = $this->getBoard($thread['board_id']); $locals['model'] = $post; return $this->render('new-post', $locals); } $boardId = $data['board_id']; $threadId = $data['thread_id']; $threadTitle = $data['thread_title']; $post->thread_id = $threadId; $post->user_id = YiiForum::getIdentity()->id; $post->user_name = YiiForum::getIdentity()->username; $post->title = isset($data['title']) ? $data['title'] : ''; $post->body = $data['body']; $post->create_time = TTimeHelper::getCurrentTime(); $post->modify_time = TTimeHelper::getCurrentTime(); $post->supports = 0; $post->againsts = 0; $post->floor = 0; $post->note = ''; if ($post->save()) { Thread::updateLastData($threadId); Board::updateLastData($boardId, $threadId, $threadTitle, false); } return $this->redirect(['view', 'id' => $threadId]); }
/** * 删除帖子 * @param Post $post */ public static function delete(Post $post) { $post->setAttributes(['status' => Post::STATUS_DELETED]); $post->save(); Notification::updateAll(['status' => Post::STATUS_DELETED], ['post_id' => $post->id]); }
/** * Creates a new Post model. * If creation is successful, the browser will be redirected to the 'view' page. * @return mixed */ public function actionCreate() { $model = new Post(); $model->tags = []; // default values $model->allow_comment = 1; $model->is_public = 1; $model->content_category_id = Post::CATEGORY_NEWS; $model->user_id = Yii::$app->user->id; $model->is_pin = 0; $model->with_photo = 0; $model->with_video = 0; $matchModel = new \common\models\MatchSearch(); $relation = new Relation(); $relation->relationable_type = Relation::RELATIONABLE_POST; $matches = $matchModel::find()->orderBy(['date' => SORT_DESC])->limit(10)->all(); $matchesList = []; foreach ($matches as $match) { $matchDate = date('d.m.Y', strtotime($match->date)); $matchesList[$match->id] = $match->name . ' (' . $matchDate . ')'; } if ($model->load(Yii::$app->request->post()) && $model->validate()) { // Save the model to have a record number if (!$model->save()) { return $this->render('create', ['model' => $model]); } // Adding new tags if (is_array($model->tags)) { foreach ($model->tags as $id) { $model->addTag($id); } } $cached_tag_list = []; $newTags = $model->getTags(); foreach ($newTags as $newTag) { $cached_tag_list[] = $newTag->name; } $model->cached_tag_list = implode(', ', $cached_tag_list); // Set image $uploadedFile = UploadedFile::getInstance($model, 'image'); if ($uploadedFile) { // Save origionals $asset = new Asset(); $asset->assetable_type = Asset::ASSETABLE_POST; $asset->assetable_id = $model->id; $asset->uploadedFile = $uploadedFile; $asset->saveAsset(); // Save thumbnails $imageID = $asset->id; $thumbnails = Asset::getThumbnails(Asset::ASSETABLE_POST); foreach ($thumbnails as $thumbnail) { $asset = new Asset(); $asset->parent_id = $imageID; $asset->thumbnail = $thumbnail; $asset->assetable_type = Asset::ASSETABLE_POST; $asset->assetable_id = $model->id; $asset->uploadedFile = $uploadedFile; $asset->saveAsset(); } } $relation->relationable_id = $model->id; if ($relation->load(Yii::$app->request->post()) && $model->validate()) { if ($relation->parent_id != '' && is_array($relation->parent_id)) { $relation->parent_id = $relation->parent_id[0]; } if ($relation->parent_id && is_numeric($relation->parent_id)) { $relation->save(); } } $model->save(); return $this->redirect(['view', 'id' => $model->id]); } else { return $this->render('create', ['model' => $model, 'relation' => $relation, 'matchModel' => $matchModel, 'matchesList' => $matchesList]); } }
/** * Url: /post/add * @return mixed * @throws ForbiddenHttpException */ public function actionPostAdd() { if (Yii::$app->user->isGuest) { throw new ForbiddenHttpException("Вы не можете выполнить это действие."); } $model = new Post(); $model->content_category_id = Post::CATEGORY_BLOG; $model->tags = []; if ($model->load(Yii::$app->request->post()) && $model->validate()) { $model->allow_comment = 1; $model->is_public = 1; $model->content_category_id = Post::CATEGORY_BLOG; $model->user_id = Yii::$app->user->id; // Set slug $model->slug = $model->genSlug($model->title); // Save the model to have a record number if ($model->save()) { // Adding new tags if (is_array($model->tags)) { foreach ($model->tags as $id) { $model->addTag($id); } } $cached_tag_list = []; $newTags = $model->getTags(); foreach ($newTags as $newTag) { $cached_tag_list[] = $newTag->name; } $model->cached_tag_list = implode(', ', $cached_tag_list); // Set image $uploadedFile = UploadedFile::getInstance($model, 'image'); if ($uploadedFile) { // Save origionals $asset = new Asset(); $asset->assetable_type = Asset::ASSETABLE_POST; $asset->assetable_id = $model->id; $asset->uploadedFile = $uploadedFile; $asset->saveAsset(); // Save thumbnails $imageID = $asset->id; $thumbnails = Asset::getThumbnails(Asset::ASSETABLE_POST); foreach ($thumbnails as $thumbnail) { $asset = new Asset(); $asset->parent_id = $imageID; $asset->thumbnail = $thumbnail; $asset->assetable_type = Asset::ASSETABLE_POST; $asset->assetable_id = $model->id; $asset->uploadedFile = $uploadedFile; $asset->saveAsset(); } } $model->save(false); return $this->redirect($model->getUrl()); } var_dump($model->getErrors()); die; } $title = 'Добавить запись в блог'; return $this->render('@frontend/views/site/index', ['templateType' => 'col2', 'title' => 'Dynamomania.com | ' . $title, 'columnFirst' => ['blog_form' => ['view' => '@frontend/views/forms/blog_form', 'data' => compact('model', 'tags', 'title')]], 'columnSecond' => ['blog' => SiteBlock::getBlogPosts(), 'banner1' => SiteBlock::getBanner(Banner::REGION_NEWS), 'banner2' => SiteBlock::getBanner(Banner::REGION_NEWS), 'banner3' => SiteBlock::getBanner(Banner::REGION_NEWS), 'banner4' => SiteBlock::getBanner(Banner::REGION_NEWS), 'banner5' => SiteBlock::getBanner(Banner::REGION_NEWS)]]); }