function metaWeblog_editPost($values) { global $config, $defualtcategoryid, $db_prefix, $mbconfig; $struct = $values['struct']; $userdetail = check_user($values['username'], $values['password']); $blog = new boblog(); $values['postid'] = floor($values['postid']); $records = $blog->getgroupbyquery("SELECT * FROM `{$db_prefix}blogs` WHERE `blogid`='{$values['postid']}'"); if ($records[0]['blogid'] == '') { xml_error("Entry does not exist."); } if (!$struct['title']) { $title = "Untitled MetaWeblogAPI Entry"; } else { $title = safe_convert($struct['title']); } if (!$struct['description']) { xml_error("You MUST provide a decription element in your post."); } else { $content = reduce_entities($struct['description']); } $nowtime = time(); if ($struct['pubDate']) { $struct['dateCreated'] = $struct['pubDate']; } if ($struct['dateCreated']) { $time = get_time_unix($struct['dateCreated']) + 3600 * $config['timezone']; } else { $time = $records[0]['pubtime']; } $newcym = date("Ym", $time); $newcd = date("d", $time); $blog->query("UPDATE `{$db_prefix}calendar` SET cyearmonth='{$newcym}', cday='{$newcd}' WHERE `cid`='{$values['postid']}'"); //writetofile ('text5.php', $struct['categories']); //For debug only if ($struct['categories'] != '') { $c_tmp = $blog->getgroupbyquery("SELECT cateid FROM `{$db_prefix}categories` WHERE `catename`='{$struct['categories']}'"); $category = $c_tmp[0]['cateid']; if ($category == '') { $category = $defualtcategoryid; } } else { $category = $records[0]['category']; } if ($values['publish'] == 1 && $struct['flNotOnHomePage'] != 1) { $property = 0; } else { $property = 3; } $query = "UPDATE `{$db_prefix}blogs` SET `title`='{$title}', `pubtime`='{$time}', `property`='{$property}', `category`='{$category}', `content`='{$content}', `editorid`='{$userdetail['userid']}', `edittime`='{$nowtime}' WHERE `blogid`='{$values['postid']}'"; recache_latestentries(); recache_currentmonthentries(); recache_categories(); //Update Category counter $blog->query($query); $xml_content = make_xml_piece("boolean", '1'); $body_xml = xml_generate($xml_content); send_response($body_xml); }
function blogger_newPost($values) { global $settingInfo, $defualtcategoryid, $DMC, $DBPrefix, $arrSideModule; global $strArrayMonth, $strArrayDay, $strYear, $strMonth, $arrWeek, $strDayLogs, $strCalendar; global $strModifyInfo, $strLogout, $strLoginSubmit, $strUserRegister; global $strSearchErr, $strKeyword, $strSearchTitle, $strSearchContent, $strSearchTitleContent, $strFind; $struct = $values['struct']; $userdetail = check_user_pw($values['username'], $values['password']); if (!$struct['title']) { $logTitle = "Untitled MetaWeblogAPI Entry"; } else { $logTitle = reduce_entities($struct['title']); } if (!$struct['description']) { xml_error("You MUST provide a decription element in your post."); } else { $logContent = reduce_entities($struct['description']); } if ($struct['pubDate']) { $struct['dateCreated'] = $struct['pubDate']; } if ($struct['dateCreated']) { $postTime = get_time_unix($struct['dateCreated']); } else { $postTime = time(); } if ($struct['categories'] != '') { if (strpos(";" . $struct['categories'], "|-") > 0) { $struct['categories'] = trim(substr($struct['categories'], 2)); } $c_tmp = $DMC->fetchArray($DMC->query("SELECT id FROM `{$DBPrefix}categories` WHERE `name`='{$struct['categories']}'")); $category = $c_tmp['id']; if ($category == '') { $category = $defualtcategoryid; } } else { $category = $defualtcategoryid; } $query = "INSERT INTO `{$DBPrefix}logs` (cateId,logTitle,logContent,author,quoteUrl,postTime,isComment,isTrackback,isTop,weather,saveType,tags,password,logsediter) VALUES ('{$category}','{$logTitle}','{$logContent}','{$userdetail['username']}','','{$postTime}','1','1','0','','1','','','tiny')"; $DMC->query($query); //echo $DMC->error(); $currentid = $DMC->insertId(); //更新缓存 $DMC->query("UPDATE " . $DBPrefix . "categories set cateCount=cateCount+1 WHERE id='{$category}'"); $DMC->query("UPDATE " . $DBPrefix . "setting set settValue=settValue+1 where settName='setlogs'"); //更新Cache settings_recache(); categories_recount(); categories_recache(); recentLogs_recache(); archives_recache(); calendar_recache(); logsTitle_recache(); logs_sidebar_recache($arrSideModule); $xml_logContent = make_xml_piece("string", $currentid); $body_xml = xml_generate($xml_logContent); //writetofile ("text2.xml", $body_xml); //For debug use send_response($body_xml); }