X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FUtils%2FSystem%2FWordPress.php;h=d748d112597aa2cb9fdcf31b067906bf81ca8742;hb=408b79bf693050c99d4e441bbf5f55d147ed26db;hp=54d3b5c0a38468ec2ed17b012db6896a013544da;hpb=aa0b568b0563900aa6ddc792014cc17af2c3fc90;p=civicrm-core.git diff --git a/CRM/Utils/System/WordPress.php b/CRM/Utils/System/WordPress.php index 54d3b5c0a3..d748d11259 100644 --- a/CRM/Utils/System/WordPress.php +++ b/CRM/Utils/System/WordPress.php @@ -1,7 +1,7 @@ civicrm_context_get(); - switch ( $context ) { + switch ($context) { case 'admin': case 'shortcode': $template = CRM_Core_Smarty::singleton(); $template->assign('pageTitle', $pageTitle); } - } elseif (civicrm_wp_in_civicrm()) { + } + elseif (civicrm_wp_in_civicrm()) { // legacy pre-4.6 behaviour global $civicrm_wp_title; @@ -103,10 +102,8 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { * @internal param string $url * * @return void - * @access public - * @static */ - function appendBreadCrumb($breadCrumbs) { + public function appendBreadCrumb($breadCrumbs) { $breadCrumb = wp_get_breadcrumb(); if (is_array($breadCrumbs)) { @@ -135,10 +132,8 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { * Reset an additional breadcrumb tag to the existing breadcrumb * * @return void - * @access public - * @static */ - function resetBreadCrumb() { + public function resetBreadCrumb() { $bc = array(); wp_set_breadcrumb($bc); } @@ -146,13 +141,12 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Append a string to the head of the html file * - * @param string $head the new string to be appended + * @param string $head + * The new string to be appended. * * @return void - * @access public - * @static */ - function addHTMLHead($head) { + public function addHTMLHead($head) { static $registered = FALSE; if (!$registered) { // front-end view @@ -165,7 +159,7 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { )); } - static function _showHTMLHead() { + public static function _showHTMLHead() { $region = CRM_Core_Region::instance('wp_head', FALSE); if ($region) { echo $region->render(''); @@ -175,14 +169,15 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Add a script file * - * @param $url: string, absolute path to file - * @param $region string, location within the document: 'html-header', 'page-header', 'page-footer' + * @param $url : string, absolute path to file + * @param string $region + * location within the document: 'html-header', 'page-header', 'page-footer'. * * Note: This function is not to be called directly * @see CRM_Core_Region::render() * - * @return bool TRUE if we support this operation in this CMS, FALSE otherwise - * @access public + * @return bool + * TRUE if we support this operation in this CMS, FALSE otherwise */ public function addScriptUrl($url, $region) { return FALSE; @@ -191,14 +186,15 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Add an inline script * - * @param $code: string, javascript code - * @param $region string, location within the document: 'html-header', 'page-header', 'page-footer' + * @param $code : string, javascript code + * @param string $region + * location within the document: 'html-header', 'page-header', 'page-footer'. * * Note: This function is not to be called directly * @see CRM_Core_Region::render() * - * @return bool TRUE if we support this operation in this CMS, FALSE otherwise - * @access public + * @return bool + * TRUE if we support this operation in this CMS, FALSE otherwise */ public function addScript($code, $region) { return FALSE; @@ -207,14 +203,15 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Add a css file * - * @param $url: string, absolute path to file - * @param $region string, location within the document: 'html-header', 'page-header', 'page-footer' + * @param $url : string, absolute path to file + * @param string $region + * location within the document: 'html-header', 'page-header', 'page-footer'. * * Note: This function is not to be called directly * @see CRM_Core_Region::render() * - * @return bool TRUE if we support this operation in this CMS, FALSE otherwise - * @access public + * @return bool + * TRUE if we support this operation in this CMS, FALSE otherwise */ public function addStyleUrl($url, $region) { return FALSE; @@ -223,14 +220,15 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Add an inline style * - * @param $code: string, css code - * @param $region string, location within the document: 'html-header', 'page-header', 'page-footer' + * @param $code : string, css code + * @param string $region + * location within the document: 'html-header', 'page-header', 'page-footer'. * * Note: This function is not to be called directly * @see CRM_Core_Region::render() * - * @return bool TRUE if we support this operation in this CMS, FALSE otherwise - * @access public + * @return bool + * TRUE if we support this operation in this CMS, FALSE otherwise */ public function addStyle($code, $region) { return FALSE; @@ -239,13 +237,9 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Rewrite various system urls to https * - * @param null - * * @return void - * @access public - * @static */ - function mapConfigToSSL() { + public function mapConfigToSSL() { global $base_url; $base_url = str_replace('http://', 'https://', $base_url); } @@ -253,13 +247,13 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Figure out the post url for the form * - * @param mix $action the default action if one is pre-specified + * @param mix $action + * The default action if one is pre-specified. * - * @return string the url to post the form - * @access public - * @static + * @return string + * the url to post the form */ - function postURL($action) { + public function postURL($action) { if (!empty($action)) { return $action; } @@ -270,21 +264,27 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Generate an internal CiviCRM URL (copied from DRUPAL/includes/common.inc#url) * - * @param $path string The path being linked to, such as "civicrm/add" - * @param $query string A query string to append to the link. - * @param $absolute boolean Whether to force the output to be an absolute link (beginning with http:). + * @param string $path + * The path being linked to, such as "civicrm/add". + * @param string $query + * A query string to append to the link. + * @param bool $absolute + * Whether to force the output to be an absolute link (beginning with http:). * Useful for links that will be displayed outside the site, such as in an * RSS feed. - * @param $fragment string A fragment identifier (named anchor) to append to the link. - * @param $htmlize boolean whether to convert to html eqivalant - * @param $frontend boolean a gross joomla hack + * @param string $fragment + * A fragment identifier (named anchor) to append to the link. + * @param bool $htmlize + * whether to convert to html eqivalant. + * @param bool $frontend + * a gross joomla hack. * * @param bool $forceBackend * - * @return string an HTML string containing a link to the given path. - * @access public + * @return string + * an HTML string containing a link to the given path. */ - function url( + public function url( $path = NULL, $query = NULL, $absolute = FALSE, @@ -293,10 +293,10 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { $frontend = FALSE, $forceBackend = FALSE ) { - $config = CRM_Core_Config::singleton(); - $script = ''; + $config = CRM_Core_Config::singleton(); + $script = ''; $separator = $htmlize ? '&' : '&'; - $wpPageParam = ''; + $wpPageParam = ''; $fragment = isset($fragment) ? ('#' . $fragment) : ''; $path = CRM_Utils_String::stripPathChars($path); @@ -315,7 +315,7 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { // when shortcode is included in page // also make sure we have valid query object global $wp_query; - if ( method_exists( $wp_query, 'get' ) ) { + if (method_exists($wp_query, 'get')) { if (get_query_var('page_id')) { $wpPageParam = "page_id=" . get_query_var('page_id'); } @@ -364,7 +364,7 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { * @return mixed|null|string */ private function getBaseUrl($absolute, $frontend, $forceBackend) { - $config = CRM_Core_Config::singleton(); + $config = CRM_Core_Config::singleton(); if (!isset($config->useFrameworkRelativeBase)) { $base = parse_url($config->userFrameworkBaseURL); @@ -391,19 +391,18 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Authenticate the user against the wordpress db * - * @param string $name the user name - * @param string $password the password for the above user name + * @param string $name + * The user name. + * @param string $password + * The password for the above user name. * * @param bool $loadCMSBootstrap * @param null $realPath * - * @return mixed false if no auth - * array( - * contactID, ufID, unique string ) if success - * @access public - * @static + * @return array|bool + * [contactID, ufID, uniqueString] if success else false if no auth */ - function authenticate($name, $password, $loadCMSBootstrap = FALSE, $realPath = NULL) { + public function authenticate($name, $password, $loadCMSBootstrap = FALSE, $realPath = NULL) { $config = CRM_Core_Config::singleton(); if ($loadCMSBootstrap) { @@ -428,12 +427,11 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Set a message in the UF to display to a user * - * @param string $message the message to set + * @param string $message + * The message to set. * - * @access public - * @static */ - function setMessage($message) { + public function setMessage($message) { } /** @@ -441,15 +439,15 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { * * @return bool */ - function loadUser( $user ) { - return true; + public function loadUser($user) { + return TRUE; } - function permissionDenied() { + public function permissionDenied() { CRM_Core_Error::fatal(ts('You do not have permission to access this page.')); } - function logout() { + public function logout() { // destroy session if (session_id()) { session_destroy(); @@ -458,14 +456,16 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { wp_redirect(wp_login_url()); } - function updateCategories() {} + public function updateCategories() { + } /** * Get the locale set in the hosting CMS * - * @return string with the locale or null for none + * @return string + * with the locale or null for none */ - function getUFLocale() { + public function getUFLocale() { // WPML plugin if (defined('ICL_LANGUAGE_CODE')) { $language = ICL_LANGUAGE_CODE; @@ -475,7 +475,8 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { if (isset($language)) { return CRM_Core_I18n_PseudoConstant::longForShort(substr($language, 0, 2)); - } else { + } + else { return NULL; } } @@ -483,12 +484,14 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Load wordpress bootstrap * - * @param $name string optional username for login - * @param $pass string optional password for login + * @param string $name + * optional username for login. + * @param string $pass + * optional password for login. * * @return bool */ - function loadBootStrap($name = NULL, $pass = NULL) { + public function loadBootStrap($name = NULL, $pass = NULL) { global $wp, $wp_rewrite, $wp_the_query, $wp_query, $wpdb; $cmsRootPath = $this->cmsRootPath(); @@ -496,13 +499,13 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { CRM_Core_Error::fatal("Could not find the install directory for WordPress"); } - require_once ($cmsRootPath . DIRECTORY_SEPARATOR . 'wp-load.php'); + require_once $cmsRootPath . DIRECTORY_SEPARATOR . 'wp-load.php'; $wpUserTimezone = get_option('timezone_string'); if ($wpUserTimezone) { date_default_timezone_set($wpUserTimezone); CRM_Core_Config::singleton()->userSystem->setMySQLTimeZone(); } - require_once ($cmsRootPath . DIRECTORY_SEPARATOR . 'wp-includes/pluggable.php'); + require_once $cmsRootPath . DIRECTORY_SEPARATOR . 'wp-includes/pluggable.php'; $uid = CRM_Utils_Array::value('uid', $name); if ($uid) { $account = wp_set_current_user($uid); @@ -512,7 +515,7 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { return TRUE; } } - return true; + return TRUE; } /** @@ -520,12 +523,9 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { * * @return bool */ - function validInstallDir($dir) { + public function validInstallDir($dir) { $includePath = "$dir/wp-includes"; - if ( - @opendir($includePath) && - file_exists("$includePath/version.php") - ) { + if (file_exists("$includePath/version.php")) { return TRUE; } return FALSE; @@ -534,12 +534,10 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Determine the location of the CMS root. * - * @return string|NULL local file system path to CMS root, or NULL if it cannot be determined + * @return string|NULL + * local file system path to CMS root, or NULL if it cannot be determined */ - /** - * @return NULL|string - */ - function cmsRootPath() { + public function cmsRootPath() { $cmsRoot = $valid = NULL; if (defined('CIVICRM_CMSDIR')) { if ($this->validInstallDir(CIVICRM_CMSDIR)) { @@ -576,7 +574,7 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { * * @return mixed */ - function createUser(&$params, $mail) { + public function createUser(&$params, $mail) { $user_data = array( 'ID' => '', 'user_pass' => $params['cms_pass'], @@ -612,18 +610,20 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Change user name in host CMS * - * @param integer $ufID User ID in CMS - * @param string $ufName User name + * @param int $ufID + * User ID in CMS. + * @param string $ufName + * User name. */ - function updateCMSName($ufID, $ufName) { + public function updateCMSName($ufID, $ufName) { // CRM-10620 if (function_exists('wp_update_user')) { - $ufID = CRM_Utils_Type::escape($ufID, 'Integer'); + $ufID = CRM_Utils_Type::escape($ufID, 'Integer'); $ufName = CRM_Utils_Type::escape($ufName, 'String'); - $values = array ('ID' => $ufID, 'user_email' => $ufName); - if( $ufID ) { - wp_update_user( $values ) ; + $values = array('ID' => $ufID, 'user_email' => $ufName); + if ($ufID) { + wp_update_user($values); } } } @@ -633,11 +633,11 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { * @param $errors * @param string $emailName */ - function checkUserNameEmailExists(&$params, &$errors, $emailName = 'email') { + public function checkUserNameEmailExists(&$params, &$errors, $emailName = 'email') { $config = CRM_Core_Config::singleton(); - $dao = new CRM_Core_DAO(); - $name = $dao->escape(CRM_Utils_Array::value('name', $params)); + $dao = new CRM_Core_DAO(); + $name = $dao->escape(CRM_Utils_Array::value('name', $params)); $email = $dao->escape(CRM_Utils_Array::value('mail', $params)); if (!empty($params['name'])) { @@ -665,7 +665,7 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Check is user logged in. * - * @return boolean true/false. + * @return bool */ public function isUserLoggedIn() { $isloggedIn = FALSE; @@ -679,17 +679,20 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * @return mixed */ - function getLoggedInUserObject() { + public function getLoggedInUserObject() { if (function_exists('is_user_logged_in') && - is_user_logged_in()) { + is_user_logged_in() + ) { global $current_user; } return $current_user; } + /** * Get currently logged in user uf id. * - * @return int $userID logged in user uf id. + * @return int + * $userID logged in user uf id. */ public function getLoggedInUfID() { $ufID = NULL; @@ -700,39 +703,44 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Get currently logged in user unique identifier - this tends to be the email address or user name. * - * @return string $userID logged in user unique identifier + * @return string + * logged in user unique identifier */ - function getLoggedInUniqueIdentifier() { + public function getLoggedInUniqueIdentifier() { $user = $this->getLoggedInUserObject(); return $this->getUniqueIdentifierFromUserObject($user); } /** * Get User ID from UserFramework system (Joomla) - * @param object $user object as described by the CMS - * @return mixed + * @param object $user + * Object as described by the CMS. + * + * @return int|null */ - function getUserIDFromUserObject($user) { + public function getUserIDFromUserObject($user) { return !empty($user->ID) ? $user->ID : NULL; } /** * Get Unique Identifier from UserFramework system (CMS) - * @param object $user object as described by the User Framework - * @return mixed $uniqueIdentifer Unique identifier from the user Framework system - * + * @param object $user + * Object as described by the User Framework. + * @return int|null + * Unique identifier from the user Framework system */ - function getUniqueIdentifierFromUserObject($user) { + public function getUniqueIdentifierFromUserObject($user) { return empty($user->user_email) ? NULL : $user->user_email; } /** * Get user login URL for hosting CMS (method declared in each CMS system class) * - * @param string $destination - if present, add destination to querystring (works for Drupal only) - * - * @return string - loginURL for the current CMS + * @param string $destination + * If present, add destination to querystring (works for Drupal only). * + * @return string + * loginURL for the current CMS */ public function getLoginURL($destination = '') { $config = CRM_Core_Config::singleton(); @@ -745,16 +753,16 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { * @param CRM_Core_Form $form */ public function getLoginDestination(&$form) { - return; + return NULL; } /** * Return the current WordPress version if relevant function exists * - * @return string - version number - * + * @return string + * version number */ - function getVersion() { + public function getVersion() { if (function_exists('get_bloginfo')) { return get_bloginfo('version', 'display'); } @@ -765,23 +773,26 @@ class CRM_Utils_System_WordPress extends CRM_Utils_System_Base { /** * Get timezone as a string - * @return string Timezone e.g. 'America/Los_Angeles' + * @return string + * Timezone e.g. 'America/Los_Angeles' */ - function getTimeZoneString() { + public function getTimeZoneString() { return get_option('timezone_string'); } /** * Get Url to view user record - * @param integer $contactID Contact ID + * @param int $contactID + * Contact ID. * * @return string */ - function getUserRecordUrl($contactID) { + public function getUserRecordUrl($contactID) { $uid = CRM_Core_BAO_UFMatch::getUFId($contactID); - if (CRM_Core_Session::singleton()->get('userID') == $contactID || CRM_Core_Permission::checkAnyPerm(array('cms:administer users'))) { + if (CRM_Core_Session::singleton() + ->get('userID') == $contactID || CRM_Core_Permission::checkAnyPerm(array('cms:administer users')) + ) { return CRM_Core_Config::singleton()->userFrameworkBaseURL . "wp-admin/user-edit.php?user_id=" . $uid; } } } -