You are here

function patchinfo_form_update_manager_update_form_alter in PatchInfo 7

Same name and namespace in other branches
  1. 8.2 patchinfo.module \patchinfo_form_update_manager_update_form_alter()
  2. 8 patchinfo.module \patchinfo_form_update_manager_update_form_alter()

Implements hook_form_FORM_ID_alter() for update_manager_update_form().

File

./patchinfo.module, line 40
Patch Info primary module file.

Code

function patchinfo_form_update_manager_update_form_alter(&$form, &$form_state, $form_id) {

  // Add our CSS.
  $form['#attached']['css'][] = drupal_get_path('module', 'patchinfo') . '/patchinfo.css';

  // Add a highly visible notice for patched modules.
  $patch_info = _patchinfo_get_info();
  if (count($patch_info) > 0) {
    $projects = update_get_projects();
    foreach (element_children($form['project_downloads']) as $module) {
      $patches = _patchinfo_get_patches($patch_info, $projects[$module]);
      if (count($patches) > 0) {
        if (isset($form['projects']['#options'][$module]['title'])) {
          $form['projects']['#options'][$module]['title'] .= theme('patchinfo_patches', array(
            'patches' => $patches,
            'is_core' => FALSE,
          ));
        }
        elseif (isset($form['disabled_projects']['#options'][$module]['title'])) {
          $form['disabled_projects']['#options'][$module]['title'] .= theme('patchinfo_patches', array(
            'patches' => $patches,
            'is_core' => FALSE,
          ));
        }
      }
    }

    // If a manual update is available, check, if Drupal core has any
    // patches. If so, show a warning above the update form.
    if (isset($form['manual_updates'])) {
      $patches_drupal = _patchinfo_get_patches($patch_info, $projects['drupal']);
      if (count($patches_drupal) > 0) {
        $form['#prefix'] = theme('patchinfo_patches', array(
          'patches' => $patches_drupal,
          'is_core' => TRUE,
        ));
      }
    }
  }
}