CRM-15678 hookable invalid page handling
[civicrm-core.git] / CRM / Utils / System / Joomla.php
index bef5c5780f82717f4a5dc1402b0273bfa402ed3c..3bbb4c50d2208b133dbc0f29722ed653babfff28 100644 (file)
@@ -1,7 +1,7 @@
 <?php
 /*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.5                                                |
+ | CiviCRM version 4.6                                                |
  +--------------------------------------------------------------------+
  | Copyright CiviCRM LLC (c) 2004-2014                                |
  +--------------------------------------------------------------------+
@@ -40,7 +40,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   /**
    *
    */
-  function __construct() {
+  public function __construct() {
     /**
      * deprecated property to check if this is a drupal install. The correct method is to have functions on the UF classes for all UF specific
      * functions and leave the codebase oblivious to the type of CMS
@@ -51,16 +51,15 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   }
 
   /**
-   * Function to create a user of Joomla.
+   * Create a user of Joomla.
    *
    * @param array  $params associated array
    * @param string $mail email id for cms user
    *
    * @return uid if user exists, false otherwise
    *
-   * @access public
    */
-  function createUser(&$params, $mail) {
+  public function createUser(&$params, $mail) {
     $baseDir = JPATH_SITE;
     require_once $baseDir . '/components/com_users/models/registration.php';
 
@@ -106,7 +105,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    *  @param integer $ufID User ID in CMS
    *  @param string $ufName User name
    */
-  function updateCMSName($ufID, $ufName) {
+  public function updateCMSName($ufID, $ufName) {
     $ufID = CRM_Utils_Type::escape($ufID, 'Integer');
     $ufName = CRM_Utils_Type::escape($ufName, 'String');
 
@@ -120,19 +119,15 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   }
 
   /**
-   * Check if username and email exists in the Joomla! db
+   * Check if username and email exists in the drupal db
    *
-   * @params $params    array   array of name and mail values
-   * @params $errors    array   array of errors
-   * @params $emailName string  field label for the 'email'
-   *
-   * @param $params
-   * @param $errors
-   * @param string $emailName
+   * @param array $params array of name and mail values
+   * @param array $errors array of errors
+   * @param string $emailName  field label for the 'email'
    *
    * @return void
    */
-  function checkUserNameEmailExists(&$params, &$errors, $emailName = 'email') {
+  public function checkUserNameEmailExists(&$params, &$errors, $emailName = 'email') {
     $config = CRM_Core_Config::singleton();
 
     $dao   = new CRM_Core_DAO();
@@ -179,15 +174,14 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   }
 
   /**
-   * sets the title of the page
+   * Sets the title of the page
    *
    * @param string $title title to set
    * @param string $pageTitle
    *
    * @return void
-   * @access public
    */
-  function setTitle($title, $pageTitle = NULL) {
+  public function setTitle($title, $pageTitle = NULL) {
     if (!$pageTitle) {
       $pageTitle = $title;
     }
@@ -210,9 +204,8 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @internal param string $url
    *
    * @return void
-   * @access public
    */
-  function appendBreadCrumb($breadCrumbs) {
+  public function appendBreadCrumb($breadCrumbs) {
     $template = CRM_Core_Smarty::singleton();
     $bc = $template->get_template_vars('breadcrumb');
 
@@ -242,9 +235,8 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @internal param string $bc the new breadcrumb to be appended
    *
    * @return void
-   * @access public
    */
-  function resetBreadCrumb() {
+  public function resetBreadCrumb() {
     return;
   }
 
@@ -256,9 +248,8 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @internal param string $head the new string to be appended
    *
    * @return void
-   * @access public
    */
-  static function addHTMLHead($string = NULL) {
+  public static function addHTMLHead($string = NULL) {
     if ($string) {
       $document = JFactory::getDocument();
       $document->addCustomTag($string);
@@ -275,7 +266,6 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @see CRM_Core_Region::render()
    *
    * @return bool TRUE if we support this operation in this CMS, FALSE otherwise
-   * @access public
    */
   public function addScriptUrl($url, $region) {
     return FALSE;
@@ -291,7 +281,6 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @see CRM_Core_Region::render()
    *
    * @return bool TRUE if we support this operation in this CMS, FALSE otherwise
-   * @access public
    */
   public function addScript($code, $region) {
     return FALSE;
@@ -307,7 +296,6 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @see CRM_Core_Region::render()
    *
    * @return bool TRUE if we support this operation in this CMS, FALSE otherwise
-   * @access public
    */
   public function addStyleUrl($url, $region) {
     if ($region == 'html-header') {
@@ -328,7 +316,6 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @see CRM_Core_Region::render()
    *
    * @return bool TRUE if we support this operation in this CMS, FALSE otherwise
-   * @access public
    */
   public function addStyle($code, $region) {
     if ($region == 'html-header') {
@@ -354,7 +341,6 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @param bool $forceBackend
    *
    * @return string            an HTML string containing a link to the given path.
-   * @access public
    */
   function url($path = NULL, $query = NULL, $absolute = TRUE,
     $fragment = NULL, $htmlize = TRUE,
@@ -415,25 +401,24 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   }
 
   /**
-   * rewrite various system urls to https
+   * Rewrite various system urls to https
    *
    * @return void
    * access public
    */
-  function mapConfigToSSL() {
+  public function mapConfigToSSL() {
     // dont need to do anything, let CMS handle their own switch to SSL
     return;
   }
 
   /**
-   * figure out the post url for the form
+   * Figure out the post url for the form
    *
    * @param $action the default action if one is pre-specified
    *
    * @return string the url to post the form
-   * @access public
    */
-  function postURL($action) {
+  public function postURL($action) {
     if (!empty($action)) {
       return $action;
     }
@@ -444,14 +429,13 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   }
 
   /**
-   * Function to set the email address of the user
+   * Set the email address of the user
    *
    * @param object $user handle to the user object
    *
    * @return void
-   * @access public
    */
-  function setEmail(&$user) {
+  public function setEmail(&$user) {
     global $database;
     $query = "SELECT email FROM #__users WHERE id='$user->id'";
     $database->setQuery($query);
@@ -468,9 +452,8 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @return mixed false if no auth
    *               array(
       contactID, ufID, unique string ) if success
-   * @access public
    */
-  function authenticate($name, $password, $loadCMSBootstrap = FALSE) {
+  public function authenticate($name, $password, $loadCMSBootstrap = FALSE) {
     require_once 'DB.php';
 
     $config = CRM_Core_Config::singleton();
@@ -562,9 +545,8 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    *
    * @param array $data  array with user specific data
    *
-   * @access public
    */
-  function setUserSession($data) {
+  public function setUserSession($data) {
     list($userID, $ufID) = $data;
     $user = new JUser( $ufID );
     $session = JFactory::getSession();
@@ -578,9 +560,8 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    *
    * @param string $message  the message to set
    *
-   * @access public
    */
-  function setMessage($message) {
+  public function setMessage($message) {
     return;
   }
 
@@ -589,15 +570,15 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    *
    * @return bool
    */
-  function loadUser($user) {
+  public function loadUser($user) {
     return TRUE;
   }
 
-  function permissionDenied() {
-    CRM_Core_Error::fatal(ts('You do not have permission to access this page'));
+  public function permissionDenied() {
+    CRM_Core_Error::fatal(ts('You do not have permission to access this page.'));
   }
 
-  function logout() {
+  public function logout() {
     session_destroy();
     header("Location:index.php");
   }
@@ -607,7 +588,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    *
    * @return string  the used locale or null for none
    */
-  function getUFLocale() {
+  public function getUFLocale() {
     if (defined('_JEXEC')) {
       $conf = JFactory::getConfig();
       $locale = $conf->get('language');
@@ -619,7 +600,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   /**
    * @return string
    */
-  function getVersion() {
+  public function getVersion() {
     if (class_exists('JVersion')) {
       $version = new JVersion;
       return $version->getShortVersion();
@@ -630,7 +611,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   }
 
   /**
-   * load joomla bootstrap
+   * Load joomla bootstrap
    *
    * @param $params array with uid or name and password
    * @param $loadUser boolean load cms user?
@@ -640,7 +621,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    *
    * @return bool
    */
-  function loadBootStrap($params = array(), $loadUser = TRUE, $throwError = TRUE, $realPath = NULL, $loadDefines = TRUE) {
+  public function loadBootStrap($params = array(), $loadUser = TRUE, $throwError = TRUE, $realPath = NULL, $loadDefines = TRUE) {
     // Setup the base path related constant.
     $joomlaBase = dirname(dirname(dirname(dirname(dirname(dirname(dirname(dirname(__FILE__))))))));
 
@@ -687,7 +668,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   }
 
   /**
-   * check is user logged in.
+   * Check is user logged in.
    *
    * @return boolean true/false.
    */
@@ -711,7 +692,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    *
    * @return string $userID logged in user unique identifier
    */
-  function getLoggedInUniqueIdentifier() {
+  public function getLoggedInUniqueIdentifier() {
     $user = JFactory::getUser();
     return $this->getUniqueIdentifierFromUserObject($user);
   }
@@ -720,7 +701,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @param object $user object as described by the CMS
    * @return mixed <NULL, number>
    */
-  function getUserIDFromUserObject($user) {
+  public function getUserIDFromUserObject($user) {
     return !empty($user->id) ? $user->id : NULL;
   }
 
@@ -730,7 +711,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * @return mixed $uniqueIdentifer Unique identifier from the user Framework system
    *
    */
-  function getUniqueIdentifierFromUserObject($user) {
+  public function getUniqueIdentifierFromUserObject($user) {
     return ($user->guest) ? NULL : $user->email;
   }
 
@@ -739,7 +720,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    *
    * @return array CRM_Core_Module
    */
-  function getModules() {
+  public function getModules() {
     $result = array();
 
     $db = JFactory::getDbo();
@@ -779,7 +760,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   }
 
   /**
-   * @param $form
+   * @param CRM_Core_Form $form
    */
   public function getLoginDestination(&$form) {
     $args = NULL;
@@ -823,7 +804,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * - $siteName,
    * - $siteRoot
    */
-  function getDefaultSiteSettings($dir){
+  public function getDefaultSiteSettings($dir){
     $config = CRM_Core_Config::singleton();
     $url = preg_replace(
       '|/administrator|',
@@ -844,7 +825,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    *
    * @return string
    */
-  function getUserRecordUrl($contactID) {
+  public function getUserRecordUrl($contactID) {
     $uid = CRM_Core_BAO_UFMatch::getUFId($contactID);
     $userRecordUrl = NULL;
     // if logged in user is super user, then he can view other users joomla profile
@@ -860,17 +841,17 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
    * Is the current user permitted to add a user
    * @return bool
    */
-  function checkPermissionAddUser() {
+  public function checkPermissionAddUser() {
     if (JFactory::getUser()->authorise('core.create', 'com_users')) {
       return TRUE;
     }
   }
 
   /**
-   * output code from error function
+   * Output code from error function
    * @param string $content
    */
-  function outputError($content) {
+  public function outputError($content) {
     if (class_exists('JErrorPage')) {
       $error = new Exception($content);
       JErrorPage::render($error);
@@ -886,8 +867,7 @@ class CRM_Utils_System_Joomla extends CRM_Utils_System_Base {
   /**
    * Append to coreResourcesList
    */
-  function appendCoreResources(&$list) {
+  public function appendCoreResources(&$list) {
     $list[] = 'js/crm.joomla.js';
   }
 }
-