Changeset 7667 in spip-zone


Ignore:
Timestamp:
Nov 29, 2006, 9:15:37 PM (12 years ago)
Author:
andre@…
Message:

en attendant de faire mieux, on suit www.spip.net/spip-dev/INSTALL/

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _squelettes_/alter/spip_loader.php

    r7470 r7667  
    44        # SPIP_LOADER recupere et installe la version stable de SPIP
    55        #
     6
     7        # code de reinstallation
     8        if (@file_exists('ecrire/inc_version.php')) {
     9                include_once 'ecrire/inc_version.php';
     10                if (defined('_FILE_CONNECT')
     11                AND _FILE_CONNECT)
     12                        spip_loader_reinstalle();
     13        }
    614
    715        ######################### CONFIGURATION #
     
    2533        define('_SPIP_LOADER_UPDATE_AUTEURS', '1');
    2634
     35        # surcharger le script
     36        define('_NOM_PAQUET_ZIP','SPIP');
     37        define('_SPIP_LOADER_URL_RETOUR', "ecrire/");
     38        define('_SPIP_LOADER_SCRIPT', "spip_loader.php");
    2739        #
    2840        #######################################################################
    29 
    30         # code de reinstallation
    31         if (@file_exists('ecrire/inc_version.php')) {
    32                 include_once 'ecrire/inc_version.php';
    33                 if (defined('_FILE_CONNECT')
    34                 AND _FILE_CONNECT)
    35                         spip_loader_reinstalle();
    36         }
    3741
    3842        # langues disponibles
     
    4145                'br' => 'brezhoneg',
    4246                'ca' => 'català',
     47                'cs' => 'čeština',
     48                'de' => 'Deutsch',
    4349                'en' => 'English',
    4450                'eo' => 'Esperanto',
     
    4753                'gl' => 'galego',
    4854                'it' => 'italiano',
     55                'lb' => 'Lëtzebuergesch',
    4956                'pt_br' => 'Português do Brasil',
    5057                'ro' => 'română'
     
    96103
    97104        function menu_languesT($lang) {
     105                global $dir_base;
    98106                $r = '<div style="float:'.$GLOBALS['spip_lang_right'].';">';
    99                 $r .= '<form action="./spip_loader.php" method="get">';
     107                $r .= '<form action="'.$dir_base._SPIP_LOADER_SCRIPT.'" method="get">';
     108                if(preg_match(',action=([a-z_]+),', _SPIP_LOADER_SCRIPT, $m)) {
     109                        $r .= "<input type='hidden' name='action' value='".$m[1]."' />";
     110                        $sep = '&amp;';
     111                }
     112                else
     113                        $sep = '?';
    100114                $r .= '<select name="lang"
    101                         onchange="window.location=\'spip_loader.php?lang=\'+this.value;">';
     115                        onchange="window.location=\''.$dir_base._SPIP_LOADER_SCRIPT.$sep.'lang=\'+this.value;">';
     116               
    102117                foreach ($GLOBALS['langues'] as $l => $nom)
    103118                        $r .= '<option value="'.$l.'"' . ($l == $lang ? ' selected' : '')
     
    347362                <HTML <?php echo "dir='".$GLOBALS['spip_lang_dir']."'";?>>
    348363                <HEAD>
    349                 <TITLE><?php echo _TT('tradloader:titre'); ?></TITLE>
     364                <TITLE><?php echo _TT('tradloader:titre', array('paquet'=>_NOM_PAQUET_ZIP)); ?></TITLE>
    350365                <META HTTP-EQUIV="Expires" CONTENT="0">
    351366                <META HTTP-EQUIV="cache-control" CONTENT="no-cache,no-store">
     
    376391
    377392                <FONT FACE="Verdana,Arial,Helvetica,sans-serif" SIZE=4 COLOR="#970038"><B><?php
    378                         echo _TT('tradloader:titre');
     393                        echo _TT('tradloader:titre', array('paquet'=>_NOM_PAQUET_ZIP));
    379394                ?></B></FONT>
    380395                <FONT FACE="Georgia,Garamond,Times,serif" SIZE=3>
     
    419434                if(!$droits) {
    420435                        //on ne peut pas ecrire
    421                         debut_html(_TT('tradloader:titre'));
    422                         echo _TT('tradloader:texte_preliminaire');
    423 
     436                        debut_html();
     437                        echo _TT('tradloader:texte_preliminaire', array('paquet'=>_NOM_PAQUET_ZIP, 'chmod'=>$chmod));
    424438                        fin_html();
    425439                        exit;
     
    446460
    447461                        $fichier = basename(_URL_PAQUET_ZIP);
     462                        $paquet = (isset($_GET['paquet']) AND preg_match(',[a-zA-Z0-9_]+,', $_GET['paquet'])) ? $_GET['paquet'] : '';
    448463
    449464                        //
     
    455470                                $ok = $zip->extract(
    456471                                        PCLZIP_OPT_PATH, $dir_base,
    457                                         PCLZIP_OPT_SET_CHMOD, $chmod & ~0111,
     472                                        PCLZIP_OPT_SET_CHMOD, $chmod,
     473                                        PCLZIP_OPT_REPLACE_NEWER,
    458474                                        PCLZIP_OPT_REMOVE_PATH, "spip/");
    459475                                if ($zip->error_code<0) {
     
    465481                                }
    466482                                nettoyer_racine($fichier);
    467                                 header("Location: ".$dir_base."ecrire/");
     483                                header("Location: ".$dir_base._SPIP_LOADER_URL_RETOUR);
    468484                                exit;
    469485                        }
     
    473489                        if ($_GET['charger'] != 'oui') {
    474490                                debut_html();
    475                                 echo _TT('tradloader:texte_intro');
     491                                echo _TT('tradloader:texte_intro', array('paquet'=>_NOM_PAQUET_ZIP));
    476492                                echo "<DIV ALIGN='".$GLOBALS['spip_lang_right']."'>";
    477                                 echo "<FORM ACTION='spip_loader.php' METHOD='get'>";
    478                                 echo "<INPUT TYPE='hidden' NAME='charger' VALUE='oui'>";
     493                                echo "<FORM ACTION='".$dir_base._SPIP_LOADER_SCRIPT."' METHOD='get'>";
     494                                if(preg_match(',action=([a-z_]+),', _SPIP_LOADER_SCRIPT, $m))
     495                                        echo "<input type='hidden' name='action' value='".$m[1]."' />";
     496                                if($paquet != '')
     497                                        echo "<INPUT TYPE='hidden' NAME='paquet' VALUE='$paquet'>";
     498                                if(file_exists($dir_base.$fichier))
     499                                        echo "<INPUT TYPE='hidden' NAME='fichier' VALUE='oui'>";
     500                                else
     501                                        echo "<INPUT TYPE='hidden' NAME='charger' VALUE='oui'>";
    479502                                echo "<INPUT TYPE='submit' NAME='Valider' VALUE=\""._TT('tradloader:bouton_suivant')."\">";
    480503                                echo "</FORM>";
     
    494517
    495518                        // Passer a l'etape suivante (desarchivage)
    496                         header("Location: spip_loader.php?fichier=oui");
     519                        $sep = strpos(_SPIP_LOADER_SCRIPT, '?') ? '&' : '?';
     520                        header("Location: ".$dir_base._SPIP_LOADER_SCRIPT.$sep."fichier=oui".($paquet?"&paquet=".$paquet:''));
    497521                        exit;
    498522                }
     
    510534
    511535        function spip_loader_reinstalle() {
     536                if(!defined(_SPIP_LOADER_UPDATE_AUTEURS))
     537                        define('_SPIP_LOADER_UPDATE_AUTEURS', '1');
    512538                if ($GLOBALS['auteur_session']['statut'] != '0minirezo'
    513539                OR !in_array($GLOBALS['auteur_session']['id_auteur'],
Note: See TracChangeset for help on using the changeset viewer.