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));