Completed
Branch master (0881bb)
by Michael
04:14
created
xoops_trust_path/libs/altsys/include/Text_Diff.php 1 patch
Indentation   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -223,7 +223,7 @@
 block discarded – undo
223 223
      *                                  of elements as $to_lines.
224 224
      */
225 225
     public function Text_MappedDiff($from_lines, $to_lines,
226
-                             $mapped_from_lines, $mapped_to_lines)
226
+                                $mapped_from_lines, $mapped_to_lines)
227 227
     {
228 228
         assert(count($from_lines) == count($mapped_from_lines));
229 229
         assert(count($to_lines) == count($mapped_to_lines));
Please login to merge, or discard this patch.
xoops_trust_path/libs/altsys/include/Text_Diff_Renderer_inline.php 1 patch
Indentation   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -118,11 +118,11 @@
 block discarded – undo
118 118
          * preserve whitespace as well. Therefore we split on words,
119 119
          * but include all blocks of whitespace in the wordlist. */
120 120
         $diff = new Text_Diff($this->_splitOnWords($text1, $nl),
121
-                               $this->_splitOnWords($text2, $nl));
121
+                                $this->_splitOnWords($text2, $nl));
122 122
 
123 123
         /* Get the diff in inline format. */
124 124
         $renderer = new Text_Diff_Renderer_inline(array_merge($this->getParams(),
125
-                                                               array('split_level' => 'words')));
125
+                                                                array('split_level' => 'words')));
126 126
 
127 127
         /* Run the diff and get the output. */
128 128
         return str_replace($nl, "\n", $renderer->render($diff)) . "\n";
Please login to merge, or discard this patch.
xoops_trust_path/libs/altsys/include/Text_Diff_Renderer.php 1 patch
Indentation   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -89,8 +89,8 @@  discard block
 block discarded – undo
89 89
                             $block[] = new Text_Diff_Op_copy($context);
90 90
                         }
91 91
                         $output .= $this->_block($x0, $ntrail + $xi - $x0,
92
-                                                 $y0, $ntrail + $yi - $y0,
93
-                                                 $block);
92
+                                                    $y0, $ntrail + $yi - $y0,
93
+                                                    $block);
94 94
                         $block = false;
95 95
                     }
96 96
                 }
@@ -118,8 +118,8 @@  discard block
 block discarded – undo
118 118
 
119 119
         if (is_array($block)) {
120 120
             $output .= $this->_block($x0, $xi - $x0,
121
-                                     $y0, $yi - $y0,
122
-                                     $block);
121
+                                        $y0, $yi - $y0,
122
+                                        $block);
123 123
         }
124 124
 
125 125
         return $output . $this->_endDiff();
Please login to merge, or discard this patch.
xoops_trust_path/libs/altsys/include/Archive_Zip.php 1 patch
Indentation   +1713 added lines, -1713 removed lines patch added patch discarded remove patch
@@ -27,63 +27,63 @@  discard block
 block discarded – undo
27 27
 
28 28
 //  require_once 'PEAR.php'; // GIJ
29 29
 
30
-  // ----- Constants
31
-  define('ARCHIVE_ZIP_READ_BLOCK_SIZE', 2048);
32
-
33
-  // ----- File list separator
34
-  define('ARCHIVE_ZIP_SEPARATOR', ',');
35
-
36
-  // ----- Optional static temporary directory
37
-  //       By default temporary files are generated in the script current
38
-  //       path.
39
-  //       If defined :
40
-  //       - MUST BE terminated by a '/'.
41
-  //       - MUST be a valid, already created directory
42
-  //       Samples :
43
-  // define( 'ARCHIVE_ZIP_TEMPORARY_DIR', '/temp/' );
44
-  // define( 'ARCHIVE_ZIP_TEMPORARY_DIR', 'C:/Temp/' );
45
-  define('ARCHIVE_ZIP_TEMPORARY_DIR', '');
46
-
47
-  // ----- Error codes
48
-  define('ARCHIVE_ZIP_ERR_NO_ERROR', 0);
49
-  define('ARCHIVE_ZIP_ERR_WRITE_OPEN_FAIL', -1);
50
-  define('ARCHIVE_ZIP_ERR_READ_OPEN_FAIL', -2);
51
-  define('ARCHIVE_ZIP_ERR_INVALID_PARAMETER', -3);
52
-  define('ARCHIVE_ZIP_ERR_MISSING_FILE', -4);
53
-  define('ARCHIVE_ZIP_ERR_FILENAME_TOO_LONG', -5);
54
-  define('ARCHIVE_ZIP_ERR_INVALID_ZIP', -6);
55
-  define('ARCHIVE_ZIP_ERR_BAD_EXTRACTED_FILE', -7);
56
-  define('ARCHIVE_ZIP_ERR_DIR_CREATE_FAIL', -8);
57
-  define('ARCHIVE_ZIP_ERR_BAD_EXTENSION', -9);
58
-  define('ARCHIVE_ZIP_ERR_BAD_FORMAT', -10);
59
-  define('ARCHIVE_ZIP_ERR_DELETE_FILE_FAIL', -11);
60
-  define('ARCHIVE_ZIP_ERR_RENAME_FILE_FAIL', -12);
61
-  define('ARCHIVE_ZIP_ERR_BAD_CHECKSUM', -13);
62
-  define('ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP', -14);
63
-  define('ARCHIVE_ZIP_ERR_MISSING_OPTION_VALUE', -15);
64
-  define('ARCHIVE_ZIP_ERR_INVALID_PARAM_VALUE', -16);
65
-
66
-  // ----- Warning codes
67
-  define('ARCHIVE_ZIP_WARN_NO_WARNING', 0);
68
-  define('ARCHIVE_ZIP_WARN_FILE_EXIST', 1);
69
-
70
-  // ----- Methods parameters
71
-  define('ARCHIVE_ZIP_PARAM_PATH', 'path');
72
-  define('ARCHIVE_ZIP_PARAM_ADD_PATH', 'add_path');
73
-  define('ARCHIVE_ZIP_PARAM_REMOVE_PATH', 'remove_path');
74
-  define('ARCHIVE_ZIP_PARAM_REMOVE_ALL_PATH', 'remove_all_path');
75
-  define('ARCHIVE_ZIP_PARAM_SET_CHMOD', 'set_chmod');
76
-  define('ARCHIVE_ZIP_PARAM_EXTRACT_AS_STRING', 'extract_as_string');
77
-  define('ARCHIVE_ZIP_PARAM_NO_COMPRESSION', 'no_compression');
78
-  define('ARCHIVE_ZIP_PARAM_BY_NAME', 'by_name');
79
-  define('ARCHIVE_ZIP_PARAM_BY_INDEX', 'by_index');
80
-  define('ARCHIVE_ZIP_PARAM_BY_EREG', 'by_ereg');
81
-  define('ARCHIVE_ZIP_PARAM_BY_PREG', 'by_preg');
82
-
83
-  define('ARCHIVE_ZIP_PARAM_PRE_EXTRACT', 'callback_pre_extract');
84
-  define('ARCHIVE_ZIP_PARAM_POST_EXTRACT', 'callback_post_extract');
85
-  define('ARCHIVE_ZIP_PARAM_PRE_ADD', 'callback_pre_add');
86
-  define('ARCHIVE_ZIP_PARAM_POST_ADD', 'callback_post_add');
30
+    // ----- Constants
31
+    define('ARCHIVE_ZIP_READ_BLOCK_SIZE', 2048);
32
+
33
+    // ----- File list separator
34
+    define('ARCHIVE_ZIP_SEPARATOR', ',');
35
+
36
+    // ----- Optional static temporary directory
37
+    //       By default temporary files are generated in the script current
38
+    //       path.
39
+    //       If defined :
40
+    //       - MUST BE terminated by a '/'.
41
+    //       - MUST be a valid, already created directory
42
+    //       Samples :
43
+    // define( 'ARCHIVE_ZIP_TEMPORARY_DIR', '/temp/' );
44
+    // define( 'ARCHIVE_ZIP_TEMPORARY_DIR', 'C:/Temp/' );
45
+    define('ARCHIVE_ZIP_TEMPORARY_DIR', '');
46
+
47
+    // ----- Error codes
48
+    define('ARCHIVE_ZIP_ERR_NO_ERROR', 0);
49
+    define('ARCHIVE_ZIP_ERR_WRITE_OPEN_FAIL', -1);
50
+    define('ARCHIVE_ZIP_ERR_READ_OPEN_FAIL', -2);
51
+    define('ARCHIVE_ZIP_ERR_INVALID_PARAMETER', -3);
52
+    define('ARCHIVE_ZIP_ERR_MISSING_FILE', -4);
53
+    define('ARCHIVE_ZIP_ERR_FILENAME_TOO_LONG', -5);
54
+    define('ARCHIVE_ZIP_ERR_INVALID_ZIP', -6);
55
+    define('ARCHIVE_ZIP_ERR_BAD_EXTRACTED_FILE', -7);
56
+    define('ARCHIVE_ZIP_ERR_DIR_CREATE_FAIL', -8);
57
+    define('ARCHIVE_ZIP_ERR_BAD_EXTENSION', -9);
58
+    define('ARCHIVE_ZIP_ERR_BAD_FORMAT', -10);
59
+    define('ARCHIVE_ZIP_ERR_DELETE_FILE_FAIL', -11);
60
+    define('ARCHIVE_ZIP_ERR_RENAME_FILE_FAIL', -12);
61
+    define('ARCHIVE_ZIP_ERR_BAD_CHECKSUM', -13);
62
+    define('ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP', -14);
63
+    define('ARCHIVE_ZIP_ERR_MISSING_OPTION_VALUE', -15);
64
+    define('ARCHIVE_ZIP_ERR_INVALID_PARAM_VALUE', -16);
65
+
66
+    // ----- Warning codes
67
+    define('ARCHIVE_ZIP_WARN_NO_WARNING', 0);
68
+    define('ARCHIVE_ZIP_WARN_FILE_EXIST', 1);
69
+
70
+    // ----- Methods parameters
71
+    define('ARCHIVE_ZIP_PARAM_PATH', 'path');
72
+    define('ARCHIVE_ZIP_PARAM_ADD_PATH', 'add_path');
73
+    define('ARCHIVE_ZIP_PARAM_REMOVE_PATH', 'remove_path');
74
+    define('ARCHIVE_ZIP_PARAM_REMOVE_ALL_PATH', 'remove_all_path');
75
+    define('ARCHIVE_ZIP_PARAM_SET_CHMOD', 'set_chmod');
76
+    define('ARCHIVE_ZIP_PARAM_EXTRACT_AS_STRING', 'extract_as_string');
77
+    define('ARCHIVE_ZIP_PARAM_NO_COMPRESSION', 'no_compression');
78
+    define('ARCHIVE_ZIP_PARAM_BY_NAME', 'by_name');
79
+    define('ARCHIVE_ZIP_PARAM_BY_INDEX', 'by_index');
80
+    define('ARCHIVE_ZIP_PARAM_BY_EREG', 'by_ereg');
81
+    define('ARCHIVE_ZIP_PARAM_BY_PREG', 'by_preg');
82
+
83
+    define('ARCHIVE_ZIP_PARAM_PRE_EXTRACT', 'callback_pre_extract');
84
+    define('ARCHIVE_ZIP_PARAM_POST_EXTRACT', 'callback_post_extract');
85
+    define('ARCHIVE_ZIP_PARAM_PRE_ADD', 'callback_pre_add');
86
+    define('ARCHIVE_ZIP_PARAM_POST_ADD', 'callback_post_add');
87 87
 
88 88
 
89 89
 
@@ -102,56 +102,56 @@  discard block
 block discarded – undo
102 102
 class Archive_Zip
103 103
 {
104 104
     /**
105
-    * The filename of the zip archive.
106
-    *
107
-    * @var string Name of the Zip file
108
-    */
105
+     * The filename of the zip archive.
106
+     *
107
+     * @var string Name of the Zip file
108
+     */
109 109
     public $_zipname='';
110 110
 
111 111
     /**
112
-    * File descriptor of the opened Zip file.
113
-    *
114
-    * @var int Internal zip file descriptor
115
-    */
112
+     * File descriptor of the opened Zip file.
113
+     *
114
+     * @var int Internal zip file descriptor
115
+     */
116 116
     public $_zip_fd=0;
117 117
 
118 118
     /**
119
-    * @var int last error code
120
-    */
119
+     * @var int last error code
120
+     */
121 121
     public $_error_code=1;
122 122
 
123 123
     /**
124
-    * @var string Last error description
125
-    */
124
+     * @var string Last error description
125
+     */
126 126
     public $_error_string='';
127 127
 
128 128
     // {{{ constructor
129 129
     /**
130
-    * Archive_Zip Class constructor. This flavour of the constructor only
131
-    * declare a new Archive_Zip object, identifying it by the name of the
132
-    * zip file.
133
-    *
134
-    * @param    string  $p_zipname  The name of the zip archive to create
135
-    * @access public
136
-    */
130
+     * Archive_Zip Class constructor. This flavour of the constructor only
131
+     * declare a new Archive_Zip object, identifying it by the name of the
132
+     * zip file.
133
+     *
134
+     * @param    string  $p_zipname  The name of the zip archive to create
135
+     * @access public
136
+     */
137 137
 //HACK by domifara
138 138
 //	function Archive_Zip($p_zipname)
139 139
     public function __construct($p_zipname)
140 140
     {
141 141
 
142
-      // ----- Check the zlib
142
+        // ----- Check the zlib
143 143
 /*      if (!extension_loaded('zlib')) {
144 144
           PEAR::loadExtension('zlib');
145 145
       }*/ // GIJ
146
-      if (!extension_loaded('zlib')) {
147
-          die("The extension 'zlib' couldn't be found.\n".
148
-              "Please make sure your version of PHP was built ".
149
-              "with 'zlib' support.\n");
150
-          return false;
151
-      }
152
-
153
-      // ----- Set the attributes
154
-      $this->_zipname = $p_zipname;
146
+        if (!extension_loaded('zlib')) {
147
+            die("The extension 'zlib' couldn't be found.\n".
148
+                "Please make sure your version of PHP was built ".
149
+                "with 'zlib' support.\n");
150
+            return false;
151
+        }
152
+
153
+        // ----- Set the attributes
154
+        $this->_zipname = $p_zipname;
155 155
         $this->_zip_fd = 0;
156 156
 
157 157
         return;
@@ -160,27 +160,27 @@  discard block
 block discarded – undo
160 160
 
161 161
     // {{{ create()
162 162
     /**
163
-    * This method creates a Zip Archive with the filename set with
164
-    * the constructor.
165
-    * The files and directories indicated in $p_filelist
166
-    * are added in the archive.
167
-    * When a directory is in the list, the directory and its content is added
168
-    * in the archive.
169
-    * The methods takes a variable list of parameters in $p_params.
170
-    * The supported parameters for this method are :
171
-    *   'add_path' : Add a path to the archived files.
172
-    *   'remove_path' : Remove the specified 'root' path of the archived files.
173
-    *   'remove_all_path' : Remove all the path of the archived files.
174
-    *   'no_compression' : The archived files will not be compressed.
175
-    *
176
-    * @access public
177
-    * @param  mixed  $p_filelist  The list of the files or folders to add.
178
-    *                             It can be a string with filenames separated
179
-    *                             by a comma, or an array of filenames.
180
-    * @param  mixed  $p_params  An array of variable parameters and values.
181
-    * @return mixed An array of file description on success,
182
-    *               an error code on error
183
-    */
163
+     * This method creates a Zip Archive with the filename set with
164
+     * the constructor.
165
+     * The files and directories indicated in $p_filelist
166
+     * are added in the archive.
167
+     * When a directory is in the list, the directory and its content is added
168
+     * in the archive.
169
+     * The methods takes a variable list of parameters in $p_params.
170
+     * The supported parameters for this method are :
171
+     *   'add_path' : Add a path to the archived files.
172
+     *   'remove_path' : Remove the specified 'root' path of the archived files.
173
+     *   'remove_all_path' : Remove all the path of the archived files.
174
+     *   'no_compression' : The archived files will not be compressed.
175
+     *
176
+     * @access public
177
+     * @param  mixed  $p_filelist  The list of the files or folders to add.
178
+     *                             It can be a string with filenames separated
179
+     *                             by a comma, or an array of filenames.
180
+     * @param  mixed  $p_params  An array of variable parameters and values.
181
+     * @return mixed An array of file description on success,
182
+     *               an error code on error
183
+     */
184 184
     public function create($p_filelist, $p_params=0)
185 185
     {
186 186
         $this->_errorReset();
@@ -190,10 +190,10 @@  discard block
 block discarded – undo
190 190
             $p_params = array();
191 191
         }
192 192
         if ($this->_check_parameters($p_params,
193
-                                     array('no_compression' => false,
194
-                                           'add_path' => "",
195
-                                           'remove_path' => "",
196
-                                           'remove_all_path' => false)) != 1) {
193
+                                        array('no_compression' => false,
194
+                                            'add_path' => "",
195
+                                            'remove_path' => "",
196
+                                            'remove_all_path' => false)) != 1) {
197 197
             return 0;
198 198
         }
199 199
 
@@ -214,7 +214,7 @@  discard block
 block discarded – undo
214 214
         // ----- Invalid variable
215 215
         else {
216 216
             $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAMETER,
217
-                             'Invalid variable type p_filelist');
217
+                                'Invalid variable type p_filelist');
218 218
             $v_result = ARCHIVE_ZIP_ERR_INVALID_PARAMETER;
219 219
         }
220 220
 
@@ -228,30 +228,30 @@  discard block
 block discarded – undo
228 228
 
229 229
     // {{{ add()
230 230
     /**
231
-    * This method add files or directory in an existing Zip Archive.
232
-    * If the Zip Archive does not exist it is created.
233
-    * The files and directories to add are indicated in $p_filelist.
234
-    * When a directory is in the list, the directory and its content is added
235
-    * in the archive.
236
-    * The methods takes a variable list of parameters in $p_params.
237
-    * The supported parameters for this method are :
238
-    *   'add_path' : Add a path to the archived files.
239
-    *   'remove_path' : Remove the specified 'root' path of the archived files.
240
-    *   'remove_all_path' : Remove all the path of the archived files.
241
-    *   'no_compression' : The archived files will not be compressed.
242
-    *   'callback_pre_add' : A callback function that will be called before
243
-    *                        each entry archiving.
244
-    *   'callback_post_add' : A callback function that will be called after
245
-    *                         each entry archiving.
246
-    *
247
-    * @access public
248
-    * @param    mixed  $p_filelist  The list of the files or folders to add.
249
-    *                               It can be a string with filenames separated
250
-    *                               by a comma, or an array of filenames.
251
-    * @param    mixed  $p_params  An array of variable parameters and values.
252
-    * @return mixed An array of file description on success,
253
-    *               0 on an unrecoverable failure, an error code is logged.
254
-    */
231
+     * This method add files or directory in an existing Zip Archive.
232
+     * If the Zip Archive does not exist it is created.
233
+     * The files and directories to add are indicated in $p_filelist.
234
+     * When a directory is in the list, the directory and its content is added
235
+     * in the archive.
236
+     * The methods takes a variable list of parameters in $p_params.
237
+     * The supported parameters for this method are :
238
+     *   'add_path' : Add a path to the archived files.
239
+     *   'remove_path' : Remove the specified 'root' path of the archived files.
240
+     *   'remove_all_path' : Remove all the path of the archived files.
241
+     *   'no_compression' : The archived files will not be compressed.
242
+     *   'callback_pre_add' : A callback function that will be called before
243
+     *                        each entry archiving.
244
+     *   'callback_post_add' : A callback function that will be called after
245
+     *                         each entry archiving.
246
+     *
247
+     * @access public
248
+     * @param    mixed  $p_filelist  The list of the files or folders to add.
249
+     *                               It can be a string with filenames separated
250
+     *                               by a comma, or an array of filenames.
251
+     * @param    mixed  $p_params  An array of variable parameters and values.
252
+     * @return mixed An array of file description on success,
253
+     *               0 on an unrecoverable failure, an error code is logged.
254
+     */
255 255
     public function add($p_filelist, $p_params=0)
256 256
     {
257 257
         $this->_errorReset();
@@ -261,11 +261,11 @@  discard block
 block discarded – undo
261 261
             $p_params = array();
262 262
         }
263 263
         if ($this->_check_parameters($p_params,
264
-                                     array('no_compression' => false,
264
+                                        array('no_compression' => false,
265 265
                                             'add_path' => '',
266 266
                                             'remove_path' => '',
267 267
                                             'remove_all_path' => false,
268
-                                             'callback_pre_add' => '',
268
+                                                'callback_pre_add' => '',
269 269
                                             'callback_post_add' => '')) != 1) {
270 270
             return 0;
271 271
         }
@@ -289,7 +289,7 @@  discard block
 block discarded – undo
289 289
         // ----- Invalid variable
290 290
         else {
291 291
             $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAMETER,
292
-                             "add() : Invalid variable type p_filelist");
292
+                                "add() : Invalid variable type p_filelist");
293 293
             $v_result = ARCHIVE_ZIP_ERR_INVALID_PARAMETER;
294 294
         }
295 295
 
@@ -304,48 +304,48 @@  discard block
 block discarded – undo
304 304
 
305 305
     // {{{ listContent()
306 306
     /**
307
-    * This method gives the names and properties of the files and directories
308
-    * which are present in the zip archive.
309
-    * The properties of each entries in the list are :
310
-    *   filename : Name of the file.
311
-    *              For create() or add() it's the filename given by the user.
312
-    *              For an extract() it's the filename of the extracted file.
313
-    *   stored_filename : Name of the file / directory stored in the archive.
314
-    *   size : Size of the stored file.
315
-    *   compressed_size : Size of the file's data compressed in the archive
316
-    *                     (without the zip headers overhead)
317
-    *   mtime : Last known modification date of the file (UNIX timestamp)
318
-    *   comment : Comment associated with the file
319
-    *   folder : true | false (indicates if the entry is a folder)
320
-    *   index : index of the file in the archive (-1 when not available)
321
-    *   status : status of the action on the entry (depending of the action) :
322
-    *            Values are :
323
-    *              ok : OK !
324
-    *              filtered : the file/dir was not extracted (filtered by user)
325
-    *              already_a_directory : the file can't be extracted because a
326
-    *                                    directory with the same name already
327
-    *                                    exists
328
-    *              write_protected : the file can't be extracted because a file
329
-    *                                with the same name already exists and is
330
-    *                                write protected
331
-    *              newer_exist : the file was not extracted because a newer
332
-    *                            file already exists
333
-    *              path_creation_fail : the file is not extracted because the
334
-    *                                   folder does not exists and can't be
335
-    *                                   created
336
-    *              write_error : the file was not extracted because there was a
337
-    *                            error while writing the file
338
-    *              read_error : the file was not extracted because there was a
339
-    *                           error while reading the file
340
-    *              invalid_header : the file was not extracted because of an
341
-    *                               archive format error (bad file header)
342
-    * Note that each time a method can continue operating when there
343
-    * is an error on a single file, the error is only logged in the file status.
344
-    *
345
-    * @access public
346
-    * @return mixed An array of file description on success,
347
-    *               0 on an unrecoverable failure, an error code is logged.
348
-    */
307
+     * This method gives the names and properties of the files and directories
308
+     * which are present in the zip archive.
309
+     * The properties of each entries in the list are :
310
+     *   filename : Name of the file.
311
+     *              For create() or add() it's the filename given by the user.
312
+     *              For an extract() it's the filename of the extracted file.
313
+     *   stored_filename : Name of the file / directory stored in the archive.
314
+     *   size : Size of the stored file.
315
+     *   compressed_size : Size of the file's data compressed in the archive
316
+     *                     (without the zip headers overhead)
317
+     *   mtime : Last known modification date of the file (UNIX timestamp)
318
+     *   comment : Comment associated with the file
319
+     *   folder : true | false (indicates if the entry is a folder)
320
+     *   index : index of the file in the archive (-1 when not available)
321
+     *   status : status of the action on the entry (depending of the action) :
322
+     *            Values are :
323
+     *              ok : OK !
324
+     *              filtered : the file/dir was not extracted (filtered by user)
325
+     *              already_a_directory : the file can't be extracted because a
326
+     *                                    directory with the same name already
327
+     *                                    exists
328
+     *              write_protected : the file can't be extracted because a file
329
+     *                                with the same name already exists and is
330
+     *                                write protected
331
+     *              newer_exist : the file was not extracted because a newer
332
+     *                            file already exists
333
+     *              path_creation_fail : the file is not extracted because the
334
+     *                                   folder does not exists and can't be
335
+     *                                   created
336
+     *              write_error : the file was not extracted because there was a
337
+     *                            error while writing the file
338
+     *              read_error : the file was not extracted because there was a
339
+     *                           error while reading the file
340
+     *              invalid_header : the file was not extracted because of an
341
+     *                               archive format error (bad file header)
342
+     * Note that each time a method can continue operating when there
343
+     * is an error on a single file, the error is only logged in the file status.
344
+     *
345
+     * @access public
346
+     * @return mixed An array of file description on success,
347
+     *               0 on an unrecoverable failure, an error code is logged.
348
+     */
349 349
     public function listContent()
