Fix custom title and excerpt doesn't saved

This commit is contained in:
Radhi Fadlillah 2019-09-22 16:17:51 +07:00
parent 1d83468455
commit fbd4e37643
4 changed files with 30 additions and 21 deletions

View file

@ -37,11 +37,15 @@ func addHandler(cmd *cobra.Command, args []string) {
noArchival, _ := cmd.Flags().GetBool("no-archival")
logArchival, _ := cmd.Flags().GetBool("log-archival")
// Normalize input
title = validateTitle(title, url)
excerpt = normalizeSpace(excerpt)
// Create bookmark item
book := model.Bookmark{
URL: url,
Title: validateTitle(title, url),
Excerpt: normalizeSpace(excerpt),
Title: title,
Excerpt: excerpt,
CreateArchive: !noArchival,
}
@ -83,6 +87,8 @@ func addHandler(cmd *cobra.Command, args []string) {
Content: content,
ContentType: contentType,
LogArchival: logArchival,
KeepTitle: title != "",
KeepExcerpt: excerpt != "",
}
book, isFatalErr, err = core.ProcessBookmark(request)

View file

@ -167,7 +167,8 @@ func updateHandler(cmd *cobra.Command, args []string) {
Bookmark: book,
Content: content,
ContentType: contentType,
KeepMetadata: keepMetadata,
KeepTitle: keepMetadata,
KeepExcerpt: keepMetadata,
LogArchival: logArchival,
}

View file

@ -30,7 +30,8 @@ type ProcessRequest struct {
Bookmark model.Bookmark
Content io.Reader
ContentType string
KeepMetadata bool
KeepTitle bool
KeepExcerpt bool
LogArchival bool
}
@ -77,11 +78,11 @@ func ProcessBookmark(req ProcessRequest) (model.Bookmark, bool, error) {
book.HTML = article.Content
// If title and excerpt doesnt have submitted value, use from article
if !req.KeepMetadata || book.Title == "" {
if !req.KeepTitle || book.Title == "" {
book.Title = article.Title
}
if !req.KeepMetadata || book.Excerpt == "" {
if !req.KeepExcerpt || book.Excerpt == "" {
book.Excerpt = article.Excerpt
}

View file

@ -464,7 +464,8 @@ func (h *handler) apiUpdateCache(w http.ResponseWriter, r *http.Request, ps http
Bookmark: book,
Content: content,
ContentType: contentType,
KeepMetadata: keepMetadata,
KeepTitle: keepMetadata,
KeepExcerpt: keepMetadata,
}
book, _, err = core.ProcessBookmark(request)