Changeset 75074 in spip-zone for _plugins_/ocr


Ignore:
Timestamp:
Aug 29, 2013, 10:44:20 AM (8 years ago)
Author:
lesage.sylvain@…
Message:

adapter le tableau "resultat" au format demandé par FACD

Le plugin FACD demande que les fonctions de conversion (dans
ce cas, d'analyse) rendent un tableau avec les champs suivants:
-* 'info' : texte
-* 'erreur' : booléen
-* 'success' : booléen

Location:
_plugins_/ocr/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/ocr/trunk/formulaires/tester_ocr.php

    r75073 r75074  
    2828                return array(
    2929                        "editable" => true,
    30                         "message_erreur" => _T('ocr:test_erreur_regarder_logs',array('message'=>$resultat['erreur'])),
     30                        "message_erreur" => _T('ocr:test_erreur_regarder_logs',array('message'=>$resultat['info'])),
    3131                );
    3232        }
    3333       
    3434        // envoi à la fonction charger
    35         set_request('resultat', $resultat['texte']?$resultat['texte']:' ');
     35        set_request('resultat', $resultat['info']?$resultat['info']:' ');
    3636       
    3737        // message
  • _plugins_/ocr/trunk/inc/ocr_analyser.php

    r75073 r75074  
    1212function ocr_analyser($id_document, $dry_run=false) {
    1313        spip_log('Analyse OCR du document '.$id_document, 'ocr');
    14 
     14       
    1515        include_spip('inc/config');
    1616        $config = lire_config('ocr',array());
     
    2020                // TODO : essayer de trouver tout seul l'exécutable
    2121                spip_log('Erreur analyse OCR : Il faut specifier l\'exécutable dans le panneau de configuration');
    22                 $resultat['erreur'] = _T('ocr:analyser_erreur_executable_introuvable');
     22                $resultat['info'] = _T('ocr:analyser_erreur_executable_introuvable');
     23                $resultat['erreur'] = true;
    2324                return $resultat;
    2425        }
    2526        $opt = $config['ocr_opt'] ? $config['ocr_opt'] : '';
    2627
    27         $resultat = array('texte'=>'','erreur'=>'');
    2828        $document = ocr_document($id_document);
    2929        spip_log($document, 'ocr');
     
    3232
    3333        if (!$fichier) {
    34                 $resultat['erreur'] = _T('ocr:analyser_erreur_document_inexistant');
     34                $resultat['info'] = _T('ocr:analyser_erreur_document_inexistant');
     35                $resultat['erreur'] = true;
    3536                return $resultat;
    3637        }
     
    4142        spip_log('Commande d\'analyse OCR : "'.$cmd.'"', 'ocr');
    4243        exec($cmd, $output, $status_code);
    43        
    44         $resultat['erreur'] = ocr_texte_erreur($status_code);
     44        $erreur = ocr_texte_erreur($status_code);
    4545
    46         if ($resultat['erreur']) {
    47                 spip_log('Erreur : '.$resultat['erreur'], 'ocr');
     46        if ($erreur) {
     47                spip_log('Erreur : '.$erreur, 'ocr');
     48                $resultat['info'] = $erreur;
     49                $resultat['erreur'] = true;
    4850        } else  {
    4951                // on ouvre et on lit le .txt
     
    5456                        unlink($nouveaufichier);
    5557                        if ($dry_run) {
    56                                 $resultat['texte'] = $texte;
     58                                $resultat['info'] = $texte;
    5759                        } else {
    5860                                // on modifie le champ "ocr" du document dans la base
    5961                                spip_log('Modification du champ "ocr" du document id_document='.$id_document.' dans la base', 'ocr');
    60                                 sql_updateq("spip_documents", array('ocr' => $resultat['texte']), "id_document=".intval($id_document));
     62                                sql_updateq("spip_documents", array('ocr' => $texte), "id_document=".intval($id_document));
    6163                        }
     64                        $resultat['success'] = true;
    6265                } else {
    63                         $resultat['erreur'] = _T('ocr:analyser_erreur_fichier_resultat');
     66                        $resultat['info'] = _T('ocr:analyser_erreur_fichier_resultat');
     67                        $resultat['erreur'] = true;
    6468                }
    6569        }
Note: See TracChangeset for help on using the changeset viewer.