New: add generic function for module parts
This commit is contained in:
parent
2624c7154b
commit
46ad02cbc8
@ -182,7 +182,7 @@ class Conf
|
|||||||
$modulename = strtolower($reg[1]);
|
$modulename = strtolower($reg[1]);
|
||||||
$partname = strtolower($reg[2]);
|
$partname = strtolower($reg[2]);
|
||||||
$varname = $partname.'_modules';
|
$varname = $partname.'_modules';
|
||||||
$this->$varname[$modulename] = '/'.$modulename.'/core/'.$partname.'/';
|
$this->$varname = array_merge($this->$varname, array($modulename => '/'.$modulename.'/core/'.$partname.'/'));
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO All of this part could be mutualized into one generic part
|
// TODO All of this part could be mutualized into one generic part
|
||||||
|
|||||||
@ -82,6 +82,9 @@ abstract class DolibarrModules
|
|||||||
|
|
||||||
// Insert activation login method
|
// Insert activation login method
|
||||||
if (! $err) $err+=$this->insert_login_method();
|
if (! $err) $err+=$this->insert_login_method();
|
||||||
|
|
||||||
|
// Insert activation of module's parts
|
||||||
|
if (! $err) $err+=$this->insert_module_parts();
|
||||||
|
|
||||||
// Insert constant defined by modules, into llx_const
|
// Insert constant defined by modules, into llx_const
|
||||||
if (! $err) $err+=$this->insert_const();
|
if (! $err) $err+=$this->insert_const();
|
||||||
@ -179,6 +182,9 @@ abstract class DolibarrModules
|
|||||||
|
|
||||||
// Remove activation of module's authentification method (MAIN_MODULE_MYMODULE_LOGIN in llx_const)
|
// Remove activation of module's authentification method (MAIN_MODULE_MYMODULE_LOGIN in llx_const)
|
||||||
if (! $err) $err+=$this->delete_login_method();
|
if (! $err) $err+=$this->delete_login_method();
|
||||||
|
|
||||||
|
// Remove activation of module's parts (MAIN_MODULE_MYMODULE_XXX in llx_const)
|
||||||
|
if (! $err) $err+=$this->delete_module_parts();
|
||||||
|
|
||||||
// Remove constants defined by modules
|
// Remove constants defined by modules
|
||||||
if (! $err) $err+=$this->delete_const();
|
if (! $err) $err+=$this->delete_const();
|
||||||
@ -1335,10 +1341,88 @@ abstract class DolibarrModules
|
|||||||
return $err;
|
return $err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Insert activation of generic parts from modules in llx_const
|
||||||
|
*
|
||||||
|
* @return int Nb of errors (0 if OK)
|
||||||
|
*/
|
||||||
|
function insert_module_parts()
|
||||||
|
{
|
||||||
|
global $conf;
|
||||||
|
|
||||||
|
$err=0;
|
||||||
|
|
||||||
|
if (is_array($this->module_parts) && ! empty($this->module_parts))
|
||||||
|
{
|
||||||
|
foreach($this->module_parts as $key => $value)
|
||||||
|
{
|
||||||
|
$sql = "INSERT INTO ".MAIN_DB_PREFIX."const (";
|
||||||
|
$sql.= "name";
|
||||||
|
$sql.= ", type";
|
||||||
|
$sql.= ", value";
|
||||||
|
$sql.= ", note";
|
||||||
|
$sql.= ", visible";
|
||||||
|
$sql.= ", entity";
|
||||||
|
$sql.= ")";
|
||||||
|
$sql.= " VALUES (";
|
||||||
|
$sql.= $this->db->encrypt($this->const_name."_".strtoupper($key),1);
|
||||||
|
$sql.= ", 'chaine'";
|
||||||
|
$sql.= ", ".$this->db->encrypt($value,1);
|
||||||
|
$sql.= ", null";
|
||||||
|
$sql.= ", '0'";
|
||||||
|
$sql.= ", ".$conf->entity;
|
||||||
|
$sql.= ")";
|
||||||
|
|
||||||
|
dol_syslog(get_class($this)."::insert_".$key." sql=".$sql);
|
||||||
|
$resql=$this->db->query($sql);
|
||||||
|
if (! $resql)
|
||||||
|
{
|
||||||
|
$this->error=$this->db->lasterror();
|
||||||
|
dol_syslog(get_class($this)."::insert_".$key." ".$this->error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $err;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove activation of generic parts from modules in llx_const
|
||||||
|
*
|
||||||
|
* @return int Nb of errors (0 if OK)
|
||||||
|
*/
|
||||||
|
function delete_module_parts()
|
||||||
|
{
|
||||||
|
global $conf;
|
||||||
|
|
||||||
|
$err=0;
|
||||||
|
|
||||||
|
if (is_array($this->module_parts) && ! empty($this->module_parts))
|
||||||
|
{
|
||||||
|
foreach($this->module_parts as $key => $value)
|
||||||
|
{
|
||||||
|
$sql = "DELETE FROM ".MAIN_DB_PREFIX."const";
|
||||||
|
$sql.= " WHERE ".$this->db->decrypt('name')." LIKE '".$this->const_name."_".strtoupper($key)."'";
|
||||||
|
$sql.= " AND entity = ".$conf->entity;
|
||||||
|
|
||||||
|
dol_syslog(get_class($this)."::delete_".$key." sql=".$sql);
|
||||||
|
if (! $this->db->query($sql))
|
||||||
|
{
|
||||||
|
$this->error=$this->db->lasterror();
|
||||||
|
dol_syslog(get_class($this)."::delete_".$key." ".$this->error, LOG_ERR);
|
||||||
|
$err++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return $err;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Insert activation triggers from modules in llx_const
|
* Insert activation triggers from modules in llx_const
|
||||||
*
|
*
|
||||||
* @return int Nb of errors (0 if OK)
|
* @return int Nb of errors (0 if OK)
|
||||||
|
* @deprecated
|
||||||
|
* @see insert_module_parts()
|
||||||
*/
|
*/
|
||||||
function insert_triggers()
|
function insert_triggers()
|
||||||
{
|
{
|
||||||
@ -1380,6 +1464,8 @@ abstract class DolibarrModules
|
|||||||
* Remove activation triggers from modules in llx_const
|
* Remove activation triggers from modules in llx_const
|
||||||
*
|
*
|
||||||
* @return int Nb of errors (0 if OK)
|
* @return int Nb of errors (0 if OK)
|
||||||
|
* @deprecated
|
||||||
|
* @see delete_module_parts()
|
||||||
*/
|
*/
|
||||||
function delete_triggers()
|
function delete_triggers()
|
||||||
{
|
{
|
||||||
@ -1406,6 +1492,8 @@ abstract class DolibarrModules
|
|||||||
* Insert activation login method from modules in llx_const
|
* Insert activation login method from modules in llx_const
|
||||||
*
|
*
|
||||||
* @return int Number of errors (0 if ok)
|
* @return int Number of errors (0 if ok)
|
||||||
|
* @deprecated
|
||||||
|
* @see insert_module_parts()
|
||||||
*/
|
*/
|
||||||
function insert_login_method()
|
function insert_login_method()
|
||||||
{
|
{
|
||||||
@ -1447,6 +1535,8 @@ abstract class DolibarrModules
|
|||||||
* Remove activation login method from modules in llx_const
|
* Remove activation login method from modules in llx_const
|
||||||
*
|
*
|
||||||
* @return int Nombre d'erreurs (0 si ok)
|
* @return int Nombre d'erreurs (0 si ok)
|
||||||
|
* @deprecated
|
||||||
|
* @see delete_module_parts()
|
||||||
*/
|
*/
|
||||||
function delete_login_method()
|
function delete_login_method()
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user