Skip to content

Commit

Permalink
feat: 修正博客园Markdown分类问题
Browse files Browse the repository at this point in the history
  • Loading branch information
terwer committed Aug 9, 2023
1 parent 945df12 commit ea1950d
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 1 deletion.
4 changes: 4 additions & 0 deletions src/adaptors/api/base/metaweblog/metaweblogBlogApi.ts
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,8 @@ class MetaweblogBlogApi extends BlogApi {
* @param publish - 可选,不传递默认是发布,传递false才是草稿
*/
public async newPost(post: Post, publish?: boolean): Promise<string> {
publish = publish ?? true

// 不传递默认是发布,传递false才是草稿
post.post_status = publish === false ? PostStatusEnum.PostStatusEnum_Draft : PostStatusEnum.PostStatusEnum_Publish

Expand Down Expand Up @@ -150,6 +152,8 @@ class MetaweblogBlogApi extends BlogApi {
* @param publish - 可选,不传递默认是发布,传递false才是草稿
*/
public async editPost(postid: string, post: Post, publish?: boolean): Promise<boolean> {
publish = publish ?? true

// 不传递默认是发布,传递false才是草稿
post.post_status = publish === false ? PostStatusEnum.PostStatusEnum_Draft : PostStatusEnum.PostStatusEnum_Publish

Expand Down
26 changes: 25 additions & 1 deletion src/adaptors/api/cnblogs/cnblogsApiAdaptor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,13 @@
* questions.
*/

import { UserBlog } from "zhi-blog-api"
import { Post, UserBlog } from "zhi-blog-api"
import { CnblogsConfig } from "~/src/adaptors/api/cnblogs/cnblogsConfig.ts"
import { AppInstance } from "~/src/appInstance.ts"
import { createAppLogger } from "~/src/utils/appLogger.ts"
import { CnblogsConstants } from "~/src/adaptors/api/cnblogs/cnblogsConstants.ts"
import { MetaweblogBlogApi } from "~/src/adaptors/api/base/metaweblog/metaweblogBlogApi.ts"
import { result } from "lodash-es"

Check failure on line 32 in src/adaptors/api/cnblogs/cnblogsApiAdaptor.ts

View workflow job for this annotation

GitHub Actions / ci

Cannot find module 'lodash-es' or its corresponding type declarations.

/**
* 博客园 API 适配器
Expand Down Expand Up @@ -63,6 +64,18 @@ class CnblogsApiAdaptor extends MetaweblogBlogApi {
return result
}

public async newPost(post: Post, publish?: boolean): Promise<string> {
// 设置markdown分类
post = this.assignMdCategory(post)
return super.newPost(post, publish)
}

public async editPost(postid: string, post: Post, publish?: boolean): Promise<boolean> {
// 设置markdown分类
post = this.assignMdCategory(post)
return super.editPost(postid, post, publish)
}

public override async deletePost(postid: string): Promise<boolean> {
const ret = await this.metaweblogCall(CnblogsConstants.METHOD_DELETE_POST, [
this.cfg.blogid,
Expand All @@ -75,5 +88,16 @@ class CnblogsApiAdaptor extends MetaweblogBlogApi {

return ret
}

private assignMdCategory(post: Post) {
const MD_CATEGORY = "[Markdown]"
const cats = post.categories ?? []

if (cats.length === 0 || cats.some((cat) => cat.toLowerCase() === MD_CATEGORY.toLowerCase())) {
cats.push(MD_CATEGORY)
}

return post
}
}
export { CnblogsApiAdaptor }

0 comments on commit ea1950d

Please sign in to comment.