/** * Renders a list of users to add as subscribers, used to add subscribers from the objects view. * @param $object * @param $genid * @param $subscribers * @param $workspaces * @return html text */ function render_add_subscribers_select(ProjectDataObject $object, $genid = null, $subscribers = null, $workspaces = null) { if (!isset($genid)) { $genid = gen_id(); } $subscriberIds = array(); if (is_array($subscribers)) { foreach ($subscribers as $u) { $subscriberIds[] = $u->getId(); } } else { if ($object->isNew()) { $subscriberIds[] = logged_user()->getId(); } else { foreach ($object->getSubscribers() as $u) { $subscriberIds[] = $u->getId(); } } } if (!isset($workspaces)) { if ($object->isNew()) { $workspaces = array(active_or_personal_project()); } else { $workspaces = $object->getWorkspaces(); } } tpl_assign('type', get_class($object->manager())); tpl_assign('workspaces', $workspaces); tpl_assign('subscriberIds', $subscriberIds); tpl_assign('genid', $genid); return tpl_fetch(get_template_path('add_subscribers_list', 'object')); }