[R-sig-mediawiki] output image type patch (png/jpg) for 0.03

Alex Brown alex at transitive.com
Tue Sep 26 15:08:09 CEST 2006


Attached is a patch for 0.03 which switches the default image type to  
png, and provides a single configuration variable to selected between  
png and jpg.

-Alex

====

Patch:

--- ../../RinMW_003/extensions/Rext.php 2006-08-08 09:17:45.000000000  
+0100
+++ Rext.php.png_substitute     2006-09-26 12:31:35.000000000 +0100
@@ -42,7 +42,7 @@
defined('r_url')     || define('r_url',     extractUrl(r_dir));
defined('r_cgi')     || define('r_cgi',     getcwd() .  
DIRECTORY_SEPARATOR . 'R.php');
defined('r_ext')     || define('r_ext',     getcwd() .  
DIRECTORY_SEPARATOR . 'extensions' . DIRECTORY_SEPARATOR . 'R');
-
+defined('r_img')     || define('r_img',     '.png');
//Add the hook function call to an array defined earlier in the wiki  
code execution.
$wgExtensionFunctions[] = "wfRParse";
@@ -133,12 +133,12 @@
    $rws = r_dir. DIRECTORY_SEPARATOR . $ws;
    switch ($output) {
      case 'display':
-      $jpg = r_dir . DIRECTORY_SEPARATOR . $sha1 . '.jpg';
+      $img = r_dir . DIRECTORY_SEPARATOR . $sha1 . r_img;
        $pdf  = r_dir . DIRECTORY_SEPARATOR . $sha1 . '.pdf';
-      $url = r_url . DIRECTORY_SEPARATOR . $sha1 . '.jpg';
+      $url = r_url . DIRECTORY_SEPARATOR . $sha1 . r_img;
        $urlpdf = r_url . DIRECTORY_SEPARATOR . $sha1 . '.pdf';
        $htm = r_dir . DIRECTORY_SEPARATOR . $sha1 . '.html';
-      if (!file_exists($jpg) or onsave) {
+      if (!file_exists($img) or onsave) {
          $content = '';
          if ($ws!='') {
             $content = $content . 'sys.load.image("' . $rws . '",  
TRUE)' ."\n";
@@ -155,14 +155,14 @@
          fwrite ($fd, $content);
          fclose ($fd);
          $err = $err . runRinShell (r_cmd . ' < ' . $fn, '');
-        $err = $err . runShell (convert . ' ' . $pdf . ' ' .  
$convert . ' ' . $jpg);
+        $err = $err . runShell (convert . ' ' . $pdf . ' ' .  
$convert . ' ' . $img);
        }
-      if (!file_exists($jpg)) {
-        $jpg = r_dir . DIRECTORY_SEPARATOR . $sha1 . '.jpg.0';
-        if (file_exists($jpg)) {
+      if (!file_exists($img)) {
+        $img = r_dir . DIRECTORY_SEPARATOR . $sha1 . r_img . '.0';
+        if (file_exists($img)) {
            for ($i=0; ; $i++) {
-            $old = r_dir . DIRECTORY_SEPARATOR . $sha1 . '.jpg.' . $i;
-            $new = r_dir . DIRECTORY_SEPARATOR . $sha1 . '-' . $i .  
'.jpg';
+            $old = r_dir . DIRECTORY_SEPARATOR . $sha1 . r_img .  
'.' . $i;
+            $new = r_dir . DIRECTORY_SEPARATOR . $sha1 . '-' . $i .  
r_img;
              if (file_exists($old)) {
                rename ($old, $new);
              } else {
@@ -170,14 +170,14 @@
              }
            }
          }
-        $jpg = r_dir . DIRECTORY_SEPARATOR . $sha1 . '-0.jpg';
-        file_exists($jpg) or error ('R', 'JPEG file does not exist:  
' . $jpg, $input . $err);
-        $url = r_url . DIRECTORY_SEPARATOR . $sha1 . '-0.jpg';
+        $img = r_dir . DIRECTORY_SEPARATOR . $sha1 . '-0' . r_img;
+        file_exists($img) or error ('R', r_img . ' file does not  
exist: ' . $img, $input . $err);
+        $url = r_url . DIRECTORY_SEPARATOR . $sha1 . '-0' . r_img;
          $ret = '<a href="' . $urlpdf . '"><img src="' . $url . '"  
border="0" style="' . style . '"></a>';
          for ($i=1; ; $i++) {
-          $jpg = r_dir . DIRECTORY_SEPARATOR . $sha1 . '-'. $i .  
'.jpg';
-          $url = r_url . DIRECTORY_SEPARATOR . $sha1 . '-' . $i .  
'.jpg';
-          if (file_exists($jpg)) {
+          $img = r_dir . DIRECTORY_SEPARATOR . $sha1 . '-'. $i . r_img;
+          $url = r_url . DIRECTORY_SEPARATOR . $sha1 . '-' . $i .  
r_img;
+          if (file_exists($img)) {
              $ret = $ret . '<a href="' . $urlpdf . '"><img src="' .  
$url . '" border="0" style="' . $style . '"></a>';
            } else {
              break;



More information about the R-sig-mediawiki mailing list