source: spip-zone/_dev_/salvatore2/tireur.php @ 58790

Last change on this file since 58790 was 58790, checked in by kent1@…, 8 years ago

Quand une définition de fichier de traductions.txt est invalide (n'existe pas) on fait mourir le script plutot que de simplement afficher un message qui peut être noyé dans la masse

File size: 2.5 KB
Line 
1<?php
2/*
3    This file is part of SPIP
4
5    Trad-Lang is free software; you can redistribute it and/or modify
6    it under the terms of the GNU General Public License as published by
7    the Free Software Foundation; either version 2 of the License, or
8    (at your option) any later version.
9
10    Trad-Lang is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13    GNU General Public License for more details.
14
15    You should have received a copy of the GNU General Public License
16    along with Trad-Lang; if not, write to the Free Software
17    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
18
19    Copyright 2003-2012
20        Florent Jugla <florent.jugla@eledo.com>,
21        Philippe Riviere <fil@rezo.net>
22        Chryjs <chryjs!@!free!.!fr>,
23*/
24
25
26//il va chercher les fichiers dans le svn
27require_once(dirname(__FILE__).'/inc_tradlang.php');
28$tmp=_SALVATORE_TMP;
29
30// pas de nettoyage, on va essayer de gerer les conflits intelligemment
31// trad_log(exec("rm -rf ".$tmp."*"));
32
33/* MAIN ***********************************************************************/
34
35trad_log("\n=======================================\nTIREUR\nVa chercher les fichiers dans SVN et les depose dans sa copie locale\n=======================================\n");
36
37$liste_sources=charger_fichier_traductions(); // chargement du fichier traductions.txt
38
39$ret=0;
40foreach($liste_sources as $source) {
41        trad_log("\n===== Module ".$source[1]." =====\n");
42        if (is_dir($tmp.$source[1].'/.svn')){
43                $depot = "env LANG=en svn info --non-interactive ".$tmp.$source[1]." | awk '/^URL:/ { print $2 }'";
44                $depot = exec($depot,$depot);
45                $depot = $depot.'/';
46                if($depot != $source[0]){
47                        $cmd = "svn switch ".$source[0]." ".$tmp.$source[1]."/";
48                }else{
49                        $cmd = "svn update  --non-recursive ".$tmp.$source[1]."/";
50                }
51        }else
52                $cmd = "svn checkout --non-recursive ". $source[0]."/ ".$tmp.$source[1].'/';
53        trad_log("$cmd\n");
54        exec("$cmd 2> /dev/null",$out,$int);
55        if($int == 0){
56                trad_log(end($out)."\n");
57        }else{
58                die("La source ".$source[0]." n'existe pas\n\n");
59        }
60        // controle des erreurs : requiert au moins 1 fichier par module !
61        if (!file_exists($tmp.$source[1].'/'.$source[1].'_'.$source[2].".php")) {
62                $ret=1;
63                die("! Erreur pas de fichier de langue conforme dans le module : $tmp".$source[1]."\n");
64        }
65}
66
67return $ret;
68/* MAIN ***********************************************************************/
69
70?>
Note: See TracBrowser for help on using the repository browser.