]> git.pld-linux.org Git - packages/webapps.git/blobdiff - webapps.sh
- preserve perms
[packages/webapps.git] / webapps.sh
index 515a3f0d430be711e815d36b7f2cc95cd91b503d..bc79e2594d53b2fae5e0d38867b2fb33b3f9879c 100644 (file)
@@ -33,6 +33,22 @@ webapp_list() {
        done
 }
 
+# return registered application list for webserver
+# useful for bash_completion parsing
+webapp_apps_registered() {
+       local action="$1"
+       local server=$2
+
+       for conf in /etc/$server/webapps.d/*.conf; do
+               [ -L $conf ] || continue
+               appname=$(readlink $conf)
+               appname=${appname#*$webapps/}
+               appname=${appname%/$server.conf}
+               [ -f /etc/webapps/$appname/$server.conf ] || continue
+               echo $appname
+       done
+}
+
 # return application list for webserver
 # useful for bash_completion parsing
 webapp_applist() {
@@ -42,7 +58,7 @@ webapp_applist() {
        for app in /etc/webapps/*; do
                [ -d $app ] || continue
                [ -f $app/$server.conf ] || continue
-               local appname=$(basename $app)
+               local appname=${app##*/}
                local link=$(webapp_link $appname)
 
                case "$action" in
@@ -71,7 +87,7 @@ webapp_list_apps() {
                done
 
                [ "$servers" ] || continue
-               echo "- $(basename $app) ($servers)"
+               echo "- ${app##*/} ($servers)"
        done
 }
 
@@ -124,7 +140,17 @@ unregister)
 list)
        webapp_list $2
        ;;
-list-apps|list-apps-registered|list-apps-unregistered)
+list-apps)
+               webapp_list_apps
+       ;;
+list-apps-registered)
+       if [ "$2" ]; then
+               webapp_apps_registered $action $2
+       else
+               webapp_list_apps
+       fi
+       ;;
+list-apps-unregistered)
        if [ "$2" ]; then
                webapp_applist $action $2
        else
This page took 0.030749 seconds and 4 git commands to generate.