SloodleSession.html 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597
  1. <?xml version="1.0" encoding="iso-8859-1"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <!-- template designed by Marco Von Ballmoos -->
  6. <title>Docs For Class SloodleSession</title>
  7. <link rel="stylesheet" href="../media/stylesheet.css" />
  8. <script src="../media/lib/classTree.js"></script>
  9. <script language="javascript" type="text/javascript">
  10. var imgPlus = new Image();
  11. var imgMinus = new Image();
  12. imgPlus.src = "../media/images/plus.png";
  13. imgMinus.src = "../media/images/minus.png";
  14. function showNode(Node){
  15. switch(navigator.family){
  16. case 'nn4':
  17. // Nav 4.x code fork...
  18. var oTable = document.layers["span" + Node];
  19. var oImg = document.layers["img" + Node];
  20. break;
  21. case 'ie4':
  22. // IE 4/5 code fork...
  23. var oTable = document.all["span" + Node];
  24. var oImg = document.all["img" + Node];
  25. break;
  26. case 'gecko':
  27. // Standards Compliant code fork...
  28. var oTable = document.getElementById("span" + Node);
  29. var oImg = document.getElementById("img" + Node);
  30. break;
  31. }
  32. oImg.src = imgMinus.src;
  33. oTable.style.display = "block";
  34. }
  35. function hideNode(Node){
  36. switch(navigator.family){
  37. case 'nn4':
  38. // Nav 4.x code fork...
  39. var oTable = document.layers["span" + Node];
  40. var oImg = document.layers["img" + Node];
  41. break;
  42. case 'ie4':
  43. // IE 4/5 code fork...
  44. var oTable = document.all["span" + Node];
  45. var oImg = document.all["img" + Node];
  46. break;
  47. case 'gecko':
  48. // Standards Compliant code fork...
  49. var oTable = document.getElementById("span" + Node);
  50. var oImg = document.getElementById("img" + Node);
  51. break;
  52. }
  53. oImg.src = imgPlus.src;
  54. oTable.style.display = "none";
  55. }
  56. function nodeIsVisible(Node){
  57. switch(navigator.family){
  58. case 'nn4':
  59. // Nav 4.x code fork...
  60. var oTable = document.layers["span" + Node];
  61. break;
  62. case 'ie4':
  63. // IE 4/5 code fork...
  64. var oTable = document.all["span" + Node];
  65. break;
  66. case 'gecko':
  67. // Standards Compliant code fork...
  68. var oTable = document.getElementById("span" + Node);
  69. break;
  70. }
  71. return (oTable && oTable.style.display == "block");
  72. }
  73. function toggleNodeVisibility(Node){
  74. if (nodeIsVisible(Node)){
  75. hideNode(Node);
  76. }else{
  77. showNode(Node);
  78. }
  79. }
  80. </script>
  81. </head>
  82. <body>
  83. <div class="page-body">
  84. <h2 class="class-name"><img src="../media/images/Class_logo.png"
  85. alt=" Class"
  86. title=" Class"
  87. style="vertical-align: middle"> SloodleSession</h2>
  88. <a name="sec-description"></a>
  89. <div class="info-box">
  90. <div class="info-box-title">Description</div>
  91. <div class="nav-bar">
  92. <span class="disabled">Description</span> |
  93. <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
  94. | <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
  95. </div>
  96. <div class="info-box-body">
  97. <!-- ========== Info from phpDoc block ========= -->
  98. <p class="short-description">The primary API class, which manages all other parts.</p>
  99. <p class="notes">
  100. Located in <a class="field" href="_lib---sloodle_session.php.html">/lib/sloodle_session.php</a> (line <span class="field"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a34">34</a></span>)
  101. </p>
  102. <pre></pre>
  103. </div>
  104. </div>
  105. <a name="sec-var-summary"></a>
  106. <div class="info-box">
  107. <div class="info-box-title">Variable Summary</span></div>
  108. <div class="nav-bar">
  109. <a href="#sec-description">Description</a> |
  110. <span class="disabled">Vars</span> (<a href="#sec-vars">details</a>)
  111. |
  112. <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
  113. </div>
  114. <div class="info-box-body">
  115. <div class="var-summary">
  116. <div class="var-title">
  117. <img src="../media/images/Variable.png" alt=" " />
  118. <span class="var-type"><a href="../sloodle/SloodleCourse.html">SloodleCourse</a></span>
  119. <a href="#$course" title="details" class="var-name">$course</a>
  120. </div>
  121. <div class="var-title">
  122. <img src="../media/images/Variable.png" alt=" " />
  123. <span class="var-type"><a href="../sloodle/SloodleModule.html">SloodleModule</a></span>
  124. <a href="#$module" title="details" class="var-name">$module</a>
  125. </div>
  126. <div class="var-title">
  127. <img src="../media/images/Variable.png" alt=" " />
  128. <span class="var-type"><a href="../sloodle/SloodlePluginManager.html">SloodlePluginManager</a></span>
  129. <a href="#$plugins" title="details" class="var-name">$plugins</a>
  130. </div>
  131. <div class="var-title">
  132. <img src="../media/images/Variable.png" alt=" " />
  133. <span class="var-type"><a href="../sloodle/SloodleRequest.html">SloodleRequest</a></span>
  134. <a href="#$request" title="details" class="var-name">$request</a>
  135. </div>
  136. <div class="var-title">
  137. <img src="../media/images/Variable.png" alt=" " />
  138. <span class="var-type"><a href="../sloodle/SloodleResponse.html">SloodleResponse</a></span>
  139. <a href="#$response" title="details" class="var-name">$response</a>
  140. </div>
  141. <div class="var-title">
  142. <img src="../media/images/Variable.png" alt=" " />
  143. <span class="var-type"><a href="../sloodle/SloodleUser.html">SloodleUser</a></span>
  144. <a href="#$user" title="details" class="var-name">$user</a>
  145. </div>
  146. </div>
  147. </div>
  148. </div>
  149. <a name="sec-method-summary"></a>
  150. <div class="info-box">
  151. <div class="info-box-title">Method Summary</span></div>
  152. <div class="nav-bar">
  153. <a href="#sec-description">Description</a> |
  154. <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
  155. |
  156. <span class="disabled">Methods</span> (<a href="#sec-methods">details</a>)
  157. </div>
  158. <div class="info-box-body">
  159. <div class="method-summary">
  160. <div class="method-definition">
  161. <img src="../media/images/Constructor.png" alt=" "/>
  162. <span class="method-result">SloodleSession</span>
  163. <a href="#SloodleSession" title="details" class="method-name">SloodleSession</a>
  164. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$process</span> = <span class="var-default">true</span>])
  165. </div>
  166. <div class="method-definition">
  167. <img src="../media/images/Method.png" alt=" "/>
  168. <span class="method-result">bool</span>
  169. <a href="#authenticate_request" title="details" class="method-name">authenticate_request</a>
  170. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>])
  171. </div>
  172. <div class="method-definition">
  173. <img src="../media/images/Method.png" alt=" "/>
  174. <span class="method-result">bool</span>
  175. <a href="#authenticate_user_request" title="details" class="method-name">authenticate_user_request</a>
  176. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>])
  177. </div>
  178. <div class="method-definition">
  179. <img src="../media/images/Method.png" alt=" "/>
  180. <span class="method-result">bool</span>
  181. <a href="#load_module" title="details" class="method-name">load_module</a>
  182. (<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span>, <span class="var-type">bool</span>&nbsp;<span class="var-name">$db</span>, [<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>], [<span class="var-type">bool</span>&nbsp;<span class="var-name">$override_access</span> = <span class="var-default">false</span>])
  183. </div>
  184. <div class="method-definition">
  185. <img src="../media/images/Method.png" alt=" "/>
  186. <span class="method-result">bool</span>
  187. <a href="#validate_avatar" title="details" class="method-name">validate_avatar</a>
  188. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>])
  189. </div>
  190. <div class="method-definition">
  191. <img src="../media/images/Method.png" alt=" "/>
  192. <span class="method-result">bool</span>
  193. <a href="#validate_user" title="details" class="method-name">validate_user</a>
  194. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>], [<span class="var-type">bool</span>&nbsp;<span class="var-name">$suppress_autoreg</span> = <span class="var-default">false</span>], [<span class="var-type">bool</span>&nbsp;<span class="var-name">$suppress_autoenrol</span> = <span class="var-default">false</span>])
  195. </div>
  196. </div>
  197. </div>
  198. </div>
  199. <a name="sec-vars"></a>
  200. <div class="info-box">
  201. <div class="info-box-title">Variables</div>
  202. <div class="nav-bar">
  203. <a href="#sec-description">Description</a> |
  204. <a href="#sec-var-summary">Vars</a> (<span class="disabled">details</span>)
  205. |
  206. <a href="#sec-method-summary">Methods</a> (<a href="#sec-methods">details</a>)
  207. </div>
  208. <div class="info-box-body">
  209. <a name="var$course" id="$course"><!-- --></A>
  210. <div class="evenrow">
  211. <div class="var-header">
  212. <img src="../media/images/Variable.png" />
  213. <span class="var-title">
  214. <span class="var-type"><a href="../sloodle/SloodleCourse.html">SloodleCourse</a></span>
  215. <span class="var-name">$course</span>
  216. = <span class="var-default"> null</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a64">64</a></span>)
  217. </span>
  218. </div>
  219. <!-- ========== Info from phpDoc block ========= -->
  220. <p class="short-description">The Sloodle course structure for the course this session is accessing</p>
  221. <ul class="tags">
  222. <li><span class="field">access:</span> public</li>
  223. </ul>
  224. </div>
  225. <a name="var$module" id="$module"><!-- --></A>
  226. <div class="oddrow">
  227. <div class="var-header">
  228. <img src="../media/images/Variable.png" />
  229. <span class="var-title">
  230. <span class="var-type"><a href="../sloodle/SloodleModule.html">SloodleModule</a></span>
  231. <span class="var-name">$module</span>
  232. = <span class="var-default"> null</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a72">72</a></span>)
  233. </span>
  234. </div>
  235. <!-- ========== Info from phpDoc block ========= -->
  236. <p class="short-description">The Sloodle module this session relates to, if any.</p>
  237. <p class="description"><p>Note: this may be the base Sloodle module class, or a derivative.</p></p>
  238. <ul class="tags">
  239. <li><span class="field">access:</span> public</li>
  240. </ul>
  241. </div>
  242. <a name="var$plugins" id="$plugins"><!-- --></A>
  243. <div class="evenrow">
  244. <div class="var-header">
  245. <img src="../media/images/Variable.png" />
  246. <span class="var-title">
  247. <span class="var-type"><a href="../sloodle/SloodlePluginManager.html">SloodlePluginManager</a></span>
  248. <span class="var-name">$plugins</span>
  249. = <span class="var-default"> null</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a79">79</a></span>)
  250. </span>
  251. </div>
  252. <!-- ========== Info from phpDoc block ========= -->
  253. <p class="short-description">A plugin manager to help give access to plugins for various features.</p>
  254. <ul class="tags">
  255. <li><span class="field">access:</span> public</li>
  256. </ul>
  257. </div>
  258. <a name="var$request" id="$request"><!-- --></A>
  259. <div class="oddrow">
  260. <div class="var-header">
  261. <img src="../media/images/Variable.png" />
  262. <span class="var-title">
  263. <span class="var-type"><a href="../sloodle/SloodleRequest.html">SloodleRequest</a></span>
  264. <span class="var-name">$request</span>
  265. = <span class="var-default"> null</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a43">43</a></span>)
  266. </span>
  267. </div>
  268. <!-- ========== Info from phpDoc block ========= -->
  269. <p class="short-description">Incoming HTTP request.</p>
  270. <ul class="tags">
  271. <li><span class="field">access:</span> public</li>
  272. </ul>
  273. </div>
  274. <a name="var$response" id="$response"><!-- --></A>
  275. <div class="evenrow">
  276. <div class="var-header">
  277. <img src="../media/images/Variable.png" />
  278. <span class="var-title">
  279. <span class="var-type"><a href="../sloodle/SloodleResponse.html">SloodleResponse</a></span>
  280. <span class="var-name">$response</span>
  281. = <span class="var-default"> null</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a50">50</a></span>)
  282. </span>
  283. </div>
  284. <!-- ========== Info from phpDoc block ========= -->
  285. <p class="short-description">Outgoing response - can be rendered to HTTP or as a string.</p>
  286. <ul class="tags">
  287. <li><span class="field">access:</span> public</li>
  288. </ul>
  289. </div>
  290. <a name="var$user" id="$user"><!-- --></A>
  291. <div class="oddrow">
  292. <div class="var-header">
  293. <img src="../media/images/Variable.png" />
  294. <span class="var-title">
  295. <span class="var-type"><a href="../sloodle/SloodleUser.html">SloodleUser</a></span>
  296. <span class="var-name">$user</span>
  297. = <span class="var-default"> null</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a57">57</a></span>)
  298. </span>
  299. </div>
  300. <!-- ========== Info from phpDoc block ========= -->
  301. <p class="short-description">Current user information.</p>
  302. <ul class="tags">
  303. <li><span class="field">access:</span> public</li>
  304. </ul>
  305. </div>
  306. </div>
  307. </div>
  308. <a name="sec-methods"></a>
  309. <div class="info-box">
  310. <div class="info-box-title">Methods</div>
  311. <div class="nav-bar">
  312. <a href="#sec-description">Description</a> |
  313. <a href="#sec-var-summary">Vars</a> (<a href="#sec-vars">details</a>)
  314. <a href="#sec-method-summary">Methods</a> (<span class="disabled">details</span>)
  315. </div>
  316. <div class="info-box-body">
  317. <A NAME='method_detail'></A>
  318. <a name="methodSloodleSession" id="SloodleSession"><!-- --></a>
  319. <div class="evenrow">
  320. <div class="method-header">
  321. <img src="../media/images/Constructor.png" />
  322. <span class="method-title">Constructor SloodleSession</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a88">88</a></span>)
  323. </div>
  324. <!-- ========== Info from phpDoc block ========= -->
  325. <p class="short-description">Constructor - initialises members</p>
  326. <div class="method-signature">
  327. <span class="method-result">SloodleSession</span>
  328. <span class="method-name">
  329. SloodleSession
  330. </span>
  331. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$process</span> = <span class="var-default">true</span>])
  332. </div>
  333. <ul class="parameters">
  334. <li>
  335. <span class="var-type">bool</span>
  336. <span class="var-name">$process</span><span class="var-description">: If true (default) then basic request data will be processed immediately. Otherwise, it can be done manually by calling $request-&gt;process_request_data()</span> </li>
  337. </ul>
  338. </div>
  339. <a name="methodauthenticate_request" id="authenticate_request"><!-- --></a>
  340. <div class="oddrow">
  341. <div class="method-header">
  342. <img src="../media/images/Method.png" />
  343. <span class="method-title">authenticate_request</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a161">161</a></span>)
  344. </div>
  345. <!-- ========== Info from phpDoc block ========= -->
  346. <p class="short-description">Verifies security for the incoming request (but does not check user access).</p>
  347. <p class="description"><p>Initially ensures that the request is coming in on a valid and enabled course/controller (rejects it if not). The password is then checked, and it can handle prim-passwords and object-specific passwords.</p></p>
  348. <ul class="tags">
  349. <li><span class="field">return:</span> true if successful in authenticating the request, or false if not.</li>
  350. </ul>
  351. <div class="method-signature">
  352. <span class="method-result">bool</span>
  353. <span class="method-name">
  354. authenticate_request
  355. </span>
  356. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>])
  357. </div>
  358. <ul class="parameters">
  359. <li>
  360. <span class="var-type">bool</span>
  361. <span class="var-name">$require</span><span class="var-description">: If true, the function will NOT return on authentication failure. Rather, it will terminate the script with an error message.</span> </li>
  362. </ul>
  363. </div>
  364. <a name="methodauthenticate_user_request" id="authenticate_user_request"><!-- --></a>
  365. <div class="evenrow">
  366. <div class="method-header">
  367. <img src="../media/images/Method.png" />
  368. <span class="method-title">authenticate_user_request</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a279">279</a></span>)
  369. </div>
  370. <!-- ========== Info from phpDoc block ========= -->
  371. <p class="short-description">Verifies security for the incoming user-centric request.</p>
  372. <p class="description"><p>This ensures that the identified object is authorised for user-centric activities with the specified user.</p></p>
  373. <ul class="tags">
  374. <li><span class="field">return:</span> TRUE if successful, or FALSE on failure (unless parameter $require was TRUE).</li>
  375. </ul>
  376. <div class="method-signature">
  377. <span class="method-result">bool</span>
  378. <span class="method-name">
  379. authenticate_user_request
  380. </span>
  381. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>])
  382. </div>
  383. <ul class="parameters">
  384. <li>
  385. <span class="var-type">bool</span>
  386. <span class="var-name">$require</span><span class="var-description">: If TRUE (default) then the script will terminate with an error message on failure. Otherwise, it will return false on failure.</span> </li>
  387. </ul>
  388. </div>
  389. <a name="methodload_module" id="load_module"><!-- --></a>
  390. <div class="oddrow">
  391. <div class="method-header">
  392. <img src="../media/images/Method.png" />
  393. <span class="method-title">load_module</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a111">111</a></span>)
  394. </div>
  395. <!-- ========== Info from phpDoc block ========= -->
  396. <p class="short-description">Constructs and loads the appropriate module part of the session.</p>
  397. <p class="description"><p>Note that this function will fail if the current VLE user (in the $user member) does not have permission to access it.</p></p>
  398. <ul class="tags">
  399. <li><span class="field">return:</span> True if successful, or false otherwise. (Note, if parameter $require was true, then the script will terminate before this function returns if something goes wrong)</li>
  400. </ul>
  401. <div class="method-signature">
  402. <span class="method-result">bool</span>
  403. <span class="method-name">
  404. load_module
  405. </span>
  406. (<span class="var-type">string</span>&nbsp;<span class="var-name">$type</span>, <span class="var-type">bool</span>&nbsp;<span class="var-name">$db</span>, [<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>], [<span class="var-type">bool</span>&nbsp;<span class="var-name">$override_access</span> = <span class="var-default">false</span>])
  407. </div>
  408. <ul class="parameters">
  409. <li>
  410. <span class="var-type">string</span>
  411. <span class="var-name">$type</span><span class="var-description">: The expected type of module - function fails if type is not correctly matched</span> </li>
  412. <li>
  413. <span class="var-type">bool</span>
  414. <span class="var-name">$db</span><span class="var-description">: If true then the system will also try to load appropriate data from the database, as specified in the module ID request parameter</span> </li>
  415. <li>
  416. <span class="var-type">bool</span>
  417. <span class="var-name">$require</span><span class="var-description">: If true, then if something goes wrong, the script will be terminated with an error message</span> </li>
  418. <li>
  419. <span class="var-type">bool</span>
  420. <span class="var-name">$override_access</span><span class="var-description">: If true, then access can be gained to a module on a separate course from the current controller</span> </li>
  421. </ul>
  422. </div>
  423. <a name="methodvalidate_avatar" id="validate_avatar"><!-- --></a>
  424. <div class="evenrow">
  425. <div class="method-header">
  426. <img src="../media/images/Method.png" />
  427. <span class="method-title">validate_avatar</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a578">578</a></span>)
  428. </div>
  429. <!-- ========== Info from phpDoc block ========= -->
  430. <p class="short-description">Validate the avatar specified in the request, to ensure it is registered to a Moodle account.</p>
  431. <p class="description"><p>(Also ensures that avatar details were in fact provided in the request). This is effectively a less strict version of validated_user(), which also checks enrolment and such like. This function will NOT perform auto-registration or auto-enrolment.</p></p>
  432. <ul class="tags">
  433. <li><span class="field">return:</span> Returns true if validation was successful. Returns false on failure (unless $require was true).</li>
  434. <li><span class="field">see:</span> <a href="../sloodle/SloodleSession.html#methodvalidate_user">SloodleSession::validate_user()</a></li>
  435. </ul>
  436. <div class="method-signature">
  437. <span class="method-result">bool</span>
  438. <span class="method-name">
  439. validate_avatar
  440. </span>
  441. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>])
  442. </div>
  443. <ul class="parameters">
  444. <li>
  445. <span class="var-type">bool</span>
  446. <span class="var-name">$require</span><span class="var-description">: If true, the script will be terminated with an error message if validation fails</span> </li>
  447. </ul>
  448. </div>
  449. <a name="methodvalidate_user" id="validate_user"><!-- --></a>
  450. <div class="oddrow">
  451. <div class="method-header">
  452. <img src="../media/images/Method.png" />
  453. <span class="method-title">validate_user</span> (line <span class="line-number"><a href="../__filesource/fsource_sloodle__libsloodle_session.php.html#a369">369</a></span>)
  454. </div>
  455. <!-- ========== Info from phpDoc block ========= -->
  456. <p class="short-description">Validates the user account and enrolment (ensures there is an avatar linked to a VLE account, and that the VLE account is enrolled in the current course).</p>
  457. <p class="description"><p>Attempts auto-registration/enrolment if that is allowed and required, and logs-in the user. Server access level is checked if it is specified in the request parameters. If the request indicates that it relates to an object, then the validation fails. Note: if you only require to ensure that an avatar is registered, then use <a href="../sloodle/SloodleSession.html#methodvalidate_avatar">validate_avatar()</a>.</p></p>
  458. <ul class="tags">
  459. <li><span class="field">return:</span> Returns true if validation and/or autoregistration were successful. Returns false on failure (unless $require was true).</li>
  460. <li><span class="field">see:</span> <a href="../sloodle/SloodleSession.html#methodvalidate_avatar">SloodleSession::validate_avatar()</a></li>
  461. </ul>
  462. <div class="method-signature">
  463. <span class="method-result">bool</span>
  464. <span class="method-name">
  465. validate_user
  466. </span>
  467. ([<span class="var-type">bool</span>&nbsp;<span class="var-name">$require</span> = <span class="var-default">true</span>], [<span class="var-type">bool</span>&nbsp;<span class="var-name">$suppress_autoreg</span> = <span class="var-default">false</span>], [<span class="var-type">bool</span>&nbsp;<span class="var-name">$suppress_autoenrol</span> = <span class="var-default">false</span>])
  468. </div>
  469. <ul class="parameters">
  470. <li>
  471. <span class="var-type">bool</span>
  472. <span class="var-name">$require</span><span class="var-description">: If true, the script will be terminated with an error message if validation fails</span> </li>
  473. <li>
  474. <span class="var-type">bool</span>
  475. <span class="var-name">$suppress_autoreg</span><span class="var-description">: If true, auto-registration will be completely suppressed for this function call</span> </li>
  476. <li>
  477. <span class="var-type">bool</span>
  478. <span class="var-name">$suppress_autoenrol</span><span class="var-description">: If true, auto-enrolment will be completely suppressed for this function call</span> </li>
  479. </ul>
  480. </div>
  481. </div>
  482. </div>
  483. <p class="notes" id="credit">
  484. Documentation generated on Fri, 17 Jul 2009 11:02:30 +0100 by <a href="http://www.phpdoc.org" target="_blank">phpDocumentor 1.4.0</a>
  485. </p>
  486. </div></body>
  487. </html>