350 350
     {
351 351
         $this->_errorReset();
@@ -367,42 +367,42 @@  discard block
 block discarded – undo
367 367
 
368 368
     // {{{ extract()
369 369
     /**
370
-    * This method extract the files and folders which are in the zip archive.
371
-    * It can extract all the archive or a part of the archive by using filter
372
-    * feature (extract by name, by index, by ereg, by preg). The extraction
373
-    * can occur in the current path or an other path.
374
-    * All the advanced features are activated by the use of variable
375
-    * parameters.
376
-    * The return value is an array of entry descriptions which gives
377
-    * information on extracted files (See listContent()).
378
-    * The method may return a success value (an array) even if some files
379
-    * are not correctly extracted (see the file status in listContent()).
380
-    * The supported variable parameters for this method are :
381
-    *   'add_path' : Path where the files and directories are to be extracted
382
-    *   'remove_path' : First part ('root' part) of the memorized path
383
-    *                   (if similar) to remove while extracting.
384
-    *   'remove_all_path' : Remove all the memorized path while extracting.
385
-    *   'extract_as_string' :
386
-    *   'set_chmod' : After the extraction of the file the indicated mode
387
-    *                 will be set.
388
-    *   'by_name' : It can be a string with file/dir names separated by ',',
389
-    *               or an array of file/dir names to extract from the archive.
390
-    *   'by_index' : A string with range of indexes separated by ',',
391
-    *                (sample "1,3-5,12").
392
-    *   'by_ereg' : A regular expression (ereg) that must match the extracted
393
-    *               filename.
394
-    *   'by_preg' : A regular expression (preg) that must match the extracted
395
-    *               filename.
396
-    *   'callback_pre_extract' : A callback function that will be called before
397
-    *                            each entry extraction.
398
-    *   'callback_post_extract' : A callback function that will be called after
399
-    *                            each entry extraction.
400
-    *
401
-    * @access public
402
-    * @param    mixed  $p_params  An array of variable parameters and values.
403
-    * @return mixed An array of file description on success,
404
-    *               0 on an unrecoverable failure, an error code is logged.
405
-    */
370
+     * This method extract the files and folders which are in the zip archive.
371
+     * It can extract all the archive or a part of the archive by using filter
372
+     * feature (extract by name, by index, by ereg, by preg). The extraction
373
+     * can occur in the current path or an other path.
374
+     * All the advanced features are activated by the use of variable
375
+     * parameters.
376
+     * The return value is an array of entry descriptions which gives
377
+     * information on extracted files (See listContent()).
378
+     * The method may return a success value (an array) even if some files
379
+     * are not correctly extracted (see the file status in listContent()).
380
+     * The supported variable parameters for this method are :
381
+     *   'add_path' : Path where the files and directories are to be extracted
382
+     *   'remove_path' : First part ('root' part) of the memorized path
383
+     *                   (if similar) to remove while extracting.
384
+     *   'remove_all_path' : Remove all the memorized path while extracting.
385
+     *   'extract_as_string' :
386
+     *   'set_chmod' : After the extraction of the file the indicated mode
387
+     *                 will be set.
388
+     *   'by_name' : It can be a string with file/dir names separated by ',',
389
+     *               or an array of file/dir names to extract from the archive.
390
+     *   'by_index' : A string with range of indexes separated by ',',
391
+     *                (sample "1,3-5,12").
392
+     *   'by_ereg' : A regular expression (ereg) that must match the extracted
393
+     *               filename.
394
+     *   'by_preg' : A regular expression (preg) that must match the extracted
395
+     *               filename.
396
+     *   'callback_pre_extract' : A callback function that will be called before
397
+     *                            each entry extraction.
398
+     *   'callback_post_extract' : A callback function that will be called after
399
+     *                            each entry extraction.
400
+     *
401
+     * @access public
402
+     * @param    mixed  $p_params  An array of variable parameters and values.
403
+     * @return mixed An array of file description on success,
404
+     *               0 on an unrecoverable failure, an error code is logged.
405
+     */
406 406
     public function extract($p_params=0)
407 407
     {
408 408
         $this->_errorReset();
@@ -417,11 +417,11 @@  discard block
 block discarded – undo
417 417
             $p_params = array();
418 418
         }
419 419
         if ($this->_check_parameters($p_params,
420
-                                     array('extract_as_string' => false,
420
+                                        array('extract_as_string' => false,
421 421
                                             'add_path' => '',
422 422
                                             'remove_path' => '',
423 423
                                             'remove_all_path' => false,
424
-                                             'callback_pre_extract' => '',
424
+                                                'callback_pre_extract' => '',
425 425
                                             'callback_post_extract' => '',
426 426
                                             'set_chmod' => 0,
427 427
                                             'by_name' => '',
@@ -445,26 +445,26 @@  discard block
 block discarded – undo
445 445
 
446 446
     // {{{ delete()
447 447
     /**
448
-    * This methods delete archive entries in the zip archive.
449
-    * Notice that at least one filtering rule (set by the variable parameter
450
-    * list) must be set.
451
-    * Also notice that if you delete a folder entry, only the folder entry
452
-    * is deleted, not all the files bellonging to this folder.
453
-    * The supported variable parameters for this method are :
454
-    *   'by_name' : It can be a string with file/dir names separated by ',',
455
-    *               or an array of file/dir names to delete from the archive.
456
-    *   'by_index' : A string with range of indexes separated by ',',
457
-    *                (sample "1,3-5,12").
458
-    *   'by_ereg' : A regular expression (ereg) that must match the extracted
459
-    *               filename.
460
-    *   'by_preg' : A regular expression (preg) that must match the extracted
461
-    *               filename.
462
-    *
463
-    * @access public
464
-    * @param    mixed  $p_params  An array of variable parameters and values.
465
-    * @return mixed An array of file description on success,
466
-    *               0 on an unrecoverable failure, an error code is logged.
467
-    */
448
+     * This methods delete archive entries in the zip archive.
449
+     * Notice that at least one filtering rule (set by the variable parameter
450
+     * list) must be set.
451
+     * Also notice that if you delete a folder entry, only the folder entry
452
+     * is deleted, not all the files bellonging to this folder.
453
+     * The supported variable parameters for this method are :
454
+     *   'by_name' : It can be a string with file/dir names separated by ',',
455
+     *               or an array of file/dir names to delete from the archive.
456
+     *   'by_index' : A string with range of indexes separated by ',',
457
+     *                (sample "1,3-5,12").
458
+     *   'by_ereg' : A regular expression (ereg) that must match the extracted
459
+     *               filename.
460
+     *   'by_preg' : A regular expression (preg) that must match the extracted
461
+     *               filename.
462
+     *
463
+     * @access public
464
+     * @param    mixed  $p_params  An array of variable parameters and values.
465
+     * @return mixed An array of file description on success,
466
+     *               0 on an unrecoverable failure, an error code is logged.
467
+     */
468 468
     public function delete($p_params)
469 469
     {
470 470
         $this->_errorReset();
@@ -476,7 +476,7 @@  discard block
 block discarded – undo
476 476
 
477 477
         // ----- Set default values
478 478
         if ($this->_check_parameters($p_params,
479
-                                     array('by_name' => '',
479
+                                        array('by_name' => '',
480 480
                                             'by_index' => '',
481 481
                                             'by_ereg' => '',
482 482
                                             'by_preg' => '')) != 1) {
@@ -489,8 +489,8 @@  discard block
 block discarded – undo
489 489
             && ($p_params['by_ereg'] == '')
490 490
             && ($p_params['by_preg'] == '')) {
491 491
             $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAMETER,
492
-                             'At least one filtering rule must'
493
-                             .' be set as parameter');
492
+                                'At least one filtering rule must'
493
+                                .' be set as parameter');
494 494
             return 0;
495 495
         }
496 496
 
@@ -507,16 +507,16 @@  discard block
 block discarded – undo
507 507
 
508 508
     // {{{ properties()
509 509
     /**
510
-    * This method gives the global properties of the archive.
511
-    *  The properties are :
512
-    *    nb : Number of files in the archive
513
-    *    comment : Comment associated with the archive file
514
-    *    status : not_exist, ok
515
-    *
516
-    * @access public
517
-    * @param    mixed  $p_params  {Description}
518
-    * @return mixed An array with the global properties or 0 on error.
519
-    */
510
+     * This method gives the global properties of the archive.
511
+     *  The properties are :
512
+     *    nb : Number of files in the archive
513
+     *    comment : Comment associated with the archive file
514
+     *    status : not_exist, ok
515
+     *
516
+     * @access public
517
+     * @param    mixed  $p_params  {Description}
518
+     * @return mixed An array with the global properties or 0 on error.
519
+     */
520 520
     public function properties()
521 521
     {
522 522
         $this->_errorReset();
@@ -537,8 +537,8 @@  discard block
 block discarded – undo
537 537
             // ----- Open the zip file
538 538
             if (($this->_zip_fd = @fopen($this->_zipname, 'rb')) == 0) {
539 539
                 $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL,
540
-                                 'Unable to open archive \''.$this->_zipname
541
-                                 .'\' in binary read mode');
540
+                                    'Unable to open archive \''.$this->_zipname
541
+                                    .'\' in binary read mode');
542 542
                 return 0;
543 543
             }
544 544
 
@@ -563,15 +563,15 @@  discard block
 block discarded – undo
563 563
 
564 564
     // {{{ duplicate()
565 565
     /**
566
-    * This method creates an archive by copying the content of an other one.
567
-    * If the archive already exist, it is replaced by the new one without
568
-    * any warning.
569
-    *
570
-    * @access public
571
-    * @param  mixed  $p_archive  It can be a valid Archive_Zip object or
572
-    *                            the filename of a valid zip archive.
573
-    * @return integer 1 on success, 0 on failure.
574
-    */
566
+     * This method creates an archive by copying the content of an other one.
567
+     * If the archive already exist, it is replaced by the new one without
568
+     * any warning.
569
+     *
570
+     * @access public
571
+     * @param  mixed  $p_archive  It can be a valid Archive_Zip object or
572
+     *                            the filename of a valid zip archive.
573
+     * @return integer 1 on success, 0 on failure.
574
+     */
575 575
     public function duplicate($p_archive)
576 576
     {
577 577
         $this->_errorReset();
@@ -588,7 +588,7 @@  discard block
 block discarded – undo
588 588
             // TBC : Should also check the archive format
589 589
             if (!is_file($p_archive)) {
590 590
                 $this->_errorLog(ARCHIVE_ZIP_ERR_MISSING_FILE,
591
-                                 "No file with filename '".$p_archive."'");
591
+                                    "No file with filename '".$p_archive."'");
592 592
                 $v_result = ARCHIVE_ZIP_ERR_MISSING_FILE;
593 593
             } else {
594 594
                 $v_result = $this->_duplicate($p_archive);
@@ -598,7 +598,7 @@  discard block
 block discarded – undo
598 598
         // ----- Invalid variable
599 599
         else {
600 600
             $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAMETER,
601
-                             "Invalid variable type p_archive_to_add");
601
+                                "Invalid variable type p_archive_to_add");
602 602
             $v_result = ARCHIVE_ZIP_ERR_INVALID_PARAMETER;
603 603
         }
604 604
 
@@ -608,16 +608,16 @@  discard block
 block discarded – undo
608 608
 
609 609
     // {{{ merge()
610 610
     /**
611
-    *  This method merge a valid zip archive at the end of the
612
-    *  archive identified by the Archive_Zip object.
613
-    *  If the archive ($this) does not exist, the merge becomes a duplicate.
614
-    *  If the archive to add does not exist, the merge is a success.
615
-    *
616
-    * @access public
617
-    * @param mixed $p_archive_to_add  It can be a valid Archive_Zip object or
618
-    *                                 the filename of a valid zip archive.
619
-    * @return integer 1 on success, 0 on failure.
620
-    */
611
+     *  This method merge a valid zip archive at the end of the
612
+     *  archive identified by the Archive_Zip object.
613
+     *  If the archive ($this) does not exist, the merge becomes a duplicate.
614
+     *  If the archive to add does not exist, the merge is a success.
615
+     *
616
+     * @access public
617
+     * @param mixed $p_archive_to_add  It can be a valid Archive_Zip object or
618
+     *                                 the filename of a valid zip archive.
619
+     * @return integer 1 on success, 0 on failure.
620
+     */
621 621
     public function merge($p_archive_to_add)
622 622
     {
623 623
         $v_result = 1;
@@ -646,7 +646,7 @@  discard block
 block discarded – undo
646 646
         // ----- Invalid variable
647 647
         else {
648 648
             $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAMETER,
649
-                             "Invalid variable type p_archive_to_add");
649
+                                "Invalid variable type p_archive_to_add");
650 650
             $v_result = ARCHIVE_ZIP_ERR_INVALID_PARAMETER;
651 651
         }
652 652
 
@@ -656,11 +656,11 @@  discard block
 block discarded – undo
656 656
 
657 657
     // {{{ errorCode()
658 658
     /**
659
-    * Method that gives the lastest error code.
660
-    *
661
-    * @access public
662
-    * @return integer The error code value.
663
-    */
659
+     * Method that gives the lastest error code.
660
+     *
661
+     * @access public
662
+     * @return integer The error code value.
663
+     */
664 664
     public function errorCode()
665 665
     {
666 666
         return($this->_error_code);
@@ -669,19 +669,19 @@  discard block
 block discarded – undo
669 669
 
670 670
     // {{{ errorName()
671 671
     /**
672
-    * This method gives the latest error code name.
673
-    *
674
-    * @access public
675
-    * @param  boolean $p_with_code  If true, gives the name and the int value.
676
-    * @return string The error name.
677
-    */
672
+     * This method gives the latest error code name.
673
+     *
674
+     * @access public
675
+     * @param  boolean $p_with_code  If true, gives the name and the int value.
676
+     * @return string The error name.
677
+     */
678 678
     public function errorName($p_with_code=false)
679 679
     {
680 680
         $v_const_list = get_defined_constants();
681 681
 
682
-          // ----- Extract error constants from all const.
682
+            // ----- Extract error constants from all const.
683 683
         for (reset($v_const_list);
684
-             list($v_key, $v_value) = each($v_const_list);) {
684
+                list($v_key, $v_value) = each($v_const_list);) {
685 685
             if (substr($v_key, 0, strlen('ARCHIVE_ZIP_ERR_'))
686 686
                 =='ARCHIVE_ZIP_ERR_') {
687 687
                 $v_error_list[$v_key] = $v_value;
@@ -706,15 +706,15 @@  discard block
 block discarded – undo
706 706
 
707 707
     // {{{ errorInfo()
708 708
     /**
709
-    * This method returns the description associated with the latest error.
710
-    *
711
-    * @access public
712
-    * @param  boolean $p_full If set to true gives the description with the
713
-    *                         error code, the name and the description.
714
-    *                         If set to false gives only the description
715
-    *                         and the error code.
716
-    * @return string The error description.
717
-    */
709
+     * This method returns the description associated with the latest error.
710
+     *
711
+     * @access public
712
+     * @param  boolean $p_full If set to true gives the description with the
713
+     *                         error code, the name and the description.
714
+     *                         If set to false gives only the description
715
+     *                         and the error code.
716
+     * @return string The error description.
717
+     */
718 718
     public function errorInfo($p_full=false)
719 719
     {
720 720
         if ($p_full) {
@@ -732,30 +732,30 @@  discard block
 block discarded – undo
732 732
 // *****       THESES FUNCTIONS MUST NOT BE USED DIRECTLY       *****
733 733
 // -----------------------------------------------------------------------------
734 734
 
735
-  // ---------------------------------------------------------------------------
736
-  // Function : _checkFormat()
737
-  // Description :
738
-  //   This method check that the archive exists and is a valid zip archive.
739
-  //   Several level of check exists. (futur)
740
-  // Parameters :
741
-  //   $p_level : Level of check. Default 0.
742
-  //              0 : Check the first bytes (magic codes) (default value))
743
-  //              1 : 0 + Check the central directory (futur)
744
-  //              2 : 1 + Check each file header (futur)
745
-  // Return Values :
746
-  //   true on success,
747
-  //   false on error, the error code is set.
748
-  // ---------------------------------------------------------------------------
749
-  /**
750
-  * Archive_Zip::_checkFormat()
751
-  *
752
-  * { Description }
753
-  *
754
-  * @param integer $p_level
755
-  */
756
-  public function _checkFormat($p_level=0)
757
-  {
758
-      $v_result = true;
735
+    // ---------------------------------------------------------------------------
736
+    // Function : _checkFormat()
737
+    // Description :
738
+    //   This method check that the archive exists and is a valid zip archive.
739
+    //   Several level of check exists. (futur)
740
+    // Parameters :
741
+    //   $p_level : Level of check. Default 0.
742
+    //              0 : Check the first bytes (magic codes) (default value))
743
+    //              1 : 0 + Check the central directory (futur)
744
+    //              2 : 1 + Check each file header (futur)
745
+    // Return Values :
746
+    //   true on success,
747
+    //   false on error, the error code is set.
748
+    // ---------------------------------------------------------------------------
749
+    /**
750
+     * Archive_Zip::_checkFormat()
751
+     *
752
+     * { Description }
753
+     *
754
+     * @param integer $p_level
755
+     */
756
+    public function _checkFormat($p_level=0)
757
+    {
758
+        $v_result = true;
759 759
 
760 760
     // ----- Reset the error handler
761 761
     $this->_errorReset();
@@ -763,16 +763,16 @@  discard block
 block discarded – undo
763 763
     // ----- Look if the file exits
764 764
     if (!is_file($this->_zipname)) {
765 765
         // ----- Error log
766
-      $this->_errorLog(ARCHIVE_ZIP_ERR_MISSING_FILE,
767
-                       "Missing archive file '".$this->_zipname."'");
766
+        $this->_errorLog(ARCHIVE_ZIP_ERR_MISSING_FILE,
767
+                        "Missing archive file '".$this->_zipname."'");
768 768
         return(false);
769 769
     }
770 770
 
771 771
     // ----- Check that the file is readeable
772 772
     if (!is_readable($this->_zipname)) {
773 773
         // ----- Error log
774
-      $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL,
775
-                       "Unable to read archive '".$this->_zipname."'");
774
+        $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL,
775
+                        "Unable to read archive '".$this->_zipname."'");
776 776
         return(false);
777 777
     }
778 778
 
@@ -787,34 +787,34 @@  discard block
 block discarded – undo
787 787
 
788 788
     // ----- Return
789 789
     return $v_result;
790
-  }
791
-  // ---------------------------------------------------------------------------
792
-
793
-  // ---------------------------------------------------------------------------
794
-  // Function : _create()
795
-  // Description :
796
-  // Parameters :
797
-  // Return Values :
798
-  // ---------------------------------------------------------------------------
799
-  /**
800
-  * Archive_Zip::_create()
801
-  *
802
-  * { Description }
803
-  *
804
-  */
805
-  public function _create($p_list, &$p_result_list, &$p_params)
806
-  {
807
-      $v_result=1;
808
-      $v_list_detail = array();
809
-
810
-      $p_add_dir = $p_params['add_path'];
811
-      $p_remove_dir = $p_params['remove_path'];
812
-      $p_remove_all_dir = $p_params['remove_all_path'];
790
+    }
791
+    // ---------------------------------------------------------------------------
792
+
793
+    // ---------------------------------------------------------------------------
794
+    // Function : _create()
795
+    // Description :
796
+    // Parameters :
797
+    // Return Values :
798
+    // ---------------------------------------------------------------------------
799
+    /**
800
+     * Archive_Zip::_create()
801
+     *
802
+     * { Description }
803
+     *
804
+     */
805
+    public function _create($p_list, &$p_result_list, &$p_params)
806
+    {
807
+        $v_result=1;
808
+        $v_list_detail = array();
809
+
810
+        $p_add_dir = $p_params['add_path'];
811
+        $p_remove_dir = $p_params['remove_path'];
812
+        $p_remove_all_dir = $p_params['remove_all_path'];
813 813
 
814 814
     // ----- Open the file in write mode
815 815
     if (($v_result = $this->_openFd('wb')) != 1) {
816 816
         // ----- Return
817
-      return $v_result;
817
+        return $v_result;
818 818
     }
819 819
 
820 820
     // ----- Add the list of files
@@ -825,29 +825,29 @@  discard block
 block discarded – undo
825 825
 
826 826
     // ----- Return
827 827
     return $v_result;
828
-  }
829
-  // ---------------------------------------------------------------------------
830
-
831
-  // ---------------------------------------------------------------------------
832
-  // Function : _add()
833
-  // Description :
834
-  // Parameters :
835
-  // Return Values :
836
-  // ---------------------------------------------------------------------------
837
-  /**
838
-  * Archive_Zip::_add()
839
-  *
840
-  * { Description }
841
-  *
842
-  */
843
-  public function _add($p_list, &$p_result_list, &$p_params)
844
-  {
845
-      $v_result=1;
846
-      $v_list_detail = array();
847
-
848
-      $p_add_dir = $p_params['add_path'];
849
-      $p_remove_dir = $p_params['remove_path'];
850
-      $p_remove_all_dir = $p_params['remove_all_path'];
828
+    }
829
+    // ---------------------------------------------------------------------------
830
+
831
+    // ---------------------------------------------------------------------------
832
+    // Function : _add()
833
+    // Description :
834
+    // Parameters :
835
+    // Return Values :
836
+    // ---------------------------------------------------------------------------
837
+    /**
838
+     * Archive_Zip::_add()
839
+     *
840
+     * { Description }
841
+     *
842
+     */
843
+    public function _add($p_list, &$p_result_list, &$p_params)
844
+    {
845
+        $v_result=1;
846
+        $v_list_detail = array();
847
+
848
+        $p_add_dir = $p_params['add_path'];
849
+        $p_remove_dir = $p_params['remove_path'];
850
+        $p_remove_all_dir = $p_params['remove_all_path'];
851 851
 
852 852
     // ----- Look if the archive exists or is empty and need to be created
853 853
     if ((!is_file($this->_zipname)) || (filesize($this->_zipname) == 0)) {
@@ -862,10 +862,10 @@  discard block
 block discarded – undo
862 862
 
863 863
     // ----- Read the central directory informations
864 864
     $v_central_dir = array();
865
-      if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
866
-          $this->_closeFd();
867
-          return $v_result;
868
-      }
865
+        if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
866
+            $this->_closeFd();
867
+            return $v_result;
868
+        }
869 869
 
870 870
     // ----- Go to beginning of File
871 871
     @rewind($this->_zip_fd);
@@ -878,8 +878,8 @@  discard block
 block discarded – undo
878 878
         $this->_closeFd();
879 879
 
880 880
         $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL,
881
-                       'Unable to open temporary file \''
882
-                       .$v_zip_temp_name.'\' in binary write mode');
881
+                        'Unable to open temporary file \''
882
+                        .$v_zip_temp_name.'\' in binary write mode');
883 883
         return Archive_Zip::errorCode();
884 884
     }
885 885
 
@@ -887,64 +887,64 @@  discard block
 block discarded – undo
887 887
     // TBC : Here I should better append the file and go back to erase the
888 888
     // central dir
889 889
     $v_size = $v_central_dir['offset'];
890
-      while ($v_size != 0) {
891
-          $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
890
+        while ($v_size != 0) {
891
+            $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
892 892
                       ? $v_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
893
-          $v_buffer = fread($this->_zip_fd, $v_read_size);
894
-          @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
895
-          $v_size -= $v_read_size;
896
-      }
893
+            $v_buffer = fread($this->_zip_fd, $v_read_size);
894
+            @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
895
+            $v_size -= $v_read_size;
896
+        }
897 897
 
898 898
     // ----- Swap the file descriptor
899 899
     // Here is a trick : I swap the temporary fd with the zip fd, in order to
900 900
     // use the following methods on the temporary fil and not the real archive
901 901
     $v_swap = $this->_zip_fd;
902
-      $this->_zip_fd = $v_zip_temp_fd;
903
-      $v_zip_temp_fd = $v_swap;
902
+        $this->_zip_fd = $v_zip_temp_fd;
903
+        $v_zip_temp_fd = $v_swap;
904 904
 
905 905
     // ----- Add the files
906 906
     $v_header_list = array();
907
-      if (($v_result = $this->_addFileList($p_list, $v_header_list,
908
-                                         $p_add_dir, $p_remove_dir,
909
-                                         $p_remove_all_dir, $p_params)) != 1) {
910
-          fclose($v_zip_temp_fd);
911
-          $this->_closeFd();
912
-          @unlink($v_zip_temp_name);
907
+        if (($v_result = $this->_addFileList($p_list, $v_header_list,
908
+                                            $p_add_dir, $p_remove_dir,
909
+                                            $p_remove_all_dir, $p_params)) != 1) {
910
+            fclose($v_zip_temp_fd);
911
+            $this->_closeFd();
912
+            @unlink($v_zip_temp_name);
913 913
 
914
-      // ----- Return
915
-      return $v_result;
916
-      }
914
+        // ----- Return
915
+        return $v_result;
916
+        }
917 917
 
918 918
     // ----- Store the offset of the central dir
919 919
     $v_offset = @ftell($this->_zip_fd);
920 920
 
921 921
     // ----- Copy the block of file headers from the old archive
922 922
     $v_size = $v_central_dir['size'];
923
-      while ($v_size != 0) {
924
-          $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
923
+        while ($v_size != 0) {
924
+            $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
925 925
                       ? $v_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
926
-          $v_buffer = @fread($v_zip_temp_fd, $v_read_size);
927
-          @fwrite($this->_zip_fd, $v_buffer, $v_read_size);
928
-          $v_size -= $v_read_size;
929
-      }
926
+            $v_buffer = @fread($v_zip_temp_fd, $v_read_size);
927
+            @fwrite($this->_zip_fd, $v_buffer, $v_read_size);
928
+            $v_size -= $v_read_size;
929
+        }
930 930
 
931 931
     // ----- Create the Central Dir files header
932 932
     for ($i=0, $v_count=0; $i<sizeof($v_header_list); $i++) {
933 933
         // ----- Create the file header
934
-      if ($v_header_list[$i]['status'] == 'ok') {
935
-          if (($v_result=$this->_writeCentralFileHeader($v_header_list[$i]))!=1) {
936
-              fclose($v_zip_temp_fd);
937
-              $this->_closeFd();
938
-              @unlink($v_zip_temp_name);
934
+        if ($v_header_list[$i]['status'] == 'ok') {
935
+            if (($v_result=$this->_writeCentralFileHeader($v_header_list[$i]))!=1) {
936
+                fclose($v_zip_temp_fd);
937
+                $this->_closeFd();
938
+                @unlink($v_zip_temp_name);
939 939
 
940
-          // ----- Return
941
-          return $v_result;
942
-          }
943
-          $v_count++;
944
-      }
940
+            // ----- Return
941
+            return $v_result;
942
+            }
943
+            $v_count++;
944
+        }
945 945
 
946
-      // ----- Transform the header to a 'usable' info
947
-      $this->_convertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]);
946
+        // ----- Transform the header to a 'usable' info
947
+        $this->_convertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]);
948 948
     }
