Hi @
amarquis,
Sorry for the late answer and hope it is still relevant to you.
If you look at the implementation of the \XLite\Model\Profile::getName() method you will see its implementation as follows:
Code:
public function getName($useDefault = true)
{
$address = $this->getBillingAddress() ?: $this->getShippingAddress();
return $address && ($address->getFirstname() || $address->getLastname())
? trim($address->getFirstname() . ' ' . $address->getLastname())
: ($useDefault ? $this->getDefaultName() : '');
}
protected function getDefaultName()
{
return $this->isAdmin()
? static::t('na_admin')
: static::t('na_customer');
}
In short words, X-Cart tries to pull either billing or shipping address, but if there are none and $useDefault is not passed or passed as true, it will either return 'Customer' or 'Admin' depending on the user type. If the $useDefault param is passed as 'false', it will return the empty string as you would expect.
So, you should just call it like this
PHP Code:
\XLite\Core\Auth::getInstance()->getProfile()->getName(false);
Tony
Quote:
Originally Posted by amarquis
If a vendor removes all addresses from his address book, why does the following function return "Administrator" ??
PHP Code:
\XLite\Core\Auth::getInstance()->getProfile()->getName()
|