X-Git-Url: https://git.plutz.net/?p=confetti;a=blobdiff_plain;f=cards%2Ffilter_card.sh;h=504fb08e5b78d0cb44c9c092732dfebf77aae1f5;hp=183278ffb94e96a0be465edef66baf9a48d45f7d;hb=07454834f9d0291be5e652eef5f62c889331d695;hpb=85ff3b292b0775165a0b889b3714151f135bf84c diff --git a/cards/filter_card.sh b/cards/filter_card.sh index 183278f..504fb08 100755 --- a/cards/filter_card.sh +++ b/cards/filter_card.sh @@ -21,16 +21,22 @@ filter="$( seq 0 100 |while read n; do filter_type="$(POST "filter_type${n}")" filter_text="$(POST "filter_text${n}")" - [ ! "$filter_type" -a ! "$filter_text" ] && break - if [ "$filter_type" = CATEGORIES ]; then + if [ ! "$filter_type" -a ! "$filter_text" ]; then + break + elif [ "$filter_type" = CATEGORIES ]; then printf '^CATEGORIES:' seq 0 $(POST_COUNT filter_cat$n) |while read m; do printf '|%s' "$(POST filter_cat$n $m)" done + elif [ "$filter_type" = course ]; then + printf '^course:' + seq 0 $(POST_COUNT filter_course$n) |while read m; do + printf '|%s' "$(POST filter_course$n $m)" + done else printf '^%s:%s' "$filter_type" "$filter_text" fi - done | sed -r \ + done | sed -E \ 's;\|+;\|;g; s;\^+;\^;g; s;:\|;:;g; :X; s;\^[^:]*:\^;\^;g; /\^[^:]*:\^/bX; s;^\^;;; s;\^[^:]*:$;;;' @@ -38,12 +44,15 @@ filter="$( case $(POST choice) in filter) - REDIRECT "/cards/?o=$(POST order)&f=${filter}" + REDIRECT "${_BASE}/cards/?o=$(POST order)&f=${filter}" ;; new_filter) - REDIRECT "/cards/?o=$(POST order)&f=${filter}&newfilter=yes" + REDIRECT "${_BASE}/cards/?o=$(POST order)&f=${filter}&newfilter=yes" + ;; + export_csv) + REDIRECT "${_BASE}/cards/export_csv.sh?o=$(POST order)&f=${filter}" ;; *) - REDIRECT '/cards/' + REDIRECT "${_BASE}/cards/" ;; esac