]> git.plutz.net Git - shellwiki/blobdiff - macros/pagelist
automatically enable --titles in pagelist macro in multilingual setups
[shellwiki] / macros / pagelist
index 94273fcb4d269b5c787cacdf4a5bfe98864ccafd..502607612940dd45d93202a18864e9e267704904 100755 (executable)
 . "$_EXEC/cgilite/cgilite.sh"
 . "$_EXEC/acl.sh"
 . "$_EXEC/tools.sh"
-. "$_EXEC/db23.sh"
+. "$_EXEC/cgilite/db23.sh"
 
 tags='' ntags='' dir='' depth='' glob_system_pages=false
 label='' labeltype='' altlabel='' titles='' db3_data=''
 DB3 new  # Use DB3 for in-memory cache
 
+[ "$LANGUAGE_DEFAULT" ] && titles=true
+
 set -- "$@" --
 while [ $# -gt 0 ]; do case $1 in
-  --system) glob_system_pages=true; shift 1;;
-  --depth)  depth="$2"; shift 2;;
-  --titles) titles=true; shift 1;;
+  --system|-system)
+    glob_system_pages=true; shift 1;;
+  --depth|-depth|-d)
+    depth="$2"; shift 2;;
+  --title|--titles|-titles|-title)
+    titles=true; shift 1;;
+  --no-title|--no-titles|--notitle|--notitles|-no-title|-no-titles|-notitle|-notitles)
+    titles=false; shift 1;;
   \#*) tags="${tags}${tags:+ }${1###}"; shift 1;;
   \!*) ntags="${ntags}${ntags:+ }${1##!}"; shift 1;;
   --h1|--h2|--h3|--h4|--h5|--h6|--label)
@@ -58,7 +65,7 @@ print_page() {
   # resolve name of each path element
   while [ "${pfrag%/*}" -a "${pfrag%/*}" != "${pfrag}" ]; do
     pfrag="${pfrag%/*}"
-    title="$(DB3 get "${pfrag}" || ! page_title "${pfrag}")/${title}" && break
+    title="$(DB3 get "${pfrag}" || ! page_title "$(page_abs "${pfrag}")")/${title}" && break
   done
   # keep resolved names in cache
   DB3 set "${page%/*}" "${title%/}"