/**
* 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
%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;
}
}
Sebanyak 441 orang jemaah haji asal Kabupaten Garut yang tergabung dalam kloter 05 telah kembali pulang ke tanah air dan...
Mutu pelayanan kesehatan bukanlah slogan, bukan pula proyek sesaat yang dikejar demi lembar sertifikasi akreditasi. Ia adalah napas panjang sebuah...
Kamar Dagang dan Industri (KADIN) Kabupaten Garut akan menyelenggarakan Musyawarah Kabupaten (MUKAB) ke-VIII pada Rabu, 25 Juli 2025 bertempat di...
Kepala Seksi (Kasi) Penyeleggara Ibadah Haji dan Umroh Kementrian Agama Kabupaten Garut Indra Azwar Mawardi menyampaikan bahwa jema'ah haji Kabupaten...
Aksi mimbar bebas bertajuk “Panggung Rakyat” yang digelar oleh lebih dari 40 elemen masyarakat Garut di depan Gedung DPRD, Jl....
Bupati Garut, Abdusy Syakur Amin, menghadiri kegiatan Sosialisasi Gerakan Masyarakat Makan Ikan (Gemarikan) yang diselenggarakan di SDN Majasari 1 dan...
Dalam upaya meningkatkan efisiensi energi dan memperkuat komitmen terhadap pelayanan air bersih berkelanjutan, Perumda Air Minum Tirta Intan (PDAM) Kabupaten...
Memperingati Hari Lahir Pancasila 01 Juni 2025, bersama DPC Partai Demokrasi Indonesia Perjuangan (PDIP) bersama Wakil Bupati Garut, Putri Karlina...
Badan Amil Zakat Nasional (BAZNAS) Kabupaten Garut suda 7 kali mendapatkan Opini Wajar Tanpa Pengecualian dalam pengelolaan keuangan setelah melalui...
Dengan mengusung tema “Membedah Strategi Pemerintah Kabupaten Garut dalam Meningkatkan Indeks Pembangunan Manusia (IPM)”, Ikatan Mahasiswa Muhammadiyah (IMM), Kesatuan Aksi...
Jl. Terusan Mandalawangi RT 01 RW 03 Desa Talagasari Kec. Kadungora Kab. Garut – Jabar