949 949
 
950 950
     // ----- Zip file comment
@@ -959,16 +959,16 @@  discard block
 block discarded – undo
959 959
                                                 $v_size, $v_offset,
960 960
                                                 $v_comment)) != 1) {
961 961
         // ----- Reset the file list
962
-      unset($v_header_list);
962
+        unset($v_header_list);
963 963
 
964
-      // ----- Return
965
-      return $v_result;
964
+        // ----- Return
965
+        return $v_result;
966 966
     }
967 967
 
968 968
     // ----- Swap back the file descriptor
969 969
     $v_swap = $this->_zip_fd;
970
-      $this->_zip_fd = $v_zip_temp_fd;
971
-      $v_zip_temp_fd = $v_swap;
970
+        $this->_zip_fd = $v_zip_temp_fd;
971
+        $v_zip_temp_fd = $v_swap;
972 972
 
973 973
     // ----- Close
974 974
     $this->_closeFd();
@@ -987,100 +987,100 @@  discard block
 block discarded – undo
987 987
 
988 988
     // ----- Return
989 989
     return $v_result;
990
-  }
991
-  // ---------------------------------------------------------------------------
992
-
993
-  // ---------------------------------------------------------------------------
994
-  // Function : _openFd()
995
-  // Description :
996
-  // Parameters :
997
-  // ---------------------------------------------------------------------------
998
-  /**
999
-  * Archive_Zip::_openFd()
1000
-  *
1001
-  * { Description }
1002
-  *
1003
-  */
1004
-  public function _openFd($p_mode)
1005
-  {
1006
-      $v_result=1;
990
+    }
991
+    // ---------------------------------------------------------------------------
992
+
993
+    // ---------------------------------------------------------------------------
994
+    // Function : _openFd()
995
+    // Description :
996
+    // Parameters :
997
+    // ---------------------------------------------------------------------------
998
+    /**
999
+     * Archive_Zip::_openFd()
1000
+     *
1001
+     * { Description }
1002
+     *
1003
+     */
1004
+    public function _openFd($p_mode)
1005
+    {
1006
+        $v_result=1;
1007 1007
 
1008 1008
     // ----- Look if already open
1009 1009
     if ($this->_zip_fd != 0) {
1010 1010
         $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL,
1011
-                       'Zip file \''.$this->_zipname.'\' already open');
1011
+                        'Zip file \''.$this->_zipname.'\' already open');
1012 1012
         return Archive_Zip::errorCode();
1013 1013
     }
1014 1014
 
1015 1015
     // ----- Open the zip file
1016 1016
     if (($this->_zip_fd = @fopen($this->_zipname, $p_mode)) == 0) {
1017 1017
         $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL,
1018
-                       'Unable to open archive \''.$this->_zipname
1019
-                       .'\' in '.$p_mode.' mode');
1018
+                        'Unable to open archive \''.$this->_zipname
1019
+                        .'\' in '.$p_mode.' mode');
1020 1020
         return Archive_Zip::errorCode();
1021 1021
     }
1022 1022
 
1023 1023
     // ----- Return
1024 1024
     return $v_result;
1025
-  }
1026
-  // ---------------------------------------------------------------------------
1027
-
1028
-  // ---------------------------------------------------------------------------
1029
-  // Function : _closeFd()
1030
-  // Description :
1031
-  // Parameters :
1032
-  // ---------------------------------------------------------------------------
1033
-  /**
1034
-  * Archive_Zip::_closeFd()
1035
-  *
1036
-  * { Description }
1037
-  *
1038
-  */
1039
-  public function _closeFd()
1040
-  {
1041
-      $v_result=1;
1042
-
1043
-      if ($this->_zip_fd != 0) {
1044
-          @fclose($this->_zip_fd);
1045
-      }
1046
-      $this->_zip_fd = 0;
1025
+    }
1026
+    // ---------------------------------------------------------------------------
1027
+
1028
+    // ---------------------------------------------------------------------------
1029
+    // Function : _closeFd()
1030
+    // Description :
1031
+    // Parameters :
1032
+    // ---------------------------------------------------------------------------
1033
+    /**
1034
+     * Archive_Zip::_closeFd()
1035
+     *
1036
+     * { Description }
1037
+     *
1038
+     */
1039
+    public function _closeFd()
1040
+    {
1041
+        $v_result=1;
1042
+
1043
+        if ($this->_zip_fd != 0) {
1044
+            @fclose($this->_zip_fd);
1045
+        }
1046
+        $this->_zip_fd = 0;
1047 1047
 
1048 1048
     // ----- Return
1049 1049
     return $v_result;
1050
-  }
1051
-  // ---------------------------------------------------------------------------
1052
-
1053
-  // ---------------------------------------------------------------------------
1054
-  // Function : _addList()
1055
-  // Description :
1056
-  //   $p_add_dir and $p_remove_dir will give the ability to memorize a path which is
1057
-  //   different from the real path of the file. This is usefull if you want to have PclTar
1058
-  //   running in any directory, and memorize relative path from an other directory.
1059
-  // Parameters :
1060
-  //   $p_list : An array containing the file or directory names to add in the tar
1061
-  //   $p_result_list : list of added files with their properties (specially the status field)
1062
-  //   $p_add_dir : Path to add in the filename path archived
1063
-  //   $p_remove_dir : Path to remove in the filename path archived
1064
-  // Return Values :
1065
-  // ---------------------------------------------------------------------------
1066
-  /**
1067
-  * Archive_Zip::_addList()
1068
-  *
1069
-  * { Description }
1070
-  *
1071
-  */
1072
-  public function _addList($p_list, &$p_result_list,
1050
+    }
1051
+    // ---------------------------------------------------------------------------
1052
+
1053
+    // ---------------------------------------------------------------------------
1054
+    // Function : _addList()
1055
+    // Description :
1056
+    //   $p_add_dir and $p_remove_dir will give the ability to memorize a path which is
1057
+    //   different from the real path of the file. This is usefull if you want to have PclTar
1058
+    //   running in any directory, and memorize relative path from an other directory.
1059
+    // Parameters :
1060
+    //   $p_list : An array containing the file or directory names to add in the tar
1061
+    //   $p_result_list : list of added files with their properties (specially the status field)
1062
+    //   $p_add_dir : Path to add in the filename path archived
1063
+    //   $p_remove_dir : Path to remove in the filename path archived
1064
+    // Return Values :
1065
+    // ---------------------------------------------------------------------------
1066
+    /**
1067
+     * Archive_Zip::_addList()
1068
+     *
1069
+     * { Description }
1070
+     *
1071
+     */
1072
+    public function _addList($p_list, &$p_result_list,
1073 1073
                     $p_add_dir, $p_remove_dir, $p_remove_all_dir, &$p_params)
1074
-  {
1075
-      $v_result=1;
1074
+    {
1075
+        $v_result=1;
1076 1076
 
1077 1077
     // ----- Add the files
1078 1078
     $v_header_list = array();
1079
-      if (($v_result = $this->_addFileList($p_list, $v_header_list,
1080
-                                         $p_add_dir, $p_remove_dir,
1081
-                                         $p_remove_all_dir, $p_params)) != 1) {
1082
-          return $v_result;
1083
-      }
1079
+        if (($v_result = $this->_addFileList($p_list, $v_header_list,
1080
+                                            $p_add_dir, $p_remove_dir,
1081
+                                            $p_remove_all_dir, $p_params)) != 1) {
1082
+            return $v_result;
1083
+        }
1084 1084
 
1085 1085
     // ----- Store the offset of the central dir
1086 1086
     $v_offset = @ftell($this->_zip_fd);
@@ -1088,15 +1088,15 @@  discard block
 block discarded – undo
1088 1088
     // ----- Create the Central Dir files header
1089 1089
     for ($i=0, $v_count=0; $i<sizeof($v_header_list); $i++) {
1090 1090
         // ----- Create the file header
1091
-      if ($v_header_list[$i]['status'] == 'ok') {
1092
-          if (($v_result = $this->_writeCentralFileHeader($v_header_list[$i])) != 1) {
1093
-              return $v_result;
1094
-          }
1095
-          $v_count++;
1096
-      }
1091
+        if ($v_header_list[$i]['status'] == 'ok') {
1092
+            if (($v_result = $this->_writeCentralFileHeader($v_header_list[$i])) != 1) {
1093
+                return $v_result;
1094
+            }
1095
+            $v_count++;
1096
+        }
1097 1097
 
1098
-      // ----- Transform the header to a 'usable' info
1099
-      $this->_convertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]);
1098
+        // ----- Transform the header to a 'usable' info
1099
+        $this->_convertHeader2FileInfo($v_header_list[$i], $p_result_list[$i]);
1100 1100
     }
1101 1101
 
1102 1102
     // ----- Zip file comment
@@ -1109,42 +1109,42 @@  discard block
 block discarded – undo
1109 1109
     if (($v_result = $this->_writeCentralHeader($v_count, $v_size, $v_offset,
1110 1110
                                                 $v_comment)) != 1) {
1111 1111
         // ----- Reset the file list
1112
-      unset($v_header_list);
1112
+        unset($v_header_list);
1113 1113
 
1114
-      // ----- Return
1115
-      return $v_result;
1114
+        // ----- Return
1115
+        return $v_result;
1116 1116
     }
1117 1117
 
1118 1118
     // ----- Return
1119 1119
     return $v_result;
1120
-  }
1121
-  // ---------------------------------------------------------------------------
1122
-
1123
-  // ---------------------------------------------------------------------------
1124
-  // Function : _addFileList()
1125
-  // Description :
1126
-  //   $p_add_dir and $p_remove_dir will give the ability to memorize a path which is
1127
-  //   different from the real path of the file. This is usefull if you want to
1128
-  //   run the lib in any directory, and memorize relative path from an other directory.
1129
-  // Parameters :
1130
-  //   $p_list : An array containing the file or directory names to add in the tar
1131
-  //   $p_result_list : list of added files with their properties (specially the status field)
1132
-  //   $p_add_dir : Path to add in the filename path archived
1133
-  //   $p_remove_dir : Path to remove in the filename path archived
1134
-  // Return Values :
1135
-  // ---------------------------------------------------------------------------
1136
-  /**
1137
-  * Archive_Zip::_addFileList()
1138
-  *
1139
-  * { Description }
1140
-  *
1141
-  */
1142
-  public function _addFileList($p_list, &$p_result_list,
1120
+    }
1121
+    // ---------------------------------------------------------------------------
1122
+
1123
+    // ---------------------------------------------------------------------------
1124
+    // Function : _addFileList()
1125
+    // Description :
1126
+    //   $p_add_dir and $p_remove_dir will give the ability to memorize a path which is
1127
+    //   different from the real path of the file. This is usefull if you want to
1128
+    //   run the lib in any directory, and memorize relative path from an other directory.
1129
+    // Parameters :
1130
+    //   $p_list : An array containing the file or directory names to add in the tar
1131
+    //   $p_result_list : list of added files with their properties (specially the status field)
1132
+    //   $p_add_dir : Path to add in the filename path archived
1133
+    //   $p_remove_dir : Path to remove in the filename path archived
1134
+    // Return Values :
1135
+    // ---------------------------------------------------------------------------
1136
+    /**
1137
+     * Archive_Zip::_addFileList()
1138
+     *
1139
+     * { Description }
1140
+     *
1141
+     */
1142
+    public function _addFileList($p_list, &$p_result_list,
1143 1143
                         $p_add_dir, $p_remove_dir, $p_remove_all_dir,
1144 1144
                         &$p_params)
1145
-  {
1146
-      $v_result=1;
1147
-      $v_header = array();
1145
+    {
1146
+        $v_result=1;
1147
+        $v_header = array();
1148 1148
 
1149 1149
     // ----- Recuperate the current number of elt in list
1150 1150
     $v_nb = sizeof($p_result_list);
@@ -1152,34 +1152,34 @@  discard block
 block discarded – undo
1152 1152
     // ----- Loop on the files
1153 1153
     for ($j=0; ($j<count($p_list)) && ($v_result==1); $j++) {
1154 1154
         // ----- Recuperate the filename
1155
-      $p_filename = $this->_tool_TranslateWinPath($p_list[$j], false);
1156
-
1157
-      // ----- Skip empty file names
1158
-      if ($p_filename == "") {
1159
-          continue;
1160
-      }
1161
-
1162
-      // ----- Check the filename
1163
-      if (!file_exists($p_filename)) {
1164
-          $this->_errorLog(ARCHIVE_ZIP_ERR_MISSING_FILE,
1165
-                         "File '$p_filename' does not exists");
1166
-          return Archive_Zip::errorCode();
1167
-      }
1168
-
1169
-      // ----- Look if it is a file or a dir with no all pathnre move
1170
-      if ((is_file($p_filename)) || ((is_dir($p_filename)) && !$p_remove_all_dir)) {
1171
-          // ----- Add the file
1155
+        $p_filename = $this->_tool_TranslateWinPath($p_list[$j], false);
1156
+
1157
+        // ----- Skip empty file names
1158
+        if ($p_filename == "") {
1159
+            continue;
1160
+        }
1161
+
1162
+        // ----- Check the filename
1163
+        if (!file_exists($p_filename)) {
1164
+            $this->_errorLog(ARCHIVE_ZIP_ERR_MISSING_FILE,
1165
+                            "File '$p_filename' does not exists");
1166
+            return Archive_Zip::errorCode();
1167
+        }
1168
+
1169
+        // ----- Look if it is a file or a dir with no all pathnre move
1170
+        if ((is_file($p_filename)) || ((is_dir($p_filename)) && !$p_remove_all_dir)) {
1171
+            // ----- Add the file
1172 1172
         if (($v_result = $this->_addFile($p_filename, $v_header, $p_add_dir, $p_remove_dir, $p_remove_all_dir, $p_params)) != 1) {
1173 1173
             // ----- Return status
1174
-          return $v_result;
1174
+            return $v_result;
1175 1175
         }
1176 1176
 
1177 1177
         // ----- Store the file infos
1178 1178
         $p_result_list[$v_nb++] = $v_header;
1179
-      }
1179
+        }
1180 1180
 
1181
-      // ----- Look for directory
1182
-      if (is_dir($p_filename)) {
1181
+        // ----- Look for directory
1182
+        if (is_dir($p_filename)) {
1183 1183
 
1184 1184
         // ----- Look for path
1185 1185
         if ($p_filename != ".") {
@@ -1190,69 +1190,69 @@  discard block
 block discarded – undo
1190 1190
 
1191 1191
         // ----- Read the directory for files and sub-directories
1192 1192
         $p_hdir = opendir($p_filename);
1193
-          $p_hitem = readdir($p_hdir); // '.' directory
1193
+            $p_hitem = readdir($p_hdir); // '.' directory
1194 1194
         $p_hitem = readdir($p_hdir); // '..' directory
1195 1195
         while ($p_hitem = readdir($p_hdir)) {
1196 1196
 
1197
-          // ----- Look for a file
1198
-          if (is_file($v_path.$p_hitem)) {
1197
+            // ----- Look for a file
1198
+            if (is_file($v_path.$p_hitem)) {
1199 1199
 
1200 1200
             // ----- Add the file
1201 1201
             if (($v_result = $this->_addFile($v_path.$p_hitem, $v_header, $p_add_dir, $p_remove_dir, $p_remove_all_dir, $p_params)) != 1) {
1202 1202
                 // ----- Return status
1203
-              return $v_result;
1203
+                return $v_result;
1204 1204
             }
1205 1205
 
1206 1206
             // ----- Store the file infos
1207 1207
             $p_result_list[$v_nb++] = $v_header;
1208
-          }
1208
+            }
1209 1209
 
1210
-          // ----- Recursive call to _addFileList()
1211
-          else {
1210
+            // ----- Recursive call to _addFileList()
1211
+            else {
1212 1212
 
1213 1213
             // ----- Need an array as parameter
1214 1214
             $p_temp_list[0] = $v_path.$p_hitem;
1215
-              $v_result = $this->_addFileList($p_temp_list, $p_result_list, $p_add_dir, $p_remove_dir, $p_remove_all_dir, $p_params);
1215
+                $v_result = $this->_addFileList($p_temp_list, $p_result_list, $p_add_dir, $p_remove_dir, $p_remove_all_dir, $p_params);
1216 1216
 
1217 1217
             // ----- Update the number of elements of the list
1218 1218
             $v_nb = sizeof($p_result_list);
1219
-          }
1219
+            }
1220 1220
         }
1221 1221
 
1222 1222
         // ----- Free memory for the recursive loop
1223 1223
         unset($p_temp_list);
1224
-          unset($p_hdir);
1225
-          unset($p_hitem);
1226
-      }
1227
-    }
1228
-
1229
-      return $v_result;
1230
-  }
1231
-  // ---------------------------------------------------------------------------
1232
-
1233
-  // ---------------------------------------------------------------------------
1234
-  // Function : _addFile()
1235
-  // Description :
1236
-  // Parameters :
1237
-  // Return Values :
1238
-  // ---------------------------------------------------------------------------
1239
-  /**
1240
-  * Archive_Zip::_addFile()
1241
-  *
1242
-  * { Description }
1243
-  *
1244
-  */
1245
-  public function _addFile($p_filename, &$p_header, $p_add_dir, $p_remove_dir, $p_remove_all_dir, &$p_params)
1246
-  {
1247
-      $v_result=1;
1248
-
1249
-      if ($p_filename == "") {
1250
-          // ----- Error log
1251
-      $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAMETER, "Invalid file list parameter (invalid or empty list)");
1224
+            unset($p_hdir);
1225
+            unset($p_hitem);
1226
+        }
1227
+    }
1252 1228
 
1253
-      // ----- Return
1254
-      return Archive_Zip::errorCode();
1255
-      }
1229
+        return $v_result;
1230
+    }
1231
+    // ---------------------------------------------------------------------------
1232
+
1233
+    // ---------------------------------------------------------------------------
1234
+    // Function : _addFile()
1235
+    // Description :
1236
+    // Parameters :
1237
+    // Return Values :
1238
+    // ---------------------------------------------------------------------------
1239
+    /**
1240
+     * Archive_Zip::_addFile()
1241
+     *
1242
+     * { Description }
1243
+     *
1244
+     */
1245
+    public function _addFile($p_filename, &$p_header, $p_add_dir, $p_remove_dir, $p_remove_all_dir, &$p_params)
1246
+    {
1247
+        $v_result=1;
1248
+
1249
+        if ($p_filename == "") {
1250
+            // ----- Error log
1251
+        $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAMETER, "Invalid file list parameter (invalid or empty list)");
1252
+
1253
+        // ----- Return
1254
+        return Archive_Zip::errorCode();
1255
+        }
1256 1256
 
1257 1257
     // ----- Calculate the stored filename
1258 1258
     $v_stored_filename = $p_filename;
@@ -1315,51 +1315,51 @@  discard block
 block discarded – undo
1315 1315
 
1316 1316
     // ----- Set the file properties
1317 1317
     clearstatcache();
1318
-      $p_header['version'] = 20;
1319
-      $p_header['version_extracted'] = 10;
1320
-      $p_header['flag'] = 0;
1321
-      $p_header['compression'] = 0;
1322
-      $p_header['mtime'] = filemtime($p_filename);
1323
-      $p_header['crc'] = 0;
1324
-      $p_header['compressed_size'] = 0;
1325
-      $p_header['size'] = filesize($p_filename);
1326
-      $p_header['filename_len'] = strlen($p_filename);
1327
-      $p_header['extra_len'] = 0;
1328
-      $p_header['comment_len'] = 0;
1329
-      $p_header['disk'] = 0;
1330
-      $p_header['internal'] = 0;
1331
-      $p_header['external'] = (is_file($p_filename)?0xFE49FFE0:0x41FF0010);
1332
-      $p_header['offset'] = 0;
1333
-      $p_header['filename'] = $p_filename;
1334
-      $p_header['stored_filename'] = $v_stored_filename;
1335
-      $p_header['extra'] = '';
1336
-      $p_header['comment'] = '';
1337
-      $p_header['status'] = 'ok';
1338
-      $p_header['index'] = -1;
1318
+        $p_header['version'] = 20;
1319
+        $p_header['version_extracted'] = 10;
1320
+        $p_header['flag'] = 0;
1321
+        $p_header['compression'] = 0;
1322
+        $p_header['mtime'] = filemtime($p_filename);
1323
+        $p_header['crc'] = 0;
1324
+        $p_header['compressed_size'] = 0;
1325
+        $p_header['size'] = filesize($p_filename);
1326
+        $p_header['filename_len'] = strlen($p_filename);
1327
+        $p_header['extra_len'] = 0;
1328
+        $p_header['comment_len'] = 0;
1329
+        $p_header['disk'] = 0;
1330
+        $p_header['internal'] = 0;
1331
+        $p_header['external'] = (is_file($p_filename)?0xFE49FFE0:0x41FF0010);
1332
+        $p_header['offset'] = 0;
1333
+        $p_header['filename'] = $p_filename;
1334
+        $p_header['stored_filename'] = $v_stored_filename;
1335
+        $p_header['extra'] = '';
1336
+        $p_header['comment'] = '';
1337
+        $p_header['status'] = 'ok';
1338
+        $p_header['index'] = -1;
1339 1339
 
1340 1340
     // ----- Look for pre-add callback
1341 1341
     if ((isset($p_params[ARCHIVE_ZIP_PARAM_PRE_ADD]))
1342 1342
         && ($p_params[ARCHIVE_ZIP_PARAM_PRE_ADD] != '')) {
1343 1343
 
1344
-      // ----- Generate a local information
1345
-      $v_local_header = array();
1344
+        // ----- Generate a local information
1345
+        $v_local_header = array();
1346 1346
         $this->_convertHeader2FileInfo($p_header, $v_local_header);
1347 1347
 
1348
-      // ----- Call the callback
1349
-      // Here I do not use call_user_func() because I need to send a reference to the
1350
-      // header.
1351
-      eval('$v_result = '.$p_params[ARCHIVE_ZIP_PARAM_PRE_ADD].'(ARCHIVE_ZIP_PARAM_PRE_ADD, $v_local_header);');
1348
+        // ----- Call the callback
1349
+        // Here I do not use call_user_func() because I need to send a reference to the
1350
+        // header.
1351
+        eval('$v_result = '.$p_params[ARCHIVE_ZIP_PARAM_PRE_ADD].'(ARCHIVE_ZIP_PARAM_PRE_ADD, $v_local_header);');
1352 1352
         if ($v_result == 0) {
1353 1353
             // ----- Change the file status
1354 1354
         $p_header['status'] = "skipped";
1355 1355
             $v_result = 1;
1356 1356
         }
1357 1357
 
1358
-      // ----- Update the informations
1359
-      // Only some fields can be modified
1360
-      if ($p_header['stored_filename'] != $v_local_header['stored_filename']) {
1361
-          $p_header['stored_filename'] = $this->_tool_PathReduction($v_local_header['stored_filename']);
1362
-      }
1358
+        // ----- Update the informations
1359
+        // Only some fields can be modified
1360
+        if ($p_header['stored_filename'] != $v_local_header['stored_filename']) {
1361
+            $p_header['stored_filename'] = $this->_tool_PathReduction($v_local_header['stored_filename']);
1362
+        }
1363 1363
     }
