tazpanel diff index.cgi @ rev 364
Add TAZPANEL_DAEMON support
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Sat Jun 29 17:06:39 2013 +0200 (2013-06-29) |
parents | 2983cb632d9f |
children | 63efec6f5791 |
line diff
1.1 --- a/index.cgi Sat Feb 02 12:18:44 2013 +0100 1.2 +++ b/index.cgi Sat Jun 29 17:06:39 2013 +0200 1.3 @@ -61,6 +61,17 @@ 1.4 # 1.5 1.6 case " $(GET) " in 1.7 + *\ exec\ *) 1.8 + exec="$(GET exec)" 1.9 + TITLE=$(gettext 'TazPanel - exec') 1.10 + xhtml_header 1.11 + cat << EOT 1.12 +<h2>$exec</h2> 1.13 +<pre> 1.14 +$($exec 2>&1 | htmlize) 1.15 +</pre> 1.16 +EOT 1.17 + ;; 1.18 *\ file\ *) 1.19 # 1.20 # Handle files 1.21 @@ -89,16 +100,32 @@ 1.22 EOT 1.23 #The space before textarea gets muddled when the form is submitted. 1.24 #It prevents anything else from getting messed up 1.25 + elif [ "$(GET action)" == "setvar" ]; then 1.26 + data="$(. $(GET file) ;eval echo \$$(GET var))" 1.27 + cat <<EOT 1.28 +<form method="post" action="$SCRIPT_NAME?file=$file"> 1.29 + <img src="$IMAGES/edit.png" /> 1.30 + <input type="submit" value="$(gettext 'Save')"> 1.31 + $(GET var) : 1.32 + <input type="hidden" name="var" value="$(GET var)"> 1.33 + <input type="text" name="content" value="${data:-$(GET default)}"> 1.34 +</form> 1.35 +EOT 1.36 elif [ "$(GET action)" == "diff" ]; then 1.37 echo '<pre id="diff">' 1.38 file_is_modified $file diff | syntax_highlighter diff 1.39 echo '</pre>' 1.40 else 1.41 R=$(echo -en '\r') 1.42 - [ -n "$(POST content)" ] && 1.43 - sed "s/$R /\n/g;s/$R%0//g" > $file <<EOT 1.44 + if [ -n "$(POST content)" ]; then 1.45 + if [ -n "$(POST var)" ]; then 1.46 + sed -i "s|^\\($(POST var)=\\).*|\1\"$(POST content)\"|" $file 1.47 + else 1.48 + sed "s/$R /\n/g;s/$R%0//g" > $file <<EOT 1.49 $(POST content) 1.50 EOT 1.51 + fi 1.52 + fi 1.53 cat <<EOT 1.54 <div id="actions"> 1.55 <a class="button" href='$SCRIPT_NAME?file=$file&action=edit'>