Exemple #1
0
 public static function render_instance(BlockInstance $instance, $editing = false)
 {
     global $exporter;
     require_once get_config('docroot') . 'artefact/lib.php';
     safe_require('artefact', 'plans');
     $configdata = $instance->get('configdata');
     $smarty = smarty_core();
     $blockid = param_integer('block', '');
     $this_instance_id = $instance->get('id');
     if (!$blockid or $blockid and $blockid == $this_instance_id) {
         $offset = param_integer('offset', 0);
         $limit = param_integer('limit', 3);
     } else {
         $offset = 0;
         $limit = 3;
         $blockid = $this_instance_id;
     }
     $tasks = ArtefactTypeTask::get_alltasks($blockid, $offset, $limit);
     $template = 'artefact:plans:alltaskrows.tpl';
     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' => 'tasktable_' . $blockid, 'jsonscript' => 'artefact/plans/viewtasks.json.php');
     }
     ArtefactTypeTask::render_tasks($tasks, $template, $configdata, $pagination);
     if ($exporter && $tasks['count'] > $tasks['limit']) {
         $artefacturl = get_config('wwwroot') . 'artefact/artefact.php?artefact=' . $configdata['artefactid'] . '&view=' . $instance->get('view');
         $tasks['pagination'] = '<a href="' . $artefacturl . '">' . get_string('alltasks', 'artefact.plans') . '</a>';
     }
     $smarty->assign('tasks', $tasks);
     $smarty->assign('blockid', $instance->get('id'));
     return $smarty->fetch('blocktype:alltasks:content.tpl');
 }
<?php

/**
 *
 * @package    mahara
 * @subpackage artefact-plans
 * @author     Catalyst IT Ltd
 * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL version 3 or later
 * @copyright  For copyright information on Mahara, please see the README file distributed with this software.
 *
 */
define('INTERNAL', 1);
define('JSON', 1);
require dirname(dirname(dirname(__FILE__))) . '/init.php';
safe_require('artefact', 'plans');
require_once get_config('docroot') . 'blocktype/lib.php';
require_once get_config('docroot') . 'artefact/plans/blocktype/plans/lib.php';
$offset = param_integer('offset', 0);
$limit = param_integer('limit', 3);
if ($blockid = param_integer('block', null)) {
    $bi = new BlockInstance($blockid);
    $tasks = ArtefactTypeTask::get_alltasks($blockid, $offset, $limit);
    $template = 'artefact:plans:alltaskrows.tpl';
    $baseurl = $bi->get_view()->get_url();
    $baseurl .= (false === strpos($baseurl, '?') ? '?' : '&') . 'block=' . $blockid;
    $pagination = array('baseurl' => $baseurl, 'id' => 'block' . $blockid . '_pagination', 'datatable' => 'tasktable_' . $blockid, 'jsonscript' => 'artefact/plans/viewtasks.json.php');
}
ArtefactTypeTask::render_tasks($tasks, $template, $options, $pagination);
json_reply(false, (object) array('message' => false, 'data' => $tasks));