} if (!$foundByEmail) { $contact =& $repository->getObject($contactId); } if (!$contact) { raiseError("no_such_object", $contactId); } $smarty->assign('PAGETITLE', $contact->get('name')); $smarty->assign('CONTACT_ID', $contactId); $smarty->assign('CONTACT_NAME', $contact->get('name')); $smarty->assign('CONTACT_DATA', $contact->getAllWithIcon()); $numProgs = $contact->countProgrammes(); $progs = $page->getlocalizedWithParams('has_programs', $numProgs); $smarty->assign('PROGS', $progs); $smarty->assign('NUMPROGS', $numProgs); $refs = $contact->references(); while (list(, $row) = each($refs)) { $id = $row['object_id']; $role = $row['role_id']; if ($repository->getTable($id) != 'sotf_programmes') { $obj = $repository->getObject($id); if (!$obj) { logError("DB integrity error: role {$role} for {$id} which does not exist"); continue; } $class = get_class($obj); $data = array(); $data['role'] = $vocabularies->getRoleName($role); $data['name'] = $obj->get('name'); if ($class == 'sotf_station') { $data['url'] = $config['rootUrl'] . "/showStation.php/{$id}";