/** * 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; } } Kiến Thức Kinh Tế - Trang 16 trên 32 - Vay Tài Chính 247

Category Archives: Kiến Thức Kinh Tế

Cách trang trí cây thông Noel đẹp mắt và độc đáo

Cây thông noel là gì? Cây thông Noel là một biểu tượng quan trọng của lễ Giáng sinh. Đây là loại cây luôn xanh đại diện cho sự sống và hy vọng. Cây thông Noel thường được sử dụng vào dịp Giáng sinh, từ ngày 24 đến 26 tháng 12 âm lịch hàng năm. Người […]

Hoa Đào Ngày Tết Và Ý Nghĩa Trong Văn Hóa Việt

Hoa Đào Tượng Trưng Cho Xuân Sang Từ xa xưa, hoa đào đã trở thành biểu tượng cho mùa xuân ở Việt Nam. Khi hoa đào nở rộ, người Việt lại bắt đầu một năm mới tràn đầy hy vọng. Màu sắc rực rỡ của đào là sự tương phản hoàn hảo với những ngày […]

Mâm cơm ngày Tết biểu tượng của sự sum vầy, đoàn tụ

Ngày Tết cổ truyền là dịp để mọi người sum họp bên nhau sau một năm làm việc vất vả. Và biểu tượng cho sự đoàn tụ ấy chính là mâm cơm ngày Tết được chuẩn bị công phu, chứa đựng ý nghĩa sâu sắc. Sự chuẩn bị tỉ mỉ cho mâm cơm ngày Tết […]

5 Cách Trị Chấy Hiệu Quả Cho Trẻ Em Và Người Lớn

Chấy rận là một vấn đề phổ biến ảnh hưởng đến nhiều người, đặc biệt là trẻ em. Những con vật nhỏ bé này gây khó chịu và ngứa ngáy cho da đầu. Chúng có thể lây lan nhanh chóng giữa những người có tiếp xúc gần gũi. Tuy nhiên, có những cách để điều […]

Xi Măng Trắng – Vật Liệu Xây Dựng Thân Thiện Với Môi Trường

   Xi măng trắng – xu hướng mới của ngành xây dựng Xi măng trắng đang dần trở thành xu hướng mới của ngành xây dựng Việt Nam trong thời gian gần đây. Với những ưu điểm vượt trội về thẩm mỹ, chất lượng và độ bền, xi măng trắng hứa hẹn sẽ thay thế […]

Bàn Thờ Ông Táo Nét Văn Hoá Đặc Sắc Trong Ngày 23 Tết

Bàn thờ ông táo – Biểu tượng tinh thần của người Việt Bàn thờ ông táo chắc hẳn không còn quá xa lạ với mọi gia đình Việt khi Tết Dương lịch đang đến rất gần. Đây là một nét văn hóa đặc sắc, thể hiện tinh thần tôn sư trọng đạo của dân tộc […]