X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;f=processor%2Fdefault.html.do;h=c744889405bbe8e4f8b9070b18cd02828d994882;hb=c841d869ec1eaa8107bece1385038339aa6cfd3e;hp=99be4638584ecc9b3cb6294c662b602c8ee02be0;hpb=c67421732e148c768cc83395c143480b2b9b6106;p=redo-blog diff --git a/processor/default.html.do b/processor/default.html.do index 99be463..c744889 100644 --- a/processor/default.html.do +++ b/processor/default.html.do @@ -1,28 +1,49 @@ #!/bin/sh +# Handle URL from .links file. +prep_url() { + url=$(printf "%s" "$(escape_html "$1")" | prep_sed) + template=$(cat "$linkback_tmpl_file") + printf "%s" "$template" | sed 's/%URL%/'"$url"'/g' | tr '\a' '%' | prep_sed +} + # Pull in global dependencies. -metadata_dir=.meta -. "$metadata_dir"/helpers.sh +. ./helpers.sh +metadata_dir=metadata +meta_file="${metadata_dir}/${1%.html}.automatic_metadata" +redo-ifchange "$meta_file" intermediate_file="${metadata_dir}/${1%.html}.intermediate" +redo-ifchange "$intermediate_file" title_file="${metadata_dir}"/title redo-ifchange "$title_file" -redo-ifchange "$intermediate_file" +article_tmpl_file="${metadata_dir}"/article.tmpl +redo-ifchange "$article_tmpl_file" +linkback_tmpl_file="${metadata_dir}"/linkback.tmpl +redo-ifchange "$linkback_tmpl_file" +replies_file="${1%.html}.links" +redo-ifchange "$replies_file" # Build entry data. -blog_title=`read_and_escape_file "$title_file" | head -1` -title_html=`cat "$intermediate_file" | head -1` +blog_title=$(read_and_escape_file "$title_file" | head -1 | prep_sed) +title_html=$(cat "$intermediate_file" | head -1) title_plaintext=`echo "$title_html" | html2text` -title_plaintext_escaped=`escape_html "$title_plaintext"` -body=`cat "$intermediate_file" | sed 1d` - -# Write first part of entry head. -cat << EOF - - - -EOF +title_html=$(printf "%s" "$title_html" | prep_sed) +title_plaintext=$(escape_html "$title_plaintext" | prep_sed) +body=$(cat "$intermediate_file" | sed 1d | prep_sed) +datetime_created_unix=$(get_creation_date_from_meta_file_seconds "$meta_file") +date_created=$(date -u "+%Y-%m-%d" -d "@${datetime_created_unix}") +datetime_lastmod_unix=$(get_lastmod_date_from_meta_file "$meta_file") +date_updated=$(date -u "+%Y-%m-%d" -d "@${datetime_lastmod_unix}") +replies=$(while read line; do prep_url "$line"; done < "$replies_file") -# Write remaining entry head and body. -printf "%s – %s\n\n\n" "$blog_title" "$title_plaintext_escaped" -printf "

%s

\n" "$title_html" -printf "
\n%s\n
\n\n" "$body" +# Put data into template. +template=$(cat "$article_tmpl_file") +printf "%s" "$template" | \ +sed 's/%BLOG_TITLE%/'"$blog_title"'/g' | \ +sed 's/%ARTICLE_TITLE_ESCAPED%/'"$title_plaintext"'/g' | \ +sed 's/%ARTICLE_TITLE_HTML%/'"$title_html"'/g' | \ +sed 's/%DATE_CREATED%/'"$date_created"'/g' | \ +sed 's/%DATE_UPDATED%/'"$date_updated"'/g' | \ +sed 's/%BODY%/'"$body"'/g' | \ +sed 's/%LINKBACKS%/'"$replies"'/g' | \ +tr '\a' '%'