3 +--------------------------------------------------------------------+
4 | Copyright CiviCRM LLC. All rights reserved. |
6 | This work is published under the GNU AGPLv3 license with some |
7 | permitted exceptions and without any warranty. For full license |
8 | and copyright information, see https://civicrm.org/licensing |
9 +--------------------------------------------------------------------+
15 * @copyright CiviCRM LLC https://civicrm.org/licensing
19 * Soap specific stuff goes here.
21 class CRM_Utils_System_Soap
extends CRM_Utils_System_Base
{
24 * UF container variables.
27 public static $uf = NULL;
28 public static $ufClass = NULL;
31 * Given a permission string, check for access requirements
34 * The permission to check.
37 * true if yes, else false
39 public function checkPermission($str) {
46 public function url($path = NULL, $query = NULL, $absolute = TRUE, $fragment = NULL, $frontend = FALSE, $forceBackend = FALSE, $htmlize = TRUE) {
47 if (isset(self
::$ufClass)) {
48 $className = self
::$ufClass;
49 $url = $className::url($path, $query, $absolute, $fragment);
58 * FIXME: Can this override be removed in favor of the parent?
61 public function postURL($action) {
66 * Set the email address of the user.
69 * Handle to the user object.
71 public function setEmail(&$user) {
77 public function authenticate($name, $pass) {
78 if (isset(self
::$ufClass)) {
79 $className = self
::$ufClass;
80 $result =& $className::authenticate($name, $pass);
89 * Swap the current UF for soap.
91 public function swapUF() {
92 $config = CRM_Core_Config
::singleton();
94 self
::$uf = $config->userFramework
;
95 $config->userFramework
= 'Soap';
97 self
::$ufClass = $config->userFrameworkClass
;
98 $config->userFrameworkClass
= 'CRM_Utils_System_Soap';
102 * Get user login URL for hosting CMS (method declared in each CMS system class)
104 * @param string $destination
108 public function getLoginURL($destination = '') {
109 throw new Exception("Method not implemented: getLoginURL");
112 public function loadBootStrap($params = [], $loadUser = TRUE, $throwError = TRUE, $realPath = NULL) {
113 // It makes zero sense for this class to extend CRM_Utils_System_Base.
114 throw new \
RuntimeException("Not implemented");