function guiLogin(&$session, $message) { guiStandardHeader($session, "Anmeldung für den InfoBasar", Th_LoginHeader, Th_LoginBodyStart); guiStartForm($session); if (!empty($message)) { $message = preg_replace('/^\\+/', '+++ Fehler: ', $message); guiParagraph($session, $message, false); } outDivision($session); if (!isset($_POST['login_user'])) { $_POST['login_user'] = $session->fUserName; $_POST['login_email'] = ''; } outTableAndRecord(); outTableTextField($session, 'Benutzername:', 'login_user', null, 32, 32); outTableRecordDelim(); outTablePasswordField($session, 'Passwort:', 'login_code', '', 32, 32); outTableRecordDelim(); outTableButton($session, ' ', 'but_login', 'Anmelden'); outTableAndRecordEnd(); guiLine($session, 2); guiParagraph($session, 'Passwort vergessen?', false); outTableAndRecord(); outTableTextField($session, 'EMail-Adresse:', 'login_email', null, 32, 0); outTableRecordDelim(); outTableButton($session, ' ', 'but_forget', 'Passwort ändern'); outTableAndRecordEnd(); echo '(Das neue Passwort wird dann zugeschickt.)'; outNewline(); outStrong('Achtung:'); echo 'Benutzername muss ausgefüllt sein!'; outDivisionEnd($session); guiFinishForm($session, $session); guiStandardBodyEnd($session, Th_LoginBodyEnd); return 1; }
function baseForum(&$session) { $session->trace(TC_Gui1, 'baseForum'); if (!isset($_POST['forum_id']) || !isInt($_POST['forum_id'])) { $_POST['forum_id'] = 1; } $forum_id = $_POST['forum_id']; if (empty($_POST['page_no'])) { $_POST['page_no'] = 1; } $page_no = $_POST['page_no']; $forum = dbGetRecordById($session, T_Forum, $forum_id, 'name,description'); dbForumInfo($session, $forum_id, $threads, $pages); $headline = 'Forum ' . $forum[0]; guiStandardHeader($session, $headline, Th_StandardHeader, Th_StandardBodyStart); guiParagraph($session, $forum[1], true); guiParagraph($session, 'Seite ' . $page_no . ' von ' . $pages . ' (' . (0 + $threads) . ($threads == 1 ? ' Thema)' : ' Themen)'), false); outTableAndRecord(); outTableInternLink($session, null, P_Forum . '?forum_id=' . $forum_id . '&action=' . A_NewThread, 'Neues Thema'); outTableDelim(AL_Right); guiPageLinks($session, P_Forum . '?action=' . A_ShowForum . '&forum_id=' . $forum_id, $page_no, $pages); outTableDelimAndRecordEnd(); outTableEnd(); $id_list = dbIdListOfPage($session, T_Posting, "forum={$forum_id} and top is null order by id desc", $session->fUserThreadsPerPage, $page_no); outTableAndRecord(1); outTableCellStrong('Thema'); outTableCellStrong('Autor'); outTableCellStrong('Antworten'); outTableCellStrong('Aufrufe'); outTableCellStrong('Letzter Beitrag'); outTableCellStrong('Thema'); outTableRecordEnd(); foreach ($id_list as $ii => $id) { $thread = dbGetRecordById($session, T_Posting, $id, 'author,changedat,subject,changedby,calls'); $last_id = null; dbThreadInfo($session, $id, $answers, $thread_pages, $last_id); if (empty($last_id)) { $last = $thread; $last_id = $id; } else { $last = dbGetRecordById($session, T_Posting, $last_id, 'author,changedat,subject'); } outTableRecordAndDelim(); guiThreadPageLink($session, $id, 1, $thread[2]); outTableDelimEnd(); outTableCell(htmlentities($thread[0])); outTableCell($answers + 0); outTableCell($thread[4] + 0); outTableDelim(); echo $last[0]; echo ' '; echo dbSqlDateToText($session, $last[1]); outNewline(); guiInternLink($session, P_Thread . '?action=' . A_ShowThread . '&posting_id=' . $last_id, $last[2]); outTableDelimAndRecordEnd(); } outTableEnd(); outTableAndRecord(); outTableInternLink($session, null, P_Forum . '?forum_id=' . $forum_id . '&action=' . A_NewThread, 'Neues Thema'); outTableDelim(AL_Right); guiPageLinks($session, P_Forum . '?action=' . A_ShowForum . '&forum_id=' . $forum_id, $page_no, $pages); outTableDelimAndRecordEnd(); outTableEnd(); guiStandardBodyEnd($session, Th_StandardBodyEnd); }
function basePageInfo(&$session) { $pagename = $session->fPageURL; $pagelink = encodeWikiName($session, $pagename); $headline = 'Info über ' . $pagename; guiStandardHeader($session, $headline, Th_InfoHeader, 0); $page = dbGetRecordByClause($session, T_Page, 'id,createdat,type,readgroup,writegroup', 'name=' . dbSqlString($session, $pagename)); $pageid = $page[0]; guiParagraph($session, 'Erzeugt: ' . dbSqlDateToText($session, $page[1]), false); $count = dbSingleValue($session, 'select count(id) from ' . dbTable($session, T_Text) . ' where page=' . (0 + $pageid)); if ($count <= 1) { guiParagraph($session, 'Die Seite wurde nie geändert', false); guiParagraph($session, guiInternLinkString($session, encodeWikiName($session, $pagename), "Aktuelle Version"), false); } else { guiHeadline($session, 2, "Versionen ({$count})"); outTableAndRecord(1); outTableCellStrong('Id'); outTableCellStrong('Autor'); outTableCellStrong('erzeugt'); outTableCellStrong('Unterschied zum Nachfolger'); outTableCellStrong('Unterschied zu jetzt'); outTableRecordEnd(); $row = dbFirstRecord($session, 'select id,createdby,createdat,changedat,replacedby from ' . dbTable($session, T_Text) . ' where page=' . (0 + $pageid) . ' order by id desc'); $act_text_id = $row[0]; while ($row) { outTableRecord(); $text_id = $row[0]; $replacedby = $row[4]; outTableInternLink($session, null, $pagelink . '?action=' . A_ShowText . '&page_id=' . $pageid . '&text_id=' . ($text_id + 0), $text_id); outTableAuthorLink($session, $row[1]); outTableCell(dbSqlDateToText($session, $row[2])); if ($replacedby > 0) { outTableInternLink($session, null, $pagelink . '?action=' . A_Diff . '&text_id=' . $replacedby . '&text_id2=' . $text_id, ' Unterschied zu ' . $replacedby); if ($replacedby == $act_text_id) { outTableCell(' '); } else { outTableInternLink($session, null, $pagelink . '?action=' . A_Diff . '&text_id=' . $text_id . '&text_id2=' . $act_text_id, ' Unterschied zu jetzt'); } } else { outTableCell(' '); outTableCell(' '); } outTableRecordEnd(); $row = dbNextRecord($session); } outTableEnd(); } guiStandardBodyEnd($session, Th_InfoBodyEnd); }
function admShowDir(&$session, $path, $headline = null, $pattern = null, $button_text = null, $button_prefix = null, $file_prefix = null, $with_form = true) { $session->trace(TC_Init, 'admShowDir'); $dir = opendir($path); if ($headline != '') { guiHeadline($session, 2, $headline == null ? "Verzeichnis {$path} auf dem Server" : $headline); } if ($button_text != null && $with_form) { guiStartForm($session); } outTableAndRecord(1); outTableCellStrong('Name'); outTableCellStrong('Größe'); outTableCellStrong('Geändert am'); if ($button_text != null) { outTableCellStrong('Aktion'); } outTableRecordEnd(); $no = 0; while ($file = readdir($dir)) { if ($file != '.' && $file != '..' && ($pattern == null || preg_match($pattern, $file))) { $name = $path . $file; outTableRecord(); outTableCell(htmlentities($file)); outTableCell(is_dir($name) ? 'Verzeichnis' : filesize($name), AL_Right); outTableCell(date("Y.m.d H:i:s", filemtime($name))); if ($button_text != null) { $no++; outTableDelim(); outHiddenField($session, $file_prefix . $no, $path . $file); outButton($session, $button_prefix . $no, $button_text); outTableDelimEnd(); } outTableRecordEnd(); } } outTableEnd(); closedir($dir); if ($button_text != null && $with_form) { guiFinishForm($session); } }