1364 1364
 
1365 1365
     // ----- Look for empty stored filename
@@ -1375,34 +1375,34 @@  discard block
 block discarded – undo
1375 1375
     // ----- Look if no error, or file not skipped
1376 1376
     if ($p_header['status'] == 'ok') {
1377 1377
 
1378
-      // ----- Look for a file
1379
-      if (is_file($p_filename)) {
1380
-          // ----- Open the source file
1378
+        // ----- Look for a file
1379
+        if (is_file($p_filename)) {
1380
+            // ----- Open the source file
1381 1381
         if (($v_file = @fopen($p_filename, "rb")) == 0) {
1382 1382
             $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL, "Unable to open file '$p_filename' in binary read mode");
1383 1383
             return Archive_Zip::errorCode();
1384 1384
         }
1385 1385
 
1386
-          if ($p_params['no_compression']) {
1387
-              // ----- Read the file content
1388
-          $v_content_compressed = @fread($v_file, $p_header['size']);
1386
+            if ($p_params['no_compression']) {
1387
+                // ----- Read the file content
1388
+            $v_content_compressed = @fread($v_file, $p_header['size']);
1389 1389
 
1390
-          // ----- Calculate the CRC
1391
-          $p_header['crc'] = crc32($v_content_compressed);
1392
-          } else {
1393
-              // ----- Read the file content
1394
-          $v_content = @fread($v_file, $p_header['size']);
1390
+            // ----- Calculate the CRC
1391
+            $p_header['crc'] = crc32($v_content_compressed);
1392
+            } else {
1393
+                // ----- Read the file content
1394
+            $v_content = @fread($v_file, $p_header['size']);
1395 1395
 
1396
-          // ----- Calculate the CRC
1397
-          $p_header['crc'] = crc32($v_content);
1396
+            // ----- Calculate the CRC
1397
+            $p_header['crc'] = crc32($v_content);
1398 1398
 
1399
-          // ----- Compress the file
1400
-          $v_content_compressed = gzdeflate($v_content);
1401
-          }
1399
+            // ----- Compress the file
1400
+            $v_content_compressed = gzdeflate($v_content);
1401
+            }
1402 1402
 
1403 1403
         // ----- Set header parameters
1404 1404
         $p_header['compressed_size'] = strlen($v_content_compressed);
1405
-          $p_header['compression'] = 8;
1405
+            $p_header['compression'] = 8;
1406 1406
 
1407 1407
         // ----- Call the header generation
1408 1408
         if (($v_result = $this->_writeFileHeader($p_header)) != 1) {
@@ -1412,68 +1412,68 @@  discard block
 block discarded – undo
1412 1412
 
1413 1413
         // ----- Write the compressed content
1414 1414
         $v_binary_data = pack('a'.$p_header['compressed_size'], $v_content_compressed);
1415
-          @fwrite($this->_zip_fd, $v_binary_data, $p_header['compressed_size']);
1415
+            @fwrite($this->_zip_fd, $v_binary_data, $p_header['compressed_size']);
1416 1416
 
1417 1417
         // ----- Close the file
1418 1418
         @fclose($v_file);
1419
-      }
1419
+        }
1420 1420
 
1421
-      // ----- Look for a directory
1422
-      else {
1423
-          // ----- Set the file properties
1421
+        // ----- Look for a directory
1422
+        else {
1423
+            // ----- Set the file properties
1424 1424
         $p_header['filename'] .= '/';
1425
-          $p_header['filename_len']++;
1426
-          $p_header['size'] = 0;
1427
-          $p_header['external'] = 0x41FF0010;   // Value for a folder : to be checked
1425
+            $p_header['filename_len']++;
1426
+            $p_header['size'] = 0;
1427
+            $p_header['external'] = 0x41FF0010;   // Value for a folder : to be checked
1428 1428
 
1429 1429
         // ----- Call the header generation
1430 1430
         if (($v_result = $this->_writeFileHeader($p_header)) != 1) {
1431 1431
             return $v_result;
1432 1432
         }
1433
-      }
1433
+        }
1434 1434
     }
1435 1435
 
1436 1436
     // ----- Look for pre-add callback
1437 1437
     if ((isset($p_params[ARCHIVE_ZIP_PARAM_POST_ADD]))
1438 1438
         && ($p_params[ARCHIVE_ZIP_PARAM_POST_ADD] != '')) {
1439 1439
 
1440
-      // ----- Generate a local information
1441
-      $v_local_header = array();
1440
+        // ----- Generate a local information
1441
+        $v_local_header = array();
1442 1442
         $this->_convertHeader2FileInfo($p_header, $v_local_header);
1443 1443
 
1444
-      // ----- Call the callback
1445
-      // Here I do not use call_user_func() because I need to send a reference to the
1446
-      // header.
1447
-      eval('$v_result = '.$p_params[ARCHIVE_ZIP_PARAM_POST_ADD].'(ARCHIVE_ZIP_PARAM_POST_ADD, $v_local_header);');
1444
+        // ----- Call the callback
1445
+        // Here I do not use call_user_func() because I need to send a reference to the
1446
+        // header.
1447
+        eval('$v_result = '.$p_params[ARCHIVE_ZIP_PARAM_POST_ADD].'(ARCHIVE_ZIP_PARAM_POST_ADD, $v_local_header);');
1448 1448
         if ($v_result == 0) {
1449 1449
             // ----- Ignored
1450 1450
         $v_result = 1;
1451 1451
         }
1452 1452
 
1453
-      // ----- Update the informations
1454
-      // Nothing can be modified
1453
+        // ----- Update the informations
1454
+        // Nothing can be modified
1455 1455
     }
1456 1456
 
1457 1457
     // ----- Return
1458 1458
     return $v_result;
1459
-  }
1460
-  // ---------------------------------------------------------------------------
1461
-
1462
-  // ---------------------------------------------------------------------------
1463
-  // Function : _writeFileHeader()
1464
-  // Description :
1465
-  // Parameters :
1466
-  // Return Values :
1467
-  // ---------------------------------------------------------------------------
1468
-  /**
1469
-  * Archive_Zip::_writeFileHeader()
1470
-  *
1471
-  * { Description }
1472
-  *
1473
-  */
1474
-  public function _writeFileHeader(&$p_header)
1475
-  {
1476
-      $v_result=1;
1459
+    }
1460
+    // ---------------------------------------------------------------------------
1461
+
1462
+    // ---------------------------------------------------------------------------
1463
+    // Function : _writeFileHeader()
1464
+    // Description :
1465
+    // Parameters :
1466
+    // Return Values :
1467
+    // ---------------------------------------------------------------------------
1468
+    /**
1469
+     * Archive_Zip::_writeFileHeader()
1470
+     *
1471
+     * { Description }
1472
+     *
1473
+     */
1474
+    public function _writeFileHeader(&$p_header)
1475
+    {
1476
+        $v_result=1;
1477 1477
 
1478 1478
     // TBC
1479 1479
     //for(reset($p_header); $key = key($p_header); next($p_header)) {
@@ -1484,14 +1484,14 @@  discard block
 block discarded – undo
1484 1484
 
1485 1485
     // ----- Transform UNIX mtime to DOS format mdate/mtime
1486 1486
     $v_date = getdate($p_header['mtime']);
1487
-      $v_mtime = ($v_date['hours']<<11) + ($v_date['minutes']<<5) + $v_date['seconds']/2;
1488
-      $v_mdate = (($v_date['year']-1980)<<9) + ($v_date['mon']<<5) + $v_date['mday'];
1487
+        $v_mtime = ($v_date['hours']<<11) + ($v_date['minutes']<<5) + $v_date['seconds']/2;
1488
+        $v_mdate = (($v_date['year']-1980)<<9) + ($v_date['mon']<<5) + $v_date['mday'];
1489 1489
 
1490 1490
     // ----- Packed data
1491 1491
     $v_binary_data = pack("VvvvvvVVVvv", 0x04034b50, $p_header['version'], $p_header['flag'],
1492
-                          $p_header['compression'], $v_mtime, $v_mdate,
1493
-                          $p_header['crc'], $p_header['compressed_size'], $p_header['size'],
1494
-                          strlen($p_header['stored_filename']), $p_header['extra_len']);
1492
+                            $p_header['compression'], $v_mtime, $v_mdate,
1493
+                            $p_header['crc'], $p_header['compressed_size'], $p_header['size'],
1494
+                            strlen($p_header['stored_filename']), $p_header['extra_len']);
1495 1495
 
1496 1496
     // ----- Write the first 148 bytes of the header in the archive
1497 1497
     fputs($this->_zip_fd, $v_binary_data, 30);
@@ -1500,30 +1500,30 @@  discard block
 block discarded – undo
1500 1500
     if (strlen($p_header['stored_filename']) != 0) {
1501 1501
         fputs($this->_zip_fd, $p_header['stored_filename'], strlen($p_header['stored_filename']));
1502 1502
     }
1503
-      if ($p_header['extra_len'] != 0) {
1504
-          fputs($this->_zip_fd, $p_header['extra'], $p_header['extra_len']);
1505
-      }
1503
+        if ($p_header['extra_len'] != 0) {
1504
+            fputs($this->_zip_fd, $p_header['extra'], $p_header['extra_len']);
1505
+        }
1506 1506
 
1507 1507
     // ----- Return
1508 1508
     return $v_result;
1509
-  }
1510
-  // ---------------------------------------------------------------------------
1511
-
1512
-  // ---------------------------------------------------------------------------
1513
-  // Function : _writeCentralFileHeader()
1514
-  // Description :
1515
-  // Parameters :
1516
-  // Return Values :
1517
-  // ---------------------------------------------------------------------------
1518
-  /**
1519
-  * Archive_Zip::_writeCentralFileHeader()
1520
-  *
1521
-  * { Description }
1522
-  *
1523
-  */
1524
-  public function _writeCentralFileHeader(&$p_header)
1525
-  {
1526
-      $v_result=1;
1509
+    }
1510
+    // ---------------------------------------------------------------------------
1511
+
1512
+    // ---------------------------------------------------------------------------
1513
+    // Function : _writeCentralFileHeader()
1514
+    // Description :
1515
+    // Parameters :
1516
+    // Return Values :
1517
+    // ---------------------------------------------------------------------------
1518
+    /**
1519
+     * Archive_Zip::_writeCentralFileHeader()
1520
+     *
1521
+     * { Description }
1522
+     *
1523
+     */
1524
+    public function _writeCentralFileHeader(&$p_header)
1525
+    {
1526
+        $v_result=1;
1527 1527
 
1528 1528
     // TBC
1529 1529
     //for(reset($p_header); $key = key($p_header); next($p_header)) {
@@ -1531,15 +1531,15 @@  discard block
 block discarded – undo
1531 1531
 
1532 1532
     // ----- Transform UNIX mtime to DOS format mdate/mtime
1533 1533
     $v_date = getdate($p_header['mtime']);
1534
-      $v_mtime = ($v_date['hours']<<11) + ($v_date['minutes']<<5) + $v_date['seconds']/2;
1535
-      $v_mdate = (($v_date['year']-1980)<<9) + ($v_date['mon']<<5) + $v_date['mday'];
1534
+        $v_mtime = ($v_date['hours']<<11) + ($v_date['minutes']<<5) + $v_date['seconds']/2;
1535
+        $v_mdate = (($v_date['year']-1980)<<9) + ($v_date['mon']<<5) + $v_date['mday'];
1536 1536
 
1537 1537
     // ----- Packed data
1538 1538
     $v_binary_data = pack("VvvvvvvVVVvvvvvVV", 0x02014b50, $p_header['version'], $p_header['version_extracted'],
1539
-                          $p_header['flag'], $p_header['compression'], $v_mtime, $v_mdate, $p_header['crc'],
1540
-                          $p_header['compressed_size'], $p_header['size'],
1541
-                          strlen($p_header['stored_filename']), $p_header['extra_len'], $p_header['comment_len'],
1542
-                          $p_header['disk'], $p_header['internal'], $p_header['external'], $p_header['offset']);
1539
+                            $p_header['flag'], $p_header['compression'], $v_mtime, $v_mdate, $p_header['crc'],
1540
+                            $p_header['compressed_size'], $p_header['size'],
1541
+                            strlen($p_header['stored_filename']), $p_header['extra_len'], $p_header['comment_len'],
1542
+                            $p_header['disk'], $p_header['internal'], $p_header['external'], $p_header['offset']);
1543 1543
 
1544 1544
     // ----- Write the 42 bytes of the header in the zip file
1545 1545
     fputs($this->_zip_fd, $v_binary_data, 46);
@@ -1548,33 +1548,33 @@  discard block
 block discarded – undo
1548 1548
     if (strlen($p_header['stored_filename']) != 0) {
1549 1549
         fputs($this->_zip_fd, $p_header['stored_filename'], strlen($p_header['stored_filename']));
1550 1550
     }
1551
-      if ($p_header['extra_len'] != 0) {
1552
-          fputs($this->_zip_fd, $p_header['extra'], $p_header['extra_len']);
1553
-      }
1554
-      if ($p_header['comment_len'] != 0) {
1555
-          fputs($this->_zip_fd, $p_header['comment'], $p_header['comment_len']);
1556
-      }
1551
+        if ($p_header['extra_len'] != 0) {
1552
+            fputs($this->_zip_fd, $p_header['extra'], $p_header['extra_len']);
1553
+        }
1554
+        if ($p_header['comment_len'] != 0) {
1555
+            fputs($this->_zip_fd, $p_header['comment'], $p_header['comment_len']);
1556
+        }
1557 1557
 
1558 1558
     // ----- Return
1559 1559
     return $v_result;
1560
-  }
1561
-  // ---------------------------------------------------------------------------
1562
-
1563
-  // ---------------------------------------------------------------------------
1564
-  // Function : _writeCentralHeader()
1565
-  // Description :
1566
-  // Parameters :
1567
-  // Return Values :
1568
-  // ---------------------------------------------------------------------------
1569
-  /**
1570
-  * Archive_Zip::_writeCentralHeader()
1571
-  *
1572
-  * { Description }
1573
-  *
1574
-  */
1575
-  public function _writeCentralHeader($p_nb_entries, $p_size, $p_offset, $p_comment)
1576
-  {
1577
-      $v_result=1;
1560
+    }
1561
+    // ---------------------------------------------------------------------------
1562
+
1563
+    // ---------------------------------------------------------------------------
1564
+    // Function : _writeCentralHeader()
1565
+    // Description :
1566
+    // Parameters :
1567
+    // Return Values :
1568
+    // ---------------------------------------------------------------------------
1569
+    /**
1570
+     * Archive_Zip::_writeCentralHeader()
1571
+     *
1572
+     * { Description }
1573
+     *
1574
+     */
1575
+    public function _writeCentralHeader($p_nb_entries, $p_size, $p_offset, $p_comment)
1576
+    {
1577
+        $v_result=1;
1578 1578
 
1579 1579
     // ----- Packed data
1580 1580
     $v_binary_data = pack("VvvvvVVv", 0x06054b50, 0, 0, $p_nb_entries, $p_nb_entries, $p_size, $p_offset, strlen($p_comment));
@@ -1589,60 +1589,60 @@  discard block
 block discarded – undo
1589 1589
 
1590 1590
     // ----- Return
1591 1591
     return $v_result;
1592
-  }
1593
-  // ---------------------------------------------------------------------------
1594
-
1595
-  // ---------------------------------------------------------------------------
1596
-  // Function : _list()
1597
-  // Description :
1598
-  // Parameters :
1599
-  // Return Values :
1600
-  // ---------------------------------------------------------------------------
1601
-  /**
1602
-  * Archive_Zip::_list()
1603
-  *
1604
-  * { Description }
1605
-  *
1606
-  */
1607
-  public function _list(&$p_list)
1608
-  {
1609
-      $v_result=1;
1592
+    }
1593
+    // ---------------------------------------------------------------------------
1594
+
1595
+    // ---------------------------------------------------------------------------
1596
+    // Function : _list()
1597
+    // Description :
1598
+    // Parameters :
1599
+    // Return Values :
1600
+    // ---------------------------------------------------------------------------
1601
+    /**
1602
+     * Archive_Zip::_list()
1603
+     *
1604
+     * { Description }
1605
+     *
1606
+     */
1607
+    public function _list(&$p_list)
1608
+    {
1609
+        $v_result=1;
1610 1610
 
1611 1611
     // ----- Open the zip file
1612 1612
     if (($this->_zip_fd = @fopen($this->_zipname, 'rb')) == 0) {
1613 1613
         // ----- Error log
1614
-      $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive \''.$this->_zipname.'\' in binary read mode');
1614
+        $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL, 'Unable to open archive \''.$this->_zipname.'\' in binary read mode');
1615 1615
 
1616
-      // ----- Return
1617
-      return Archive_Zip::errorCode();
1616
+        // ----- Return
1617
+        return Archive_Zip::errorCode();
1618 1618
     }
1619 1619
 
1620 1620
     // ----- Read the central directory informations
1621 1621
     $v_central_dir = array();
1622
-      if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
1623
-          return $v_result;
1624
-      }
1622
+        if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
1623
+            return $v_result;
1624
+        }
1625 1625
 
1626 1626
     // ----- Go to beginning of Central Dir
1627 1627
     @rewind($this->_zip_fd);
1628
-      if (@fseek($this->_zip_fd, $v_central_dir['offset'])) {
1629
-          // ----- Error log
1630
-      $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size');
1628
+        if (@fseek($this->_zip_fd, $v_central_dir['offset'])) {
1629
+            // ----- Error log
1630
+        $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size');
1631 1631
 
1632
-      // ----- Return
1633
-      return Archive_Zip::errorCode();
1634
-      }
1632
+        // ----- Return
1633
+        return Archive_Zip::errorCode();
1634
+        }
1635 1635
 
1636 1636
     // ----- Read each entry
1637 1637
     for ($i=0; $i<$v_central_dir['entries']; $i++) {
1638 1638
         // ----- Read the file header
1639
-      if (($v_result = $this->_readCentralFileHeader($v_header)) != 1) {
1640
-          return $v_result;
1641
-      }
1639
+        if (($v_result = $this->_readCentralFileHeader($v_header)) != 1) {
1640
+            return $v_result;
1641
+        }
1642 1642
         $v_header['index'] = $i;
1643 1643
 
1644
-      // ----- Get the only interesting attributes
1645
-      $this->_convertHeader2FileInfo($v_header, $p_list[$i]);
1644
+        // ----- Get the only interesting attributes
1645
+        $this->_convertHeader2FileInfo($v_header, $p_list[$i]);
1646 1646
         unset($v_header);
1647 1647
     }
1648 1648
 
@@ -1651,82 +1651,82 @@  discard block
 block discarded – undo
1651 1651
 
1652 1652
     // ----- Return
1653 1653
     return $v_result;
