diff --git a/htdocs/hrm/class/establishment.class.php b/htdocs/hrm/class/establishment.class.php index ac1752266c3..88b765740ef 100644 --- a/htdocs/hrm/class/establishment.class.php +++ b/htdocs/hrm/class/establishment.class.php @@ -182,9 +182,11 @@ class Establishment extends CommonObject */ function fetch($id) { - $sql = "SELECT rowid, name, address, zip, town, status"; - $sql.= " FROM ".MAIN_DB_PREFIX."establishment"; - $sql.= " WHERE rowid = ".$id; + $sql = "SELECT e.rowid, e.name, e.address, e.zip, e.town, e.status, e.fk_country as country_id,"; + $sql.= ' c.code as country_code, c.label as country'; + $sql.= " FROM ".MAIN_DB_PREFIX."establishment as e"; + $sql.= ' LEFT JOIN '.MAIN_DB_PREFIX.'c_country as c ON e.fk_country = c.rowid'; + $sql.= " WHERE e.rowid = ".$id; dol_syslog(get_class($this)."::fetch", LOG_DEBUG); $result = $this->db->query($sql); @@ -199,6 +201,10 @@ class Establishment extends CommonObject $this->town = $obj->town; $this->status = $obj->status; + $this->country_id = $obj->country_id; + $this->country_code = $obj->country_code; + $this->country = $obj->country; + return 1; } else @@ -357,4 +363,22 @@ class Establishment extends CommonObject if ($withpicto != 2) $result.=$link.$this->name.$linkend; return $result; } + + /** + * Return account country code + * + * @return string country code + */ + function getCountryCode() + { + global $mysoc; + + // We return country code of bank account + if (! empty($this->country_code)) return $this->country_code; + + // We return country code of managed company + if (! empty($mysoc->country_code)) return $mysoc->country_code; + + return ''; + } } diff --git a/htdocs/hrm/establishment/card.php b/htdocs/hrm/establishment/card.php index b63e4e09592..10a1b42e961 100644 --- a/htdocs/hrm/establishment/card.php +++ b/htdocs/hrm/establishment/card.php @@ -84,9 +84,7 @@ else if ($action == 'add') $object->address = GETPOST('address', 'alpha'); $object->zip = GETPOST('zipcode', 'alpha'); $object->town = GETPOST('town', 'alpha'); - $object->country_id = GETPOST('country_id','int')?GETPOST('country_id','int'):$mysoc->country_id; - $object->country_id = $object->country_id?$object->country_id:$mysoc->country_id; - $object->country_id = $_POST["country_id"]; + $object->country_id = $_POST["country_id"]; $object->status = GETPOST('status','int'); $object->fk_user_author = $user->id; $object->datec = dol_now(); @@ -135,7 +133,7 @@ else if ($action == 'update') $object->address = GETPOST('address', 'alpha'); $object->zip = GETPOST('zipcode', 'alpha'); $object->town = GETPOST('town', 'alpha'); - $object->country_id = GETPOST('country_id', 'int'); + $object->country_id = $_POST["country_id"]; $object->fk_user_mod = $user->id; $result = $object->update(); @@ -364,7 +362,14 @@ else if ($id) // Country print ''; print ''.$langs->trans("Country").''; - print ''.getCountry($object->fk_country,1).''; + print ''; + if ($object->country_id > 0) + { + $img=picto_from_langcode($object->country_code); + print $img?$img.' ':''; + print getCountry($object->getCountryCode(),0,$db); + } + print ''; print ''; // Status