# HG changeset patch # User Pascal Bellard # Date 1438079188 -7200 # Node ID 23e7fb2932a2f3fe45a84730dac2f84ea2d9dba8 # Parent e4207d6f46b01177a7e8929610a3fcbf87d1273e Set default gui user diff -r e4207d6f46b0 -r 23e7fb2932a2 lib/libtazpanel --- a/lib/libtazpanel Mon Jul 13 15:06:06 2015 +0200 +++ b/lib/libtazpanel Tue Jul 28 12:26:28 2015 +0200 @@ -17,10 +17,19 @@ printf "$(ngettext "$S" "$P" "$N")" "$@"; } -[ "$(id -un)" == "${REMOTE_USER:=nobody}" ] || exec su -s /bin/sh -c "$(realpath $0) $@" $REMOTE_USER +GUI_USER=nobody +[ "$HTTP_HOST" == "127.0.0.1:82" ] && +for i in "$HTTP_COOKIE" "$QUERY_STRING" ; do + v="$(echo "$i" | sed '/guiuser=/!d;s/.*guiuser=\([A-Za-z0-9_]*\).*/\1/')" + [ "$v" ] || continue + ps | sed '/d;/d;/127\.0\.0\.1:82/!d' | grep -q " $v " || continue + GUI_USER="$v" +done +[ "$REMOTE_USER" ] || REMOTE_USER="$GUI_USER" +[ "$(id -un)" == "$REMOTE_USER" ] || exec su -s /bin/sh -c "$(realpath $0) $@" $REMOTE_USER -# Get parameters with GET, POST and FILE functions +# Get parameters with GET, POST, COOKIE and FILE functions . /usr/lib/slitaz/httphelper @@ -250,6 +259,11 @@ xhtml_header() { SUBTITLE="$1" . ${PANEL}$HEADER + cat < + document.cookie = "guiuser=$GUI_USER"; + +EOT if [ "$DEBUG" -eq 1 ]; then local i j x args='' diff -r e4207d6f46b0 -r 23e7fb2932a2 network.cgi --- a/network.cgi Mon Jul 13 15:06:06 2015 +0200 +++ b/network.cgi Tue Jul 28 12:26:28 2015 +0200 @@ -115,6 +115,7 @@ select_if() { echo '' diff -r e4207d6f46b0 -r 23e7fb2932a2 po/fr.po --- a/po/fr.po Mon Jul 13 15:06:06 2015 +0200 +++ b/po/fr.po Tue Jul 28 12:26:28 2015 +0200 @@ -1047,7 +1047,7 @@ #: settings.cgi:273 msgid "Remove user" -msgstr "Enléve un utilisateur" +msgstr "Enlève un utilisateur" #: settings.cgi:286 settings.cgi:594 msgid "Manage users" diff -r e4207d6f46b0 -r 23e7fb2932a2 tazpanel --- a/tazpanel Mon Jul 13 15:06:06 2015 +0200 +++ b/tazpanel Tue Jul 28 12:26:28 2015 +0200 @@ -74,12 +74,12 @@ . /etc/slitaz/applications.conf USER_CONFIG="$HOME/.config/slitaz/applications.conf" [ -f "$USER_CONFIG" ] && . $USER_CONFIG - [ -n "$1" ] && app="/${1}.cgi" - echo http://127.0.0.1:82${app} + url="http://127.0.0.1:82/${1:-index}.cgi?guiuser=$(id -un)" + echo "$url" case "$BROWSER" in - tazweb) tazweb --notoolbar http://127.0.0.1:82${app} & ;; - midori) midori --app=http://127.0.0.1:82${app} & ;; - *) $BROWSER http://127.0.0.1:82${app} & ;; + tazweb) tazweb --notoolbar "$url" & ;; + midori) midori "--app=$url" & ;; + *) $BROWSER "$url" & ;; esac ;; esac