tazpkg rev 724

pkgs.cgi: add "show_button" function; tazpkg: non-interactive "list-config" for tazpanel.
author Aleksej Bobylev <al.bobylev@gmail.com>
date Wed Dec 24 02:51:01 2014 +0200 (2014-12-24)
parents 82838b56a261
children 0bfdb6c09732
files tazpanel/pkgs.cgi tazpkg
line diff
     1.1 --- a/tazpanel/pkgs.cgi	Tue Dec 23 17:44:49 2014 +0200
     1.2 +++ b/tazpanel/pkgs.cgi	Wed Dec 24 02:51:01 2014 +0200
     1.3 @@ -88,13 +88,10 @@
     1.4  	cat << EOT
     1.5  <table class="zebra outbox">
     1.6  <tbody>
     1.7 -<tr><td>$(_ 'Last recharge:')</td>
     1.8 +<tr><td>$(_ 'Last recharge:')</td><td>
     1.9  EOT
    1.10 -	stat=$(stat -c %y $PKGS_DB/packages.list | \
    1.11 -		sed 's/\(:..\):.*/\1/' | awk '{print $1}')
    1.12 -	mtime=$(find $PKGS_DB/packages.list -mtime +10)
    1.13 -	echo -n "<td>$stat "
    1.14 -	if [ "$mtime" ]; then
    1.15 +	ls -l $PKGS_DB/packages.list | awk '{print $6, $7, $8}'
    1.16 +	if [ -n "$(find $PKGS_DB/packages.list -mtime +10)" ]; then
    1.17  		_ '(Older than 10 days)'
    1.18  	else
    1.19  		_ '(Not older than 10 days)'
    1.20 @@ -102,7 +99,7 @@
    1.21  	cat << EOT
    1.22  </td></tr>
    1.23  <tr><td>$(_ 'Installed packages:')</td>
    1.24 -	<td>$(ls $INSTALLED | wc -l)</td></tr>
    1.25 +	<td>$(cat $PKGS_DB/installed.info | wc -l)</td></tr>
    1.26  <tr><td>$(_ 'Mirrored packages:')</td>
    1.27  	<td>$(cat $PKGS_DB/packages.list | wc -l)</td></tr>
    1.28  <tr><td>$(_ 'Upgradeable packages:')</td>
    1.29 @@ -149,6 +146,28 @@
    1.30  }
    1.31  
    1.32  
    1.33 +# Show button
    1.34 +show_button() {
    1.35 +	case $1 in
    1.36 +		recharge)     img='recharge'; label="$(_ 'Recharge list')" ;;
    1.37 +		up)           img='update';   label="$(_ 'Check upgrades')" ;;
    1.38 +		list)         img='tazpkg';   label="$(_ 'My packages')" ;;
    1.39 +		linkable)     img='tazpkg';   label="$(_ 'Linkable packages')" ;;
    1.40 +		admin)        img='edit';     label="$(_ 'Administration')" ;;
    1.41 +		*Block*)      img='';         label="$(_ 'Block')" ;;
    1.42 +		*Unblock*)    img='';         label="$(_ 'Unblock')" ;;
    1.43 +		*Repack*)     img='';         label="$(_ 'Repack')" ;;
    1.44 +		*saveconf*)   img='tazpkg';   label="$(_ 'Save configuration')" ;;
    1.45 +		*listconf*)   img='edit';     label="$(_ 'List configuration files')" ;;
    1.46 +		*quickcheck*) img='recharge'; label="$(_ 'Quick check')" ;;
    1.47 +		*fullcheck*)  img='recharge'; label="$(_ 'Full check')" ;;
    1.48 +	esac
    1.49 +	echo -n "<a class=\"button\" href=\"?$1\">"
    1.50 +	[ -n "$img" ] && echo -n "<img src=\"$IMAGES/$img.png\" />"
    1.51 +	echo "$label</a>"
    1.52 +}
    1.53 +
    1.54 +
    1.55  
    1.56  #
    1.57  # xHTML functions
    1.58 @@ -304,10 +323,8 @@
    1.59  		<input type="submit" value="$(_ 'Remove')" />
    1.60  	</div>
    1.61  	<div class="float-right">
    1.62 -		<a class="button" href="$SCRIPT_NAME?recharge">
    1.63 -			<img src="$IMAGES/recharge.png" />$(_ 'Recharge list')</a>
    1.64 -		<a class="button" href='$SCRIPT_NAME?up'>
    1.65 -			<img src="$IMAGES/update.png" />$(_ 'Check upgrades')</a>
    1.66 +		$(show_button recharge)
    1.67 +		$(show_button up)
    1.68  	</div>
    1.69  </div>
    1.70  
    1.71 @@ -359,10 +376,8 @@
    1.72  		<input type="submit" value="$(_ 'Link')" />
    1.73  	</div>
    1.74  	<div class="float-right">
    1.75 -		<a class="button" href="$SCRIPT_NAME?recharge">
    1.76 -			<img src="$IMAGES/recharge.png" />$(_ 'Recharge list')</a>
    1.77 -		<a class="button" href="$SCRIPT_NAME?up">
    1.78 -			<img src="$IMAGES/update.png" />$(_ 'Check upgrades')</a>
    1.79 +		$(show_button recharge)
    1.80 +		$(show_button up)
    1.81  	</div>
    1.82  </div>
    1.83  EOT
    1.84 @@ -418,9 +433,9 @@
    1.85  	<input type="hidden" name="repo" value="$repo" />
    1.86  </div>
    1.87  <div class="float-right">
    1.88 -	<a class="button" href="?recharge"><img src="$IMAGES/recharge.png" />$(_ 'Recharge list')</a>
    1.89 -	<a class="button" href="?up"><img src="$IMAGES/update.png" />$(_ 'Check upgrades')</a>
    1.90 -	<a class="button" href="?list"><img src="$IMAGES/tazpkg.png" />$(_ 'My packages')</a>
    1.91 +	$(show_button recharge)
    1.92 +	$(show_button up)
    1.93 +	$(show_button list)
    1.94  </div>
    1.95  </div>
    1.96  EOT
    1.97 @@ -516,12 +531,9 @@
    1.98  	<a href="$(cat $PANEL/lib/checkbox.js)">$(_ 'Toogle all')</a>
    1.99  </div>
   1.100  <div class="float-right">
   1.101 -	<a class="button" href="$SCRIPT_NAME?recharge">
   1.102 -		<img src="$IMAGES/recharge.png" />$(_ 'Recharge list')</a>
   1.103 -	<a class="button" href="$SCRIPT_NAME?up">
   1.104 -		<img src="$IMAGES/update.png" />$(_ 'Check upgrades')</a>
   1.105 -	<a class="button" href='$SCRIPT_NAME?list'>
   1.106 -		<img src="$IMAGES/tazpkg.png" />$(_ 'My packages')</a>
   1.107 +	$(show_button recharge)
   1.108 +	$(show_button up)
   1.109 +	$(show_button list)
   1.110  </div>
   1.111  </div>
   1.112  	<input type="hidden" name="repo" value="$repo" />
   1.113 @@ -580,10 +592,8 @@
   1.114  		<p>$(_ 'Recharge checks for new or updated packages')</p>
   1.115  	</div>
   1.116  	<div class="float-right">
   1.117 -		<a class="button" href='$SCRIPT_NAME?up'>
   1.118 -			<img src="$IMAGES/update.png" />$(_ 'Check upgrades')</a>
   1.119 -		<a class="button" href='$SCRIPT_NAME?list'>
   1.120 -			<img src="$IMAGES/tazpkg.png" />$(_ 'My packages')</a>
   1.121 +		$(show_button up)
   1.122 +		$(show_button list)
   1.123  	</div>
   1.124  </div>
   1.125  <div class="wrapper">
   1.126 @@ -620,10 +630,8 @@
   1.127  		<a href="$(cat $PANEL/lib/checkbox.js)">$(_ 'Toogle all')</a>
   1.128  	</div>
   1.129  	<div class="float-right">
   1.130 -		<a class="button" href="$SCRIPT_NAME?recharge">
   1.131 -			<img src="$IMAGES/recharge.png" />$(_ 'Recharge list')</a>
   1.132 -		<a class="button" href="$SCRIPT_NAME?list">
   1.133 -			<img src="$IMAGES/tazpkg.png" />$(_ 'My packages')</a>
   1.134 +		$(show_button recharge)
   1.135 +		$(show_button list)
   1.136  	</div>
   1.137  </div>
   1.138  EOT
   1.139 @@ -679,10 +687,7 @@
   1.140  		<p>$(_ 'Performing tasks on packages')</p>
   1.141  	</div>
   1.142  	<div class="float-right">
   1.143 -		<p>
   1.144 -			<a class="button" href="$SCRIPT_NAME?list">
   1.145 -				<img src="$IMAGES/tazpkg.png" />$(_ 'My packages')</a>
   1.146 -		</p>
   1.147 +		$(show_button list)
   1.148  	</div>
   1.149  </div>
   1.150  <div class="box">
   1.151 @@ -740,27 +745,18 @@
   1.152  
   1.153  		if [ -d $INSTALLED/$pkg ]; then
   1.154  			if grep -qs "^$pkg$" $PKGS_DB/blocked-packages.list; then
   1.155 -				cat << EOT
   1.156 -			<a class="button" href="$SCRIPT_NAME?do=Unblock&$pkg">$(_ 'Unblock')</a>
   1.157 -EOT
   1.158 +				show_button "do=Unblock&$pkg"
   1.159  			else
   1.160 -				cat << EOT
   1.161 -			<a class="button" href='$SCRIPT_NAME?do=Block&$pkg'>$(_ 'Block')</a>
   1.162 -EOT
   1.163 +				show_button "do=Block&$pkg"
   1.164  			fi
   1.165 -			cat << EOT
   1.166 -			<a class="button" href='$SCRIPT_NAME?do=Repack&$pkg'>$(_ 'Repack')</a>
   1.167 -EOT
   1.168 +			show_button "do=Repack&$pkg"
   1.169  		fi
   1.170  		i18n_desc $pkg
   1.171  		cat << EOT
   1.172  		</p>
   1.173  	</div>
   1.174  	<div class="float-right">
   1.175 -		<p>
   1.176 -			<a class="button" href='$SCRIPT_NAME?list'>
   1.177 -				<img src="$IMAGES/tazpkg.png" />$(_ 'My packages')</a>
   1.178 -		</p>
   1.179 +		$(show_button list)
   1.180  	</div>
   1.181  </div>
   1.182  <table class="zebra outbox">
   1.183 @@ -860,10 +856,8 @@
   1.184  				rm -rf $PKGS_DB/undigest/$repository ;;
   1.185  		esac
   1.186  		[ "$cmd" == "$(_n 'Set link')" ] &&
   1.187 -			[ -d "$(GET link)/$INSTALLED" ] &&
   1.188 -			ln -fs $(GET link) $PKGS_DB/fslink
   1.189 -		[ "$cmd" == "$(_n 'Remove link')" ] &&
   1.190 -			rm -f $PKGS_DB/fslink
   1.191 +			[ -d "$(GET link)/$INSTALLED" ] && ln -fs $(GET link) $PKGS_DB/fslink
   1.192 +		[ "$cmd" == "$(_n 'Remove link')" ] && rm -f $PKGS_DB/fslink
   1.193  		cache_files=$(find /var/cache/tazpkg -name *.tazpkg | wc -l)
   1.194  		cache_size=$(du -sh /var/cache/tazpkg | cut -f1 | sed 's|\.0||')
   1.195  		sidebar
   1.196 @@ -873,14 +867,10 @@
   1.197  	<p>$(_ 'TazPkg administration and settings')</p>
   1.198  </div>
   1.199  <div id="actions">
   1.200 -	<a class="button" href='$SCRIPT_NAME?admin=&action=saveconf'>
   1.201 -		<img src="$IMAGES/tazpkg.png" />$(_ 'Save configuration')</a>
   1.202 -	<a class="button" href='$SCRIPT_NAME?admin=&action=listconf'>
   1.203 -		<img src="$IMAGES/edit.png" />$(_ 'List configuration files')</a>
   1.204 -	<a class="button" href='$SCRIPT_NAME?admin=&action=quickcheck'>
   1.205 -		<img src="$IMAGES/recharge.png" />$(_ 'Quick check')</a>
   1.206 -	<a class="button" href='$SCRIPT_NAME?admin=&action=fullcheck'>
   1.207 -		<img src="$IMAGES/recharge.png" />$(_ 'Full check')</a>
   1.208 +	$(show_button 'admin=&action=saveconf')
   1.209 +	$(show_button 'admin=&action=listconf')
   1.210 +	$(show_button 'admin=&action=quickcheck')
   1.211 +	$(show_button 'admin=&action=fullcheck')
   1.212  </div>
   1.213  EOT
   1.214  		case "$(GET action)" in
   1.215 @@ -896,7 +886,6 @@
   1.216  					echo "<h4>$(_ 'Configuration files')</h4>"
   1.217  					echo "<ul>"
   1.218  					tazpkg list-config | while read file; do
   1.219 -						[ "${file:0:1}" == "/" ] || continue
   1.220  						if [ -e $file ]; then
   1.221  							echo "<li><a href=\"index.cgi?file=$file\">$file</a></li>"
   1.222  						else
   1.223 @@ -904,7 +893,7 @@
   1.224  						fi
   1.225  					done
   1.226  					echo "</ul>"
   1.227 -					echo "</pre>" ;;
   1.228 +					;;
   1.229  				quickcheck)
   1.230  					LOADING_MSG=$(_ 'Checking packages consistency...')
   1.231  					loading_msg
   1.232 @@ -1055,22 +1044,14 @@
   1.233  <h2>$(_ 'Summary')</h2>
   1.234  
   1.235  <div id="actions">
   1.236 -	<a class="button" href="$SCRIPT_NAME?list">
   1.237 -		<img src="$IMAGES/tazpkg.png" />$(_ 'My packages')</a>
   1.238 +	$(show_button list)
   1.239  EOT
   1.240  		fslink=$(readlink $PKGS_DB/fslink)
   1.241 -		[ -n "$fslink" -a -d "$fslink/$INSTALLED" ] &&
   1.242 -			cat << EOT
   1.243 -	<a class="button" href="$SCRIPT_NAME?linkable">
   1.244 -		<img src="$IMAGES/tazpkg.png" />$(_ 'Linkable packages')</a>
   1.245 -EOT
   1.246 +		[ -n "$fslink" -a -d "$fslink/$INSTALLED" ] && show_button linkable
   1.247 +		show_button recharge
   1.248 +		show_button up
   1.249 +		show_button admin
   1.250  		cat << EOT
   1.251 -	<a class="button" href="$SCRIPT_NAME?recharge">
   1.252 -		<img src="$IMAGES/recharge.png" />$(_ 'Recharge list')</a>
   1.253 -	<a class="button" href="$SCRIPT_NAME?up">
   1.254 -		<img src="$IMAGES/update.png" />$(_ 'Check upgrades')</a>
   1.255 -	<a class="button" href="$SCRIPT_NAME?admin">
   1.256 -		<img src="$IMAGES/edit.png" />$(_ 'Administration')</a>
   1.257  </div>
   1.258  
   1.259  $(packages_summary)
     2.1 --- a/tazpkg	Tue Dec 23 17:44:49 2014 +0200
     2.2 +++ b/tazpkg	Wed Dec 24 02:51:01 2014 +0200
     2.3 @@ -1954,7 +1954,7 @@
     2.4  
     2.5  	list-config)
     2.6  		# List configuration files installed.
     2.7 -		if [ "$2" = "--box" ]; then
     2.8 +		if [ -n "$box" ]; then
     2.9  			mkdir -p $TMP_DIR; cd $TMP_DIR
    2.10  			FILES="$INSTALLED/*/volatile.cpio.gz"
    2.11  			[ -n "$3" ] && FILES="$INSTALLED/$3/volatile.cpio.gz"
    2.12 @@ -1975,14 +1975,13 @@
    2.13  			cd $TOP_DIR
    2.14  			rm -rf $TMP_DIR
    2.15  		else
    2.16 -			title 'Configuration files'
    2.17 +			im && title 'Configuration files'
    2.18  			for i in $INSTALLED/*/volatile.cpio.gz; do
    2.19  				[ -n "$2" -a "$i" != "$INSTALLED/$2/volatile.cpio.gz" ] && continue
    2.20  				[ -f "$i" ] || continue
    2.21  				zcat $i | cpio -t --quiet
    2.22  			done | sed 's|^|/|' | sort
    2.23 -			separator
    2.24 -			newline
    2.25 +			im && footer
    2.26  		fi ;;
    2.27  
    2.28