function log_message($message) { if ($this->log_fp) { fwrite($this->log_fp, snapshot_utility_show_date_time(time(), 'Y-m-d H:i:s') . ": " . $message . "\r\n"); fflush($this->log_fp); } }
/** * Metabox to show the backup archived files * * @since 1.0.2 * * @param string $title - Title to be displayed in header of metabox * @param array $item - The current viewed item * @param bool $restore_option - If shown on the restore panel. * @return none */ function snapshot_metabox_show_archive_files($title, $item, $restore_option=false) { global $wpmudev_snapshot; //echo "item<pre>"; print_r($item); echo "</pre>"; ?> <div class="postbox"> <h3 class="hndle"><span><?php echo $title; ?></span></h3> <div class="inside"> <?php if ($restore_option == true) { /* ?><p><?php _e('Select which archive to restore', SNAPSHOT_I18N_DOMAIN); ?></p><?php */ } else { ?> <p><?php _e('Below is a listing of your archives showing at most the most recent 6 entries. If the archive is local you can click on the filename to download it. You can also view or download the load file the archive.', SNAPSHOT_I18N_DOMAIN); ?> <a href="?page=snapshots_edit_panel&snapshot-action=item-archives&item=<?php echo $item['timestamp'] ?>"><?php _e('View all archives', SNAPSHOT_I18N_DOMAIN); ?></a></p> <?php } if ((isset($item['data'])) && (count($item['data']))) { $data_items = $item['data']; krsort($data_items); if (isset($_GET['snapshot-data-item'])) { $data_item_key = intval($_GET['snapshot-data-item']); if (isset($data_items[$data_item_key])) { $data_item = $data_items[$data_item_key]; $data_items = array(); $data_items[$data_item_key] = $data_item; } } else { if (count($data_items) > 6) { $data_items = array_slice($data_items, 0, 6, true); } } ?> <table class="widefat"> <thead> <tr class="form-field"> <?php if ($restore_option == true) { ?><th class="snapshot-col-restore"><?php _e('Select', SNAPSHOT_I18N_DOMAIN); ?></th><?php } ?> <th class="snapshot-col-date"><?php _e('Date', SNAPSHOT_I18N_DOMAIN); ?></th> <th class="snapshot-col-file"><?php _e('File', SNAPSHOT_I18N_DOMAIN); ?></th> <th class="snapshot-col-notes"><?php _e('Notes', SNAPSHOT_I18N_DOMAIN); ?></th> <th class="snapshot-col-size"><?php _e('Size', SNAPSHOT_I18N_DOMAIN); ?></th> <?php if ($restore_option != true) { if ($wpmudev_snapshot->config_data['config']['absoluteFolder'] != true) { ?><th class="snapshot-col-logs"><?php _e('Logs', SNAPSHOT_I18N_DOMAIN); ?></th><?php } } ?> </tr> </thead> <tbody style="overflow: auto; max-height: 100px;"> <?php $selected_item = ""; foreach($data_items as $data_key => $data_item) { //echo "data_item<pre>"; print_r($data_item); echo "</pre>"; if (!isset($row_class)) { $row_class = ""; } $row_class = ( $row_class == '' ? 'alternate' : '' ); $backupLogFileFull = trailingslashit($wpmudev_snapshot->snapshot_get_setting('backupLogFolderFull')) . $item['timestamp'] ."_". $data_item['timestamp'] .".log"; ?><tr class="form-field <?php echo $row_class; ?>"><?php if ($restore_option == true) { ?><td><input type="radio" name="snapshot-restore-file" class="snapshot-restore-file" id="snapshot-restore-<?php echo $data_item['timestamp']; ?>" value="<?php echo $data_item['timestamp']; ?>" <?php if ((isset($_GET['snapshot-data-item'])) && (intval($_GET['snapshot-data-item']) == $data_item['timestamp'])) { echo ' checked="checked" '; } ?>/></td><?php } ?><td><?php echo snapshot_utility_show_date_time($data_item['timestamp']); ?></td><?php ?><td><?php if ((empty($data_item['destination'])) || ($data_item['destination'] == "local")) { if (isset($data_item['filename'])) { $current_backupFolder = $wpmudev_snapshot->snapshot_get_item_destination_path($item, $data_item); if (empty($current_backupFolder)) { $current_backupFolder = $wpmudev_snapshot->snapshot_get_setting('backupBaseFolderFull'); } $backupFile = trailingslashit(trim($current_backupFolder)) . $data_item['filename']; // If we don't find file is the alternate directory then try the default if (!file_exists($backupFile)) { if ( (isset($data_item['destination-directory'])) || (!empty($data_item['destination-directory'])) ){ $current_backupFolder = $wpmudev_snapshot->snapshot_get_setting('backupBaseFolderFull'); $backupFile = trailingslashit(trim($current_backupFolder)) . $data_item['filename']; } } if (file_exists($backupFile)) { echo '<a href="?page=snapshots_edit_panel&snapshot-item='. $item['timestamp'] .'&snapshot-data-item='. $data_item['timestamp'] .'&snapshot-action=download-archive">'. $data_item['filename'] .'</a>'; } else { echo $data_item['filename']; } } } else { if (isset($data_item['filename'])) { $current_backupFolder = $wpmudev_snapshot->snapshot_get_setting('backupBaseFolderFull'); $backupFile = trailingslashit(trim($current_backupFolder)) . $data_item['filename']; if (file_exists($backupFile)) { echo '<a href="?page=snapshots_edit_panel&snapshot-item='. $item['timestamp'] .'&snapshot-data-item='. $data_item['timestamp'] .'&snapshot-action=download-archive">'. $data_item['filename'] .'</a>'; } else { echo $data_item['filename']; } } } ?></td><?php ?><td><?php $tables_sections_out = snapshot_utility_get_tables_sections_display($data_item); $files_sections_out = snapshot_utility_get_files_sections_display($data_item); if ((strlen($tables_sections_out['click'])) || (strlen($files_str))) { ?><p><?php echo $tables_sections_out['click']; if (strlen($tables_sections_out['click'])) echo "</br />"; echo $files_sections_out['click']; ?></p><?php echo $tables_sections_out['hidden']; } ?></td><?php ?><td><?php if (isset($data_item['file_size'])) { $file_kb = snapshot_utility_size_format($data_item['file_size']); echo $file_kb; } else { echo " "; } ?></td><?php if ($restore_option != true) { ?><td><?php if (file_exists($backupLogFileFull)) { echo '<a class="thickbox" href="'. admin_url() .'admin-ajax.php?action=snapshot_view_log_ajax&width=800&height=600&snapshot-item=' . $item['timestamp'] .'&snapshot-data-item='. $data_item['timestamp'] .'">'. __('view', SNAPSHOT_I18N_DOMAIN) .'</a>'; echo " "; echo '<a href="?page=snapshots_edit_panel&snapshot-action=download-log&snapshot-item=' . $item['timestamp'] .'&snapshot-data-item='. $data_item['timestamp'] .'">' . __('download', SNAPSHOT_I18N_DOMAIN) .'</a>'; } else { echo " "; } ?></td><?php } ?></tr><?php } ?></tbody></table><?php } else { _e('No Archives', SNAPSHOT_I18N_DOMAIN); } ?> </div> </div> <?php }
function snapshot_admin_show_item_archive_panel($item) { global $wpmudev_snapshot; $wpmudev_snapshot->archives_data_items_table->prepare_items($item); ?> <div class="wrap snapshot-wrap"> <?php screen_icon('snapshot'); ?> <h2>Snapshot Item Archive <a class="add-new-h2" href="<?php echo $wpmudev_snapshot->snapshot_get_setting('SNAPSHOT_MENU_URL'); ?>snapshots_edit_panel&snapshot-action=edit&item=<?php echo $item['timestamp']; ?>">Edit Item</a></h2> <?php //echo "_REQUEST<pre>"; print_r($_REQUEST); echo "</pre>"; ?> <form id="snapshot-item-archives-form" method="get"> <input type="hidden" name="snapshot-action" value="item-archives" /> <input type="hidden" name="page" value="snapshots_edit_panel" /> <input type="hidden" name="item" value="<?php echo $item['timestamp']; ?>" /> <!-- For plugins, we also need to ensure that the form posts back to our current page --> <input type="hidden" name="page" value="<?php echo $_REQUEST['page'] ?>" /> <div style="float: right" class="snapshot-system-time"><?php _e('Current time:', SNAPSHOT_I18N_DOMAIN); ?> <strong><?php echo snapshot_utility_show_date_time(time())?></strong></div> <?php if ($item['destination-sync'] == "mirror") { ?><p><?php _e('This Snapshot item is setup as <strong>files sync</strong>. You cannot perform a resend of the individual items like on a normal archive. But you can click the <strong>resend</strong> on any item below to clear the last send dates on all files. This will force all files to be re-synced.', SNAPSHOT_I18N_DOMAIN); ?></p><?php } ?> <!-- Now we can render the completed list table --> <?php $wpmudev_snapshot->archives_data_items_table->display(); ?> </form> </div> <?php }
function column_interval($item) { global $wpmudev_snapshot; if ((!isset($item['interval'])) || ($item['interval'] == "immediate") || (empty($item['interval']))) { _e('Manual', SNAPSHOT_I18N_DOMAIN); $snapshot_locker = new SnapshotLocker($wpmudev_snapshot->snapshot_get_setting('backupLockFolderFull'), $item['timestamp']); if (!$snapshot_locker->is_locked()) { $locker_info = $snapshot_locker->get_locker_info(); if ($locker_info['item_key'] == $item['timestamp']) { $file_progress = ''; if ((isset($locker_info['file_offset'])) && ($locker_info['file_size'])) { $file_progress = sprintf("%0d%% ", ($locker_info['file_offset']/$locker_info['file_size'])*100); } //echo "locker_info<pre>"; print_r($locker_info); echo "</pre>"; $snapshot_process_action = $locker_info['doing'] .' '. $file_progress .'(<a class="snapshot-abort-item" href="pid='.$locker_info['pid'] . '&item='. $item['timestamp'] .'">'. __('abort', SNAPSHOT_I18N_DOMAIN) .'</a>)<br /><a class="snapshot-thickbox" href="'. admin_url() .'admin-ajax.php?action=snapshot_view_log_ajax&&snapshot-item=' . $item['timestamp'] .'&snapshot-data-item='. $locker_info['data_item_key'] .'&live=1">'. __('Now', SNAPSHOT_I18N_DOMAIN) .'</a>'; $running_timestamp = $locker_info['time_start']; ?><br /><?php echo $snapshot_process_action; ?>: <?php echo snapshot_utility_show_date_time( $running_timestamp ); } } unset($snapshot_locker); } else if ((isset($item['interval'])) && (strlen($item['interval']))) { $interval_text = snapshot_utility_get_sched_display($item['interval']); if ($interval_text) echo $interval_text; $snapshot_locker = new SnapshotLocker($wpmudev_snapshot->snapshot_get_setting('backupLockFolderFull'), $item['timestamp']); if (!$snapshot_locker->is_locked()) { $locker_info = $snapshot_locker->get_locker_info(); //echo "locker_info<pre>"; print_r($locker_info); echo "</pre>"; if ($locker_info['item_key'] == $item['timestamp']) { $snapshot_process_action = '<br /><a class="snapshot-thickbox" href="'. admin_url() .'admin-ajax.php?action=snapshot_view_log_ajax&snapshot-item='. $item['timestamp']. '&snapshot-data-item='. $locker_info['data_item_key'] . '&live=1">'. __('Now', SNAPSHOT_I18N_DOMAIN) .'</a>: '; $snapshot_process_action .= $locker_info['doing']; $file_progress = ''; if ((isset($locker_info['file_offset'])) && (intval($locker_info['file_offset'])) && (isset($locker_info['file_size'])) && (intval($locker_info['file_size'])) ) { $file_progress = sprintf(" %0d%% ", (intval($locker_info['file_offset'])/intval($locker_info['file_size']))*100); $snapshot_process_action .= $file_progress; } else if ((isset($locker_info['files_count'])) && (intval($locker_info['files_count'])) && (isset($locker_info['files_total'])) && (intval($locker_info['files_total'])) ) { $file_progress = sprintf(" %0d%% ", (intval($locker_info['files_count'])/intval($locker_info['files_total']))*100); $snapshot_process_action .= $file_progress; } else { $snapshot_process_action .= " "; } $snapshot_process_action .= '(<a class="snapshot-abort-item" href="pid='.$locker_info['pid'] . '&item='. $item['timestamp'] .'">'. __('abort', SNAPSHOT_I18N_DOMAIN) .'</a>)'; echo $snapshot_process_action; } } else { //$snapshot_process_action = __('Next', SNAPSHOT_I18N_DOMAIN) .": "; $running_timestamp = wp_next_scheduled( 'snapshot_backup_cron', array(intval($item['timestamp'])) ); echo "<br />". __('Next', SNAPSHOT_I18N_DOMAIN) .": ". snapshot_utility_show_date_time( $running_timestamp ); } unset($snapshot_locker); } if ((isset($item['data'])) && (count($item['data']))) { $data_item = snapshot_utility_latest_data_item($item['data']); if (isset($data_item)) { if (isset($data_item['timestamp'])) { ?><br /><?php _e('Last', SNAPSHOT_I18N_DOMAIN); ?>: <?php echo snapshot_utility_show_date_time($data_item['timestamp']); } } } }
function column_date($data_item) { echo snapshot_utility_show_date_time($data_item['timestamp']); }