From 6c427ad053b8542e17285ce62ed2b7dde0966472 Mon Sep 17 00:00:00 2001 From: Pawel Tomak Date: Sat, 27 Mar 2010 08:45:52 +0100 Subject: Checkbox and textarea support also for remembered forms --- examples/data/scripts/formfiller.sh | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'examples/data/scripts/formfiller.sh') diff --git a/examples/data/scripts/formfiller.sh b/examples/data/scripts/formfiller.sh index afce151..7bb7cae 100755 --- a/examples/data/scripts/formfiller.sh +++ b/examples/data/scripts/formfiller.sh @@ -114,9 +114,13 @@ then option=`echo -e -n "$menu"| dmenu ${LINES} -nb "${NB}" -nf "${NF}" -sb "${SB}" -sf "${SF}" -p "${PROMPT}"` fi + sed 's/\([^(]\+\)(\(checkbox\)):[ ]*\(.\+\)/\1(\2):1/;s/\([^(]\+\)(\(checkbox\)):$/\1(\2):0/' -i $keydir/$domain cat $keydir/$domain | \ sed -n -e "/^!profile=${option}/,/^!profile=/p" | \ - sed -n -e 's/\([^(]\+\)([^)]\+):[ ]*\(.\+\)$/js if(window.frames.length > 0) { for(i=0;i 0) { e[0].value="\2"; } } catch(err) { } } }; document.getElementsByName("\1")[0].value="\2"/p' | \ + sed -n -e 's/\([^(]\+\)(\(password\|text\|textarea\)\+):[ ]*\(.\+\)/js if(window.frames.length > 0) { for(i=0;i 0) { e[0].value="\3" } } catch(err) { } } }; document.getElementsByName("\1")[0].value="\3"/p' | \ + sed -e 's/@/\\@/g' >> $fifo + cat $keydir/$domain | \ + sed -n -e 's/\([^(]\+\)(\(checkbox\)):[ ]*\(.\+\)/js if(window.frames.length > 0) { for(i=0;i 0) { e[0].checked=\3 } } catch(err) { } } }; document.getElementsByName("\1")[0].checked=\3/p' | \ sed -e 's/@/\\@/g' >> $fifo elif [ "$action" = "once" ] then @@ -163,7 +167,7 @@ else # echo "js "$dumpFunction" dump(); " | \ socat - unix-connect:$socket | \ - sed -n '/^[^(]\+([^)]\+):/p' > $keydir/$domain + sed -n '/^[^(]\+([^)]\+):/p' >> $keydir/$domain fi [ -e "$keydir/$domain" ] || exit 3 #this should never happen, but you never know. $editor "$keydir/$domain" #TODO: if user aborts save in editor, the file is already overwritten -- cgit v1.2.3