1654
-  }
1655
-  // ---------------------------------------------------------------------------
1656
-
1657
-  // ---------------------------------------------------------------------------
1658
-  // Function : _convertHeader2FileInfo()
1659
-  // Description :
1660
-  //   This function takes the file informations from the central directory
1661
-  //   entries and extract the interesting parameters that will be given back.
1662
-  //   The resulting file infos are set in the array $p_info
1663
-  //     $p_info['filename'] : Filename with full path. Given by user (add),
1664
-  //                           extracted in the filesystem (extract).
1665
-  //     $p_info['stored_filename'] : Stored filename in the archive.
1666
-  //     $p_info['size'] = Size of the file.
1667
-  //     $p_info['compressed_size'] = Compressed size of the file.
1668
-  //     $p_info['mtime'] = Last modification date of the file.
1669
-  //     $p_info['comment'] = Comment associated with the file.
1670
-  //     $p_info['folder'] = true/false : indicates if the entry is a folder or not.
1671
-  //     $p_info['status'] = status of the action on the file.
1672
-  // Parameters :
1673
-  // Return Values :
1674
-  // ---------------------------------------------------------------------------
1675
-  /**
1676
-  * Archive_Zip::_convertHeader2FileInfo()
1677
-  *
1678
-  * { Description }
1679
-  *
1680
-  */
1681
-  public function _convertHeader2FileInfo($p_header, &$p_info)
1682
-  {
1683
-      $v_result=1;
1654
+    }
1655
+    // ---------------------------------------------------------------------------
1656
+
1657
+    // ---------------------------------------------------------------------------
1658
+    // Function : _convertHeader2FileInfo()
1659
+    // Description :
1660
+    //   This function takes the file informations from the central directory
1661
+    //   entries and extract the interesting parameters that will be given back.
1662
+    //   The resulting file infos are set in the array $p_info
1663
+    //     $p_info['filename'] : Filename with full path. Given by user (add),
1664
+    //                           extracted in the filesystem (extract).
1665
+    //     $p_info['stored_filename'] : Stored filename in the archive.
1666
+    //     $p_info['size'] = Size of the file.
1667
+    //     $p_info['compressed_size'] = Compressed size of the file.
1668
+    //     $p_info['mtime'] = Last modification date of the file.
1669
+    //     $p_info['comment'] = Comment associated with the file.
1670
+    //     $p_info['folder'] = true/false : indicates if the entry is a folder or not.
1671
+    //     $p_info['status'] = status of the action on the file.
1672
+    // Parameters :
1673
+    // Return Values :
1674
+    // ---------------------------------------------------------------------------
1675
+    /**
1676
+     * Archive_Zip::_convertHeader2FileInfo()
1677
+     *
1678
+     * { Description }
1679
+     *
1680
+     */
1681
+    public function _convertHeader2FileInfo($p_header, &$p_info)
1682
+    {
1683
+        $v_result=1;
1684 1684
 
1685 1685
     // ----- Get the interesting attributes
1686 1686
     $p_info['filename'] = $p_header['filename'];
1687
-      $p_info['stored_filename'] = $p_header['stored_filename'];
1688
-      $p_info['size'] = $p_header['size'];
1689
-      $p_info['compressed_size'] = $p_header['compressed_size'];
1690
-      $p_info['mtime'] = $p_header['mtime'];
1691
-      $p_info['comment'] = $p_header['comment'];
1692
-      $p_info['folder'] = (($p_header['external']&0x00000010)==0x00000010);
1693
-      $p_info['index'] = $p_header['index'];
1694
-      $p_info['status'] = $p_header['status'];
1687
+        $p_info['stored_filename'] = $p_header['stored_filename'];
1688
+        $p_info['size'] = $p_header['size'];
1689
+        $p_info['compressed_size'] = $p_header['compressed_size'];
1690
+        $p_info['mtime'] = $p_header['mtime'];
1691
+        $p_info['comment'] = $p_header['comment'];
1692
+        $p_info['folder'] = (($p_header['external']&0x00000010)==0x00000010);
1693
+        $p_info['index'] = $p_header['index'];
1694
+        $p_info['status'] = $p_header['status'];
1695 1695
 
1696 1696
     // ----- Return
1697 1697
     return $v_result;
1698
-  }
1699
-  // ---------------------------------------------------------------------------
1700
-
1701
-  // ---------------------------------------------------------------------------
1702
-  // Function : _extractByRule()
1703
-  // Description :
1704
-  //   Extract a file or directory depending of rules (by index, by name, ...)
1705
-  // Parameters :
1706
-  //   $p_file_list : An array where will be placed the properties of each
1707
-  //                  extracted file
1708
-  //   $p_path : Path to add while writing the extracted files
1709
-  //   $p_remove_path : Path to remove (from the file memorized path) while writing the
1710
-  //                    extracted files. If the path does not match the file path,
1711
-  //                    the file is extracted with its memorized path.
1712
-  //                    $p_remove_path does not apply to 'list' mode.
1713
-  //                    $p_path and $p_remove_path are commulative.
1714
-  // Return Values :
1715
-  //   1 on success,0 or less on error (see error code list)
1716
-  // ---------------------------------------------------------------------------
1717
-  /**
1718
-  * Archive_Zip::_extractByRule()
1719
-  *
1720
-  * { Description }
1721
-  *
1722
-  */
1723
-  public function _extractByRule(&$p_file_list, &$p_params)
1724
-  {
1725
-      $v_result=1;
1726
-
1727
-      $p_path = $p_params['add_path'];
1728
-      $p_remove_path = $p_params['remove_path'];
1729
-      $p_remove_all_path = $p_params['remove_all_path'];
1698
+    }
1699
+    // ---------------------------------------------------------------------------
1700
+
1701
+    // ---------------------------------------------------------------------------
1702
+    // Function : _extractByRule()
1703
+    // Description :
1704
+    //   Extract a file or directory depending of rules (by index, by name, ...)
1705
+    // Parameters :
1706
+    //   $p_file_list : An array where will be placed the properties of each
1707
+    //                  extracted file
1708
+    //   $p_path : Path to add while writing the extracted files
1709
+    //   $p_remove_path : Path to remove (from the file memorized path) while writing the
1710
+    //                    extracted files. If the path does not match the file path,
1711
+    //                    the file is extracted with its memorized path.
1712
+    //                    $p_remove_path does not apply to 'list' mode.
1713
+    //                    $p_path and $p_remove_path are commulative.
1714
+    // Return Values :
1715
+    //   1 on success,0 or less on error (see error code list)
1716
+    // ---------------------------------------------------------------------------
1717
+    /**
1718
+     * Archive_Zip::_extractByRule()
1719
+     *
1720
+     * { Description }
1721
+     *
1722
+     */
1723
+    public function _extractByRule(&$p_file_list, &$p_params)
1724
+    {
1725
+        $v_result=1;
1726
+
1727
+        $p_path = $p_params['add_path'];
1728
+        $p_remove_path = $p_params['remove_path'];
1729
+        $p_remove_all_path = $p_params['remove_all_path'];
1730 1730
 
1731 1731
     // ----- Check the path
1732 1732
     if (($p_path == "")
@@ -1738,16 +1738,16 @@  discard block
 block discarded – undo
1738 1738
     // ----- Reduce the path last (and duplicated) '/'
1739 1739
     if (($p_path != "./") && ($p_path != "/")) {
1740 1740
         // ----- Look for the path end '/'
1741
-      while (substr($p_path, -1) == "/") {
1742
-          $p_path = substr($p_path, 0, strlen($p_path)-1);
1743
-      }
1741
+        while (substr($p_path, -1) == "/") {
1742
+            $p_path = substr($p_path, 0, strlen($p_path)-1);
1743
+        }
1744 1744
     }
1745 1745
 
1746 1746
     // ----- Look for path to remove format (should end by /)
1747 1747
     if (($p_remove_path != "") && (substr($p_remove_path, -1) != '/')) {
1748 1748
         $p_remove_path .= '/';
1749 1749
     }
1750
-      $p_remove_path_size = strlen($p_remove_path);
1750
+        $p_remove_path_size = strlen($p_remove_path);
1751 1751
 
1752 1752
     // ----- Open the zip file
1753 1753
     if (($v_result = $this->_openFd('rb')) != 1) {
@@ -1756,202 +1756,202 @@  discard block
 block discarded – undo
1756 1756
 
1757 1757
     // ----- Read the central directory informations
1758 1758
     $v_central_dir = array();
1759
-      if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
1760
-          // ----- Close the zip file
1761
-      $this->_closeFd();
1759
+        if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
1760
+            // ----- Close the zip file
1761
+        $this->_closeFd();
1762 1762
 
1763
-          return $v_result;
1764
-      }
1763
+            return $v_result;
1764
+        }
1765 1765
 
1766 1766
     // ----- Start at beginning of Central Dir
1767 1767
     $v_pos_entry = $v_central_dir['offset'];
1768 1768
 
1769 1769
     // ----- Read each entry
1770 1770
     $j_start = 0;
1771
-      for ($i=0, $v_nb_extracted=0; $i<$v_central_dir['entries']; $i++) {
1772
-          // ----- Read next Central dir entry
1773
-      @rewind($this->_zip_fd);
1774
-          if (@fseek($this->_zip_fd, $v_pos_entry)) {
1775
-              $this->_closeFd();
1771
+        for ($i=0, $v_nb_extracted=0; $i<$v_central_dir['entries']; $i++) {
1772
+            // ----- Read next Central dir entry
1773
+        @rewind($this->_zip_fd);
1774
+            if (@fseek($this->_zip_fd, $v_pos_entry)) {
1775
+                $this->_closeFd();
1776 1776
 
1777
-              $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP,
1778
-                         'Invalid archive size');
1777
+                $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP,
1778
+                            'Invalid archive size');
1779 1779
 
1780
-              return Archive_Zip::errorCode();
1781
-          }
1780
+                return Archive_Zip::errorCode();
1781
+            }
1782 1782
 
1783
-      // ----- Read the file header
1784
-      $v_header = array();
1785
-          if (($v_result = $this->_readCentralFileHeader($v_header)) != 1) {
1786
-              $this->_closeFd();
1783
+        // ----- Read the file header
1784
+        $v_header = array();
1785
+            if (($v_result = $this->_readCentralFileHeader($v_header)) != 1) {
1786
+                $this->_closeFd();
1787 1787
 
1788
-              return $v_result;
1789
-          }
1788
+                return $v_result;
1789
+            }
1790 1790
 
1791
-      // ----- Store the index
1792
-      $v_header['index'] = $i;
1791
+        // ----- Store the index
1792
+        $v_header['index'] = $i;
1793 1793
 
1794
-      // ----- Store the file position
1795
-      $v_pos_entry = ftell($this->_zip_fd);
1794
+        // ----- Store the file position
1795
+        $v_pos_entry = ftell($this->_zip_fd);
1796 1796
 
1797
-      // ----- Look for the specific extract rules
1798
-      $v_extract = false;
1797
+        // ----- Look for the specific extract rules
1798
+        $v_extract = false;
1799 1799
 
1800
-      // ----- Look for extract by name rule
1801
-      if ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_NAME]))
1800
+        // ----- Look for extract by name rule
1801
+        if ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_NAME]))
1802 1802
           && ($p_params[ARCHIVE_ZIP_PARAM_BY_NAME] != 0)) {
1803 1803
 
1804
-          // ----- Look if the filename is in the list
1805
-          for ($j=0;
1806
-                  ($j<sizeof($p_params[ARCHIVE_ZIP_PARAM_BY_NAME]))
1804
+            // ----- Look if the filename is in the list
1805
+            for ($j=0;
1806
+                    ($j<sizeof($p_params[ARCHIVE_ZIP_PARAM_BY_NAME]))
1807 1807
                && (!$v_extract);
1808
-               $j++) {
1808
+                $j++) {
1809 1809
 
1810
-              // ----- Look for a directory
1811
-              if (substr($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j], -1) == "/") {
1810
+                // ----- Look for a directory
1811
+                if (substr($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j], -1) == "/") {
1812 1812
 
1813
-                  // ----- Look if the directory is in the filename path
1814
-                  if ((strlen($v_header['stored_filename']) > strlen($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j]))
1813
+                    // ----- Look if the directory is in the filename path
1814
+                    if ((strlen($v_header['stored_filename']) > strlen($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j]))
1815 1815
                       && (substr($v_header['stored_filename'], 0, strlen($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j])) == $p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j])) {
1816
-                      $v_extract = true;
1817
-                  }
1818
-              }
1819
-              // ----- Look for a filename
1820
-              elseif ($v_header['stored_filename'] == $p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j]) {
1821
-                  $v_extract = true;
1822
-              }
1823
-          }
1824
-      }
1825
-
1826
-      // ----- Look for extract by ereg rule
1827
-      elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_EREG]))
1816
+                        $v_extract = true;
1817
+                    }
1818
+                }
1819
+                // ----- Look for a filename
1820
+                elseif ($v_header['stored_filename'] == $p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j]) {
1821
+                    $v_extract = true;
1822
+                }
1823
+            }
1824
+        }
1825
+
1826
+        // ----- Look for extract by ereg rule
1827
+        elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_EREG]))
1828 1828
                && ($p_params[ARCHIVE_ZIP_PARAM_BY_EREG] != "")) {
1829
-          if (ereg($p_params[ARCHIVE_ZIP_PARAM_BY_EREG], $v_header['stored_filename'])) {
1830
-              $v_extract = true;
1831
-          }
1832
-      }
1829
+            if (ereg($p_params[ARCHIVE_ZIP_PARAM_BY_EREG], $v_header['stored_filename'])) {
1830
+                $v_extract = true;
1831
+            }
1832
+        }
1833 1833
 
1834
-      // ----- Look for extract by preg rule
1835
-      elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_PREG]))
1834
+        // ----- Look for extract by preg rule
1835
+        elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_PREG]))
1836 1836
                && ($p_params[ARCHIVE_ZIP_PARAM_BY_PREG] != "")) {
1837
-          if (preg_match($p_params[ARCHIVE_ZIP_PARAM_BY_PREG], $v_header['stored_filename'])) {
1838
-              $v_extract = true;
1839
-          }
1840
-      }
1837
+            if (preg_match($p_params[ARCHIVE_ZIP_PARAM_BY_PREG], $v_header['stored_filename'])) {
1838
+                $v_extract = true;
1839
+            }
1840
+        }
1841 1841
 
1842
-      // ----- Look for extract by index rule
1843
-      elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX]))
1842
+        // ----- Look for extract by index rule
1843
+        elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX]))
1844 1844
                && ($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX] != 0)) {
1845 1845
 
1846
-          // ----- Look if the index is in the list
1847
-          for ($j=$j_start; ($j<sizeof($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX])) && (!$v_extract); $j++) {
1848
-              if (($i>=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['start']) && ($i<=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['end'])) {
1849
-                  $v_extract = true;
1850
-              }
1851
-              if ($i>=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['end']) {
1852
-                  $j_start = $j+1;
1853
-              }
1854
-
1855
-              if ($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['start']>$i) {
1856
-                  break;
1857
-              }
1858
-          }
1859
-      }
1846
+            // ----- Look if the index is in the list
1847
+            for ($j=$j_start; ($j<sizeof($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX])) && (!$v_extract); $j++) {
1848
+                if (($i>=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['start']) && ($i<=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['end'])) {
1849
+                    $v_extract = true;
1850
+                }
1851
+                if ($i>=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['end']) {
1852
+                    $j_start = $j+1;
1853
+                }
1854
+
1855
+                if ($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['start']>$i) {
1856
+                    break;
1857
+                }
1858
+            }
1859
+        }
1860 1860
 
1861
-      // ----- Look for no rule, which means extract all the archive
1862
-      else {
1863
-          $v_extract = true;
1864
-      }
1861
+        // ----- Look for no rule, which means extract all the archive
1862
+        else {
1863
+            $v_extract = true;
1864
+        }
1865 1865
 
1866 1866
 
1867
-      // ----- Look for real extraction
1868
-      if ($v_extract) {
1867
+        // ----- Look for real extraction
1868
+        if ($v_extract) {
1869 1869
 
1870 1870
         // ----- Go to the file position
1871 1871
         @rewind($this->_zip_fd);
1872
-          if (@fseek($this->_zip_fd, $v_header['offset'])) {
1873
-              // ----- Close the zip file
1874
-          $this->_closeFd();
1872
+            if (@fseek($this->_zip_fd, $v_header['offset'])) {
1873
+                // ----- Close the zip file
1874
+            $this->_closeFd();
1875 1875
 
1876
-          // ----- Error log
1877
-          $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size');
1876
+            // ----- Error log
1877
+            $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP, 'Invalid archive size');
1878 1878
 
1879
-          // ----- Return
1880
-          return Archive_Zip::errorCode();
1881
-          }
1879
+            // ----- Return
1880
+            return Archive_Zip::errorCode();
1881
+            }
1882 1882
 
1883 1883
         // ----- Look for extraction as string
1884 1884
         if ($p_params[ARCHIVE_ZIP_PARAM_EXTRACT_AS_STRING]) {
1885 1885
 
1886
-          // ----- Extracting the file
1887
-          if (($v_result = $this->_extractFileAsString($v_header, $v_string)) != 1) {
1888
-              // ----- Close the zip file
1886
+            // ----- Extracting the file
1887
+            if (($v_result = $this->_extractFileAsString($v_header, $v_string)) != 1) {
1888
+                // ----- Close the zip file
1889 1889
             $this->_closeFd();
1890 1890
 
1891
-              return $v_result;
1892
-          }
1891
+                return $v_result;
1892
+            }
1893 1893
 
1894
-          // ----- Get the only interesting attributes
1895
-          if (($v_result = $this->_convertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted])) != 1) {
1896
-              // ----- Close the zip file
1894
+            // ----- Get the only interesting attributes
1895
+            if (($v_result = $this->_convertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted])) != 1) {
1896
+                // ----- Close the zip file
1897 1897
             $this->_closeFd();
1898 1898
 
1899
-              return $v_result;
1900
-          }
1899
+                return $v_result;
1900
+            }
1901 1901
 
1902
-          // ----- Set the file content
1903
-          $p_file_list[$v_nb_extracted]['content'] = $v_string;
1902
+            // ----- Set the file content
1903
+            $p_file_list[$v_nb_extracted]['content'] = $v_string;
1904 1904
 
1905
-          // ----- Next extracted file
1906
-          $v_nb_extracted++;
1905
+            // ----- Next extracted file
1906
+            $v_nb_extracted++;
1907 1907
         } else {
1908 1908
             // ----- Extracting the file
1909
-          if (($v_result = $this->_extractFile($v_header, $p_path, $p_remove_path, $p_remove_all_path, $p_params)) != 1) {
1910
-              // ----- Close the zip file
1909
+            if (($v_result = $this->_extractFile($v_header, $p_path, $p_remove_path, $p_remove_all_path, $p_params)) != 1) {
1910
+                // ----- Close the zip file
1911 1911
             $this->_closeFd();
1912 1912
 
1913
-              return $v_result;
1914
-          }
1913
+                return $v_result;
1914
+            }
1915 1915
 
1916
-          // ----- Get the only interesting attributes
1917
-          if (($v_result = $this->_convertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted++])) != 1) {
1918
-              // ----- Close the zip file
1916
+            // ----- Get the only interesting attributes
1917
+            if (($v_result = $this->_convertHeader2FileInfo($v_header, $p_file_list[$v_nb_extracted++])) != 1) {
1918
+                // ----- Close the zip file
1919 1919
             $this->_closeFd();
1920 1920
 
1921
-              return $v_result;
1922
-          }
1921
+                return $v_result;
1922
+            }
1923
+        }
1924
+        }
1923 1925
         }
1924
-      }
1925
-      }
1926 1926
 
1927 1927
     // ----- Close the zip file
1928 1928
     $this->_closeFd();
1929 1929
 
1930 1930
     // ----- Return
1931 1931
     return $v_result;
1932
-  }
1933
-  // ---------------------------------------------------------------------------
1934
-
1935
-  // ---------------------------------------------------------------------------
1936
-  // Function : _extractFile()
1937
-  // Description :
1938
-  // Parameters :
1939
-  // Return Values :
1940
-  // ---------------------------------------------------------------------------
1941
-  /**
1942
-  * Archive_Zip::_extractFile()
1943
-  *
1944
-  * { Description }
1945
-  *
1946
-  */
1947
-  public function _extractFile(&$p_entry, $p_path, $p_remove_path, $p_remove_all_path, &$p_params)
1948
-  {
1949
-      $v_result=1;
1932
+    }
1933
+    // ---------------------------------------------------------------------------
1934
+
1935
+    // ---------------------------------------------------------------------------
1936
+    // Function : _extractFile()
1937
+    // Description :
1938
+    // Parameters :
1939
+    // Return Values :
1940
+    // ---------------------------------------------------------------------------
1941
+    /**
1942
+     * Archive_Zip::_extractFile()
1943
+     *
1944
+     * { Description }
1945
+     *
1946
+     */
1947
+    public function _extractFile(&$p_entry, $p_path, $p_remove_path, $p_remove_all_path, &$p_params)
1948
+    {
1949
+        $v_result=1;
1950 1950
 
1951 1951
     // ----- Read the file header
1952 1952
     if (($v_result = $this->_readFileHeader($v_header)) != 1) {
1953 1953
         // ----- Return
1954
-      return $v_result;
1954
+        return $v_result;
1955 1955
     }
1956 1956
 
1957 1957
 
@@ -1967,14 +1967,14 @@  discard block
 block discarded – undo
1967 1967
     // ----- Look for path to remove
1968 1968
     elseif ($p_remove_path != "") {
1969 1969
         //if (strcmp($p_remove_path, $p_entry['filename'])==0)
1970
-      if ($this->_tool_PathInclusion($p_remove_path, $p_entry['filename']) == 2) {
1970
+        if ($this->_tool_PathInclusion($p_remove_path, $p_entry['filename']) == 2) {
1971 1971
 
1972 1972
         // ----- Change the file status
1973 1973
         $p_entry['status'] = "filtered";
1974 1974
 
1975 1975
         // ----- Return
1976 1976
         return $v_result;
1977
-      }
1977
+        }
1978 1978
 
1979 1979
         $p_remove_path_size = strlen($p_remove_path);
1980 1980
         if (substr($p_entry['filename'], 0, $p_remove_path_size) == $p_remove_path) {
@@ -1993,23 +1993,23 @@  discard block
 block discarded – undo
1993 1993
     if ((isset($p_params[ARCHIVE_ZIP_PARAM_PRE_EXTRACT]))
1994 1994
         && ($p_params[ARCHIVE_ZIP_PARAM_PRE_EXTRACT] != '')) {
1995 1995
 
1996
-      // ----- Generate a local information
1997
-      $v_local_header = array();
1996
+        // ----- Generate a local information
1997
+        $v_local_header = array();
1998 1998
         $this->_convertHeader2FileInfo($p_entry, $v_local_header);
1999 1999
 
2000
-      // ----- Call the callback
2001
-      // Here I do not use call_user_func() because I need to send a reference to the
2002
-      // header.
2003
-      eval('$v_result = '.$p_params[ARCHIVE_ZIP_PARAM_PRE_EXTRACT].'(ARCHIVE_ZIP_PARAM_PRE_EXTRACT, $v_local_header);');
2000
+        // ----- Call the callback
2001
+        // Here I do not use call_user_func() because I need to send a reference to the
2002
+        // header.
2003
+        eval('$v_result = '.$p_params[ARCHIVE_ZIP_PARAM_PRE_EXTRACT].'(ARCHIVE_ZIP_PARAM_PRE_EXTRACT, $v_local_header);');
2004 2004
         if ($v_result == 0) {
2005 2005
             // ----- Change the file status
2006 2006
         $p_entry['status'] = "skipped";
2007 2007
             $v_result = 1;
2008 2008
         }
2009 2009
 
2010
-      // ----- Update the informations
2011
-      // Only some fields can be modified
2012
-      $p_entry['filename'] = $v_local_header['filename'];
2010
+        // ----- Update the informations
2011
+        // Only some fields can be modified
2012
+        $p_entry['filename'] = $v_local_header['filename'];
2013 2013
     }
2014 2014
 
2015 2015
     // ----- Trace
@@ -2020,34 +2020,34 @@  discard block
 block discarded – undo
2020 2020
     // ----- Look for specific actions while the file exist
2021 2021
     if (file_exists($p_entry['filename'])) {
2022 2022
 
2023
-      // ----- Look if file is a directory
2024
-      if (is_dir($p_entry['filename'])) {
2023
+        // ----- Look if file is a directory
2024
+        if (is_dir($p_entry['filename'])) {
2025 2025
 
2026 2026
         // ----- Change the file status
2027 2027
         $p_entry['status'] = "already_a_directory";
2028 2028
 
2029 2029
         // ----- Return
2030 2030
         //return $v_result;
2031
-      }
2032
-      // ----- Look if file is write protected
2033
-      elseif (!is_writeable($p_entry['filename'])) {
2031
+        }
2032
+        // ----- Look if file is write protected
2033
+        elseif (!is_writeable($p_entry['filename'])) {
2034 2034
 
2035 2035
         // ----- Change the file status
2036 2036
         $p_entry['status'] = "write_protected";
2037 2037
 
2038 2038
         // ----- Return
2039 2039
         //return $v_result;
2040
-      }
2040
+        }
2041 2041
 
2042
-      // ----- Look if the extracted file is older
2043
-      elseif (filemtime($p_entry['filename']) > $p_entry['mtime']) {
2042
+        // ----- Look if the extracted file is older
2043
+        elseif (filemtime($p_entry['filename']) > $p_entry['mtime']) {
2044 2044
 
2045 2045
         // ----- Change the file status
2046 2046
         $p_entry['status'] = "newer_exist";
2047 2047
 
2048 2048
         // ----- Return
2049 2049
         //return $v_result;
2050
-      }
2050
+        }
2051 2051
     }
2052 2052
 
2053 2053
     // ----- Check the directory availability and create it if necessary
@@ -2075,25 +2075,25 @@  discard block
 block discarded – undo
2075 2075
     // ----- Look if extraction should be done
2076 2076
     if ($p_entry['status'] == 'ok') {
2077 2077
 
2078
-      // ----- Do the extraction (if not a folder)
2079
-      if (!(($p_entry['external']&0x00000010)==0x00000010)) {
2078
+        // ----- Do the extraction (if not a folder)
2079
+        if (!(($p_entry['external']&0x00000010)==0x00000010)) {
2080 2080
 
2081 2081
         // ----- Look for not compressed file
2082 2082
         if ($p_entry['compressed_size'] == $p_entry['size']) {
2083 2083
 
2084
-          // ----- Opening destination file
2085
-          if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) {
2084
+            // ----- Opening destination file
2085
+            if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) {
2086 2086
 
2087 2087
             // ----- Change the file status
2088 2088
             $p_entry['status'] = "write_error";
2089 2089
 
2090 2090
             // ----- Return
2091 2091
             return $v_result;
2092
-          }
2092
+            }
2093 2093
 
2094 2094
 
2095
-          // ----- Read the file by ARCHIVE_ZIP_READ_BLOCK_SIZE octets blocks
2096
-          $v_size = $p_entry['compressed_size'];
2095
+            // ----- Read the file by ARCHIVE_ZIP_READ_BLOCK_SIZE octets blocks
2096
+            $v_size = $p_entry['compressed_size'];
2097 2097
             while ($v_size != 0) {
2098 2098
                 $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE ? $v_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
2099 2099
                 $v_buffer = fread($this->_zip_fd, $v_read_size);
@@ -2102,93 +2102,93 @@  discard block
 block discarded – undo
2102 2102
                 $v_size -= $v_read_size;
2103 2103
             }
2104 2104
 
2105
-          // ----- Closing the destination file
2106
-          fclose($v_dest_file);
2105
+            // ----- Closing the destination file
2106
+            fclose($v_dest_file);
2107 2107
 
2108
-          // ----- Change the file mtime
2109
-          touch($p_entry['filename'], $p_entry['mtime']);
2108
+            // ----- Change the file mtime
2109
+            touch($p_entry['filename'], $p_entry['mtime']);
2110 2110
         } else {
2111 2111
             // ----- Trace
2112 2112
 
2113
-          // ----- Opening destination file
2114
-          if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) {
2113
+            // ----- Opening destination file
2114
+            if (($v_dest_file = @fopen($p_entry['filename'], 'wb')) == 0) {
2115 2115
 
2116 2116
             // ----- Change the file status
2117 2117
             $p_entry['status'] = "write_error";
2118 2118
 
2119
-              return $v_result;
2120
-          }
2119
+                return $v_result;
2120
+            }
2121 2121
 
2122 2122
 
2123
-          // ----- Read the compressed file in a buffer (one shot)
2124
-          $v_buffer = @fread($this->_zip_fd, $p_entry['compressed_size']);
2123
+            // ----- Read the compressed file in a buffer (one shot)
2124
+            $v_buffer = @fread($this->_zip_fd, $p_entry['compressed_size']);
2125 2125
 
2126
-          // ----- Decompress the file
2127
-          $v_file_content = gzinflate($v_buffer);
2126
+            // ----- Decompress the file
2127
+            $v_file_content = gzinflate($v_buffer);
2128 2128
             unset($v_buffer);
2129 2129
 
2130
-          // ----- Write the uncompressed data
2131
-          @fwrite($v_dest_file, $v_file_content, $p_entry['size']);
2130
+            // ----- Write the uncompressed data
2131
+            @fwrite($v_dest_file, $v_file_content, $p_entry['size']);
2132 2132
             unset($v_file_content);
2133 2133
 
2134
-          // ----- Closing the destination file
2135
-          @fclose($v_dest_file);
2134
+            // ----- Closing the destination file
2135
+            @fclose($v_dest_file);
2136 2136
 
2137
-          // ----- Change the file mtime
2138
-          touch($p_entry['filename'], $p_entry['mtime']);
2137
+            // ----- Change the file mtime
2138
+            touch($p_entry['filename'], $p_entry['mtime']);
2139 2139
         }
2140 2140
 
2141 2141
         // ----- Look for chmod option
2142 2142
         if ((isset($p_params[ARCHIVE_ZIP_PARAM_SET_CHMOD]))
2143 2143
             && ($p_params[ARCHIVE_ZIP_PARAM_SET_CHMOD] != 0)) {
2144 2144
 
2145
-          // ----- Change the mode of the file
2146
-          chmod($p_entry['filename'], $p_params[ARCHIVE_ZIP_PARAM_SET_CHMOD]);
2145
+            // ----- Change the mode of the file
2146
+            chmod($p_entry['filename'], $p_params[ARCHIVE_ZIP_PARAM_SET_CHMOD]);
2147
+        }
2147 2148
         }
2148
-      }
2149 2149
     }
2150 2150
 
2151 2151
     // ----- Look for post-extract callback
2152 2152
     if ((isset($p_params[ARCHIVE_ZIP_PARAM_POST_EXTRACT]))
2153 2153
         && ($p_params[ARCHIVE_ZIP_PARAM_POST_EXTRACT] != '')) {
2154 2154
 
2155
-      // ----- Generate a local information
2156
-      $v_local_header = array();
2155
+        // ----- Generate a local information
2156
+        $v_local_header = array();
2157 2157
         $this->_convertHeader2FileInfo($p_entry, $v_local_header);
2158 2158
 
2159
-      // ----- Call the callback
2160
-      // Here I do not use call_user_func() because I need to send a reference to the
2161
-      // header.
2162
-      eval('$v_result = '.$p_params[ARCHIVE_ZIP_PARAM_POST_EXTRACT].'(ARCHIVE_ZIP_PARAM_POST_EXTRACT, $v_local_header);');
2159
+        // ----- Call the callback
2160
+        // Here I do not use call_user_func() because I need to send a reference to the
2161
+        // header.
2162
+        eval('$v_result = '.$p_params[ARCHIVE_ZIP_PARAM_POST_EXTRACT].'(ARCHIVE_ZIP_PARAM_POST_EXTRACT, $v_local_header);');
2163 2163
     }
