From a3fa165d48244bb313b0bf208e941eda803da3ec Mon Sep 17 00:00:00 2001 From: Regis Houssin Date: Thu, 29 Oct 2009 17:42:53 +0000 Subject: [PATCH] Work on multicompany module with smarty integration --- htdocs/admin/multicompany.php | 1 + htdocs/multicompany/multicompany.class.php | 42 +++++++++++++++++-- .../multicompany/templates/admin-entity.tpl | 12 +++++- 3 files changed, 49 insertions(+), 6 deletions(-) diff --git a/htdocs/admin/multicompany.php b/htdocs/admin/multicompany.php index 8e991934380..071dd7d969d 100644 --- a/htdocs/admin/multicompany.php +++ b/htdocs/admin/multicompany.php @@ -60,6 +60,7 @@ print_titre($langs->trans("MultiCompanyModule")); $mc = new Multicompany($db); $mc->getEntities(); +//var_dump($mc->entities); $smarty->template_dir = DOL_DOCUMENT_ROOT.'/multicompany/templates/'; diff --git a/htdocs/multicompany/multicompany.class.php b/htdocs/multicompany/multicompany.class.php index 547498ca2b2..348895cfc34 100644 --- a/htdocs/multicompany/multicompany.class.php +++ b/htdocs/multicompany/multicompany.class.php @@ -89,6 +89,40 @@ class Multicompany } + /** + * \brief Fetch entity + */ + function fetch($id) + { + global $conf; + + $sql = "SELECT "; + $sql.= $this->db->decrypt('name',$conf->db->dolibarr_main_db_encryption,$conf->db->dolibarr_main_db_cryptkey)." as name"; + $sql.= ", ".$this->db->decrypt('value',$conf->db->dolibarr_main_db_encryption,$conf->db->dolibarr_main_db_cryptkey)." as value"; + $sql.= " FROM ".MAIN_DB_PREFIX."const"; + $sql.= " WHERE ".$this->db->decrypt('name',$conf->db->dolibarr_main_db_encryption,$conf->db->dolibarr_main_db_cryptkey)." LIKE 'MAIN_%'"; + $sql.= " AND entity = ".$id; + + $result = $this->db->query($sql); + if ($result) + { + $num = $this->db->num_rows($result); + $entityDetails = array(); + $i = 0; + + while ($i < $num) + { + $obj = $this->db->fetch_object($result); + + $entityDetails[$obj->name] = $obj->value; + + $i++; + } + return $entityDetails; + } + + } + /** * \brief Enable/disable entity */ @@ -125,7 +159,6 @@ class Multicompany $sql = "SELECT "; $sql.= $this->db->decrypt('value',$conf->db->dolibarr_main_db_encryption,$conf->db->dolibarr_main_db_cryptkey)." as value"; $sql.= ", entity"; - $sql.= ", visible"; $sql.= " FROM ".MAIN_DB_PREFIX."const"; $sql.= " WHERE ".$this->db->decrypt('name',$conf->db->dolibarr_main_db_encryption,$conf->db->dolibarr_main_db_cryptkey)." = 'MAIN_INFO_SOCIETE_NOM'"; $sql.= " ORDER BY value ASC"; @@ -143,9 +176,10 @@ class Multicompany $active = 1; if ($obj->entity < 0) $active = 0; - $this->entities[$i]['label'] = $obj->value; - $this->entities[$i]['id'] = $obj->entity; - $this->entities[$i]['active'] = $active; + $this->entities[$i]['label'] = $obj->value; + $this->entities[$i]['id'] = $obj->entity; + $this->entities[$i]['details'] = $this->fetch($obj->entity); + $this->entities[$i]['active'] = $active; $i++; } diff --git a/htdocs/multicompany/templates/admin-entity.tpl b/htdocs/multicompany/templates/admin-entity.tpl index 9805f85fb5c..6f1d9654365 100644 --- a/htdocs/multicompany/templates/admin-entity.tpl +++ b/htdocs/multicompany/templates/admin-entity.tpl @@ -23,14 +23,18 @@ {$langs->trans('Name')} - {$langs->trans('Description')} + {$langs->trans('Town')} + {$langs->trans('Country')} + {$langs->trans('Currency')} {$langs->trans('Status')} {section name=mc loop=$entities} {strip} {$entities[mc].label} -   + {$entities[mc].details.MAIN_INFO_SOCIETE_VILLE} + {$entities[mc].details.MAIN_INFO_SOCIETE_PAYS} + {$entities[mc].details.MAIN_MONNAIE} {if $entities[mc].active} @@ -46,4 +50,8 @@ +
+{$langs->trans('AddEntity')} +
+ \ No newline at end of file