class UFBF_AddressMixed extends UFBF_Mixed
{
protected $onlycurrentfield;
+ protected $onlyaxmailfield;
- public function __construct($envfieldtext, $envfieldindex, $formtext = '', $addressfield, $onlycurrentfield = 'only_current')
+ public function __construct($envfieldtext, $envfieldindex, $formtext = '', $addressfield, $onlycurrentfield = 'only_current', $onlyaxmailfield = 'only_ax_mail')
{
parent::__construct($envfieldtext, $envfieldindex, $formtext);
$this->onlycurrentfield = $onlycurrentfield;
+ $this->onlyaxmailfield = $onlyaxmailfield;
$this->direnum = constant('DirEnum::' . $addressfield);
}
protected function buildUFC(UserFilterBuilder $ufb)
{
+ $flags = UFC_Address::FLAG_NONE;
if ($ufb->isOn($this->onlycurrentfield)) {
- $flags = UFC_Address::FLAG_CURRENT;
- } else {
+ $flags |= UFC_Address::FLAG_CURRENT;
+ }
+ if ($ufb->isOn($this->onlyaxmailfield)) {
+ $flags |= UFC_Address::FLAG_AX_MAIL;
+ }
+ if ($flags == UFC_Address::FLAG_NONE) {
$flags = UFC_Address::FLAG_ANY;
}
public function getEnvFieldNames()
{
- return array($this->envfield, $this->envfieldindex, $this->onlycurrentfield);
+ return array($this->envfield, $this->envfieldindex, $this->onlycurrentfield, $this->onlyaxmailfield);
}
}
// }}}
{
protected $direnum;
protected $onlycurrentfield;
+ protected $onlyaxmailfield;
- public function __construct($envfield, $formtext = '', $addressfield, $onlycurrentfield = 'only_current')
+ public function __construct($envfield, $formtext = '', $addressfield, $onlycurrentfield = 'only_current', $onlyaxmailfield = 'only_ax_mail')
{
parent::__construct($envfield, $formtext);
$this->onlycurrentfield = $onlycurrentfield;
+ $this->onlyaxmailfield = $onlyaxmailfield;
$this->direnum = constant('DirEnum::' . $addressfield);
}
protected function buildUFC(UserFilterBuilder $ufb)
{
+ $flags = UFC_Address::FLAG_NONE;
if ($ufb->isOn($this->onlycurrentfield)) {
- $flags = UFC_Address::FLAG_CURRENT;
- } else {
+ $flags |= UFC_Address::FLAG_CURRENT;
+ }
+ if ($ufb->isOn($this->onlyaxmailfield)) {
+ $flags |= UFC_Address::FLAG_AX_MAIL;
+ }
+ if ($flags == UFC_Address::FLAG_NONE) {
$flags = UFC_Address::FLAG_ANY;
}
public function getEnvFieldNames()
{
- return array($this->envfield, $this->onlycurrentfield);
+ return array($this->envfield, $this->onlycurrentfield, $this->onlyaxmailfield);
}
}
// }}}