Fix bug : in ajax_mod_menu : unknown variable $m->menu + exception handling

This commit is contained in:
Dany De Bontridder 2011-12-07 20:54:02 +00:00
parent 19c9459062
commit 3ea1fd45ca
3 changed files with 24 additions and 30 deletions

View file

@ -1,7 +1,7 @@
<?php
require_once 'class_menu_ref.php';
$m=new Menu_Ref($cn,$me_code);
$msg="Modification ".$m->me_code.h($m->menu);
$msg="Modification ".$m->me_code.' '.h($m->me_menu);
echo '<form method="POST" onsubmit="return confirm(\'Vous confirmez ?\')">';
require_once 'template/menu_detail.php';

View file

@ -21,20 +21,27 @@ class Menu_Ref extends Menu_Ref_sql
}
function verify()
{
try
{
parent::verify();
if ( $this->me_code == -1)
{
$this->format_code();
if ( $this->cn->get_value("select count(*) from menu_ref where me_code=$1",array($this->me_code)) > 0)
return -1;
throw new Exception ('Doublon');
if (trim($this->me_code)=='')
return -2;
throw new Exception ('Ce menu existe déjà');
}
if ( ! file_exists('../include/'.$this->me_file)) return -3;
if ( ! file_exists('../include/'.$this->me_file)) throw new Exception ('Ce menu fichier '.$this->me_file." n'existe pas");
return 0;
} catch (Exception $e)
{
alert($e->getMessage());
return -1;
}
}
}
?>

View file

@ -84,32 +84,19 @@ if ( isset($_POST['create_menu'])|| isset($_POST['mod_menu']))
$menu_ref->me_javascript=$me_javascript;
$menu_ref->me_type='ME';
$check=$menu_ref->verify();
if ( $check == 0)
{
if ( isset($_POST['create_menu']))
{
$menu_ref->insert();
}elseif (isset ($_POST['mod_menu']))
if ($check == 0)
{
if (isset($_POST['create_menu']))
{
if ( $menu_ref->verify() == 0)$menu_ref->update();
$menu_ref->insert();
}
}
else
{
switch($check)
{
case -1:
echo '<div class="Error">Doublon : ce menu existe déjà '.h($menu_ref->me_code).'</div>';
break;
case -2:
echo '<div class="Error">Le code ne peut pas être vide </div>';
break;
case -3:
echo '<div class="Error">Ce fichier n\'existe pas '.h($menu_ref->me_file).'</div>';
break;
}
}
}
elseif (isset($_POST['mod_menu']))
{
if ($menu_ref->verify() == 0)
$menu_ref->update();
}
}
}
/**
* if delete then delete
*/