]> git.mjollnir.org Git - moodle.git/commitdiff
Better fix for Bug #1530 - Wiki diffs useless when using HTML editor
authorskaldrom <skaldrom>
Tue, 8 Jun 2004 20:22:13 +0000 (20:22 +0000)
committerskaldrom <skaldrom>
Tue, 8 Jun 2004 20:22:13 +0000 (20:22 +0000)
lang/en/wiki.php
mod/wiki/TODO.txt
mod/wiki/admin.php
mod/wiki/ewiki/ewiki.php
mod/wiki/ewiki/plugins/moodle/diff.php

index bc0fde5cacbb816d5b38863cd68125bb885a26c6..c53c056cb99ddb981d510e9f5bb7831fad651b25 100644 (file)
@@ -172,6 +172,7 @@ $string['contentsize']='Content size';
 $string['pageslinkingto']="Pages linking to this page";
 $string['viewsmfor']="View sitemap for";
 $string['smfor']="Sitemap for";
+$string['uplinsect']="Upload into";
 $string['invalidroot']="You are not authorized to access the current root page so no sitemap can be created.";
 $string['thispageisntlinkedfromanywhereelse'] = 'This page isn\'t linked from anywhere else.';
 
index 6ee32ca5788766d1f6c1564d7de7438bad514e77..4507b2a0031dd8661491f729f8a9f6531b786624 100644 (file)
@@ -8,7 +8,8 @@ Mike:
  - Grading
 
 Michael:
- - More Logging
+ - Upload: There is an error when having a bin html-wiki: File does not show up
+   - Log when up- or download
  - Notify when page changes
 
 Unassigned or not ready:
index 9e94bfe75df5c58e669c596527a86d63b4e03a0d..fde84fd51aa9ec18ac981911fcfdcb361c909249 100644 (file)
@@ -78,7 +78,7 @@
     # Check for dangerous events (hacking) !
     if(in_array($action,array("removepages","strippages","revertpages"))) {
       if(!($wiki->wtype=="student" || isteacher($course->id))) {
-        add_to_log($course->id, "wiki", "hack", "", $wiki->name.": Tried to trick admin.php with $action.");
+        add_to_log($course->id, "wiki", "hack", "", $wiki->name.": Tried to trick admin.php with action=$action.");
         error("Hack attack detected !");
       }          
     }
           // No additional info
         break;
       }
-      add_to_log($course->id, "wiki", $action, "admin.php?action=$action&userid=$userid&groupid=$groupid&id=$id", $wiki->name.($addloginfo?" ".$addloginfo:""));
+      add_to_log($course->id, "wiki", $action, "admin.php?action=$action&userid=$userid&groupid=$groupid&id=$id", $wiki->name.($addloginfo?": ".$addloginfo:""));
       $link="admin.php?action=$action&userid=$userid&groupid=$groupid&id=$id&wikipage=$wikipage";            
       switch($action) {
         case "removepages": 
index 631e6c11ea5fc86ae17f95f0562641657ae884ef..f63541f507f45b3037251849c1f14077270ee6af 100644 (file)
@@ -1144,7 +1144,7 @@ function ewiki_page_info($id, &$data, $action) {
    ##### BEGIN MOODLE ADDITION #####
          $o .= '<a href="' .
            ewiki_script($action, $id, array("version"=>$current["version"])) .
-           '">' . get_string($title,"wiki") . '</a> ';
+           '">' . get_string($title,"wiki") . '</a>&nbsp;';
    ##### END MOODLE ADDITION #####
       }
       $o .= "</td></tr>\n";
index 9a393b8bee9227f6123181e2568f1959ba4b9b6a..bd09eba1983f659a16d2c3ca571e00b58755610f 100755 (executable)
 
     # Different handling for html: closes Bug #1530 - Wiki diffs useless when using HTML editor    
     if($wiki->htmlmode==2) {
-      $htmlendings=array("<br />","<br>","</p>","<hr />","<hr>","</li>","</tr>");
-      $splitregexp="+\s*\n|\s*(".join("|",$htmlendings).")+";
-      $content0=preg_replace("+(".join("|",$htmlendings).")+","\n",$data0["content"]);
-      $content=preg_replace("+(".join("|",$htmlendings).")+","\n",$data["content"]);
+      $htmlendings=array("<br />","<br>","<p>","</p>","<p />","<hr />","<hr>","</li>","</tr>");
+      /// Replace <p>&nbsp;</p>
+      $content0=preg_replace("+<p>&nbsp;</p>+i","\n",$data0["content"]);
+      $content0=preg_replace("+(".join("|",$htmlendings).")+","\n",$content0);
+      $content=preg_replace("+<p>&nbsp;</p>+i","\n",$data["content"]);
+      $content=preg_replace("+(".join("|",$htmlendings).")+","\n",$content);
     } else {
-      $splitregexp="/\s*\n/";      
       $content0=$data0["content"];
       $content=$data["content"];
     }
-    $txt0 = preg_split($splitregexp, trim($content0));
-    $txt2 = preg_split($splitregexp, trim($content));
+    $txt0 = preg_split("+\s*\n+", trim($content0));
+    $txt2 = preg_split("+\s*\n+", trim($content));
+    ///print "<pre>\n";
+    ///print "\$data0[content]:\n $data0[content]\n";
+    ///print "\n\n-----------\n\n";
+    ///print "\$data[content]:\n $data[content]\n";
+    ///print "\n\n-----------\n\n";
+    ///print "\$content0:\n $content0\n";
+    ///print "\n\n-----------\n\n";
+    ///print "\$content:\n $content\n";
+    ///print "\n\n-----------\n\n";    
+    ///print "</pre>";
+    ///exit;
 
     /// Remove empty lines in html
     if($wiki->htmlmode==2) {
       $txt2=array();
       
       for($i=0;$i<count($html0);$i++) {
-        if(trim(strip_tags($html0[$i]))) { // There is something !
+#        $linecontent=trim(strip_tags(preg_replace("+&nbsp;+","",$html0[$i])));
+#        if($linecontent) { // There is something !
           $txt0[]=$html0[$i];
-        }
+#        }
       }
       for($i=0;$i<count($html2);$i++) {
-        if(trim(strip_tags($html2[$i]))) { // There is something !
+#        $linecontent=trim(strip_tags(preg_replace("+&nbsp;+","",$html2[$i])));
+#        if($linecontent) { // There is something !
           $txt2[]=$html2[$i];
-        }
+#        }
       }  
     }
         
@@ -75,7 +89,7 @@
        $i2 = $i;
        while ($rm = $diff0[$i2++]) {          
           if($wiki->htmlmode == 2) {
-            $o .= "<br><b>-</b><font color=\"#990000\">$rm</font><br>\n";
+            $o .= "<b>-</b><font color=\"#990000\">$rm</font><br>\n";
           } else {
             $o .= "<b>-</b><font color=\"#990000\"><tt>$rm</tt></font><br>\n";
           }
 
        if (in_array($line, $diff2)) {
           if($wiki->htmlmode == 2) {
-            $o .= "<br><b>+</b><font color=\"#009900\">$line</font>\n";
+            $o .= "<b>+</b><font color=\"#009900\">$line</font><br>\n";
           } else {
             $o .= "<b>+</b><font color=\"#009900\"><tt>$line</tt></font><br>\n";
           }
        }
        else {
           if($wiki->htmlmode == 2) {
-            $o .= "$line\n";
+            $o .= "$line<br>\n";
           } else {
             $o .= "&nbsp; $line<br>\n";
           }