Merge pull request #5977 from josephlacey/datatables-update
[civicrm-core.git] / CRM / Utils / System / Soap.php
CommitLineData
40d837df
CW
1<?php
2/*
3 +--------------------------------------------------------------------+
39de6fd5 4 | CiviCRM version 4.6 |
40d837df 5 +--------------------------------------------------------------------+
e7112fa7 6 | Copyright CiviCRM LLC (c) 2004-2015 |
40d837df
CW
7 +--------------------------------------------------------------------+
8 | This file is a part of CiviCRM. |
9 | |
10 | CiviCRM is free software; you can copy, modify, and distribute it |
11 | under the terms of the GNU Affero General Public License |
12 | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
13 | |
14 | CiviCRM is distributed in the hope that it will be useful, but |
15 | WITHOUT ANY WARRANTY; without even the implied warranty of |
16 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
17 | See the GNU Affero General Public License for more details. |
18 | |
19 | You should have received a copy of the GNU Affero General Public |
20 | License and the CiviCRM Licensing Exception along |
21 | with this program; if not, contact CiviCRM LLC |
22 | at info[AT]civicrm[DOT]org. If you have questions about the |
23 | GNU Affero General Public License or the licensing of CiviCRM, |
24 | see the CiviCRM license FAQ at http://civicrm.org/licensing |
25 +--------------------------------------------------------------------+
d25dd0ee 26 */
40d837df
CW
27
28/**
29 *
30 * @package CRM
e7112fa7 31 * @copyright CiviCRM LLC (c) 2004-2015
40d837df
CW
32 * $Id$
33 *
34 */
35
36/**
37 * Soap specific stuff goes here
38 */
39class CRM_Utils_System_Soap extends CRM_Utils_System_Base {
40
41 /**
fe482240 42 * UF container variables.
40d837df
CW
43 */
44 static $uf = NULL;
45 static $ufClass = NULL;
46
40d837df 47 /**
100fef9d 48 * Given a permission string, check for access requirements
40d837df 49 *
77855840
TO
50 * @param string $str
51 * The permission to check.
40d837df 52 *
d5cc0fc2 53 * @return bool
a6c01b45 54 * true if yes, else false
40d837df 55 */
00be9182 56 public function checkPermission($str) {
40d837df
CW
57 return TRUE;
58 }
59
60 /**
17f443df 61 * @inheritDoc
40d837df 62 */
00be9182 63 public function url($path = NULL, $query = NULL, $absolute = TRUE, $fragment = NULL) {
40d837df
CW
64 if (isset(self::$ufClass)) {
65 $className = self::$ufClass;
66 $url = $className::url($path, $query, $absolute, $fragment);
67 return $url;
68 }
69 else {
70 return NULL;
71 }
72 }
73
74 /**
17f443df
CW
75 * FIXME: Can this override be removed in favor of the parent?
76 * @inheritDoc
40d837df 77 */
00be9182 78 public function postURL($action) {
40d837df
CW
79 return NULL;
80 }
81
82 /**
fe482240 83 * Set the email address of the user.
40d837df 84 *
77855840
TO
85 * @param object $user
86 * Handle to the user object.
40d837df
CW
87 *
88 * @return void
40d837df 89 */
e7292422
TO
90 public function setEmail(&$user) {
91 }
40d837df
CW
92
93 /**
17f443df 94 * @inheritDoc
40d837df 95 */
17f443df 96 public function authenticate($name, $pass) {
40d837df
CW
97 if (isset(self::$ufClass)) {
98 $className = self::$ufClass;
99 $result =& $className::authenticate($name, $pass);
100 return $result;
101 }
102 else {
103 return NULL;
104 }
105 }
106
107 /**
fe482240 108 * Swap the current UF for soap.
40d837df
CW
109 */
110 public function swapUF() {
111 $config = CRM_Core_Config::singleton();
112
113 self::$uf = $config->userFramework;
114 $config->userFramework = 'Soap';
115
116 self::$ufClass = $config->userFrameworkClass;
117 $config->userFrameworkClass = 'CRM_Utils_System_Soap';
118 }
119
40d837df
CW
120 /**
121 * Get user login URL for hosting CMS (method declared in each CMS system class)
122 *
77855840 123 * @param string $destination
40d837df 124 *
f4aaa82a 125 * @throws Exception
40d837df
CW
126 */
127 public function getLoginURL($destination = '') {
128 throw new Exception("Method not implemented: getLoginURL");
129 }
96025800 130
40d837df 131}