function __construct($dbArr = null)
 {
     if (isset($dbArr)) {
         parent::fromDatabase($dbArr);
         $this->id = $dbArr['ID'];
         // Set a default display name
         if (empty($this->displayName)) {
             $this->displayName = ucwords($this->forename) . " " . strtoupper(substr($this->surname, 0, 1));
             $this->hasDisplayName = false;
         } else {
             $this->hasDisplayName = true;
         }
     }
 }
 public function __isset($name)
 {
     switch ($name) {
         case "route":
             return isset($this->route);
             break;
         default:
             return parent::__isset($name);
             break;
     }
 }
 /**
  * Gets a nested array of all non-private properties
  * Adds support for LatLng - reformatted to lat and lng (floats)
  */
 public function sharedProperties()
 {
     $properties = parent::sharedProperties();
     $properties['lat'] = $this->latLng->lat;
     $properties['lng'] = $this->latLng->lng;
     return $properties;
 }
 /**
  * Add in anyAlterations
  * @see SWGBaseModel::sharedProperties()
  */
 public function sharedProperties()
 {
     $prop = parent::sharedProperties();
     $prop['any'] = $this->anyAlterations();
     return $prop;
 }