CRM_Utils_System_Drupal6
class CRM_Utils_System_Drupal6 extends CRM_Utils_System_DrupalBase
Drupal specific stuff goes here.
Properties
bool | $is_drupal | Deprecated property to check if this is a drupal install. | from CRM_Utils_System_Base |
bool | $is_joomla | Deprecated property to check if this is a joomla 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 | from CRM_Utils_System_Base |
bool | $is_wordpress | deprecated property to check if this is a wordpress 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 | from CRM_Utils_System_Base |
bool | $supports_UF_Logging | Does this CMS / UF support a CMS specific logging mechanism? | from CRM_Utils_System_DrupalBase |
bool | $supports_form_extensions | from CRM_Utils_System_Base |
Methods
Load drupal bootstrap.
No description
No description
Append a string to the head of the html file.
No description
Fixme: Why are we overriding the parent function? Seems inconsistent.
Generate an internal CiviCRM URL (copied from DRUPAL/includes/common.inc#url)
No description
No description
No description
Theme output.
Get the absolute path to the site's base url.
No description
Get CMS root path.
Create user.
No description
No description
No description
Determine the native ID of the CMS user.
Add a css file.
No description
Determine the location of the CiviCRM source tree.
Perform any post login activities required by the UF - e.g. for drupal : records a watchdog message about the new session, saves the login timestamp, calls hook_user op 'login' and generates a new session.
Set timezone in mysql so that timestamp fields show the correct time.
No description
No description
Get an array of user details for a contact, containing at minimum the user ID & name.
No description
Return a UFID (user account ID from the UserFramework / CMS system.
Return a unique identifier (usually an email address or username) from the UserFramework / CMS system.
No description
No description
No description
Send an HTTP Response base on PSR HTTP RespnseInterface response.
Check if a resource url is within the drupal directory and format appropriately.
In instance where civicrm folder has a drupal folder & a civicrm core folder @ the same level append the civicrm folder name to the url See CRM-13737 for discussion of how this allows implementers to alter the folder structure
Find any users/roles/security-principals with the given permission and replace it with one or more permissions.
Function to return current language of Drupal
Check if username and email exists in the drupal db.
Get the name of the table that stores the user details.
Wrapper for og_membership creation.
Wrapper for og_membership deletion.
Details
in CRM_Utils_System_Base at line 53
initialize()
at line 425
loadBootStrap($params = [], $loadUser = TRUE, $throwError = TRUE, $realPath = NULL)
Load drupal bootstrap.
at line 222
appendBreadCrumb(array $breadCrumbs)
at line 247
resetBreadCrumb()
at line 258
addHTMLHead(string $head)
Append a string to the head of the html file.
at line 286
mapConfigToSSL()
in CRM_Utils_System_DrupalBase at line 540
string
postURL(string $action)
Fixme: Why are we overriding the parent function? Seems inconsistent.
This version supplies slightly different params to $this->url (not absolute and html encoded) but why?
in CRM_Utils_System_DrupalBase at line 168
string
url(string $path = NULL, string $query = NULL, bool $absolute = FALSE, string $fragment = NULL, bool $frontend = FALSE, bool $forceBackend = FALSE)
Generate an internal CiviCRM URL (copied from DRUPAL/includes/common.inc#url)
at line 307
array|bool
authenticate(string $name, string $password, bool $loadCMSBootstrap = FALSE, string $realPath = NULL)
in CRM_Utils_System_DrupalBase at line 237
setMessage(string $message)
at line 360
bool
loadUser($username)
in CRM_Utils_System_DrupalBase at line 259
permissionDenied()
at line 407
logout()
in CRM_Utils_System_DrupalBase at line 429
updateCategories()
in CRM_Utils_System_DrupalBase at line 438
string|null
getUFLocale()
at line 54
string|null
theme(string $content, bool $print = FALSE, bool $maintenance = FALSE)
Theme output.
If we are using a theming system, invoke theme, else just print the content.
in CRM_Utils_System_Base at line 287
string
getDefaultBlockLocation()
in CRM_Utils_System_Base at line 296
bool|mixed|string
getAbsoluteBaseURL()
Get the absolute path to the site's base url.
in CRM_Utils_System_Base at line 318
bool
getRelativeBaseURL()
Get the relative path to the sites base url.
in CRM_Utils_System_DrupalBase at line 402
string
getVersion()
at line 613
string
languageNegotiationURL(string $url, bool $addLanguagePart = TRUE, bool $removeLanguagePart = FALSE)
at line 532
string|null
cmsRootPath(string $scriptFilename = NULL)
Get CMS root path.
at line 83
int|bool
createUser(array $params, string $mail)
Create user.
at line 122
updateCMSName(int $ufID, $ufName)
at line 586
bool
isUserLoggedIn()
in CRM_Utils_System_DrupalBase at line 409
bool
isUserRegistrationPermitted()
in CRM_Utils_System_DrupalBase at line 419
bool
isPasswordUserGenerated()
in CRM_Utils_System_DrupalBase at line 675
bool
isFrontEndPage()
Is a front end page being accessed.
Generally this would be a contribution form or other public page as opposed to a backoffice page (like contact edit).
See https://github.com/civicrm/civicrm-drupal/pull/546/files
at line 714
string
getLoginURL(string $destination = '')
in CRM_Utils_System_DrupalBase at line 502
string|NULL
getLoginDestination(CRM_Core_Form $form)
at line 396
getUfId(string $username)
Determine the native ID of the CMS user.
in CRM_Utils_System_DrupalBase at line 466
bool
setUFLocale(string $civicrm_language)
in CRM_Utils_System_Base at line 485
setUserSession(array $data)
Set a init session with user object.
in CRM_Utils_System_DrupalBase at line 304
flush()
in CRM_Utils_System_DrupalBase at line 297
clearResourceCache()
in CRM_Utils_System_Base at line 519
bool
addScriptUrl(string $url, string $region)
Add a script file.
Note: This function is not to be called directly
in CRM_Utils_System_Base at line 536
bool
addScript(string $code, string $region)
Add an inline script.
Note: This function is not to be called directly
at line 275
bool
addStyleUrl(string $url, string $region)
Add a css file.
in CRM_Utils_System_Base at line 570
bool
addStyle(string $code, string $region)
Add an inline style.
Note: This function is not to be called directly
at line 209
setTitle(string $title, string|null $pageTitle = NULL)
in CRM_Utils_System_DrupalBase at line 85
array
getDefaultSiteSettings(string $dir)
in CRM_Utils_System_DrupalBase at line 64
array
getDefaultFileStorage()
in CRM_Utils_System_Base at line 654
array
getCiviSourceStorage()
Determine the location of the CiviCRM source tree.
FIXME: 1. This was pulled out from a bigger function. It should be split into even smaller pieces and marked abstract. 2. This would be easier to compute by a calling a CMS API, but for whatever reason we take the hard way.
at line 386
userLoginFinalize(array $params = [])
Perform any post login activities required by the UF - e.g. for drupal : records a watchdog message about the new session, saves the login timestamp, calls hook_user op 'login' and generates a new session.
in CRM_Utils_System_Base at line 717
setMySQLTimeZone()
Set timezone in mysql so that timestamp fields show the correct time.
in CRM_Utils_System_Base at line 730
string|false|null
getTimeZoneOffset()
Get timezone from CMS.
at line 752
string
getTimeZoneString()
in CRM_Utils_System_DrupalBase at line 244
mixed
getUniqueIdentifierFromUserObject(object $user)
in CRM_Utils_System_DrupalBase at line 230
null|int
getUserIDFromUserObject(object $user)
in CRM_Utils_System_DrupalBase at line 557
array
getUser(int $contactID)
Get an array of user details for a contact, containing at minimum the user ID & name.
at line 598
int|null
getLoggedInUfID()
in CRM_Utils_System_DrupalBase at line 251
string|null
getLoggedInUniqueIdentifier()
in CRM_Utils_System_Base at line 851
int
getBestUFID(object $user = NULL)
Return a UFID (user account ID from the UserFramework / CMS system.
ID is based on the user object passed, defaulting to the logged in user if not passed.
Note that ambiguous situation occurs in CRM_Core_BAO_UFMatch::synchronize - a cleaner approach would seem to be resolving the user id before calling the function.
Note there is already a function getUFId which takes $username as a param - we could add $user as a second param to it but it seems messy - just overloading it because the name is taken.
in CRM_Utils_System_Base at line 871
string
getBestUFUniqueIdentifier(object $user = NULL)
Return a unique identifier (usually an email address or username) from the UserFramework / CMS system.
This is based on the user object passed, defaulting to the logged in user if not passed.
Note that ambiguous situation occurs in CRM_Core_BAO_UFMatch::synchronize - a cleaner approach would seem to be resolving the unique identifier before calling the function.
at line 702
array
getModules()
in CRM_Utils_System_DrupalBase at line 266
string|null
getUserRecordUrl(int $contactID)
in CRM_Utils_System_DrupalBase at line 281
bool
checkPermissionAddUser()
in CRM_Utils_System_Base at line 914
outputError(string $content)
Output code from error function.
in CRM_Utils_System_DrupalBase at line 288
logger(string $message)
in CRM_Utils_System_Base at line 931
appendCoreResources(GenericHookEvent $e)
Append to coreResourcesList.
in CRM_Utils_System_Base at line 939
alterAssetUrl(GenericHookEvent $e)
Modify dynamic assets.
at line 779
setHttpHeader(string $name, string $value)
at line 786
array
synchronizeUsers()
in CRM_Utils_System_Base at line 966
sendResponse(ResponseInterface $response)
Send an HTTP Response base on PSR HTTP RespnseInterface response.
in CRM_Utils_System_DrupalBase at line 50
__construct()
in CRM_Utils_System_DrupalBase at line 116
bool
formatResourceUrl($url)
Check if a resource url is within the drupal directory and format appropriately.
in CRM_Utils_System_DrupalBase at line 154
string
appendCoreDirectoryToResourceBase(string $url)
In instance where civicrm folder has a drupal folder & a civicrm core folder @ the same level append the civicrm folder name to the url See CRM-13737 for discussion of how this allows implementers to alter the folder structure
at line 680
void
replacePermission(string $oldPerm, array $newPerms)
Find any users/roles/security-principals with the given permission and replace it with one or more permissions.
in CRM_Utils_System_DrupalBase at line 574
object
getUserObject($userID)
Load the user object.
Note this function still works in drupal 6, 7 & 8 but is deprecated in Drupal 8.
in CRM_Utils_System_DrupalBase at line 586
null|string
parseDrupalSiteNameFromRoot(string $civicrm_root)
deprecated
deprecated
Parse the name of the drupal site.
in CRM_Utils_System_DrupalBase at line 661
string
getCurrentLanguage()
Function to return current language of Drupal
at line 143
checkUserNameEmailExists(array $params, array $errors, string $emailName = 'email')
Check if username and email exists in the drupal db.
at line 296
protected string
getUsersTableName()
Get the name of the table that stores the user details.
at line 733
og_membership_create(int $ogID, int $drupalID)
Wrapper for og_membership creation.
at line 745
og_membership_delete(int $ogID, int $drupalID)
Wrapper for og_membership deletion.