tazpkg diff tazpanel/pkgs.cgi @ rev 762
tazpkg: re-make block and unblock, add chblock to change blocking of package; pkgs.cgi: remove website link from packages list, show selected packages count, add '(Un)block' button for bulk operation; pkgs.css: clean old code.
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Wed Apr 01 04:29:22 2015 +0300 (2015-04-01) |
parents | 98c62c676216 |
children | 5a6155d9197a |
line diff
1.1 --- a/tazpanel/pkgs.cgi Mon Mar 30 11:52:49 2015 +0300 1.2 +++ b/tazpanel/pkgs.cgi Wed Apr 01 04:29:22 2015 +0300 1.3 @@ -55,7 +55,7 @@ 1.4 1.5 parse_packages_desc() { 1.6 IFS="|" 1.7 - cut -f 1,2,3,5 -d "|" | while read PACKAGE VERSION SHORT_DESC WEB_SITE 1.8 + cut -f 1,2,3 -d "|" | while read PACKAGE VERSION SHORT_DESC 1.9 do 1.10 class=pkg; [ -d $INSTALLED/${PACKAGE% } ] && class=pkgi 1.11 i18n_desc $PACKAGE 1.12 @@ -64,7 +64,6 @@ 1.13 <td><input type="checkbox" name="pkg" value="$PACKAGE">$(pkg_info_link $PACKAGE $class)</td> 1.14 <td>$VERSION</td> 1.15 <td>$SHORT_DESC</td> 1.16 - <td><a data-img="web" href="$WEB_SITE"></a></td> 1.17 </tr> 1.18 EOT 1.19 done 1.20 @@ -82,7 +81,6 @@ 1.21 <td><input type="checkbox" name="pkg" value="$PACKAGE">$(pkg_info_link $PACKAGE $class)</td> 1.22 <td>$VERSION</td> 1.23 <td>$SHORT_DESC</td> 1.24 - <td><a data-img="web" href="$WEB_SITE"></a></td> 1.25 </tr> 1.26 EOT 1.27 done 1.28 @@ -107,6 +105,7 @@ 1.29 *Link*) class='link'; label="$(_ 'Link')" ;; 1.30 *Block*) class='lock'; label="$(_ 'Block')" ;; 1.31 *Unblock*) class='unlock'; label="$(_ 'Unblock')" ;; 1.32 + *Chblock*) class='chlock'; label="$(_ '(Un)block')" ;; 1.33 *Repack*) class='repack'; label="$(_ 'Repack')" ;; 1.34 *saveconf*) class='save'; label="$(_ 'Save configuration')" ;; 1.35 *listconf*) class='list'; label="$(_ 'List configuration files')" ;; 1.36 @@ -117,11 +116,12 @@ 1.37 *removelink*) class='unlink'; label="$(_ 'Remove link')" ;; 1.38 *add-mirror) class='add'; label="$(_n 'Add mirror')" ;; 1.39 *add-repo) class='add'; label="$(_n 'Add repository')" ;; 1.40 + toggle) class='toggle'; label="$(_n 'Toggle all')" ;; 1.41 esac 1.42 - if [ -n "$class" ]; then 1.43 + if [ "$button" == 'toggle' ]; then 1.44 + echo -n "<span class=\"float-right\"><button data-icon=\"$class\" onclick=\"checkBoxes()\">$label</button></span>" 1.45 + else 1.46 echo -n "<button data-icon=\"$class\" name=\"${button%%=*}\" value=\"${button#*=}\">$label</button>" 1.47 - else 1.48 - echo -n "<button name=\"${button%%=*}\" value=\"${button#*=}\"><img src=\"$IMAGES/$img.png\"/>$label</button>" 1.49 fi 1.50 done 1.51 } 1.52 @@ -156,7 +156,6 @@ 1.53 <td>$(_ 'Name')</td> 1.54 <td>$(_ 'Version')</td> 1.55 <td>$(_ 'Description')</td> 1.56 - <td>$(_ 'Web')</td> 1.57 </tr> 1.58 </thead> 1.59 <tbody> 1.60 @@ -383,6 +382,7 @@ 1.61 theForm.appendChild(hInput); 1.62 } 1.63 } 1.64 +document.getElementById('countSelected').innerText = pkgs.length; 1.65 </script> 1.66 EOT 1.67 fi 1.68 @@ -516,13 +516,16 @@ 1.69 <h2>$(_ 'Packages list')</h2> 1.70 <p>$title</p> 1.71 1.72 -<div>$(_ 'Selection:'; 1.73 - { 1.74 - [ "$my" != 'my' ] && show_button do=Install 1.75 - show_button do=Remove 1.76 - } | sed 's|button |button form="pkglist" |g') 1.77 - <button data-icon="toggle" onclick="checkBoxes(window)">$(_ 'Toggle all')</button> 1.78 -</div> 1.79 +<section> 1.80 + <div>$(_ 'Selected packages:') <span id="countSelected"></span></div> 1.81 + <footer> 1.82 + $({ 1.83 + [ "$my" != 'my' ] && show_button do=Install 1.84 + show_button do=Chblock do=Remove 1.85 + } | sed 's|button |button form="pkglist" |g') 1.86 + $(show_button toggle) 1.87 + </footer> 1.88 +</section> 1.89 1.90 <form id="pkglist" class="wide"> 1.91 EOT 1.92 @@ -531,7 +534,7 @@ 1.93 done 1.94 cat << EOT 1.95 </form> 1.96 -<script type="text/javascript">window.onscroll = scrollHandler;</script> 1.97 +<script type="text/javascript">window.onscroll = scrollHandler; setCountSelPkgs();</script> 1.98 EOT 1.99 ;; 1.100 1.101 @@ -551,10 +554,13 @@ 1.102 cat << EOT 1.103 <h2>$(_ 'Search packages')</h2> 1.104 1.105 -<div>$(_ 'Selection:'; 1.106 - show_button do=Install do=Remove | sed 's|button |button form="pkglist" |g') 1.107 - <button data-icon="toggle" onclick="checkBoxes(window)">$(_ 'Toggle all')</button> 1.108 -</div> 1.109 +<section> 1.110 + <div>$(_ 'Selected packages:') <span id="countSelected"></span></div> 1.111 + <footer> 1.112 + $(show_button do=Install do=Chblock do=Remove | sed 's|button |button form="pkglist" |g') 1.113 + $(show_button toggle) 1.114 + </footer> 1.115 +</section> 1.116 1.117 <form id="pkglist" class="wide"> 1.118 EOT 1.119 @@ -589,6 +595,7 @@ 1.120 </tbody> 1.121 </table> 1.122 </form> 1.123 +<script type="text/javascript">window.onscroll = scrollHandler; setCountSelPkgs();</script> 1.124 EOT 1.125 ;; 1.126 1.127 @@ -631,11 +638,13 @@ 1.128 cat << EOT 1.129 <h2>$(_ 'Up packages')</h2> 1.130 1.131 -<div>$(_ 'Selection:'; 1.132 - show_button do=Install do=Remove | sed 's|button |button form="pkglist" |g') 1.133 - <button data-icon="toggle" onclick="checkBoxes(window)">$(_ 'Toggle all')</button> 1.134 - <div class="float-right">$(show_button recharge)</div> 1.135 -</div> 1.136 +<section> 1.137 + <div>$(_ 'Selected packages:') <span id="countSelected"></span></div> 1.138 + <footer> 1.139 + $(show_button do=Install do=Chblock do=Remove | sed 's|button |button form="pkglist" |g') 1.140 + $(show_button toggle) 1.141 + </footer> 1.142 +</section> 1.143 1.144 <form id="pkglist" class="wide"> 1.145 EOT 1.146 @@ -647,7 +656,12 @@ 1.147 grep -hs "^$pkg " $PKGS_DB/packages.info $PKGS_DB/undigest/*/packages.info | parse_packages_info 1.148 done 1.149 1.150 - echo "</tbody></table></form>" 1.151 + cat << EOT 1.152 + </tbody> 1.153 + </table> 1.154 +</form> 1.155 +<script type="text/javascript">window.onscroll = scrollHandler; setCountSelPkgs();</script> 1.156 +EOT 1.157 ;; 1.158 1.159 1.160 @@ -668,12 +682,13 @@ 1.161 # Describe the command 1.162 bpkgs="<b>$pkgs</b>"; opt='' 1.163 case $cmd in 1.164 - install) MSG="$(_ 'Installing: %s' "$bpkgs")"; opt=--forced; cmd=get-install ;; 1.165 - remove) MSG="$(_ 'Removing: %s' "$bpkgs")" ;; 1.166 - link) MSG="$(_ 'Linking: %s' "$bpkgs")"; opt=$(readlink $PKGS_DB/fslink) ;; 1.167 - block) MSG="$(_ 'Blocking: %s' "$bpkgs")" ;; 1.168 - unblock) MSG="$(_ 'Unblocking: %s' "$bpkgs")" ;; 1.169 - repack) MSG="$(_ 'Repacking: %s' "$bpkgs")" ;; 1.170 + install) MSG="$(_ 'Installing: %s' "$bpkgs")"; opt=--forced; cmd=get-install ;; 1.171 + remove) MSG="$(_ 'Removing: %s' "$bpkgs")" ;; 1.172 + link) MSG="$(_ 'Linking: %s' "$bpkgs")"; opt=$(readlink $PKGS_DB/fslink) ;; 1.173 + block) MSG="$(_ 'Blocking: %s' "$bpkgs")" ;; 1.174 + unblock) MSG="$(_ 'Unblocking: %s' "$bpkgs")" ;; 1.175 + chblock) MSG="$(_ '(Un)blocking: %s' "$bpkgs")" ;; 1.176 + repack) MSG="$(_ 'Repacking: %s' "$bpkgs")" ;; 1.177 esac 1.178 1.179 cat << EOT 1.180 @@ -1159,18 +1174,23 @@ 1.181 cat << EOT 1.182 <h2 data-icon="tag">$(_ 'Tag "%s"' $tag)</h2> 1.183 1.184 -<div>$(_ 'Selection:'; 1.185 - show_button do=Install do=Remove | sed 's|button |button form="pkglist" |g') 1.186 - <button data-icon="toggle" onclick="checkBoxes(window)">$(_ 'Toggle all')</button> 1.187 - <div class="float-right">$(show_button tags)</div> 1.188 -</div> 1.189 +<section> 1.190 + <div>$(_ 'Selected packages:') <span id="countSelected"></span></div> 1.191 + <footer> 1.192 + $(show_button do=Install do=Chblock do=Remove | sed 's|button |button form="pkglist" |g') 1.193 + $(show_button toggle) 1.194 + </footer> 1.195 +</section> 1.196 1.197 <form id="pkglist" class="wide"> 1.198 EOT 1.199 for i in $(repo_list ""); do 1.200 show_list all 1.201 done 1.202 - echo '</form>' 1.203 + cat << EOT 1.204 +</form> 1.205 +<script type="text/javascript">window.onscroll = scrollHandler; setCountSelPkgs();</script> 1.206 +EOT 1.207 ;; 1.208 1.209 1.210 @@ -1183,10 +1203,15 @@ 1.211 cat << EOT 1.212 <h2>$(_ 'Blocked packages list')</h2> 1.213 1.214 -<form> 1.215 -<div id="actions"> 1.216 - $(_ 'Selection:'; show_button do=Unblock) 1.217 -</div> 1.218 +<section> 1.219 + <div>$(_ 'Selected packages:') <span id="countSelected"></span></div> 1.220 + <footer> 1.221 + $(show_button do=Unblock | sed 's|button |button form="pkglist" |g') 1.222 + $(show_button toggle) 1.223 + </footer> 1.224 +</section> 1.225 + 1.226 +<form id="pkglist" class="wide"> 1.227 EOT 1.228 table_head 1.229 for i in $(cat $PKGS_DB/blocked-packages.list); do 1.230 @@ -1195,7 +1220,12 @@ 1.231 printf "<tr><td><input type=\"checkbox\" name=\"pkg\" value=\"%s\"><a data-icon=\"pkgib\" href=\"?info=%s\">%s</a></td><td>%s</td><td>%s</td><td><a href=\"%s\"></a></td></tr>\n", $1, gensub(/\+/, "%2B", "g", $1), $1, $2, $4, $5 1.232 }' $PKGS_DB/installed.info 1.233 done 1.234 - echo '</tbody></table></form>' 1.235 + cat << EOT 1.236 + </tbody> 1.237 + </table> 1.238 +</form> 1.239 +<script type="text/javascript">window.onscroll = scrollHandler; setCountSelPkgs();</script> 1.240 +EOT 1.241 ;; 1.242 1.243