Open Journal Systems  3.3.0
AuthPlugin.inc.php
1 <?php
2 
19 define('AUTH_PLUGIN_CATEGORY', 'auth');
20 import('lib.pkp.classes.plugins.Plugin');
21 
22 abstract class AuthPlugin extends Plugin {
23 
25  var $settings;
26 
28  var $authId;
29 
35  function __construct($settings = array(), $authId = null) {
36  parent::__construct();
37  $this->settings = $settings;
38  $this->authId = $authId;
39  }
40 
41 
42  //
43  // General Plugin Functions
44  //
50  function getSettingsTemplate() {
51  return $this->getTemplateResource('settings.tpl');
52  }
53 
54 
55  //
56  // Wrapper Functions
57  //
63  function doGetUserInfo($user) {
64  if (isset($this->settings['syncProfiles'])) {
65  return $this->getUserInfo($user);
66  }
67  return false;
68  }
69 
75  function doSetUserInfo($user) {
76  if (isset($this->settings['syncProfiles'])) {
77  return $this->setUserInfo($user);
78  }
79  return false;
80  }
81 
88  function doSetUserPassword($username, $password) {
89  if (isset($this->settings['syncPasswords'])) {
90  return $this->setUserPassword($username, $password);
91  }
92  return false;
93  }
94 
100  function doCreateUser($user) {
101  if (isset($this->settings['createUsers'])) {
102  return $this->createUser($user);
103  }
104  return false;
105  }
106 
107 
108  //
109  // Core Plugin Functions
110  // (Must be implemented by every authentication plugin)
111  //
118  abstract function getInstance($settings, $authId);
119 
126  abstract function authenticate($username, $password);
127 
128 
129  //
130  // Optional Plugin Functions
131  // (Required for extended functionality but not for authentication-only plugins)
132  //
138  function userExists($username) {
139  return false;
140  }
141 
148  function getUserInfo($user) {
149  return false;
150  }
151 
157  function setUserInfo($user) {
158  return false;
159  }
160 
167  function setUserPassword($username, $password) {
168  return false;
169  }
170 
176  function createUser($user) {
177  return false;
178  }
179 
187  function deleteUser($username) {
188  return false;
189  }
190 
194  function isSitePlugin() {
195  return true;
196  }
197 }
198 
199 
AuthPlugin\__construct
__construct($settings=array(), $authId=null)
Definition: AuthPlugin.inc.php:41
AuthPlugin\deleteUser
deleteUser($username)
Definition: AuthPlugin.inc.php:193
AuthPlugin\$settings
$settings
Definition: AuthPlugin.inc.php:28
AuthPlugin\$authId
$authId
Definition: AuthPlugin.inc.php:34
AuthPlugin\getUserInfo
getUserInfo($user)
Definition: AuthPlugin.inc.php:154
Plugin\__construct
__construct()
Definition: Plugin.inc.php:73
AuthPlugin\getSettingsTemplate
getSettingsTemplate()
Definition: AuthPlugin.inc.php:56
AuthPlugin\createUser
createUser($user)
Definition: AuthPlugin.inc.php:182
AuthPlugin\doSetUserInfo
doSetUserInfo($user)
Definition: AuthPlugin.inc.php:81
AuthPlugin\doSetUserPassword
doSetUserPassword($username, $password)
Definition: AuthPlugin.inc.php:94
AuthPlugin\userExists
userExists($username)
Definition: AuthPlugin.inc.php:144
AuthPlugin\doGetUserInfo
doGetUserInfo($user)
Definition: AuthPlugin.inc.php:69
Plugin
Abstract class for plugins.
Definition: Plugin.inc.php:51
Plugin\getTemplateResource
getTemplateResource($template=null, $inCore=false)
Definition: Plugin.inc.php:349
AuthPlugin\doCreateUser
doCreateUser($user)
Definition: AuthPlugin.inc.php:106
AuthPlugin\setUserPassword
setUserPassword($username, $password)
Definition: AuthPlugin.inc.php:173
AuthPlugin\isSitePlugin
isSitePlugin()
Definition: AuthPlugin.inc.php:200
AuthPlugin\setUserInfo
setUserInfo($user)
Definition: AuthPlugin.inc.php:163
AuthPlugin\authenticate
authenticate($username, $password)
AuthPlugin\getInstance
getInstance($settings, $authId)
AuthPlugin
Abstract class for authentication plugins.
Definition: AuthPlugin.inc.php:22