You are here

function backup_migrate_ui_manual_prune_list in Backup and migrate prune 7

Same name and namespace in other branches
  1. 7.2 backup_migrate_prune.module \backup_migrate_ui_manual_prune_list()

Page callback for the prune list

@todo Move presentation code to a theme function

1 string reference to 'backup_migrate_ui_manual_prune_list'
backup_migrate_prune_menu in ./backup_migrate_prune.module
Implementation of hook_menu().

File

./backup_migrate_prune.module, line 257
Create (manually or scheduled) and restore backups of your Drupal MySQL database with an option to exclude table data (e.g. cache_*)

Code

function backup_migrate_ui_manual_prune_list() {
  backup_migrate_include('destinations');
  $query = db_select('backup_migrate_gardener', 'bmg')
    ->fields('bmg')
    ->execute();
  $rows = array();
  $days = array(
    1 => t('Monday'),
    2 => t('Tuesday'),
    3 => t('Wednesday'),
    4 => t('Thursday'),
    5 => t('Friday'),
    6 => t('Saturday'),
    7 => t('Sunday'),
  );
  $week = array(
    1 => t('1st week'),
    2 => t('2nd week'),
    3 => t('3rd week'),
    4 => t('4th week'),
  );
  $month = array(
    1 => t('January'),
    2 => t('February'),
    3 => t('March'),
    4 => t('April'),
    5 => t('May'),
    6 => t('June'),
    7 => t('July'),
    8 => t('August'),
    9 => t('September'),
    10 => t('October'),
    11 => t('November'),
    12 => t('December'),
  );
  while ($result = $query
    ->fetchAssoc()) {
    $result['settings'] = unserialize($result['settings']);
    $rows[] = array(
      'data' => array(
        $result['name'],
        backup_migrate_get_destination($result['destination_id'])->name,
        $result['settings']['thismonth_slot']['active'] ? $days[$result['settings']['thismonth_slot']['keep']] : t('- Inactive -'),
        $result['settings']['thisyear_slot']['active'] ? $week[$result['settings']['thisyear_slot']['keep']] : t('- Inactive -'),
        $result['settings']['pastyears_slot']['active'] ? $month[$result['settings']['pastyears_slot']['keep']] : t('- Inactive -'),
        format_date($result['created'], 'short'),
        theme('item_list', array(
          'items' => array(
            l(t('Edit'), BACKUP_MIGRATE_MENU_PATH . '/prune/edit/' . $result['gardener_id']),
            l(t('Delete'), BACKUP_MIGRATE_MENU_PATH . '/prune/delete/' . $result['gardener_id']),
            l(t('Prune'), BACKUP_MIGRATE_MENU_PATH . '/prune/prune/' . $result['gardener_id']),
            l(t('See files'), BACKUP_MIGRATE_MENU_PATH . '/destination/list/files/' . $result['destination_id']),
          ),
        )),
      ),
    );
  }
  $header = array(
    t('Gardener name'),
    t('Destination'),
    t('Keep day'),
    t('Keep week'),
    t('Keep month'),
    t('Created'),
    t('Actions'),
  );
  return theme('table', array(
    'header' => $header,
    'rows' => $rows,
  ));
}