You are here

function _popups_test_popups in Popups API (Ajax Dialogs) 6

Same name and namespace in other branches
  1. 5 popups.module \_popups_test_popups()
  2. 6.2 popups_test.module \_popups_test_popups()
  3. 7 popups.module \_popups_test_popups()
1 string reference to '_popups_test_popups'
popups_test_menu in ./popups_test.module
Implementation of hook_menu().

File

./popups_test.module, line 67
Page for testing the Popups API.

Code

function _popups_test_popups() {

  //  drupal_set_message('Popup Test Page: If you edit your page.tpl.php to wrap the print $messages in a div with id="popit", this message will popup on page load');
  popups_add_popups();
  $output = '<ul id="test-list">';
  $output .= '<li>' . l("Pop up entire local page.", 'popups/test/response', array(
    'attributes' => array(
      'class' => 'popups',
    ),
  ));
  $output .= "<li>" . l("Pop with options (href override).", 'popups/test/', array(
    'attributes' => array(
      'class' => 'popups',
      'on-popups-options' => '{href: "test/response"}',
    ),
  ));
  $output .= "<li>" . l("Pop with options (width=200px).", 'popups/test/response', array(
    'attributes' => array(
      'class' => 'popups',
      'on-popups-options' => '{width: "200px"}',
    ),
  ));
  $output .= "<li class=\"popups\" on-popups-options=\"{href: 'test/response'}\">Non-link popup</li>";
  $output .= '<li>' . l("Add Story (hook).", 'node/add/story', array(
    'attributes' => array(
      'id' => 'test-popup',
    ),
  ));
  $output .= '<li>' . l("Add Story (attribute).", 'node/add/story', array(
    'attributes' => array(
      'class' => 'popups-form',
    ),
  ));
  $output .= '<li>' . l("Change Settings and ajax update entire content area: ", 'admin/settings/popups', array(
    'attributes' => array(
      'class' => 'popups-form',
    ),
  ));
  $output .= " (Auto Fade checkbox is: " . (variable_get('popups_popup_final_message', 1) ? 'on' : 'off') . ')';
  $output .= '<li>' . l("Change Settings and ajax update only single target.", 'admin/settings/popups', array(
    'attributes' => array(
      'id' => 'reload-target',
    ),
  ));
  $output .= "<span id='response2'> (Auto Fade checkbox is: " . (variable_get('popups_popup_final_message', 1) ? 'on' : 'off') . ')</span>';
  popups_add_popups(array(
    '#reload-target' => array(
      'targetSelectors' => array(
        '#response2',
      ),
    ),
  ));
  $output .= '<li>' . l("Change Settings and ajax update multiple targets with data from other page (tricky!).", 'admin/settings/popups', array(
    'attributes' => array(
      'id' => 'foo',
      'class' => 'popups-form',
      'on-popups-options' => '{targetSelectors: {"#edit-popups-always-scan-wrapper": "#foo", "#edit-popups-popup-final-message-wrapper": "#test-list li:first"}, forceReturn: "admin/settings/popups"}',
    ),
  ));
  $output .= '<li>' . l("Change Settings and reload entire page.", 'admin/settings/popups', array(
    'attributes' => array(
      'class' => 'popups-form-reload',
    ),
  ));
  $output .= '<li>' . l("Pop up defined by popups_add_popups rule.", 'popups/test/response', array(
    'attributes' => array(
      'id' => 'rule-test',
    ),
  ));
  popups_add_popups(array(
    '#rule-test' => array(
      'width' => '300px',
    ),
  ));
  $output .= '<li>' . l('Ajax update just Page Title (only works if you theme uses id="page-title")', 'popups/test/namechange', array(
    'attributes' => array(
      'id' => 'title-test',
    ),
  ));
  popups_add_popups(array(
    '#title-test' => array(
      'titleSelectors' => array(
        '#page-title',
      ),
      'noUpdate' => TRUE,
      'forceReturn' => 'popups/test/namechange',
    ),
  ));
  global $user;
  $output .= "<li>You are user number {$user->uid}</li>";
  if ($user->uid == 0) {
    $output .= '<li>' . l("Login and ajax refresh content area.", 'user', array(
      'attributes' => array(
        'class' => 'popups-form',
      ),
    ));
    $output .= '<li>' . l("Login and reload entire page.", 'user', array(
      'attributes' => array(
        'class' => 'popups-form-reload',
      ),
    ));
    $output .= '<li>' . l("Login and do not reload anything.", 'user', array(
      'attributes' => array(
        'class' => 'popups-form-noupdate',
      ),
    ));
  }
  else {
    $output .= '<li>' . l("Logout (need to surpress warning b/c session is dumped)", 'logout', array(
      'attributes' => array(
        'id' => 'logout',
      ),
    ));
  }

  // Need to have the rule outside the else, or it won't get loaded on ajax reload.
  popups_add_popups(array(
    '#logout' => array(
      'noUpdate' => TRUE,
      'reloadOnError' => TRUE,
    ),
  ));
  $output .= "</ul>";
  return $output;
}