You are here

popups_admin.module in Popups API (Ajax Dialogs) 6

Same filename and directory in other branches
  1. 5 popups_admin.module
  2. 6.2 popups_admin.module

Uses the popups API to add some popups to admin pages.

@todo Adding Javascript into popups doesn't always work. tabledrag onmouse up action. user.js and teaser.js bugs. Taxonomy > Add vocab. Adding second item to page does not trigger d-n-d transformation. Might be a problem with Taxonomy. Menus doesn't have problem (adds d-n-d on first item).

File

popups_admin.module
View source
<?php

/**
 * @file
 * Uses the popups API to add some popups to admin pages.
 * 
 * @todo
 * Adding Javascript into popups doesn't always work.
 *   tabledrag onmouse up action.
 *   user.js and teaser.js bugs.
 * Taxonomy > Add vocab.  Adding second item to page does not trigger d-n-d transformation.
 *     Might be a problem with Taxonomy.  Menus doesn't have problem (adds d-n-d on first item).
 *
 */

/**
 * hook_popups
 * 
 * This implements hook_popups, defined in popups_get_popups.
 * It adds page-in-popup behavior to the core admin pages.
 * See the comments in popups_add_popups for explination of the options.
 *
 */
function popups_admin_popups() {
  return array(
    'admin/build/block' => array(
      // Blocks admin page.
      '#tabs-wrapper a[href$=admin/build/block/add]',
      // Add Block
      '#blocks a[href~=admin/build/block/configure]' => array(
        // configure
        'additionalJavascript' => array(
          'misc/collapse.js',
        ),
      ),
      '#blocks a[href~=admin/build/block/delete]',
    ),
    'admin/build/path' => array(
      // URL aliases admin page.
      '#tabs-wrapper a[href$=admin/build/path/add]',
      // Add alias
      'td:nth-child(3) a[href~=admin/build/path/edit]',
      // edit alias
      'td:nth-child(4) a[href~=admin/build/path/delete]',
    ),
    'admin/content/taxonomy' => array(
      // Taxonomy admin page.
      // TODO: If there are not more than one items to start with, d-n-d files aren't loaded into page.
      // This causes trouble when the 2nd item is added, no d-n-d.
      // Might be bug in taxonomy table building (or at least inconsistancy).
      '#tabs-wrapper a[href$=admin/content/taxonomy/add/vocabulary]' => array(
        // Add vocabulary
        'additionalJavascript' => array(
          'misc/tabledrag.js',
        ),
      ),
      '#taxonomy-overview-vocabularies td a:contains(' . t('edit vocabulary') . ')',
      // edit vocabulary
      '#taxonomy-overview-vocabularies td a:contains(' . t('list terms') . ')' => array(
        // list terms
        'noUpdate' => TRUE,
        'additionalJavascript' => array(
          'misc/tabledrag.js',
        ),
      ),
      '#taxonomy-overview-vocabularies td a:contains(' . t('add terms') . ')' => array(
        // add terms
        'noUpdate' => TRUE,
        'additionalJavascript' => array(
          'misc/collapse.js',
        ),
      ),
    ),
    'admin/content/types' => array(
      // Content Type admin page
      '#tabs-wrapper a[href$=admin/content/types/add]' => array(
        // Add content type
        'additionalJavascript' => array(
          'misc/collapse.js',
        ),
      ),
      'table td:nth-child(4) a, table td:nth-child(5) a, table td:nth-child(7) a',
    ),
    'admin/content/types/list' => array(
      // Content Type admin page
      '#tabs-wrapper a[href$=admin/content/types/add]' => array(
        // Add content type
        'additionalJavascript' => array(
          'misc/collapse.js',
        ),
      ),
      'table td:nth-child(4) a, table td:nth-child(5) a, table td:nth-child(7) a',
    ),
    'admin/content/node' => array(
      // Existing Content admin page
      '#node-admin-content td a:contains(' . t('edit') . ')' => array(
        // edit
        'additionalJavascript' => array(
          'misc/collapse.js',
        ),
      ),
    ),
    'page_node_form' => array(
      // Node edit form
      'a[href$=filter/tips]' => array(
        // Fixes insane "More information..." link
        'noUpdate' => TRUE,
      ),
    ),
    'admin/content/comment' => array(
      // Comments admin page.
      'table td:nth-child(2) a' => array(
        // view (TODO: popup too small)
        'noUpdate' => TRUE,
        'additionalCss' => array(),
      ),
      '#comment-admin-overview td a:contains(' . t('edit') . ')' => array(
        // edit
        'additionalJavascript' => array(
          'misc/collapse.js',
        ),
      ),
    ),
    'admin/user/rules' => array(
      // Access rules admin page.
      '#tabs-wrapper a[href$=admin/user/rules/add]',
      // Add rule
      'table td:nth-child(4) a, table td:nth-child(5) a',
      // edit, delete
      '#tabs-wrapper a[href$=/admin/user/rules/check]' => array(
        // Check rule
        'noUpdate' => TRUE,
      ),
    ),
    'admin/user/user' => array(
      // Manage all users admin page.

      //Add user (TODO: Can't test, keeps crashing apache!)
      '#tabs-wrapper a[href$=admin/user/user/create]' => array(
        // TODO: "translate has no properties" user.js line 16.
        'additionalJavascript' => array(
          drupal_get_path('module', 'user') . '/user.js',
        ),
      ),
      '#user-admin-account td:nth-child(2) a' => array(
        // View the user
        'noUpdate' => TRUE,
      ),
    ),
    'menu_overview_form' => array(
      // Menu admin form.
      // Add Item, , edit, delete
      '#tabs-wrapper a:eq(1), table#menu-overview td:nth-child(5) a, table#menu-overview td:nth-child(6) a',
      '#tabs-wrapper a:eq(2)' => array(
        // Edit menu: update just page title.
        'updateTitle' => TRUE,
        'noUpdate' => TRUE,
      ),
    ),
  );
}

Functions

Namesort descending Description
popups_admin_popups hook_popups