function display_rows() { $style = ''; $cfg = get_option('backwpup'); foreach ($this->items as $logfile) { $style = ' class="alternate"' == $style ? '' : ' class="alternate"'; $logdata = backwpup_read_logheader($cfg['dirlogs'] . $logfile); echo "\n\t", $this->single_row($cfg['dirlogs'] . $logfile, $logdata, $style); } }
} $backwpupjobtemp = filter_input(INPUT_POST, 'BackWPupJobTemp', FILTER_SANITIZE_URL); $backwpupjobtemp = rtrim(realpath($backwpupjobtemp), '/\\'); $log = ''; if (is_file($logfile)) { $logpos = filter_input(INPUT_POST, 'logpos', FILTER_SANITIZE_NUMBER_INT); $logfilarray = backwpup_read_logfile($logfile); $newpos = count($logfilarray); for ($i = $logpos; $i < count($logfilarray); $i++) { $log .= $logfilarray[$i]; } if (!empty($newpos) && $newpos > 0) { $logpos = $newpos; } if (is_file($backwpupjobtemp . '/.running') && ($runningfile = file_get_contents($backwpupjobtemp . '/.running'))) { $infile = unserialize($runningfile); $warnings = $infile['WORKING']['WARNING']; $errors = $infile['WORKING']['ERROR']; $stepspersent = $infile['STEPSPERSENT']; $steppersent = $infile['STEPPERSENT']; } else { $logheader = backwpup_read_logheader($logfile); $warnings = $logheader['warnings']; $errors = $logheader['errors']; $stepspersent = 100; $steppersent = 100; $log .= '<span id="stopworking"></span>'; } echo json_encode(array('logpos' => $logpos, 'LOG' => $log, 'WARNING' => $warnings, 'ERROR' => $errors, 'STEPSPERSENT' => $stepspersent, 'STEPPERSENT' => $steppersent)); } die;
function backwpup_dashboard_logs() { $cfg = get_option('backwpup'); $widgets = get_option('dashboard_widget_options'); if (!isset($widgets['backwpup_dashboard_logs']) or $widgets['backwpup_dashboard_logs'] < 1 or $widgets['backwpup_dashboard_logs'] > 20) { $widgets['backwpup_dashboard_logs'] = 5; } //get log files $logfiles = array(); if ($dir = @opendir($cfg['dirlogs'])) { while (($file = readdir($dir)) !== false) { if (is_file($cfg['dirlogs'] . '/' . $file) and 'backwpup_log_' == substr($file, 0, strlen('backwpup_log_')) and ('.html' == substr($file, -5) or '.html.gz' == substr($file, -8))) { $logfiles[] = $file; } } closedir($dir); rsort($logfiles); } echo '<ul>'; if (count($logfiles) > 0) { $count = 0; foreach ($logfiles as $logfile) { $logdata = backwpup_read_logheader($cfg['dirlogs'] . '/' . $logfile); echo '<li>'; echo '<span>' . backwpup_date_i18n(get_option('date_format') . ' @ ' . get_option('time_format'), $logdata['logtime']) . '</span> '; echo '<a href="' . wp_nonce_url(backwpup_admin_url('admin.php') . '?page=backwpupworking&logfile=' . $cfg['dirlogs'] . '/' . $logfile, 'view-log_' . $logfile) . '" title="' . __('View Log:', 'backwpup') . ' ' . basename($logfile) . '">' . $logdata['name'] . '</i></a>'; if ($logdata['errors'] > 0) { printf(' <span style="color:red;font-weight:bold;">' . _n("%d ERROR", "%d ERRORS", $logdata['errors'], 'backwpup') . '</span>', $logdata['errors']); } if ($logdata['warnings'] > 0) { printf(' <span style="color:#e66f00;font-weight:bold;">' . _n("%d WARNING", "%d WARNINGS", $logdata['warnings'], 'backwpup') . '</span>', $logdata['warnings']); } if ($logdata['errors'] == 0 and $logdata['warnings'] == 0) { echo ' <span style="color:green;font-weight:bold;">' . __('O.K.', 'backwpup') . '</span>'; } echo '</li>'; $count++; if ($count >= $widgets['backwpup_dashboard_logs']) { break; } } echo '</ul>'; } else { echo '<i>' . __('none', 'backwpup') . '</i>'; } }