Beispiel #1
0
 if ($view == 'editnew') {
     // edit a new page
     if (!$perm->have_studip_perm("autor", $SessSemName[1])) {
         throw new AccessDeniedException(_('Sie haben keine Berechtigung, Seiten zu editieren!'));
     }
     // set lock
     setWikiLock(null, $user->id, $SessSemName[1], $keyword);
     wikiEdit($keyword, NULL, $user->id, Request::quoted('lastpage'));
 } else {
     // Default action: Display WikiPage (+ logic for submission)
     //
     if (empty($keyword)) {
         $keyword = 'WikiWikiWeb';
         // display Start page as default
     }
     releaseLocks($keyword);
     // kill old locks
     $special = "";
     if (Request::submitted('submit')) {
         //
         // Page was edited and submitted
         //
         submitWikiPage($keyword, $version, Studip\Markup::purifyHtml(Request::get('body')), $user->id, $SessSemName[1]);
         $version = "";
         // $version="" means: get latest
     } else {
         if ($cmd == "abortedit") {
             // Editieren abgebrochen
             //
             // Editing page was aborted
             //
Beispiel #2
0
/**
* Display edit form for wiki page.
*
* @param    string  keyword WikiPage name
* @param    array   wikiData    Array from DB with WikiPage data
* @param    string  user_id     Internal user id
* @param    string  backpage    Page to display if editing is aborted
*
**/
function wikiEdit($keyword, $wikiData, $user_id, $backpage=NULL)
{
    showPageFrameStart();
    wikiSinglePageHeader($wikiData, $keyword);
    begin_blank_table();
    if (!$wikiData) {
        $body = "";
        $version = 0;
        $lastpage="&lastpage=".urlencode($backpage);
    } else {
        $body = $wikiData["body"];
        $version = $wikiData["version"];
        $lastpage = "";
    }
    releaseLocks($keyword); // kill old locks
    $locks=getLock($keyword, $user_id);
    $cont="";
    if ($locks && $lock["user_id"]!=$user_id) {
        $message = MessageBox::info(sprintf(_("Die Seite wird eventuell von %s bearbeitet."), htmlReady($locks)), array(_("Wenn Sie die Seite trotzdem ändern, kann ein Versionskonflikt entstehen."), _("Es werden dann beide Versionen eingetragen und müssen von Hand zusammengeführt werden."),  _("Klicken Sie auf Abbrechen, um zurückzukehren.")));
        PageLayout::postMessage($message);
    }
    if ($keyword=='toc') {
        $message = MessageBox::info(_("Sie bearbeiten die QuickLinks."), array(_("Verwenden Sie Aufzählungszeichen (-, --, ---), um Verweise auf Seiten hinzuzufügen.")));
        PageLayout::postMessage($message);
        if (!$body) {
            $body=_("- WikiWikiWeb\n- BeispielSeite\n-- UnterSeite1\n-- UnterSeite2");
        }
    }

    $template = $GLOBALS['template_factory']->open('wiki/edit.php');
    $template->keyword = $keyword;
    $template->version = $version;
    $template->body    = $body;
    $cont = $template->render();

    printcontent(0, 0, $cont, '');

    Helpbar::get()->setVariables(array(
        'help_link' => format_help_url('Basis.VerschiedenesFormat'),
    ));

    end_blank_table();
    echo "</td>"; // end of content area
    showPageFrameEnd();
}