public static function render_instance(BlockInstance $instance, $editing = false) { global $exporter; require_once get_config('docroot') . 'artefact/lib.php'; safe_require('artefact', 'milestones'); $configdata = $instance->get('configdata'); $smarty = smarty_core(); if (isset($configdata['artefactid'])) { $milestone = artefact_instance_from_id($configdata['artefactid']); $facts = ArtefactTypeFact::get_facts($configdata['artefactid']); $template = 'artefact:milestones:factrows.tpl'; $blockid = $instance->get('id'); if ($exporter) { $pagination = false; } else { $baseurl = $instance->get_view()->get_url(); $baseurl .= (false === strpos($baseurl, '?') ? '?' : '&') . 'block=' . $blockid; $pagination = array('baseurl' => $baseurl, 'id' => 'block' . $blockid . '_pagination', 'datatable' => 'facttable_' . $blockid, 'jsonscript' => 'artefact/milestones/viewfacts.json.php'); } ArtefactTypeFact::render_facts($facts, $template, $configdata, $pagination); if ($exporter && $facts['count'] > $facts['limit']) { $artefacturl = get_config('wwwroot') . 'artefact/artefact.php?artefact=' . $configdata['artefactid'] . '&view=' . $instance->get('view'); $facts['pagination'] = '<a href="' . $artefacturl . '">' . get_string('allfacts', 'artefact.milestones') . '</a>'; } $smarty->assign('description', $milestone->get('description')); $smarty->assign('owner', $milestone->get('owner')); $smarty->assign('tags', $milestone->get('tags')); $smarty->assign('facts', $facts); } else { $smarty->assign('nomilestones', 'blocktype.milestones/milestones'); } $smarty->assign('blockid', $instance->get('id')); return $smarty->fetch('blocktype:milestones:content.tpl'); }
<?php define('INTERNAL', 1); define('JSON', 1); require dirname(dirname(dirname(__FILE__))) . '/init.php'; safe_require('artefact', 'milestones'); $milestone = param_integer('id'); $limit = param_integer('limit', 3); $offset = param_integer('offset', 0); if (!$USER->can_edit_artefact(new ArtefactTypeMilestone($milestone))) { json_reply(true, get_string('accessdenied', 'error')); } $facts = ArtefactTypeFact::get_facts($milestone, $offset, $limit); ArtefactTypeFact::build_facts_list_html($facts); json_reply(false, (object) array('message' => false, 'data' => $facts));
public function render_self($options) { $limit = !isset($options['limit']) ? 3 : (int) $options['limit']; $offset = isset($options['offset']) ? intval($options['offset']) : 0; $facts = ArtefactTypeFact::get_facts($this->id, $offset, $limit); $template = 'artefact:milestones:factrows.tpl'; $baseurl = get_config('wwwroot') . 'artefact/artefact.php?artefact=' . $this->id; if (!empty($options['viewid'])) { $baseurl .= '&view=' . $options['viewid']; } $pagination = array('baseurl' => $baseurl, 'id' => 'fact_pagination', 'datatable' => 'facttable', 'jsonscript' => 'artefact/milestones/viewfacts.json.php'); ArtefactTypeFact::render_facts($facts, $template, $options, $pagination); $smarty = smarty_core(); $smarty->assign_by_ref('facts', $facts); 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('milestone', $this); if (!empty($options['details']) and get_config('licensemetadata')) { $smarty->assign('license', render_license($this)); } else { $smarty->assign('license', false); } $smarty->assign('owner', $this->get('owner')); $smarty->assign('tags', $this->get('tags')); return array('html' => $smarty->fetch('artefact:milestones:viewmilestone.tpl'), 'javascript' => ''); }
define('SECTION_PAGE', 'milestones'); require dirname(dirname(dirname(__FILE__))) . '/init.php'; safe_require('artefact', 'milestones'); if (!PluginArtefactMilestones::is_active()) { throw new AccessDeniedException(get_string('plugindisableduser', 'mahara', get_string('milestones', 'artefact.milestones'))); } define('TITLE', get_string('Facts', 'artefact.milestones')); $id = param_integer('id'); // offset and limit for pagination $offset = param_integer('offset', 0); $limit = param_integer('limit', 10); $milestone = new ArtefactTypeMilestone($id); if (!$USER->can_edit_artefact($milestone)) { throw new AccessDeniedException(get_string('accessdenied', 'error')); } $facts = ArtefactTypeFact::get_facts($milestone->get('id'), $offset, $limit); ArtefactTypeFact::build_facts_list_html($facts); $js = <<<EOF addLoadFact(function () { {$facts['pagination_js']} }); EOF; $smarty = smarty(array('paginator')); $smarty->assign_by_ref('facts', $facts); $smarty->assign_by_ref('milestone', $id); $smarty->assign_by_ref('tags', $milestone->get('tags')); $smarty->assign_by_ref('owner', $milestone->get('owner')); $smarty->assign('strnofactsaddone', get_string('nofactsaddone', 'artefact.milestones', '<a href="' . get_config('wwwroot') . 'artefact/milestones/new.php?id=' . $milestone->get('id') . '">', '</a>')); $smarty->assign('milestonesfactsdescription', get_string('milestonesfactsdescription', 'artefact.milestones', get_string('newfact', 'artefact.milestones'))); $smarty->assign('PAGEHEADING', get_string("milestonesfacts", "artefact.milestones", $milestone->get('title'))); $smarty->assign('INLINEJAVASCRIPT', $js);