本文整理匯總了PHP中blogPostModel::updateById方法的典型用法代碼示例。如果您正苦於以下問題:PHP blogPostModel::updateById方法的具體用法?PHP blogPostModel::updateById怎麽用?PHP blogPostModel::updateById使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類blogPostModel
的用法示例。
在下文中一共展示了blogPostModel::updateById方法的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: updateMarkdownText
public function updateMarkdownText($post)
{
$post_id = $post['id'];
$text = null;
if (isset($post['plugin']) && isset($post['plugin'][$this->id]) && $post['plugin'][$this->id]) {
$text = trim($post['plugin'][$this->id]);
}
$post_model = new blogPostModel();
$post_model->updateById($post_id, array('text_markdown' => $text));
}
示例2: execute
public function execute()
{
$data = waRequest::post('data', null);
if (!$data) {
return;
}
foreach ($data as $name => $value) {
if (in_array($name, $this->allowed_fields) === false) {
throw new waException("Can't update post: editing of this field is denied");
}
if ($name == 'status') {
if (in_array($value, array(blogPostModel::STATUS_DRAFT, blogPostModel::STATUS_DEADLINE, blogPostModel::STATUS_SCHEDULED, blogPostModel::STATUS_PUBLISHED)) === false) {
throw new waException("Can't change status: unknown value");
}
}
}
$post_id = waRequest::post('post_id', null, waRequest::TYPE_INT);
$post_model = new blogPostModel();
$post = null;
if ($post_id) {
$post = $post_model->getFieldsById($post_id, array('id', 'blog_id', 'contact_id', 'datetime'));
}
if (!$post) {
throw new waException("Unknown post");
}
$contact = wa()->getUser();
$contact_id = $contact->getId();
$allow = blogHelper::checkRights($post['blog_id'], $contact_id, $contact_id != $post['contact_id'] ? blogRightConfig::RIGHT_FULL : blogRightConfig::RIGHT_READ_WRITE);
if (!$allow) {
throw new waException("Access denied");
}
if (!$post_model->updateById($post_id, $data)) {
throw new waException("Error when updating data");
}
$post = array_merge($post, $data);
if ($post['status'] == blogPostModel::STATUS_DEADLINE) {
$user = wa()->getUser();
$timezone = $user->getTimezone();
$current_datetime = waDateTime::date("Y-m-d", null, $timezone);
$datetime = waDateTime::date("Y-m-d", $post['datetime'], $timezone);
if ($datetime <= $current_datetime) {
$post['overdue'] = true;
}
}
$this->response['post'] = $post;
}
示例3: cancelSchedule
private function cancelSchedule($post)
{
$this->post_model->updateById($post['id'], array("schedule_datetime" => null));
$this->response['redirect'] = $this->getRedirectUrl(array('module' => 'post', 'action' => 'edit', 'id' => $post['id']));
}