public static function add(&$data, $userid) { $res = "Unknown entity"; switch ($data["assocEntity"]) { case "poa": break; case "area": $data["assocEntity"] = "area"; $res = self::addForRepoArea($data, $userid); break; default: $data["assocEntity"] = "release"; $res = self::addForRelease($data, $userid); break; } if ($res !== true) { if ($res !== false) { return $res; } return "Unknown entity"; } try { $contact = new Repository_Model_MetaContact(); $contact->assocId = $data["assocId"]; $contact->assocEntity = $data["assocEntity"]; $contact->externalId = $data["externalId"]; $contact->contactTypeId = $data["contactTypeId"]; $contact->firstname = $data["firstname"]; $contact->lastname = $data["lastname"]; $contact->email = $data["email"]; $contact->save(); $data = $contact; } catch (Exception $e) { return $e->getMessage(); } return true; }