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

Version 1.0.2

Copyright (C) 2006-2015  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"];
$tx = @$_POST["tx"];

$code = str_majuscules(@$_POST["code"]);
$desc = str_majuscules(@$_POST["desc"]);
$img = @$_POST["image"];
$depl = @$_POST["depl"];
$doss = @$_POST["doss"];
$tra = @$_POST["tra"];

$retourliste = TRUE;

$db = open_database(DBUSER, DBPASS, DBNAME, DBHOST);
switch ($td) {
    // Ajout de la fiche type action
    case "add" :
        $rech = "SELECT COUNT(*) FROM `" . TBTA . "` WHERE ta_code = '" . $db->escape($code) . "'";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs == 0) {
            $rech = "INSERT INTO `" . TBTA . "` (ta_code,ta_desc,ta_img,ta_depl,ta_doss,ta_tra,ta_delok) VALUES ('" . $db->escape($code) . "',";
            $rech .= "'" . $db->escape($desc) . "','$img','$depl','$doss','$tra','1')";
            $db->query($rech);
            $msg = _("Fiche ajoutée");
        } else {
            $msg = _("Ce code existe déjà");
            $retourliste = FALSE;
        }
        break;

    // Modification de la fiche type action
    case "edit" :
        $majok = TRUE;

        // Vérifie si pas universel
        $rech = "SELECT COUNT(*) FROM `" . TBTA . "` WHERE `ta_code` = '" . $db->escape($code) . "' AND `ta_univ` = 1";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs <> 0) {
            $msg = _("Ce type action est utilisé dans un type universel");
            $majok = FALSE;
            $retourliste = FALSE;
        }

        // Vérifie si utilisé dans une fiche dossier de suivi
        if ($doss == 0) {
            $rech = "SELECT COUNT(*) FROM `" . TBDOSD . "` WHERE `dosd_codeta` = '" . $db->escape($code) . "'";
            $nb_rs = $db->get_var($rech);
            if ($nb_rs <> 0) {
                $msg = _("Ce type action est utilisé dans un dossier");
                $majok = FALSE;
                $retourliste = FALSE;
            }
        }

        // Vérifie si utilisé dans une fiche traçabilité
        if ($tra == 0) {
            $rech = "SELECT COUNT(*) FROM `" . TBTRA . "` WHERE `tra_codeta` = '" . $db->escape($code) . "'";
            $nb_rs = $db->get_var($rech);
            if ($nb_rs <> 0) {
                $msg = _("Ce type action est utilisé dans une fiche de traçabilité");
                $majok = FALSE;
                $retourliste = FALSE;
            }
        }

        if ($majok == TRUE) {
            $rech = "UPDATE `" . TBTA . "` SET `ta_desc`='" . $db->escape($desc) . "', `ta_depl`='" . $depl . "', `ta_doss`='" . $doss . "', `ta_tra`='" . $tra . "' WHERE `ta_code` = '" . $db->escape($code) . "'";
            $db->query($rech);
            $msg = _("Fiche modifiée");
        }
        break;

    // Suppression de la fiche type action
    case "del" :
        $delok = TRUE;

        // Vérifie si pas universel
        $rech = "SELECT COUNT(*) FROM `" . TBTA . "` WHERE `ta_code` = '" . $db->escape($code) . "' AND `ta_univ` = 1";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs <> 0) {
            $msg = $txt_ta_used_universel;
            $delok = FALSE;
            $retourliste = FALSE;
        }

        // Vérifie si utilisé dans une fiche dossier de suivi
        $rech = "SELECT COUNT(*) FROM `" . TBDOSD . "` WHERE `dosd_codeta` = '" . $db->escape($code) . "'";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs <> 0) {
            $msg = _("Ce type action est utilisé");
            $delok = FALSE;
            $retourliste = FALSE;
        }

        // Vérifie si utilisé dans une fiche traçabilité
        $rech = "SELECT COUNT(*) FROM `" . TBTRA . "` WHERE `tra_codeta` = '" . $db->escape($code) . "'";
        $nb_rs = $db->get_var($rech);
        if ($nb_rs <> 0) {
            $msg = _("Ce type action est utilisé");
            $delok = FALSE;
            $retourliste = FALSE;
        }

        if ($delok == TRUE) {
            // Vérifie si on peut supprimer ce type action
            $rech = "SELECT COUNT(*) FROM `" . TBTA . "` WHERE `ta_code` = '" . $db->escape($code) . "' AND `ta_delok` = '1'";
            $nb_rs = $db->get_var($rech);
            if ($nb_rs <> 0) {
                // SUPPRESSION de la fiche catégorie
                $rech = "DELETE FROM `" . TBTA . "` WHERE `ta_code` = '" . $db->escape($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 type action"); ?></title>

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

    <script type="text/javascript">
        <!--
        function init_all() {
            init_Body();
            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) {
    exec_func_js("warn_txt('" . str_escape($msg) . "')");
    aff_ret_idx_man($td, "ta_lst.php?td=" . $tx, _("Retour à la liste"), TRUE);
} else
    pop_ret_auto($msg, 'ok', "ta_lst.php?td=" . $tx);
include_once("pied.php");
?>
</body>

</html>