Revision: 48486
Author:   thomasv
Date:     2009-03-17 14:04:50 +0000 (Tue, 17 Mar 2009)

Log Message:
-----------
if available, extract text using djvutxt

Modified Paths:
--------------
    trunk/extensions/ProofreadPage/ProofreadPage.php

Modified: trunk/extensions/ProofreadPage/ProofreadPage.php
===================================================================
--- trunk/extensions/ProofreadPage/ProofreadPage.php    2009-03-17 13:18:33 UTC 
(rev 48485)
+++ trunk/extensions/ProofreadPage/ProofreadPage.php    2009-03-17 14:04:50 UTC 
(rev 48486)
@@ -12,7 +12,11 @@
 $wgHooks['GetLinkColours'][] = 'pr_getLinkColours';
 $wgHooks['ImageOpenShowImageInlineBefore'][] = 'pr_imageMessage';
 $wgHooks['ArticleSaveComplete'][] = 'pr_articleSave';
+$wgHooks['EditFormPreloadText'][] = 'pr_preloadText';
 
+$wgDjvutxt = 'djvutxt';
+
+
 $wgExtensionCredits['other'][] = array(
        'name'           => 'ProofreadPage',
        'author'         => 'ThomasV',
@@ -648,3 +652,32 @@
 
 }
 
+
+
+function pr_preloadText( $textbox1, $mTitle ) {
+       global $wgDjvutxt;
+
+       $page_namespace = preg_quote( wfMsgForContent( 
'proofreadpage_namespace' ), '/' );
+
+       if ( preg_match( "/^$page_namespace:(.*?)\/([0-9]*)$/", 
$mTitle->getPrefixedText(), $m ) ) {
+
+               $imageTitle = Title::makeTitleSafe( NS_IMAGE, $m[1] );
+               if ( !$imageTitle ) {
+                       return true;
+               }
+
+               $image = Image::newFromTitle( $imageTitle );
+               if ( $image->exists() ) {
+                       $srcPath = $image->getPath();
+                       $cmd = "( " .wfEscapeShellArg( $wgDjvutxt );
+                       $cmd .= " --page={$m[2]} ". wfEscapeShellArg( $srcPath 
)." )";
+                       wfProfileIn( 'ProofreadPage' );
+                       wfDebug( __METHOD__.": $cmd\n" );
+                       $err = wfShellExec( $cmd, $retval );
+                       wfProfileOut( 'ProofreadPage' );
+
+                       if($retval==0) $textbox1 = $err;
+               }
+       }
+       return true;
+}



_______________________________________________
MediaWiki-CVS mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to