]> git.plutz.net Git - confetti/blobdiff - courses/list.sh
allow running from sub directory of base location
[confetti] / courses / list.sh
index 4a23af7208a12fc7ef26bf4bda3ceedd3de4bed6..cc0deae382f77cd2a22c016c1a5af10c28e40a45 100755 (executable)
@@ -2,8 +2,10 @@
 
 . "${_EXEC}"/pdiread.sh
 
+SUP_FIELDS="COMMENT"
+
 edit_course(){
-  local coursefile="$_DATA/courses/$1" 
+  local coursefile="$_DATA/ical/$1" 
   local tempfile course
 
   . $_EXEC/session_lock.sh
@@ -13,7 +15,8 @@ edit_course(){
   else
     course="$(pdi_load "$tempfile")"
     cat <<-EOF
-       [form .course #${coursefile##*/} action="/cards/update_course.sh" method="POST"
+       [form .course #${coursefile##*/} action="${_BASE}/courses/update_course.sh" method="POST"
+          [input type="hidden" name="course" value="${coursefile##*/}"]
          [input type="hidden" name="tid" value="$(transid ${tempfile})"]
           [div .section .basic . $(
             edit_item "$course" SUMMARY COMMENT
@@ -24,19 +27,23 @@ edit_course(){
           [div .section .recur . $(
             edit_item "$course" RRULE
           )]
-          [div .section .select_attendance . $(
+          [div .section .attendance . $(
             edit_item "$course" attendance
           )]
           [div .control
-            [select .item name=newfield
+            [!-- select .item name=newfield
               [option disabled="disabled" selected . $(l10n edit_addfieldtext)]
               $(for f in $SUP_FIELDS; do printf '[option value="%s" . %s]\n' "$f" "$(l10n "$f")"; done)
             ]
-            [button .item type="submit" name="action" value="addfield" . $(l10n edit_addfield)]
+            [button .item type="submit" name="action" value="addfield" . $(l10n edit_addfield) --]
             [button .item type="submit" name="action" value="update"   . $(l10n edit_update)]
-            [button .item type="submit" name="action" value="delete"   . $(l10n edit_delete)]
             [button .item type="submit" name="action" value="cancel"   . $(l10n edit_cancel)]
-          ]'
+            [div .item .delete label="$(l10n edit_delete)"
+              [input type="checkbox" #delete]
+              [label for="delete" $(l10n edit_delete)]
+              [button type="submit" name="action" value="delete" $(l10n edit_delete)]
+            ]
+          ]
        ]
        EOF
   fi
@@ -53,16 +60,16 @@ print_course(){
       [div .section .COMMENT   . $(cal_item "$course" COMMENT)]
       [div .section .attendance [h3 $(l10n course_attendance) ] [ul . 
         $(grep -F "${coursefile##*/}   " "$_DATA/mappings/attendance" |while read discard each; do
-          printf '[li [a .item .attendance href="/cards/#%s" . %s]]\n' \
-                 "$each" \
+          printf '[li [a .item .attendance href="%s/cards/#%s" . %s]]\n' \
+                 "${_BASE}" "$each" \
                  "$(pdi_value "$(pdi_load "$_DATA/vcard/$each")" FN |unescape |HTML)"
         done |sort -k7)]
       ]
       [div .control
-        [a .item href="/courses/edit_course.sh?course=${coursefile##*/}" $(l10n edit)]
-        [a .item href="/courses/export_pdf.sh?course=${coursefile##*/}" target="blank" $(l10n courselist)]
-        [a .item href="/courses/export_ical.sh?course=${coursefile##*/}" $(l10n ics_export)]
-        [a .item href="mailto:zack@vuesch.org?bcc=$(course_mail "${coursefile##*/}" |HTML)" $(l10n course_mail)]
+        [a .button .item href="${_BASE}/courses/edit_course.sh?course=${coursefile##*/}" $(l10n edit)]
+        [a .button .item href="${_BASE}/courses/export_pdf.sh?course=${coursefile##*/}" target="blank" $(l10n courselist)]
+        [a .button .item href="${_BASE}/courses/export_ical.sh?course=${coursefile##*/}" $(l10n ics_export)]
+        [a .button .item href="mailto:zack@vuesch.org?bcc=$(course_mail "${coursefile##*/}" |HTML)" $(l10n course_mail)]
       ]
     ]
        EOF
@@ -74,7 +81,7 @@ course_mail() {
     cat "${_DATA}/vcard/${card}"
   done \
   | pdi_load - \
-  | sed -rn 's;^EMAIL(\;[^:]*)*:(.+)\r?$;\2,;p' \
+  | sed -nE 's;^EMAIL(\;[^:]*)*:(.+)\r?$;\2,;p' \
   | tr -d \\n \
   | unescape
 }
@@ -107,7 +114,7 @@ order_courses() {
 }
 
 list_courses(){
-  printf '%s\n' ${_DATA}/courses/*.ics \
+  printf '%s\n' ${_DATA}/ical/*.ics \
   | order_courses \
   | print_courses
 }