public static function render_instance(BlockInstance $instance, $editing = false) { global $exporter; require_once get_config('docroot') . 'artefact/lib.php'; safe_require('artefact', 'cpds'); $configdata = $instance->get('configdata'); $smarty = smarty_core(); if (isset($configdata['artefactid'])) { $cpd = artefact_instance_from_id($configdata['artefactid']); $activities = ArtefactTypeActivity::get_activities($configdata['artefactid']); $template = 'artefact:cpds:activityrows.tpl'; $blockid = $instance->get('id'); if ($exporter) { $pagination = false; } else { $pagination = array('baseurl' => $instance->get_view()->get_url() . '&block=' . $blockid, 'id' => 'block' . $blockid . '_pagination', 'datatable' => 'activitytable_' . $blockid, 'jsonscript' => 'artefact/cpds/viewactivities.json.php'); } ArtefactTypeActivity::render_activities($activities, $template, $configdata, $pagination); if ($exporter && $activities['count'] > $activities['limit']) { $artefacturl = get_config('wwwroot') . 'view/artefact.php?artefact=' . $configdata['artefactid'] . '&view=' . $instance->get('view'); $activities['pagination'] = '<a href="' . $artefacturl . '">' . get_string('allactivities', 'artefact.cpds') . '</a>'; } $smarty->assign('description', $cpd->get('description')); $smarty->assign('activities', $activities); $smarty->assign('owner', $cpd->get('owner')); $smarty->assign('tags', $cpd->get('tags')); } else { $smarty->assign('nocpds', 'blocktype.cpds/cpds'); } $smarty->assign('blockid', $instance->get('id')); return $smarty->fetch('blocktype:cpds:content.tpl'); }
* @author Geoffrey Rowland * @license http://www.gnu.org/copyleft/gpl.html GNU GPL * */ define('INTERNAL', 1); define('JSON', 1); require dirname(dirname(dirname(__FILE__))) . '/init.php'; safe_require('artefact', 'cpds'); require_once get_config('docroot') . 'blocktype/lib.php'; require_once get_config('docroot') . 'artefact/cpds/blocktype/cpds/lib.php'; $offset = param_integer('offset', 0); $limit = param_integer('limit', 10); if ($blockid = param_integer('block', null)) { $bi = new BlockInstance($blockid); $options = $configdata = $bi->get('configdata'); $activities = ArtefactTypeActivity::get_activities($configdata['artefactid'], $offset, $limit); $template = 'artefact:cpds:activityrows.tpl'; $baseurl = $bi->get_view()->get_url(); $baseurl .= (false === strpos($baseurl, '?') ? '?' : '&') . 'block=' . $blockid; $pagination = array('baseurl' => $baseurl, 'id' => 'block' . $blockid . '_pagination', 'datatable' => 'activitytable_' . $blockid, 'jsonscript' => 'artefact/cpds/viewactivities.json.php'); } else { $cpdid = param_integer('artefact'); $viewid = param_integer('view'); $options = array('viewid' => $viewid); $activities = ArtefactTypeActivity::get_activities($cpdid, $offset, $limit); $template = 'artefact:cpds:activityrows.tpl'; $baseurl = get_config('wwwroot') . 'artefact/artefact.php?artefact=' . $cpdid . '&view=' . $options['viewid']; $pagination = array('baseurl' => $baseurl, 'id' => 'activity_pagination', 'datatable' => 'activitylist', 'jsonscript' => 'artefact/cpds/viewactivities.json.php'); } ArtefactTypeActivity::render_activities($activities, $template, $options, $pagination); json_reply(false, (object) array('message' => false, 'data' => $activities));
public function render_self($options) { $limit = !isset($options['limit']) ? 10 : (int) $options['limit']; $offset = isset($options['offset']) ? intval($options['offset']) : 0; $activities = ArtefactTypeActivity::get_activities($this->id, $offset, $limit); $template = 'artefact:cpds:activityrows.tpl'; $baseurl = get_config('wwwroot') . 'artefact/artefact.php?artefact=' . $this->id; if (!empty($options['viewid'])) { $baseurl .= '&view=' . (int) $options['viewid']; } $pagination = array('baseurl' => $baseurl, 'id' => 'activity_pagination', 'datatable' => 'activitylist', 'jsonscript' => 'artefact/cpds/viewactivities.json.php'); ArtefactTypeActivity::render_activities($activities, $template, $options, $pagination); $smarty = smarty_core(); $smarty->assign_by_ref('activities', $activities); if (isset($options['viewid'])) { $smarty->assign('artefacttitle', '<a href="' . $baseurl . '">' . hsc($this->get('title')) . '</a>'); } else { $smarty->assign('artefacttitle', hsc($this->get('title'))); } $smarty->assign('description', $this->get('description')); $smarty->assign('owner', $this->get('owner')); $smarty->assign('tags', $this->get('tags')); return array('html' => $smarty->fetch('artefact:cpds:viewcpd.tpl'), 'javascript' => ''); }
define('MENUITEM', 'content/cpds'); define('SECTION_PLUGINTYPE', 'artefact'); define('SECTION_PLUGINNAME', 'cpds'); define('SECTION_PAGE', 'cpds'); require dirname(dirname(dirname(__FILE__))) . '/init.php'; safe_require('artefact', 'cpds'); define('TITLE', get_string('activities', 'artefact.cpds')); $id = param_integer('id'); // offset and limit for pagination $offset = param_integer('offset', 0); $limit = param_integer('limit', 10); $cpd = new ArtefactTypeCPD($id); if (!$USER->can_edit_artefact($cpd)) { throw new AccessDeniedException(get_string('accessdenied', 'error')); } $activities = ArtefactTypeActivity::get_activities($cpd->get('id'), $offset, $limit); ArtefactTypeActivity::build_activities_list_html($activities); $js = <<<EOF addLoadEvent(function () { {$activities['pagination_js']} }); EOF; $smarty = smarty(array('paginator')); $smarty->assign_by_ref('activities', $activities); $smarty->assign_by_ref('cpd', $id); $smarty->assign_by_ref('tags', $cpd->get('tags')); $smarty->assign_by_ref('owner', $cpd->get('owner')); $smarty->assign('strnoactivitiesaddone', get_string('noactivitiesaddone', 'artefact.cpds', '<a href="' . get_config('wwwroot') . 'artefact/cpds/new.php?id=' . $cpd->get('id') . '">', '</a>')); $smarty->assign('PAGEHEADING', get_string("cpdsactivities", "artefact.cpds", $cpd->get('title'))); $smarty->assign('INLINEJAVASCRIPT', $js); $smarty->display('artefact:cpds:cpd.tpl');