<?php
require_once 'application/class/class_ManageSession.php';

/**
 * Programme du la gestion panier (recherche article)
 */
require_once 'php/info_panier.php';

global $connecteur;

if ('changeFrs' == getValue('action')) {
    $code_frs = getValue('cod_fourn');
    $Frs = new Fournisseur($code_frs);
    if ('' != $Frs->getRS() || '' != $Frs->getEC())
        Affichage::innerHTML('lib_fourn', (is_null($Frs->getEC()) || $Frs->getEC() == '') ? $Frs->getRS() : $Frs->getEC());
    
    $connecteur->disconnect();
    exit();
}

switch (GetValue('MODE')) {
    // Mode appserveur
    case 'httpreq': // mode reponse sur les updates
                    // $table = 'oxa_users_panier_ligne';
                    // $fonction = getValue('fonction');
        $object = GetValue('OBJECT');
        $numform = GetValue('formjs');
        // $valeur = trim(getValue($object));
        // $repjs = '';
        // $page_init = 1;
        
        // Demande de regenerartion de l'ecran
        $action = strtolower($object);
        if ($action == 'cod_fourn') {
            $champ = 'cod_fourn,lib_fourn';
            if (getValue($object) != '') {
                echo "document.forms[{$numform}].{$object}.value = '", cnv_to_javascript(getValue($object)), "' ;";
                $codeTmp = getValue($object);
                $res = SqlFrs::rqGetFournisseurRS($codeTmp)->Trouve1();
                $target = getValue('target');
                if (is_array($res)) {
                    // Affichage::innerHTMLPointeur($target, $res['RS']);
                    echo "document.forms[{$numform}].lib_fourn.value = '", cnv_to_javascript(((is_null($res['ENSCOMM']) || $res['ENSCOMM'] == '') ? $res['RS'] : $res['ENSCOMM'])), "' ;";
                } else {
                    Affichage::setValue($object, '');
                    Affichage::innerHTML($target, '');
                    echo "document.forms[{$numform}].lib_fourn.value = '' ;";
                    Affichage::messageJS(trad("Le code fournisseur saisi n'existe pas, veuillez le saisir à nouveau"));
                }
            } else
                Affichage::innerHTML('lib_fourn', '');
        } else if ($action == 'lib_fourn') {
            $url = " browse_popup.php?itemSelected=frs&form_parent=" . GetValue('form') . "&champ=cod_fourn&prg_appel=" . NomFile(__FILE__);
            echo " var win_pop = OpenPopup('{$url}','win_pop','700','450');";
        } else if ($action == 'cod_fab') {
            $champ = 'cod_fab,lib_fab';
            if (getValue($object) != '') {
                echo "document.forms[{$numform}].{$object}.value = '", cnv_to_javascript(getValue($object)), "' ;";
                $CodeFab = getValue($object);
                $res = SqlFrs::rqGetFabricantRS($CodeFab)->Trouve1();
                $target = getValue('target');
                if (is_null($target) && array_key_exists('lib_fab', getValueAll($_REQUEST)))
                    $target = 'lib_fab';
                if (is_array($res)) {
                    Affichage::setValue($target, $res['RS']);
                } else {
                    Affichage::setValue('cod_fab', '');
                    Affichage::setValue('lib_fab', '');
                    Affichage::setValue('cod_gam', '');
                    Affichage::setValue('lib_gam', '');
                    
                    Affichage::messageJS(trad("Le code fabricant saisi n'existe pas, veuillez le saisir à nouveau"));
                }
            }
        } else if ($action == 'lib_fab') {
            $champ = 'cod_fab,lib_fab';
            
            $largeurFenetre = 540;
            $hauteurFenetre = 600;
            $url = "liste_fab.php?form_parent=" . GetValue('form') . "&champ={$champ}&prg_appel=" . NomFile(__FILE__);
            
            echo "var win_pop = window.open('{$url}','win_pop','width={$largeurFenetre},height={$hauteurFenetre}');";
        } else if ($action == 'cod_fam') {
            $champ = 'cod_fam,lib_fam';
            if (getValue($object) != '') {
                echo "document.forms[{$numform}].{$object}.value = '", cnv_to_javascript(getValue($object)), "' ;";
                $familleTmp = getValue($object);
                $res = SqlFrs::rqGetFamilleNom($familleTmp)->Trouve1();
                
                $target = getValue('target');
                if (is_array($res)) {
                    Affichage::setValue($target, $res['DESIGNAT']);
                } else {
                    Affichage::setValue('cod_fam', '');
                    Affichage::setValue('lib_fam', '');
                    Affichage::setValue('cod_sfam', '');
                    Affichage::setValue('lib_sfam', '');
                    
                    Affichage::messageJS(trad("Le code famille saisi n'existe pas, veuillez le saisir à nouveau"));
                }
            } else
                Affichage::setAttribut('lib_fam', 'value', '');
        } else if ($action == 'lib_fam') {
            $champ = 'cod_fam,lib_fam';
            
            $largeurFenetre = 540;
            $hauteurFenetre = 600;
            $url = "liste_fam.php?form_parent=" . GetValue('form') . "&champ={$champ}&" . "prg_appel=" . NomFile(__FILE__);
            
            echo "var win_pop = OpenPopup('{$url}','win_pop','{$largeurFenetre}','{$hauteurFenetre}');" . "document.forms[{$numform}].cod_sfam.value = '';" . "document.forms[{$numform}].lib_sfam.value = '';";
        } else if ($action == 'cod_gam') {
            $champ = 'cod_fab,cod_gam,lib_gam';
            
            if (getValue($object) != '') {
                echo "document.forms[{$numform}].{$object}.value = '", cnv_to_javascript(getValue($object)), "' ;";
                $objetTmp = getValue($object);
                $codeFab = getValue('cod_fab');
                $res = SqlFrs::rqGetGammeNom($objetTmp, $codeFab)->Trouve1();
                
                $target = getValue('target');
                if (is_array($res)) {
                    Affichage::setValue($target, $res['DESIGN']);
                    Affichage::setValue('cod_fab', $res['CODEFABR']);
                    Affichage::setValue('lib_fab', $res['RS']);
                } else {
                    Affichage::setValue('cod_gam', '');
                    Affichage::setValue('lib_gam', '');
                    Affichage::messageJS(trad("Le code gamme saisi n'existe pas, veuillez le saisir à nouveau"));
                }
            } else
                Affichage::setAttribut('lib_gam', 'value', '');
        } else if ($action == 'lib_gam') {
            $champ = 'cod_fab,cod_gam,lib_gam';
            
            $largeurFenetre = 540;
            $hauteurFenetre = 600;
            $url = "liste_gam.php?form_parent=" . GetValue('form') . "&champ={$champ}&" . "prg_appel=" . NomFile(__FILE__) . "&num_lig=" . getValue('cod_fab');
            
            echo "var win_pop = window.open('{$url}','win_pop','width={$largeurFenetre},height={$hauteurFenetre}');";
        } else if (strpos($action, 'cod_sfamsyn') !== false) {
            $champ = 'cod_fam,cod_sfamsyn,lib_sfamsyn,lib_fam';
            if (getValue($object) != '') {
                echo "document.forms[{$numform}].{$object}.value = '", cnv_to_javascript(getValue($object)), "' ;";
                $codeFam = getValue('cod_fam');
                $objetTmp = getValue($object);
                $res = SqlFrs::rqGetSSFamilleNom($objetTmp, $codeFam, true)->Trouve1();
                
                $target = getValue('target');
                if (is_array($res)) {
                    if (! BoolSql($res['NVISIPROC'])) {
                        Affichage::setValue($target, $res['DESIGNAT']);
                        Affichage::setValue('cod_fam', $res['CODE_FAM']);
                        Affichage::setValue('lib_fam', $res['DESFAM']);
                    } else {
                        Affichage::setValue($object, '');
                        Affichage::setValue($target, '');
                        Affichage::setValue('cod_fam', '');
                        Affichage::setValue('lib_fam', '');
                        
                        Affichage::messageJS(trad("Le code sous-famille saisi n'existe, veuillez le saisir à nouveau"));
                    }
                } else {
                    Affichage::setValue($object, '');
                    Affichage::setValue($target, '');
                    Affichage::setValue('cod_fam', '');
                    Affichage::setValue('lib_fam', '');
                    
                    Affichage::messageJS(trad("Le code sous-famille saisi n'existe pas, veuillez le saisir à nouveau"));
                }
            }
        } else if (strpos($action, 'cod_sfam') !== false) {
            $champ = 'cod_fam,cod_sfam,lib_sfam,lib_fam';
            if (getValue($object) != '') {
                echo "document.forms[{$numform}].{$object}.value = '", cnv_to_javascript(getValue($object)), "' ;";
                $objetTmp = getValue($object);
                $codeFam = getValue('cod_fam');
                $res = SqlFrs::rqGetSSFamilleNom($objetTmp, $codeFam)->Trouve1();
                
                $target = getValue('target');
                if (is_array($res)) {
                    if (! BoolSql($res['NVISIPROC'])) {
                        Affichage::setValue($target, $res['DESIGNAT']);
                        Affichage::setValue('cod_fam', $res['CODE_FAM']);
                        Affichage::setValue('lib_fam', $res['DESFAM']);
                    } else {
                        Affichage::setValue($object, '');
                        Affichage::setValue($target, '');
                        Affichage::setValue('cod_fam', '');
                        Affichage::setValue('lib_fam', '');
                        
                        Affichage::messageJS(trad("Le code sous-famille saisi n'est pas visible, veuillez le saisir à nouveau"));
                    }
                } else {
                    Affichage::setValue($object, '');
                    Affichage::setValue($target, '');
                    Affichage::setValue('cod_fam', '');
                    Affichage::setValue('lib_fam', '');
                    
                    Affichage::messageJS(trad("Le code sous-famille saisi n'existe pas, veuillez le saisir à nouveau"));
                }
            } else
                Affichage::setAttribut('lib_sfam', 'value', '');
        } else if (strpos($action, 'lib_sfamsyn') !== false) {
            if ($action == 'lib_sfamsyn')
                $champ = 'cod_fam,cod_sfamsyn,lib_sfamsyn';
            else {
                $nb = explode('_', $action);
                $champ = 'cod_fam,cod_sfamsyn_' . $nb[2] . ',lib_sfamsyn_' . $nb[2];
            }
            $largeurFenetre = 540;
            $hauteurFenetre = 600;
            $url = "liste_sfamsyn.php?form_parent=" . GetValue('form') . "&champ={$champ}&" . "prg_appel=" . NomFile(__FILE__) . "&num_lig=" . getValue('cod_fam');
            
            echo "var win_pop = OpenPopup('{$url}','win_pop','{$largeurFenetre}','{$hauteurFenetre}');";
        } else if (strpos($action, 'lib_sfam') !== false) {
            if ($action == 'lib_sfam')
                $champ = 'cod_fam,cod_sfam,lib_sfam';
            else {
                $nb = explode('_', $action);
                $champ = 'cod_fam,cod_sfam_' . $nb[2] . ',lib_sfam_' . $nb[2];
            }
            $largeurFenetre = 540;
            $hauteurFenetre = 600;
            $url = "liste_sfam.php?form_parent=" . GetValue('form') . "&champ={$champ}&" . "prg_appel=" . NomFile(__FILE__) . "&num_lig=" . getValue('cod_fam');
            
            echo "var win_pop = OpenPopup('{$url}','win_pop','{$largeurFenetre}','{$hauteurFenetre}');";
        }
        break;
}

$connecteur->disconnect();
exit();
