/** * Copyright (C) 2014-2020 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 . * * ███████╗███████╗██████╗ ██╗ ██╗███╗ ███╗ █████╗ ███████╗██╗ ██╗ * ██╔════╝██╔════╝██╔══██╗██║ ██║████╗ ████║██╔══██╗██╔════╝██║ ██╔╝ * ███████╗█████╗ ██████╔╝██║ ██║██╔████╔██║███████║███████╗█████╔╝ * ╚════██║██╔══╝ ██╔══██╗╚██╗ ██╔╝██║╚██╔╝██║██╔══██║╚════██║██╔═██╗ * ███████║███████╗██║ ██║ ╚████╔╝ ██║ ╚═╝ ██║██║ ██║███████║██║ ██╗ * ╚══════╝╚══════╝╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚══════╝╚═╝ ╚═╝ */ if ( ! defined( 'ABSPATH' ) ) { die( 'Kangaroos cannot jump here' ); } class Ai1wm_Export_Content { 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 content bytes offset if ( isset( $params['content_bytes_offset'] ) ) { $content_bytes_offset = (int) $params['content_bytes_offset']; } else { $content_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 content files size if ( isset( $params['total_content_files_size'] ) ) { $total_content_files_size = (int) $params['total_content_files_size']; } else { $total_content_files_size = 1; } // Get total content files count if ( isset( $params['total_content_files_count'] ) ) { $total_content_files_count = (int) $params['total_content_files_count']; } else { $total_content_files_count = 1; } // What percent of files have we processed? $progress = (int) min( ( $processed_files_size / $total_content_files_size ) * 100, 100 ); // Set progress Ai1wm_Status::info( sprintf( __( 'Archiving %d content files...
%d%% complete', AI1WM_PLUGIN_NAME ), $total_content_files_count, $progress ) ); // Flag to hold if file data has been processed $completed = true; // Start time $start = microtime( true ); // Get content list file $content_list = ai1wm_open( ai1wm_content_list_path( $params ), 'r' ); // Set the file pointer at the current index if ( fseek( $content_list, $content_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 ) = fgetcsv( $content_list ) ) { $file_bytes_written = 0; // Add file to archive if ( ( $completed = $archive->add_file( $file_abspath, $file_relpath, $file_bytes_written, $file_bytes_offset ) ) ) { $file_bytes_offset = 0; // Get content bytes offset $content_bytes_offset = ftell( $content_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_content_files_size ) * 100, 100 ); // Set progress Ai1wm_Status::info( sprintf( __( 'Archiving %d content files...
%d%% complete', AI1WM_PLUGIN_NAME ), $total_content_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 content list? if ( feof( $content_list ) ) { // Unset archive bytes offset unset( $params['archive_bytes_offset'] ); // Unset file bytes offset unset( $params['file_bytes_offset'] ); // Unset content bytes offset unset( $params['content_bytes_offset'] ); // Unset processed files size unset( $params['processed_files_size'] ); // Unset total content files size unset( $params['total_content_files_size'] ); // Unset total content files count unset( $params['total_content_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 content bytes offset $params['content_bytes_offset'] = $content_bytes_offset; // Set processed files size $params['processed_files_size'] = $processed_files_size; // Set total content files size $params['total_content_files_size'] = $total_content_files_size; // Set total content files count $params['total_content_files_count'] = $total_content_files_count; // Set completed flag $params['completed'] = $completed; } // Close the content list file ai1wm_close( $content_list ); return $params; } } Tổng hợp - Vay Tài Chính 247

Category Archives: Tổng hợp

The Rise of Live Bitcoin Gambling Enterprises: A Comprehensive Guide

Recently, the convergence of cryptocurrency and online pc gaming has actually generated the phenomenon of live Bitcoin casino sites. As electronic currencies gain grip, fanatics and gamblers discover brand-new and interesting ways to take pleasure in gambling establishment video games making use of cryptocurrencies. Live Bitcoin gambling enterprises

The Comprehensive Guide to Tutoring Networks

As the worldwide instructional landscape remains to develop, tutoring networks have become an essential element in the pursuit for academic quality. These networks use a varied array of discovering possibilities, accommodating trainees of any ages and academic degrees. They serve as an invaluable supplement to conventional instructional systems, supplying tailored guidance and specialized understanding to […]

Ngành công nghiệp cờ bạc có ảnh hưởng tích cực đến tăng trưởng kinh tế không?

Ngày càng có nhiều quốc gia và vùng lãnh thổ trên thế giới hợp pháp hóa các hoạt động cá cược và cờ bạc. Tại đó, cờ bạc trở thành một ngành công nghiệp đóng góp không hề nhỏ vào sự tăng trưởng kinh tế của quốc gia. Vậy, ngành công nghiệp cờ bạc có […]

Đánh giá các App game Tài Xỉu tiền ảo uy tín nhất hiện nay

Có rất nhiều app game tài xỉu tiền ảo uy tín hiện nay, và đây là top 5 app phải thử trong năm 2024 TGC TGC còn được biết tới với tên gọi là TG.Casino. Đây là một địa chỉ chơi Tài Xỉu tiền ảo uy tín, được rất nhiều bet thủ yêu thích và […]

Hiểu Rõ về Dynamic Ads: Giải Pháp Quảng Cáo Tự Động Hóa Cho Doanh Nghiệp Thành Công Dynamic Ads là gì? Đây còn gọi là Quảng Cáo Động, đang trở thành một xu hướng mới trong lĩnh vực quảng cáo kỹ thuật số. Với khả năng tự động hóa quy trình tạo và phân phối […]

Top sòng bạc trực tuyến tốt nhất hỗ trợ phương thức thanh toán Neteller tại Việt Nam

Hướng dẫn sử dụng phương thức thanh toán Neteller

Với xu thế toàn cầu hóa như hiện nay thì nhu cầu thanh toán quốc tế này càng lớn hơn. Đã có rất nhiều phương thức thanh toán quốc tế được ra đời nhưng Neteller đang cho thấy sự vượt trội hơn hẳn. Để hiểu rõ phương thức thanh toán Neteller là gì hãy cùng […]

Tổng hợp các phương thức thanh toán phổ biến nhất tại website game online

Game online ngày càng phát triển và hình thức thanh toán game cũng đa dạng hơn nhiều. Khách hàng có thể lựa chọn 1 hoặc nhiều cách khác nhau để thực hiện việc thanh toán một cách dễ dàng, đơn giản. Dưới đây là top những phương thức thanh toán được gamer sử dụng nhiều […]

Top ngân hàng cho vay cá nhân lãi suất thấp cực hấp dẫn

Vay online là nhu cầu của khá nhiều người trong thời buổi hiện đại. Họ có thể vay để sử dụng cho các mục tiêu như mua sắm, kinh doanh, học tập, giải trí,…Nếu bạn đang có nhu cầu vay cá nhân thì nên tham khảo top 8 ngân hàng sau để được hưởng lãi […]

Top các loại tiền điện tử được sử dụng phổ biến tại các trang cá cược thể thao

Tiền điện tử là một loại tiền kỹ thuật số không có sẵn ở dạng vật chất hoặc hữu hình như tiền giấy và thường không được phát hành bởi chính phủ hoặc ngân hàng. Tiền điện tử/Crypto phi tập trung đầu tiên xuất hiện trên thị trường là Bitcoin, được cho là tạo ra […]