<?php
/**
 * @file
 * A module that displays a popup to visitors.
 */

include 'includes/functions.inc';

/**
 * Implements hook_help().
 */
function popup_question_redirect_help($path, $arg) {
  $output = '';
  switch ($path) {
    case 'admin/help#popup_question_redirect':
      $output .= '<h3>' . t('About') . '</h3>';
      $output .= '<p>' . t('The Popup question redirect module allows you to create a popup with a message to display to your visitors.') . '</p>';
      $output .= '<p>' . t('You can configure the title and text for the popup by going to the <a href="@popup-question-redirect-configuration">configuration page</a>.', array('@popup-question-redirect-configuration' => url('admin/config/popup'))) . '</p>';
  }
  return $output;
}

/**
 * Implements hook_init().
 */
function popup_question_redirect_init() {

  // Include the functions.
  module_load_include('inc', 'popup_question_redirect', 'includes/functions');

  // Display the popup.
  popup_question_redirect_display_popup();
}

/**
 * Implements hook_theme().
 */
function popup_question_redirect_theme() {
  return array(
    'popup_question_redirect_popup' => array(
      'template' => 'templates/popup_question_redirect_popup',
    ),
  );
}

/**
 * Implements hook_permission().
 */
function popup_question_redirect_permission() {
  return array(
    'access popup configuration' => array(
      'title'       => t('Access popup configuration'),
      'description' => t('Grant permission to change configuration for the popup question redirect module.'),
    ),
  );
}

/**
 * Implements hook_menu().
 */
function popup_question_redirect_menu() {
  return array(
    'disable-popup'               => array(
      'page callback'    => 'popup_question_redirect_create_entry',
      'file'             => 'functions.inc',
      'file path'        => drupal_get_path('module', 'popup_question_redirect') . '/includes/',
      'access arguments' => array('access content'),
    ),
    'admin/config/popup'          => array(
      'title'            => 'Popup question redirect',
      'description'      => 'Popup question redirect configuration',
      'page callback'    => 'drupal_get_form',
      'page arguments'   => array('popup_question_redirect_config_form'),
      'access arguments' => array('administer openlucius configuration'),
      'position'         => 'left',
      'file'             => 'admin.inc',
      'file path'        => drupal_get_path('module', 'popup_question_redirect') . '/includes/',
    ),
    'admin/config/popup/settings' => array(
      'title'            => 'Configuration',
      'description'      => 'Popup question redirect configuration',
      'page callback'    => 'drupal_get_form',
      'page arguments'   => array('popup_question_redirect_config_form'),
      'access arguments' => array('access popup configuration'),
      'file'             => 'admin.inc',
      'file path'        => drupal_get_path('module', 'popup_question_redirect') . '/includes/',
      'type'             => MENU_DEFAULT_LOCAL_TASK,
    ),
    'admin/config/popup/list'     => array(
      'title'            => t('List'),
      'description'      => t('A list of entries in the popup question redirect table.'),
      'page callback'    => 'popup_question_redirect_get_entries_page',
      'access arguments' => array('access popup configuration'),
      'file'             => 'page.inc',
      'file path'        => drupal_get_path('module', 'popup_question_redirect') . '/includes/',
      'type'             => MENU_LOCAL_TASK,
    ),
  );
}
