浏览代码

enhance: alias don't redirect to source page in the page properties

Tienson Qin 4 年之前
父节点
当前提交
14e4af2957
共有 1 个文件被更改,包括 10 次插入2 次删除
  1. 10 2
      src/main/frontend/components/block.cljs

+ 10 - 2
src/main/frontend/components/block.cljs

@@ -251,9 +251,15 @@
                                (string/capitalize original-page-name)
                                original-page-name)
           page (string/lower-case page-name)
-          redirect-page-name (if (db/page-empty? (state/get-current-repo) page-name)
+          redirect-page-name (cond
+                               (:page/alias? config)
+                               page
+
+                               (db/page-empty? (state/get-current-repo) page-name)
                                (or (when source-page (:page/name source-page))
                                    page)
+
+                               :else
                                page)
           href (if html-export?
                  (util/encode-str page)
@@ -1696,7 +1702,9 @@
               (if (coll? v)
                 (let [vals (for [item v]
                              (if (coll? v)
-                               (page-cp config {:page/name item})
+                               (let [config (if (= k :alias)
+                                              (assoc config :page/alias? true))]
+                                 (page-cp config {:page/name item}))
                                (inline-text format item)))]
                   (interpose [:span ", "] vals))
                 (inline-text format v))])))]