/** * 保存新文章 */ function mw_newPost($args) { global $options_cache; escape($args); $user = login($args[1], $args[2]); define('UID', $user['uid']); $id = intval($args[0]); $username = $args[1]; $password = $args[2]; $data = $args[3]; $publish = $args[4]; $update_data['title'] = $data['title']; $update_data['content'] = htmlspecialchars_decode($data['description']); $update_data['author'] = UID; $update_data['hide'] = $publish == 1 ? 'n' : 'y'; $update_data['excerpt'] = ''; // 只取第一个分类 $sort_name = isset($data['categories']) && isset($data['categories'][0]) ? $data['categories'][0] : ''; $Sort_Model = new Sort_Model(); $sorts = $Sort_Model->getSorts(); $update_data['sortid'] = '-1'; foreach ($sorts as $sort) { if ($sort_name == $sort['sortname']) { $update_data['sortid'] = $sort['sid']; break; } } // 发布时间 if (isset($data['dateCreated']) && is_object($data['dateCreated'])) { $update_data['date'] = @gmmktime($data['dateCreated']->hour, $data['dateCreated']->minute, $data['dateCreated']->second, $data['dateCreated']->month, $data['dateCreated']->day, $data['dateCreated']->year) - $options_cache['timezone'] * 3600; } else { $update_data['date'] = time(); } // 更新数据 $Log_Model = new Log_Model(); $new_id = $Log_Model->addlog($update_data); // 更新标签 if (isset($data['mt_keywords']) && !empty($data['mt_keywords'])) { $Tag_Model = new Tag_Model(); $Tag_Model->addTag($data['mt_keywords'], $new_id); unset($Tag_Model); } // 更新缓存 Cache::getInstance()->updateCache(); response("<i4>{$new_id}</i4>"); }
//check alias if (!empty($alias)) { $logalias_cache = $CACHE->readCache('logalias'); $alias = $Log_Model->checkAlias($alias, $logalias_cache, $blogid); } $logData = array('title' => $title, 'alias' => $alias, 'content' => $content, 'excerpt' => $excerpt, 'author' => $author, 'sortid' => $sort, 'date' => $postTime, 'top ' => $top, 'sortop ' => $sortop, 'allow_remark' => $allow_remark, 'hide' => $ishide, 'checked' => $user_cache[UID]['ischeck'] == 'y' ? 'n' : 'y', 'password' => $password); if ($blogid > 0) { //自动保存草稿后,添加变为更新 $Log_Model->updateLog($logData, $blogid); $Tag_Model->updateTag($tagstring, $blogid); $dftnum = ''; } else { if (!($blogid = $Log_Model->isRepeatPost($title, $postTime))) { $blogid = $Log_Model->addlog($logData); } $Tag_Model->addTag($tagstring, $blogid); $dftnum = $Log_Model->getLogNum('y', '', 'blog', 1); } $CACHE->updateCache(); doAction('save_log', $blogid); switch ($action) { case 'autosave': echo "autosave_gid:{$blogid}_df:{$dftnum}_"; break; case 'add': case 'edit': $tbmsg = ''; if ($ishide == 'y') { emDirect("./admin_log.php?pid=draft&active_savedraft=1"); } else { if ($action == 'add' || isset($_POST['pubdf'])) {