<?php
namespace App\Smarty\Functions; class TaskLabel { static public function create($params, $smarty) { $defaultOutput = ''; if ($params['default']) { $defaultOutput = $params['default']; } if (is_object($params['ref']) and get_class($params['ref'])=='Entity\Task') { $task = $params['ref']; } elseif ( is_numeric($params['ref']) and $params['ref']>0 ) { $task = \Entity\Task::select($params['ref']); if (!$task->recordExists()) { return $defaultOutput; } } else { return $defaultOutput; } if ($params['assign']) { $smarty->assign($params['assign'], $task); return ''; } if ($params['hideLink']) { return $task->getId() ? "#{$task->getId()}" : $defaultOutput; } else { return sprintf("<span class=\"remoteLoadLink\" onclick=\"RemoteLoad.loadEntity(this, '%s', '%s');\">%s</span>", 'task', $task->getId(), ($task->getId() ? "#{$task->getId()}" : $defaultOutput)); } } }