public static function existAddress($order_infos, $id_country, $id_customer) { $addr = Db::getInstance()->getRow(' SELECT * FROM ' . _DB_PREFIX_ . 'address WHERE address1 = "' . pSQL($order_infos->Address1) . '" AND address2 = "' . pSQL($order_infos->Address2) . '" AND city = "' . pSQL($order_infos->CityName) . '" AND firstname = "' . pSQL($order_infos->FirstName) . '" AND lastname = "' . pSQL($order_infos->LastName) . '" AND postcode = "' . pSQL($order_infos->PostalCode) . '" AND phone = "' . pSQL(Toolbox::numericFilter($order_infos->Phone)) . '" AND phone_mobile = "' . pSQL(Toolbox::numericFilter($order_infos->Mobile)) . '" AND id_country = ' . intval($id_country) . ' AND id_customer = ' . intval($id_customer)); if ($addr) { return $addr["id_address"]; } else { return false; } }
/** * Add addresses * @param $order_id * @param $order_infos * @param $type * @param $id_customer * @return mixed */ private function addAddresseInBDD($order_id, $neteven_address, $type, $id_customer) { $id_country = $this->getValue('id_country_default'); if (!($id_country = Country::getIdByName(2, $neteven_address->Country))) { Toolbox::addLogLine(self::getL('Problem with id_country on address') . ' ' . $type . ' ' . self::getL('NetEven Order Id') . ' ' . $order_id); } $country = Db::getInstance()->getRow(' SELECT c.`id_country` FROM `' . _DB_PREFIX_ . 'country` c INNER JOIN `' . _DB_PREFIX_ . 'country_lang` cl ON (c.`id_country` = cl.`id_country`) WHERE LOWER(c.`iso_code`) = "' . pSQL(strtolower($neteven_address->Country)) . '" OR LOWER(cl.`name`) = "' . pSQL(strtolower($neteven_address->Country)) . '" GROUP BY c.`id_country` '); if (!empty($country['id_country'])) { $id_country = $country['id_country']; } if ($id_address = Toolbox::existAddress($neteven_address, $id_country, $id_customer)) { Toolbox::addLogLine(self::getL('Get existing address for NetEven Order Id') . ' ' . $order_id); } else { Toolbox::addLogLine(self::getL('Creation of address of NetEven order Id') . ' ' . $order_id); $date_now = date('Y-m-d H:i:s'); $new_address = new Address(); $new_address->alias = 'Address'; $new_address->lastname = !empty($neteven_address->LastName) ? substr(Toolbox::stringFilter($neteven_address->LastName), 0, 32) : ' '; $new_address->firstname = !empty($neteven_address->FirstName) ? substr(Toolbox::stringFilter($neteven_address->FirstName), 0, 32) : ' '; $new_address->address1 = !empty($neteven_address->Address1) ? Toolbox::stringWithNumericFilter($neteven_address->Address1) : ' '; $new_address->address2 = Toolbox::stringWithNumericFilter($neteven_address->Address2); $new_address->postcode = Toolbox::numericFilter($neteven_address->PostalCode); $new_address->city = !empty($neteven_address->CityName) ? Toolbox::stringFilter($neteven_address->CityName) : ' '; $new_address->phone = substr(Toolbox::numericFilter($neteven_address->Phone), 0, 16); $new_address->phone_mobile = substr(Toolbox::numericFilter($neteven_address->Mobile), 0, 16); $new_address->id_country = $id_country; $new_address->id_customer = $id_customer; $new_address->date_add = $date_now; $new_address->date_upd = $date_now; if (!empty($neteven_address->Company)) { $new_address->company = $neteven_address->Company; } if (!$new_address->add()) { Toolbox::addLogLine(self::getL('Failed for creation of address of NetEven order Id') . ' ' . $order_id); } else { $id_address = $new_address->id; } } return $id_address; }