]> git.plutz.net Git - lobster/blobdiff - cards/list.sh
merge from confetti
[lobster] / cards / list.sh
index 9d5457ce2bdd5429259f34eaba4f78684f0e10bf..03fa97340bd546d83cdccc36f35b9c2ed90401ab 100755 (executable)
@@ -34,15 +34,20 @@ edit_card(){
          [div .section .insurance $(edit_item "$card" X-HEALTH-INSURANCE)]
          [div .section .note    $(edit_item "$card" NOTE X-CLIENT-REFERRAL)]
          [div .control
-           [select .item name="newfield"
-             [option value="" disabled="disabled" selected="selected" $(l10n edit_addfieldtext)]
-             $(for f in NICKNAME EMAIL TEL IMPP ADR URL NOTE; do
-               printf '[option value="%s" %s] ' "$f" "$(l10n "$f")"
-             done)
-          ][button .item type="submit" name="action" value="addfield" $(l10n edit_addfield)]
+           [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)]
+            ]
+            [div .item .newfield
+              [select name="newfield"
+               [option value="" disabled="disabled" selected="selected" $(l10n edit_addfieldtext)]
+               $(for f in NICKNAME EMAIL TEL IMPP ADR URL NOTE; do
+                 printf '[option value="%s" %s] ' "$f" "$(l10n "$f")"
+               done)
+             ][button type="submit" name="action" value="addfield" $(l10n edit_addfield)]
+            ]
            [button .item type="submit" name="action" value="update"   $(l10n edit_update)]
-           [input type="checkbox" #delete] [label .item for="delete" $(l10n edit_delete)]
-             [button .item type="submit" name="action" value="delete"]
            [button .item type="submit" name="action" value="cancel"   $(l10n edit_cancel)]
          ]
          [input type="hidden" name="UID" value="$(pdi_value "$card" UID |HTML)"]
@@ -61,8 +66,7 @@ print_card(){
        EOF
 
   cat <<-EOF
-    [span .card-anchor #${cardfile##*/}]
-    [div .card
+    [div .card #${cardfile##*/}
       [div .section .basic
       [h2 .item .FN . $N4 $N1 $N5]
       [span .item .firstname . $N2 $N3]
@@ -99,7 +103,7 @@ filter_cards(){
   local filter f fex='x;p;'
 
   filter="$(printf %s "${filter}" \
-            | sed -E 's;[]\/\(\)\\\$\?\.\+\*\;\[\{\}];\\\\&;g;
+            | sed -E 's;[]\/\(\)\\\$\?\.\+\*\;\[\{\}];\\&;g;
                       '"$upcase"
            )^"
 
@@ -109,13 +113,13 @@ filter_cards(){
     case $f in
       '') break
         ;;
-      ANY:*) fex="/\n.*(\;[^:]*)?:.*(${f#*:}).*\r?\n/{${fex}}"
+      ANY:*) fex="/\n.*(\;[^:]*)?:[^\n]*(${f#*:})[^\n]*\r?\n/{${fex}}"
         ;;
-      NAME:*) fex="/\n(N|FN|NICKNAME)(\;[^:]*)?:[^\n]*(${f#*:}).*\r?\n/{${fex}}"
+      NAME:*) fex="/\n(N|FN|NICKNAME)(\;[^:]*)?:[^\n]*(${f#*:})[^\n]*\r?\n/{${fex}}"
         ;;
-      STREET:*|ZIP:*) fex="/\nADR(\;[^:]*)?:[^\n]*(${f#*:}).*\r?\n/{${fex}}"
+      STREET:*|ZIP:*) fex="/\nADR(\;[^:]*)?:[^\n]*(${f#*:})[^\n]*\r?\n/{${fex}}"
         ;;
-      *) fex="/\n${f%%:*}(\;[^:]*)?:[^\n]*(${f#*:}).*\r?\n/{${fex}}"
+      *) fex="/\n${f%%:*}(\;[^:]*)?:[^\n]*(${f#*:})[^\n]*\r?\n/{${fex}}"
         ;;
     esac
   done