public function execute($argHtmlHint = NULL, $argParams = NULL, $argKey = NULL) { if (NULL === $argKey) { $argKey = $this->_orgHtmlKey; // 一度使ったら不要 $this->_orgHtmlKey = NULL; } // ベースとなるテンプレートエンジンインスタンスを生成 if (NULL !== $this->_orgHtmlHint) { $this->addTemplate($this->_orgHtmlHint, $argKey); // 一度使ったら不要 $this->_orgHtmlHint = NULL; } if (NULL !== $argHtmlHint) { $this->addTemplate($argHtmlHint, $argKey); } // assignの実行 $html = '<html templatepartsid="main"></html>'; $htmls = array(); if (count($this->Templates) > 0) { $templates = array_reverse($this->Templates); } else { $templates = $this->Templates; } foreach ($templates as $key => $val) { $tmpHtml = self::assign($val, $argParams); if (is_array($tmpHtml)) { if (isset($tmpHtml['param'])) { $argParams = $tmpHtml['param']; } if (isset($tmpHtml['html'])) { $tmpHtml = $tmpHtml['html']; } } if ('base' === $key) { $html = $tmpHtml; } else { $htmls[$key] = $tmpHtml; } // リセットしておく self::assign(self::ASSIGN_RESET); } unset($templates); // 複数のテンプレートhtmlをガッチャンコ if (count($htmls) > 0) { $BaseTemplate = new HtmlTemplate($html); foreach ($htmls as $key => $val) { $key = '[templatepartsid=' . $key . ']'; // XXX アウターで置き換える!! // TODO 文字コードの変換指定はそのうちちゃんとやる $BaseTemplate->addSource($key, $val, NULL, NULL, TRUE); } // 書き戻し $html = $BaseTemplate->flush(); unset($htmls); } return $html; }
public function assignPDFToTmpl(HtmlTemplate $erlassTmpl) { $avail = $this->availExts(); if (!in_array('pdf', $avail)) { return; } $tmpl = $erlassTmpl->addSubtemplate('downloadMenu'); $item = $tmpl->addSubtemplate('downloadItem'); $item->assign('ext', 'pdf'); }
public function assignToTemplate(HtmlTemplate $tmpl) { $query = 'select distinct `' . $this->name . '` from Erlass order by `' . $this->name . '`;'; $result = mysql_query($query); while (list($value) = mysql_fetch_row($result)) { $li = $tmpl->addSubtemplate('CheckboxItem'); if (in_array($value, $this->checked)) { $li->assignHtml('checked', '" checked="checked'); $li->assignHtml('selected', '" selected="selected'); } else { $li->assignHtml('checked', ''); $li->assignHtml('selected', ''); } $li->assign('value', $value); $li->assign('id', $this->name . $value); } $tmpl->assign('name', $this->name); }
public function getHtml($tmplFile, &$given = array(), $parent = self::ROOT_NAME, $indent = ' ') { $tmpl = HtmlTemplate::fromFile($tmplFile); $tmpl->assign('parent', $parent); $childs =& $this->getChildsOf($parent); foreach ($childs as $child) { $sub = $tmpl->addSubtemplate('thema'); $checked = ''; $selected = ''; if (in_array($child, $given)) { $checked = '" checked="checked'; $selected = '" selected="selected'; } $sub->assign('id', 'thema' . $child); $sub->assign('Name', $child); $sub->assign('indent', $indent); $sub->assignHtml('checked', $checked); $sub->assignHtml('selected', $selected); $sub->assignHtml('childs', $this->getHtml($tmplFile, $given, $child, '-' . $indent)); } return $tmpl->result(); }
static function write_comments($page) { if (!$page->show_comments) { return; } HtmlTemplate::write_comments_wb($page); }
/** * Очищение массива сообщений */ public static function unsetError() { self::$errors = array(); }
public function assignToTmpl(HtmlTemplate $tmpl) { foreach ($this->data as $key => $value) { $tmpl->assign($key, $value); } if (isset($this->data['Dokument'])) { $tmpl->assignText('Dokument', $this->data['Dokument']); } if (isset($this->data['NfD'])) { $nfd = '1'; if ($this->data['NfD']) { $nfd .= '" checked="checked'; } $tmpl->assignHtml('NfD', $nfd); } if (!$this->data['Betreff']) { $tmpl->assign('Betreff', 'ohne Betreff'); } }
} } Comments::set_all($page->url, $comments); } $p->body .= "Hidden {$total_change} comments"; } $num_new_spam = 0; $p->body .= '<table class="spam">'; foreach (Resolver::find_all_pages('blog') as $page) { $comments = Comments::get_all($page->url, true); $com_body = array(); foreach ($comments as $comment) { $is_spam = ($comment->visible ? 'visible' : 'hidden') . ' ' . ($comment->is_spam() ? 'spam' : 'nonspam'); if ($comment->visible || !$comment->is_spam()) { $com_body[] = "<td class='{$is_spam} summary'>" . htmlspecialchars($comment->author_name) . ', ' . htmlspecialchars($comment->author_email) . ', ' . htmlspecialchars($comment->author_url) . ', ' . htmlspecialchars($comment->author_ip) . "<td class='{$is_spam} summary'>" . htmlspecialchars(substr($comment->body, 0, 100)); //"<td class='$is_spam summary'>" . $comment->body_html(); } if ($comment->visible && $comment->is_spam()) { $num_new_spam++; } } if ($com_body) { $p->body .= "<tr class='first'><td rowspan='" . count($com_body) . "'><a href='" . htmlspecialchars($page->url) . "'>" . $page->title . '</a>'; $p->body .= implode('<tr>', $com_body); } } $p->body .= '</table>'; $p->body .= '<p>'; $p->body .= "<form method='post' action='delete-spam.php'><input type='hidden' name='confirm' value='1'><input type='submit' value='Be gone, all {$num_new_spam} of you.'></form>"; HtmlTemplate::write($p);
static function forbidden($msg = '') { if (AUTH_METHOD == 'Digest') { header('WWW-Authenticate: Digest realm="' . AUTH_REALM . '",qop="auth",nonce="' . uniqid() . '",opaque="' . md5(AUTH_REALM) . '"'); } else { header('WWW-Authenticate: Basic realm="' . AUTH_REALM . '"'); } $page = new Page(''); $page->title = "Authentication required"; $page->body = "Authentication is required to access this page." . ($msg ? "\n{$msg}" : ""); $page->status_code = 401; HtmlTemplate::write($page); exit; }
<?php session_start() or die("Error initializing session."); $template_page = array(); $errormessage = ""; $islogin = isset($_SESSION['username']) ? true : false; define('IN_ANNOUNCE', true); define("ROOT_PATH", dirname(__FILE__) . '/'); require_once ROOT_PATH . 'include/functions.php'; spl_autoload_register(function ($class) { include ROOT_PATH . 'include/classes/' . $class . '.class.php'; }); require_once ROOT_PATH . 'include/config.php'; $htmltemplate = new HtmlTemplate(); $localize = Localizer::getInstance(); $localize->setLanguage($lang); $page = isset($_GET['page']) ? $_GET['page'] : "login"; if (is_file(ROOT_PATH . "pages/" . $page . ".php")) { require_once ROOT_PATH . "pages/" . $page . ".php"; } if (is_file(ROOT_PATH . "template/{$page}.tpl")) { $template_page = file(ROOT_PATH . "template/{$page}.tpl"); } $template_page = implode("", $template_page); $template_main = implode("", file(ROOT_PATH . "template/main.tpl")); $htmltemplate->assign("pagetitle", $page); $htmltemplate->assign("errormessage", $errormessage); $htmltemplate->assign("main", $template_page); header('Content-type: text/html; charset=utf-8'); $htmltemplate->display($template_main, $localize);
public function assignToLevelForm(HtmlTemplate $tmpl, $mail) { $tmpl->assign('mail', $mail); $tmpl->assign('stufe', self::levelOf($mail)); foreach (self::$labels as $level => $label) { $entry = $tmpl->addSubtemplate('levelEntry'); $entry->assign('level', $level); $entry->assign('label', $label); } }
static function die_not_found($url, $msg = '') { $page = Page::error_page_file_not_found($url, $msg); HtmlTemplate::write($page); exit; }
private function kundenToTemplate(HtmlTemplate $tmpl) { $query = 'select id, Stufe from Kunde order by id;'; $result = mysql_query($query); while ($kunde = mysql_fetch_array($result)) { $sub = $tmpl->addSubtemplate('kunde'); $sub->assign('mail', $kunde['id']); $sub->assign('Stufe', $kunde['Stufe']); } }
if ($page->show_comments) { $comments = count(Comments::get_all($page->url)); if ($comments == 0) { $notes .= "0 comments<br>"; } elseif ($comments == 1) { $notes .= "1 comment<br>"; } else { $notes .= "{$comments} comments<br>"; } } $out .= "<li>"; $out .= '<a href="' . htmlspecialchars($page->url) . '">'; $out .= "<span class='thumbnail {$page->icon}'></span>"; $out .= "<span class='details'>" . $notes . "</span>"; $out .= "<span class='title'>" . htmlspecialchars($page->title) . "</span>"; $out .= "<span class='desc'>" . htmlspecialchars($page->subtitle) . "</span>"; $out .= "</a></li>\n"; } $out .= "</ul>"; if ($this->tag) { //$out .= "<p><a href='feed/$this->tag'>Feed for posts tagged '$this->tag'</a>"; } else { $out .= "<p><a href='feed'>Subscribe to my feed</a>"; } return $out; } } $page = new BlogPage('blog'); Cache::begin($page); HtmlTemplate::write($page);