# HG changeset patch # User Aleksej Bobylev # Date 1427851762 -10800 # Node ID ad921c2aee59a09863527c7831bec5c001197448 # Parent 98c62c67621698b29565390c867265806d2a4ae7 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. diff -r 98c62c676216 -r ad921c2aee59 tazpanel/pkgs.cgi --- a/tazpanel/pkgs.cgi Mon Mar 30 11:52:49 2015 +0300 +++ b/tazpanel/pkgs.cgi Wed Apr 01 04:29:22 2015 +0300 @@ -55,7 +55,7 @@ parse_packages_desc() { IFS="|" - cut -f 1,2,3,5 -d "|" | while read PACKAGE VERSION SHORT_DESC WEB_SITE + cut -f 1,2,3 -d "|" | while read PACKAGE VERSION SHORT_DESC do class=pkg; [ -d $INSTALLED/${PACKAGE% } ] && class=pkgi i18n_desc $PACKAGE @@ -64,7 +64,6 @@ $(pkg_info_link $PACKAGE $class) $VERSION $SHORT_DESC - EOT done @@ -82,7 +81,6 @@ $(pkg_info_link $PACKAGE $class) $VERSION $SHORT_DESC - EOT done @@ -107,6 +105,7 @@ *Link*) class='link'; label="$(_ 'Link')" ;; *Block*) class='lock'; label="$(_ 'Block')" ;; *Unblock*) class='unlock'; label="$(_ 'Unblock')" ;; + *Chblock*) class='chlock'; label="$(_ '(Un)block')" ;; *Repack*) class='repack'; label="$(_ 'Repack')" ;; *saveconf*) class='save'; label="$(_ 'Save configuration')" ;; *listconf*) class='list'; label="$(_ 'List configuration files')" ;; @@ -117,11 +116,12 @@ *removelink*) class='unlink'; label="$(_ 'Remove link')" ;; *add-mirror) class='add'; label="$(_n 'Add mirror')" ;; *add-repo) class='add'; label="$(_n 'Add repository')" ;; + toggle) class='toggle'; label="$(_n 'Toggle all')" ;; esac - if [ -n "$class" ]; then + if [ "$button" == 'toggle' ]; then + echo -n "" + else echo -n "" - else - echo -n "" fi done } @@ -156,7 +156,6 @@ $(_ 'Name') $(_ 'Version') $(_ 'Description') - $(_ 'Web') @@ -383,6 +382,7 @@ theForm.appendChild(hInput); } } +document.getElementById('countSelected').innerText = pkgs.length; EOT fi @@ -516,13 +516,16 @@

$(_ 'Packages list')

$title

-
$(_ 'Selection:'; - { - [ "$my" != 'my' ] && show_button do=Install - show_button do=Remove - } | sed 's|button |button form="pkglist" |g') - -
+
+
$(_ 'Selected packages:')
+
+ $({ + [ "$my" != 'my' ] && show_button do=Install + show_button do=Chblock do=Remove + } | sed 's|button |button form="pkglist" |g') + $(show_button toggle) +
+
EOT @@ -531,7 +534,7 @@ done cat << EOT
- + EOT ;; @@ -551,10 +554,13 @@ cat << EOT

$(_ 'Search packages')

-
$(_ 'Selection:'; - show_button do=Install do=Remove | sed 's|button |button form="pkglist" |g') - -
+
+
$(_ 'Selected packages:')
+
+ $(show_button do=Install do=Chblock do=Remove | sed 's|button |button form="pkglist" |g') + $(show_button toggle) +
+
EOT @@ -589,6 +595,7 @@
+ EOT ;; @@ -631,11 +638,13 @@ cat << EOT

$(_ 'Up packages')

