#!%TCLSH%

#
# Script pour enregistrer un groupe et sa description
#
# Appel par : script grpajout
#
# Paramtres (formulaire ou URL) :
#	- groupe : nom du groupe
#	- descr : description du groupe
#
# Historique
#   2003/06/03 : pda/jean : cration
#   2003/06/27 : pda      : utilisation de cgi-exec
#   2007/12/04 : pda/jean : intgration dans webdns
#

set conf(homeurl)	%HOMEURL%

#
# Chemins utiliss par les scripts
#

set conf(pkg)		%PKGTCL%
set conf(lib)		%DESTDIR%/lib
set conf(libauth)	$conf(lib)/libauth.tcl

#
# Dfinition des noms des pages " trous"
#

set conf(err)		$conf(lib)/erreur.html
set conf(page)		$conf(lib)/actionok.html

#
# Quelques paramtres du script
#

set conf(auth)		%AUTH%
set conf(nologin)	%NOLOGIN%
set conf(admin)		%GRPROOT%

set conf(form)          {
	{groupe		1 1}
	{descr		1 1}
}

#
# Les outils du parfait concepteur de pages Web dynamiques...
#

lappend auto_path $conf(pkg)
package require webapp
package require pgsql

#
# On y va !
#

# ::webapp::cgidebug ; exit

source $conf(libauth)

##############################################################################
# Programme principal
##############################################################################

proc main {} {
    global conf

    #
    # Initialisation
    #

    init-auth $conf(nologin) $conf(auth) $conf(admin) $conf(err) $conf(form) ftab login

    #
    # Ajouter le groupe dans la base
    #

    set groupe [lindex $ftab(groupe) 0]
    set descr  [lindex $ftab(descr) 0]

    if {! [auth-addgroup $groupe $descr msg]} then {
	::webapp::error-exit $conf(err) $msg
    }

    #
    # Indiquer le succs de l'action effectue
    #

    set action "d'insertion du groupe '$groupe'"

    #
    # Sortie du rsultat
    #

    ::webapp::send html [::webapp::file-subst $conf(page) \
				[list \
					[list %TITREACTION% $action] \
					[list %COMPLEMENT% ""] \
				    ] \
			    ]

    #
    # Dconnexion de la base
    #

    end-auth
}

::webapp::cgi-exec main %DEBUG%
