<?php
/****************************************************************************************
SMI (Services Maintenance Interventions) est une gestion libre de maintenance et de SAV

Version 1.0.0

Copyright (C) 2006-2014  Sylvain FATOME
This program is free software; you can redistribute it and/or modify it under the terms
of the GNU General Public License as published by the Free Software Foundation; 
either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; 
without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program
(in the directory docs); 
if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 
Boston, MA  02110-1301, USA.

Contact : galawa@free.fr

Web : http://smi.no-ip.org
 ****************************************************************************************/

session_start();

require_once("../lib/gettext/gettext.inc");
include_once("../inc/config.inc.php");
include_once("../inc/fic_droits.inc.php");
include_once("../inc/func_log.inc.php");
if (CheckURLLog(TRUE) == FALSE) header("Location: ../index.php");
if (CheckNivLog("5-9") == FALSE) header("Location: ../index.php");
include_once("../inc/func.inc.php");
include_once("../inc/func_geo.inc.php");
include_once("../inc/func_txt.inc.php");
include_once("../classes/ezSQL/shared/ez_sql_core.php");
include_once("../classes/ezSQL/mysqli/ez_sql_mysqli.php");
include_once("../inc/func_sql.inc.php");
Archivelog(@$_SESSION["code_log"]);
// Variables Formulaire
fix_magic_quotes();
$_POST = clean_str($_POST);

$titre = @$_POST["titre"];
$td = @$_POST["td"];

$code = str_majuscules(@$_POST["code"]);
$desc = str_majuscules(@$_POST["desc"]);

$retourliste = TRUE;

$db = open_database(DBUSER, DBPASS, DBNAME, DBHOST);

switch ($td) {
    // Ajout de la fiche Fonction
    case "add" :
        $rech = "SELECT COUNT(*) FROM `" . TBFONC . "` WHERE fonc_code = '$code'";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs == 0) {
            $rech2 = "INSERT INTO `" . TBFONC . "` (fonc_code,fonc_desc,fonc_delok) VALUES ('" . $db->escape($code) . "','" . $db->escape($desc) . "','1')";
            $db->query($rech2);
            $msg = _("Fiche ajoutée");
        } else {
            $msg = _("Ce code existe déjà");
            $retourliste = FALSE;
        }
        break;

    // Modification de la fiche Fonction
    case "edit" :
        $rech = "UPDATE `" . TBFONC . "` SET `fonc_desc`='" . $db->escape($desc) . "' WHERE `fonc_code` = '" . $code . "'";
        $db->query($rech);
        $msg = _("Fiche modifiée");
        break;

    // Suppression de la fiche Fonction
    case "del" :
        $ok_del = TRUE;
        $msg = "";

        // Vérifie si utilisé dans une fiche contact marque
        $rech = "SELECT COUNT(*) FROM `" . TBCMQUE . "` WHERE `cmque_codefonc` = '$code'";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs <> 0) {
            if ($msg == "")
                $msg = _("Cette fonction est utilisée dans une fiche marque");
            $ok_del = FALSE;
            $retourliste = FALSE;
        }

        // Vérifie si utilisé dans une fiche contact agence
        $rexist = "SELECT COUNT(*) FROM `" . TBCAGE . "` WHERE `cage_codefonc` = '$code'";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs <> 0) {
            if ($msg == "")
                $msg = _("Cette fonction est utilisée dans une fiche contact agence");
            else
                $msg .= "<br />" . _("Cette fonction est utilisée dans une fiche contact agence");
            $ok_del = FALSE;
            $retourliste = FALSE;
        }

        // Vérifie si utilisé dans une fiche contact client
        $rexist = "SELECT COUNT(*) FROM `" . TBCCLI . "` WHERE `ccli_codefonc` = '$code'";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs <> 0) {
            if ($msg == "")
                $msg = _("Cette fonction est utilisée dans une fiche contact client");
            else
                $msg .= "<br />" . _("Cette fonction est utilisée dans une fiche contact client");
            $ok_del = FALSE;
            $retourliste = FALSE;
        }

        // Vérifie si utilisé dans une fiche contact donneur d'ordres
        $rexist = "SELECT COUNT(*) FROM `" . TBCDO . "` WHERE `cdo_codefonc` = '$code'";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs <> 0) {
            if ($msg == "")
                $msg = _("Cette fonction est utilisée dans une fiche contact donneur d'ordres");
            else
                $msg .= "<br />" . _("Cette fonction est utilisée dans une fiche contact donneur d'ordres");
            $ok_del = FALSE;
            $retourliste = FALSE;
        }

        // Vérifie si utilisé dans une fiche contact sous-traitant
        $rexist = "SELECT COUNT(*) FROM `" . TBCST . "` WHERE `cst_codefonc` = '$code'";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs <> 0) {
            if ($msg == "")
                $msg = _("Cette fonction est utilisée dans une fiche contact sous-traitant");
            else
                $msg .= "<br />" . _("Cette fonction est utilisée dans une fiche contact sous-traitant");
            $ok_del = FALSE;
            $retourliste = FALSE;
        }

        if ($ok_del == TRUE) {
            // Vérifie si on peut supprimer cette Fonction
            $rexist = "SELECT COUNT(*) FROM `" . TBFONC . "` WHERE `fonc_code` = '$code' AND `fonc_delok` = '1'";
            $nb_rs = $db->get_var($rexist);
            if ($nb_rs <> 0) {
                // SUPPRESSION de la fiche Fonction
                $rech = "DELETE FROM `" . TBFONC . "` WHERE `fonc_code` = '$code'";
                $db->query($rech);

                $msg = _("Fiche supprimée");
            } else {
                $msg = _("Suppression impossible");
                $retourliste = FALSE;
            }
        }
        break;
    default :
        break;
}
$db->disconnect();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <title>SMI - <?PHP echo _("ESPACE PRIVE"); ?> : <?PHP echo _("Fiche fonction"); ?></title>

    <?PHP include_once("../inc/header.inc.php"); ?>

    <script type="text/javascript">
        <!--
        function init_all() {
            init_Body();
            <?PHP
            if ($retourliste == FALSE)
                echo "warn_txt('" . str_escape($msg) . "');";
            ?>
            Focus_first();
        }

        $(document).ready(function () {
            init_all();
        });
        //-->
    </script>

</head>
<body>

<?php include_once("../inc/entete.inc.php"); ?>

<p align="center"><span class="titrepage"><?PHP echo $titre ?></span></p>

<p align="center">&nbsp;</p>
<?PHP
if ($retourliste == FALSE)
    aff_ret_idx_man($td, "fonc_lst.php", _("Retour à la liste"), TRUE);
else
    pop_ret_auto($msg, 'ok', "fonc_lst.php");
include_once("pied.php");
?>
</body>

</html>