Example #1
0
 /**
  * Derive an attribute value.
  *
  * @param string $attr The attribute to derive.
  *
  * @return mixed The value of the attribute.
  */
 protected function derive($attr)
 {
     switch ($attr) {
         case self::ATTRIBUTE_USERTYPE:
             if (strpos($this->_uid, 'cn=internal')) {
                 return self::USERTYPE_INTERNAL;
             } else {
                 if (strpos($this->_uid, 'cn=group')) {
                     return self::USERTYPE_GROUP;
                 } else {
                     if (strpos($this->_uid, 'cn=resource')) {
                         return self::USERTYPE_RESOURCE;
                     } else {
                         return self::USERTYPE_STANDARD;
                     }
                 }
             }
         case self::ATTRIBUTE_FN:
             return $this->getFn();
         default:
             return parent::derive($attr);
     }
 }