-
$(_ 'Selection:'; - show_button do=Install do=Remove | sed 's|button |button form="pkglist" |g') - -
$(show_button recharge)
-
+
+
$(_ 'Selected packages:')
+
+ $(show_button do=Install do=Chblock do=Remove | sed 's|button |button form="pkglist" |g') + $(show_button toggle) +
+
EOT @@ -647,7 +656,12 @@ grep -hs "^$pkg " $PKGS_DB/packages.info $PKGS_DB/undigest/*/packages.info | parse_packages_info done - echo "
" + cat << EOT + + + + +EOT ;; @@ -668,12 +682,13 @@ # Describe the command bpkgs="$pkgs"; opt='' case $cmd in - install) MSG="$(_ 'Installing: %s' "$bpkgs")"; opt=--forced; cmd=get-install ;; - remove) MSG="$(_ 'Removing: %s' "$bpkgs")" ;; - link) MSG="$(_ 'Linking: %s' "$bpkgs")"; opt=$(readlink $PKGS_DB/fslink) ;; - block) MSG="$(_ 'Blocking: %s' "$bpkgs")" ;; - unblock) MSG="$(_ 'Unblocking: %s' "$bpkgs")" ;; - repack) MSG="$(_ 'Repacking: %s' "$bpkgs")" ;; + install) MSG="$(_ 'Installing: %s' "$bpkgs")"; opt=--forced; cmd=get-install ;; + remove) MSG="$(_ 'Removing: %s' "$bpkgs")" ;; + link) MSG="$(_ 'Linking: %s' "$bpkgs")"; opt=$(readlink $PKGS_DB/fslink) ;; + block) MSG="$(_ 'Blocking: %s' "$bpkgs")" ;; + unblock) MSG="$(_ 'Unblocking: %s' "$bpkgs")" ;; + chblock) MSG="$(_ '(Un)blocking: %s' "$bpkgs")" ;; + repack) MSG="$(_ 'Repacking: %s' "$bpkgs")" ;; esac cat << EOT @@ -1159,18 +1174,23 @@ cat << EOT

$(_ 'Tag "%s"' $tag)

-
$(_ 'Selection:'; - show_button do=Install do=Remove | sed 's|button |button form="pkglist" |g') - -
$(show_button tags)
-
+
+
$(_ 'Selected packages:')
+
+ $(show_button do=Install do=Chblock do=Remove | sed 's|button |button form="pkglist" |g') + $(show_button toggle) +
+
EOT for i in $(repo_list ""); do show_list all done - echo '
' + cat << EOT + + +EOT ;; @@ -1183,10 +1203,15 @@ cat << EOT

$(_ 'Blocked packages list')

-
-
- $(_ 'Selection:'; show_button do=Unblock) -
+
+
$(_ 'Selected packages:')
+
+ $(show_button do=Unblock | sed 's|button |button form="pkglist" |g') + $(show_button toggle) +
+
+ + EOT table_head for i in $(cat $PKGS_DB/blocked-packages.list); do @@ -1195,7 +1220,12 @@ printf "%s%s%s\n", $1, gensub(/\+/, "%2B", "g", $1), $1, $2, $4, $5 }' $PKGS_DB/installed.info done - echo '
' + cat << EOT + + + + +EOT ;; diff -r 98c62c676216 -r ad921c2aee59 tazpanel/pkgs.css --- a/tazpanel/pkgs.css Mon Mar 30 11:52:49 2015 +0300 +++ b/tazpanel/pkgs.css Wed Apr 01 04:29:22 2015 +0300 @@ -1,4 +1,7 @@ -/*body { -webkit-appearance: window; }*/ +/** + * CSS style for TazPkg/TazPanel - (C) 2011-2015 SliTaz GNU/Linux + */ + /** * Sidebar menus @@ -22,7 +25,16 @@ text-align: center; } + + + + +/** + * Sidebar category selector + */ + /* hack to remove unwanted scrollbar from multiline selector */ + .select_wrap { display: inline-block; vertical-align: top; @@ -45,65 +57,19 @@ #sidebar a { display: inline-block; padding: 0 0 0 0.5em; margin: 0; - color: #000; + color: CaptionText; font-size: small; width: 100%; } + + + /** * List of packages */ -/* links classes: - * pkg - package (not installed); - * pkgi - package (installed); - * pkgib - package (installed and blocked); - * w - web site - * - * you can style links using icons and/or color - */ - -a.pkg { background: url(images/tp-new.png) no-repeat left; } -a.pkgi { background: url(images/tp-pkgi.png) no-repeat left; } -a.pkgib { background: url(images/tp-pkgib.png) no-repeat left; color: red; } -a.w::before, .pkglist td:nth-child(4) a::before { - font-family: TazPanel; content: 'web'; - - vertical-align: baseline; - padding: 0 0.2rem 0 0; - font-size: 1rem; - - font-style: normal; - font-weight: normal; - font-variant: normal; - text-transform: none; - line-height: 1; - display: inline-block; - text-decoration: none; - width: 1rem; text-align: center; - - -webkit-text-rendering: optimizeLegibility; - -moz-text-rendering: optimizeLegibility; - -ms-text-rendering: optimizeLegibility; - -o-text-rendering: optimizeLegibility; - text-rendering: optimizeLegibility; - - -webkit-font-smoothing: antialiased; - -moz-font-smoothing: antialiased; - -ms-font-smoothing: antialiased; - -o-font-smoothing: antialiased; - font-smoothing: antialiased; -} - -a.pkg, a.pkgi, a.pkgib, a.w, .pkglist td:nth-child(4) a { - margin: 0; padding: 0 0 0 17px; - min-height: 16px; min-width: 16px; - display: inline-block; -} - - - /* not break the line */ .pkglist td:nth-child(1), .filelist td:nth-child(1) { white-space: nowrap; } @@ -167,7 +133,7 @@ background: #F94; color: black; } -.pages.current, a.pages.current:hover { +.pages.current, .pages.current:hover { font-weight: bold; border: 1px solid #07F; background: #07F; diff -r 98c62c676216 -r ad921c2aee59 tazpkg --- a/tazpkg Mon Mar 30 11:52:49 2015 +0300 +++ b/tazpkg Wed Apr 01 04:29:22 2015 +0300 @@ -2532,15 +2532,16 @@ check_root $@ check_for_package_on_cmdline newline + if [ ! -d $INSTALLED/$PACKAGE ]; then + _ 'Package "%s" is not installed.' $PACKAGE; exit + fi if grep -qs "^$PACKAGE" $BLOCKED; then - _ 'Package "%s" is already in the blocked packages list.' $PACKAGE + _ 'Package "%s" is already blocked.' $PACKAGE else - action 'Add package "%s" to: %s...' $PACKAGE $BLOCKED echo $PACKAGE >> $BLOCKED - status # Log this activity - . $INSTALLED/$PACKAGE/receipt - log_pkg Blocked + . $INSTALLED/$PACKAGE/receipt; log_pkg Blocked + _ 'Package "%s" blocked.' $PACKAGE fi newline ;; @@ -2550,16 +2551,38 @@ check_root $@ check_for_package_on_cmdline newline + if [ ! -d $INSTALLED/$PACKAGE ]; then + _ 'Package "%s" is not installed.' $PACKAGE; exit + fi if grep -qs "^$PACKAGE" $BLOCKED; then - action 'Removing package "%s" from: %s...' $PACKAGE $BLOCKED - sed -i s/$PACKAGE/''/ $BLOCKED - sed -i '/^$/d' $BLOCKED - status + sed -i "/^$PACKAGE\$/d" $BLOCKED # Log this activity - . $INSTALLED/$PACKAGE/receipt - log_pkg Unblocked + . $INSTALLED/$PACKAGE/receipt; log_pkg Unblocked + _ 'Package "%s" unblocked.' $PACKAGE else - _ 'Package "%s" is not in the blocked packages list.' $PACKAGE + _ 'Package "%s" is not blocked.' $PACKAGE + fi + newline ;; + + + chblock) + # Change package's blocked status. + check_root $@ + check_for_package_on_cmdline + newline + if [ ! -d $INSTALLED/$PACKAGE ]; then + _ 'Package "%s" is not installed.' $PACKAGE; exit + fi + if grep -qs "^$PACKAGE" $BLOCKED; then + sed -i "/^$PACKAGE\$/d" $BLOCKED + # Log this activity + . $INSTALLED/$PACKAGE/receipt; log_pkg Unblocked + _ 'Package "%s" unblocked.' $PACKAGE + else + echo $PACKAGE >> $BLOCKED + # Log this activity + . $INSTALLED/$PACKAGE/receipt; log_pkg Blocked + _ 'Package "%s" blocked.' $PACKAGE fi newline ;;