2164 2164
 
2165 2165
     // ----- Return
2166 2166
     return $v_result;
2167
-  }
2168
-  // ---------------------------------------------------------------------------
2169
-
2170
-  // ---------------------------------------------------------------------------
2171
-  // Function : _extractFileAsString()
2172
-  // Description :
2173
-  // Parameters :
2174
-  // Return Values :
2175
-  // ---------------------------------------------------------------------------
2176
-  /**
2177
-  * Archive_Zip::_extractFileAsString()
2178
-  *
2179
-  * { Description }
2180
-  *
2181
-  */
2182
-  public function _extractFileAsString(&$p_entry, &$p_string)
2183
-  {
2184
-      $v_result=1;
2167
+    }
2168
+    // ---------------------------------------------------------------------------
2169
+
2170
+    // ---------------------------------------------------------------------------
2171
+    // Function : _extractFileAsString()
2172
+    // Description :
2173
+    // Parameters :
2174
+    // Return Values :
2175
+    // ---------------------------------------------------------------------------
2176
+    /**
2177
+     * Archive_Zip::_extractFileAsString()
2178
+     *
2179
+     * { Description }
2180
+     *
2181
+     */
2182
+    public function _extractFileAsString(&$p_entry, &$p_string)
2183
+    {
2184
+        $v_result=1;
2185 2185
 
2186 2186
     // ----- Read the file header
2187 2187
     $v_header = array();
2188
-      if (($v_result = $this->_readFileHeader($v_header)) != 1) {
2189
-          // ----- Return
2190
-      return $v_result;
2191
-      }
2188
+        if (($v_result = $this->_readFileHeader($v_header)) != 1) {
2189
+            // ----- Return
2190
+        return $v_result;
2191
+        }
2192 2192
 
2193 2193
 
2194 2194
     // ----- Check that the file header is coherent with $p_entry info
@@ -2199,59 +2199,59 @@  discard block
 block discarded – undo
2199 2199
     // ----- Do the extraction (if not a folder)
2200 2200
     if (!(($p_entry['external']&0x00000010)==0x00000010)) {
2201 2201
         // ----- Look for not compressed file
2202
-      if ($p_entry['compressed_size'] == $p_entry['size']) {
2203
-          // ----- Trace
2202
+        if ($p_entry['compressed_size'] == $p_entry['size']) {
2203
+            // ----- Trace
2204 2204
 
2205 2205
         // ----- Reading the file
2206 2206
         $p_string = fread($this->_zip_fd, $p_entry['compressed_size']);
2207
-      } else {
2208
-          // ----- Trace
2207
+        } else {
2208
+            // ----- Trace
2209 2209
 
2210 2210
         // ----- Reading the file
2211 2211
         $v_data = fread($this->_zip_fd, $p_entry['compressed_size']);
2212 2212
 
2213 2213
         // ----- Decompress the file
2214 2214
         $p_string = gzinflate($v_data);
2215
-      }
2215
+        }
2216 2216
 
2217
-      // ----- Trace
2217
+        // ----- Trace
2218 2218
     } else {
2219 2219
         // TBC : error : can not extract a folder in a string
2220 2220
     }
2221 2221
 
2222 2222
     // ----- Return
2223 2223
     return $v_result;
2224
-  }
2225
-  // ---------------------------------------------------------------------------
2226
-
2227
-  // ---------------------------------------------------------------------------
2228
-  // Function : _readFileHeader()
2229
-  // Description :
2230
-  // Parameters :
2231
-  // Return Values :
2232
-  // ---------------------------------------------------------------------------
2233
-  /**
2234
-  * Archive_Zip::_readFileHeader()
2235
-  *
2236
-  * { Description }
2237
-  *
2238
-  */
2239
-  public function _readFileHeader(&$p_header)
2240
-  {
2241
-      $v_result=1;
2224
+    }
2225
+    // ---------------------------------------------------------------------------
2226
+
2227
+    // ---------------------------------------------------------------------------
2228
+    // Function : _readFileHeader()
2229
+    // Description :
2230
+    // Parameters :
2231
+    // Return Values :
2232
+    // ---------------------------------------------------------------------------
2233
+    /**
2234
+     * Archive_Zip::_readFileHeader()
2235
+     *
2236
+     * { Description }
2237
+     *
2238
+     */
2239
+    public function _readFileHeader(&$p_header)
2240
+    {
2241
+        $v_result=1;
2242 2242
 
2243 2243
     // ----- Read the 4 bytes signature
2244 2244
     $v_binary_data = @fread($this->_zip_fd, 4);
2245
-      $v_data = unpack('Vid', $v_binary_data);
2245
+        $v_data = unpack('Vid', $v_binary_data);
2246 2246
 
2247 2247
     // ----- Check signature
2248 2248
     if ($v_data['id'] != 0x04034b50) {
2249 2249
 
2250
-      // ----- Error log
2251
-      $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT, 'Invalid archive structure');
2250
+        // ----- Error log
2251
+        $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT, 'Invalid archive structure');
2252 2252
 
2253
-      // ----- Return
2254
-      return Archive_Zip::errorCode();
2253
+        // ----- Return
2254
+        return Archive_Zip::errorCode();
2255 2255
     }
2256 2256
 
2257 2257
     // ----- Read the first 42 bytes of the header
@@ -2262,11 +2262,11 @@  discard block
 block discarded – undo
2262 2262
         $p_header['filename'] = "";
2263 2263
         $p_header['status'] = "invalid_header";
2264 2264
 
2265
-      // ----- Error log
2266
-      $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT, "Invalid block size : ".strlen($v_binary_data));
2265
+        // ----- Error log
2266
+        $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT, "Invalid block size : ".strlen($v_binary_data));
2267 2267
 
2268
-      // ----- Return
2269
-      return Archive_Zip::errorCode();
2268
+        // ----- Return
2269
+        return Archive_Zip::errorCode();
2270 2270
     }
2271 2271
 
2272 2272
     // ----- Extract the values
@@ -2284,30 +2284,30 @@  discard block
 block discarded – undo
2284 2284
 
2285 2285
     // ----- Extract properties
2286 2286
     $p_header['compression'] = $v_data['compression'];
2287
-      $p_header['size'] = $v_data['size'];
2288
-      $p_header['compressed_size'] = $v_data['compressed_size'];
2289
-      $p_header['crc'] = $v_data['crc'];
2290
-      $p_header['flag'] = $v_data['flag'];
2287
+        $p_header['size'] = $v_data['size'];
2288
+        $p_header['compressed_size'] = $v_data['compressed_size'];
2289
+        $p_header['crc'] = $v_data['crc'];
2290
+        $p_header['flag'] = $v_data['flag'];
2291 2291
 
2292 2292
     // ----- Recuperate date in UNIX format
2293 2293
     $p_header['mdate'] = $v_data['mdate'];
2294
-      $p_header['mtime'] = $v_data['mtime'];
2295
-      if ($p_header['mdate'] && $p_header['mtime']) {
2296
-          // ----- Extract time
2297
-      $v_hour = ($p_header['mtime'] & 0xF800) >> 11;
2298
-          $v_minute = ($p_header['mtime'] & 0x07E0) >> 5;
2299
-          $v_seconde = ($p_header['mtime'] & 0x001F)*2;
2300
-
2301
-      // ----- Extract date
2302
-      $v_year = (($p_header['mdate'] & 0xFE00) >> 9) + 1980;
2303
-          $v_month = ($p_header['mdate'] & 0x01E0) >> 5;
2304
-          $v_day = $p_header['mdate'] & 0x001F;
2305
-
2306
-      // ----- Get UNIX date format
2307
-      $p_header['mtime'] = mktime($v_hour, $v_minute, $v_seconde, $v_month, $v_day, $v_year);
2308
-      } else {
2309
-          $p_header['mtime'] = time();
2310
-      }
2294
+        $p_header['mtime'] = $v_data['mtime'];
2295
+        if ($p_header['mdate'] && $p_header['mtime']) {
2296
+            // ----- Extract time
2297
+        $v_hour = ($p_header['mtime'] & 0xF800) >> 11;
2298
+            $v_minute = ($p_header['mtime'] & 0x07E0) >> 5;
2299
+            $v_seconde = ($p_header['mtime'] & 0x001F)*2;
2300
+
2301
+        // ----- Extract date
2302
+        $v_year = (($p_header['mdate'] & 0xFE00) >> 9) + 1980;
2303
+            $v_month = ($p_header['mdate'] & 0x01E0) >> 5;
2304
+            $v_day = $p_header['mdate'] & 0x001F;
2305
+
2306
+        // ----- Get UNIX date format
2307
+        $p_header['mtime'] = mktime($v_hour, $v_minute, $v_seconde, $v_month, $v_day, $v_year);
2308
+        } else {
2309
+            $p_header['mtime'] = time();
2310
+        }
2311 2311
 
2312 2312
     // ----- Other informations
2313 2313
 
@@ -2323,37 +2323,37 @@  discard block
 block discarded – undo
2323 2323
 
2324 2324
     // ----- Return
2325 2325
     return $v_result;
2326
-  }
2327
-  // ---------------------------------------------------------------------------
2328
-
2329
-  // ---------------------------------------------------------------------------
2330
-  // Function : _readCentralFileHeader()
2331
-  // Description :
2332
-  // Parameters :
2333
-  // Return Values :
2334
-  // ---------------------------------------------------------------------------
2335
-  /**
2336
-  * Archive_Zip::_readCentralFileHeader()
2337
-  *
2338
-  * { Description }
2339
-  *
2340
-  */
2341
-  public function _readCentralFileHeader(&$p_header)
2342
-  {
2343
-      $v_result=1;
2326
+    }
2327
+    // ---------------------------------------------------------------------------
2328
+
2329
+    // ---------------------------------------------------------------------------
2330
+    // Function : _readCentralFileHeader()
2331
+    // Description :
2332
+    // Parameters :
2333
+    // Return Values :
2334
+    // ---------------------------------------------------------------------------
2335
+    /**
2336
+     * Archive_Zip::_readCentralFileHeader()
2337
+     *
2338
+     * { Description }
2339
+     *
2340
+     */
2341
+    public function _readCentralFileHeader(&$p_header)
2342
+    {
2343
+        $v_result=1;
2344 2344
 
2345 2345
     // ----- Read the 4 bytes signature
2346 2346
     $v_binary_data = @fread($this->_zip_fd, 4);
2347
-      $v_data = unpack('Vid', $v_binary_data);
2347
+        $v_data = unpack('Vid', $v_binary_data);
2348 2348
 
2349 2349
     // ----- Check signature
2350 2350
     if ($v_data['id'] != 0x02014b50) {
2351 2351
 
2352
-      // ----- Error log
2353
-      $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT, 'Invalid archive structure');
2352
+        // ----- Error log
2353
+        $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT, 'Invalid archive structure');
2354 2354
 
2355
-      // ----- Return
2356
-      return Archive_Zip::errorCode();
2355
+        // ----- Return
2356
+        return Archive_Zip::errorCode();
2357 2357
     }
2358 2358
 
2359 2359
     // ----- Read the first 42 bytes of the header
@@ -2364,11 +2364,11 @@  discard block
 block discarded – undo
2364 2364
         $p_header['filename'] = "";
2365 2365
         $p_header['status'] = "invalid_header";
2366 2366
 
2367
-      // ----- Error log
2368
-      $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT, "Invalid block size : ".strlen($v_binary_data));
2367
+        // ----- Error log
2368
+        $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT, "Invalid block size : ".strlen($v_binary_data));
2369 2369
 
2370
-      // ----- Return
2371
-      return Archive_Zip::errorCode();
2370
+        // ----- Return
2371
+        return Archive_Zip::errorCode();
2372 2372
     }
2373 2373
 
2374 2374
     // ----- Extract the values
@@ -2400,17 +2400,17 @@  discard block
 block discarded – undo
2400 2400
     // ----- Recuperate date in UNIX format
2401 2401
     if ($p_header['mdate'] && $p_header['mtime']) {
2402 2402
         // ----- Extract time
2403
-      $v_hour = ($p_header['mtime'] & 0xF800) >> 11;
2403
+        $v_hour = ($p_header['mtime'] & 0xF800) >> 11;
2404 2404
         $v_minute = ($p_header['mtime'] & 0x07E0) >> 5;
2405 2405
         $v_seconde = ($p_header['mtime'] & 0x001F)*2;
2406 2406
 
2407
-      // ----- Extract date
2408
-      $v_year = (($p_header['mdate'] & 0xFE00) >> 9) + 1980;
2407
+        // ----- Extract date
2408
+        $v_year = (($p_header['mdate'] & 0xFE00) >> 9) + 1980;
2409 2409
         $v_month = ($p_header['mdate'] & 0x01E0) >> 5;
2410 2410
         $v_day = $p_header['mdate'] & 0x001F;
2411 2411
 
2412
-      // ----- Get UNIX date format
2413
-      $p_header['mtime'] = mktime($v_hour, $v_minute, $v_seconde, $v_month, $v_day, $v_year);
2412
+        // ----- Get UNIX date format
2413
+        $p_header['mtime'] = mktime($v_hour, $v_minute, $v_seconde, $v_month, $v_day, $v_year);
2414 2414
     } else {
2415 2415
         $p_header['mtime'] = time();
2416 2416
     }
@@ -2429,76 +2429,76 @@  discard block
 block discarded – undo
2429 2429
 
2430 2430
     // ----- Return
2431 2431
     return $v_result;
2432
-  }
2433
-  // ---------------------------------------------------------------------------
2434
-
2435
-  // ---------------------------------------------------------------------------
2436
-  // Function : _readEndCentralDir()
2437
-  // Description :
2438
-  // Parameters :
2439
-  // Return Values :
2440
-  // ---------------------------------------------------------------------------
2441
-  /**
2442
-  * Archive_Zip::_readEndCentralDir()
2443
-  *
2444
-  * { Description }
2445
-  *
2446
-  */
2447
-  public function _readEndCentralDir(&$p_central_dir)
2448
-  {
2449
-      $v_result=1;
2432
+    }
2433
+    // ---------------------------------------------------------------------------
2434
+
2435
+    // ---------------------------------------------------------------------------
2436
+    // Function : _readEndCentralDir()
2437
+    // Description :
2438
+    // Parameters :
2439
+    // Return Values :
2440
+    // ---------------------------------------------------------------------------
2441
+    /**
2442
+     * Archive_Zip::_readEndCentralDir()
2443
+     *
2444
+     * { Description }
2445
+     *
2446
+     */
2447
+    public function _readEndCentralDir(&$p_central_dir)
2448
+    {
2449
+        $v_result=1;
2450 2450
 
2451 2451
     // ----- Go to the end of the zip file
2452 2452
     $v_size = filesize($this->_zipname);
2453
-      @fseek($this->_zip_fd, $v_size);
2454
-      if (@ftell($this->_zip_fd) != $v_size) {
2455
-          $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT,
2456
-                       'Unable to go to the end of the archive \''
2457
-                       .$this->_zipname.'\'');
2458
-          return Archive_Zip::errorCode();
2459
-      }
2453
+        @fseek($this->_zip_fd, $v_size);
2454
+        if (@ftell($this->_zip_fd) != $v_size) {
2455
+            $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT,
2456
+                        'Unable to go to the end of the archive \''
2457
+                        .$this->_zipname.'\'');
2458
+            return Archive_Zip::errorCode();
2459
+        }
2460 2460
 
2461 2461
     // ----- First try : look if this is an archive with no commentaries
2462 2462
     // (most of the time)
2463 2463
     // in this case the end of central dir is at 22 bytes of the file end
2464 2464
     $v_found = 0;
2465
-      if ($v_size > 26) {
2466
-          @fseek($this->_zip_fd, $v_size-22);
2467
-          if (($v_pos = @ftell($this->_zip_fd)) != ($v_size-22)) {
2468
-              $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT,
2469
-                         'Unable to seek back to the middle of the archive \''
2470
-                         .$this->_zipname.'\'');
2471
-              return Archive_Zip::errorCode();
2472
-          }
2473
-
2474
-      // ----- Read for bytes
2475
-      $v_binary_data = @fread($this->_zip_fd, 4);
2476
-          $v_data = unpack('Vid', $v_binary_data);
2477
-
2478
-      // ----- Check signature
2479
-      if ($v_data['id'] == 0x06054b50) {
2480
-          $v_found = 1;
2481
-      }
2482
-
2483
-          $v_pos = ftell($this->_zip_fd);
2484
-      }
2465
+        if ($v_size > 26) {
2466
+            @fseek($this->_zip_fd, $v_size-22);
2467
+            if (($v_pos = @ftell($this->_zip_fd)) != ($v_size-22)) {
2468
+                $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT,
2469
+                            'Unable to seek back to the middle of the archive \''
2470
+                            .$this->_zipname.'\'');
2471
+                return Archive_Zip::errorCode();
2472
+            }
2473
+
2474
+        // ----- Read for bytes
2475
+        $v_binary_data = @fread($this->_zip_fd, 4);
2476
+            $v_data = unpack('Vid', $v_binary_data);
2477
+
2478
+        // ----- Check signature
2479
+        if ($v_data['id'] == 0x06054b50) {
2480
+            $v_found = 1;
2481
+        }
2482
+
2483
+            $v_pos = ftell($this->_zip_fd);
2484
+        }
2485 2485
 
2486 2486
     // ----- Go back to the maximum possible size of the Central Dir End Record
2487 2487
     if (!$v_found) {
2488 2488
         $v_maximum_size = 65557; // 0xFFFF + 22;
2489
-      if ($v_maximum_size > $v_size) {
2490
-          $v_maximum_size = $v_size;
2491
-      }
2489
+        if ($v_maximum_size > $v_size) {
2490
+            $v_maximum_size = $v_size;
2491
+        }
2492 2492
         @fseek($this->_zip_fd, $v_size-$v_maximum_size);
2493 2493
         if (@ftell($this->_zip_fd) != ($v_size-$v_maximum_size)) {
2494 2494
             $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT,
2495
-                         'Unable to seek back to the middle of the archive \''
2496
-                         .$this->_zipname.'\'');
2495
+                            'Unable to seek back to the middle of the archive \''
2496
+                            .$this->_zipname.'\'');
2497 2497
             return Archive_Zip::errorCode();
2498 2498
         }
2499 2499
 
2500
-      // ----- Read byte per byte in order to find the signature
2501
-      $v_pos = ftell($this->_zip_fd);
2500
+        // ----- Read byte per byte in order to find the signature
2501
+        $v_pos = ftell($this->_zip_fd);
2502 2502
         $v_bytes = 0x00000000;
2503 2503
         while ($v_pos < $v_size) {
2504 2504
             // ----- Read a byte
@@ -2516,12 +2516,12 @@  discard block
 block discarded – undo
2516 2516
             $v_pos++;
2517 2517
         }
2518 2518
 
2519
-      // ----- Look if not found end of central dir
2520
-      if ($v_pos == $v_size) {
2521
-          $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT,
2522
-                         "Unable to find End of Central Dir Record signature");
2523
-          return Archive_Zip::errorCode();
2524
-      }
2519
+        // ----- Look if not found end of central dir
2520
+        if ($v_pos == $v_size) {
2521
+            $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT,
2522
+                            "Unable to find End of Central Dir Record signature");
2523
+            return Archive_Zip::errorCode();
2524
+        }
2525 2525
     }
2526 2526
 
2527 2527
     // ----- Read the first 18 bytes of the header
@@ -2530,8 +2530,8 @@  discard block
 block discarded – undo
2530 2530
     // ----- Look for invalid block size
2531 2531
     if (strlen($v_binary_data) != 18) {
2532 2532
         $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT,
2533
-                       "Invalid End of Central Dir Record size : "
2534
-                       .strlen($v_binary_data));
2533
+                        "Invalid End of Central Dir Record size : "
2534
+                        .strlen($v_binary_data));
2535 2535
         return Archive_Zip::errorCode();
2536 2536
     }
2537 2537
 
@@ -2541,7 +2541,7 @@  discard block
 block discarded – undo
2541 2541
     // ----- Check the global size
2542 2542
     if (($v_pos + $v_data['comment_size'] + 18) != $v_size) {
2543 2543
         $this->_errorLog(ARCHIVE_ZIP_ERR_BAD_FORMAT,
2544
-                       "Fail to find the right signature");
2544
+                        "Fail to find the right signature");
2545 2545
         return Archive_Zip::errorCode();
2546 2546
     }
2547 2547
 
@@ -2552,47 +2552,47 @@  discard block
 block discarded – undo
2552 2552
         $p_central_dir['comment'] = '';
2553 2553
     }
2554 2554
 
2555
-      $p_central_dir['entries'] = $v_data['entries'];
2556
-      $p_central_dir['disk_entries'] = $v_data['disk_entries'];
2557
-      $p_central_dir['offset'] = $v_data['offset'];
2558
-      $p_central_dir['size'] = $v_data['size'];
2559
-      $p_central_dir['disk'] = $v_data['disk'];
2560
-      $p_central_dir['disk_start'] = $v_data['disk_start'];
2555
+        $p_central_dir['entries'] = $v_data['entries'];
2556
+        $p_central_dir['disk_entries'] = $v_data['disk_entries'];
2557
+        $p_central_dir['offset'] = $v_data['offset'];
2558
+        $p_central_dir['size'] = $v_data['size'];
2559
+        $p_central_dir['disk'] = $v_data['disk'];
2560
+        $p_central_dir['disk_start'] = $v_data['disk_start'];
2561 2561
 
2562 2562
     // ----- Return
2563 2563
     return $v_result;
2564
-  }
2565
-  // ---------------------------------------------------------------------------
2566
-
2567
-  // ---------------------------------------------------------------------------
2568
-  // Function : _deleteByRule()
2569
-  // Description :
2570
-  // Parameters :
2571
-  // Return Values :
2572
-  // ---------------------------------------------------------------------------
2573
-  /**
2574
-  * Archive_Zip::_deleteByRule()
2575
-  *
2576
-  * { Description }
2577
-  *
2578
-  */
2579
-  public function _deleteByRule(&$p_result_list, &$p_params)
2580
-  {
2581
-      $v_result=1;
2582
-      $v_list_detail = array();
2564
+    }
2565
+    // ---------------------------------------------------------------------------
2566
+
2567
+    // ---------------------------------------------------------------------------
2568
+    // Function : _deleteByRule()
2569
+    // Description :
2570
+    // Parameters :
2571
+    // Return Values :
2572
+    // ---------------------------------------------------------------------------
2573
+    /**
2574
+     * Archive_Zip::_deleteByRule()
2575
+     *
2576
+     * { Description }
2577
+     *
2578
+     */
2579
+    public function _deleteByRule(&$p_result_list, &$p_params)
2580
+    {
2581
+        $v_result=1;
2582
+        $v_list_detail = array();
2583 2583
 
2584 2584
     // ----- Open the zip file
2585 2585
     if (($v_result=$this->_openFd('rb')) != 1) {
2586 2586
         // ----- Return
2587
-      return $v_result;
2587
+        return $v_result;
2588 2588
     }
2589 2589
 
2590 2590
     // ----- Read the central directory informations
2591 2591
     $v_central_dir = array();
2592
-      if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
2593
-          $this->_closeFd();
2594
-          return $v_result;
2595
-      }
2592
+        if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
2593
+            $this->_closeFd();
2594
+            return $v_result;
2595
+        }
2596 2596
 
2597 2597
     // ----- Go to beginning of File
2598 2598
     @rewind($this->_zip_fd);
@@ -2600,123 +2600,123 @@  discard block
 block discarded – undo
2600 2600
     // ----- Scan all the files
2601 2601
     // ----- Start at beginning of Central Dir
2602 2602
     $v_pos_entry = $v_central_dir['offset'];
2603
-      @rewind($this->_zip_fd);
2604
-      if (@fseek($this->_zip_fd, $v_pos_entry)) {
2605
-          // ----- Clean
2606
-      $this->_closeFd();
2603
+        @rewind($this->_zip_fd);
2604
+        if (@fseek($this->_zip_fd, $v_pos_entry)) {
2605
+            // ----- Clean
2606
+        $this->_closeFd();
2607 2607
 
2608
-          $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP,
2609
-                       'Invalid archive size');
2610
-          return Archive_Zip::errorCode();
2611
-      }
2608
+            $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP,
2609
+                        'Invalid archive size');
2610
+            return Archive_Zip::errorCode();
2611
+        }
2612 2612
 
2613 2613
     // ----- Read each entry
2614 2614
     $v_header_list = array();
