/** * Copyright (C) 2014-2025 ServMask Inc. * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program. If not, see . * * Attribution: This code is part of the All-in-One WP Migration plugin, developed by * * ███████╗███████╗██████╗ ██╗ ██╗███╗ ███╗ █████╗ ███████╗██╗ ██╗ * ██╔════╝██╔════╝██╔══██╗██║ ██║████╗ ████║██╔══██╗██╔════╝██║ ██╔╝ * ███████╗█████╗ ██████╔╝██║ ██║██╔████╔██║███████║███████╗█████╔╝ * ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║╚██╔╝██║██╔══██║╚════██║██╔═██╗ * ███████║███████╗██║ ██║ ╚████╔╝ ██║ ╚═╝ ██║██║ ██║███████║██║ ██╗ * ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ */ if ( ! defined( 'ABSPATH' ) ) { die( 'Kangaroos cannot jump here' ); } class Ai1wm_Export_Plugins { public static function execute( $params ) { // Set archive bytes offset if ( isset( $params['archive_bytes_offset'] ) ) { $archive_bytes_offset = (int) $params['archive_bytes_offset']; } else { $archive_bytes_offset = ai1wm_archive_bytes( $params ); } // Set file bytes offset if ( isset( $params['file_bytes_offset'] ) ) { $file_bytes_offset = (int) $params['file_bytes_offset']; } else { $file_bytes_offset = 0; } // Set plugins bytes offset if ( isset( $params['plugins_bytes_offset'] ) ) { $plugins_bytes_offset = (int) $params['plugins_bytes_offset']; } else { $plugins_bytes_offset = 0; } // Get processed files size if ( isset( $params['processed_files_size'] ) ) { $processed_files_size = (int) $params['processed_files_size']; } else { $processed_files_size = 0; } // Get total plugins files size if ( isset( $params['total_plugins_files_size'] ) ) { $total_plugins_files_size = (int) $params['total_plugins_files_size']; } else { $total_plugins_files_size = 1; } // Get total plugins files count if ( isset( $params['total_plugins_files_count'] ) ) { $total_plugins_files_count = (int) $params['total_plugins_files_count']; } else { $total_plugins_files_count = 1; } // What percent of files have we processed? $progress = (int) min( ( $processed_files_size / $total_plugins_files_size ) * 100, 100 ); // Set progress /* translators: 1: Number of files, 2: Progress. */ Ai1wm_Status::info( sprintf( __( 'Archiving %1$d plugin files...
%2$d%% complete', 'all-in-one-wp-migration' ), $total_plugins_files_count, $progress ) ); // Flag to hold if file data has been processed $completed = true; // Start time $start = microtime( true ); // Get plugins list file $plugins_list = ai1wm_open( ai1wm_plugins_list_path( $params ), 'r' ); // Set the file pointer at the current index if ( fseek( $plugins_list, $plugins_bytes_offset ) !== -1 ) { // Open the archive file for writing $archive = new Ai1wm_Compressor( ai1wm_archive_path( $params ) ); // Set the file pointer to the one that we have saved $archive->set_file_pointer( $archive_bytes_offset ); // Loop over files while ( list( $file_abspath, $file_relpath, $file_size, $file_mtime ) = ai1wm_getcsv( $plugins_list ) ) { $file_bytes_written = 0; // Add file to archive if ( ( $completed = $archive->add_file( $file_abspath, 'plugins' . DIRECTORY_SEPARATOR . $file_relpath, $file_bytes_written, $file_bytes_offset ) ) ) { $file_bytes_offset = 0; // Get plugins bytes offset $plugins_bytes_offset = ftell( $plugins_list ); } // Increment processed files size $processed_files_size += $file_bytes_written; // What percent of files have we processed? $progress = (int) min( ( $processed_files_size / $total_plugins_files_size ) * 100, 100 ); // Set progress /* translators: 1: Number of files, 2: Progress. */ Ai1wm_Status::info( sprintf( __( 'Archiving %1$d plugin files...
%2$d%% complete', 'all-in-one-wp-migration' ), $total_plugins_files_count, $progress ) ); // More than 10 seconds have passed, break and do another request if ( ( $timeout = apply_filters( 'ai1wm_completed_timeout', 10 ) ) ) { if ( ( microtime( true ) - $start ) > $timeout ) { $completed = false; break; } } } // Get archive bytes offset $archive_bytes_offset = $archive->get_file_pointer(); // Truncate the archive file $archive->truncate(); // Close the archive file $archive->close(); } // End of the plugins list? if ( feof( $plugins_list ) ) { // Unset archive bytes offset unset( $params['archive_bytes_offset'] ); // Unset file bytes offset unset( $params['file_bytes_offset'] ); // Unset plugins bytes offset unset( $params['plugins_bytes_offset'] ); // Unset processed files size unset( $params['processed_files_size'] ); // Unset total plugins files size unset( $params['total_plugins_files_size'] ); // Unset total plugins files count unset( $params['total_plugins_files_count'] ); // Unset completed flag unset( $params['completed'] ); } else { // Set archive bytes offset $params['archive_bytes_offset'] = $archive_bytes_offset; // Set file bytes offset $params['file_bytes_offset'] = $file_bytes_offset; // Set plugins bytes offset $params['plugins_bytes_offset'] = $plugins_bytes_offset; // Set processed files size $params['processed_files_size'] = $processed_files_size; // Set total plugins files size $params['total_plugins_files_size'] = $total_plugins_files_size; // Set total plugins files count $params['total_plugins_files_count'] = $total_plugins_files_count; // Set completed flag $params['completed'] = $completed; } // Close the plugins list file ai1wm_close( $plugins_list ); return $params; } } Termes et conditions - Group 369

Termes et conditions

Les présentes Conditions d’utilisation régissent votre accès à nos services d’éducation financière. Lorsque vous souscrivez un abonnement à notre plate-forme d’éducation financière, vous devez accepter les présentes Conditions d’utilisation afin de permettre que votre accès soit validé et traitée en bonne et due forme. L’entreprise fournissant les services n’acceptera de faire l’analyse de votre demande d’abonnement à la plate-forme que si vous acceptez les présentes Conditions d’utilisation. Malgré le respect des présentes Conditions d’utilisation, l’entreprise fournissant les services n’a aucune obligation d’accepter votre demande d’accès. L’acceptation ou non de votre accès à la plate-forme et le maintien d’un accès en continue est à l’entière discrétion de l’entreprise fournissant les services. Le compte d’un débiteur peut être désactivé en tout temps, à l’exclusive discrétion de l’entreprise fournissant les services, sans dommage applicable à l’encontre de l’entreprise fournissant les services. Les présentes Conditions d’utilisation s’ajoutent à tout autre contrat applicable entre les parties et demeurent valides tout au long du service d’abonnement octroyé par l’entreprise fournissant les services.

QUI PEUT S’ABONNER À NOS SERVICES ?

Vous devez être âgé(e) d’au moins 18 ans et ne pas être considéré(e) inapte ou faisant l’objet d’une tutelle.

L’objet de votre demande d’accès à la plate-forme d’éducation financière ne doit pas être fait, directement ou indirectement, pour un dessein illégal, interdit, criminel, frauduleux, à des fins de blanchiment d’argent ou dans le cadre de tout autre geste considéré de mauvaise foi par l’entreprise fournissant les services, et ce, à son entière et exclusive discrétion.

Vous avez l’obligation de révéler votre identité complète.

Vous ne pouvez pas usurper l’identité d’autrui.

Vous n’avez pas fait l’objet d’une demande refusée ou d’une fermeture de compte auprès de notre entreprise dans les trente (30) jours précédant la présente demande d’accès à notre plate-forme d’éducation financière.

COLLECTE ET UTILISATION D’INFORMATION

Pour traiter votre demande d’accès à notre plate-forme d’éducation financière, tel que ci-avant mentionné, l’entreprise fournissant les services doit vérifier les informations vous concernant. Le type d’information recueillie dépend de l’information que vous fournissez et de la manière dont vous utilisez le site web de l’entreprise fournissant les services.

Par les présentes, vous comprenez et acceptez qu’au moment où une demande d’accès à la plateforme d’éducation financière est faite, l’entreprise fournissant les services recueille le contenu de la demande, les communications ainsi que d’autres informations que vous fournirez, notamment lorsque vous créez un compte, créez ou partagez du contenu, ou lorsque vous communiquez avec des membres, officiers, administrateurs, agents ou partenaires de l’entreprise fournissant les services ou lorsque vous leur envoyez des messages.

Cela peut comprendre des informations présentes dans le contenu que vous fournissez (par exemple : des métadonnées) ou concernant un tel contenu, tel que le lieu d’une photo ou la date à laquelle un fichier a été créé. Vous consentez formellement à ce que toutes les informations ainsi recueillies puissent être utilisées par l’entreprise fournissant les services dans le cadre de la gestion de votre demande d’accès à la plate-forme d’éducation financière et pourra être transmise à toute autre société affiliée, fournisseur de services ou autres entreprises connexes à des fins d’enquête ou d’agrégation des données vous concernant.

Les données vous concernant pourront faire partie d’une base de données gérée par l’entreprise fournissant les services, par toute autre société affiliée, fournisseurs de services ou autres entreprises connexes dans le but de traiter et enquêter demandes d’accès, selon les conditions ci-avant mentionnées ou autres et pourront être conservées pour une durée indéterminée par l’entreprise fournissant les services et par toute autre société affiliée, fournisseur de services ou autres entreprises connexes dans cet objectif. Les données peuvent être partagées avec des autorités publiques ou légales, lorsque la loi et/ou une Cour de justice l’ordonne(nt).

JURIDICTION DE LA DEMANDE D’INSCRIPTION À NOS SERVICES ET DE LA GESTION DES LITIGES

L’entreprise fournissant les services est une entreprise faisant affaires dans la province de Québec au Canada et toute acceptation de la demande d’accès à la plate-forme d’éducation financière sera considérée être effectuée dans la province de Québec au Canada, et ce, nonobstant votre lieu de résidence ou nonobstant le lieu où votre demande a été effectuée. Vous consentez que, en cas de litige, les lois du Québec et du Canada soient applicables et que tout litige soit entendu dans la juridiction de la province de Québec au Canada, dans le district juridique de Montréal, à l’exclusion de toute autre juridiction et de tout autre district.

MISE À JOUR DES PRÉSENTES CONDITIONS D’UTILISATION

L’entreprise fournissant les services peut modifier ses services et ses règlements et il est possible qu’elle doive apporter des modifications aux présentes Conditions d’utilisation. L’entreprise fournissant les services vous informera avant de modifier les présentes Conditions d’utilisation et vous donnera l’occasion de les examiner avant leur entrée en vigueur. Par la suite, si vous poursuivez votre utilisation des services auprès de l’entreprise fournissant les services, vous serez lié(e) par les Conditions d’utilisation révisées.