X-Git-Url: https://git.plutz.net/?p=confetti;a=blobdiff_plain;f=templates%2Fedit_attendee.sh;h=820bce8334e54fae795bb50304092e476c15b3ff;hp=3fd109afaff844bef2cbc62218595036b6072d81;hb=5736fc8f634020a8a32635e955c3a0d823499f42;hpb=16dfa142456ee86034dadd5ed91d52bcbdcbf314 diff --git a/templates/edit_attendee.sh b/templates/edit_attendee.sh index 3fd109a..820bce8 100755 --- a/templates/edit_attendee.sh +++ b/templates/edit_attendee.sh @@ -1,114 +1,184 @@ +# Copyright 2014 - 2016 Paul Hänsch +# +# This file is part of Confetti. +# +# Confetti is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Confetti is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with Confetti. If not, see . + +setchecked() { + printf 'checked="checked"' +} +setselected() { + printf 'selected="selected"' +} check_gen() { - [ "$values[GENDER]" = "$1" ] && echo 'selected="selected"' + [ "$values[GENDER]" = "$1" ] && setselected } check_a() { - egrep -q "^${1}.${id}$" "$_DATA/mappings/attendance" && echo 'checked="checked"' + egrep -q "^${1}.${id}$" "$_DATA/mappings/attendance" && setchecked +} +teltype() { + cat <<-EOF + + EOF } -n_last="$(echo "$values[N]" |sed -rn 's:^([^;]*;){0} *([^;]*).*$:\2:p')" -n_first="$(echo "$values[N]" |sed -rn 's:^([^;]*;){1} *([^;]*).*$:\2:p')" -n_middle="$(echo "$values[N]" |sed -rn 's:^([^;]*;){2} *([^;]*).*$:\2:p')" -n_pre="$(echo "$values[N]" |sed -rn 's:^([^;]*;){3} *([^;]*).*$:\2:p')" -n_post="$(echo "$values[N]" |sed -rn 's:^([^;]*;){4} *([^;]*)*$:\2:p')" - -SUP_FIELDS=(N NICKNAME GENDER BDAY EMAIL TEL IMPP ADR URL NOTE) - -[ -z "$values[UID]" ] && values[UID]="$(dbus-uuidgen)" - -echo '
' -echo '
' -echo '' -echo '
' -echo ' '$(l10n N)'' -echo ' ' -echo ' ' -echo ' ' -echo ' ' -echo ' ' -if [ -n "$values[GENDER]" ]; then - echo ' ' -fi -for n in NICKNAME NICKNAME{0..10}; do [ -n "$values[$n]" ] &&\ - echo ' ' -done -if [ -n "$values[BDAY]" ]; then - echo ' '$(l10n BDAY)'' - echo ' ' -fi -if [ -n "$values[SOUND]" ]; then - echo ' ' +list_items(){ + item="$1" + placeholder="$2" + [ -n "${values[$item]+x}" ] && printf '

%s

\n' "$(l10n $item)" + for n in "$item" "$item"{0..100}; do + if [ -n "${values[$n]+x}" ]; then + case "$item" in + (ADR|NOTE) + printf '\n' \ + "$item" "$item" "$(htmlsafe ${values[$n]})" + ;; + (TEL) + teltype "${values[${n}_TYPE]}" + printf '\n' \ + "$item" "$item" "$(attribsafe ${values[$n]})" + ;; + (*) + printf '\n' \ + "$item" "$item" "$(attribsafe ${values[$n]})" "$placeholder" + ;; + esac + else + break + fi + done +} + +list_section(){ + printf '
' "$1" + shift 1 + for each in $@; do + list_items "$each" + done + printf '
' +} + +hi_company="${values[X-HEALTH-INSURANCE+1]}" + hi_number="${values[X-HEALTH-INSURANCE+2]}" + hi_status="${values[X-HEALTH-INSURANCE+3]}" + +[ -z "$values[UID]" ] && values[UID]="$(uuidgenerator)" + +cat < + +
+

$(l10n N)

+ + + + + + + +END_HTML + + for n in NICKNAME NICKNAME{0..100}; do + [ -z "${values[$n]+x}" ] && break \ + || printf ' + + ' "$(attribsafe ${values[$n]})" "$(l10n NICKNAME)" + done + + list_items BDAY YYYY-MM-DD + list_items X-ZACK-JOINDATE YYYY-MM-DD + list_items X-ZACK-LEAVEDATE YYYY-MM-DD + + [ -n "$values[SOUND]" ] && printf ' + ' "$values[SOUND]" + + [ -n "$values[PHOTO]" ] && printf ' + + ' "${values[PHOTO_TYPE]}" "${values[PHOTO]}" + + [ -n "$values[LOGO]" ] && printf ' + + ' "${values[LOGO_TYPE]}" "${values[LOGO]}" + +printf '
' + +if [ "$PROFILE" = circus ]; then + list_section phone TEL + list_section message EMAIL IMPP URL + list_section address ADR + list_section note NOTE X-CLIENT-REFERRAL + cat <<-END_HTML +
+

$(l10n course_attendance)

+ $(listcourses |while read each; do + cname="$(sed -rn 's:^SUMMARY\:(.*)$:\1:p' "$_DATA/ical/$each")" + printf '' \ + "$(attribsafe "$each")" "$(check_a "$each")" "$(htmlsafe "$cname")" + done) +
+ END_HTML +elif [ "$PROFILE" = medical ]; then + list_section address ADR + list_section phone TEL EMAIL IMPP URL + cat <<-END_HTML +
+

$(l10n X-HEALTH-INSURANCE)

+ + + + + +
+ END_HTML + list_section note NOTE X-CLIENT-REFERRAL fi -[ -n "$values[PHOTO]" ] &&\ - echo ' ' -[ -n "$values[LOGO]" ] &&\ - echo ' ' -echo '
' -echo '' -echo '
' -echo ' '$(l10n TEL)'' -for n in TEL TEL{0..10}; do [ -n "$values[$n]" ] &&\ - echo ' ' -done -echo '
' -echo '' -echo '
' -echo ' '$(l10n EMAIL)'' -for n in EMAIL EMAIL{0..10}; do [ -n "$values[$n]" ] &&\ - echo ' ' -done -[ -n "$values[IMPP]" ] && \ - echo ' '$(l10n IMPP)'' -for n in IMPP IMPP{0..10}; do [ -n "$values[$n]" ] &&\ - echo ' ' -done -echo '
' -echo '' -echo '
' -echo ' '$(l10n ADR)'' -for n in ADR ADR{0..10}; do [ -n "$values[$n]" ] &&\ - echo ' ' -done -[ -n "$values[URL]" ] && \ - echo ' '$(l10n URL)'' -for n in URL URL{0..10}; do [ -n "$values[$n]" ] &&\ - echo ' ' -done -echo '
' -echo '' -echo '
' -echo ' '$(l10n NOTE)'' -for n in NOTE NOTE{0..10}; do [ -n "$values[$n]" ] &&\ - echo ' ' -done -echo '
' -echo '' -echo '
' -echo ' '$(l10n course_attendance)'' -listcourses |while read each; do - cname="$(sed -rn 's:^SUMMARY\:(.*)$:\1:p' "$_DATA/ical/$each")" - echo ' '$cname'' -done -echo '
' -echo '' -echo '
' -echo ' ' -echo ' ' -echo ' ' -echo ' ' -echo ' ' -echo '
' -echo '' -echo '
' -echo '
' + +cat < + + + + + + + + +END_HTML