2615
-      $j_start = 0;
2616
-      for ($i=0, $v_nb_extracted=0; $i<$v_central_dir['entries']; $i++) {
2615
+        $j_start = 0;
2616
+        for ($i=0, $v_nb_extracted=0; $i<$v_central_dir['entries']; $i++) {
2617 2617
 
2618
-      // ----- Read the file header
2619
-      $v_header_list[$v_nb_extracted] = array();
2620
-          $v_result
2618
+        // ----- Read the file header
2619
+        $v_header_list[$v_nb_extracted] = array();
2620
+            $v_result
2621 2621
         = $this->_readCentralFileHeader($v_header_list[$v_nb_extracted]);
2622
-          if ($v_result != 1) {
2623
-              // ----- Clean
2622
+            if ($v_result != 1) {
2623
+                // ----- Clean
2624 2624
         $this->_closeFd();
2625 2625
 
2626
-              return $v_result;
2627
-          }
2626
+                return $v_result;
2627
+            }
2628 2628
 
2629
-      // ----- Store the index
2630
-      $v_header_list[$v_nb_extracted]['index'] = $i;
2629
+        // ----- Store the index
2630
+        $v_header_list[$v_nb_extracted]['index'] = $i;
2631 2631
 
2632
-      // ----- Look for the specific extract rules
2633
-      $v_found = false;
2632
+        // ----- Look for the specific extract rules
2633
+        $v_found = false;
2634 2634
 
2635
-      // ----- Look for extract by name rule
2636
-      if ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_NAME]))
2635
+        // ----- Look for extract by name rule
2636
+        if ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_NAME]))
2637 2637
           && ($p_params[ARCHIVE_ZIP_PARAM_BY_NAME] != 0)) {
2638 2638
 
2639
-          // ----- Look if the filename is in the list
2640
-          for ($j=0;
2641
-               ($j<sizeof($p_params[ARCHIVE_ZIP_PARAM_BY_NAME]))
2639
+            // ----- Look if the filename is in the list
2640
+            for ($j=0;
2641
+                ($j<sizeof($p_params[ARCHIVE_ZIP_PARAM_BY_NAME]))
2642 2642
                  && (!$v_found);
2643
-               $j++) {
2643
+                $j++) {
2644 2644
 
2645
-              // ----- Look for a directory
2646
-              if (substr($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j], -1) == "/") {
2645
+                // ----- Look for a directory
2646
+                if (substr($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j], -1) == "/") {
2647 2647
 
2648
-                  // ----- Look if the directory is in the filename path
2649
-                  if ((strlen($v_header_list[$v_nb_extracted]['stored_filename']) > strlen($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j]))
2648
+                    // ----- Look if the directory is in the filename path
2649
+                    if ((strlen($v_header_list[$v_nb_extracted]['stored_filename']) > strlen($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j]))
2650 2650
                       && (substr($v_header_list[$v_nb_extracted]['stored_filename'], 0, strlen($p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j])) == $p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j])) {
2651
-                      $v_found = true;
2652
-                  } elseif ((($v_header_list[$v_nb_extracted]['external']&0x00000010)==0x00000010) /* Indicates a folder */
2651
+                        $v_found = true;
2652
+                    } elseif ((($v_header_list[$v_nb_extracted]['external']&0x00000010)==0x00000010) /* Indicates a folder */
2653 2653
                           && ($v_header_list[$v_nb_extracted]['stored_filename'].'/' == $p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j])) {
2654
-                      $v_found = true;
2655
-                  }
2656
-              }
2657
-              // ----- Look for a filename
2658
-              elseif ($v_header_list[$v_nb_extracted]['stored_filename']
2659
-                      == $p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j]) {
2660
-                  $v_found = true;
2661
-              }
2662
-          }
2663
-      }
2664
-
2665
-      // ----- Look for extract by ereg rule
2666
-      elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_EREG]))
2654
+                        $v_found = true;
2655
+                    }
2656
+                }
2657
+                // ----- Look for a filename
2658
+                elseif ($v_header_list[$v_nb_extracted]['stored_filename']
2659
+                        == $p_params[ARCHIVE_ZIP_PARAM_BY_NAME][$j]) {
2660
+                    $v_found = true;
2661
+                }
2662
+            }
2663
+        }
2664
+
2665
+        // ----- Look for extract by ereg rule
2666
+        elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_EREG]))
2667 2667
                && ($p_params[ARCHIVE_ZIP_PARAM_BY_EREG] != "")) {
2668
-          if (ereg($p_params[ARCHIVE_ZIP_PARAM_BY_EREG],
2669
-                   $v_header_list[$v_nb_extracted]['stored_filename'])) {
2670
-              $v_found = true;
2671
-          }
2672
-      }
2673
-
2674
-      // ----- Look for extract by preg rule
2675
-      elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_PREG]))
2668
+            if (ereg($p_params[ARCHIVE_ZIP_PARAM_BY_EREG],
2669
+                    $v_header_list[$v_nb_extracted]['stored_filename'])) {
2670
+                $v_found = true;
2671
+            }
2672
+        }
2673
+
2674
+        // ----- Look for extract by preg rule
2675
+        elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_PREG]))
2676 2676
                && ($p_params[ARCHIVE_ZIP_PARAM_BY_PREG] != "")) {
2677
-          if (preg_match($p_params[ARCHIVE_ZIP_PARAM_BY_PREG],
2678
-                         $v_header_list[$v_nb_extracted]['stored_filename'])) {
2679
-              $v_found = true;
2680
-          }
2681
-      }
2682
-
2683
-      // ----- Look for extract by index rule
2684
-      elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX]))
2677
+            if (preg_match($p_params[ARCHIVE_ZIP_PARAM_BY_PREG],
2678
+                            $v_header_list[$v_nb_extracted]['stored_filename'])) {
2679
+                $v_found = true;
2680
+            }
2681
+        }
2682
+
2683
+        // ----- Look for extract by index rule
2684
+        elseif ((isset($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX]))
2685 2685
                && ($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX] != 0)) {
2686 2686
 
2687
-          // ----- Look if the index is in the list
2688
-          for ($j=$j_start;
2689
-               ($j<sizeof($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX]))
2687
+            // ----- Look if the index is in the list
2688
+            for ($j=$j_start;
2689
+                ($j<sizeof($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX]))
2690 2690
                  && (!$v_found);
2691
-               $j++) {
2692
-              if (($i>=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['start'])
2691
+                $j++) {
2692
+                if (($i>=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['start'])
2693 2693
                   && ($i<=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['end'])) {
2694
-                  $v_found = true;
2695
-              }
2696
-              if ($i>=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['end']) {
2697
-                  $j_start = $j+1;
2698
-              }
2699
-
2700
-              if ($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['start']>$i) {
2701
-                  break;
2702
-              }
2703
-          }
2704
-      }
2705
-
2706
-      // ----- Look for deletion
2707
-      if ($v_found) {
2708
-          unset($v_header_list[$v_nb_extracted]);
2709
-      } else {
2710
-          $v_nb_extracted++;
2711
-      }
2712
-      }
2694
+                    $v_found = true;
2695
+                }
2696
+                if ($i>=$p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['end']) {
2697
+                    $j_start = $j+1;
2698
+                }
2699
+
2700
+                if ($p_params[ARCHIVE_ZIP_PARAM_BY_INDEX][$j]['start']>$i) {
2701
+                    break;
2702
+                }
2703
+            }
2704
+        }
2705
+
2706
+        // ----- Look for deletion
2707
+        if ($v_found) {
2708
+            unset($v_header_list[$v_nb_extracted]);
2709
+        } else {
2710
+            $v_nb_extracted++;
2711
+        }
2712
+        }
2713 2713
 
2714 2714
     // ----- Look if something need to be deleted
2715 2715
     if ($v_nb_extracted > 0) {
2716 2716
 
2717 2717
         // ----- Creates a temporay file
2718 2718
         $v_zip_temp_name = ARCHIVE_ZIP_TEMPORARY_DIR.uniqid('archive_zip-')
2719
-                           .'.tmp';
2719
+                            .'.tmp';
2720 2720
 
2721 2721
         // ----- Creates a temporary zip archive
2722 2722
         $v_temp_zip = new Archive_Zip($v_zip_temp_name);
@@ -2741,7 +2741,7 @@  discard block
 block discarded – undo
2741 2741
                 @unlink($v_zip_temp_name);
2742 2742
 
2743 2743
                 $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_ARCHIVE_ZIP,
2744
-                                 'Invalid archive size');
2744
+                                    'Invalid archive size');
2745 2745
                 return Archive_Zip::errorCode();
2746 2746
             }
2747 2747
 
@@ -2768,8 +2768,8 @@  discard block
 block discarded – undo
2768 2768
 
2769 2769
             // ----- Read/write the data block
2770 2770
             $v_result = $this->_tool_CopyBlock($this->_zip_fd,
2771
-                                               $v_temp_zip->_zip_fd,
2772
-                                       $v_header_list[$i]['compressed_size']);
2771
+                                                $v_temp_zip->_zip_fd,
2772
+                                        $v_header_list[$i]['compressed_size']);
2773 2773
             if ($v_result != 1) {
2774 2774
                 // ----- Clean
2775 2775
                 $this->_closeFd();
@@ -2798,7 +2798,7 @@  discard block
 block discarded – undo
2798 2798
 
2799 2799
             // ----- Transform the header to a 'usable' info
2800 2800
             $v_temp_zip->_convertHeader2FileInfo($v_header_list[$i],
2801
-                                                 $p_result_list[$i]);
2801
+                                                    $p_result_list[$i]);
2802 2802
         }
2803 2803
 
2804 2804
 
@@ -2810,8 +2810,8 @@  discard block
 block discarded – undo
2810 2810
 
2811 2811
         // ----- Create the central dir footer
2812 2812
         $v_result = $v_temp_zip->_writeCentralHeader(sizeof($v_header_list),
2813
-                                                     $v_size, $v_offset,
2814
-                                                     $v_comment);
2813
+                                                        $v_size, $v_offset,
2814
+                                                        $v_comment);
2815 2815
         if ($v_result != 1) {
2816 2816
             // ----- Clean
2817 2817
             unset($v_header_list);
@@ -2841,30 +2841,30 @@  discard block
 block discarded – undo
2841 2841
 
2842 2842
     // ----- Return
2843 2843
     return $v_result;
2844
-  }
2845
-  // ---------------------------------------------------------------------------
2846
-
2847
-  // ---------------------------------------------------------------------------
2848
-  // Function : _dirCheck()
2849
-  // Description :
2850
-  //   Check if a directory exists, if not it creates it and all the parents directory
2851
-  //   which may be useful.
2852
-  // Parameters :
2853
-  //   $p_dir : Directory path to check.
2854
-  // Return Values :
2855
-  //    1 : OK
2856
-  //   -1 : Unable to create directory
2857
-  // ---------------------------------------------------------------------------
2858
-  /**
2859
-  * Archive_Zip::_dirCheck()
2860
-  *
2861
-  * { Description }
2862
-  *
2863
-  * @param [type] $p_is_dir
2864
-  */
2865
-  public function _dirCheck($p_dir, $p_is_dir=false)
2866
-  {
2867
-      $v_result = 1;
2844
+    }
2845
+    // ---------------------------------------------------------------------------
2846
+
2847
+    // ---------------------------------------------------------------------------
2848
+    // Function : _dirCheck()
2849
+    // Description :
2850
+    //   Check if a directory exists, if not it creates it and all the parents directory
2851
+    //   which may be useful.
2852
+    // Parameters :
2853
+    //   $p_dir : Directory path to check.
2854
+    // Return Values :
2855
+    //    1 : OK
2856
+    //   -1 : Unable to create directory
2857
+    // ---------------------------------------------------------------------------
2858
+    /**
2859
+     * Archive_Zip::_dirCheck()
2860
+     *
2861
+     * { Description }
2862
+     *
2863
+     * @param [type] $p_is_dir
2864
+     */
2865
+    public function _dirCheck($p_dir, $p_is_dir=false)
2866
+    {
2867
+        $v_result = 1;
2868 2868
 
2869 2869
     // ----- Remove the final '/'
2870 2870
     if (($p_is_dir) && (substr($p_dir, -1)=='/')) {
@@ -2882,52 +2882,52 @@  discard block
 block discarded – undo
2882 2882
     // ----- Just a check
2883 2883
     if ($p_parent_dir != $p_dir) {
2884 2884
         // ----- Look for parent directory
2885
-      if ($p_parent_dir != "") {
2886
-          if (($v_result = $this->_dirCheck($p_parent_dir)) != 1) {
2887
-              return $v_result;
2888
-          }
2889
-      }
2885
+        if ($p_parent_dir != "") {
2886
+            if (($v_result = $this->_dirCheck($p_parent_dir)) != 1) {
2887
+                return $v_result;
2888
+            }
2889
+        }
2890 2890
     }
2891 2891
 
2892 2892
     // ----- Create the directory
2893 2893
     if (!@mkdir($p_dir, 0777)) {
2894 2894
         $this->_errorLog(ARCHIVE_ZIP_ERR_DIR_CREATE_FAIL,
2895
-                       "Unable to create directory '$p_dir'");
2895
+                        "Unable to create directory '$p_dir'");
2896 2896
         return Archive_Zip::errorCode();
2897 2897
     }
2898 2898
 
2899 2899
     // ----- Return
2900 2900
     return $v_result;
2901
-  }
2902
-  // ---------------------------------------------------------------------------
2903
-
2904
-  // ---------------------------------------------------------------------------
2905
-  // Function : _merge()
2906
-  // Description :
2907
-  //   If $p_archive_to_add does not exist, the function exit with a success result.
2908
-  // Parameters :
2909
-  // Return Values :
2910
-  // ---------------------------------------------------------------------------
2911
-  /**
2912
-  * Archive_Zip::_merge()
2913
-  *
2914
-  * { Description }
2915
-  *
2916
-  */
2917
-  public function _merge(&$p_archive_to_add)
2918
-  {
2919
-      $v_result=1;
2901
+    }
2902
+    // ---------------------------------------------------------------------------
2903
+
2904
+    // ---------------------------------------------------------------------------
2905
+    // Function : _merge()
2906
+    // Description :
2907
+    //   If $p_archive_to_add does not exist, the function exit with a success result.
2908
+    // Parameters :
2909
+    // Return Values :
2910
+    // ---------------------------------------------------------------------------
2911
+    /**
2912
+     * Archive_Zip::_merge()
2913
+     *
2914
+     * { Description }
2915
+     *
2916
+     */
2917
+    public function _merge(&$p_archive_to_add)
2918
+    {
2919
+        $v_result=1;
2920 2920
 
2921 2921
     // ----- Look if the archive_to_add exists
2922 2922
     if (!is_file($p_archive_to_add->_zipname)) {
2923 2923
         // ----- Nothing to merge, so merge is a success
2924
-      return 1;
2924
+        return 1;
2925 2925
     }
2926 2926
 
2927 2927
     // ----- Look if the archive exists
2928 2928
     if (!is_file($this->_zipname)) {
2929 2929
         // ----- Do a duplicate
2930
-      $v_result = $this->_duplicate($p_archive_to_add->_zipname);
2930
+        $v_result = $this->_duplicate($p_archive_to_add->_zipname);
2931 2931
 
2932 2932
         return $v_result;
2933 2933
     }
@@ -2939,10 +2939,10 @@  discard block
 block discarded – undo
2939 2939
 
2940 2940
     // ----- Read the central directory informations
2941 2941
     $v_central_dir = array();
2942
-      if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
2943
-          $this->_closeFd();
2944
-          return $v_result;
2945
-      }
2942
+        if (($v_result = $this->_readEndCentralDir($v_central_dir)) != 1) {
2943
+            $this->_closeFd();
2944
+            return $v_result;
2945
+        }
2946 2946
 
2947 2947
     // ----- Go to beginning of File
2948 2948
     @rewind($this->_zip_fd);
@@ -2955,12 +2955,12 @@  discard block
 block discarded – undo
2955 2955
 
2956 2956
     // ----- Read the central directory informations
2957 2957
     $v_central_dir_to_add = array();
2958
-      $v_result = $p_archive_to_add->_readEndCentralDir($v_central_dir_to_add);
2959
-      if ($v_result != 1) {
2960
-          $this->_closeFd();
2961
-          $p_archive_to_add->_closeFd();
2962
-          return $v_result;
2963
-      }
2958
+        $v_result = $p_archive_to_add->_readEndCentralDir($v_central_dir_to_add);
2959
+        if ($v_result != 1) {
2960
+            $this->_closeFd();
2961
+            $p_archive_to_add->_closeFd();
2962
+            return $v_result;
2963
+        }
2964 2964
 
2965 2965
     // ----- Go to beginning of File
2966 2966
     @rewind($p_archive_to_add->_zip_fd);
@@ -2973,8 +2973,8 @@  discard block
 block discarded – undo
2973 2973
         $this->_closeFd();
2974 2974
         $p_archive_to_add->_closeFd();
2975 2975
         $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL,
2976
-                       'Unable to open temporary file \''
2977
-                       .$v_zip_temp_name.'\' in binary write mode');
2976
+                        'Unable to open temporary file \''
2977
+                        .$v_zip_temp_name.'\' in binary write mode');
2978 2978
         return Archive_Zip::errorCode();
2979 2979
     }
2980 2980
 
@@ -2982,46 +2982,46 @@  discard block
 block discarded – undo
2982 2982
     // TBC : Here I should better append the file and go back to erase the
2983 2983
     // central dir
2984 2984
     $v_size = $v_central_dir['offset'];
2985
-      while ($v_size != 0) {
2986
-          $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
2985
+        while ($v_size != 0) {
2986
+            $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
2987 2987
                       ? $v_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
2988
-          $v_buffer = fread($this->_zip_fd, $v_read_size);
2989
-          @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
2990
-          $v_size -= $v_read_size;
2991
-      }
2988
+            $v_buffer = fread($this->_zip_fd, $v_read_size);
2989
+            @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
2990
+            $v_size -= $v_read_size;
2991
+        }
2992 2992
 
2993 2993
     // ----- Copy the files from the archive_to_add into the temporary file
2994 2994
     $v_size = $v_central_dir_to_add['offset'];
2995
-      while ($v_size != 0) {
2996
-          $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
2995
+        while ($v_size != 0) {
2996
+            $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
2997 2997
                       ? $v_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
2998
-          $v_buffer = fread($p_archive_to_add->_zip_fd, $v_read_size);
2999
-          @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
3000
-          $v_size -= $v_read_size;
3001
-      }
2998
+            $v_buffer = fread($p_archive_to_add->_zip_fd, $v_read_size);
2999
+            @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
3000
+            $v_size -= $v_read_size;
3001
+        }
3002 3002
 
3003 3003
     // ----- Store the offset of the central dir
3004 3004
     $v_offset = @ftell($v_zip_temp_fd);
3005 3005
 
3006 3006
     // ----- Copy the block of file headers from the old archive
3007 3007
     $v_size = $v_central_dir['size'];
3008
-      while ($v_size != 0) {
3009
-          $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3008
+        while ($v_size != 0) {
3009
+            $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3010 3010
                       ? $v_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
3011
-          $v_buffer = @fread($this->_zip_fd, $v_read_size);
3012
-          @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
3013
-          $v_size -= $v_read_size;
3014
-      }
3011
+            $v_buffer = @fread($this->_zip_fd, $v_read_size);
3012
+            @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
3013
+            $v_size -= $v_read_size;
3014
+        }
3015 3015
 
3016 3016
     // ----- Copy the block of file headers from the archive_to_add
3017 3017
     $v_size = $v_central_dir_to_add['size'];
3018
-      while ($v_size != 0) {
3019
-          $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3018
+        while ($v_size != 0) {
3019
+            $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3020 3020
                       ? $v_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
3021
-          $v_buffer = @fread($p_archive_to_add->_zip_fd, $v_read_size);
3022
-          @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
3023
-          $v_size -= $v_read_size;
3024
-      }
3021
+            $v_buffer = @fread($p_archive_to_add->_zip_fd, $v_read_size);
3022
+            @fwrite($v_zip_temp_fd, $v_buffer, $v_read_size);
3023
+            $v_size -= $v_read_size;
3024
+        }
3025 3025
 
3026 3026
     // ----- Zip file comment
3027 3027
     // TBC : I should merge the two comments
@@ -3034,8 +3034,8 @@  discard block
 block discarded – undo
3034 3034
     // Here is a trick : I swap the temporary fd with the zip fd, in order to use
3035 3035
     // the following methods on the temporary fil and not the real archive fd
3036 3036
     $v_swap = $this->_zip_fd;
3037
-      $this->_zip_fd = $v_zip_temp_fd;
3038
-      $v_zip_temp_fd = $v_swap;
3037
+        $this->_zip_fd = $v_zip_temp_fd;
3038
+        $v_zip_temp_fd = $v_swap;
3039 3039
 
3040 3040
     // ----- Create the central dir footer
3041 3041
     if (($v_result = $this->_writeCentralHeader($v_central_dir['entries']
@@ -3047,21 +3047,21 @@  discard block
 block discarded – undo
3047 3047
         @fclose($v_zip_temp_fd);
3048 3048
         $this->_zip_fd = null;
3049 3049
 
3050
-      // ----- Reset the file list
3051
-      unset($v_header_list);
3050
+        // ----- Reset the file list
3051
+        unset($v_header_list);
3052 3052
 
3053
-      // ----- Return
3054
-      return $v_result;
3053
+        // ----- Return
3054
+        return $v_result;
3055 3055
     }
3056 3056
 
3057 3057
     // ----- Swap back the file descriptor
3058 3058
     $v_swap = $this->_zip_fd;
3059
-      $this->_zip_fd = $v_zip_temp_fd;
3060
-      $v_zip_temp_fd = $v_swap;
3059
+        $this->_zip_fd = $v_zip_temp_fd;
3060
+        $v_zip_temp_fd = $v_swap;
3061 3061
 
3062 3062
     // ----- Close
3063 3063
     $this->_closeFd();
3064
-      $p_archive_to_add->_closeFd();
3064
+        $p_archive_to_add->_closeFd();
3065 3065
 
3066 3066
     // ----- Close the temporary file
3067 3067
     @fclose($v_zip_temp_fd);
@@ -3077,47 +3077,47 @@  discard block
 block discarded – undo
3077 3077
 
3078 3078
     // ----- Return
3079 3079
     return $v_result;
3080
-  }
3081
-  // ---------------------------------------------------------------------------
3082
-
3083
-  // ---------------------------------------------------------------------------
3084
-  // Function : _duplicate()
3085
-  // Description :
3086
-  // Parameters :
3087
-  // Return Values :
3088
-  // ---------------------------------------------------------------------------
3089
-  /**
3090
-  * Archive_Zip::_duplicate()
3091
-  *
3092
-  * { Description }
3093
-  *
3094
-  */
3095
-  public function _duplicate($p_archive_filename)
3096
-  {
3097
-      $v_result=1;
3080
+    }
3081
+    // ---------------------------------------------------------------------------
3082
+
3083
+    // ---------------------------------------------------------------------------
3084
+    // Function : _duplicate()
3085
+    // Description :
3086
+    // Parameters :
3087
+    // Return Values :
3088
+    // ---------------------------------------------------------------------------
3089
+    /**
3090
+     * Archive_Zip::_duplicate()
3091
+     *
3092
+     * { Description }
3093
+     *
3094
+     */
3095
+    public function _duplicate($p_archive_filename)
3096
+    {
3097
+        $v_result=1;
3098 3098
 
3099 3099
     // ----- Look if the $p_archive_filename exists
3100 3100
     if (!is_file($p_archive_filename)) {
3101 3101
 
3102
-      // ----- Nothing to duplicate, so duplicate is a success.
3103
-      $v_result = 1;
3102
+        // ----- Nothing to duplicate, so duplicate is a success.
3103
+        $v_result = 1;
3104 3104
 
3105
-      // ----- Return
3106
-      return $v_result;
3105
+        // ----- Return
3106
+        return $v_result;
3107 3107
     }
3108 3108
 
3109 3109
     // ----- Open the zip file
3110 3110
     if (($v_result=$this->_openFd('wb')) != 1) {
3111 3111
         // ----- Return
3112
-      return $v_result;
3112
+        return $v_result;
3113 3113
     }
3114 3114
 
3115 3115
     // ----- Open the temporary file in write mode
3116 3116
     if (($v_zip_temp_fd = @fopen($p_archive_filename, 'rb')) == 0) {
3117 3117
         $this->_closeFd();
3118 3118
         $this->_errorLog(ARCHIVE_ZIP_ERR_READ_OPEN_FAIL,
3119
-                       'Unable to open archive file \''
3120
-                       .$p_archive_filename.'\' in binary write mode');
3119
+                        'Unable to open archive file \''
3120
+                        .$p_archive_filename.'\' in binary write mode');
3121 3121
         return Archive_Zip::errorCode();
3122 3122
     }
3123 3123
 
@@ -3125,13 +3125,13 @@  discard block
 block discarded – undo
3125 3125
     // TBC : Here I should better append the file and go back to erase the
3126 3126
     // central dir
3127 3127
     $v_size = filesize($p_archive_filename);
3128
-      while ($v_size != 0) {
3129
-          $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3128
+        while ($v_size != 0) {
3129
+            $v_read_size = ($v_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3130 3130
                       ? $v_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
3131
-          $v_buffer = fread($v_zip_temp_fd, $v_read_size);
3132
-          @fwrite($this->_zip_fd, $v_buffer, $v_read_size);
3133
-          $v_size -= $v_read_size;
3134
-      }
3131
+            $v_buffer = fread($v_zip_temp_fd, $v_read_size);
3132
+            @fwrite($this->_zip_fd, $v_buffer, $v_read_size);
3133
+            $v_size -= $v_read_size;
3134
+        }
3135 3135
 
3136 3136
     // ----- Close
3137 3137
     $this->_closeFd();
@@ -3139,25 +3139,25 @@  discard block
 block discarded – undo
3139 3139
     // ----- Close the temporary file
3140 3140
     @fclose($v_zip_temp_fd);
3141 3141
 
3142
-      return $v_result;
3143
-  }
3144
-  // ---------------------------------------------------------------------------
3145
-
3146
-  /**
3147
-  * Archive_Zip::_check_parameters()
3148
-  *
3149
-  * { Description }
3150
-  *
3151
-  * @param integer $p_error_code
3152
-  * @param string $p_error_string
3153
-  */
3154
-  public function _check_parameters(&$p_params, $p_default)
3155
-  {
3142
+        return $v_result;
3143
+    }
3144
+    // ---------------------------------------------------------------------------
3145
+
3146
+    /**
3147
+     * Archive_Zip::_check_parameters()
3148
+     *
3149
+     * { Description }
3150
+     *
3151
+     * @param integer $p_error_code
3152
+     * @param string $p_error_string
3153
+     */
3154
+    public function _check_parameters(&$p_params, $p_default)
3155
+    {
3156 3156
 
3157 3157
     // ----- Check that param is an array
3158 3158
     if (!is_array($p_params)) {
3159 3159
         $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAMETER,
3160
-                         'Unsupported parameter, waiting for an array');
3160
+                            'Unsupported parameter, waiting for an array');
3161 3161
         return Archive_Zip::errorCode();
3162 3162
     }
