# NanoBlogger Calendar Plugin, requires the cal command. # converts the output of cal to an HTML Table and creates links of entries # used for last month's calendar table! # # sample code for template - based off default stylesheet # #
# $NB_Calendar_prev #
PLUGIN_OUTFILE="$BLOG_DIR/$PARTS_DIR/cal_prev.$NB_FILETYPE" : ${CAL_CMD:=cal} if $CAL_CMD > "$PLUGIN_OUTFILE" 2>&1 ; then nb_msg "generating calendar (last month) ..." [ -z "$DATE_LOCALE" ] || CALENDAR=`LC_ALL="$DATE_LOCALE" $CAL_CMD $CAL_ARGS_PREV` [ ! -z "$CALENDAR" ] || CALENDAR=`$CAL_CMD $CAL_ARGS_PREV` CAL_HEAD=`echo "$CALENDAR" |sed -e '/^[ ]*/ s///g; 1q'` WEEK_DAYS=`echo "$CALENDAR" |sed -n 2p` DAYS=`echo "$CALENDAR" |sed 1,2d` NUM_DAY_LINES=`echo "$DAYS" |grep -n "[0-9]" |cut -c1` curr_month=`date +%Y.%m --date "$(date +%Y-%m-15) 1 months ago"` query_db all set_baseurl "./" MONTH_LIST=`echo "$DB_RESULTS" |sort $SORT_ARGS |grep ''$curr_month''` echo '' > "$PLUGIN_OUTFILE" echo '' >> "$PLUGIN_OUTFILE" echo '' >> "$PLUGIN_OUTFILE" for wd in $WEEK_DAYS ; do echo '' >> "$PLUGIN_OUTFILE" done echo '' >> "$PLUGIN_OUTFILE" for line in $NUM_DAY_LINES ; do DN_LINES=`echo "$DAYS" |sed -n "$line"p` [ -n "$DN_LINES" ] || continue echo '' >> "$PLUGIN_OUTFILE" echo "$DN_LINES" | sed -e '/ $/ Q; / [ \t]/ s//' >> "$PLUGIN_OUTFILE" fi done if [ "$set_link" != 1 ] ; then echo '' >> "$PLUGIN_OUTFILE" fi done echo "$DN_LINES" | sed -e '/^ / Q; / [ \t]/ s//' >> "$PLUGIN_OUTFILE" done echo '
'$CAL_HEAD'
'$wd'
<\/td>\ /g; /[0-9]/ s///g' >> "$PLUGIN_OUTFILE" for dn in $DN_LINES ; do set_link=0 MONTH_LINE=`echo "$MONTH_LIST" |grep $dn` for entry in $MONTH_LINE ; do entry_year=`echo $entry |cut -c1-4` entry_month=`echo $entry |cut -c6-7` entry_day=`echo $entry |cut -c9-10 |sed -e '/^0/ s///g'` curr_month=`date +%m --date "$(date +%Y-%m-15) 1 months ago"` curr_year=`date +%Y --date "$(date +%Y-%m-15) 1 months ago"` if [ "$curr_year$curr_month$dn" = "$entry_year$entry_month$entry_day" ] ; then set_link=1 NB_EntryID=`set_entryid $entry` set_entrylink "$entry" altlink dn=''$dn'' echo ''$dn''$dn'<\/td>\ /g; /[0-9]/ s///g' >> "$PLUGIN_OUTFILE" echo '
' >> "$PLUGIN_OUTFILE" # The calendar's place-holder for the templates NB_Calendar_prev=$(< "$PLUGIN_OUTFILE") CALENDAR= fi