Exemplo n.º 1
0
 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');
 }
Exemplo n.º 2
0
<?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));
Exemplo n.º 3
0
 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' => '');
 }
Exemplo n.º 4
0
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);