3163 3163
 
@@ -3165,7 +3165,7 @@  discard block
 block discarded – undo
3165 3165
     for (reset($p_params); list($v_key, $v_value) = each($p_params);) {
3166 3166
         if (!isset($p_default[$v_key])) {
3167 3167
             $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAMETER,
3168
-                             'Unsupported parameter with key \''.$v_key.'\'');
3168
+                                'Unsupported parameter with key \''.$v_key.'\'');
3169 3169
 
3170 3170
             return Archive_Zip::errorCode();
3171 3171
         }
@@ -3180,170 +3180,170 @@  discard block
 block discarded – undo
3180 3180
 
3181 3181
     // ----- Check specific parameters
3182 3182
     $v_callback_list = array('callback_pre_add', 'callback_post_add',
3183
-                              'callback_pre_extract', 'callback_post_extract');
3184
-      for ($i=0; $i<sizeof($v_callback_list); $i++) {
3185
-          $v_key=$v_callback_list[$i];
3186
-          if ((isset($p_params[$v_key])) && ($p_params[$v_key] != '')) {
3187
-              if (!function_exists($p_params[$v_key])) {
3188
-                  $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAM_VALUE,
3189
-                                 "Callback '".$p_params[$v_key]
3190
-                                 ."()' is not an existing function for "
3191
-                                 ."parameter '".$v_key."'");
3192
-                  return Archive_Zip::errorCode();
3193
-              }
3194
-          }
3195
-      }
3196
-
3197
-      return(1);
3198
-  }
3199
-  // ---------------------------------------------------------------------------
3200
-
3201
-  // ---------------------------------------------------------------------------
3202
-  // Function : _errorLog()
3203
-  // Description :
3204
-  // Parameters :
3205
-  // ---------------------------------------------------------------------------
3206
-  /**
3207
-  * Archive_Zip::_errorLog()
3208
-  *
3209
-  * { Description }
3210
-  *
3211
-  * @param integer $p_error_code
3212
-  * @param string $p_error_string
3213
-  */
3214
-  public function _errorLog($p_error_code=0, $p_error_string='')
3215
-  {
3216
-      $this->_error_code = $p_error_code;
3217
-      $this->_error_string = $p_error_string;
3218
-  }
3219
-  // ---------------------------------------------------------------------------
3220
-
3221
-  // ---------------------------------------------------------------------------
3222
-  // Function : _errorReset()
3223
-  // Description :
3224
-  // Parameters :
3225
-  // ---------------------------------------------------------------------------
3226
-  /**
3227
-  * Archive_Zip::_errorReset()
3228
-  *
3229
-  * { Description }
3230
-  *
3231
-  */
3232
-  public function _errorReset()
3233
-  {
3234
-      $this->_error_code = 1;
3235
-      $this->_error_string = '';
3236
-  }
3237
-  // ---------------------------------------------------------------------------
3238
-
3239
-  // ---------------------------------------------------------------------------
3240
-  // Function : $this->_tool_PathReduction()
3241
-  // Description :
3242
-  // Parameters :
3243
-  // Return Values :
3244
-  // ---------------------------------------------------------------------------
3245
-  /**
3246
-  * _tool_PathReduction()
3247
-  *
3248
-  * { Description }
3249
-  *
3250
-  */
3251
-  public function _tool_PathReduction($p_dir)
3252
-  {
3253
-      $v_result = "";
3183
+                                'callback_pre_extract', 'callback_post_extract');
3184
+        for ($i=0; $i<sizeof($v_callback_list); $i++) {
3185
+            $v_key=$v_callback_list[$i];
3186
+            if ((isset($p_params[$v_key])) && ($p_params[$v_key] != '')) {
3187
+                if (!function_exists($p_params[$v_key])) {
3188
+                    $this->_errorLog(ARCHIVE_ZIP_ERR_INVALID_PARAM_VALUE,
3189
+                                    "Callback '".$p_params[$v_key]
3190
+                                    ."()' is not an existing function for "
3191
+                                    ."parameter '".$v_key."'");
3192
+                    return Archive_Zip::errorCode();
3193
+                }
3194
+            }
3195
+        }
3196
+
3197
+        return(1);
3198
+    }
3199
+    // ---------------------------------------------------------------------------
3200
+
3201
+    // ---------------------------------------------------------------------------
3202
+    // Function : _errorLog()
3203
+    // Description :
3204
+    // Parameters :
3205
+    // ---------------------------------------------------------------------------
3206
+    /**
3207
+     * Archive_Zip::_errorLog()
3208
+     *
3209
+     * { Description }
3210
+     *
3211
+     * @param integer $p_error_code
3212
+     * @param string $p_error_string
3213
+     */
3214
+    public function _errorLog($p_error_code=0, $p_error_string='')
3215
+    {
3216
+        $this->_error_code = $p_error_code;
3217
+        $this->_error_string = $p_error_string;
3218
+    }
3219
+    // ---------------------------------------------------------------------------
3220
+
3221
+    // ---------------------------------------------------------------------------
3222
+    // Function : _errorReset()
3223
+    // Description :
3224
+    // Parameters :
3225
+    // ---------------------------------------------------------------------------
3226
+    /**
3227
+     * Archive_Zip::_errorReset()
3228
+     *
3229
+     * { Description }
3230
+     *
3231
+     */
3232
+    public function _errorReset()
3233
+    {
3234
+        $this->_error_code = 1;
3235
+        $this->_error_string = '';
3236
+    }
3237
+    // ---------------------------------------------------------------------------
3238
+
3239
+    // ---------------------------------------------------------------------------
3240
+    // Function : $this->_tool_PathReduction()
3241
+    // Description :
3242
+    // Parameters :
3243
+    // Return Values :
3244
+    // ---------------------------------------------------------------------------
3245
+    /**
3246
+     * _tool_PathReduction()
3247
+     *
3248
+     * { Description }
3249
+     *
3250
+     */
3251
+    public function _tool_PathReduction($p_dir)
3252
+    {
3253
+        $v_result = "";
3254 3254
 
3255 3255
     // ----- Look for not empty path
3256 3256
     if ($p_dir != "") {
3257 3257
         // ----- Explode path by directory names
3258
-      $v_list = explode("/", $p_dir);
3258
+        $v_list = explode("/", $p_dir);
3259 3259
 
3260
-      // ----- Study directories from last to first
3261
-      for ($i=sizeof($v_list)-1; $i>=0; $i--) {
3262
-          // ----- Look for current path
3260
+        // ----- Study directories from last to first
3261
+        for ($i=sizeof($v_list)-1; $i>=0; $i--) {
3262
+            // ----- Look for current path
3263 3263
         if ($v_list[$i] == ".") {
3264 3264
             // ----- Ignore this directory
3265
-          // Should be the first $i=0, but no check is done
3265
+            // Should be the first $i=0, but no check is done
3266 3266
         } elseif ($v_list[$i] == "..") {
3267 3267
             // ----- Ignore it and ignore the $i-1
3268
-          $i--;
3268
+            $i--;
3269 3269
         } elseif (($v_list[$i] == "") && ($i!=(sizeof($v_list)-1)) && ($i!=0)) {
3270 3270
             // ----- Ignore only the double '//' in path,
3271
-          // but not the first and last '/'
3271
+            // but not the first and last '/'
3272 3272
         } else {
3273 3273
             $v_result = $v_list[$i].($i!=(sizeof($v_list)-1)?"/".$v_result:"");
3274 3274
         }
3275
-      }
3275
+        }
3276 3276
     }
3277 3277
 
3278 3278
     // ----- Return
3279 3279
     return $v_result;
3280
-  }
3281
-  // ---------------------------------------------------------------------------
3282
-
3283
-  // ---------------------------------------------------------------------------
3284
-  // Function : $this->_tool_PathInclusion()
3285
-  // Description :
3286
-  //   This function indicates if the path $p_path is under the $p_dir tree. Or,
3287
-  //   said in an other way, if the file or sub-dir $p_path is inside the dir
3288
-  //   $p_dir.
3289
-  //   The function indicates also if the path is exactly the same as the dir.
3290
-  //   This function supports path with duplicated '/' like '//', but does not
3291
-  //   support '.' or '..' statements.
3292
-  // Parameters :
3293
-  // Return Values :
3294
-  //   0 if $p_path is not inside directory $p_dir
3295
-  //   1 if $p_path is inside directory $p_dir
3296
-  //   2 if $p_path is exactly the same as $p_dir
3297
-  // ---------------------------------------------------------------------------
3298
-  /**
3299
-  * _tool_PathInclusion()
3300
-  *
3301
-  * { Description }
3302
-  *
3303
-  */
3304
-  public function _tool_PathInclusion($p_dir, $p_path)
3305
-  {
3306
-      $v_result = 1;
3280
+    }
3281
+    // ---------------------------------------------------------------------------
3282
+
3283
+    // ---------------------------------------------------------------------------
3284
+    // Function : $this->_tool_PathInclusion()
3285
+    // Description :
3286
+    //   This function indicates if the path $p_path is under the $p_dir tree. Or,
3287
+    //   said in an other way, if the file or sub-dir $p_path is inside the dir
3288
+    //   $p_dir.
3289
+    //   The function indicates also if the path is exactly the same as the dir.
3290
+    //   This function supports path with duplicated '/' like '//', but does not
3291
+    //   support '.' or '..' statements.
3292
+    // Parameters :
3293
+    // Return Values :
3294
+    //   0 if $p_path is not inside directory $p_dir
3295
+    //   1 if $p_path is inside directory $p_dir
3296
+    //   2 if $p_path is exactly the same as $p_dir
3297
+    // ---------------------------------------------------------------------------
3298
+    /**
3299
+     * _tool_PathInclusion()
3300
+     *
3301
+     * { Description }
3302
+     *
3303
+     */
3304
+    public function _tool_PathInclusion($p_dir, $p_path)
3305
+    {
3306
+        $v_result = 1;
3307 3307
 
3308 3308
     // ----- Explode dir and path by directory separator
3309 3309
     $v_list_dir = explode("/", $p_dir);
3310
-      $v_list_dir_size = sizeof($v_list_dir);
3311
-      $v_list_path = explode("/", $p_path);
3312
-      $v_list_path_size = sizeof($v_list_path);
3310
+        $v_list_dir_size = sizeof($v_list_dir);
3311
+        $v_list_path = explode("/", $p_path);
3312
+        $v_list_path_size = sizeof($v_list_path);
3313 3313
 
3314 3314
     // ----- Study directories paths
3315 3315
     $i = 0;
3316
-      $j = 0;
3317
-      while (($i < $v_list_dir_size) && ($j < $v_list_path_size) && ($v_result)) {
3318
-
3319
-      // ----- Look for empty dir (path reduction)
3320
-      if ($v_list_dir[$i] == '') {
3321
-          $i++;
3322
-          continue;
3323
-      }
3324
-          if ($v_list_path[$j] == '') {
3325
-              $j++;
3326
-              continue;
3327
-          }
3328
-
3329
-      // ----- Compare the items
3330
-      if (($v_list_dir[$i] != $v_list_path[$j])
3316
+        $j = 0;
3317
+        while (($i < $v_list_dir_size) && ($j < $v_list_path_size) && ($v_result)) {
3318
+
3319
+        // ----- Look for empty dir (path reduction)
3320
+        if ($v_list_dir[$i] == '') {
3321
+            $i++;
3322
+            continue;
3323
+        }
3324
+            if ($v_list_path[$j] == '') {
3325
+                $j++;
3326
+                continue;
3327
+            }
3328
+
3329
+        // ----- Compare the items
3330
+        if (($v_list_dir[$i] != $v_list_path[$j])
3331 3331
           && ($v_list_dir[$i] != '')
3332 3332
           && ($v_list_path[$j] != '')) {
3333
-          $v_result = 0;
3334
-      }
3333
+            $v_result = 0;
3334
+        }
3335 3335
 
3336
-      // ----- Next items
3337
-      $i++;
3338
-          $j++;
3339
-      }
3336
+        // ----- Next items
3337
+        $i++;
3338
+            $j++;
3339
+        }
3340 3340
 
3341 3341
     // ----- Look if everything seems to be the same
3342 3342
     if ($v_result) {
3343 3343
         // ----- Skip all the empty items
3344
-      while (($j < $v_list_path_size) && ($v_list_path[$j] == '')) {
3345
-          $j++;
3346
-      }
3344
+        while (($j < $v_list_path_size) && ($v_list_path[$j] == '')) {
3345
+            $j++;
3346
+        }
3347 3347
         while (($i < $v_list_dir_size) && ($v_list_dir[$i] == '')) {
3348 3348
             $i++;
3349 3349
         }
@@ -3359,142 +3359,142 @@  discard block
 block discarded – undo
3359 3359
 
3360 3360
     // ----- Return
3361 3361
     return $v_result;
3362
-  }
3363
-  // ---------------------------------------------------------------------------
3364
-
3365
-  // ---------------------------------------------------------------------------
3366
-  // Function : $this->_tool_CopyBlock()
3367
-  // Description :
3368
-  // Parameters :
3369
-  //   $p_mode : read/write compression mode
3370
-  //             0 : src & dest normal
3371
-  //             1 : src gzip, dest normal
3372
-  //             2 : src normal, dest gzip
3373
-  //             3 : src & dest gzip
3374
-  // Return Values :
3375
-  // ---------------------------------------------------------------------------
3376
-  /**
3377
-  * _tool_CopyBlock()
3378
-  *
3379
-  * { Description }
3380
-  *
3381
-  * @param integer $p_mode
3382
-  */
3383
-  public function _tool_CopyBlock($p_src, $p_dest, $p_size, $p_mode=0)
3384
-  {
3385
-      $v_result = 1;
3386
-
3387
-      if ($p_mode==0) {
3388
-          while ($p_size != 0) {
3389
-              $v_read_size = ($p_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3362
+    }
3363
+    // ---------------------------------------------------------------------------
3364
+
3365
+    // ---------------------------------------------------------------------------
3366
+    // Function : $this->_tool_CopyBlock()
3367
+    // Description :
3368
+    // Parameters :
3369
+    //   $p_mode : read/write compression mode
3370
+    //             0 : src & dest normal
3371
+    //             1 : src gzip, dest normal
3372
+    //             2 : src normal, dest gzip
3373
+    //             3 : src & dest gzip
3374
+    // Return Values :
3375
+    // ---------------------------------------------------------------------------
3376
+    /**
3377
+     * _tool_CopyBlock()
3378
+     *
3379
+     * { Description }
3380
+     *
3381
+     * @param integer $p_mode
3382
+     */
3383
+    public function _tool_CopyBlock($p_src, $p_dest, $p_size, $p_mode=0)
3384
+    {
3385
+        $v_result = 1;
3386
+
3387
+        if ($p_mode==0) {
3388
+            while ($p_size != 0) {
3389
+                $v_read_size = ($p_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3390 3390
                         ? $p_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
3391
-              $v_buffer = @fread($p_src, $v_read_size);
3392
-              @fwrite($p_dest, $v_buffer, $v_read_size);
3393
-              $p_size -= $v_read_size;
3394
-          }
3395
-      } elseif ($p_mode==1) {
3396
-          while ($p_size != 0) {
3397
-              $v_read_size = ($p_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3391
+                $v_buffer = @fread($p_src, $v_read_size);
3392
+                @fwrite($p_dest, $v_buffer, $v_read_size);
3393
+                $p_size -= $v_read_size;
3394
+            }
3395
+        } elseif ($p_mode==1) {
3396
+            while ($p_size != 0) {
3397
+                $v_read_size = ($p_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3398 3398
                         ? $p_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
3399
-              $v_buffer = @gzread($p_src, $v_read_size);
3400
-              @fwrite($p_dest, $v_buffer, $v_read_size);
3401
-              $p_size -= $v_read_size;
3402
-          }
3403
-      } elseif ($p_mode==2) {
3404
-          while ($p_size != 0) {
3405
-              $v_read_size = ($p_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3399
+                $v_buffer = @gzread($p_src, $v_read_size);
3400
+                @fwrite($p_dest, $v_buffer, $v_read_size);
3401
+                $p_size -= $v_read_size;
3402
+            }
3403
+        } elseif ($p_mode==2) {
3404
+            while ($p_size != 0) {
3405
+                $v_read_size = ($p_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3406 3406
                         ? $p_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
3407
-              $v_buffer = @fread($p_src, $v_read_size);
3408
-              @gzwrite($p_dest, $v_buffer, $v_read_size);
3409
-              $p_size -= $v_read_size;
3410
-          }
3411
-      } elseif ($p_mode==3) {
3412
-          while ($p_size != 0) {
3413
-              $v_read_size = ($p_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3407
+                $v_buffer = @fread($p_src, $v_read_size);
3408
+                @gzwrite($p_dest, $v_buffer, $v_read_size);
3409
+                $p_size -= $v_read_size;
3410
+            }
3411
+        } elseif ($p_mode==3) {
3412
+            while ($p_size != 0) {
3413
+                $v_read_size = ($p_size < ARCHIVE_ZIP_READ_BLOCK_SIZE
3414 3414
                         ? $p_size : ARCHIVE_ZIP_READ_BLOCK_SIZE);
3415
-              $v_buffer = @gzread($p_src, $v_read_size);
3416
-              @gzwrite($p_dest, $v_buffer, $v_read_size);
3417
-              $p_size -= $v_read_size;
3418
-          }
3419
-      }
3415
+                $v_buffer = @gzread($p_src, $v_read_size);
3416
+                @gzwrite($p_dest, $v_buffer, $v_read_size);
3417
+                $p_size -= $v_read_size;
3418
+            }
3419
+        }
3420 3420
 
3421 3421
     // ----- Return
3422 3422
     return $v_result;
3423
-  }
3424
-  // ---------------------------------------------------------------------------
3425
-
3426
-  // ---------------------------------------------------------------------------
3427
-  // Function : $this->_tool_Rename()
3428
-  // Description :
3429
-  //   This function tries to do a simple rename() function. If it fails, it
3430
-  //   tries to copy the $p_src file in a new $p_dest file and then unlink the
3431
-  //   first one.
3432
-  // Parameters :
3433
-  //   $p_src : Old filename
3434
-  //   $p_dest : New filename
3435
-  // Return Values :
3436
-  //   1 on success, 0 on failure.
3437
-  // ---------------------------------------------------------------------------
3438
-  /**
3439
-  * _tool_Rename()
3440
-  *
3441
-  * { Description }
3442
-  *
3443
-  */
3444
-  public function _tool_Rename($p_src, $p_dest)
3445
-  {
3446
-      $v_result = 1;
3423
+    }
3424
+    // ---------------------------------------------------------------------------
3425
+
3426
+    // ---------------------------------------------------------------------------
3427
+    // Function : $this->_tool_Rename()
3428
+    // Description :
3429
+    //   This function tries to do a simple rename() function. If it fails, it
3430
+    //   tries to copy the $p_src file in a new $p_dest file and then unlink the
3431
+    //   first one.
3432
+    // Parameters :
3433
+    //   $p_src : Old filename
3434
+    //   $p_dest : New filename
3435
+    // Return Values :
3436
+    //   1 on success, 0 on failure.
3437
+    // ---------------------------------------------------------------------------
3438
+    /**
3439
+     * _tool_Rename()
3440
+     *
3441
+     * { Description }
3442
+     *
3443
+     */
3444
+    public function _tool_Rename($p_src, $p_dest)
3445
+    {
3446
+        $v_result = 1;
3447 3447
 
3448 3448
     // ----- Try to rename the files
3449 3449
     if (!@rename($p_src, $p_dest)) {
3450 3450
 
3451
-      // ----- Try to copy & unlink the src
3452
-      if (!@copy($p_src, $p_dest)) {
3453
-          $v_result = 0;
3454
-      } elseif (!@unlink($p_src)) {
3455
-          $v_result = 0;
3456
-      }
3451
+        // ----- Try to copy & unlink the src
3452
+        if (!@copy($p_src, $p_dest)) {
3453
+            $v_result = 0;
3454
+        } elseif (!@unlink($p_src)) {
3455
+            $v_result = 0;
3456
+        }
3457 3457
     }
3458 3458
 
3459 3459
     // ----- Return
3460 3460
     return $v_result;
3461
-  }
3462
-  // ---------------------------------------------------------------------------
3463
-
3464
-  // ---------------------------------------------------------------------------
3465
-  // Function : $this->_tool_TranslateWinPath()
3466
-  // Description :
3467
-  //   Translate windows path by replacing '\' by '/' and optionally removing
3468
-  //   drive letter.
3469
-  // Parameters :
3470
-  //   $p_path : path to translate.
3471
-  //   $p_remove_disk_letter : true | false
3472
-  // Return Values :
3473
-  //   The path translated.
3474
-  // ---------------------------------------------------------------------------
3475
-  /**
3476
-  * _tool_TranslateWinPath()
3477
-  *
3478
-  * { Description }
3479
-  *
3480
-  * @param [type] $p_remove_disk_letter
3481
-  */
3482
-  public function _tool_TranslateWinPath($p_path, $p_remove_disk_letter=true)
3483
-  {
3484
-      if (stristr(php_uname(), 'windows')) {
3485
-          // ----- Look for potential disk letter
3486
-      if (($p_remove_disk_letter)
3461
+    }
3462
+    // ---------------------------------------------------------------------------
3463
+
3464
+    // ---------------------------------------------------------------------------
3465
+    // Function : $this->_tool_TranslateWinPath()
3466
+    // Description :
3467
+    //   Translate windows path by replacing '\' by '/' and optionally removing
3468
+    //   drive letter.
3469
+    // Parameters :
3470
+    //   $p_path : path to translate.
3471
+    //   $p_remove_disk_letter : true | false
3472
+    // Return Values :
3473
+    //   The path translated.
3474
+    // ---------------------------------------------------------------------------
3475
+    /**
3476
+     * _tool_TranslateWinPath()
3477
+     *
3478
+     * { Description }
3479
+     *
3480
+     * @param [type] $p_remove_disk_letter
3481
+     */
3482
+    public function _tool_TranslateWinPath($p_path, $p_remove_disk_letter=true)
3483
+    {
3484
+        if (stristr(php_uname(), 'windows')) {
3485
+            // ----- Look for potential disk letter
3486
+        if (($p_remove_disk_letter)
3487 3487
           && (($v_position = strpos($p_path, ':')) != false)) {
3488
-          $p_path = substr($p_path, $v_position+1);
3489
-      }
3490
-      // ----- Change potential windows directory separator
3491
-      if ((strpos($p_path, '\\') > 0) || (substr($p_path, 0, 1) == '\\')) {
3492
-          $p_path = strtr($p_path, '\\', '/');
3493
-      }
3494
-      }
3495
-      return $p_path;
3496
-  }
3497
-  // ---------------------------------------------------------------------------
3488
+            $p_path = substr($p_path, $v_position+1);
3489
+        }
3490
+        // ----- Change potential windows directory separator
3491
+        if ((strpos($p_path, '\\') > 0) || (substr($p_path, 0, 1) == '\\')) {
3492
+            $p_path = strtr($p_path, '\\', '/');
3493
+        }
3494
+        }
3495
+        return $p_path;
3496
+    }
3497
+    // ---------------------------------------------------------------------------
3498 3498
 }
3499
-  // End of class
3499
+    // End of class
3500 3500
 ;
Please login to merge, or discard this patch.