/** * @param array $data Parameters: * - view (int) * - oldusers (array of user IDs) */ public function __construct($data, $cron = false) { parent::__construct($data, $cron); if (!($viewinfo = new View($this->view))) { if (!empty($this->cron)) { // probably deleted already return; } throw new ViewNotFoundException(get_string('viewnotfound', 'error', $this->view)); } $this->url = $viewinfo->get_url(false); $this->users = array_diff_key(activity_get_viewaccess_users($this->view), $this->oldusers); if ($viewinfo->get_collection()) { $this->incollection = true; $this->title = $viewinfo->get_collection()->get('name'); $this->add_urltext(array('key' => 'Collection', 'section' => 'collection')); } else { $this->title = $viewinfo->get('title'); $this->add_urltext(array('key' => 'View', 'section' => 'view')); } $this->ownername = $viewinfo->formatted_owner(); }
} } else { if ($group) { $smarty->assign('ownerlink', 'group/view.php?id=' . $group); } } // Provide a link for roaming teachers to return if ($mnetviewlist = $SESSION->get('mnetviewaccess')) { if (isset($mnetviewlist[$view->get('id')])) { $returnurl = $SESSION->get('mnetuserfrom'); require_once get_config('docroot') . 'api/xmlrpc/lib.php'; if ($peer = get_peer_from_instanceid($SESSION->get('authinstance'))) { $smarty->assign('mnethost', array('name' => $peer->name, 'url' => $returnurl ? $returnurl : $peer->wwwroot)); } } } $anonfeedback = !$USER->is_logged_in() && ($usertoken || $viewid == get_view_from_token(get_cookie('viewaccess:' . $viewid))); $smarty->assign('ownername', $view->formatted_owner()); $smarty->assign('streditviewbutton', $new ? get_string('backtocreatemyview', 'view') : get_string('editmyview', 'view')); $smarty->assign('viewdescription', $view->get('description')); $smarty->assign('viewcontent', $view->build_columns()); $smarty->assign('releaseform', $releaseform); $smarty->assign('anonfeedback', $anonfeedback); if ($USER->is_logged_in() || $anonfeedback) { $smarty->assign('addfeedbackform', pieform(add_feedback_form($allowattachments))); } if ($USER->is_logged_in()) { $smarty->assign('objectionform', pieform(objection_form())); } $smarty->assign('viewbeingwatched', $viewbeingwatched); $smarty->display('view/view.tpl');