tazpanel rev 456
boot.cgi: ISO mine: "table"izing input form.
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Mon Apr 13 01:44:08 2015 +0300 (2015-04-13) |
parents | 1bc6783d2671 |
children | 01289ab85829 |
files | boot.cgi |
line diff
1.1 --- a/boot.cgi Sun Apr 12 12:33:26 2015 +0200 1.2 +++ b/boot.cgi Mon Apr 13 01:44:08 2015 +0300 1.3 @@ -363,23 +363,20 @@ 1.4 1.5 *\ iso\ *) 1.6 xhtml_header 1.7 - iso=$(POST iso) 1.8 + iso=$(POST iso); [ -s "$iso" ] || unset iso 1.9 + action=$(POST action); [ "$action" ] || action=$(GET action) 1.10 workdir=$(POST workdir) 1.11 - action=$(POST action) 1.12 - [ "$action" ] || action=$(GET action) 1.13 [ -d $workdir ] || workdir=$(dirname $workdir) 1.14 [ -w $workdir -a "$workdir" ] || workdir=/tmp 1.15 - [ -s "$iso" ] || unset iso 1.16 + 1.17 echo "<h2>$(_ 'ISO mine')</h2>" 1.18 - [ "$iso" ] || cat <<EOT 1.19 -<section> 1.20 -Invalid ISO image. 1.21 -</section> 1.22 -EOT 1.23 + 1.24 + [ "$iso" ] || msg err 'Invalid ISO image.' 1.25 + 1.26 if [ "$iso" -a "$action" -a "$action" != "nop" ]; then 1.27 case "$action" in 1.28 - install*) dev=$(POST instdev) ;; 1.29 - *) dev=$(POST usbkeydev) ;; 1.30 + install*) dev=$(POST instdev) ;; 1.31 + *) dev=$(POST usbkeydev) ;; 1.32 esac 1.33 cd $workdir 1.34 cat <<EOT 1.35 @@ -392,21 +389,19 @@ 1.36 fi 1.37 cat <<EOT 1.38 <section> 1.39 -<form method="post" action="?iso"> 1.40 +<form method="post" action="?iso" class="wide"> 1.41 EOT 1.42 cat <<EOT 1.43 -<p> 1.44 -ISO image file full path (set /dev/cdrom for a physical CD-ROM)<br /> 1.45 -<input type="text" name="iso" value="$iso" size="50" /> 1.46 -</p> 1.47 -<p> 1.48 -Working directory 1.49 -<input type="text" name="workdir" value="$workdir" /> 1.50 -</p> 1.51 -<p> 1.52 -Windows partition 1.53 -<select name="instdev"> 1.54 - <option value="/dev/null">Choose a partition (optional)</option> 1.55 +<table> 1.56 + <tr><td>ISO image file full path 1.57 + <span data-img="info" title="set /dev/cdrom for a physical CD-ROM"></span> 1.58 + </td> 1.59 + <td><input type="text" name="iso" value="$iso" size="50"/></td></tr> 1.60 + <tr><td>Working directory</td> 1.61 + <td><input type="text" name="workdir" value="$workdir"/></td></tr> 1.62 + <tr><td>Windows partition</td> 1.63 + <td><select name="instdev"> 1.64 + <option value="/dev/null">Choose a partition (optional)</option> 1.65 EOT 1.66 blkid | grep -iE "(msdos|vfat|ntfs)" | \ 1.67 sed 's|^/dev/\(.*\):.*LABEL="\([^"]*\).*|\1 "\2"|' | \ 1.68 @@ -415,32 +410,31 @@ 1.69 echo "$(($(cat /sys/block/${dev:0:3}/$dev/size)/2048))MB</option>" 1.70 done 1.71 cat <<EOT 1.72 -</select> 1.73 -</p> 1.74 -<p> 1.75 -USB key device 1.76 -<select name="usbkeydev"> 1.77 - <option value="/dev/null">Choose a USB key (optional)</option> 1.78 + </select></td></tr> 1.79 + <tr><td>USB key device</td> 1.80 + <td><select name="usbkeydev"> 1.81 + <option value="/dev/null">Choose a USB key (optional)</option> 1.82 EOT 1.83 grep -l 1 /sys/block/*/removable | \ 1.84 sed 's|/sys/block/\(.*\)/removable|\1|' | while read dev; do 1.85 grep -qs 1 /sys/block/$DEV/ro && continue 1.86 echo -n "<option value=\"/dev/$dev\">/dev/$dev " 1.87 echo "$(($(cat /sys/block/$dev/size)/2048))MB $(cat \ 1.88 - /sys/block/$i/device/model 2> /dev/null)</option>" 1.89 + /sys/block/$i/device/model 2>/dev/null)</option>" 1.90 done 1.91 cat <<EOT 1.92 -</select> 1.93 -</p> 1.94 + </select></td></tr> 1.95 +</table> 1.96 <footer> 1.97 EOT 1.98 + 1.99 if [ "$iso" ]; then 1.100 cat <<EOT 1.101 <select name="action"> 1.102 <option value="nop">Choose an action</option> 1.103 -$(taziso $iso list | sed -e \ 1.104 -'s/"\(.*\)"[\t ]*"\(.*\)"/<option value="\1\">\2<\/option>/' -e \ 1.105 -"s|value=\"$action\"|& selected|") 1.106 + $(taziso $iso list | sed -e \ 1.107 + 's/"\(.*\)"[\t ]*"\(.*\)"/<option value="\1\">\2<\/option>/' -e \ 1.108 + "s|value=\"$action\"|& selected|") 1.109 </select> 1.110 EOT 1.111 elif [ "$action" ]; then 1.112 @@ -448,6 +442,7 @@ 1.113 <input type="hidden" name="action" value="$action" /> 1.114 EOT 1.115 fi 1.116 + 1.117 cat <<EOT 1.118 <button data-icon="cd" name="mine">Mine</button> 1.119 </footer> 1.120 @@ -455,6 +450,8 @@ 1.121 </section> 1.122 EOT 1.123 ;; 1.124 + 1.125 + 1.126 *) 1.127 # 1.128 # Default content with summary