/**
  * Функция обработки файлов в процессе распаковки
  * @param mixed $p_event
  * @param mixed $p_header
  */
 static function preExtractCallBack($p_event, &$p_header)
 {
     // Если файл admin.php, смотрим как он называется у пользователя
     // и если название отличается, переименовываем его
     if ('admin.php' === $p_header['filename']) {
         if (defined('CONF_ADMIN_FILE') && 'admin.php' !== CONF_ADMIN_FILE) {
             $p_header['filename'] = CONF_ADMIN_FILE;
         }
     }
     // Проверяем, если файл существует и это не каталог
     $logData = array('error' => 2, 'message' => 'Search file', 'object' => $p_header['filename']);
     self::setLogData($logData);
     self::saveLogData();
     if (@file_exists($p_header['filename']) && !$p_header['folder']) {
         // Пытаемся изменить парава доступа к файлу
         $logData = array('error' => 2, 'message' => 'Try chmod file (to: 0666; now: ' . filesys::getFileMode($p_header['filename']) . ')', 'object' => $p_header['filename']);
         self::setLogData($logData);
         self::saveLogData();
         if (chmod($p_header['filename'], 0666)) {
             $logData = array('error' => 0, 'message' => 'File success change mode (now: ' . filesys::getFileMode($p_header['filename']) . ')', 'object' => $p_header['filename']);
         } else {
             $logData = array('error' => 1, 'message' => 'Can not change file mode (now: ' . filesys::getFileMode($p_header['filename']) . ')', 'object' => $p_header['filename']);
         }
         self::setLogData($logData);
         self::saveLogData();
         // Пытаемся удалить файл
         $logData = array('error' => 2, 'message' => 'Try delete file', 'object' => $p_header['filename']);
         self::setLogData($logData);
         self::saveLogData();
         if (unlink($p_header['filename'])) {
             $logData = array('error' => 0, 'message' => 'File success deleted', 'object' => $p_header['filename']);
         } else {
             $logData = array('error' => 1, 'message' => 'Unable delete file', 'object' => $p_header['filename']);
         }
         self::setLogData($logData);
         self::saveLogData();
     } else {
         if (!file_exists($p_header['filename'])) {
             $logData = array('error' => 0, 'message' => 'File not exists', 'object' => $p_header['filename']);
         } else {
             $logData = array('error' => 0, 'message' => 'This is folder', 'object' => $p_header['filename']);
         }
         self::setLogData($logData);
         self::saveLogData();
     }
     return 1;
 }