You are here

function theme_widgets_definition_list in Widgets 7

1 theme call to theme_widgets_definition_list()
widgets_definition_list in ./widgets.admin.inc
Menu callback; Listing of all current widget definitions.

File

./widgets.admin.inc, line 1250
Administration pages for widget settings.

Code

function theme_widgets_definition_list($variables) {
  $defs = $variables['definitions'];
  $header = array(
    t('Definition name'),
    t('Settings'),
    array(
      'data' => t('Operations'),
      'colspan' => 4,
    ),
  );
  $rows = array();
  foreach ($defs as $def) {
    $row = array();
    $row[] = l($def['name'], 'admin/structure/widgets/definitions/preview/' . $def['name']);
    $link_attributes = array(
      'attributes' => array(
        'class' => array(
          'widgets-set-link',
        ),
      ),
    );
    if ($def['storage'] == WIDGETS_STORAGE_NORMAL) {
      $row[] = t('Custom');
      $row[] = l(t('edit'), 'admin/structure/widgets/definitions/edit/' . $def['name'], $link_attributes);
      $row[] = l(t('delete'), 'admin/structure/widgets/definitions/delete/' . $def['name'], $link_attributes);
      $row[] = l(t('export'), 'admin/structure/widgets/definitions/export/' . $def['name'], $link_attributes);
    }
    else {
      $row[] = t('Default');
      $row[] = l(t('clone'), 'admin/structure/widgets/definitions/add/' . $def['name'], $link_attributes);
      $row[] = l(t('export'), 'admin/structure/widgets/definitions/export/' . $def['name'], $link_attributes);
      $row[] = '';
    }
    $rows[] = $row;
  }
  if (empty($rows)) {
    $rows[] = array(
      array(
        'colspan' => 5,
        'data' => t('There are currently no definitions. <a href="!url">Add a new one</a>.', array(
          '!url' => url('admin/structure/widgets/definitions/add'),
        )),
      ),
    );
  }
  return theme('table', array(
    'header' => $header,
    'rows' => $rows,
  ));
}