Address: changed country to country_id with Country table
This commit is contained in:
@@ -4,6 +4,7 @@ class Address extends mfBaseModel {
|
||||
protected $forcestr = ['street','company','zip','phone','fax','mobile','note'];
|
||||
private $in_after_save = 0;
|
||||
|
||||
private $country;
|
||||
private $parent;
|
||||
private $childaddresses;
|
||||
private $links = [];
|
||||
@@ -384,7 +385,7 @@ class Address extends mfBaseModel {
|
||||
|
||||
}
|
||||
|
||||
$country_code_errors = [];
|
||||
//$country_code_errors = [];
|
||||
$export_addresses = [];
|
||||
|
||||
foreach($addresses as $fibu_num => $address) {
|
||||
@@ -409,28 +410,7 @@ class Address extends mfBaseModel {
|
||||
$a["street"] = $address->street;
|
||||
$a["zip"] = $address->zip;
|
||||
$a["city"] = $address->city;
|
||||
if(strlen($address->country) == 2) {
|
||||
$a["countrycode"] = trim($address->country);
|
||||
} else {
|
||||
$a["countrycode"] = "AT";
|
||||
|
||||
if(trim($address->country)) {
|
||||
$acountry = strtolower(trim($address->country));
|
||||
$cc = __($acountry, "cc");
|
||||
|
||||
$log->debug("is $cc == cc.$acountry");
|
||||
$log->debug("last translation failed: ".(__last_translation_failed() ? "true" : "false"));
|
||||
|
||||
if(__last_translation_failed()) {
|
||||
//if($cc == "cc.".$acountry) {
|
||||
$a["countrycode"] = "AT";
|
||||
// email to buchhaltung
|
||||
$country_code_errors[$fibu_num] = $address;
|
||||
} else {
|
||||
$a["countrycode"] = $cc;
|
||||
}
|
||||
}
|
||||
}
|
||||
$a["countrycode"] = $address->country->isocode;
|
||||
$a["phone"] = "";
|
||||
if($address->mobile) $a["phone"] = $address->mobile;
|
||||
if($address->phone) $a["phone"] = $address->phone;
|
||||
@@ -477,6 +457,8 @@ class Address extends mfBaseModel {
|
||||
$export_addresses[] = $a;
|
||||
}
|
||||
|
||||
/*
|
||||
* Irrelevant since Country table
|
||||
if(count($country_code_errors)) {
|
||||
$msg = "Hallo,\r\n\r\ndas in thetool eingetragene Land von folgenden Kunden/Lieferanten konnte nicht in einen ISO-Code übersetzt werden:\r\n\r\n";
|
||||
foreach($country_code_errors as $fibu_num => $address) {
|
||||
@@ -490,7 +472,7 @@ class Address extends mfBaseModel {
|
||||
$email->setBody($msg);
|
||||
$email->send();
|
||||
}
|
||||
|
||||
*/
|
||||
$tpl = new Layout();
|
||||
$tpl->setTemplate("Address/bmd_export.csv");
|
||||
$tpl->set("addresses", $export_addresses);
|
||||
|
||||
@@ -119,8 +119,8 @@ class AddressController extends mfBaseController {
|
||||
|
||||
$this->layout->set("filter", $this->request->filter);
|
||||
|
||||
$parents = AddressModel::search(['parent_id' => null]);
|
||||
$this->layout()->set("parents", $parents);
|
||||
//$parents = AddressModel::search(['parent_id' => null]);
|
||||
//$this->layout()->set("parents", $parents);
|
||||
}
|
||||
|
||||
protected function viewAction() {
|
||||
@@ -234,7 +234,7 @@ class AddressController extends mfBaseController {
|
||||
$data['street'] = trim($r->street);
|
||||
$data['zip'] = trim($r->zip);
|
||||
$data['city'] = trim($r->city);
|
||||
$data['country'] = trim($r->country);
|
||||
$data['country_id'] = $r->country_id;
|
||||
$data['phone'] = trim($r->phone);
|
||||
$data['fax'] = trim($r->fax);
|
||||
$data['mobile'] = trim($r->mobile);
|
||||
@@ -290,7 +290,7 @@ class AddressController extends mfBaseController {
|
||||
$data['sepa_date'] = date('U');
|
||||
}
|
||||
} else {
|
||||
$data['sepa_date'] = $r->sepa_date;
|
||||
$data['sepa_date'] = Layout::dateToInt($r->sepa_date);
|
||||
}
|
||||
} else {
|
||||
$data['billing_type'] = "invoice";
|
||||
|
||||
@@ -17,7 +17,7 @@ class AddressModel {
|
||||
public $street;
|
||||
public $zip;
|
||||
public $city;
|
||||
public $country;
|
||||
public $country_id;
|
||||
public $phone;
|
||||
public $fax;
|
||||
public $mobile;
|
||||
@@ -71,7 +71,19 @@ class AddressModel {
|
||||
|
||||
$where = self::getSqlFilter($filter);
|
||||
//mfLoghandler::singleton()->debug($where);
|
||||
$res = $db->select("Address", "*", "$where ORDER BY company, lastname, firstname, zip, city LIMIT 1");
|
||||
|
||||
$sql = "SELECT Address.* FROM Address
|
||||
LEFT JOIN Addresstype ON (Addresstype.address_id = Address.id)
|
||||
LEFT JOIN Country ON (Country.id = Address.country_id)
|
||||
WHERE $where
|
||||
GROUP BY Address.id
|
||||
ORDER BY company, lastname, firstname, zip, city, Address.id
|
||||
LIMIT 1
|
||||
";
|
||||
|
||||
$res = $db->query($sql);
|
||||
//$res = $db->select("Address", "*", "$where ORDER BY company, lastname, firstname, zip, city LIMIT 1");
|
||||
|
||||
if($db->num_rows($res)) {
|
||||
$data = $db->fetch_object($res);
|
||||
$item = new Address($data);
|
||||
@@ -165,6 +177,7 @@ class AddressModel {
|
||||
SELECT Address.id as address_id
|
||||
FROM Address
|
||||
LEFT JOIN Addresstype ON (Addresstype.address_id = Address.id)
|
||||
LEFT JOIN Country ON (Country.id = Address.country_id)
|
||||
WHERE $where
|
||||
GROUP BY Address.id
|
||||
) as tbl";
|
||||
@@ -193,6 +206,7 @@ class AddressModel {
|
||||
ORDER BY Address.id";*/
|
||||
$sql = "SELECT Address.* FROM Address
|
||||
LEFT JOIN Addresstype ON (Addresstype.address_id = Address.id)
|
||||
LEFT JOIN Country ON (Country.id = Address.country_id)
|
||||
WHERE $where
|
||||
GROUP BY Address.id
|
||||
ORDER BY company, lastname, firstname, zip, city, Address.id";
|
||||
@@ -349,7 +363,7 @@ class AddressModel {
|
||||
if(array_key_exists("country", $filter)) {
|
||||
$country = FronkDB::singleton()->escape($filter["country"]);
|
||||
if($country) {
|
||||
$where .= " AND country like '%$country%'";
|
||||
$where .= " AND (Country.name like '%$country%' OR Country.isocode = '$country')";
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user