Esempio n. 1
0
/** Erstellt eine Kommentarliste aus dem Kommentarobjekt
 *
 * @param object $comments Kommentarlistenobjekt
 * @param Template $template Template objekt, dem die Kommentare hinzugefügt werden sollen
 * @param integer $indent Einrückungslevel (für Rekursion)
 * @author Cédric Neukom
 */
function createCommentList($comments, $template, $indent = 0)
{
    if (!$template instanceof Template) {
        return false;
    }
    foreach ($comments as $comment) {
        $template->assignFromNew('comments', 'comment.xhtml', array('content' => $comment->text, 'author' => $comment->author, 'date' => $comment->date, 'id' => $comment->id, 'indent' => $indent ? ' data-reply="' . $indent . '"' : ''));
        createCommentList($comment->replies, $template, $indent + 1);
    }
    return true;
}
Esempio n. 2
0
        $projectTemplate->assign('pid', $project->pid);
        $template->addCSS('styles/css/color-' . $project->color . '.css');
        $projectTemplate->assignFromNew('headTable', 'project/headRow.xhtml', array('key1' => 'Author:', 'value1' => $project->owner, 'key2' => 'Date:', 'value2' => $project->upload_time));
        $projectTemplate->assignFromNew('headTable', 'project/headRow.xhtml', array('key1' => 'List:', 'value1' => $project->list, 'key2' => '', 'value2' => ''));
        $projectTemplate->assignFromNew('headTable', 'project/headRow.xhtml', array('key1' => '', 'value1' => '', 'key2' => '', 'value2' => ''));
        if ($project->info !== NULL) {
            $keys = array_keys($project->info);
            for ($i = 0; $i < count($keys); $i += 2) {
                $key1 = $keys[$i];
                $value1 = $project->info[$key1];
                if (empty($keys[$i + 1])) {
                    $projectTemplate->assignFromNew('headTable', 'editProject/headRow.xhtml', array('key1' => $key1, 'value1' => $value1, 'key2' => '', 'value2' => ''));
                } else {
                    $projectTemplate->assignFromNew('headTable', 'editProject/headRow.xhtml', array('key1' => $key1, 'value1' => $value1, 'key2' => $keys[$i + 1], 'value2' => $project->info[$keys[$i + 1]]));
                }
            }
        }
        for ($i = count($keys) / 2; $i <= 3; $i++) {
            $projectTemplate->assignFromNew('headTable', 'editProject/headRow.xhtml', array('key1' => '', 'value1' => '', 'key2' => '', 'value2' => ''));
        }
        foreach ($project->versions as $value) {
            $projectTemplate->assignFromNew('versions', 'editProject/option.xhtml', array('value' => $value));
        }
        $projectTemplate->assign('version', $project->version);
        $projectTemplate->assign('description', $project->description);
        $commentList = new CommentList(CommentList::TYPE_PROJECT, $_GET['pid']);
        createCommentList($commentList->comments, $projectTemplate);
    } else {
        //@TODO: Add error handling;
    }
}