/**
  * Returns all MetaDataTypes irrespective of permissions
  * <code>
  * $types = MetaDataTypes::getAll();
  * foreach ($types as $type) { ... } 
  * @return MetaDataTypes
  */
 public static function getAll()
 {
     if (self::$has_init) {
         return self::$types;
     }
     global $db;
     $query = "SELECT * from `meta_types`";
     $results = $db->getAll($query);
     $types = array();
     if ($results) {
         foreach ($results as $result) {
             $type = MetaDataType::fromArray($result);
             $types[] = $type;
         }
     }
     self::$types = new self($types);
     self::$has_init = true;
 }