}, 'cell_class' => 'row_action'); $columns['file_description'] = array('title' => 'Description', 'callback' => function ($file) { echo module_security::purify_html($file['description']); }); $columns['file_status'] = array('title' => 'Status', 'callback' => function ($file) { echo nl2br(htmlspecialchars($file['status'])); }); $columns['file_size'] = array('title' => 'Size', 'callback' => function ($file) { if ($file['bucket']) { // how many files are under this bucket? $search = array(); $search['bucket_parent_file_id'] = $file['file_id']; echo _l('%s files', count(module_file::get_files($search))); } else { if (file_exists($file['file_path'])) { echo module_file::format_bytes(filesize($file['file_path'])); } } }); if (!isset($_REQUEST['customer_id'])) { $columns['file_customer'] = array('title' => 'Customer', 'callback' => function ($file) { echo module_customer::link_open($file['customer_id'], true); }); } if (class_exists('module_job', false)) { $columns['file_job'] = array('title' => 'Job', 'callback' => function ($file) { echo module_job::link_open($file['job_id'], true); }); } if (class_exists('module_quote', false) && module_quote::is_plugin_enabled()) { $columns['file_quote'] = array('title' => 'Quote', 'callback' => function ($file) {
$table_manager = module_theme::new_table_manager(); $columns = array(); $columns['backup_name'] = array('title' => 'Backup', 'callback' => function ($backup) { echo '<a href="' . module_backup::link_open($backup['backup_id'], false) . '">' . _l('View Backup') . '</a>'; }, 'cell_class' => 'row_action'); $columns['backup_size'] = array('title' => 'Backup Size', 'callback' => function ($backup) { if (strlen($backup['backup_file']) && file_exists(_BACKUP_BASE_DIR . basename($backup['backup_file']) . '.zip')) { echo module_file::format_bytes(filesize(_BACKUP_BASE_DIR . basename($backup['backup_file']) . '.zip')) . ' ' . _l('files'); echo ' '; } if (strlen($backup['backup_file']) && file_exists(_BACKUP_BASE_DIR . basename($backup['backup_file']) . '.sql')) { echo module_file::format_bytes(filesize(_BACKUP_BASE_DIR . basename($backup['backup_file']) . '.sql')) . ' ' . _l('database'); echo ' '; } if (strlen($backup['backup_file']) && file_exists(_BACKUP_BASE_DIR . basename($backup['backup_file']) . '.sql.gz')) { echo module_file::format_bytes(filesize(_BACKUP_BASE_DIR . basename($backup['backup_file']) . '.sql.gz')) . ' ' . _l('database'); echo ' '; } }); $columns['backup_date'] = array('title' => 'Date Created', 'callback' => function ($backup) { echo _l('%s by %s', print_date($backup['date_created']), module_user::link_open($backup['create_user_id'], true)); }); $table_manager->set_columns($columns); $table_manager->set_rows($backups); if (module_config::c('backup_time', 0) > 0) { $table_manager->blank_message = _l('The last backup was: %s', print_date(module_config::c('backup_time', 0), true)); } else { $table_manager->blank_message = _l('No backups yet. Please create one.'); } $table_manager->pagination = false; $table_manager->print_table();