diff options
Diffstat (limited to 'meetup')
-rwxr-xr-x | meetup/gen_dates.sh | 26 | ||||
-rw-r--r-- | meetup/gen_dates2.sh | 76 |
2 files changed, 99 insertions, 3 deletions
diff --git a/meetup/gen_dates.sh b/meetup/gen_dates.sh index 0bc4479..6e73c02 100755 --- a/meetup/gen_dates.sh +++ b/meetup/gen_dates.sh @@ -6,11 +6,13 @@ LIMIT=3 # uncomment to enable debug -#DEBUG=1 +DEBUG=0 # where to put the output files? NEXT_FILE="next.html" AFTER_FILE="after.html" +STANDARD_FILE="standard.html" +TECHCORE_FILE="techcore.html" DOW=`date +"%u"` if [ $DOW -eq 1 ]; then @@ -22,13 +24,20 @@ else fi MEETUPS="" +MEETUPTYPES="" CNT=0 while true; do if [ -n "$DEBUG" ]; then echo -n "check day($TS): "`date --date="@$TS" +"%d.%m.%Y"`; fi if [ $DOM -le 7 ] || ([ $DOM -ge 15 ] && [ $DOM -le 21 ]); then - if [ -n "$DEBUG" ]; then echo " -> ok"; fi + if [ $DOM -le 7 ]; then + MTYP="Tech/Core" + else + MTYP="gemütliches" + fi + if [ -n "$DEBUG" ]; then echo " -> ok $MTYP"; fi MEETUPS="$MEETUPS $TS" + MEETUPTYPES="$MEETUPTYPES $MTYP" CNT=$((CNT + 1)) if [ $CNT -ge $LIMIT ]; then break; @@ -45,11 +54,22 @@ NEXT=$1 shift FUTURE=$@ +set -- $MEETUPTYPES +NEXTMTYP=$1 +shift +FUTUREMTYP=$@ + date --date="@$NEXT" +"%d.%m.%Y" > "$NEXT_FILE.new" +CNT=0 echo "<ul>" > "$AFTER_FILE.new" for meetup in $FUTURE; do - echo " <li>"`date --date="@$meetup" +"%d.%m.%Y"`"</li>" >> "$AFTER_FILE.new" + set -- $FUTUREMTYP + mtext=$1 + shift + FUTUREMTYP=$@ + echo " <li>"`date --date="@$meetup" +"%d.%m.%Y"`": $mtext Treffen </li>" >> "$AFTER_FILE.new" + CNT=$((CNT + 1)) done echo "</ul>" >> "$AFTER_FILE.new" mv "$NEXT_FILE.new" "$NEXT_FILE" diff --git a/meetup/gen_dates2.sh b/meetup/gen_dates2.sh new file mode 100644 index 0000000..5b9160d --- /dev/null +++ b/meetup/gen_dates2.sh @@ -0,0 +1,76 @@ +#!/bin/sh +# generates the upcoming meetups for Funkfeuer Graz Homepage +# +# this script should be called by cron every day (night) +# how far in the future should i go? +LIMIT=3 + +# uncomment to enable debug +DEBUG=0 + +# where to put the output files? +NEXT_FILE="next.html" +AFTER_FILE="after.html" + +DOW=`date +"%u"` +if [ $DOW -eq 1 ]; then + DOM=`date +"%e"` + TS=`date +"%s"` +else + DOM=`date --date="next monday" +"%e"` + TS=`date --date="next monday" +"%s"` +fi + +MEETUPS="" +MEETUPTYPES="" +CNT=0 +while true; do + if [ -n "$DEBUG" ]; then echo -n "check day($TS): "`date --date="@$TS" +"%d.%m.%Y"`; fi + + if [ $DOM -le 7 ] || ([ $DOM -ge 15 ] && [ $DOM -le 21 ]); then + if [ $DOM -le 7 ]; then + MTYP="Tech/Core" + else + MTYP="gemütliches" + fi + if [ -n "$DEBUG" ]; then echo " -> ok $MTYP"; fi + MEETUPS="$MEETUPS $TS" + MEETUPTYPES="$MEETUPTYPES $MTYP" + CNT=$((CNT + 1)) + if [ $CNT -ge $LIMIT ]; then + break; + fi + else + if [ -n "$DEBUG" ]; then echo ""; fi + fi + TS=$((TS + (7 * 24 * 3600))) + DOM=`date --date="@$TS" +"%e"` +done + +set -- $MEETUPS +NEXT=$1 +shift +FUTURE=$@ + +set -- $MEETUPTYPES +NEXTMTYP=$1 +shift +FUTUREMTYP=$@ + +date --date="@$NEXT" +"%d.%m.%Y" > "$NEXT_FILE.new" +CNT=0 +echo "<ul>" > "$AFTER_FILE.new" +for meetup in $FUTURE; do + set -- $FUTUREMTYP + mtext=$1 + shift + FUTUREMTYP=$@ + + echo " <li>"`date --date="@$meetup" +"%d.%m.%Y"`": $mtext Treffen </li>" >> "$AFTER_FILE.new" + CNT=$((CNT + 1)) +done +echo "</ul>" >> "$AFTER_FILE.new" +mv "$NEXT_FILE.new" "$NEXT_FILE" +mv "$AFTER_FILE.new" "$AFTER_FILE" + +exit 0 |