Compare commits

...

1018 Commits

Author SHA1 Message Date
Martin Dougiamas 892aafe88d Bumping to 1.9.8 release 2010-03-25 04:11:28 +00:00
Moodle Robot 6a8797fae6 Updated the 19 build version to 20100325 2010-03-25 00:43:56 +00:00
Petr Skoda 7bce3cf885 MDL-21910 adding https www root to flash detection 2010-03-24 08:28:28 +00:00
Petr Skoda 67255b58ec MDL-21802 backporting patch for vulnerability in CAS client library 2010-03-24 08:11:47 +00:00
Petr Skoda 351d2a98ac file readme_moodle.txt was added on branch MOODLE_19_STABLE on 2010-03-24 08:11:47 +0000 2010-03-24 08:11:13 +00:00
Moodle Robot 58b89df986 Updated the 19 build version to 20100324 2010-03-24 00:43:08 +00:00
Moodle Robot a4e4a51219 Updated the 19 build version to 20100323 2010-03-23 00:42:54 +00:00
Eloy Lafuente 2c77aa3685 MDL-19233 restore of roles - prevent role creation, role assignment and
permission overrides by observing corresponding caps. Improve role mapping a bit.
Credit goes to Daniel Neis.
2010-03-22 22:10:33 +00:00
Eloy Lafuente a914552779 NOBUG: Fixed incorrect text comparison breaking mssql/oracle upgrade 2010-03-22 10:59:05 +00:00
Moodle Robot 3dafa79a51 Updated the 19 build version to 20100322 2010-03-22 00:43:21 +00:00
Eloy Lafuente 68323795b8 MDL-21868 mssql generator - be a bot more specific (both must be integers) 2010-03-21 18:47:35 +00:00
Eloy Lafuente 32feeb023c MDL-21868 mssql generator - improve integer meta type detection 2010-03-21 18:04:44 +00:00
Moodle Robot 09b2ffb97b Updated the 19 build version to 20100321 2010-03-21 00:43:07 +00:00
Moodle Robot f60a7c8bbd Updated the 19 build version to 20100320 2010-03-20 00:44:57 +00:00
Petr Skoda 811c2e7575 MDL-21788 use session regeneration on all sites by default and improved string 2010-03-19 07:58:52 +00:00
Moodle Robot 2a011db8a2 Updated the 19 build version to 20100319 2010-03-19 00:43:48 +00:00
Moodle Robot 986a3d0036 Automatic installer.php lang files by installer_builder (20100319) 2010-03-19 00:36:12 +00:00
Petr Skoda 12b9842c6b MDL-21859 fixed sesskey protection on email actions 2010-03-18 22:54:28 +00:00
Petr Skoda 838093ab3b MDL-21830 Prevent users from viewing names of all other site users - only teachers with role assign see the full name of not enrolled users when trying to access the profile 2010-03-18 22:15:22 +00:00
Petr Skoda e92e4b8ab0 MDL-21068 do not show admin usernames in cron logs 2010-03-18 21:59:51 +00:00
Petr Skoda 31eb0fddb6 MDL-21649 fixed form value quoting 2010-03-18 21:23:25 +00:00
Petr Skoda 031afaa59c MDL-21858 improved input validation 2010-03-18 21:07:54 +00:00
Petr Skoda 9c170e28c4 MDL-21818 fixed globals problems 2010-03-18 20:58:19 +00:00
Moodle Robot 7e02fe26fc Updated the 19 build version to 20100318 2010-03-18 00:44:10 +00:00
Moodle Robot 469a320ea1 Automatic installer.php lang files by installer_builder (20100318) 2010-03-18 00:36:32 +00:00
Helen Foster 0ee71c638a help file MDL-17698 edits to ensure XHTML strict compliance thanks to David Horat 2010-03-17 14:11:42 +00:00
Helen Foster 64b004b025 help file MDL-17698 edits to ensure XHTML strict compliance thanks to David Horat 2010-03-17 14:01:24 +00:00
Helen Foster 080f872804 help file MDL-21308 rewording thanks to Bente Olsen 2010-03-17 10:47:48 +00:00
Helen Foster 171d0f7b86 help file MDL-21600 obsolete file thanks to Koen Roggemans 2010-03-17 09:46:14 +00:00
Moodle Robot 250f99df74 Updated the 19 build version to 20100317 2010-03-17 00:44:16 +00:00
Moodle Robot 0d361c8309 Automatic installer.php lang files by installer_builder (20100317) 2010-03-17 00:36:21 +00:00
Moodle Robot 6c1bc334c0 Updated the 19 build version to 20100316 2010-03-16 00:43:30 +00:00
Gordon Bateson 9f23ea03b1 MDL-21817 replace use of preg_match() with /e modifier with preg_replace_callback() and preg_match_all() with a loop 2010-03-15 10:39:42 +00:00
Gordon Bateson b45b9eae4d MDL-21817 replace use of preg_match() with /e modifier with preg_match_callback() and preg_match_all() with a loop 2010-03-15 10:15:59 +00:00
Moodle Robot ca2d4e6edc Updated the 19 build version to 20100315 2010-03-15 00:43:28 +00:00
Moodle Robot 4a1fc7b4de Updated the 19 build version to 20100314 2010-03-14 00:44:07 +00:00
Moodle Robot 5b9b92e935 Updated the 19 build version to 20100313 2010-03-13 00:43:21 +00:00
Moodle Robot ef0cdb25ef Automatic installer.php lang files by installer_builder (20100312) 2010-03-12 15:17:13 +00:00
Moodle Robot 35a0d5f8c8 Automatic installer.php lang files by installer_builder (20100312) 2010-03-12 15:01:52 +00:00
Dan Marsden 278fc21a29 AICC MDL-21332 set scoid if not already set - thanks to Matteo Scaramuccia for report and fix. merged from HEAD 2010-03-12 07:39:09 +00:00
Dan Marsden 05d9f028e7 AICC MDL-21305 mastery score should be set even when lessonstatus <> "completed" - thanks to Matteo Scaramuccia for report and fix. merged from HEAD 2010-03-12 07:27:22 +00:00
Moodle Robot e7a7712bfa Updated the 19 build version to 20100312 2010-03-12 00:43:23 +00:00
Moodle Robot e31b66eb15 Automatic installer.php lang files by installer_builder (20100312) 2010-03-12 00:35:50 +00:00
Dan Poltawski 3afe38a532 lib/blocklib.php MDL-21805 Moving blocks up/down causes blocks to disappear
If two blocks of the same type were next to each other the weight would be
set the same and block disappear..

Thanks to my colleague Andrew Nicols for the patch.

(This patch was commited on a train at 90mph near Coventry, UK)
2010-03-11 16:25:45 +00:00
Moodle Robot 7b6c6e9c31 Updated the 19 build version to 20100311 2010-03-11 00:43:03 +00:00
Petr Skoda a8944c8195 MDL-21789 fixed buggy handling of 0.00 in s() 2010-03-10 08:46:19 +00:00
Moodle Robot 903182f822 Updated the 19 build version to 20100310 2010-03-10 00:43:11 +00:00
Helen Foster 97f7661011 lang string MDL-21016 rewording as suggested by Ray Lawrence 2010-03-09 21:40:56 +00:00
Moodle Robot 9d3c427e7d Updated the 19 build version to 20100309 2010-03-09 00:43:38 +00:00
Moodle Robot 8d08717b51 Updated the 19 build version to 20100308 2010-03-08 00:42:59 +00:00
Petr Skoda 63c7303150 MDL-21769 fixed input validation 2010-03-07 15:36:20 +00:00
Petr Skoda 38b6976505 MDL-21769 fixed input validation 2010-03-07 15:29:39 +00:00
Petr Skoda b6c760ccd7 MDL-21769 fixed input validation 2010-03-07 15:23:58 +00:00
Petr Skoda 3d2d9e6527 MDL-21769 fixed input validation 2010-03-07 15:16:19 +00:00
Petr Skoda f7429974b2 MDL-21769 fixed input validation 2010-03-07 15:10:15 +00:00
Petr Skoda e20b7eed49 MDL-21767 fixed input validation 2010-03-07 14:57:43 +00:00
Moodle Robot 9597ac84c9 Updated the 19 build version to 20100307 2010-03-07 00:43:00 +00:00
Moodle Robot 98bfdc3355 Updated the 19 build version to 20100306 2010-03-06 00:43:03 +00:00
Helen Foster fe08331675 help file MDL-21054 rewording thanks to Bente Olsen 2010-03-05 15:14:01 +00:00
Helen Foster b74bdc319c help file MDL-21053 rewording thanks to Bente Olsen 2010-03-05 14:55:00 +00:00
Helen Foster 9c72f010d3 lang string MDL-18565 spelling fix thanks to Ray Lawrence 2010-03-05 11:41:33 +00:00
Moodle Robot 7ba0dd71ad Updated the 19 build version to 20100305 2010-03-05 00:43:31 +00:00
Eloy Lafuente 4f13fe005e MDL-17510 calendar - added 2 missing labels plus space/comments cleaning. Credit goes to Daniel Neis 2010-03-04 21:57:33 +00:00
Eloy Lafuente 7e4a97c6ac MDL-21750 ims-cc restore - avoid requiring net conection on validation. Credit goes to Darko 2010-03-04 21:30:23 +00:00
Penny Leach 774c13ca15 events: MDL-17442 add support for local events and run event queue in cron 2010-03-04 17:06:19 +00:00
Moodle Robot bf71c4c778 Updated the 19 build version to 20100304 2010-03-04 00:42:49 +00:00
Moodle Robot 405be90aba Updated the 19 build version to 20100303 2010-03-03 00:43:04 +00:00
Moodle Robot 76571df084 Updated the 19 build version to 20100302 2010-03-02 00:42:36 +00:00
Moodle Robot c6fc01d98f Updated the 19 build version to 20100301 2010-03-01 00:43:06 +00:00
Moodle Robot b5a84497e7 Updated the 19 build version to 20100228 2010-02-28 00:42:20 +00:00
Moodle Robot 6570787eba Automatic installer.php lang files by installer_builder (20100228) 2010-02-28 00:34:48 +00:00
Moodle Robot 6b900d9666 Updated the 19 build version to 20100227 2010-02-27 00:42:46 +00:00
Moodle Robot 7237c0f83d Updated the 19 build version to 20100226 2010-02-26 00:43:15 +00:00
Eloy Lafuente fbd146b362 MDL-14934 excel dates. Rely in excellib's format_date() to otput dates. It supports base/timezones properly. 2010-02-25 10:16:15 +00:00
Moodle Robot fc77147262 Updated the 19 build version to 20100225 2010-02-25 00:42:45 +00:00
Helen Foster 850e4781ad lang string MDL-21546 rewording thanks to Bente Olsen 2010-02-24 10:52:02 +00:00
Helen Foster 41e7385f01 help file MDL-21546 rewording thanks to Bente Olsen 2010-02-24 10:35:25 +00:00
Dan Poltawski 47e32d2955 moodlelib: sync_metacourse MDL-20626 wasn't respecting hidden role assignments
This causes hidden role assignments to become public on metacourses

Many thanks to Daniel Neis for the patch

Signed-off-by: Dan Poltawski <dan.poltawski@luns.net.uk>
2010-02-24 09:01:27 +00:00
Dan Poltawski f6674e23e8 blocks/admin MDL-21593 - Specify full url to 'child courses'
Prevents link breaking on resources will full blocs
2010-02-24 08:56:41 +00:00
Dan Poltawski dcb98cd8e8 gradebook/overview MDL-21424 - link to correct grade card
The overview report was sending the user to their own user report
rather than the user they were looking at.
2010-02-24 08:53:45 +00:00
Dan Poltawski 7348068be8 blocks/quiz_results: MDL-21284 - dont strip leading zeros from idnumbers
Or make assumptions its an integer as many external systems are not and to
be of copy and paste use to teachers it should match
2010-02-24 08:51:16 +00:00
Dan Poltawski 695ba14064 grader report: MDL-21192 - remove duplicate variable decleration
Many thanks to Barry Oosthuizen for the patch!

Signed-off-by: Dan Poltawski <dan.poltawski@luns.net.uk>
2010-02-24 08:48:18 +00:00
Dan Poltawski e9d030cfdd block/mentees: MDL-20993 - incorrectly assumes SITEID 2010-02-24 08:45:18 +00:00
Dan Poltawski ed5a88a715 user/edit_form MDL-20683 - allow user to edit description if set with
$CFG->profilesforenrolledusersonly

The original intention seems to be to allow the user to edit the description
if its not empty, however it was not ever allowing that to happen. This was
already correct in HEAD.
2010-02-24 08:38:24 +00:00
Moodle Robot 131065d3e1 Updated the 19 build version to 20100224 2010-02-24 00:42:38 +00:00
Tim Hunt 74aabeb08a nobug: whitespace fixes. 2010-02-23 14:31:09 +00:00
Tim Hunt 0f6a49da32 match qtype: MDL-21701 / OU bug 9551 Fix display of response history.
The displays were being displayed in an order that depended on what the student had
selected, not the order in which the subquestions were displayed.

Great attention to detail by the OU testing team to notice this!
2010-02-23 12:47:07 +00:00
Moodle Robot 74964e989e Updated the 19 build version to 20100223 2010-02-23 00:43:18 +00:00
Dan Marsden 4ee0c3a1a7 SCORM MDL-21584 detect SCORM 2004 4th edition correctly. thanks to Valerian for the report and patch. merged from HEAD 2010-02-22 01:33:33 +00:00
Moodle Robot c29f46d37c Updated the 19 build version to 20100222 2010-02-22 00:43:16 +00:00
Dan Poltawski c33dd43a31 moodlelib: MDL-21477 - stop unzip_show_status depending on files/index.php
function
2010-02-21 15:31:26 +00:00
Eloy Lafuente 19a34c2fd6 Added new installer langs (mr_utf8 & zu_utf8) to 19_STABLE 2010-02-21 15:08:27 +00:00
Eloy Lafuente b189e210d1 file installer.php was added on branch MOODLE_19_STABLE on 2010-02-21 15:08:27 +0000 2010-02-21 15:04:22 +00:00
Dan Poltawski f01ce862ec config-dist.php MDL-21603 - prevent php5 strict warnings with defualt config 2010-02-21 14:46:49 +00:00
Urs Hunkler d472b68b11 FF 3.6 has problems with the used sarissa library. Following the sarissa forums the conflicting line can be commented out. http://sourceforge.net/projects/sarissa/forums/forum/256492/topic/3508927 2010-02-21 12:06:36 +00:00
Moodle Robot 6366286ebf Updated the 19 build version to 20100221 2010-02-21 00:42:39 +00:00
Moodle Robot 34d10397a2 Updated the 19 build version to 20100220 2010-02-20 00:41:43 +00:00
Dan Poltawski 1b97bb14df Revert revision 1.75.2.23 to access.php - MDL-21664
I commited junk from another file as part of commit. Sorry everyone.

I'm to use emacs for the weekend as punishment
2010-02-19 19:13:31 +00:00
Dan Poltawski ff9a1e85c9 lib/db/upgrade: MDL-21664 - $CFG->passwordmainsalt was used rather than $CFG->passwordsaltmain
Causing all admins to be warned about their salt even if they had one set
2010-02-19 16:47:28 +00:00
Moodle Robot 5bc3ab3db0 Updated the 19 build version to 20100219 2010-02-19 00:42:49 +00:00
David Mudrak 4815487089 MDL-7932 Yet another occurance of missing default comments 2010-02-18 18:39:12 +00:00
Jamie Pratt 7d2e309c9b MDL-21650 "cookieless sessions fail when opening a pop up window using the javascript 'openpopup' function for example from the course view page " adding the session name and id in the js function openpopup. 2010-02-18 12:56:12 +00:00
Jamie Pratt 4a4a05cfa8 MDL-21637 "bug in some versions of php version 5 prevents cookieless sessions working" 2010-02-18 11:50:18 +00:00
Andrew Davis e599553d84 simpletestlib MDL-21644 Removed instances of the php keyword protected which is unsupported by php 4 2010-02-18 08:30:45 +00:00
Andrew Davis c315756bf6 gradebook MDL-21644 Removed instances of the php keyword protected which is unsupported by php 4 2010-02-18 08:29:03 +00:00
Penny Leach 9fa2029768 mnet MDL-21633 fixed array to string conversion when rotating keys.
this doesn't need fixing in HEAD because of our new dml stuff
2010-02-18 03:22:23 +00:00
Penny Leach 25cd4deb3a mnet MDL-14117 truncate values in $dn to the RFC 3280 lengths when making new mnet keys 2010-02-18 03:11:52 +00:00
Penny Leach da92b21caa mnet MDL-17202 disambiguating strings in mnet enrolment config and updated plugin desc
committing forgotten file
2010-02-18 01:23:43 +00:00
Moodle Robot c28ccac7f8 Updated the 19 build version to 20100218 2010-02-18 00:42:46 +00:00
Dan Poltawski 8d6e18cc6c mnet: MDL-21632 - set $this to deleted too.
My previous commit message wasn't quite correct, I had misread the code, peers
were being properly makred as delted.
2010-02-17 22:18:11 +00:00
Dan Poltawski 154b2a1d7f mnet: MDL-21632 - remove reference to non-existant table
Backport Jermoes patch to only mark mnet hosts as deleted rather than delete
from db. Unfortunately the previous behaviour in <2.0 to mark hosts as delted
wasn't at all correct due to horrible behaviour of the commit()  function.
This addresses tha tproblem.
2010-02-17 22:15:02 +00:00
Jamie Pratt cdf50f82de MDL-21641 cookieless sessions - Need to try to set a cookie before falling back to cookieless mode. Moved test to see if cookies are working till after Moodle has attempted to set a cookie. If there is no cookie then we use session id in url. 2010-02-17 14:25:35 +00:00
Jamie Pratt 62236dd1b1 MDL-21638 cookieless session id not passed when loading images - needed for example for graphs which access session data 2010-02-17 11:31:33 +00:00
Jamie Pratt 72336b7f93 MDL-21637 bug in some versions of php version 5 prevents cookieless sessions working. Using static variable to store data from CFG on first call to fix problem. 2010-02-17 11:25:38 +00:00
Penny Leach 5425c4d06a mnet MDL-17202 disambiguating strings in mnet enrolment config and updated plugin desc 2010-02-17 03:59:04 +00:00
Penny Leach 5a97f0d96b mnet MDL-21257 temporary fix for mnet breaking on session regeneration. This is fixed better, but more obtrusively in 2.0 2010-02-17 01:32:14 +00:00
Moodle Robot c0f891d6fe Updated the 19 build version to 20100217 2010-02-17 00:43:07 +00:00
Moodle Robot 42d3d715ec Automatic installer.php lang files by installer_builder (20100217) 2010-02-17 00:35:47 +00:00
Andrew Davis 2fa0e3e21b user profiles MDL-20619 Email obfuscation wasnt working in some versions of IE 2010-02-16 02:52:53 +00:00
Moodle Robot cda0cdb819 Updated the 19 build version to 20100216 2010-02-16 00:42:46 +00:00
Moodle Robot 86bc6d3898 Updated the 19 build version to 20100215 2010-02-15 00:42:44 +00:00
Moodle Robot d8f12e5a98 Updated the 19 build version to 20100214 2010-02-14 00:42:33 +00:00
Moodle Robot 6b25991f60 Updated the 19 build version to 20100213 2010-02-13 00:42:46 +00:00
Sam Marshall bfaf0e5747 MDL-21567 Assign roles screen at module level can show users twice 2010-02-12 16:33:54 +00:00
Moodle Robot 45f656b9bc Updated the 19 build version to 20100212 2010-02-12 00:41:57 +00:00
Gordon Bateson dfdec574d3 fix student access to HotPots in tail of a HotPot quiz chain 2010-02-11 02:52:22 +00:00
Moodle Robot b5e596256c Updated the 19 build version to 20100211 2010-02-11 00:42:45 +00:00
Eloy Lafuente fddef9d6b7 MDL-7647 confirmation email - usernames with slashes causing confirmation problems 2010-02-10 16:46:00 +00:00
Moodle Robot 88b78226dd Updated the 19 build version to 20100210 2010-02-10 00:44:06 +00:00
Moodle Robot 67abeea724 Automatic installer.php lang files by installer_builder (20100210) 2010-02-10 00:36:23 +00:00
Piers Harding b34b5c7b49 MDL-18202 - fix incorrect substitutions of '_'. 2010-02-09 17:50:52 +00:00
Moodle Robot 4d5ead9be0 Updated the 19 build version to 20100209 2010-02-09 00:42:54 +00:00
Moodle Robot abe92c685e Automatic installer.php lang files by installer_builder (20100209) 2010-02-09 00:35:18 +00:00
Andrew Davis 1966cb853f gradebook MDL-21315 Fixed column highlighting 2010-02-08 04:18:40 +00:00
Moodle Robot edab8319fe Updated the 19 build version to 20100208 2010-02-08 00:42:38 +00:00
Moodle Robot 78421bfa9a Updated the 19 build version to 20100207 2010-02-07 00:41:48 +00:00
Moodle Robot 25733f443d Updated the 19 build version to 20100206 2010-02-06 00:42:45 +00:00
Moodle Robot 5ac643a6b6 Automatic installer.php lang files by installer_builder (20100206) 2010-02-06 00:35:17 +00:00
Tim Hunt b6be82811d question state loading MDL-9327 and MDL-19114 fix loading the state of ungraded essay questions
In two situations, the correct state was not being loaded for essay questions that had
not yet been manually graded:
1. When starting a subsequent attempt in each attempt builds on last mode.
2. In the quiz reports.

This commit fixes the problem. It has one other side-effect. When viewing the individual
question grades in the overview report for an attempt that is still in progress, the
information displayed will be slightly different. This only affects adaptive mode quizzes,
and will acutally cause the report to show slighly more up-to-date information.

Interestingly, the reportlib.php change had already been made in HEAD, as part of MDL 16529
2010-02-05 16:36:59 +00:00
Andrew Davis 3570713828 gradebook MDL-21218 course and category totals behaviour when they contain hidden items 2010-02-05 07:27:02 +00:00
Moodle Robot 0e2ff533bd Updated the 19 build version to 20100205 2010-02-05 00:43:23 +00:00
Rossiani Wijaya edef4cd2e1 MDL-20307 - add view fullname capabilities to display fullname in gradebook and participant list 2010-02-04 04:37:31 +00:00
Moodle Robot df9fe21b58 Updated the 19 build version to 20100204 2010-02-04 00:42:38 +00:00
Eloy Lafuente 9e9b31f89b MDL-21407 latex filter - lalala, added missing savepoint 2010-02-03 09:11:49 +00:00
Eloy Lafuente 16421d0353 MDL-21407 tex filter - trim leading whitespace from latex preamble 2010-02-03 09:10:13 +00:00
Andrew Davis a97f19333c grader report MDL-21367 when an item is unhidden its category should unhide to 2010-02-03 02:22:58 +00:00
Moodle Robot c50959fa54 Updated the 19 build version to 20100203 2010-02-03 00:42:30 +00:00
Moodle Robot 0815881c65 Updated the 19 build version to 20100202 2010-02-02 00:38:58 +00:00
Penny Leach 5f3aa3c97a mnet MDL-17863 increase length of portno field in the host table (so 443 works) 2010-02-01 04:19:51 +00:00
Penny Leach 6b970039cb mnet MDL-17082 fixing typo in previous bugfix 2010-02-01 01:43:26 +00:00
Moodle Robot 49e25c58ea Updated the 19 build version to 20100201 2010-02-01 00:38:11 +00:00
Moodle Robot 360a5d6955 Automatic installer.php lang files by installer_builder (20100201) 2010-02-01 00:31:21 +00:00
Moodle Robot 8f978af0a3 Updated the 19 build version to 20100131 2010-01-31 00:37:52 +00:00
Moodle Robot 678730b041 Updated the 19 build version to 20100130 2010-01-30 00:38:29 +00:00
Moodle Robot c7539c2c15 Automatic installer.php lang files by installer_builder (20100130) 2010-01-30 00:31:41 +00:00
Helen Foster d6b5a314f7 help file MDL-21308 rewording thanks to Bente Olsen 2010-01-29 20:27:30 +00:00
Andrew Davis fd1e0f3beb grader report MDL-21374 made column averages align correctly 2010-01-29 01:17:23 +00:00
Moodle Robot 2d9e548ef5 Updated the 19 build version to 20100129 2010-01-29 00:37:36 +00:00
Rossiani Wijaya b1bef4085e MDL-21440 - replacing hardcoded string with language string. 2010-01-28 02:19:06 +00:00
Moodle Robot f5058b206b Updated the 19 build version to 20100128 2010-01-28 00:37:53 +00:00
Moodle Robot 62e1cf14d8 Updated the 19 build version to 20100127 2010-01-27 00:37:49 +00:00
Moodle Robot 2fd7250f20 Updated the 19 build version to 20100126 2010-01-26 00:37:48 +00:00
Gordon Bateson 986c607c4b do not treat https absolute urls as relative urls 2010-01-25 07:16:45 +00:00
Penny Leach 70d2f4be3c mnet MDL-17629 upgrade to fix referntial integrity in mnet hostids for localhost and all hosts records 2010-01-25 00:59:21 +00:00
Moodle Robot bcaa8cd2bd Updated the 19 build version to 20100125 2010-01-25 00:37:41 +00:00
Moodle Robot 788291baa0 Updated the 19 build version to 20100124 2010-01-24 00:37:52 +00:00
Moodle Robot e99a3c131c Updated the 19 build version to 20100123 2010-01-23 00:37:15 +00:00
Rossiani Wijaya da4aed67d3 MDL-21300 - remove filename validation for invalid character. 2010-01-22 02:01:03 +00:00
Moodle Robot 0135dda86a Updated the 19 build version to 20100122 2010-01-22 00:38:08 +00:00
Eloy Lafuente 3a41c990dc MDL-16018 textarea height - min 7 lines to avoid visualization problem 2010-01-22 00:01:08 +00:00
Eloy Lafuente 589ad34e82 MDL-21265 wiki - fix problem for students not able to see entries in other groups until own entry is created by teacher 2010-01-21 23:40:02 +00:00
Eloy Lafuente 94e5756daf MDL-21293 Grrr, left one testing line there... sorry! 2010-01-21 19:34:27 +00:00
Eloy Lafuente 468a1aff83 MDL-21293 Better conversion from old to new categories in specialization() 2010-01-21 19:32:39 +00:00
Inaki 3381dd4607 auth ldap/cas config: MDL-21343 LDAP / CAS settings broken due to wrong superflous value 2010-01-21 19:20:37 +00:00
Eloy Lafuente bc188d0273 MDL-21293 tag_youtube block - migrate from old (not working anymore!) YouTube API
to the new Google Data API
2010-01-21 17:37:46 +00:00
Moodle Robot 1584d69510 Updated the 19 build version to 20100121 2010-01-21 00:38:04 +00:00
Eloy Lafuente 35e25af7b0 MDL-21393 clean old executabble (by everybody) script. 2010-01-20 11:21:30 +00:00
Rossiani Wijaya 85056e763f MDL-11131 - style for temporary block handler (for sticky block) 2010-01-20 06:37:51 +00:00
Rossiani Wijaya 1833b24abb MDL-11131 - fixed the weight of sticky blocks as it moved around. 2010-01-20 04:36:23 +00:00
Moodle Robot e3fb0b7847 Updated the 19 build version to 20100120 2010-01-20 00:37:39 +00:00
Moodle Robot 7a525d74f0 Updated the 19 build version to 20100119 2010-01-19 00:38:01 +00:00
Eloy Lafuente 77fcfa7395 MDL-21370 restore - avoid adding slashes twice to user info
Credit goes to jean-christophe zulian
2010-01-18 19:37:49 +00:00
Tim Hunt d3e2dfaf75 graphlib MDL-21371: Legend layout issue when different legend texts had different heights. 2010-01-18 15:24:19 +00:00
Moodle Robot 1070f24868 Updated the 19 build version to 20100118 2010-01-18 00:37:41 +00:00
Moodle Robot e5448baec4 Automatic installer.php lang files by installer_builder (20100118) 2010-01-18 00:30:50 +00:00
Moodle Robot 5c2bb616c7 Updated the 19 build version to 20100117 2010-01-17 00:37:40 +00:00
Moodle Robot e418527862 Updated the 19 build version to 20100116 2010-01-16 00:37:57 +00:00
Sam Marshall 8ec0c7b0da MDL-21356 rsslib: Schema address from tag output in wasn't escaped (problem only if it contains &) 2010-01-15 14:36:48 +00:00
Moodle Robot 4f1216af39 Updated the 19 build version to 20100115 2010-01-15 00:37:47 +00:00
Moodle Robot 2c214cee4f Automatic installer.php lang files by installer_builder (20100115) 2010-01-15 00:30:56 +00:00
Pierre Pichet d2eca89391 MDL-21336 testing with $correct != '' so that correct answer 0 is shown in multianswer 2010-01-14 21:56:42 +00:00
David Mudrak a81beb4c24 MDL-21346 fixed various print_password_policy() issues 2010-01-14 20:46:31 +00:00
David Mudrak a34d4fbe03 MDL-21229 editor: added missing tooltip translation 2010-01-14 10:20:29 +00:00
Andrew Davis 732cef98a7 weblib MDL-21183 Commented out some unreasonable unit tests 2010-01-14 02:14:10 +00:00
Pierre Pichet 77a6f29667 MDL-21336 testing with $correct != '' so that correct answer 0 is shown 2010-01-14 01:17:37 +00:00
Moodle Robot 85cb53c0ad Updated the 19 build version to 20100114 2010-01-14 00:38:03 +00:00
Dan Marsden 5883099064 SCORM AICC MDL-21330 fix php notice - thanks to Matteo Scaramuccia for report and fix. merged from Stable 2010-01-13 22:42:03 +00:00
Penny Leach 46cc83dfdb mnet MDL-17931 add slashes to mnet method profiles when saving 2010-01-13 22:17:25 +00:00
Dan Marsden 534182ebdd SCORM AICC MDL-19392 add some missing params to querystring merged from HEAD 2010-01-13 22:08:39 +00:00
Eloy Lafuente b70f33ea6d NOBUG: Fix notice (and something more?). Like MDL-12961 but in data module 2010-01-13 16:47:42 +00:00
Rossiani Wijaya 3de4198a4f MDL-20402 - update bulk user action messages from regular textarea to HTML editor. 2010-01-13 07:56:20 +00:00
Penny Leach 1ddd8283f9 mnet: MDL-20059 fix up login/mnet_email.php in a few places
Merged (belatedly from HEAD)
2010-01-13 03:10:26 +00:00
Penny Leach 3022e494ca mnet MDL-21328 fixed non unique first field sql in mnet_services.php 2010-01-13 02:46:13 +00:00
Penny Leach bcb7c63ec0 mnet MDL-17082 removed all use of $_POST 2010-01-13 02:42:05 +00:00
Andrew Davis 6dc8c4e402 weblib MDL-21296 a temporary workaround convert_urls_into_links() causing timeouts 2010-01-13 02:16:12 +00:00
Dan Marsden ff9be2feef SCORM AICC MDL-19392 MDL-13716 cast result as a String in AICC (already done in Scorm 1.2 and 1.3 merged from HEAD 2010-01-13 02:01:31 +00:00
Penny Leach a3f6b0fe7e mnet MDL-19260 add an addslashes_object when updating public keys
fixing typo in last commit
2010-01-13 01:48:23 +00:00
Penny Leach 77ca2c9c1d mnet MDL-19260 add an addslashes_object when updating public keys
not merged to HEAD because of new db stuff
2010-01-13 01:43:24 +00:00
Dan Marsden 2ee0ca3438 SCORM AICC MDL-21304 typo when referring to SCORM session var in AICC files - thanks to Matteo Scaramuccia for the report and fix. merged from HEAD 2010-01-13 01:39:22 +00:00
Moodle Robot 7bf1a0ec9b Updated the 19 build version to 20100113 2010-01-13 00:38:01 +00:00
Eloy Lafuente 0cced51f5a MDL-21296 - secs are secs no milisecs, :-P 2010-01-12 14:07:34 +00:00
Eloy Lafuente 6650e754c7 MDL-21296 - Adding timing info to test in order to compare results 2010-01-12 14:06:06 +00:00
Eloy Lafuente b0fbf376cc MDL-21168 - Support encoded chars in query part of URL. Done in review day, but it's tested, grrr. 2010-01-12 13:37:13 +00:00
Eloy Lafuente fe8525e86b MDL-21168 - Added test for URLs with encoded paths and queries 2010-01-12 13:23:23 +00:00
Gordon Bateson 1bef863f84 add groupings awareness to HotPot module 2010-01-12 07:26:10 +00:00
Moodle Robot 743ee9d956 Updated the 19 build version to 20100112 2010-01-12 00:37:42 +00:00
Penny Leach 8901f90395 mnet: MDL-21298 fixed a very unhelpful error message (and saved a db query)
this adds a new string for nolocaluser - nolocaluser2 (it's just nolocaluser in head)
2010-01-11 22:20:14 +00:00
Penny Leach decbf994c0 mnet/login: MDL-21018 - be a bit more picky about when to show the link to mnet_email.php 2010-01-11 22:05:47 +00:00
Rossiani Wijaya f3a1b0ce39 MDL-21174 - exclude deleted users in bulk upload of user profile pictures. 2010-01-11 06:50:02 +00:00
Andrew Davis 5eb17eabee weblib MDL-21168 I had accidently deleted a test 2010-01-11 06:21:32 +00:00
Andrew Davis bdac61091c weblib MDL-21168 added some more tests 2010-01-11 06:14:09 +00:00
Andrew Davis 1f6a37155a course sorting MDL-21011 made upgrade code more efficient 2010-01-11 02:29:08 +00:00
Penny Leach b6fff6a5aa mnet MDL-17169 trim the raw xmlrpc response before passing it to the xml parser 2010-01-11 01:02:35 +00:00
Moodle Robot d3b3fad86d Updated the 19 build version to 20100111 2010-01-11 00:38:10 +00:00
Moodle Robot 276b2b2ea3 Updated the 19 build version to 20100110 2010-01-10 00:37:30 +00:00
Moodle Robot d807d3a516 Automatic installer.php lang files by installer_builder (20100110) 2010-01-10 00:30:43 +00:00
Eloy Lafuente 0959a70851 First commit of ast_utf8 installer file. Backported from HEAD 2010-01-09 23:16:46 +00:00
Eloy Lafuente 158b6463e6 file installer.php was added on branch MOODLE_19_STABLE on 2010-01-09 23:16:46 +0000 2010-01-09 23:13:20 +00:00
Moodle Robot 25a049d01d Updated the 19 build version to 20100109 2010-01-09 00:38:02 +00:00
Moodle Robot cbcd5d6c27 Automatic installer.php lang files by installer_builder (20100109) 2010-01-09 00:31:11 +00:00
Eloy Lafuente 321b4075cd MDL-21168 convert_urls_into_links() - added tests about links in tags and double conversions 2010-01-08 22:21:16 +00:00
Eloy Lafuente 8267366e44 MDL-21168 avoid http://www.whatever to be linked twice 2010-01-08 22:16:37 +00:00
Eloy Lafuente c782bd7a4b MDL-21168 convert_urls_into_links() - changed solution to avoid linking
inside <img> tags by negative look-behind assertion of =" string
2010-01-08 16:48:38 +00:00
Eloy Lafuente 7fd2dcec3c MDL-21168 convert_urls_into_links() - minor changes to tests (code formatting,
utf_decode() out and properly escape % chars.
2010-01-08 16:38:40 +00:00
Andrew Davis ac13e678c9 grader report MDL-21088 Fixed assorted vertical alignment issues 2010-01-08 08:03:22 +00:00
Andrew Davis 1a59f3dd02 grader report MDL-21270 Use constants instead of integers 2010-01-08 07:46:30 +00:00
Andrew Davis 7cf7a14d85 course sorting MDL-21011 "Re-sort courses by name" button eventually lead sortorder to hit column maximum value 2010-01-08 07:38:50 +00:00
Andrew Davis 1ca30d589f course sorting MDL-21011 "Re-sort courses by name" button eventually lead sortorder to hit column maximum value 2010-01-08 07:17:52 +00:00
Andrew Davis 9c09c3b89a course sorting MDL-21011 "Re-sort courses by name" button eventually lead sortorder to hit column maximum value 2010-01-08 07:07:55 +00:00
Andrew Davis e45757ad63 moodlelib MDL-20918 usergetdate was returning an array in a different order depending on whether or not timezone was set 2010-01-08 06:41:57 +00:00
Rossiani Wijaya 366a5bb8fd MDL-18774 - fixed fullname format label. 2010-01-08 02:27:32 +00:00
Moodle Robot deb03b4ff9 Updated the 19 build version to 20100108 2010-01-08 00:37:59 +00:00
Eloy Lafuente 566c19c620 MDL-21264 sql_isnotempty fixed. Thanks Tim! Backported from HEAD 2010-01-07 15:02:41 +00:00
David Mudrak f330bf4a42 MDL-21248 workshop: yet another place violating not null feedback 2010-01-07 14:19:11 +00:00
David Mudrak d5ed6c36d2 MDL-21248 workshop fills description field for a grade mapping only element 2010-01-07 13:53:55 +00:00
Moodle Robot 3eb066cdfa Updated the 19 build version to 20100107 2010-01-07 00:37:30 +00:00
Rossiani Wijaya 733f09a461 MDL-18824 changing fullname name (fullnamedisplay) default value to language. 2010-01-06 05:10:23 +00:00
Moodle Robot bc90a47903 Updated the 19 build version to 20100106 2010-01-06 00:37:59 +00:00
Moodle Robot 3f09627554 Automatic installer.php lang files by installer_builder (20100106) 2010-01-06 00:31:06 +00:00
Helen Foster 24cc21c077 config settings: MDL-16658 small rewording 2010-01-05 22:15:59 +00:00
Helen Foster d10342e4a2 moodle lang string: MDL-16658 small rewording 2010-01-05 21:53:51 +00:00
Moodle Robot 0cdb0453f2 Updated the 19 build version to 20100105 2010-01-05 00:37:25 +00:00
Andrew Davis 36f1ce024f graderreport MDL-21159 grader report was producing invalid html 2010-01-04 08:14:14 +00:00
Moodle Robot a8bb7474a6 Updated the 19 build version to 20100104 2010-01-04 00:34:35 +00:00
Moodle Robot 71b1edd8da Updated the 19 build version to 20100103 2010-01-03 00:35:00 +00:00
Moodle Robot c73ca693e9 Automatic installer.php lang files by installer_builder (20100103) 2010-01-03 00:28:11 +00:00
Moodle Robot 709fa905af Updated the 19 build version to 20100102 2010-01-02 00:34:24 +00:00
Moodle Robot 3b58064a98 Updated the 19 build version to 20100101 2010-01-01 00:34:57 +00:00
Moodle Robot c39ff02c27 Automatic installer.php lang files by installer_builder (20100101) 2010-01-01 00:28:11 +00:00
Moodle Robot 817837383b Updated the 19 build version to 20091231 2009-12-31 00:35:52 +00:00
Moodle Robot b3ec8bce9c Automatic installer.php lang files by installer_builder (20091231) 2009-12-31 00:28:10 +00:00
Eloy Lafuente 4029d09097 MDL-16658 restore - new restore:createuser cap + pre-check users before restoring 2009-12-30 17:17:09 +00:00
Helen Foster 7e766c4d51 moodle.org lang string: MDLSITE-846 thanks to Mauno 2009-12-30 14:07:31 +00:00
Helen Foster bbf0d4086f moodle.org lang strings: MDLSITE-297 thanks to MD 2009-12-30 12:36:09 +00:00
Petr Skoda 75c9459b00 MDL-21194 fixed mnet quotes issue - credit goes to Valery Fremaux 2009-12-30 08:06:15 +00:00
Moodle Robot 689458916d Updated the 19 build version to 20091230 2009-12-30 00:34:48 +00:00
Eloy Lafuente 0fa3908eb8 NOBUG: Whitespace and XHTML 2009-12-29 19:34:06 +00:00
Moodle Robot 752542c5af Updated the 19 build version to 20091229 2009-12-29 00:34:23 +00:00
Eloy Lafuente f4b233eef5 MDL-21203 delete dupe code - Credit goes to Antoine G 2009-12-28 14:32:08 +00:00
Moodle Robot 8002b70cbb Updated the 19 build version to 20091228 2009-12-28 00:35:53 +00:00
Moodle Robot 646feb47f2 Updated the 19 build version to 20091227 2009-12-27 00:34:21 +00:00
Moodle Robot 9a2f1f706c Updated the 19 build version to 20091226 2009-12-26 00:34:34 +00:00
Moodle Robot eb04558e7e Updated the 19 build version to 20091225 2009-12-25 00:34:22 +00:00
Moodle Robot a70b4067ea Automatic installer.php lang files by installer_builder (20091225) 2009-12-25 00:27:41 +00:00
Valery Fremaux e87eda39cf http://tracker.moodle.org/browse/MDL-21186 2009-12-24 23:08:30 +00:00
Andrew Davis 1b34261dc6 weblib MDL-21168 improved convert_urls_into_links 2009-12-24 04:36:14 +00:00
Moodle Robot fcf40a111e Updated the 19 build version to 20091224 2009-12-24 00:35:07 +00:00
Rossiani Wijaya 80990f1aef MDL-20949 changing the language string from 'your' to 'the', to print out the password policy requirements. 2009-12-23 02:07:08 +00:00
Moodle Robot 7b11ee0635 Updated the 19 build version to 20091223 2009-12-23 00:34:52 +00:00
Matt Oquist e48675ba98 MDL-19024 Fix a bug that stops strings from being displayed correctly in the admin section when configuring the MNET services. (Thanks, Richard Mansfield.) 2009-12-22 03:00:42 +00:00
Moodle Robot 1276ac66ff Updated the 19 build version to 20091222 2009-12-22 00:35:13 +00:00
Moodle Robot fc7e0e9d67 Updated the 19 build version to 20091221 2009-12-21 00:34:35 +00:00
Pierre Pichet ed26d187a7 correcting pass from reference problem line 84 as identified by syntax report on moodle.org 2009-12-20 13:19:01 +00:00
Moodle Robot 61b9115ad2 Updated the 19 build version to 20091220 2009-12-20 00:35:08 +00:00
Moodle Robot 8fd08116ea Updated the 19 build version to 20091219 2009-12-19 00:34:22 +00:00
Moodle Robot a91d252b32 Automatic installer.php lang files by installer_builder (20091219) 2009-12-19 00:27:44 +00:00
Eloy Lafuente 64aec4287b MDL-21045, MDL-21046 restore - gradebook categories, letters and outcomes are now
restored no matter if user info is enabled or no (as far as they are user-independent)
2009-12-18 18:47:14 +00:00
Tim Hunt f7f6e31b63 Grade item: MDL-21161 timemodified never gets set on calculated gradebook columns 2009-12-18 18:19:48 +00:00
Eloy Lafuente 4e2ba0840b Related to MDL-6489 - advanced search template was missing in backup/restore 2009-12-18 18:08:56 +00:00
Eloy Lafuente 9e845f9ee7 MDL-11507, MDL-15157 database activity - avoid some notices on restore 2009-12-18 17:51:27 +00:00
Eloy Lafuente 06cc4c9699 MDL-21160 database activity - remap scale on restore 2009-12-18 17:37:11 +00:00
Tim Hunt b9a18f1b17 grader report: MDL-21159 Link to user report does not respect $CFG->grade_profilereport setting.
Also, the report was generating invalid XHTML.
2009-12-18 17:13:42 +00:00
Dan Marsden 7cf74b7002 SCORM MDL-20122 badly formatted restore values - thanks to Michael Avelar for the fix merged from HEAD 2009-12-18 08:20:48 +00:00
Dan Marsden d2f35f4357 SCORM MDL-18857 allow items with a score of 0 to still display on outline report. merged from HEAD 2009-12-18 07:24:07 +00:00
Dan Marsden 2dae979d8e SCORM MDL-21024 missing field in restore. merged from HEAD 2009-12-18 07:14:53 +00:00
Dan Marsden 98cdb41a4a SCORM MDL-20588 workaround for IE 6 bug - turn zlib compression off if IE 6 is detected. merged from HEAD 2009-12-18 06:42:37 +00:00
Dongsheng Cai c6a032b9d3 "MDL-15502, added a filter to selec users who have never logged in, credits to Anthony Borrow" 2009-12-18 05:24:14 +00:00
Dan Marsden 990ecc4694 mnet MDL-16522 missed a check - should not show logs tab for all hosts screen merged from HEAD 2009-12-18 03:21:07 +00:00
Dan Marsden d6f826c810 mnet MDL-16522 duplication of inconsistant code - now uses a tabs.php file but still needs a further code tidy as per MDL-16286 merged from HEAD 2009-12-18 03:16:35 +00:00
Dan Marsden c883e63ebd file tabs.php was added on branch MOODLE_19_STABLE on 2009-12-18 03:16:35 +0000 2009-12-18 03:09:05 +00:00
Dongsheng Cai baf1dc0a4d "MDL-21122, fixed saving setting problem in section links block" 2009-12-18 03:01:36 +00:00
Pierre Pichet 1343e53aff correcting pass from reference problem line 24 as identified by syntax report of Fri Dec 18 08:21:03 WST 2009 2009-12-18 02:35:47 +00:00
Moodle Robot e2baf96bdf Updated the 19 build version to 20091218 2009-12-18 00:34:10 +00:00
Pierre Pichet efed05fd25 MDL-3282 , MDL-4595 error in numerical with comma . More number formats are allowed.
merged from HEAD
2009-12-17 21:50:53 +00:00
Eloy Lafuente 3ae036b04b NOBUG minor typo in phpdocs 2009-12-17 14:38:59 +00:00
Sam Hemelryk 9d557dee01 weblib MDL-6820 Reverted modification due to unforseen regressions 2009-12-17 09:22:23 +00:00
Andrew Davis 49b115075e mnet MDL-12057 fixed mnet admin page table width 2009-12-17 08:20:35 +00:00
Andrew Davis c85a042383 live log MDL-20994 made "block editing on" button work on live logs page 2009-12-17 08:03:19 +00:00
Andrew Davis 6b8e4d338c weblib MDL-20826 improved convert_urls_into_links() 2009-12-17 07:43:46 +00:00
Moodle Robot af1d07d088 Updated the 19 build version to 20091217 2009-12-17 00:34:18 +00:00
Rossiani Wijaya 019907767a MDL-20949 printing out password policy requirements on signup page. 2009-12-16 01:51:48 +00:00
Andrew Davis d8a3469cfa quiz MDL-18896 small efficiency improvement 2009-12-16 00:51:28 +00:00
Moodle Robot 3f55dc7059 Updated the 19 build version to 20091216 2009-12-16 00:34:09 +00:00
Moodle Robot d2a247b68c Updated the 19 build version to 20091215 2009-12-15 00:34:51 +00:00
Moodle Robot bd2dbab136 Automatic installer.php lang files by installer_builder (20091215) 2009-12-15 00:28:11 +00:00
Gordon Bateson 811fab85a7 for consistency, use 0x80 instead of 128 in hotpot_charcode_to_utf8() 2009-12-14 03:28:26 +00:00
Moodle Robot 6bb053347c Updated the 19 build version to 20091214 2009-12-14 00:33:35 +00:00
Moodle Robot 959792675e Updated the 19 build version to 20091213 2009-12-13 00:33:18 +00:00
Moodle Robot 23e91e0dcc Updated the 19 build version to 20091212 2009-12-12 00:33:47 +00:00
Moodle Robot f16b7bf9b0 Updated the 19 build version to 20091211 2009-12-11 00:33:31 +00:00
Moodle Robot 842d34099c Updated the 19 build version to 20091210 2009-12-10 00:34:09 +00:00
Eloy Lafuente 6bf36bc2b9 MDL-20667 grader report - fix visualization annoyance in overall/range rows 2009-12-10 00:12:42 +00:00
Rossiani Wijaya e29748a54a MDL-20044 fixed ajax functionality when using bullet points (<ul>) in topic summary. 2009-12-09 01:59:47 +00:00
Moodle Robot d694bf90a1 Updated the 19 build version to 20091209 2009-12-09 00:34:52 +00:00
Gordon Bateson d113780338 MDL-20810: add missing function hotpot_charcode_to_utf8() required when importing Hot Potatoes files containing non-ascii chars into Moodle question bank 2009-12-08 04:09:59 +00:00
Moodle Robot b2ffd65ec2 Updated the 19 build version to 20091208 2009-12-08 00:33:56 +00:00
Moodle Robot 8bbd86a2db Automatic installer.php lang files by installer_builder (20091208) 2009-12-08 00:27:25 +00:00
Eloy Lafuente 01c986b64b MDL-20961 customize notices showed when user information is not included in baclup 2009-12-07 11:36:55 +00:00
jerome mouneyrac e223319801 flash upgrader MDL-20841 fix swfobject javascript bug related to http://code.google.com/p/swfobject/issues/detail?id=332 2009-12-07 03:23:59 +00:00
Moodle Robot 53bc0353b7 Updated the 19 build version to 20091207 2009-12-07 00:33:35 +00:00
Moodle Robot d64c3bf6d3 Updated the 19 build version to 20091206 2009-12-06 00:33:16 +00:00
Eloy Lafuente becb6e1c07 MDL-21029 glossary - fix display of entries belonging to site/course global glossaries 2009-12-05 11:23:12 +00:00
Moodle Robot 43371caf2c Updated the 19 build version to 20091205 2009-12-05 00:34:06 +00:00
Moodle Robot 21b83bd0c8 Automatic installer.php lang files by installer_builder (20091205) 2009-12-05 00:27:25 +00:00
Tim Hunt 331e1a976a Typo in calculated qtype lang file. 2009-12-04 19:02:15 +00:00
David Mudrak ed55d692f3 MDL-20992 workshop supports course reset 2009-12-04 12:21:28 +00:00
Dongsheng Cai 0cd77e569f "MDL-20125, added configurable setting to section_links block, credits to Jason Hardin" 2009-12-04 06:40:44 +00:00
Dongsheng Cai 44d34e8990 "MDL-20587, chat module, show sessions with just one users, credits to Daniel Neis" 2009-12-04 03:51:20 +00:00
Dongsheng Cai 8aadf873b7 "MDL-20819, sometimes, modules return non-array which can break stats processing, added more error checking" 2009-12-04 03:04:37 +00:00
Moodle Robot cee8f4b24a Updated the 19 build version to 20091204 2009-12-04 00:33:27 +00:00
Sam Hemelryk c12167467e weblib MDL-20725 Fixed string formatting issue in nested selects 2009-12-03 08:00:00 +00:00
jerome mouneyrac 0402b9d31e flash upgrader MDL-20841 fix xhtml strict, Kudo to Tim Hunt 2009-12-03 02:59:38 +00:00
jerome mouneyrac e63d2e43b0 flash upgrader MDL-20841 update phpdoc 2009-12-03 02:37:39 +00:00
Rossiani Wijaya ec30a562d8 MDL-20725 remove double escaping characters. 2009-12-03 02:09:58 +00:00
Andrew Davis 891027acf3 componentlib MDL-20966 Added a guard to prevent a php warning during upgrade 2009-12-03 00:59:55 +00:00
Moodle Robot 7b9b800b54 Updated the 19 build version to 20091203 2009-12-03 00:33:49 +00:00
Petr Skoda d44b4a796d MDL-21026 improved entity handling 2009-12-02 21:09:12 +00:00
Sam Marshall d5f4161c2c MDL-2684: kses strips out CSS from style tags unless the first property is on 'allowed' list, this is silly 2009-12-02 17:59:12 +00:00
Andrew Davis e7062765e0 mnet MDL-21019 Removed hard coded strings 2009-12-02 09:24:48 +00:00
Moodle Robot cc692622fc Updated the 19 build version to 20091202 2009-12-02 00:34:29 +00:00
Moodle Robot daee0e4fc5 Updated the 19 build version to 20091201 2009-12-01 00:34:12 +00:00
Sam Marshall 8562968ec9 MDL-21009 Group selector must use absolute links in order to work with javascript off (last minute stupid testing fix) 2009-11-30 17:18:44 +00:00
Sam Marshall dcca8dfb97 MDL-21009 Group selector must use absolute links in order to work with javascript off 2009-11-30 17:12:16 +00:00
Dongsheng Cai 92fa5b0f2a "MDL-20985, fixed typo" 2009-11-30 02:16:18 +00:00
Eloy Lafuente 8a57240f6f MDL-20826 convert_urls_into_links() - add some test to reveal (side?) problems
and allow comparing of alternatives
2009-11-30 02:02:31 +00:00
Andrew Davis a757f4a2d7 unit tests MDL-19060 unified the two checks for CVS directories 2009-11-30 01:16:23 +00:00
Moodle Robot dbc8d12eb8 Updated the 19 build version to 20091130 2009-11-30 00:33:55 +00:00
Eloy Lafuente 6dd255bde8 MDL-16658 restore users pre-check. Reviewed logic with latest discussions. Continues disabled 2009-11-29 19:34:07 +00:00
Moodle Robot 2315ad0483 Updated the 19 build version to 20091129 2009-11-29 00:33:58 +00:00
Moodle Robot 0569249083 Updated the 19 build version to 20091128 2009-11-28 00:33:51 +00:00
Moodle Robot 12aa1d3f87 Automatic installer.php lang files by installer_builder (20091128) 2009-11-28 00:27:15 +00:00
Eloy Lafuente a5f0b03411 MDL-19697 mnet auth - start saving user->firstaccess 2009-11-27 14:47:43 +00:00
jerome mouneyrac ee720bd06f flash upgrader MDL-20841 Add lang support to the flash upgrader 2009-11-27 09:50:14 +00:00
Andrew Davis bb2fcfcbc3 unit tests MDL-20537 Added another unit test for shorten_text 2009-11-27 06:12:07 +00:00
Andrew Davis 9e12452925 mnet admin MDL-12057 Added an entry to standard style css to make tables on admin/mnet/index.php the same width 2009-11-27 05:57:52 +00:00
Andrew Davis dcc7e27813 cornflower theme MDL-20987 Added missing close div tag at the end of cornflower footer.html 2009-11-27 05:52:25 +00:00
Andrew Davis 1721304eea grader report MDL-20179 Fixed broken JS on grader report 2009-11-27 05:45:56 +00:00
Andrew Davis a368208636 unit test MDL-19060 prevent unit tests from scanning cvs and .git directories 2009-11-27 05:40:02 +00:00
Martin Dougiamas 5bcd30d5c3 Bumping the version post-release 2009-11-27 04:51:03 +00:00
Moodle Robot 75e5a14ada Updated the 19 build version to 20091127 2009-11-27 00:34:47 +00:00
Moodle Robot 0ace0f0bdc Automatic installer.php lang files by installer_builder (20091127) 2009-11-27 00:28:06 +00:00
David Mudrak 6b67b00992 MDL-20981 admin/lang.php escapes all variables but $a placeholders 2009-11-26 14:32:57 +00:00
Eloy Lafuente fbb35a56e9 MDL-20982 glossary - make print view to respect current theme 2009-11-26 11:30:34 +00:00
Sam Hemelryk f334afe662 admin MDL-20980 Touched up regex that determines weak password salts 2009-11-26 09:01:04 +00:00
Sam Hemelryk 9cf85078d5 login MDL-20875 Fixed bug with messaging popup when changing password. Thanks Rossi for the patch 2009-11-26 07:25:31 +00:00
Sam Hemelryk a2a5c0875e upgrade MDL-20978 Added site's URL into the message subject sent out with recent upgrades 2009-11-26 06:48:43 +00:00
Moodle Robot c8db64ec4d Automatic installer.php lang files by installer_builder (20091126) 2009-11-26 00:26:55 +00:00
Moodle Robot a0026d1ef2 Updated the 19 build version to 20091126 2009-11-25 18:24:53 +00:00
Martin Dougiamas 257135e58e Bumped to 1.9.7 2009-11-25 18:16:08 +00:00
Martin Dougiamas 8ee5b976b1 security overview MDL-20834 Added support for role aliases in courses 2009-11-25 18:01:24 +00:00
Martin Dougiamas f9e1d25dbb security overview MDL-20834 Improved strings, and 3 lists now: roles, overrides and users (SQL from skodak, thanks!) 2009-11-25 17:45:24 +00:00
Petr Skoda 676fff3fa1 MDL-20962 fixed forced new passowrd logic 2009-11-25 17:05:28 +00:00
Martin Dougiamas 6d558e7705 security report MDL-20834 Fixing roles checks 2009-11-25 15:28:18 +00:00
Petr Skoda 5ed143ccb7 MDL-20938 fixed colspans - credit goes to Martin Schuhmann and Patrick Pollet 2009-11-25 12:37:37 +00:00
Martin Dougiamas 79c4ecf30d security report MDL-20834 Fixed the strings for backup data check 2009-11-25 09:21:49 +00:00
Martin Dougiamas 47ee4d187f security report MDL-20834 Added a check for moodle/backup:userinfo to inform the admin about people who might be able to backup user data 2009-11-25 08:43:59 +00:00
Dongsheng Cai deacd770bd "MDL-8677, fixed mimetype name" 2009-11-25 06:36:19 +00:00
Moodle Robot f9c229e1fa Updated the 19 build version to 20091125 2009-11-25 00:33:51 +00:00
Eloy Lafuente 4dd49f4cac XHTML 2009-11-25 00:12:03 +00:00
Tim Hunt 288a3b29a6 Unit tests: Change the parent class to avoid a deprecated class.
This is necessary to make it work in PHP 5.3 (as well as PHP 4).
2009-11-24 21:45:28 +00:00
Dan Marsden 51e0609e4a SCORM MDL-20955 fix bad use of update_record - thanks Petr 2009-11-24 21:02:12 +00:00
Dan Marsden 54add7c3fa SCORM MDL-20955 addslashes fixes 2009-11-24 21:00:08 +00:00
Pierre Pichet 3e52ba108f MDL-20960 testing correctly response 0 as not null line 348 2009-11-24 20:29:44 +00:00
Petr Skoda c22b20d440 MDL-20958 fixed login issues when login via https required 2009-11-24 16:20:22 +00:00
Petr Skoda f133092053 MDL-20948 reverting previous commit, wrong branch! 2009-11-24 14:50:40 +00:00
Petr Skoda f8915b7b86 MDL-20948 auth plguins do not throw notices in methods if not configured yet 2009-11-24 14:49:44 +00:00
Helen Foster 1f45a91137 admin lang string: MDL-18807 small rewording 2009-11-24 13:12:03 +00:00
Tim Hunt 15b9c8e9c6 random question history MDL-20951: Two minor bugs in the fix for MDL-20776.
Thanks to Oleg Sychev for noticing these problems.
2009-11-24 11:49:23 +00:00
Eloy Lafuente 5929c001fa MDL-16658 users pre-check. Committing current *disabled* code to have it
already under CVS control and better handling
2009-11-24 09:47:05 +00:00
Martin Dougiamas 5459e76dd1 flash detection MDL-20841 Added sesskey checking to the environment script to prevent DoS to users (Thanks for the catch Petr!) 2009-11-24 09:10:48 +00:00
Martin Dougiamas 182951c6ad MDL-20841 Fixed some naughty hash comments :) 2009-11-24 08:51:01 +00:00
Martin Dougiamas b8d7ecaa48 flash detection MDL-20841 New config setting excludeoldflashclients will set a minimum version for flash clients. A check in print_header is run once, and will set a session variable with the current flash version. If the current flash version is lower than the minimum requirement, then Moodle will serve alternate content whenever a flash file is requested. The alternate file will ask the user to upgrade flash. Still requires wider testing, and some lang support. Credits to Jerome Mouneyrac. 2009-11-24 08:44:43 +00:00
Petr Skoda 69df27c838 MDL-19608 do not force changing of password in external accounts 2009-11-24 08:41:20 +00:00
Martin Dougiamas d033b12887 passwordsalt notice MDL-18807 Added site info to email, fixed broken link and HTML mail formatting 2009-11-24 05:31:09 +00:00
Martin Dougiamas 7b9797028e passwordsalt notice MDL-18807 Remove some debugging code that made the notice always show :) 2009-11-24 04:04:20 +00:00
Sam Hemelryk f544529f07 upgrade MDL-20933 Fixed warning if get_records_sql returned false rather than an array 2009-11-24 04:03:01 +00:00
Moodle Robot a27c35d11f Updated the 19 build version to 20091124 2009-11-24 00:33:47 +00:00
Eloy Lafuente dac27854a6 MDL-20939 backup & restore - avoid admins to be always included. Two things
were causing this: wrong get_users_by_capability() call and standard scales.
Improved scales restore to observe the 'moodle/course:managescales' cap.
2009-11-24 00:12:35 +00:00
Petr Skoda 02941fdb0d MDL-20934 'not cached' flag used in all auth plugins that do not need the password 2009-11-23 21:53:47 +00:00
Eloy Lafuente f465c19005 MDL-20941 store hashed username into user->email field for deleted users 2009-11-23 18:46:10 +00:00
Petr Skoda 26f8490b91 MDL-20937 different fix for problems with forcing passsword change for admins with external auth 2009-11-23 09:07:18 +00:00
Sam Hemelryk 17ba97e5be upgrade MDL-20937 Only force admins to change password if auth=manual or email 2009-11-23 08:10:49 +00:00
Andrew Davis 9bf18ccaad forums MDL-20578 no longer using like in queries so removed retrieval of db like keyword 2009-11-23 05:09:04 +00:00
Moodle HQ git importer 2b7cefa2f5 Fixing drift between CVS and git 2009-11-23 01:33:09 +00:00
Andrew Davis dcb7585070 grader report MDL-20914 Html tooltips now work in IE on the grader report 2009-11-23 01:33:09 +00:00
Moodle Robot ec252f75e7 Updated the 19 build version to 20091123 2009-11-23 00:34:13 +00:00
Moodle Robot 09da7e96ce Automatic installer.php lang files by installer_builder (20091123) 2009-11-23 00:27:39 +00:00
Petr Skoda 55e6d86a31 MDL-20931 fixed input validation 2009-11-22 21:02:23 +00:00
Petr Skoda f73ccb88fd MDL-20933 fixed a regression, we should not force changing of password for admins that can not actually change the password 2009-11-22 16:54:35 +00:00
Eloy Lafuente 1f5f68c810 MDL-20932 user->secret out - merged from 18_STABLE 2009-11-22 13:34:26 +00:00
Petr Skoda cf6e1ae752 MDL-20930 fixed input validation 2009-11-22 12:43:10 +00:00
Petr Skoda eaba242517 MDL-20929 fixed input validation 2009-11-22 11:09:31 +00:00
Petr Skoda 8c392d1855 MDL-20928 fixed glossary entry access control 2009-11-22 10:34:56 +00:00
Moodle Robot 9330cd063e Updated the 19 build version to 20091122 2009-11-22 00:33:27 +00:00
Petr Skoda 4b682a44bc MDL-20927 fixed module login issue 2009-11-21 23:49:44 +00:00
Petr Skoda 84971b914d MDL-20926 fixed fetching of cm 2009-11-21 23:09:28 +00:00
Petr Skoda 64da683140 MDL-20901 fixed input validation 2009-11-21 22:23:03 +00:00
Petr Skoda 92145339d6 MDL-20901 undoing previous change, not needed 2009-11-21 22:01:38 +00:00
Petr Skoda 561020d00b MDL-20901 fixed input validation 2009-11-21 21:57:03 +00:00
Petr Skoda 622ba79b53 MDL-20901 fixed input validation 2009-11-21 20:41:08 +00:00
Petr Skoda 73f67f3e9b MDL-20925 fixed input validation and course ajax now fully respects the disable course ajax option 2009-11-21 16:29:06 +00:00
Petr Skoda 9208e5ed5e MDL-20924 invalid test for not configured lams module 2009-11-21 15:58:14 +00:00
Petr Skoda ead8c49a45 MDL-20901 fixed input validation 2009-11-21 15:33:34 +00:00
Petr Skoda 7eba4674c1 MDL-20901 fixed input validation 2009-11-21 15:27:10 +00:00
Petr Skoda 57b2fa96d4 MDL-20901 fixed input validation 2009-11-21 15:16:40 +00:00
Valery Fremaux 76c9f22f9e fix last http://tracker.moodle.org/browse/MDL-20917 shorten errors. 2009-11-21 13:50:14 +00:00
Eloy Lafuente b270b641f6 MDL-9251 backup/restore *all* users - is now forbidden for users
lacking backup/restore permission at system level.
2009-11-21 11:49:46 +00:00
Eloy Lafuente 32409b67e3 MDL-20849 - improved lang string, thanks, Helen. Merged from 18_STABLE 2009-11-20 17:47:50 +00:00
Moodle Robot 2775026ffc Updated the 19 build version to 20091121 2009-11-20 17:06:31 +00:00
Moodle Robot e892678aee Automatic installer.php lang files by installer_builder (20091121) 2009-11-20 16:59:54 +00:00
Eloy Lafuente e228270611 MDL-20916 protect the whole xmldb editor with sesskey. 2009-11-20 14:26:23 +00:00
Petr Skoda bddfa51dcf MDL-20901 fixed input validation 2009-11-20 08:50:52 +00:00
Petr Skoda 0f7b1a996a MDL-20901 fixed input validation 2009-11-20 08:33:47 +00:00
Petr Skoda c8554869ea MDL-20901 fixed input validation 2009-11-20 08:25:32 +00:00
Sam Hemelryk 56063d6f63 upgrade MDL-18807 Fixed bug with html been emailed as plain text 2009-11-20 08:16:24 +00:00
Andrew Davis 84011efb0d messages MDL-17601 message/discussion.php was causing errors in the apache error log. fav icon not found. 2009-11-20 03:52:07 +00:00
Andrew Davis 3e20548f1f messages MDL-19107 html entities decoded and html tags removed from email message subject line 2009-11-20 03:29:10 +00:00
Andrew Davis c917a13b47 users online block MDL-18328 users online block always reported 1 online user to the admin if more than 50 online 2009-11-20 03:08:59 +00:00
Andrew Davis de7092fe1f datalib MDL-18470 Implemented more readable version of get_admin() 2009-11-20 02:26:40 +00:00
Andrew Davis f7e5d9235b roles MDL-20686 Provided a convenient links back to the category from the role assignment screen 2009-11-20 01:42:11 +00:00
Eloy Lafuente 826e1aa33c MDL-20849 moodle/restore:userinfo - new cababilty to allow/deny
permissions to restore any (users, messages, modulesactivity...)
user-level information.
2009-11-19 23:55:24 +00:00
David Mudrak 4a7ab3c0fc Fixed wording. Optional things can not be required.
Also, the word "extension" should be used instead of "library" as the
library can be installed on the server but it does not automatically
mean PHP can use it.
2009-11-19 23:07:35 +00:00
Petr Skoda 2b98208b2c MDL-20901 fixed input validation 2009-11-19 19:48:00 +00:00
Petr Skoda bb4cf8d719 MDL-20901 fixed input validation 2009-11-19 19:42:52 +00:00
Petr Skoda 62adf3a036 MDL-20901 fixed input validation 2009-11-19 19:26:38 +00:00
Tim Hunt 8a7b41f2a6 question editing from quiz: MDL-20709 better return URL. 2009-11-19 19:09:07 +00:00
Tim Hunt 8d1e5fdf4a question history: MDL-20776 state history was not shown for random questions
I took the opportunity to clean up the code that generates the history.
Thanks to G?bor Katona for helping to find the problem.
2009-11-19 19:03:57 +00:00
Petr Skoda 4d93b2059f MDL-20901 fixed input validationand removed annoying redirect which must not be clicked during course import 2009-11-19 18:48:52 +00:00
Petr Skoda a8adf25d11 MDL-20901 fixed input validation 2009-11-19 18:11:45 +00:00
Tim Hunt 55d5661bbc question editing: MDL-20380 Highlight the last edited question when you cancel the form too. 2009-11-19 17:59:55 +00:00
Tim Hunt 08df518104 question bank - MDL-20545 need a separate language string for edit question category, as opposed to edit course category. 2009-11-19 17:46:17 +00:00
Tim Hunt 56ed03a328 manual grading: MDL-20581 Fix potential XSS problem.
Thanks to Penny for spotting this.
2009-11-19 17:30:11 +00:00
Tim Hunt 85f530cf0d graphlib - MDL-20855 fix alignemnt issue with the x-axis.
Labels with a descender (e.g. May) appeared lower than ones without (e.g. Jun).
Text is drawn baseline aligned, not bottom aligned,and so the code was computing the position wrongly.
2009-11-19 16:56:49 +00:00
Petr Skoda 6d8f205529 MDL-20901 fixed input validation 2009-11-19 16:39:52 +00:00
Petr Skoda b533531d9f MDL-20821 reverting untested ereg cleanup, not acceptable for stable, sorry 2009-11-19 10:40:17 +00:00
Petr Skoda c2d4c1661a MDL-20821 reverting untested ereg cleanup, not acceptable for stable, sorry 2009-11-19 10:29:06 +00:00
Petr Skoda 58693ff7a6 MDL-20821 reverting untested ereg cleanup, not acceptable for stable, sorry 2009-11-19 10:10:50 +00:00
Petr Skoda 59fa78efa4 MDL-20821 reverting untested ereg cleanup, not acceptable for stable, sorry 2009-11-19 09:56:52 +00:00
Petr Skoda 199be8868e MDL-20821 reverting untested ereg cleanup, not acceptable for stable, sorry 2009-11-19 09:50:27 +00:00
Petr Skoda 426e269e58 MDL-20821 reverting untested buggy ereg cleanup, not acceptable for stable, sorry 2009-11-19 09:39:18 +00:00
Petr Skoda 3587b8dc5d MDL-20901 fixed input validation 2009-11-19 08:56:14 +00:00
Andrew Davis a762409317 validation MDL-20821 Fixed a mistake in validation 2009-11-19 06:14:54 +00:00
Andrew Davis 291542b8ef mnet MDL-20208 Added the string 'allhosts_no_options' 2009-11-19 04:03:44 +00:00
Dongsheng Cai dd4b038bbf "MDL-20886, fixed message popup window for guest user" 2009-11-19 03:27:53 +00:00
Petr Skoda 639f910c5f MDL-18807, MDL-20890 fixed notices 2009-11-18 22:34:31 +00:00
Petr Skoda 6367a8fa61 MDL-20900 iconv now required in 2.0 2009-11-18 22:25:26 +00:00
Eloy Lafuente f484cb3e30 MDL-20834 new cap moodle/backup:userinfo - controls who can backup
user related info. Disabled by default to teachers, oh my! :-(
2009-11-18 11:15:30 +00:00
Petr Skoda edd82b3a50 MDL-20885 PHP soap lib now recommended 2009-11-18 10:07:44 +00:00
Sam Hemelryk b1807d5b43 security MDL-18807 Changed language strings: Thanks for the new strings Helen 2009-11-18 09:39:01 +00:00
Andrew Davis 76561f1e4e all MDL-20821 Removed ereg related deprecated functions 2009-11-18 07:36:20 +00:00
Andrew Davis 4dadad0869 file readme_moodle.txt was added on branch MOODLE_19_STABLE on 2009-11-18 07:36:25 +0000 2009-11-18 06:05:12 +00:00
Andrew Davis 8a66b47903 file readme_moodle.txt was added on branch MOODLE_19_STABLE on 2009-11-18 07:36:29 +0000 2009-11-18 06:05:11 +00:00
Andrew Davis a5f92356ae file readme_moodle.txt was added on branch MOODLE_19_STABLE on 2009-11-18 07:36:27 +0000 2009-11-18 06:05:11 +00:00
Andrew Davis ef489b88fe file README_MOODLE.txt was added on branch MOODLE_19_STABLE on 2009-11-18 07:36:27 +0000 2009-11-18 06:05:10 +00:00
Eloy Lafuente 1ab9b8062f MDL-20846 creating users on restore - new strings 2009-11-18 01:22:52 +00:00
Eloy Lafuente c0c2459bed MDL-20846 creating users on restore - part2 - hack login to inform and
allow 'restored' users to reset their password.
2009-11-18 00:22:44 +00:00
Petr Skoda 279929dd13 MDL-20639 fixed mnet security trouble - credit goes to Adrian Schlegel 2009-11-17 17:29:37 +00:00
Petr Skoda 3786d95b19 MDL-18006 MDL-18807 MDL-20853 tried to explain that admin must copy old main solat to alternative salt list, otherwise all passwords with old salt are invalidated 2009-11-17 16:45:27 +00:00
Petr Skoda e9a71201b0 MDL-18006 MDL-18807 MDL-20853 warn that the default salt is definitely weak 2009-11-17 16:35:08 +00:00
Petr Skoda 30a8ac9187 MDL-18006 MDL-18807 MDL-20853 suggest some longer and better salt 2009-11-17 16:30:08 +00:00
Petr Skoda 89ba2009a9 MDL-18006 MDL-18807 MDL-20853 fixed whitespace 2009-11-17 16:20:10 +00:00
Petr Skoda 8993cd4d22 MDL-18006 MDL-18807 MDL-20853 do not force changing of admin passwords if password not stored in Moodle 2009-11-17 16:18:55 +00:00
Petr Skoda 5c66ab35a3 MDL-18006 MDL-18807 MDL-20853 adding salt info into config-dist.php 2009-11-17 15:53:35 +00:00
Eloy Lafuente c7735da110 MDL-20846 creating users on restore - part1 - mark password as 'restored'
so login will detect that for resetting password. Also some minor improvements
into user/auth detection
2009-11-17 15:22:47 +00:00
Petr Skoda 46697d1290 MDL-19608 do not force changing of passwords if users may not actually change them 2009-11-17 11:36:29 +00:00
Petr Skoda 9d4b3666bb MDL-19608 allow forced password change for everybody including admin 2009-11-17 10:17:04 +00:00
Petr Skoda 61b7eaffa7 MDL-19608 fixed potential issue when too many users selected, replaced redirect by continue 2009-11-17 10:15:33 +00:00
Sam Hemelryk 0a4b736b9c security MDL-18006 MDL-18807 MDL-20853 Several improvements to increase security
*  Installation
      o Adds a random $CFG->passwordsaltmain to config.php on install
      o Changes passwordpolicy default to on
* Upgrade
      o If passwordpolicy is off it switches it on
      o Checks if passwordsaltmain has been set and if not recommends to the user and all admins to add it, both on the upgrade output and via messaging.
      o Forces all admin users to change their password at next login.
* General
      o Extends the security overview report to check for passwordmainsalt and recommend if it not set (or weak)
2009-11-17 09:55:51 +00:00
Petr Skoda 5953ae1d30 MDL-20638 importing latest smarty 2.6.26 2009-11-17 08:45:54 +00:00
Martin Dougiamas 8bcf4b5749 backup/nopasswords MDL-20838 Backups are now never saved with user passwords unless $CFG->includeuserpasswordsinbackup is turned on in config.php (only) 2009-11-17 05:41:51 +00:00
Sam Hemelryk efb9ebe76b themes MDL-20780 the Moodle release info is no longer shown within the footer 2009-11-17 03:10:13 +00:00
Moodle Robot ccf90bf6cb Updated the 19 build version to 20091117 2009-11-17 00:33:57 +00:00
Anthony Borrow f7452149f8 MDL-19608 - adding bulk user action to force password change, credit to Iñaki Arenaza for the patch 2009-11-16 17:11:31 +00:00
Moodle Robot e9af57fc49 Updated the 19 build version to 20091116 2009-11-16 00:34:06 +00:00
Moodle Robot 26dd61268e Updated the 19 build version to 20091115 2009-11-15 00:34:55 +00:00
Moodle Robot f5b31df037 Updated the 19 build version to 20091114 2009-11-14 00:33:46 +00:00
David Mudrak 565ec4b9cb MDL-13049 workshop: grade for assessments ignores hot assessments
Hot assessments in 1.9 are those just creted (allocated) with the
timecreated in the future and the grade = -1. Because the workshop
view.php and lib.php used different ways how to calculate the grading
grade (grrr!), it led to different grades in Workshop and in the
Gradebook.
2009-11-13 22:47:07 +00:00
David Mudrak ee92868003 grade_update_mod_grades() does not index grades correctly
$grades must be indexed by user id because the function they are passed
says so. This caused problems with the workshop grades syncing. Solved
as part of MDL-13049
2009-11-13 22:09:03 +00:00
David Mudrak 53bf4729a0 MDL-13049 Grading grade must be converted to int before saving in database 2009-11-13 22:07:12 +00:00
Petr Skoda d58832a876 MDL-20836 fixed new resource preset value 2009-11-13 21:01:55 +00:00
Andrew Davis 004179e48b report backup MDL-19903 Fixed backup report table header 2009-11-13 06:16:21 +00:00
Andrew Davis 799f8e0888 my moodle MDL-19543 uses theme block min and max widths rather than hard coded values 2009-11-13 05:35:09 +00:00
Moodle Robot 9dfb4d5e50 Updated the 19 build version to 20091113 2009-11-13 00:34:18 +00:00
Eloy Lafuente 035d0f2edd MDL-20728 ims-cc import - fix importing of quiz with only 1 question 2009-11-12 23:53:50 +00:00
David Mudrak 514cda9cd7 MDL-20830 workshop requires sesskey when editing submission 2009-11-12 21:30:49 +00:00
David Mudrak e06d7b43a0 MDL-20830 workshop requires sesskey when removing attachment 2009-11-12 21:30:01 +00:00
David Mudrak 726b471179 MDL-20830 workshop requires sesskey when deleting submission 2009-11-12 21:28:36 +00:00
David Mudrak 8e3264e21e MDL-20830 workshop requires sesskey when clearing the late submission flag 2009-11-12 21:28:05 +00:00
David Mudrak a102b48b2f MDL-20830 workshop requires sesskey when amending the submission title 2009-11-12 21:27:48 +00:00
David Mudrak 8dba124a13 MDL-20830 workshop: better deadlines defaults
The workshop is saved with reasonable defaults even without touching the
date selectors.
2009-11-12 20:09:23 +00:00
David Mudrak 63f3e269ca MDL-20827 workshop: set correct wtype on newly created instances 2009-11-12 20:09:07 +00:00
David Mudrak 94e4101a68 MDL-7218 workshop: remove orphaned assessments on upgrade 2009-11-12 15:47:08 +00:00
David Mudrak 7f6c2d125d MDL-7218 workshop: delete all linked assessments on a submission removal
Credit goes to Stanislav Tsymbalov for spotting this. See the tracker
for more details.
2009-11-12 15:46:40 +00:00
Francois Marier 04a2ac065b MDL-20781 lib/excellib: add write_date() function 2009-11-12 01:58:05 +00:00
Moodle Robot 4706907460 Updated the 19 build version to 20091112 2009-11-12 00:33:21 +00:00
Moodle Robot d3e2e7e029 Updated the 19 build version to 20091111 2009-11-11 00:33:54 +00:00
Tim Hunt 115cc42f87 gradebook cron: MDL-20783 - was broken.
Committing this trivial fix, even though it is testing day. :-p
2009-11-10 09:51:32 +00:00
Moodle Robot 2df591c3d5 Updated the 19 build version to 20091110 2009-11-10 00:33:26 +00:00
Penelope Leach 38e7721a31 MDL-20596 - fixes to backup_course_silently and import_backup_file_silently 2009-11-09 13:05:37 +00:00
Gordon Bateson f50ea0419e ensure user has_capability('mod/hotpot:attempt', $module) when viewing a HotPot or submitting results 2009-11-09 01:27:21 +00:00
Moodle Robot 9218ade3ad Updated the 19 build version to 20091109 2009-11-09 00:33:07 +00:00
Moodle Robot 2d40241c54 Automatic installer.php lang files by installer_builder (20091109) 2009-11-09 00:26:40 +00:00
Petr Skoda b3640ec473 MDL-20723 workaround for zlib compressed scripts; backported from HEAD 2009-11-08 22:23:54 +00:00
Eloy Lafuente c88a1f767e NOBUG: Initial commit of Dhivehi installer lang pack. Backported from HEAD 2009-11-08 16:19:06 +00:00
Eloy Lafuente 62f8381ff4 file installer.php was added on branch MOODLE_19_STABLE on 2009-11-08 16:19:06 +0000 2009-11-08 16:16:19 +00:00
Moodle Robot 3545a15cfe Updated the 19 build version to 20091108 2009-11-08 00:32:41 +00:00
Moodle Robot 661cf3677b Updated the 19 build version to 20091107 2009-11-07 00:32:59 +00:00
Moodle Robot ed57b962ae Automatic installer.php lang files by installer_builder (20091107) 2009-11-07 00:26:23 +00:00
Moodle Robot 0ef4abab04 Updated the 19 build version to 20091106 2009-11-06 00:34:02 +00:00
Moodle Robot 7690817ffe Updated the 19 build version to 20091105 2009-11-05 00:34:00 +00:00
Inaki a025a96009 enrol/ldap: MDL-13952 Don't auto create courses if auto creation not enabled.
Merged from MOODLE_18_STABLE
2009-11-04 21:00:25 +00:00
Tim Hunt b78d7c8ab0 quiz MDL-20718 notice on review page. 2009-11-04 14:07:13 +00:00
Jenny Gray 7bfea4b502 MDL-20665 fixed error from postgres on validating duplicate category name when entering new category 2009-11-04 12:16:18 +00:00
Moodle Robot c3c76e6dc1 Updated the 19 build version to 20091104 2009-11-04 00:33:31 +00:00
Moodle Robot 2d178e2222 Automatic installer.php lang files by installer_builder (20091104) 2009-11-04 00:26:50 +00:00
Rossiani Wijaya e6e4a19712 course/view MDL-10221 delete course items with Ajax enabled 2009-11-03 02:39:02 +00:00
Moodle Robot c8b0aa2ff4 Updated the 19 build version to 20091103 2009-11-03 00:33:50 +00:00
Tim Hunt 3e3281e82d question bank: MDL-20707 prevent XSRF.
Uses new require_sesskey function from MDL-20702.
2009-11-02 17:15:19 +00:00
Tim Hunt 593257a5ae quiz manual grading: MDL-20706 prevent XSRF.
Uses new require_sesskey funciton from MDL-20702.
2009-11-02 17:08:05 +00:00
Tim Hunt 066e898965 lesson: MDL-20705 Fix XSRF issues.
Uses new require_sesskey funciton from MDL-20702.
2009-11-02 17:01:06 +00:00
Tim Hunt 9568417f5f moodlelib: MDL-20702 New require_sesskey function.
Backported from head.
2009-11-02 16:50:33 +00:00
Martin Dougiamas df87462018 forum rating ajax MDL-20119 Enable ajax to work on single-discussion forum 2009-11-02 06:29:24 +00:00
Moodle Robot 1ec7f48dbe Updated the 19 build version to 20091102 2009-11-02 00:33:03 +00:00
Moodle Robot 7f541b07b2 Updated the 19 build version to 20091101 2009-11-01 00:32:56 +00:00
Moodle Robot b3cdd9feb8 Updated the 19 build version to 20091031 2009-10-31 00:34:14 +00:00
Moodle Robot fcaf521542 Automatic installer.php lang files by installer_builder (20091031) 2009-10-31 00:26:53 +00:00
Dan Poltawski 0e9e95a9f6 blocks/html MDL-3703 Hide the title of block when none set
This is fixed sensibly in the Moodle 2.0 block api by not displaying the
block header html with empty content..
2009-10-30 23:36:26 +00:00
Dan Poltawski 4f7212a44c enrol/paypall MDL-16782 - Default cost is not used
When a course level cost is not set, the global setting is not used.
2009-10-30 22:09:23 +00:00
Dan Poltawski 650bb34fec mod/assignment: MDL-16796 Support non-core assignment type titles
Without this patch, the add actvitiy drop down displays ugly
broken lang strings.

This is ugly - hopefully in Moodle 2.0 we will eventually support fully
pluggable architecture in a clean way.
2009-10-30 21:10:04 +00:00
Eloy Lafuente 349442efda MDL-20288 add_to_log() - handle empties in a cross-db way. Merged from 18_STABLE 2009-10-30 16:45:56 +00:00
Dan Poltawski c3867d3188 admin/process_email MDL-20682 Incorrect file handled closed
Thanks to Andrew Nicols for the patch
2009-10-30 16:24:00 +00:00
Rossiani Wijaya 69f471111c course/view MDL-10142 AJAX move functionality for section content 2009-10-30 09:28:11 +00:00
Rossiani Wijaya 65db12fec4 course/view MDL-10221 delete course items with Ajax enabled 2009-10-30 08:37:36 +00:00
David Mudrak 4c26a3a865 MDL-7932 workshop 1.x allows empty generalcomment and teachercomment 2009-10-30 08:15:17 +00:00
Moodle Robot c5c1cd38a2 Updated the 19 build version to 20091030 2009-10-30 00:32:43 +00:00
Moodle Robot 1057f66755 Updated the 19 build version to 20091029 2009-10-29 00:34:15 +00:00
Andrea Bicciolo f6b50c9286 Fix for MDL-20594 2009-10-28 11:19:27 +00:00
Dan Poltawski 9ec826a37a auth/mnet - MDL-16872 Fix incorrect use of clone() on arrays
Thanks to Nigel McNie for the patch
2009-10-28 11:15:05 +00:00
Moodle Robot 656925c007 Updated the 19 build version to 20091028 2009-10-28 00:33:28 +00:00
Nicolas Connault 80aafa81c2 MDL-12972 Added icons next to each student name in the grader report, which link to the student's user grades report 2009-10-27 11:26:51 +00:00
Nicolas Connault 5e150ff30f no message 2009-10-27 11:24:55 +00:00
Moodle Robot 2289c2acde Updated the 19 build version to 20091027 2009-10-27 00:33:43 +00:00
Eloy Lafuente 9ff9dc4a68 MDL-20591 IMS-CC import: Integration committed. Next weeklies will include it. 2009-10-26 08:56:22 +00:00
Moodle Robot 4978b2536c Updated the 19 build version to 20091026 2009-10-26 04:33:40 +00:00
Martin Dougiamas 99b9115cff Buming post release 2009-10-26 04:22:20 +00:00
Moodle Robot a9dcd3fdb0 Updated the 19 build version to 20091025 2009-10-25 03:22:32 +00:00
Moodle Robot dcaea5dc4f Updated the 19 build version to 20091024 2009-10-24 03:39:20 +00:00
Sam Marshall f59ae74693 MDL-20537: fix for infrequent shorten_text bug 2009-10-23 15:10:49 +00:00
Moodle Robot 0f40532941 Updated the 19 build version to 20091023 2009-10-23 03:25:16 +00:00
stronk7 0140fcfc52 MDL-20620 ims-cc import - load resources in object, so navigation doesn't get lost 2009-10-22 20:30:52 +00:00
moodlerobot 6f64d57154 Updated the 19 build version to 20091022 2009-10-22 03:15:21 +00:00
moodlerobot 70eb37b3fb Automatic installer.php lang files by installer_builder (20091022) 2009-10-22 03:08:03 +00:00
moodler e35df1c80f lang/en MDL-20612 Reverting language string change 2009-10-21 07:51:41 +00:00
moodler 0e93a4d60f Bumping for 1.9.6 release 2009-10-21 07:48:11 +00:00
moodlerobot 07052301c3 Updated the 19 build version to 20091021 2009-10-21 03:18:55 +00:00
moodlerobot 59ae7c2a84 Automatic installer.php lang files by installer_builder (20091021) 2009-10-21 03:11:08 +00:00
whchuang 9846a7f090 MDL-20612 checking the "Show activity reports" string to "Show activity reports to students" to be more consistent and to avoid confusing for instructors.
Committed on the Free edition of March Hare Software CVSNT Server.
Upgrade to CVS Suite for more features and support:
http://march-hare.com/cvsnt/
2009-10-20 23:57:46 +00:00
moodlerobot 81d2e45981 Updated the 19 build version to 20091020 2009-10-20 00:33:23 +00:00
stronk7 56788d24dd MDL-20591 check for min libxml 2.6.30 version on ims-cc import 2009-10-19 17:19:20 +00:00
stronk7 05f337cc5f MDL-20591 ims cc import: fix two calls by reference 2009-10-19 13:41:42 +00:00
moodlerobot 6e0246e439 Updated the 19 build version to 20091019 2009-10-19 00:40:25 +00:00
moodlerobot 6385bf7185 Automatic installer.php lang files by installer_builder (20091019) 2009-10-19 00:33:30 +00:00
ashleyholman 53a810db85 MDL-20578 forum_print_overview() performance: fix unnecessary ILIKE match to make better use of log_coumodact_ix index 2009-10-19 00:13:26 +00:00
stronk7 62903322fc MDL-20591 IMS CC Import - lang file added 2009-10-18 21:39:28 +00:00
stronk7 dc63f8d03e MDL-20591 IMS CC Import: All the code (but its integration in restore) goes here. Great job, UVCMS! 2009-10-18 20:09:36 +00:00
moodlerobot 8ebc88c4d9 Updated the 19 build version to 20091018 2009-10-18 00:38:53 +00:00
moodlerobot aa8c2e48bd Updated the 19 build version to 20091017 2009-10-17 00:39:11 +00:00
mudrd8mz d626d3e470 MDL-20579 Fixed user variable 2009-10-16 11:12:34 +00:00
moodler 64c63e6cbb course/ajax MDL-20123 Hide/show buttons appropriately in AJAX mode for different formats/sections
Code written by Rossiani Wijaya, I'm just checking it in for her.
2009-10-16 09:37:05 +00:00
gbateson 621d9afe46 HotPot: refine detection of media urls in escaped javascript and <param> tags 2009-10-16 04:23:30 +00:00
moodlerobot 8bd76ea422 Updated the 19 build version to 20091016 2009-10-16 00:39:59 +00:00
moodlerobot f909dd7612 Updated the 19 build version to 20091015 2009-10-15 00:41:29 +00:00
moodler e9bc93157c forum/single MDL-18599 When a user edits a single-discussion forum, change the initial post to be owned by them 2009-10-14 07:00:00 +00:00
moodlerobot 063bc73658 Updated the 19 build version to 20091014 2009-10-14 00:39:56 +00:00
skodak 6190487787 MDL-20555 fixed quoting 2009-10-13 20:53:57 +00:00
dongsheng 158f3cb65f "MDL-15626, fixed ie error with expanding html editor" 2009-10-13 06:02:01 +00:00
moodlerobot e2f570a23a Updated the 19 build version to 20091013 2009-10-13 00:39:39 +00:00
sam_marshall 46e6e31b52 MDL-20537: Whitespace fixes for shorten_text (bugfixes to follow) 2009-10-12 13:05:04 +00:00
dongsheng 1afd70b2ac "MDL-14907, fixed UTF8 fold in iCal export, thanks Tomasz Muras" 2009-10-12 05:08:02 +00:00
moodlerobot bc6a100181 Updated the 19 build version to 20091012 2009-10-12 00:38:40 +00:00
moodlerobot c2b23ae47b Updated the 19 build version to 20091011 2009-10-11 00:39:15 +00:00
moodlerobot 6f94958749 Updated the 19 build version to 20091010 2009-10-10 00:39:13 +00:00
exe-cutor 897fa24950 shibboleth authentication: MDL-18597 Various small improvements and corrections 2009-10-09 11:07:22 +00:00
exe-cutor cd1ea5d656 shibboleth authentication settings: MDL-20524 preserves HTML entities in text fields 2009-10-09 10:48:49 +00:00
moodlerobot 06748958c5 Updated the 19 build version to 20091009 2009-10-09 00:39:47 +00:00
stronk7 2536c32b3e MDL-20352 - raising oracle 2.0 min req. to 10.2 ; backported from HEAD 2009-10-08 14:47:46 +00:00
ericmerrill bd1f93687d My Moodle/Courses: MDL-20472 get_my_courses returns 2 more courses then limit. Repairs two off by one errors in get_my_courses and get_user_courses_bycap. 2009-10-08 04:52:16 +00:00
nicolasconnault 5ec6beffd6 MDL-19567 Correctly ordering imported courses by sortorder (previously not ordered explicitly) 2009-10-08 02:05:26 +00:00
moodlerobot ed6a79d869 Updated the 19 build version to 20091008 2009-10-08 00:39:38 +00:00
ericmerrill b5cae06cd4 My Moodle: MDL-19089 Course limit for My Moodle not propperly obeyed. Fixing very minor typo in previous commit 2009-10-07 16:27:29 +00:00
ericmerrill a17fcb7b53 My Moodle: MDL-19089 Course limit for My Moodle not propperly obeyed. Fixing so that it obeys mycoursesperpage and propperly displays '...' 2009-10-07 16:24:56 +00:00
moodlerobot 39a631bbe6 Updated the 19 build version to 20091007 2009-10-07 00:39:19 +00:00
moodlerobot a383e8db65 Automatic installer.php lang files by installer_builder (20091007) 2009-10-07 00:32:45 +00:00
skodak e7e67de957 MDL-10498 one more magic quotes problem wwhen email contains ' - thanks Chris Fryer 2009-10-06 19:04:04 +00:00
tjhunt 43fd59ea14 graphlib: NOBUG previous Moodle-specific hack had a bug when y_max was very small. This would round, e.g. 10^-5 to 0 which would break the axis. 2009-10-06 17:49:49 +00:00
stronk7 bf088b3423 Some rewording of last added string. Thanks Nico! 2009-10-06 01:55:18 +00:00
stronk7 b944b6c678 MDL-12922 'moodle/restore:rolldates' capability - added missing string 2009-10-06 01:44:59 +00:00
stronk7 e535262042 Bump backup version 2009-10-06 01:31:56 +00:00
stronk7 dd48008c77 MDL-12922 'moodle/restore:rolldates' capability - Implement logic on restore 2009-10-06 01:22:14 +00:00
stronk7 4eb5e15641 MDL-12922 adding 'moodle/restore:rolldates' cap to control who can roll dates on restore
(defaults to current settings: only course creators (and admins) are able to roll)
2009-10-06 01:13:20 +00:00
moodlerobot 0e18d41b3b Updated the 19 build version to 20091006 2009-10-06 00:38:52 +00:00
skodak fbd941aa94 MDL-20406 improved param validation 2009-10-05 17:51:14 +00:00
stronk7 9c40410a22 MDL-18469 restore checksums - add error message string 2009-10-05 17:43:43 +00:00
stronk7 096cbd68a9 MDL-18469 checksum restore in-session objects - both in manual restore and
import, create checksums of the critical in-session objects (info, course_header
and restore) to be able to check in restore_execute.html that all the information
has arrived properly without any trim/error.
2009-10-05 17:21:02 +00:00
skodak e426c25127 MDL-19039 improved default frontpage role capability evealuation, needs to be manually enabled in config.php 2009-10-05 17:06:51 +00:00
stronk7 3982f34f2c NOBUG. Restoring of backups performed in different TZ/DST was causing incorrect roll to happen.
Prevent any roll of dates if differences are < 24h
2009-10-05 16:54:00 +00:00
stronk7 20b4684483 MDL-17469 - Revert incorrect handling of restore parameters in restore.php file. It was
causing restore dates to be rolled based in the course where the backupfile is stored
and not in the target course.
2009-10-05 16:28:42 +00:00
stronk7 c1c0d58867 MDL-18469 restore missing session info - add a quick re-test of xml file
before any further processing by restore_execute(). More coming.
2009-10-05 10:23:47 +00:00
dongsheng a3ba7fb4a7 "MDL-20422, check courses category before moving, hideing, showing courses" 2009-10-05 07:11:07 +00:00
jerome ab1b3440f2 quizz MDL-20421 remove php notice when Enable Safe Exam Browser integration is not activated 2009-10-05 03:05:38 +00:00
moodlerobot e2f5bc4700 Updated the 19 build version to 20091005 2009-10-05 00:38:55 +00:00
tjhunt b264f0f0f4 quiz: MDL-20420 Not all quizzes use best grade (e.g. some use average). Change column title. 2009-10-04 18:49:10 +00:00
moodlerobot eef19f3eaa Updated the 19 build version to 20091004 2009-10-04 00:38:37 +00:00
tjhunt fab7a109e2 chatd: NOBUG fix unnecessary call-time pass by reference. 2009-10-03 07:58:19 +00:00
nicolasconnault 58d75e5b3b MDL-16940 Applied the patch for visibility of dropdown menus in course view for IE6 when AJAX is on. 2009-10-03 02:30:31 +00:00
nicolasconnault 81d57c26db MDL-15686 Resolved the mutually-disabling code for forcedownload and windowpopup in resource mod, file type. 2009-10-03 02:20:40 +00:00
nicolasconnault c4cf048ba7 MDL-20415 Modified the behaviour of AJAX moving of sections when in "weekly" format, so that dates don't get moved along with the sections. This reflects the final, saved state. 2009-10-03 01:35:05 +00:00
moodlerobot 94a87681a6 Updated the 19 build version to 20091003 2009-10-03 00:38:24 +00:00
wildgirl 7fb9c3d85c multichoice question help file: MDL-16791 corrected wording thanks to Ralf Hilgenstock 2009-10-02 13:27:32 +00:00
stronk7 ce261c444d MDL-18469 Minor changes to restore silenty/import before implementing checksum 2009-10-02 12:47:08 +00:00
moodler cb09ed7ecb filter/mediaplugins MDL-19231 Fixing case on YouTube 2009-10-02 08:27:21 +00:00
moodler c61ab3b6af filter/mediaplugins MDL-19231 Backported youtube filter from HEAD (defaults to being OFF) 2009-10-02 08:25:12 +00:00
nicolasconnault a4328b8f04 MDL-10221 Simulating the HTTP DELETE method by using a URL param (action), because some web servers don't allow DELETE. AJAX Course and Block deletion now works as expected. 2009-10-02 07:47:17 +00:00
dongsheng dbd0d6062c "MDL-18723, role required to display search box should be viewparticipants" 2009-10-02 06:49:47 +00:00
moodler cee781ba9e user/view MDL-18800 Sort courses consistently with everything else 2009-10-02 06:28:06 +00:00
moodler ba583fc1ec calendar html MDL-17528 Add H2 tags to make events "block" consistent here 2009-10-02 06:12:26 +00:00
moodlerobot f7503b9e66 Updated the 19 build version to 20091002 2009-10-02 00:38:46 +00:00
tjhunt f58259c790 question import/export: MDL-20299 fix regression I introduced yesterday in hotpot import/export 2009-10-01 10:12:31 +00:00
skodak bbb5b1aeaa MDL-20385 better access control checks for frontpage activities 2009-10-01 09:57:02 +00:00
nicolasconnault e9672d50de MDL-15262 Applied patch 2009-10-01 07:47:28 +00:00
moodler d4d468ad37 calendar MDL-19940 Don't require login for site calendar when forcelogin is false 2009-10-01 07:02:15 +00:00
moodler c572230139 form/recaptcha MDL-20144 Don't specify tabindex for accessibility 2009-10-01 06:52:39 +00:00
samhemelryk 64792d5d0b javascript MDL-20400 Addition of disabledif hide option, thanks Jonathan for the brilliant patch 2009-10-01 06:38:54 +00:00
samhemelryk 8c3185f763 javascript MDL-18569 Removed statement that was preventing disabledif locking within Safari 2009-10-01 06:36:25 +00:00
moodlerobot 690a7660ca Updated the 19 build version to 20091001 2009-10-01 00:39:53 +00:00
moodlerobot 3b938296a8 Automatic installer.php lang files by installer_builder (20091001) 2009-10-01 00:33:10 +00:00
tjhunt 0325c08ea7 moodlelib: MDL-19764 get_list_of_countries did not work with language editing.
Will need a completely different solution in 2.0 becuse of the new
string_manager class. I'm working on it.
2009-09-30 18:54:22 +00:00
tjhunt 68dbc90489 question import/export: MDL-20299 fatal error cause by hotpot format changes
Replaced copy and paste code from mod/hotpot/lib.php with a require_once.
2009-09-30 17:19:35 +00:00
tjhunt 9c55e9c0f7 question types: MDL-20157 export_to_xml and import_from_xml functions for question types using extra_question_fields.
Thanks to Oleg Sychev for the implementation.
2009-09-30 13:38:51 +00:00
tjhunt 61eed5acf7 quiz: MDL-19145 Safe Exam Browser integration.
This is a better alternative to 'secure' mode.

It needs to be enabled by the administrator.
2009-09-30 10:58:02 +00:00
tjhunt 5a7b40f684 file browsersecurity.html was added on branch MOODLE_19_STABLE on 2009-09-30 10:58:02 +0000 2009-09-30 10:57:58 +00:00
tjhunt d5f343427d resource MDL-20320 upgrade: Fix hard-coded mdl_ prefix and lack of error-checking 2009-09-30 10:49:47 +00:00
jerome 901dd449d6 resource MDL-20320 upgrade: set all PDF files to Show navigation: 'Yes, without frame' on previous installation 2009-09-30 09:21:13 +00:00
ashleyholman 3b94f1111a MDL-5223 fix flashvars in mediafilter to make waitForPlay work. 2009-09-30 08:38:37 +00:00
moodlerobot 959e46857d Updated the 19 build version to 20090930 2009-09-30 00:39:23 +00:00
skodak ff7eba4d78 MDL-20371 improved warning string 2009-09-29 07:16:23 +00:00
moodlerobot 94f638e915 Updated the 19 build version to 20090929 2009-09-29 00:40:22 +00:00
skodak 425f43d8f3 MDL-20371 backups should never be in site files, let's create the secure backupdata in site files automatically 2009-09-28 18:57:25 +00:00
skodak 08ca102966 MDL-20369 fixed restoring of default sort 2009-09-28 16:45:25 +00:00
skodak d76f87a94f MDL-10498 fixed password changing when username contains special chars 2009-09-28 16:16:24 +00:00
skodak 7d8cede29c MDL-20369 fixed incorrect fetching of data fields - this was causing major problem with incorrect defaultsort caused by restore bug 2009-09-28 16:07:19 +00:00
mudrd8mz 2ccfd7509d MDL-19542 Outcomes report display the name of the activity instead of the name of the outcome 2009-09-28 07:44:07 +00:00
moodlerobot 44659da943 Updated the 19 build version to 20090928 2009-09-28 00:38:43 +00:00
skodak 6ab0935e93 MDL-10498 fixed handling of username and emails with single quotes 2009-09-27 19:13:22 +00:00
skodak 582d4d91a0 MDL-11896 added hint if entry awaits approvel 2009-09-27 18:07:53 +00:00
skodak fca567dee4 MDL-19718 fixed critical race condition when deleting posts - credit goes to Ashley Holman 2009-09-27 09:46:52 +00:00
skodak 3e3ae23846 MDL-19718 fixed critical race condition when deleting posts - credit goes to Ashley Holman 2009-09-27 09:46:07 +00:00
skodak 5d850ce66e MDL-20209 fixed regression - the email has to be synced with ext auth when change confirmed 2009-09-27 09:23:08 +00:00
mudrd8mz 077f41dc19 MDL-20336 Apply course defaults when approving the course
The credit goes to Patrick Pollet for the patch.
2009-09-27 06:06:43 +00:00
moodlerobot c32a9ec8cd Updated the 19 build version to 20090927 2009-09-27 00:37:37 +00:00
skodak 9afbbd3834 MDL-19269 Deleted internal auth users - handling is buggy; credit Martin Langhoff 2009-09-26 20:17:23 +00:00
skodak 3cc5c930cb MDL-19709 fixed missing quoting in upgrade code, safer tag api 2009-09-26 19:47:07 +00:00
skodak 601cd4ebd7 MDL-20209 fixed incorrect mail sync with ext auths 2009-09-26 19:16:53 +00:00
skodak 04019ee089 MDL-20295 fixed problems with special email addresses 2009-09-26 19:13:12 +00:00
skodak d0c227d966 MDL-20295 fixed problems with special email addresses 2009-09-26 19:04:05 +00:00
skodak 4ad2527e2e MDL-20355 teachers may not see overview of all students in course because they might not have access in all their courses - please use profile instead 2009-09-26 18:49:30 +00:00
arborrow 8a8a4a843d MDL-20353 - fixing typo 2009-09-26 17:43:03 +00:00
skodak 398e230331 MDL-20353 adding missing data types of hidden form fields 2009-09-26 16:28:53 +00:00
skodak 65a2e5fe0e MDL-20353 adding missing data types of hidden form fields 2009-09-26 16:23:34 +00:00
skodak 6c00930560 MDL-20309 improved sanitization of id property 2009-09-26 11:55:57 +00:00
moodlerobot 1a7f4d16c5 Updated the 19 build version to 20090926 2009-09-26 00:38:12 +00:00
gbateson 5934fe5d94 stricter checking of null fields when restoring HotPots in order to avoid unwanted chars being inserted into empty char fields on PostgreSQL sites 2009-09-25 06:21:45 +00:00
moodlerobot d5e0549053 Updated the 19 build version to 20090925 2009-09-25 00:40:29 +00:00
moodler de21347f57 resource/file MDL-20327 force target attributes on frame navigation for non-JS 2009-09-24 03:48:45 +00:00
jerome 5923607efe resource MDL-20320 PDF are now displayed the same way as HTML filse by the resource module. Also renamed 'Keep navigation visible on the same page' into 'Show navigation', and added a warning about this option. 2009-09-24 02:30:17 +00:00
samhemelryk 98c7487e6f weblib MDL-20327 Added CFG->frametarget to the navigation generation code 2009-09-24 02:15:12 +00:00
moodlerobot bb3ca655f7 Updated the 19 build version to 20090924 2009-09-24 00:39:27 +00:00
moodlerobot 29c374090b Updated the 19 build version to 20090923 2009-09-23 00:40:43 +00:00
tjhunt 46055853d5 spamcleaner report. Remove erroneous global $DB from 19 codebase. 2009-09-22 17:11:02 +00:00
moodler 4cb35863d0 paypal MDL-20322 Make sure the currency is set correctly. 2009-09-22 01:51:19 +00:00
moodlerobot a55516bfa4 Updated the 19 build version to 20090922 2009-09-22 00:40:39 +00:00
moodlerobot ec27b03b55 Automatic installer.php lang files by installer_builder (20090922) 2009-09-22 00:33:48 +00:00
moodlerobot 5e1ad59a07 Updated the 19 build version to 20090921 2009-09-21 00:39:24 +00:00
moodlerobot 07740e4f85 Updated the 19 build version to 20090920 2009-09-20 00:38:47 +00:00
moodlerobot 407faffcaf Updated the 19 build version to 20090919 2009-09-19 00:40:11 +00:00
tjhunt 455d145b38 quiz reports: MDL-20316 per-question averages not shown with the quiz only allows one attempt.
Problem found thanks to OU testing. Fix thanks to Mahmoud Kassaie.
2009-09-18 13:42:19 +00:00
moodlerobot 1c43ecde9c Updated the 19 build version to 20090918 2009-09-18 00:38:32 +00:00
moodlerobot b16c535b11 Automatic installer.php lang files by installer_builder (20090918) 2009-09-18 00:31:50 +00:00
nicolasconnault 1119cfaf3f MDL-19407 Defaulting all grade items to non-extra-credit when moving to a SWM category, except if they originally come from a SWM category and were set as extra credit there. 2009-09-17 07:10:50 +00:00
moodlerobot 1d919f4c09 Updated the 19 build version to 20090917 2009-09-17 00:38:50 +00:00
danmarsden 2debdc6b36 message/lib.php MDL-20303 remove rogue semicolon in sql merged from HEAD 2009-09-16 22:29:37 +00:00
danmarsden 0bcda53a17 blackboard import MDL-20302 imported blackboard backups set all resources/files to open in a frame - which isn't moodle default behaviour and causes confusion merged from HEAD 2009-09-16 11:41:48 +00:00
danmarsden 060ed3e43e blackboard import MDL-15725 filenames from blackboard come through in hex instead of correct names. merged from HEAD 2009-09-16 11:18:56 +00:00
moodlerobot e1dea25400 Updated the 19 build version to 20090916 2009-09-16 00:38:26 +00:00
moodlerobot 451e2115fb Automatic installer.php lang files by installer_builder (20090916) 2009-09-16 00:31:23 +00:00
moodler 9118464db9 Draft language file for moodle.org front pages, for Helen to look at and clean up 2009-09-15 08:34:03 +00:00
moodlerobot 20779888d0 Updated the 19 build version to 20090915 2009-09-15 00:38:32 +00:00
moodlerobot b494a7a518 Automatic installer.php lang files by installer_builder (20090915) 2009-09-15 00:31:37 +00:00
tjhunt 26605cb7da questions: MDL-20280 oracle compatibility in question backup.
Problem and fix thanks to Sara Arjona
2009-09-14 17:48:53 +00:00
moodlerobot c0b6790784 Updated the 19 build version to 20090914 2009-09-14 00:38:37 +00:00
moodlerobot 5a68444794 Updated the 19 build version to 20090913 2009-09-13 00:38:35 +00:00
moodlerobot a058f40d19 Updated the 19 build version to 20090912 2009-09-12 00:39:21 +00:00
danmarsden c9275385f8 MNET MDL-13503 allow path to openssl.cnf to be set in config so that windows installs and packages can reliably enable networking. merged from HEAD 2009-09-11 10:06:28 +00:00
moodlerobot 0e96ba879d Updated the 19 build version to 20090911 2009-09-11 00:39:13 +00:00
moodlerobot d69c38ed33 Updated the 19 build version to 20090910 2009-09-10 00:39:10 +00:00
poltawski 10aee1921d course/logs MDL-15090 - Broken links generated for role actions in logs 2009-09-09 12:45:14 +00:00
moodlerobot a77c773d85 Updated the 19 build version to 20090909 2009-09-09 00:39:41 +00:00
rwijaya 6b966ac672 tag logs MDL-19604 Add logging for tag editing/updates 2009-09-08 09:06:15 +00:00
moodlerobot 6683493bfe Updated the 19 build version to 20090908 2009-09-08 00:39:05 +00:00
moodlerobot 407cd995c7 Updated the 19 build version to 20090907 2009-09-07 00:38:28 +00:00
moodlerobot 7cad9118a7 Updated the 19 build version to 20090906 2009-09-06 00:37:56 +00:00
moodlerobot 2c23f4d946 Updated the 19 build version to 20090905 2009-09-05 00:38:46 +00:00
pichetp 2c6ad02fe8 MDL-20189 correcting for the value of correctanswerlength on calculated export Merge
from HEAD
2009-09-04 02:10:28 +00:00
moodlerobot e1d1889bab Updated the 19 build version to 20090904 2009-09-04 00:39:16 +00:00
moodlerobot aba7ba077d Updated the 19 build version to 20090903 2009-09-03 00:39:17 +00:00
moodlerobot c3e9985a8c Updated the 19 build version to 20090902 2009-09-02 00:39:27 +00:00
gbateson edb3ed1ebb MDL-20184 use $this->error() to print error message if no questions found importing from a Hot Potatoes XML file into Moodle's question bank / Quiz module 2009-09-01 01:24:17 +00:00
gbateson 10369c9c5b MDL-20184 more efficient and accurate detection of missing nodes in xml tree when importing Hot Potatoes XML files to Moodle question bank / quiz module 2009-09-01 01:04:18 +00:00
moodlerobot aeb4bd9ce5 Updated the 19 build version to 20090901 2009-09-01 00:39:27 +00:00
gbateson 42dc4cad26 MDL-20184 when importing questions from Hot Potatoes files to Moodle question-bank / Quiz module, the readquestions() function wil return "false", to signify an error, if no questions are detected in the import file 2009-08-31 02:06:40 +00:00
gbateson 8fbc973901 MDL-20185 detect zero, "0", as an answer for a gap in a JCloze when importing to the Moodle's question bank / Quiz module 2009-08-31 01:34:52 +00:00
moodlerobot 6a77e4cc89 Updated the 19 build version to 20090831 2009-08-31 00:38:41 +00:00
moodlerobot 9d597e5f0f Updated the 19 build version to 20090830 2009-08-30 00:37:59 +00:00
moodlerobot df0dcdcd82 Updated the 19 build version to 20090829 2009-08-29 00:37:49 +00:00
gbateson d236997758 HotPot module: differentiate between "guesses-correct" (JCloze) and "guess-correct" (JCross, JMatch, JMix, JQuiz) in HotPot xml files and fix PreloadImages function for multiple images 2009-08-28 08:04:33 +00:00
nicolasconnault c14ee7225b MDL-20179 Replaced incompatible code with something cross-browser compatible 2009-08-28 06:56:08 +00:00
moodlerobot fc11c6512d Updated the 19 build version to 20090828 2009-08-28 00:39:06 +00:00
jerome f64afbb455 htmlarea MDL-15800 add ; at the end of line <? echo ... ; ?> 2009-08-27 03:21:33 +00:00
moodlerobot 355efd43c7 Updated the 19 build version to 20090827 2009-08-27 00:38:52 +00:00
poltawski c43b904d33 course/jumpto.php MDL-19886 Don't depend on HTTP_REFFER header
thanks to Jordan Tomkinson for the patch
2009-08-26 09:46:57 +00:00
moodlerobot 600bbd40ab Updated the 19 build version to 20090826 2009-08-26 00:38:39 +00:00
gbateson 1087d15324 add hotpot_encode_content_links() and hotpot_decode_content_links() to HotPot's backuplib.php and restorelib.php respectively 2009-08-25 01:14:36 +00:00
moodlerobot f446045c73 Updated the 19 build version to 20090825 2009-08-25 00:38:40 +00:00
moodlerobot d6436ff003 Updated the 19 build version to 20090824 2009-08-24 00:38:46 +00:00
moodlerobot d1a54306ea Updated the 19 build version to 20090823 2009-08-23 00:39:34 +00:00
moodlerobot 832c5b2f31 Updated the 19 build version to 20090822 2009-08-22 00:39:22 +00:00
moodlerobot 47c2387cf2 Updated the 19 build version to 20090821 2009-08-21 00:40:12 +00:00
moodlerobot 1407c22310 Updated the 19 build version to 20090820 2009-08-20 00:39:33 +00:00
moodlerobot 9ad1d1bbd5 Updated the 19 build version to 20090819 2009-08-19 00:39:24 +00:00
dongsheng 7fe85994a6 "MDL-MDL-20113, fixed hardcoded siteid" 2009-08-18 04:29:11 +00:00
moodlerobot 0c25e4fdbf Updated the 19 build version to 20090818 2009-08-18 00:40:50 +00:00
jonathanharker 181b342dd4 MDL-20114 admin/cron.php: Fix SQL bug when emailing new passwords.
Author: Jonathan Harker <jonathan@catalyst.net.nz>
2009-08-17 23:53:47 +00:00
arborrow 9be4ad6dc9 MDL-11790 Added missing lang strings to MOODLE_19_STABLE 2009-08-17 16:45:36 +00:00
nicolasconnault c5621562b2 MDL-11790 Added missing lang strings to MOODLE_19_STABLE 2009-08-17 14:47:35 +00:00
skodak 34c0bd4cc7 MDL-19417 added timezone settings info; backported from HEAD 2009-08-17 08:12:43 +00:00
moodlerobot 4f6d0ff06d Updated the 19 build version to 20090817 2009-08-17 00:39:03 +00:00
moodlerobot a498087d87 Updated the 19 build version to 20090816 2009-08-16 00:37:03 +00:00
mjollnir_ 65eebc1dc1 MDL-19142 assignment/restore small fix to pass $info to subtypes relative to current assignment rather than the full array 2009-08-15 07:58:36 +00:00
moodlerobot 6a7f561589 Updated the 19 build version to 20090815 2009-08-15 00:39:00 +00:00
moodlerobot c01d42c269 Updated the 19 build version to 20090814 2009-08-14 00:39:28 +00:00
nicolasconnault 4a5eefa65e MDL-20086 Fixed reverse ordering of bulk-moved grade items 2009-08-13 23:57:23 +00:00
mjollnir_ 8b6405ce85 MDL-19142 assignment/backup&restore: support backing up and restoring third party subtypes if they need it. 2009-08-13 09:35:40 +00:00
skodak 087c82f2af MDL-19955 fixed bogus & that was preventing function call in PHP5.3 when adding blocks, already fixed in HEAD 2009-08-13 08:14:31 +00:00
moodlerobot af8857f356 Updated the 19 build version to 20090813 2009-08-13 00:38:58 +00:00
moodlerobot 9add7352b4 Updated the 19 build version to 20090812 2009-08-12 00:40:09 +00:00
mjollnir_ 894909f8bc MDL-19142 assignment/backup: reverting earlier patch while I figure out a better way to deal with course_modules during restore 2009-08-11 13:48:23 +00:00
mjollnir_ c1816feb13 MDL-19142: assignment/backup add support for third party subtypes
Now third party assignment type subplugin authors can implement backup/restore

This adds four hooks, backup_one_mod, backup_one_submission, restore_one_mod, restore_one_submission,
all of which are implemented in the assignment_base parent class and documented there.
2009-08-11 12:16:53 +00:00
skodak f7ad66498e MDL-20039 fixed incorrect string and setting names, sorry for the trouble 2009-08-11 05:27:07 +00:00
moodlerobot f0d42c3de0 Updated the 19 build version to 20090811 2009-08-11 00:38:34 +00:00
moodlerobot cf247b1cd2 Updated the 19 build version to 20090810 2009-08-10 00:39:26 +00:00
moodlerobot fbe18b35ff Updated the 19 build version to 20090809 2009-08-09 00:40:23 +00:00
moodlerobot 18a538ee7f Updated the 19 build version to 20090808 2009-08-08 00:39:16 +00:00
moodlerobot 83b7d9e66c Automatic installer.php lang files by installer_builder (20090808) 2009-08-08 00:32:22 +00:00
moodlerobot 699304bf04 Updated the 19 build version to 20090807 2009-08-07 00:40:51 +00:00
skodak b8451e289e MDL-19962 new option for forcing of regeneration of the session id during each login request 2009-08-06 13:21:44 +00:00
moodlerobot 58d1d16f52 Updated the 19 build version to 20090806 2009-08-06 00:40:51 +00:00
moodlerobot 85ec42a6da Updated the 19 build version to 20090805 2009-08-04 23:31:04 +00:00
moodlerobot 0dcb01f5b0 Updated the 19 build version to 20090804 2009-08-04 00:38:44 +00:00
moodlerobot 65fde56506 Updated the 19 build version to 20090803 2009-08-03 00:37:29 +00:00
skodak f72dda83d8 MDL-19982 fixed notice if group empty 2009-08-02 11:36:04 +00:00
moodlerobot d0beaac3e7 Updated the 19 build version to 20090802 2009-08-02 00:38:35 +00:00
moodlerobot 4720633c09 Updated the 19 build version to 20090801 2009-08-01 00:37:33 +00:00
moodlerobot 0cbf8dddf9 Updated the 19 build version to 20090731 2009-07-31 00:41:27 +00:00
moodlerobot 3983b7a590 Updated the 19 build version to 20090730 2009-07-30 00:38:42 +00:00
stronk7 21ae339623 NOBUG Fixed error happening when restoring missingtype questions if answers weren't present (cast error) 2009-07-29 18:59:27 +00:00
moodler 4431b5bb02 theme/standard MDL-19953 increase caching of standard style sheet 2009-07-29 07:42:36 +00:00
moodler 31869bb435 blog MDLSITE-679 Some small patches to make blog RSS feeds work better.
a) You can define an array in config.php of exceptions to any rule which makes blogs not available to the outside world.  For example we use this on moodle.org with Helen's blog.   $CFG->openblogs = array(24152);

b) Author names are not atatched to every post in a 1-user feed.  Just the feed itself.

c) Links on user blogs are now more accurate and go right to the post.

d) Users are asked to log in if they aren't and guests don't have permission.
2009-07-29 07:31:47 +00:00
tjhunt 3f842963f8 More XHTML strict. 2009-07-29 06:21:50 +00:00
tjhunt 57e207d552 XHTML strict.
There is tsome truely horrible hackery going on here to ensure XHTML strict,
and rather unsurprisingly, it was broken. I think it is less broken now.
2009-07-29 05:59:01 +00:00
moodlerobot a18e55c721 Updated the 19 build version to 20090729 2009-07-29 00:39:08 +00:00
stronk7 f5553c87a3 MDL-18658 add support for m4a files in the multimedia filter + missing mimetypes. Credit goes to Ralf Krause, thanks! 2009-07-28 16:41:58 +00:00
moodlerobot 0046f85241 Updated the 19 build version to 20090728 2009-07-28 00:39:50 +00:00
moodlerobot 429719b771 Updated the 19 build version to 20090727 2009-07-27 00:38:14 +00:00
moodlerobot ef597bbbd0 Updated the 19 build version to 20090726 2009-07-26 00:37:46 +00:00
moodlerobot 42f012ebb3 Automatic installer.php lang files by installer_builder (20090726) 2009-07-26 00:31:15 +00:00
moodlerobot 58cd93fd1d Updated the 19 build version to 20090725 2009-07-25 00:36:56 +00:00
tjhunt d9794f1afd weblib: Grrr! remove PHP5ism 2009-07-25 00:25:34 +00:00
moodlerobot 0e59339dff Updated the 19 build version to 20090724 2009-07-24 00:38:22 +00:00
moodlerobot 04ee3d1b45 Updated the 19 build version to 20090723 2009-07-23 00:37:07 +00:00
diml 0f5ef8a9cd no change 2009-07-22 21:53:06 +00:00
diml 8b0328b440 no change : comment 2009-07-22 21:52:08 +00:00
diml b8b5df0f05 fetch as much memory we can... and get it back. 2009-07-22 21:50:10 +00:00
diml fdd8054931 use search_collect_searchable() to get searchable stuff. 2009-07-22 21:48:33 +00:00
diml fddfe2944a usefull for testing and debugging SoftLockManager... 2009-07-22 21:47:27 +00:00
diml 4da015a61e quote cleanup 2009-07-22 21:46:41 +00:00
diml b127df2bcf http://tracker.moodle.org/browse/MDL-18681 : protects search index table from negative groups ids 2009-07-22 21:46:03 +00:00
diml a07107a0a4 http://tracker.moodle.org/browse/MDL-17032 : Add NFS support by softlocking the index (bloc search global configuration option).
Required for clustering using NFS shared mounting of FS.
2009-07-22 21:41:52 +00:00
diml 2a78d7be39 code cleanup 2009-07-22 21:37:27 +00:00
diml 52b20d0b14 ignore missing documents or cms. 2009-07-22 21:36:52 +00:00
diml 74e12d5754 resolve executable path tests removing properly command line options when focussing the executable. 2009-07-22 21:34:23 +00:00
moodlerobot 1f619d3788 Updated the 19 build version to 20090722 2009-07-22 00:38:05 +00:00
moodler 2ae3f04143 filter/mediaplugins MDL-18658 Add support for MP4 files (Quicktime) 2009-07-21 05:26:30 +00:00
moodlerobot b12c56b9f7 Updated the 19 build version to 20090721 2009-07-21 00:37:39 +00:00
moodlerobot 59a47661a4 Automatic installer.php lang files by installer_builder (20090721) 2009-07-21 00:31:12 +00:00
moodlerobot c0e733fe65 Updated the 19 build version to 20090720 2009-07-20 00:38:36 +00:00
moodlerobot 16ad6fa4bb Updated the 19 build version to 20090719 2009-07-19 00:36:46 +00:00
diml 4398ce111c adding an identifying version file. Not handled by upgrade core API. 2009-07-18 23:01:41 +00:00
moodlerobot 52f87775e4 Updated the 19 build version to 20090718 2009-07-18 00:36:35 +00:00
skodak 6f37d406a9 MDL-19842 securing algebradebug the same way as text debug - only admins may use it now; backported from HEAD 2009-07-17 08:40:06 +00:00
moodlerobot 4945b93ba5 Updated the 19 build version to 20090717 2009-07-17 00:39:12 +00:00
skodak 361108bf87 MDL-19832 new mimeTeX binaries v1.70; backported from HEAD 2009-07-16 09:50:44 +00:00
skodak 2fde99f6f1 file readme_moodle.txt was added on branch MOODLE_19_STABLE on 2009-07-16 09:50:44 +0000 2009-07-16 09:48:18 +00:00
moodlerobot 7c66bf1a3a Updated the 19 build version to 20090716 2009-07-16 00:40:00 +00:00
tjhunt 997dbc1d6a question bank: MDL-19826 Tidy up. 2009-07-15 04:04:23 +00:00
tjhunt 6ab41ced9f question bank: MDL-19826 Error when deleting a lot of questions
We were stupidly putting the list of questionids in the URL, even though this was a post forum.
2009-07-15 03:33:27 +00:00
tjhunt cef179fb17 Backport improved moodle_url::params implementation from HEAD - lets you get the params as an array. 2009-07-15 03:30:00 +00:00
moodlerobot aac5cc99b8 Updated the 19 build version to 20090715 2009-07-15 00:38:10 +00:00
moodlerobot 2451a17e4f Updated the 19 build version to 20090714 2009-07-14 00:39:43 +00:00
moodlerobot 411db8a7aa Updated the 19 build version to 20090713 2009-07-13 00:39:23 +00:00
moodlerobot 13f3ab9e8d Automatic installer.php lang files by installer_builder (20090713) 2009-07-13 00:32:29 +00:00
moodlerobot 1c58794888 Updated the 19 build version to 20090712 2009-07-12 00:38:46 +00:00
moodlerobot 8dfe7ccdbd Updated the 19 build version to 20090711 2009-07-11 00:38:32 +00:00
moodlerobot f262d1a4a5 Updated the 19 build version to 20090710 2009-07-10 00:38:27 +00:00
moodlerobot e99bd28163 Updated the 19 build version to 20090709 2009-07-09 01:50:59 +00:00
moodlerobot 52e09d71ba Updated the 19 build version to 20090708 2009-07-08 00:37:52 +00:00
moodlerobot a36ee478a9 tags MDL-19728 Removing tags file and replacing with a tags.txt to explain where to get it 2009-07-07 03:42:35 +00:00
moodlerobot 1c616dab4c file tags.txt was added on branch MOODLE_19_STABLE on 2009-07-07 03:42:35 +0000 2009-07-07 03:37:58 +00:00
nicolasconnault b8d435b455 MDL-19727 Replaced boilerplates and removed ID tags 2009-07-07 02:16:06 +00:00
nicolasconnault fe0c1c6bde MDL-19404 Getting default values for grade_item object when creating a new grade_category. 2009-07-07 02:03:40 +00:00
nicolasconnault c2ff6d5028 MDL-19429 Validating 0 values for grademin, grademax and gradepass for the edit category form. Also checking for grademax < grademin case. 2009-07-07 01:52:41 +00:00
moodlerobot f089cc2af2 Updated the 19 build version to 20090707 2009-07-07 00:40:23 +00:00
iarenaza fc54986465 ldap auth and enrolment: MDL-19672 prevent update_user_record() from mangling distinguished names with backslashes
In addition to it, in order to be able to used a distiguished name with '\'
(and other LDAP special characters) in a LDAP filter to find the user
enrolments, we need to quote it using the LDAP filter quoting rules
2009-07-06 18:51:30 +00:00
moodlerobot 51b9ca7c4d Updated the 19 build version to 20090706 2009-07-06 00:39:25 +00:00
moodlerobot e97b405e2c Updated the 19 build version to 20090705 2009-07-05 00:39:30 +00:00
moodlerobot b71ad710d6 Automatic installer.php lang files by installer_builder (20090705) 2009-07-05 00:32:41 +00:00
moodlerobot 48b54c3496 Updated the 19 build version to 20090704 2009-07-04 00:39:55 +00:00
nicolasconnault 362b69f088 MDL-18228 Added a bit of JS to resize the left header of the fixed student column. This should help to keep the rows below aligned. 2009-07-03 06:31:49 +00:00
moodlerobot c211a14454 Updated the 19 build version to 20090703 2009-07-03 00:40:30 +00:00
moodlerobot 6fe8629801 Updated the 19 build version to 20090702 2009-07-02 00:39:16 +00:00
nicolasconnault 198a6cd63a MDL-19673 Removed the semi-transparent underlay of YUI tooltips, they don't work in IE. 2009-07-01 03:48:00 +00:00
moodlerobot 6d638bd292 Updated the 19 build version to 20090701 2009-07-01 00:40:04 +00:00
iarenaza 2ecb5ae389 CAS authentication: MDL-19671 phpCAS::getUser can return a mixed-case username, so lower-case it for comparison.
Merged from MOODLE_18_STABLE
2009-06-30 23:32:42 +00:00
wildgirl 6a1f28e57b database help file: MDL-14132 note re. using with auto-linking filter 2009-06-30 09:26:58 +00:00
moodlerobot 7e3bd15bc8 Updated the 19 build version to 20090630 2009-06-30 00:39:30 +00:00
moodlerobot 3e41567353 Updated the 19 build version to 20090629 2009-06-29 00:39:29 +00:00
moodlerobot ac556e3797 Updated the 19 build version to 20090628 2009-06-28 00:39:09 +00:00
moodlerobot c27d3c82d8 Updated the 19 build version to 20090627 2009-06-27 00:39:17 +00:00
ptrkmkl cffccd03e4 MDL-19547: Added CSS selector for .tag_cloud .s0 to styles_fonts.css 2009-06-26 18:10:48 +00:00
ptrkmkl 29903b3c3f MDL-19697 removed float from sideblock command links 2009-06-26 03:02:13 +00:00
moodlerobot 9827731219 Updated the 19 build version to 20090626 2009-06-26 00:40:48 +00:00
moodlerobot af1bf994ec Automatic installer.php lang files by installer_builder (20090626) 2009-06-26 00:34:07 +00:00
moodlerobot 453b4cc48a Updated the 19 build version to 20090625 2009-06-25 00:40:23 +00:00
moodlerobot d2b7b16b46 Updated the 19 build version to 20090624 2009-06-24 00:40:06 +00:00
nicolasconnault 26b85b5008 MDL-19596 Added browser check and refactored fixed student column check into its own method. 2009-06-24 00:20:39 +00:00
moodlerobot 8e641dd622 Updated the 19 build version to 20090623 2009-06-23 00:40:45 +00:00
nicolasconnault 815a6f0eeb MDL-19583 Showing outcomes in user report if enabled at site level 2009-06-23 00:37:22 +00:00
stronk7 f39b778d66 Commit new ur_utf8 lang installer file to HEAD. Automatically generated. Backported from HEAD 2009-06-22 17:57:29 +00:00
stronk7 97b04370db file installer.php was added on branch MOODLE_19_STABLE on 2009-06-22 17:57:29 +0000 2009-06-22 17:55:40 +00:00
stronk7 f50bd3e783 MDL-19452 Fix oracle/mssql drivers behaviour when using magic_quotes_sybase leading to wrongly escaped contents. Many thanks to Sam Moffatt! 2009-06-22 17:25:38 +00:00
sam_marshall dc47097ac8 MDL-19598: Error in logic that should hide 'skip link' when block doesn't have title 2009-06-22 17:08:41 +00:00
stronk7 5c16582936 MDL-18391 Now dmllib tests run... and pass!! both under MSSQL and Oracle 2009-06-22 17:06:04 +00:00
stronk7 51f5316ac1 MDL-19452 add some (8) tests to check backslashes and quotes are properly handled 2009-06-22 16:49:09 +00:00
moodlerobot 42a6a49bd6 Updated the 19 build version to 20090622 2009-06-22 00:38:09 +00:00
moodlerobot e2eef31dbd Automatic installer.php lang files by installer_builder (20090622) 2009-06-22 00:31:48 +00:00
iarenaza 1ce6d0ec1f subnet address: MDL-19509 Fix code and unit tests to comply with RFC4632 (prefix notations and behaviour)
Backported some code from HEAD to do it.
2009-06-21 23:35:10 +00:00
moodlerobot f70996764e Updated the 19 build version to 20090621 2009-06-21 00:39:58 +00:00
arborrow 373ee66017 MDL-19950 - adding question format (qformat_) language plugin type 2009-06-20 23:33:38 +00:00
moodlerobot e9465902bb Updated the 19 build version to 20090620 2009-06-20 00:40:34 +00:00
moodlerobot 282bdb24b4 Automatic installer.php lang files by installer_builder (20090620) 2009-06-20 00:34:03 +00:00
moodlerobot 75faea4326 Updated the 19 build version to 20090619 2009-06-19 00:40:34 +00:00
iarenaza 656ff52256 subnet address: MDL-19509 make subnet matching work with 0.0.0.0/0
Merged from MOODLE_18_STABLE
2009-06-18 22:23:25 +00:00
moodlerobot 7d8b34d478 Updated the 19 build version to 20090618 2009-06-18 00:41:07 +00:00
moodlerobot 51cd8f8ca5 Updated the 19 build version to 20090617 2009-06-17 00:40:33 +00:00
jerome 3f34186fec administration MDL-19525 remove global $userfields usage from uploadpicture_form class 2009-06-16 09:07:57 +00:00
moodlerobot 88b8207d9e Updated the 19 build version to 20090616 2009-06-16 00:41:36 +00:00
stronk7 0990ae9330 MDL-19460 wiki - disable by default undocumented interwiki links. Can be ebabled with $CFG->wiki_allow_interwiki = true; 2009-06-15 15:09:28 +00:00
poltawski 46e6b10569 filters/multimedia MDL-19504 - Fullscreen button didn't work 2009-06-15 11:19:22 +00:00
fmarier a4e6bba980 MDL-2794 testweblib: adapt the unit tests to the output of new html2text library 2009-06-15 05:56:00 +00:00
fmarier c6d3480f5d MDL-2794: fix html2text handling of non-ASCII characters 2009-06-15 05:38:59 +00:00
moodlerobot 1952f448c5 Updated the 19 build version to 20090615 2009-06-15 00:40:14 +00:00
moodlerobot 74b57ece6c Updated the 19 build version to 20090614 2009-06-14 00:40:33 +00:00
skodak 3c36dff587 MDL-19416 fixed critical PHP 5.3 compatibility issue 2009-06-13 17:24:40 +00:00
moodlerobot 3c2c558e23 Updated the 19 build version to 20090613 2009-06-13 00:40:26 +00:00
diml 622e5c7d9c MDL-19477 - Issues on check_text access controllers 2009-06-12 16:17:57 +00:00
moodlerobot ffb76c3545 Updated the 19 build version to 20090612 2009-06-12 00:40:10 +00:00
moodlerobot 0176d8cbaa Automatic installer.php lang files by installer_builder (20090612) 2009-06-12 00:33:23 +00:00
moodlerobot 86ff0b039d Updated the 19 build version to 20090611 2009-06-11 00:40:25 +00:00
samhemelryk a7fa132804 cssclasses MDL-17525 Added next and previous classes to quiz pagination links 2009-06-10 08:35:15 +00:00
fmarier 49a9771cf5 MDL-19078 course search: also look in idnumber and shortname fields 2009-06-10 05:49:56 +00:00
moodlerobot 0fbffac83f Updated the 19 build version to 20090610 2009-06-10 00:39:28 +00:00
samhemelryk aa9c8b7f8e quizheader MDL-18896 Coding style guide change 2009-06-09 08:23:33 +00:00
samhemelryk 593aa35503 quizheader MDL-18896 Hides quiz closes and feedback if no quizzes use them
Note: Feedback will be shown if there are any possible feedbacks that may one day be used
2009-06-09 08:19:22 +00:00
samhemelryk 936369ef5f breadcrumb MDL-14133 One function missed during fix, got it this time 2009-06-09 06:29:56 +00:00
samhemelryk a9fcd45d83 resource MDL-18691 Implemented resource_get_name in one more place for dropdowns 2009-06-09 05:12:02 +00:00
jonathanharker b5ebbaa5bf MDL-12561: Regression fix: banish insecure items warning in IE7 in HTTPS sites.
blank.html now loaded with a https: URL in sites/pages using SSL.


Author: Jonathan Harker <jonathan@catalyst.net.nz>
2009-06-09 04:58:38 +00:00
moodlerobot f9fad8717d Updated the 19 build version to 20090609 2009-06-09 00:39:33 +00:00
moodlerobot 56e0fe9da5 Automatic installer.php lang files by installer_builder (20090609) 2009-06-09 00:33:15 +00:00
sam_marshall 17f822bd40 MDL-19428: mform - Fixed the 'includenograde' option in modgrade type 2009-06-08 12:42:01 +00:00
fmarier b5840c4c7d MDL-19222 revert diskfree check 2009-06-08 01:16:15 +00:00
moodlerobot ea4c8536a4 Updated the 19 build version to 20090608 2009-06-08 00:40:59 +00:00
moodlerobot a9ca21c97c Updated the 19 build version to 20090607 2009-06-07 00:39:18 +00:00
moodlerobot e0645492c5 Updated the 19 build version to 20090606 2009-06-06 00:38:33 +00:00
stronk7 f1bf386c43 MDL-19403 glossary settings - add support to pixpath. Credit goes to Red Morris 2009-06-05 23:54:17 +00:00
samhemelryk f433674a58 grader_report MDL-19007 Resolved alignment issue - Thanks Neil for the patch 2009-06-05 09:34:31 +00:00
tjhunt dbbb455677 quiz editing: MDL-19199 since Moodle 1.9 DB can only store integer question max grades, we should be cleaning input with PARAM_INT! 2009-06-05 09:18:35 +00:00
tjhunt cb06574d5b question bank: MDL-18822 Highlight the last question you edited in the list
Helpful if you need to edit a lot of questions - saves you from losing your place.
Idea and patch by Oleg Sychev.
2009-06-05 08:30:35 +00:00
tjhunt a8c9711106 quiz reports: MDL-19205 Improved tooltips on individual question grades. 2009-06-05 06:54:34 +00:00
moodlerobot 601812d71e Updated the 19 build version to 20090605 2009-06-05 00:38:55 +00:00
iarenaza aab2bf6809 ntlmsso login hook: MDL-18596 We need to call httpsrequired() before using httpswwwroot 2009-06-04 22:22:37 +00:00
stronk7 a41ae1f4c7 MDL-17327 data module - improve adv. search by avoiding all the extra joins when getting max number of records 2009-06-04 09:53:20 +00:00
tjhunt 56c978bf95 grader preport: XHTML strict 2009-06-04 05:19:43 +00:00
moodlerobot 004c7f7b3f Updated the 19 build version to 20090604 2009-06-04 00:40:09 +00:00
skodak d54f175dbb MDL-18976 simplexml ext now marked as required, credit goes to Dan Poltawski; backported from HEAD 2009-06-03 21:19:05 +00:00
skodak 64a8d691e3 MDL-18293 fixing missing error string 2009-06-03 19:59:16 +00:00
skodak 6a981ddfd6 MDL-19388 removing mysql bypass from 1.8-2.0 - we require UTF8, no bypass possible any more 2009-06-03 16:59:47 +00:00
skodak dfa9ca5415 MDL-19388 removing mysql bypass from 1.8-2.0 - we require UTF8, no bypass possible any more 2009-06-03 16:56:34 +00:00
iarenaza 945b367213 Password expired change url: MDL-18719 If auth plugin doesn't provide a url, use the standard one.
Merged from MOODLE_18_STABLE
2009-06-03 14:22:19 +00:00
skodak 5e6aee4443 MDL-19364 Create new category in tree doesn't check for advanced grade_item fields, thanks Daniel Neis 2009-06-03 08:56:40 +00:00
skodak 0a9a9d16c0 MDL-19378 fixed incorrect weight in category form 2009-06-03 08:52:30 +00:00
moodlerobot 03c4d102a3 Updated the 19 build version to 20090603 2009-06-03 00:39:34 +00:00
mjollnir_ e2a1ed12de MDL-18405 formslib: split is_validated into two separate functions for more flexibility for callers to override the default behaviour. 2009-06-02 10:37:24 +00:00
dongsheng dba840d8fb "MDL-14111, revert, remove format_string from _title_html" 2009-06-02 08:17:04 +00:00
dongsheng f5dc8313df "MDL-14111, format block title by format_text" 2009-06-02 05:55:49 +00:00
tjhunt 0ecdc62ccb local lang string: MDL-13001 fix docs to reflect how it really works. 2009-06-02 04:13:11 +00:00
moodlerobot 228c683a96 Updated the 19 build version to 20090602 2009-06-02 00:38:59 +00:00
moodlerobot 23fa78eced Updated the 19 build version to 20090601 2009-06-01 00:38:50 +00:00
wildgirl 3a6c37d98e small fix: MDL-19268 thanks to Emanuel Delgado 2009-05-31 17:32:57 +00:00
moodlerobot e58b3abfeb Updated the 19 build version to 20090531 2009-05-31 00:40:13 +00:00
stronk7 82d93b8766 MDL-13204 execution time - give extra time to checker because they can run looong; backported from HEAD 2009-05-30 23:55:45 +00:00
diml 29dc93d1cd MDL-19342 - small fixes from Tatsuva Shirai + UTF-8 global straighten up 2009-05-30 22:16:28 +00:00
diml 902ec3ccc2 MDL-19342 - small fixes from Tatsuva Shirai + UTF-8 global straighten up 2009-05-30 22:13:16 +00:00
skodak 8f50e29c85 MDL-19323 added missing support for localized floats + code cleanup 2009-05-30 13:00:45 +00:00
moodlerobot 5338f3b513 Updated the 19 build version to 20090530 2009-05-30 00:38:22 +00:00
moodlerobot 65e89b9f8a Automatic installer.php lang files by installer_builder (20090530) 2009-05-30 00:31:51 +00:00
skodak 95449ba282 MDL-19323 added missing support for localized floats on category edit page + more cleanup 2009-05-29 17:30:18 +00:00
samhemelryk 0b7ccd3524 choosecoursefileorimsrepo MDL-19332 pass specified attrs to text element 2009-05-29 04:16:11 +00:00
moodlerobot 1f4465fda8 Updated the 19 build version to 20090529 2009-05-29 00:38:54 +00:00
stronk7 145fcd4eef MDL-19325 lang string - escape $ properly. Backported from HEAD. Curiosuly 1.9 was parsing it! 2009-05-28 15:24:38 +00:00
stronk7 45e317821b MDL-19229 backup regexp - some servers seem to require the /u modifier if unicode classes are used (sadly Macs don't) 2009-05-28 14:40:18 +00:00
moodlerobot 319b9fbb7b Updated the 19 build version to 20090528 2009-05-28 00:38:06 +00:00
jerome f80b5bd83d community Hub MDL-19313 fix hard coded string for registration form title 2009-05-27 03:00:05 +00:00
moodlerobot cba6700b95 Updated the 19 build version to 20090527 2009-05-27 00:37:42 +00:00
moodlerobot 2cbc7b553e Updated the 19 build version to 20090526 2009-05-26 00:39:05 +00:00
moodler fd0584f517 Bumped post release 2009-05-25 14:01:33 +00:00
poltawski 52aff1bfd3 outcomes/import MDL-19227 - stray break preventing import
thanks to Matt Oquist for the patch
2009-05-25 09:50:06 +00:00
dongsheng 42ad0d11ba "MDL-18971, fix forum unread post highlighting issue, thanks Eric straw's patch" 2009-05-25 08:11:35 +00:00
pichetp be88a9db22 MDL-19210 eliminate the generation of multiple dataitems having the same item number
merge from HEAD
2009-05-25 03:35:23 +00:00
moodlerobot 9e8e8439c7 Updated the 19 build version to 20090525 2009-05-25 00:40:50 +00:00
pichetp 3978521f56 MDL-19214 Adding category hidden element Merging from HEAD 2009-05-24 21:06:34 +00:00
gbateson 40bb96dbec fixes for XHTML strict: add <fieldset> arround hidden form fields, use "id" instead of "name" to locate forms, use HTML entities in button captions <= and => 2009-05-24 10:22:41 +00:00
skodak 7ee4f7c57b MDL-19288 fixed one more incorrect use of array_shift() which breaks array keys - thanks Colin Campbell 2009-05-24 07:23:34 +00:00
moodlerobot 3d2d030f2b Updated the 19 build version to 20090524 2009-05-24 00:39:44 +00:00
stronk7 ec3f14a25d MDL-15355 restore - proper category selection when restoring from SITE + improved defaults 2009-05-23 20:52:55 +00:00
skodak 9b1424d7f8 MDL-19288 fixed limiting cached context - array_shift() was breaking array keys 2009-05-23 20:07:12 +00:00
moodlerobot 92b7afea55 Updated the 19 build version to 20090523 2009-05-23 00:38:37 +00:00
sam_marshall 9fa231c541 MDL-19274 - Blog RSS feed should include information about tags in each post 2009-05-22 15:17:22 +00:00
stronk7 c967c71d16 MDL-19246 file manager - improved security message. Thanks Helen. 2009-05-22 15:08:08 +00:00
stronk7 4ba39c2626 MDL-19246 restore - cleanup of "restoreto" options. Some more extra uses updated. 2009-05-22 10:24:45 +00:00
stronk7 4bc822b746 MDL-19246 restore - cleanup of "restoreto" options. Prev. site restrictions out. 2009-05-22 10:21:45 +00:00
fmarier 83f9848c42 MDL-19222 lib/setup: work-around the disk_free_space call failing on very large partitions 2009-05-22 02:53:00 +00:00
fmarier cf9faae277 MDL-19266 lib/html2text: fix error in preg_replace_callback on php4 2009-05-22 02:21:34 +00:00
fmarier b60e4cc9a3 MDL-19266 lib/html2text: fix warnings in cron when using PHP4 2009-05-22 02:19:00 +00:00
fmarier 72cc2e8c11 MDL-17542 lib/html2text: update to latest upstream version (r2374)
from http://trac.roundcube.net/log/trunk/roundcubemail/program/lib/html2text.php
2009-05-22 02:07:34 +00:00
moodlerobot e9e9c9e143 Updated the 19 build version to 20090522 2009-05-22 00:40:39 +00:00
sam_marshall 77464d6be4 MDL-18051: Fixed errors in evalmath when using grade expressions that begin with bracket 2009-05-21 11:54:59 +00:00
jonathanharker 369c4ab13d MDL-12561 Fix IE6 "insecure items" warning in SSL sites using htmlarea
The HTMLArea editor uses the about:blank URL for blank pages, which
IE6 erroneously considers insecure. This commit replaces about:blank
with lib/editor/htmlarea/blank.html instead.


Author: Jonathan Harker <jonathan@catalyst.net.nz>
2009-05-21 02:28:33 +00:00
jonathanharker 3e16e2fd1d file blank.html was added on branch MOODLE_19_STABLE on 2009-05-21 02:28:33 +0000 2009-05-21 01:59:00 +00:00
moodlerobot 73306a9b52 Updated the 19 build version to 20090521 2009-05-21 00:40:39 +00:00
moodlerobot 75beaae841 Automatic installer.php lang files by installer_builder (20090521) 2009-05-21 00:33:39 +00:00
moodlerobot a0a125af85 Updated the 19 build version to 20090520 2009-05-20 00:39:48 +00:00
stronk7 65f3fe2b8c MDL-19163 restore - avoid some notices. 2009-05-19 18:45:16 +00:00
stronk7 9bc66d2797 MDL-19163 restore - 2 new strings to warn about restore over SITEID 2009-05-19 18:36:33 +00:00
stronk7 6f8c094cf7 MDL-19163 restore - warn if restoring over SITEID course 2009-05-19 18:34:27 +00:00
stronk7 9604cd3be1 MDL-19163 - Fixed problem when cancreatecourse users were restoring to sites with only 1 course 2009-05-19 10:31:24 +00:00
moodlerobot e7cda6bee1 Updated the 19 build version to 20090519 2009-05-19 00:39:52 +00:00
fmarier 9ac7d1f1c9 MDL-19222 add a check and error message when initialising file sessions in case there is no free space on the partition 2009-05-18 05:25:32 +00:00
peterbulmer fc78375323 MDL19219 mnet, mitigate arrkey loss in transit
When usernames are numeric, they are lost in mnet transit when used as
keys in the array result of course_enrolments(). As the username is not
sent with the enrolment details, it was not previously recoverable.
This patch adds the information to the enrolment details,
(enrol/mnet/enrol.php), and adds support for recovering the username if
it was numeric (and hence lost) (admin/mnet/enr_course_enrol.php)
2009-05-18 02:28:06 +00:00
moodlerobot 93dc135075 Updated the 19 build version to 20090518 2009-05-18 00:40:55 +00:00
moodlerobot 923c0f5342 Updated the 19 build version to 20090517 2009-05-17 00:41:27 +00:00
moodlerobot 16a5f6929a Automatic installer.php lang files by installer_builder (20090517) 2009-05-17 00:34:23 +00:00
moodlerobot 866a718532 Updated the 19 build version to 20090516 2009-05-16 00:38:56 +00:00
skodak 3f1f634826 MDL-19194 fixed regression - recursive cretion of dirs on win32 works again 2009-05-15 07:22:23 +00:00
fmarier 386f08f476 Fix typo 2009-05-15 03:36:44 +00:00
moodlerobot 9fd87f072c Updated the 19 build version to 20090515 2009-05-15 00:39:42 +00:00
moodlerobot fe5b9f808b Automatic installer.php lang files by installer_builder (20090515) 2009-05-15 00:33:22 +00:00
fmarier 876a50f509 MDL-19179 cache superfluous queries when listing categories on front page 2009-05-14 04:03:32 +00:00
moodlerobot 71c46bf1af Updated the 19 build version to 20090514 2009-05-14 00:39:19 +00:00
moodlerobot fb28188272 Automatic installer.php lang files by installer_builder (20090514) 2009-05-14 00:33:03 +00:00
822 changed files with 37109 additions and 21072 deletions
+15 -12
View File
@@ -223,6 +223,9 @@
grade_cron();
mtrace('done.');
mtrace('Starting processing the event queue...');
events_cron();
mtrace('done.');
/// Run all core cron jobs, but not every time since they aren't too important.
/// These don't have a timer to reduce load, so we'll use a random number
@@ -350,7 +353,7 @@
p.id as prefid
FROM {$CFG->prefix}user u
JOIN {$CFG->prefix}user_preferences p ON u.id=p.userid
WHERE p.name='create_password' AND p.value=1 AND u.email !='' ");
WHERE p.name='create_password' AND p.value='1' AND u.email !='' ");
foreach ($newusers as $newuserid => $newuser) {
$newuser->emailstop = 0; // send email regardless
@@ -481,44 +484,44 @@
// run gradebook import/export/report cron
if ($gradeimports = get_list_of_plugins('grade/import')) {
foreach ($gradeimports as $gradeimport) {
foreach ($gradeimports as $gradeimport) {
if (file_exists($CFG->dirroot.'/grade/import/'.$gradeimport.'/lib.php')) {
require_once($CFG->dirroot.'/grade/import/'.$gradeimport.'/lib.php');
$cron_function = 'grade_import_'.$gradeimport.'_cron';
$cron_function = 'grade_import_'.$gradeimport.'_cron';
if (function_exists($cron_function)) {
mtrace("Processing gradebook import function $cron_function ...", '');
$cron_function;
$cron_function();
}
}
}
}
}
if ($gradeexports = get_list_of_plugins('grade/export')) {
foreach ($gradeexports as $gradeexport) {
foreach ($gradeexports as $gradeexport) {
if (file_exists($CFG->dirroot.'/grade/export/'.$gradeexport.'/lib.php')) {
require_once($CFG->dirroot.'/grade/export/'.$gradeexport.'/lib.php');
$cron_function = 'grade_export_'.$gradeexport.'_cron';
$cron_function = 'grade_export_'.$gradeexport.'_cron';
if (function_exists($cron_function)) {
mtrace("Processing gradebook export function $cron_function ...", '');
$cron_function;
$cron_function();
}
}
}
}
if ($gradereports = get_list_of_plugins('grade/report')) {
foreach ($gradereports as $gradereport) {
foreach ($gradereports as $gradereport) {
if (file_exists($CFG->dirroot.'/grade/report/'.$gradereport.'/lib.php')) {
require_once($CFG->dirroot.'/grade/report/'.$gradereport.'/lib.php');
$cron_function = 'grade_report_'.$gradereport.'_cron';
$cron_function = 'grade_report_'.$gradereport.'_cron';
if (function_exists($cron_function)) {
mtrace("Processing gradebook report function $cron_function ...", '');
$cron_function;
$cron_function();
}
}
}
}
// run any customized cronjobs, if any
// looking for functions in lib/local/cron.php
if (file_exists($CFG->dirroot.'/local/cron.php')) {
+13 -6
View File
@@ -80,7 +80,6 @@
<FEEDBACK>
<ON_ERROR message="mysql416required" />
</FEEDBACK>
<BYPASS function="bypass_mysql416_reqs" message="mysql416bypassed" />
</VENDOR>
<VENDOR name="postgres" version="7.4" />
<VENDOR name="mssql" version="9.0" />
@@ -140,7 +139,6 @@
<FEEDBACK>
<ON_ERROR message="mysql416required" />
</FEEDBACK>
<BYPASS function="bypass_mysql416_reqs" message="mysql416bypassed" />
</VENDOR>
<VENDOR name="postgres" version="8.0" />
<VENDOR name="mssql" version="9.0" />
@@ -218,21 +216,20 @@
<FEEDBACK>
<ON_ERROR message="mysql416required" />
</FEEDBACK>
<BYPASS function="bypass_mysql416_reqs" message="mysql416bypassed" />
</VENDOR>
<VENDOR name="postgres" version="8.3" />
<VENDOR name="mssql" version="9.0" />
<VENDOR name="odbc_mssql" version="9.0" />
<VENDOR name="mssql_n" version="9.0" />
<VENDOR name="oracle" version="10.0" />
<VENDOR name="oracle" version="10.2" />
<VENDOR name="sqlite" version="2.0" />
</DATABASE>
<PHP version="5.2.8" level="required">
</PHP>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="optional">
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_CHECK message="iconvrecommended" />
<ON_CHECK message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="optional">
@@ -260,6 +257,11 @@
<ON_CHECK message="xmlrpcrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="soap" level="optional">
<FEEDBACK>
<ON_CHECK message="soaprecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="ctype" level="required">
<FEEDBACK>
<ON_ERROR message="ctyperequired" />
@@ -275,6 +277,11 @@
<ON_CHECK message="gdrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_CHECK message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="40M" level="required">
+5
View File
@@ -635,6 +635,11 @@
}
if (empty($CFG->passwordsaltmain)) {
$path = $CFG->docroot.'/'.str_replace('_utf8', '', current_language()).'/report/security/report_security_check_passwordsaltmain';
print_box(get_string('upgrade197notice', 'admin')."\n".get_string('upgrade197salt', 'admin', $path));
}
if (defined('WARN_DISPLAY_ERRORS_ENABLED')) {
print_box(get_string('displayerrorswarning', 'admin'), 'generalbox adminwarning');
}
+4
View File
@@ -1013,6 +1013,10 @@ function lang_fix_value_before_save($value='') {
if (ini_get_bool('magic_quotes_sybase')) { // Unescape escaped sybase quotes
$value = str_replace("''", "'", $value);
}
// escape all embedded variables
$value = str_replace('$', '\$', $value); // Add slashes for $
// unescape placeholders: only $a and $a->something are allowed. All other $variables are left escaped
$value = preg_replace('/\\\\\$a($|[^_a-zA-Z0-9\-]|\->[a-zA-Z0-9_]+)/', '$a\\1', $value);
$value = str_replace("'", "\\'", $value); // Add slashes for '
$value = str_replace('"', "\\\"", $value); // Add slashes for "
$value = str_replace("%","%%",$value); // Escape % characters
+2 -2
View File
@@ -64,7 +64,7 @@ function mnet_get_functions($type, $parentname) {
foreach($rpcrecords as $rpc) {
if (!array_key_exists($rpc->function_name, $methodServiceArray)) {
$rpc->enabled = 0;
update_record('mnet_rpc', $rpc);
update_record('mnet_rpc', addslashes_recursive($rpc));
}
}
}
@@ -85,7 +85,7 @@ function mnet_get_functions($type, $parentname) {
} else {
array_unshift($profile, $details['returns']);
}
$dataobject->profile = serialize($profile);
$dataobject->profile = addslashes(serialize($profile));
$dataobject->help = addslashes($details['description']);
} else {
$dataobject->profile = serialize(array(array('type' => 'void', 'description' => 'No return value')));
+2
View File
@@ -31,6 +31,8 @@
redirect('index.php', get_string('postrequired','mnet') ,7);
}
require_sesskey();
if ('verify' == $step) {
$mnet_peer = new mnet_peer();
$mnet_peer->set_id($hostid);
+14 -2
View File
@@ -85,9 +85,21 @@
$mnet_request->set_method('enrol/mnet/enrol.php/course_enrolments');
$mnet_request->add_param($course->remoteid, 'int');
$mnet_request->send($mnet_peer);
$all_enrolled_users = $mnet_request->response;
$raw_all_enrolled_users = $mnet_request->response;
unset($mnet_request);
$all_enrolled_users = array();
if (!empty($raw_all_enrolled_users)) {
// Try to repair keying of remote users array, numeric usernames get lost in the fracas
foreach ($raw_all_enrolled_users as $username => $userdetails) {
if (empty($userdetails['username']) || !is_numeric($username)) {
//Not able to repair, or no need to repair
$all_enrolled_users[$username] = $userdetails;
} else {
$all_enrolled_users[$userdetails['username']] = $userdetails;
}
}
}
$select = '';
$all_enrolled_usernames = '';
+2 -16
View File
@@ -1,23 +1,9 @@
<?php
$logurl = $CFG->wwwroot.
'/course/report/log/index.php?chooselog=1&amp;showusers=1&amp;showcourses=1&amp;host_course='.$mnet_peer->id.
'%2F1&amp;user='.'0'.
'&amp;date=0'.
'&amp;modid=&amp;modaction=0&amp;logformat=showashtml';
admin_externalpage_print_header();
if (isset($mnet_peer->id) && $mnet_peer->id > 0) {
$tabs[] = new tabobject('mnetdetails', 'peers.php?step=update&amp;hostid='.$mnet_peer->id, $strmnetedithost, $strmnetedithost, false);
$tabs[] = new tabobject('mnetservices', 'mnet_services.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetservices, $strmnetservices, false);
$tabs[] = new tabobject('mnetthemes', 'mnet_themes.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetthemes, $strmnetthemes, false);
if ($mnet_peer->application->name == 'moodle') {
$tabs[] = new tabobject('mnetlog', $logurl, $strmnetlog, $strmnetlog, false);
}
} else {
$tabs[] = new tabobject('mnetdetails', '#', $strmnetedithost, $strmnetedithost, false);
}
print_tabs(array($tabs), 'mnetdetails');
$currenttab = 'mnetdetails';
require_once($CFG->dirroot .'/admin/mnet/tabs.php');
print_simple_box_start("center", "");
?>
+3 -5
View File
@@ -1,10 +1,8 @@
<?php
admin_externalpage_print_header();
$tabs[] = new tabobject('mnetdetails', 'peers.php?step=update&amp;hostid='.$mnet_peer->id, $strmnetedithost, $strmnetedithost, false);
$tabs[] = new tabobject('mnetservices', 'mnet_services.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetservices, $strmnetservices, false);
$tabs[] = new tabobject('mnetthemes', 'mnet_themes.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetthemes, $strmnetthemes, false);
print_tabs(array($tabs), 'mnetdetails');
$currenttab = 'mnetdetails';
require_once($CFG->dirroot .'/admin/mnet/tabs.php');
print_simple_box_start("center", "");
?>
@@ -14,7 +12,7 @@ print_simple_box_start("center", "");
<td valign="top"><?php echo $mnet_peer->name; ?></td>
</tr>
<tr>
<td align="right" valign="top" colspan="2"><?php print_string('allhosts_no_options'); ?>:</td>
<td align="right" valign="top" colspan="2"><?php print_string('allhosts_no_options','mnet'); ?></td>
</tr>
</table>
<?php
+5 -14
View File
@@ -1,19 +1,9 @@
<?php
admin_externalpage_print_header();
$logurl = $CFG->wwwroot.
'/course/report/log/index.php?chooselog=1&amp;showusers=1&amp;showcourses=1&amp;host_course='.$mnet_peer->id.
'%2F1&amp;user='.'0'.
'&amp;date=0'.
'&amp;modid=&amp;modaction=0&amp;logformat=showashtml';
$currenttab = 'mnetservices';
require_once($CFG->dirroot .'/admin/mnet/tabs.php');
$tabs[] = new tabobject('mnetdetails', 'peers.php?step=update&amp;hostid='.$mnet_peer->id, $strmnetedithost, $strmnetedithost, false);
$tabs[] = new tabobject('mnetservices', 'mnet_services.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetservices, $strmnetservices, false);
$tabs[] = new tabobject('mnetthemes', 'mnet_themes.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetthemes, $strmnetthemes, false);
if ($mnet_peer->id != $CFG->mnet_all_hosts_id && $mnet_peer->application->name == 'moodle') {
$tabs[] = new tabobject('mnetlog', $logurl, $strmnetlog, $strmnetlog, false);
}
print_tabs(array($tabs), 'mnetservices');
print_simple_box_start("center", "");
?>
@@ -27,11 +17,12 @@ print_simple_box_start("center", "");
<?php
foreach($myservices as $name => $versions) {
$version = current($versions);
$langmodule = ($version['parent_type'] == 'mod' ? '' : ($version['parent_type'] . '_')) . $version['parent'];
?>
<tr>
<td align="left" valign="top" colspan="2">
<h3><?php echo get_string($name.'_name', $version['parent_type'].'_'.$version['parent'] , $mnet_peer->name); ?></h3>
<?php echo get_string($name.'_description', $version['parent_type'].'_'.$version['parent'], $mnet_peer->name); ?>
<h3><?php echo get_string($name.'_name', $langmodule , $mnet_peer->name); ?></h3>
<?php echo get_string($name.'_description', $langmodule, $mnet_peer->name); ?>
<?php
$breakstring = '';
foreach($versions as $version){
+11 -7
View File
@@ -24,6 +24,10 @@
// force Go ahead with something we've been warned is strange
$step = optional_param('step', NULL, PARAM_ALPHA);
$hostid = optional_param('hostid', NULL, PARAM_INT);
$publishes = optional_param('publish', null, PARAM_BOOL); // optional_param cleans arrays too
$subscribes = optional_param('subscribe', null, PARAM_BOOL); // optional_param cleans arrays too
$exists = optional_param('exists', null, PARAM_BOOL); // optional_param cleans arrays too
$nocertstring = '';
$nocertmatch = '';
$badcert = '';
@@ -43,21 +47,21 @@
if (($form = data_submitted()) && confirm_sesskey()) {
$mnet_peer->set_id($hostid);
$treevals = array();
foreach($_POST['exists'] as $key => $value) {
$host2service = get_record('mnet_host2service', 'hostid', $_POST['hostid'], 'serviceid', $key);
$publish = (isset($_POST['publish'][$key]) && $_POST['publish'][$key] == 'on')? 1 : 0;
$subscribe = (isset($_POST['subscribe'][$key]) && $_POST['subscribe'][$key] == 'on')? 1 : 0;
foreach($exists as $key => $value) {
$host2service = get_record('mnet_host2service', 'hostid', $hostid, 'serviceid', $key);
$publish = array_key_exists($key, $publishes) ? $publishes[$key] : 0;
$subscribe = array_key_exists($key, $subscribes) ? $subscribes[$key] : 0;
if ($publish != 1 && $subscribe != 1) {
if (false == $host2service) {
// We don't have or need a record - do nothing!
} else {
// We don't need the record - delete it
delete_records('mnet_host2service', 'hostid', $_POST['hostid'], 'serviceid', $key);
delete_records('mnet_host2service', 'hostid', $hostid, 'serviceid', $key);
}
} elseif (false == $host2service && ($publish == 1 || $subscribe == 1)) {
$host2service = new stdClass();
$host2service->hostid = $_POST['hostid'];
$host2service->hostid = $hostid;
$host2service->serviceid = $key;
$host2service->publish = $publish;
@@ -81,7 +85,7 @@
$id_list .= ', '.$CFG->mnet_all_hosts_id;
}
$concat = sql_concat('COALESCE(h2s.id,0) ', ' \'-\' ', ' svc.id');
$concat = sql_concat('COALESCE(h2s.id,0) ', ' \'-\' ', ' svc.id', '\'-\'', 'r.parent_type', '\'-\'', 'r.parent');
$query = "
SELECT DISTINCT
+2 -13
View File
@@ -3,19 +3,8 @@ admin_externalpage_print_header();
print_heading(get_string('themes'));
$original_theme = fullclone($THEME);
$logurl = $CFG->wwwroot.
'/course/report/log/index.php?chooselog=1&amp;showusers=1&amp;showcourses=1&amp;host_course='.$mnet_peer->id.
'%2F1&amp;user='.'0'.
'&amp;date=0'.
'&amp;modid=&amp;modaction=0&amp;logformat=showashtml';
$tabs[] = new tabobject('mnetdetails', 'peers.php?step=update&amp;hostid='.$mnet_peer->id, $strmnetedithost, $strmnetedithost, false);
$tabs[] = new tabobject('mnetservices', 'mnet_services.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetservices, $strmnetservices, false);
$tabs[] = new tabobject('mnetthemes', 'mnet_themes.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetthemes, $strmnetthemes, false);
if ($mnet_peer->id != $CFG->mnet_all_hosts_id) {
$tabs[] = new tabobject('mnetlog', $logurl, $strmnetlog, $strmnetlog, false);
}
print_tabs(array($tabs), 'mnetthemes');
$currenttab = 'mnetthemes';
require_once($CFG->dirroot .'/admin/mnet/tabs.php');
$themes = get_list_of_plugins("theme");
$sesskey = !empty($USER->id) ? $USER->sesskey : '';
+1
View File
@@ -55,6 +55,7 @@ if (empty($CFG->mnet_dispatcher_mode) || $CFG->mnet_dispatcher_mode !== 'strict'
<div>
<input type="hidden" name="hostid" value="<?php echo $host->id; ?>" />
<input type="hidden" name="step" value="verify" />
<input type="hidden" name="sesskey" value="<?php echo sesskey(); ?>" />
<input type="submit" name="submit" value="<?php print_string('delete'); ?>"/>
</div>
</form>
+27
View File
@@ -0,0 +1,27 @@
<?php
/**
* Handles tabs for the mnet pages.
* We assume that $currenttab is defined
*
*/
if (!defined('MOODLE_INTERNAL')) {
die('Direct access to this script is forbidden.'); // It must be included from a Moodle page
}
$logurl = $CFG->wwwroot.
'/course/report/log/index.php?chooselog=1&amp;showusers=1&amp;showcourses=1&amp;host_course='.$mnet_peer->id.
'%2F1&amp;user='.'0'.
'&amp;date=0'.
'&amp;modid=&amp;modaction=0&amp;logformat=showashtml';
$tabs = array();
if (isset($mnet_peer->id) && $mnet_peer->id > 0) {
$tabs[] = new tabobject('mnetdetails', 'peers.php?step=update&amp;hostid='.$mnet_peer->id, $strmnetedithost, $strmnetedithost, false);
$tabs[] = new tabobject('mnetservices', 'mnet_services.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetservices, $strmnetservices, false);
$tabs[] = new tabobject('mnetthemes', 'mnet_themes.php?step=list&amp;hostid='.$mnet_peer->id, $strmnetthemes, $strmnetthemes, false);
if ($mnet_peer->application->name == 'moodle' && $mnet_peer->id != $CFG->mnet_all_hosts_id) {
$tabs[] = new tabobject('mnetlog', $logurl, $strmnetlog, $strmnetlog, false);
}
} else {
$tabs[] = new tabobject('mnetdetails', '#', $strmnetedithost, $strmnetedithost, false);
}
print_tabs(array($tabs), $currenttab);
+1 -1
View File
@@ -72,7 +72,7 @@ while(!feof($fd)) {
$function($modargs,$body);
fclose($handle);
fclose($fd);
+1 -1
View File
@@ -42,7 +42,7 @@
echo "<form id=\"mform1\" class=\"mform\" action=\"http://moodle.org/register/\" method=\"post\">\n";
echo '<fieldset id="registration">';
echo '<legend>Registration Information</legend>';
echo '<legend>'.get_string("registrationinfotitle").'</legend>';
echo "<!-- The following hidden variables are to help prevent fake entries being sent. -->\n";
echo "<!-- Together they form a key. If any of these change between updates then the entry -->\n";
+5
View File
@@ -5,6 +5,11 @@ require_once('../config.php');
require_once($CFG->dirroot.'/course/lib.php');
require_once($CFG->libdir.'/adminlib.php');
// workaround for problems with compression
if (ini_get('zlib.output_compression')) {
@ini_set('zlib.output_compression', 'Off');
}
admin_externalpage_setup('replace');
$search = optional_param('search', '', PARAM_RAW);
+1 -1
View File
@@ -38,7 +38,7 @@
$strcourse = get_string("course");
$strtimetaken = get_string("timetaken","quiz");
$strstatus = get_string("status");
$strnext = get_string("next");
$strnext = get_string("backupnext");
/// Decide when to show last execution logs or detailed logs
/// Lastlog view
+142
View File
@@ -53,11 +53,13 @@ function report_security_get_issue_list() {
'report_security_check_openprofiles',
'report_security_check_google',
'report_security_check_passwordpolicy',
'report_security_check_passwordsaltmain',
'report_security_check_emailchangeconfirmation',
'report_security_check_cookiesecure',
'report_security_check_configrw',
'report_security_check_riskxss',
'report_security_check_riskadmin',
'report_security_check_riskbackup',
'report_security_check_defaultuserrole',
'report_security_check_guestrole',
'report_security_check_frontpagerole',
@@ -485,6 +487,37 @@ function report_security_check_configrw($detailed=false) {
return $result;
}
function report_security_check_passwordsaltmain($detailed=false) {
global $CFG;
$result = new object();
$result->issue = 'report_security_check_passwordsaltmain';
$result->name = get_string('check_passwordsaltmain_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
if (empty($CFG->passwordsaltmain)) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_passwordsaltmain_warning', 'report_security');
} else if ($CFG->passwordsaltmain === 'some long random string here with lots of characters'
|| trim($CFG->passwordsaltmain) === '' || preg_match('/^([a-z0-9]{0,10})$/i', $CFG->passwordsaltmain)) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_passwordsaltmain_weak', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_passwordsaltmain_ok', 'report_security');
}
if ($detailed) {
$docspath = $CFG->docroot.'/'.str_replace('_utf8', '', current_language()).'/report/security/report_security_check_passwordsaltmain';
$result->details = get_string('check_passwordsaltmain_details', 'report_security', $docspath);
}
return $result;
}
/**
* Lists all users with XSS risk, it would be great to combine this with risk trusts in user table,
* unfortunately nobody implemented user trust UI yet :-(
@@ -1060,3 +1093,112 @@ function report_security_check_riskadmin($detailed=false) {
return $result;
}
/**
* Lists all roles that have the ability to backup user data, as well as users
* @param bool $detailed
* @return object result
*/
function report_security_check_riskbackup($detailed=false) {
global $CFG;
$result = new object();
$result->issue = 'report_security_check_riskbackup';
$result->name = get_string('check_riskbackup_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
$syscontext = get_context_instance(CONTEXT_SYSTEM);
$systemroles = get_records_sql(
"SELECT DISTINCT r.*
FROM {$CFG->prefix}role r
JOIN {$CFG->prefix}role_capabilities rc ON rc.roleid = r.id
WHERE rc.capability = 'moodle/backup:userinfo' AND rc.contextid = $syscontext->id AND rc.permission = ".CAP_ALLOW."");
$overriddenroles = get_records_sql(
"SELECT DISTINCT r.*, rc.contextid
FROM {$CFG->prefix}role r
JOIN {$CFG->prefix}role_capabilities rc ON rc.roleid = r.id
WHERE rc.capability = 'moodle/backup:userinfo' AND rc.contextid <> $syscontext->id AND rc.permission = ".CAP_ALLOW."");
// list of users that are able to backup personal info
// note: "sc" is context where is role assigned,
// "c" is context where is role overriden or system context if in role definition
$sqluserinfo = "
FROM (SELECT rcx.*
FROM {$CFG->prefix}role_capabilities rcx
WHERE rcx.permission = ".CAP_ALLOW." AND rcx.capability = 'moodle/backup:userinfo') rc,
{$CFG->prefix}context c,
{$CFG->prefix}context sc,
{$CFG->prefix}role_assignments ra,
{$CFG->prefix}user u
WHERE c.id = rc.contextid
AND (sc.path = c.path OR sc.path LIKE ".sql_concat('c.path', "'/%'")." OR c.path LIKE ".sql_concat('sc.path', "'/%'").")
AND u.id = ra.userid AND u.deleted = 0
AND ra.contextid = sc.id AND ra.roleid = rc.roleid
AND sc.contextlevel <= ".CONTEXT_COURSE." AND c.contextlevel <= ".CONTEXT_COURSE."";
$usercount = count_records_sql("SELECT COUNT('x') FROM (SELECT DISTINCT u.id $sqluserinfo) userinfo");
$systemrolecount = empty($systemroles) ? 0 : count($systemroles);
$overriddenrolecount = empty($overriddenroles) ? 0 : count($overriddenroles);
$result->status = REPORT_SECURITY_WARNING; // there is always at least one admin
$a = (object)array('rolecount'=>$systemrolecount,'overridecount'=>$overriddenrolecount,'usercount'=>$usercount);
$result->info = get_string('check_riskbackup_warning', 'report_security', $a);
if ($detailed) {
$result->details = ''; // Will be added to later
// Make a list of roles
if ($systemroles) {
$links = array();
foreach ($systemroles as $role) {
$role->url = "$CFG->wwwroot/$CFG->admin/roles/manage.php?action=edit&amp;roleid=$role->id";
$links[] = '<li>'.get_string('check_riskbackup_editrole', 'report_security', $role).'</li>';
}
$links = '<ul>'.implode($links).'</ul>';
$result->details .= get_string('check_riskbackup_details_systemroles', 'report_security', $links);
}
// Make a list of overrides to roles
$rolelinks2 = array();
if ($overriddenroles) {
$links = array();
foreach ($overriddenroles as $role) {
$context = get_context_instance_by_id($role->contextid);
if ($context->contextlevel == CONTEXT_COURSE) {
$role->name = role_get_name($role, $context);
}
$role->contextname = print_context_name($context);
$role->url = "$CFG->wwwroot/$CFG->admin/roles/override.php?contextid=$role->contextid&amp;roleid=$role->id";
$links[] = '<li>'.get_string('check_riskbackup_editoverride', 'report_security', $role).'</li>';
}
$links = '<ul>'.implode($links).'</ul>';
$result->details .= get_string('check_riskbackup_details_overriddenroles', 'report_security', $links);
}
// Get a list of affected users as well
$rs = get_recordset_sql("SELECT DISTINCT u.id, u.firstname, u.lastname, u.picture, u.imagealt, u.email, ra.contextid, ra.roleid
$sqluserinfo ORDER BY u.lastname, u.firstname");
$users = array();
while ($user = rs_fetch_next_record($rs)) {
$context = get_context_instance_by_id($user->contextid);
$url = "$CFG->wwwroot/$CFG->admin/roles/assign.php?contextid=$user->contextid&amp;roleid=$user->roleid";
$a = (object)array('fullname'=>fullname($user), 'url'=>$url, 'email'=>$user->email,
'contextname'=>print_context_name($context));
$users[] = '<li>'.get_string('check_riskbackup_unassign', 'report_security', $a).'</li>';
}
rs_close($rs);
if (!empty($users)) {
$users = '<ul>'.implode($users).'</ul>';
$result->details .= get_string('check_riskbackup_details_users', 'report_security', $users);
}
}
return $result;
}
+1 -1
View File
@@ -147,7 +147,7 @@ echo '</div>';
function search_spammers($keywords) {
global $CFG, $USER, $DB;
global $CFG, $USER;
if (!is_array($keywords)) {
$keywords = array($keywords); // Make it into an array
+3 -3
View File
@@ -22,13 +22,13 @@ require_once($CFG->libdir . '/simpletestlib/test_case.php');
* them into a group test.
* @package SimpleTestEx
*/
class AutoGroupTest extends GroupTest {
class AutoGroupTest extends TestSuite {
var $thorough;
var $showsearch;
function AutoGroupTest($showsearch, $thorough, $test_name = null) {
$this->GroupTest($test_name);
$this->TestSuite($test_name);
$this->showsearch = $showsearch;
$this->thorough = $thorough;
}
@@ -56,7 +56,7 @@ class AutoGroupTest extends GroupTest {
}
$file_path = $path . '/' . $file;
if (is_dir($file_path)) {
if ($file != 'CVS' && !in_array($file_path, $this->ignorefolders)) {
if ($file != 'CVS' && $file != '.git' && !in_array($file_path, $this->ignorefolders)) {
$this->_recurseFolders($file_path);
}
} elseif (preg_match('/simpletest(\/|\\\\)test.*\.php$/', $file_path) ||
+3 -2
View File
@@ -21,10 +21,10 @@
$roles = get_all_roles();
if ($grant = data_submitted()) {
if ($grant = data_submitted() and confirm_sesskey()) {
foreach ($grant as $grole => $val) {
if ($grole == 'dummy') {
if ($grole == 'dummy' or !strpos($grole, '_')) {
continue;
}
@@ -81,6 +81,7 @@
print_table($table);
echo '<div class="buttons"><input type="submit" value="'.get_string('savechanges').'"/>';
echo '<input type="hidden" name="dummy" value="1" />'; // this is needed otherwise we do not know a form has been submitted
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />';
echo '</div></form>';
admin_externalpage_print_footer();
+3 -2
View File
@@ -19,10 +19,10 @@
$roles = get_all_roles();
if ($grant = data_submitted()) {
if ($grant = data_submitted() and confirm_sesskey()) {
foreach ($grant as $grole => $val) {
if ($grole == 'dummy') {
if ($grole == 'dummy' or !strpos($grole, '_')) {
continue;
}
@@ -79,6 +79,7 @@
print_table($table);
echo '<div class="buttons"><input type="submit" value="'.get_string('savechanges').'"/>';
echo '<input type="hidden" name="dummy" value="1" />'; // this is needed otherwise we do not know a form has been submitted
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />';
echo '</div></form>';
admin_externalpage_print_footer();
+1 -1
View File
@@ -325,7 +325,7 @@
if ($validroleids) {
$roleids = '('.implode(',', $validroleids).')';
$select = " SELECT u.id, u.firstname, u.lastname, u.email";
$select = " SELECT DISTINCT u.id, u.firstname, u.lastname, u.email";
$countselect = "SELECT COUNT(u.id)";
$from = " FROM {$CFG->prefix}user u
INNER JOIN {$CFG->prefix}role_assignments ra ON ra.userid = u.id
+3
View File
@@ -35,6 +35,9 @@ if ($currenttab != 'update') {
$navlinks[] = array('name' => $category->name,
'link' => "$CFG->wwwroot/course/category.php?id=$category->id",
'type' => 'misc');
$navlinks[] = array('name' => get_string("roles"),
'link' => null,
'type' => 'misc');
$navigation = build_navigation($navlinks);
print_header("$SITE->shortname: $category->name", "$SITE->fullname: $strcourses", $navigation, "", "", true);
+2
View File
@@ -16,6 +16,8 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$rqsetting->plugin = 'qtype_random';
$temp->add($rqsetting);
$temp->add(new admin_setting_configcheckbox('experimentalsplitrestore', get_string('experimentalsplitrestore', 'admin'), get_string('configexperimentalsplitrestore', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('enableimsccimport', get_string('enable_cc_import', 'imscc'), get_string('enable_cc_import_description', 'imscc'), 0));
$temp->add(new admin_setting_configcheckbox('enablesafebrowserintegration', get_string('enablesafebrowserintegration', 'admin'), get_string('configenablesafebrowserintegration', 'admin'), 0));
$ADMIN->add('misc', $temp);
+7 -5
View File
@@ -26,7 +26,7 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
2700 => get_string('numminutes', '', 45),
3600 => get_string('numminutes', '', 60))));
$temp->add(new admin_setting_configselect('fullnamedisplay', get_string('fullnamedisplay', 'admin'), get_string('configfullnamedisplay', 'admin'),
'firstname lastname', array('language' => get_string('language'),
'language', array('language' => get_string('language'),
'firstname lastname' => get_string('firstname').' + '.get_string('lastname'),
'lastname firstname' => get_string('lastname').' + '.get_string('firstname'),
'firstname' => get_string('firstname'))));
@@ -46,7 +46,7 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$temp->add(new admin_setting_configcheckbox('cronclionly', get_string('cronclionly', 'admin'), get_string('configcronclionly', 'admin'), 0));
$temp->add(new admin_setting_configpasswordunmask('cronremotepassword', get_string('cronremotepassword', 'admin'), get_string('configcronremotepassword', 'admin'), ''));
$temp->add(new admin_setting_configcheckbox('passwordpolicy', get_string('passwordpolicy', 'admin'), get_string('configpasswordpolicy', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('passwordpolicy', get_string('passwordpolicy', 'admin'), get_string('configpasswordpolicy', 'admin'), 1));
$temp->add(new admin_setting_configtext('minpasswordlength', get_string('minpasswordlength', 'admin'), get_string('configminpasswordlength', 'admin'), 8, PARAM_INT));
$temp->add(new admin_setting_configtext('minpassworddigits', get_string('minpassworddigits', 'admin'), get_string('configminpassworddigits', 'admin'), 1, PARAM_INT));
$temp->add(new admin_setting_configtext('minpasswordlower', get_string('minpasswordlower', 'admin'), get_string('configminpasswordlower', 'admin'), 1, PARAM_INT));
@@ -65,14 +65,16 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$temp->add(new admin_setting_configcheckbox('loginhttps', get_string('loginhttps', 'admin'), get_string('configloginhttps', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('cookiesecure', get_string('cookiesecure', 'admin'), get_string('configcookiesecure', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('cookiehttponly', get_string('cookiehttponly', 'admin'), get_string('configcookiehttponly', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('regenloginsession', get_string('regenloginsession', 'admin'), get_string('configregenloginsession', 'admin'), 1));
$temp->add(new admin_setting_configtext('excludeoldflashclients', get_string('excludeoldflashclients', 'admin'), get_string('configexcludeoldflashclients', 'admin'), '10.0.12', PARAM_TEXT));
$ADMIN->add('security', $temp);
// "modulesecurity" settingpage
$temp = new admin_settingpage('modulesecurity', get_string('modulesecurity', 'admin'));
$temp->add(new admin_setting_configselect('restrictmodulesfor', get_string('restrictmodulesfor', 'admin'), get_string('configrestrictmodulesfor', 'admin'), 'none', array('none' => 'No courses',
'all' => 'All courses',
'requested' => 'Requested courses')));
$temp->add(new admin_setting_configselect('restrictmodulesfor', get_string('restrictmodulesfor', 'admin'), get_string('configrestrictmodulesfor', 'admin'), 'none', array('none' => get_string('nocourses'),
'all' => get_string('fulllistofcourses'),
'requested' => get_string('requestedcourses'))));
$temp->add(new admin_setting_configcheckbox('restrictbydefault', get_string('restrictbydefault', 'admin'), get_string('configrestrictbydefault', 'admin'), 0));
if (!$options = get_records("modules")) {
$options = array();
+5 -11
View File
@@ -61,7 +61,7 @@ $overwritepicture = optional_param('overwritepicture', 0, PARAM_BOOL);
admin_externalpage_print_header();
print_heading_with_help($struploadpictures, 'uploadpictures');
$mform = new admin_uploadpicture_form();
$mform = new admin_uploadpicture_form(null, $userfields);
if ($formdata = $mform->get_data()) {
if (!array_key_exists($userfield, $userfields)) {
notify(get_string('uploadpicture_baduserfield','admin'));
@@ -191,25 +191,19 @@ function process_directory ($dir, $userfield, $overwrite, &$results) {
*/
function process_file ($file, $userfield, $overwrite) {
// Add additional checks on the filenames, as they are user
// controlled and we don't want to open any security holes.
// controlled and we don't want to open any security holes.
$path_parts = pathinfo(cleardoubleslashes($file));
$basename = $path_parts['basename'];
$extension = $path_parts['extension'];
if ($basename != clean_param($basename, PARAM_CLEANFILE)) {
// The original picture file name has invalid characters
notify(get_string('uploadpicture_invalidfilename', 'admin',
clean_param($basename, PARAM_CLEANHTML)));
return PIX_FILE_ERROR;
}
// The picture file name (without extension) must match the
// userfield attribute.
$uservalue = substr($basename, 0,
strlen($basename) -
strlen($extension) - 1);
// userfield names are safe, so don't quote them.
if (!($user = get_record('user', $userfield, addslashes($uservalue)))) {
// userfield names are safe, so don't quote them.
if (!($user = get_record('user', $userfield, addslashes($uservalue),'deleted',0))) {
$a = new Object();
$a->userfield = clean_param($userfield, PARAM_CLEANHTML);
$a->uservalue = clean_param($uservalue, PARAM_CLEANHTML);
+3 -4
View File
@@ -4,7 +4,6 @@
class admin_uploadpicture_form extends moodleform {
function definition (){
global $CFG, $USER;
global $userfields;
$mform =& $this->_form;
@@ -14,11 +13,11 @@
$mform->addElement('file', 'userpicturesfile', get_string('file'), 'size="40"');
$mform->addRule('userpicturesfile', null, 'required');
$choices = $userfields;
$choices =& $this->_customdata;
$mform->addElement('select', 'userfield', get_string('uploadpicture_userfield', 'admin'), $choices);
$mform->setType('userfield', PARAM_INT);
$choices = array( 0 => get_string('no'), 1 => get_string('yes') );
$mform->addElement('select', 'overwritepicture', get_string('uploadpicture_overwrite', 'admin'), $choices);
$mform->setType('overwritepicture', PARAM_INT);
+6 -4
View File
@@ -149,8 +149,7 @@ if ($formdata = $mform->is_cancelled()) {
$renames = 0;
$renameerrors = 0;
$usersskipped = 0;
$forcechangepassword = 0;
$weakpasswords = 0;
// caches
$ccache = array(); // course cache - do not fetch all courses here, we will not probably use them all anyway!
@@ -192,6 +191,8 @@ if ($formdata = $mform->is_cancelled()) {
$upt->track('line', $linenum);
$forcechangepassword = false;
$user = new object();
// by default, use the local mnet id (this may be changed in the file)
$user->mnethostid = $CFG->mnet_localhost_id;
@@ -204,7 +205,8 @@ if ($formdata = $mform->is_cancelled()) {
if ($value !== '') {
$user->password = hash_internal_user_password($value);
if (!empty($CFG->passwordpolicy) and !check_password_policy($value, $errmsg)) {
$forcechangepassword++;
$forcechangepassword = true;
$weakpasswords++;
}
}
} else {
@@ -707,7 +709,7 @@ if ($formdata = $mform->is_cancelled()) {
if ($usersskipped) {
echo get_string('usersskipped', 'admin').': '.$usersskipped.'<br />';
}
echo get_string('usersweakpassword', 'admin').': '.$forcechangepassword.'<br />';
echo get_string('usersweakpassword', 'admin').': '.$weakpasswords.'<br />';
echo get_string('errors', 'admin').': '.$userserrors.'</p>';
print_box_end();
+1
View File
@@ -24,6 +24,7 @@ if ($data = $action_form->get_data(false)) {
case 3: redirect($CFG->wwwroot.'/'.$CFG->admin.'/user/user_bulk_delete.php');
case 4: redirect($CFG->wwwroot.'/'.$CFG->admin.'/user/user_bulk_display.php');
case 5: redirect($CFG->wwwroot.'/'.$CFG->admin.'/user/user_bulk_download.php');
case 6: redirect($CFG->wwwroot.'/'.$CFG->admin.'/user/user_bulk_forcepasswordchange.php');
}
}
@@ -0,0 +1,70 @@
<?php //$Id$
/**
* script for bulk user force password change
*/
require_once('../../config.php');
require_once('lib.php');
require_once($CFG->libdir.'/adminlib.php');
$confirm = optional_param('confirm', 0, PARAM_BOOL);
require_login();
admin_externalpage_setup('userbulk');
require_capability('moodle/user:update', get_context_instance(CONTEXT_SYSTEM));
$return = $CFG->wwwroot.'/'.$CFG->admin.'/user/user_bulk.php';
if (empty($SESSION->bulk_users)) {
redirect($return);
}
admin_externalpage_print_header();
if ($confirm and confirm_sesskey()) {
// only force password change if user may actually change the password
$authsavailable = get_list_of_plugins('auth');
$changeable = array();
foreach($authsavailable as $authname) {
if (!$auth = get_auth_plugin($authname)) {
continue;
}
if (@$auth->is_internal() and @$auth->can_change_password()) { // plugins may not be configured yet, not nice :-(
$changeable[$authname] = true;
}
}
$parts = array_chunk($SESSION->bulk_users, 300);
foreach ($parts as $users) {
$in = implode(',', $users);
if ($rs = get_recordset_select('user', "id IN ($in)")) {
while ($user = rs_fetch_next_record($rs)) {
if (!empty($changeable[$user->auth])) {
set_user_preference('auth_forcepasswordchange', 1, $user->id);
unset($SESSION->bulk_users[$user->id]);
} else {
notify(get_string('forcepasswordchangenot', '', fullname($user, true)));
}
}
rs_close($rs);
}
}
notify(get_string('changessaved'), 'notifysuccess');
print_continue($return);
} else {
$in = implode(',', $SESSION->bulk_users);
$userlist = get_records_select_menu('user', "id IN ($in)", 'fullname', 'id,'.sql_fullname().' AS fullname', 0, MAX_BULK_USERS);
$usernames = implode(', ', $userlist);
if (count($SESSION->bulk_users) > MAX_BULK_USERS) {
$usernames .= ', ...';
}
$optionsyes = array();
$optionsyes['confirm'] = 1;
$optionsyes['sesskey'] = sesskey();
print_heading(get_string('confirmation', 'admin'));
notice_yesno(get_string('forcepasswordchangecheckfull', '', $usernames), 'user_bulk_forcepasswordchange.php', 'user_bulk.php', $optionsyes, NULL, 'post', 'get');
}
admin_externalpage_print_footer();
?>
+3
View File
@@ -24,6 +24,9 @@ class user_bulk_action_form extends moodleform {
if (has_capability('moodle/user:update', $syscontext)) {
$actions[5] = get_string('download', 'admin');
}
if (has_capability('moodle/user:update', $syscontext)) {
$actions[6] = get_string('forcepasswordchange');
}
$objs = array();
$objs[] =& $mform->createElement('select', 'action', null, $actions);
+1 -1
View File
@@ -9,7 +9,7 @@ class user_message_form extends moodleform {
$mform->addElement('header', 'general', get_string('message', 'message'));
$mform->addElement('textarea', 'messagebody', get_string('messagebody'), array('rows'=>15, 'cols'=>60));
$mform->addElement('htmleditor', 'messagebody', get_string('messagebody'), array('rows'=>15, 'cols'=>60));
$mform->addRule('messagebody', '', 'required', null, 'client');
$mform->setHelpButton('messagebody', array('writing', 'reading', 'questions', 'richtext'), false, 'editorhelpbutton');
$mform->addElement('format', 'format', get_string('format'));
+10 -2
View File
@@ -47,6 +47,8 @@ class XMLDBAction {
var $postaction; //Action to execute at the end of the invoke script
var $sesskey_protected; // Actions must be protected by sesskey mechanishm
/**
* Constructor
*/
@@ -72,6 +74,7 @@ class XMLDBAction {
$this->output = NULL;
$this->errormsg = NULL;
$this->subaction = NULL;
$this->sesskey_protected = true;
}
/**
@@ -130,13 +133,18 @@ class XMLDBAction {
}
/**
* main invoke method, it simply sets the postaction attribute
* if possible
* main invoke method, it sets the postaction attribute
* if possible and checks sesskey_protected if needed
*/
function invoke() {
global $SESSION;
/// Sesskey protection
if ($this->sesskey_protected) {
require_sesskey();
}
/// If we are used any dir, save it in the lastused session object
/// Some actions can use it to perform positioning
if ($lastused = optional_param ('dir', NULL, PARAM_PATH)) {
@@ -111,7 +111,7 @@ class check_bigints extends XMLDBAction {
}
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=check_bigints&amp;confirmed=yes" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=check_bigints&amp;sesskey=' . sesskey() . '&amp;confirmed=yes" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
@@ -208,6 +208,10 @@ class check_bigints extends XMLDBAction {
$o.=' </ul>';
}
$o.=' </li>';
/// Give the script some more time (resetting to current if exists)
if ($currenttl = @ini_get('max_execution_time')) {
@ini_set('max_execution_time',$currenttl);
}
}
$o.=' </ul>';
}
@@ -94,7 +94,7 @@ class check_indexes extends XMLDBAction {
$o.= ' <p class="centerpara">' . $this->str['confirmcheckindexes'] . '</p>';
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=check_indexes&amp;confirmed=yes" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=check_indexes&amp;sesskey=' . sesskey() . '&amp;confirmed=yes" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
@@ -213,6 +213,10 @@ class check_indexes extends XMLDBAction {
$o.=' </ul>';
}
$o.=' </li>';
/// Give the script some more time (resetting to current if exists)
if ($currenttl = @ini_get('max_execution_time')) {
@ini_set('max_execution_time',$currenttl);
}
}
$o.=' </ul>';
}
@@ -77,7 +77,7 @@ class delete_field extends XMLDBAction {
$o.= ' <p class="centerpara">' . $this->str['confirmdeletefield'] . '<br /><br />' . $fieldparam . '</p>';
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=delete_field&amp;confirmed=yes&amp;postaction=edit_table&amp;field=' . $fieldparam . '&amp;table=' . $tableparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=delete_field&amp;sesskey=' . sesskey() . '&amp;confirmed=yes&amp;postaction=edit_table&amp;field=' . $fieldparam . '&amp;table=' . $tableparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
@@ -77,7 +77,7 @@ class delete_index extends XMLDBAction {
$o.= ' <p class="centerpara">' . $this->str['confirmdeleteindex'] . '<br /><br />' . $indexparam . '</p>';
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=delete_index&amp;confirmed=yes&amp;postaction=edit_table&amp;index=' . $indexparam . '&amp;table=' . $tableparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=delete_index&amp;sesskey=' . sesskey() . '&amp;confirmed=yes&amp;postaction=edit_table&amp;index=' . $indexparam . '&amp;table=' . $tableparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
@@ -77,7 +77,7 @@ class delete_key extends XMLDBAction {
$o.= ' <p class="centerpara">' . $this->str['confirmdeletekey'] . '<br /><br />' . $keyparam . '</p>';
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=delete_key&amp;confirmed=yes&amp;postaction=edit_table&amp;key=' . $keyparam . '&amp;table=' . $tableparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=delete_key&amp;sesskey=' . sesskey() . '&amp;confirmed=yes&amp;postaction=edit_table&amp;key=' . $keyparam . '&amp;table=' . $tableparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
@@ -77,7 +77,7 @@ class delete_sentence extends XMLDBAction {
$o.= ' <p class="centerpara">' . $this->str['confirmdeletesentence'] . '</p>';
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=delete_sentence&amp;confirmed=yes&amp;postaction=edit_statement&amp;sentence=' . $sentenceparam . '&amp;statement=' . urlencode($statementparam) . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=delete_sentence&amp;sesskey=' . sesskey() . '&amp;confirmed=yes&amp;postaction=edit_statement&amp;sentence=' . $sentenceparam . '&amp;statement=' . urlencode($statementparam) . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
@@ -76,7 +76,7 @@ class delete_statement extends XMLDBAction {
$o.= ' <p class="centerpara">' . $this->str['confirmdeletestatement'] . '<br /><br />' . $statementparam . '</p>';
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=delete_statement&amp;confirmed=yes&amp;postaction=edit_xml_file&amp;statement=' . $statementparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=delete_statement&amp;sesskey=' . sesskey() . '&amp;confirmed=yes&amp;postaction=edit_xml_file&amp;statement=' . $statementparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
@@ -76,7 +76,7 @@ class delete_table extends XMLDBAction {
$o.= ' <p class="centerpara">' . $this->str['confirmdeletetable'] . '<br /><br />' . $tableparam . '</p>';
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=delete_table&amp;confirmed=yes&amp;postaction=edit_xml_file&amp;table=' . $tableparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=delete_table&amp;sesskey=' . sesskey() . '&amp;confirmed=yes&amp;postaction=edit_xml_file&amp;table=' . $tableparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
@@ -75,7 +75,7 @@ class delete_xml_file extends XMLDBAction {
$o.= ' <p class="centerpara">' . $this->str['confirmdeletexmlfile'] . '<br /><br />' . $dirpath . '/install.php</p>';
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=delete_xml_file&amp;confirmed=yes&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '&amp;postaction=main_view#lastused" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=delete_xml_file&amp;sesskey=' . sesskey() . '&amp;confirmed=yes&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '&amp;postaction=main_view#lastused" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
@@ -35,6 +35,7 @@ class edit_field extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -103,6 +104,7 @@ class edit_field extends XMLDBAction {
$o.= ' <input type="hidden" name ="dir" value="' . str_replace($CFG->dirroot, '', $dirpath) . '" />';
$o.= ' <input type="hidden" name ="table" value="' . $tableparam .'" />';
$o.= ' <input type="hidden" name ="field" value="' . $fieldparam .'" />';
$o.= ' <input type="hidden" name ="sesskey" value="' . sesskey() .'" />';
$o.= ' <input type="hidden" name ="action" value="edit_field_save" />';
$o.= ' <input type="hidden" name ="postaction" value="edit_table" />';
$o.= ' <table id="formelements" class="boxaligncenter">';
@@ -35,6 +35,7 @@ class edit_index extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -103,6 +104,7 @@ class edit_index extends XMLDBAction {
$o.= ' <input type="hidden" name ="dir" value="' . str_replace($CFG->dirroot, '', $dirpath) . '" />';
$o.= ' <input type="hidden" name ="table" value="' . $tableparam .'" />';
$o.= ' <input type="hidden" name ="index" value="' . $indexparam .'" />';
$o.= ' <input type="hidden" name ="sesskey" value="' . sesskey() .'" />';
$o.= ' <input type="hidden" name ="action" value="edit_index_save" />';
$o.= ' <input type="hidden" name ="postaction" value="edit_table" />';
$o.= ' <table id="formelements" class="boxaligncenter">';
@@ -35,6 +35,7 @@ class edit_key extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -103,6 +104,7 @@ class edit_key extends XMLDBAction {
$o.= ' <input type="hidden" name ="dir" value="' . str_replace($CFG->dirroot, '', $dirpath) . '" />';
$o.= ' <input type="hidden" name ="table" value="' . $tableparam .'" />';
$o.= ' <input type="hidden" name ="key" value="' . $keyparam .'" />';
$o.= ' <input type="hidden" name ="sesskey" value="' . sesskey() .'" />';
$o.= ' <input type="hidden" name ="action" value="edit_key_save" />';
$o.= ' <input type="hidden" name ="postaction" value="edit_table" />';
$o.= ' <table id="formelements" class="boxaligncenter">';
@@ -35,6 +35,7 @@ class edit_sentence extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -119,6 +120,7 @@ class edit_sentence extends XMLDBAction {
$o.= ' <input type="hidden" name ="dir" value="' . str_replace($CFG->dirroot, '', $dirpath) . '" />';
$o.= ' <input type="hidden" name ="statement" value="' . $statementparam .'" />';
$o.= ' <input type="hidden" name ="sentence" value="' . $sentenceparam .'" />';
$o.= ' <input type="hidden" name ="sesskey" value="' . sesskey() .'" />';
$o.= ' <input type="hidden" name ="action" value="edit_sentence_save" />';
$o.= ' <input type="hidden" name ="postaction" value="edit_statement" />';
$o.= ' <table id="formelements" class="boxaligncenter">';
@@ -35,6 +35,7 @@ class edit_statement extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -106,6 +107,7 @@ class edit_statement extends XMLDBAction {
$o.= '<div>';
$o.= ' <input type="hidden" name ="dir" value="' . str_replace($CFG->dirroot, '', $dirpath) . '" />';
$o.= ' <input type="hidden" name ="statement" value="' . $statementparam .'" />';
$o.= ' <input type="hidden" name ="sesskey" value="' . sesskey() .'" />';
$o.= ' <input type="hidden" name ="action" value="edit_statement_save" />';
$o.= ' <input type="hidden" name ="postaction" value="edit_statement" />';
$o.= ' <table id="formelements" class="boxaligncenter">';
@@ -129,7 +131,7 @@ class edit_statement extends XMLDBAction {
$b .= '&nbsp;[' . $this->str['viewedited'] . ']';
}
/// The new sentence button
$b .= '&nbsp;<a href="index.php?action=new_sentence&amp;postaction=edit_sentence&amp;statement=' . $statementparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newsentence'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=new_sentence&amp;postaction=edit_sentence&amp;sesskey=' . sesskey() . '&amp;statement=' . $statementparam . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newsentence'] . ']</a>';
/// The back to edit xml file button
$b .= '&nbsp;<a href="index.php?action=edit_xml_file&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['back'] . ']</a>';
$b .= '</p>';
@@ -157,10 +159,10 @@ class edit_statement extends XMLDBAction {
$b .= '<a href="index.php?action=edit_sentence&amp;sentence=' .$key . '&amp;statement=' . urlencode($statement->getName()) . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['edit'] . ']</a>';
$b .= '</td><td class="button cell">';
/// The duplicate button
$b .= '<a href="index.php?action=new_sentence&amp;postaction=edit_sentence&amp;basesentence=' . $key . '&amp;statement=' . urlencode($statement->getName()) . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['duplicate'] . ']</a>';
$b .= '<a href="index.php?action=new_sentence&amp;postaction=edit_sentence&amp;sesskey=' . sesskey() . '&amp;basesentence=' . $key . '&amp;statement=' . urlencode($statement->getName()) . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['duplicate'] . ']</a>';
$b .= '</td><td class="button cell">';
/// The delete button
$b .= '<a href="index.php?action=delete_sentence&amp;sentence=' . $key . '&amp;statement=' . urlencode($statement->getName()) . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
$b .= '<a href="index.php?action=delete_sentence&amp;sesskey=' . sesskey() . '&amp;sentence=' . $key . '&amp;statement=' . urlencode($statement->getName()) . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
$b .= '</td>';
/// Print table row
$o .= '<tr class="r' . $row . '"><td class="table cell">' . $p . $sentence . $b . '</tr>';
@@ -35,6 +35,7 @@ class edit_table extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -107,6 +108,7 @@ class edit_table extends XMLDBAction {
$o.= ' <input type="hidden" name ="dir" value="' . str_replace($CFG->dirroot, '', $dirpath) . '" />';
$o.= ' <input type="hidden" name ="table" value="' . $tableparam .'" />';
$o.= ' <input type="hidden" name ="action" value="edit_table_save" />';
$o.= ' <input type="hidden" name ="sesskey" value="' . sesskey() .'" />';
$o.= ' <input type="hidden" name ="postaction" value="edit_table" />';
$o.= ' <table id="formelements" class="boxaligncenter">';
/// If the table is being used, we cannot rename it
@@ -134,11 +136,11 @@ class edit_table extends XMLDBAction {
$b .= '&nbsp;[' . $this->str['viewedited'] . ']';
}
/// The new field button
$b .= '&nbsp;<a href="index.php?action=new_field&amp;postaction=edit_field&amp;table=' . $tableparam . '&amp;field=changeme&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newfield'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=new_field&amp;sesskey=' . sesskey() . '&amp;postaction=edit_field&amp;table=' . $tableparam . '&amp;field=changeme&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newfield'] . ']</a>';
/// The new key button
$b .= '&nbsp;<a href="index.php?action=new_key&amp;postaction=edit_key&amp;table=' . $tableparam . '&amp;key=changeme&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newkey'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=new_key&amp;sesskey=' . sesskey() . '&amp;postaction=edit_key&amp;table=' . $tableparam . '&amp;key=changeme&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newkey'] . ']</a>';
/// The new index button
$b .= '&nbsp;<a href="index.php?action=new_index&amp;postaction=edit_index&amp;table=' . $tableparam . '&amp;index=changeme&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newindex'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=new_index&amp;sesskey=' . sesskey() . '&amp;postaction=edit_index&amp;table=' . $tableparam . '&amp;index=changeme&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newindex'] . ']</a>';
/// The back to edit xml file button
$b .= '&nbsp;<a href="index.php?action=edit_xml_file&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['back'] . ']</a>';
$b .= '</p>';
@@ -185,14 +187,14 @@ class edit_table extends XMLDBAction {
$b .= '</td><td class="button cell">';
/// The up button
if ($field->getPrevious()) {
$b .= '<a href="index.php?action=move_updown_field&amp;direction=up&amp;field=' . $field->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_field&amp;direction=up&amp;sesskey=' . sesskey() . '&amp;field=' . $field->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
} else {
$b .= '[' . $this->str['up'] . ']';
}
$b .= '</td><td class="button cell">';
/// The down button
if ($field->getNext()) {
$b .= '<a href="index.php?action=move_updown_field&amp;direction=down&amp;field=' . $field->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_field&amp;direction=down&amp;sesskey=' . sesskey() . '&amp;field=' . $field->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
} else {
$b .= '[' . $this->str['down'] . ']';
}
@@ -200,7 +202,7 @@ class edit_table extends XMLDBAction {
/// The delete button (if we have more than one and it isn't used
if (count($fields) > 1 &&
!$structure->getFieldUses($table->getName(), $field->getName())) {
$b .= '<a href="index.php?action=delete_field&amp;field=' . $field->getName() . '&amp;table=' . $table->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
$b .= '<a href="index.php?action=delete_field&amp;sesskey=' . sesskey() . '&amp;field=' . $field->getName() . '&amp;table=' . $table->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
} else {
$b .= '[' . $this->str['delete'] . ']';
}
@@ -234,21 +236,21 @@ class edit_table extends XMLDBAction {
$b .= '</td><td class="button cell">';
/// The up button
if ($key->getPrevious()) {
$b .= '<a href="index.php?action=move_updown_key&amp;direction=up&amp;key=' . $key->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_key&amp;direction=up&amp;sesskey=' . sesskey() . '&amp;key=' . $key->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
} else {
$b .= '[' . $this->str['up'] . ']';
}
$b .= '</td><td class="button cell">';
/// The down button
if ($key->getNext()) {
$b .= '<a href="index.php?action=move_updown_key&amp;direction=down&amp;key=' . $key->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_key&amp;direction=down&amp;sesskey=' . sesskey() . '&amp;key=' . $key->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
} else {
$b .= '[' . $this->str['down'] . ']';
}
$b .= '</td><td class="button cell">';
/// The delete button (if the key hasn't uses)
if (!$structure->getKeyUses($table->getName(), $key->getName())) {
$b .= '<a href="index.php?action=delete_key&amp;key=' . $key->getName() . '&amp;table=' . $table->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
$b .= '<a href="index.php?action=delete_key&amp;sesskey=' . sesskey() . '&amp;key=' . $key->getName() . '&amp;table=' . $table->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
} else {
$b .= '[' . $this->str['delete'] . ']';
}
@@ -274,20 +276,20 @@ class edit_table extends XMLDBAction {
$b .= '</td><td class="button cell">';
/// The up button
if ($index->getPrevious()) {
$b .= '<a href="index.php?action=move_updown_index&amp;direction=up&amp;index=' . $index->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_index&amp;direction=up&amp;sesskey=' . sesskey() . '&amp;index=' . $index->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
} else {
$b .= '[' . $this->str['up'] . ']';
}
$b .= '</td><td class="button cell">';
/// The down button
if ($index->getNext()) {
$b .= '<a href="index.php?action=move_updown_index&amp;direction=down&amp;index=' . $index->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_index&amp;direction=down&amp;sesskey=' . sesskey() . '&amp;index=' . $index->getName() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_table' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
} else {
$b .= '[' . $this->str['down'] . ']';
}
$b .= '</td><td class="button cell">';
/// The delete button
$b .= '<a href="index.php?action=delete_index&amp;index=' . $index->getName() . '&amp;table=' . $table->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
$b .= '<a href="index.php?action=delete_index&amp;sesskey=' . sesskey() . '&amp;index=' . $index->getName() . '&amp;table=' . $table->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
/// The readable info
$r = '</td><td class="readableinfo cell">' . $index->readableInfo() . '</td>';
/// Print table row
@@ -35,6 +35,7 @@ class edit_xml_file extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -107,6 +108,7 @@ class edit_xml_file extends XMLDBAction {
$o.= ' <input type="hidden" name ="postaction" value="edit_xml_file" />';
$o.= ' <input type="hidden" name ="path" value="' . s($structure->getPath()) .'" />';
$o.= ' <input type="hidden" name ="version" value="' . s($structure->getVersion()) .'" />';
$o.= ' <input type="hidden" name ="sesskey" value="' . sesskey() .'" />';
$o.= ' <table id="formelements" class="boxaligncenter">';
$o.= ' <tr valign="top"><td>Path:</td><td>' . s($structure->getPath()) . '</td></tr>';
$o.= ' <tr valign="top"><td>Version:</td><td>' . s($structure->getVersion()) . '</td></tr>';
@@ -125,15 +127,15 @@ class edit_xml_file extends XMLDBAction {
$b .= '&nbsp;[' . $this->str['viewedited'] . ']';
}
/// The new table button
$b .= '&nbsp;<a href="index.php?action=new_table&amp;postaction=edit_table&amp;table=changeme&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newtable'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=new_table&amp;sesskey=' . sesskey() . '&amp;postaction=edit_table&amp;table=changeme&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newtable'] . ']</a>';
/// The new from MySQL button
if ($CFG->dbfamily == 'mysql') {
$b .= '&nbsp;<a href="index.php?action=new_table_from_mysql&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newtablefrommysql'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=new_table_from_mysql&amp;sesskey=' . sesskey() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newtablefrommysql'] . ']</a>';
} else {
$b .= '&nbsp;[' . $this->str['newtablefrommysql'] . ']';
}
/// The new statement button
$b .= '&nbsp;<a href="index.php?action=new_statement&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newstatement'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=new_statement&amp;sesskey=' . sesskey() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['newstatement'] . ']</a>';
/// The back to main menu button
$b .= '&nbsp;<a href="index.php?action=main_view#lastused">[' . $this->str['backtomainview'] . ']</a>';
$b .= '</p>';
@@ -169,14 +171,14 @@ class edit_xml_file extends XMLDBAction {
$b .= '</td><td class="button cell">';
/// The up button
if ($table->getPrevious()) {
$b .= '<a href="index.php?action=move_updown_table&amp;direction=up&amp;table=' . $table->getName() . '&amp;postaction=edit_xml_file' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_table&amp;direction=up&amp;sesskey=' . sesskey() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_xml_file' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
} else {
$b .= '[' . $this->str['up'] . ']';
}
$b .= '</td><td class="button cell">';
/// The down button
if ($table->getNext()) {
$b .= '<a href="index.php?action=move_updown_table&amp;direction=down&amp;table=' . $table->getName() . '&amp;postaction=edit_xml_file' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_table&amp;direction=down&amp;sesskey=' . sesskey() . '&amp;table=' . $table->getName() . '&amp;postaction=edit_xml_file' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
} else {
$b .= '[' . $this->str['down'] . ']';
}
@@ -185,7 +187,7 @@ class edit_xml_file extends XMLDBAction {
if (count($tables) > 1 &&
!$structure->getTableUses($table->getName())) {
///!$structure->getTableUses($table->getName())) {
$b .= '<a href="index.php?action=delete_table&amp;table=' . $table->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
$b .= '<a href="index.php?action=delete_table&amp;sesskey=' . sesskey() . '&amp;table=' . $table->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
} else {
$b .= '[' . $this->str['delete'] . ']';
}
@@ -214,20 +216,20 @@ class edit_xml_file extends XMLDBAction {
$b .= '</td><td class="button cell">';
/// The up button
if ($statement->getPrevious()) {
$b .= '<a href="index.php?action=move_updown_statement&amp;direction=up&amp;statement=' . $statement->getName() . '&amp;postaction=edit_xml_file' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_statement&amp;direction=up&amp;sesskey=' . sesskey() . '&amp;statement=' . $statement->getName() . '&amp;postaction=edit_xml_file' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['up'] . ']</a>';
} else {
$b .= '[' . $this->str['up'] . ']';
}
$b .= '</td><td class="button cell">';
/// The down button
if ($statement->getNext()) {
$b .= '<a href="index.php?action=move_updown_statement&amp;direction=down&amp;statement=' . $statement->getName() . '&amp;postaction=edit_xml_file' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
$b .= '<a href="index.php?action=move_updown_statement&amp;direction=down&amp;sesskey=' . sesskey() . '&amp;statement=' . $statement->getName() . '&amp;postaction=edit_xml_file' . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['down'] . ']</a>';
} else {
$b .= '[' . $this->str['down'] . ']';
}
$b .= '</td><td class="button cell">';
/// The delete button
$b .= '<a href="index.php?action=delete_statement&amp;statement=' . $statement->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
$b .= '<a href="index.php?action=delete_statement&amp;sesskey=' . sesskey() . '&amp;statement=' . $statement->getName() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '">[' . $this->str['delete'] . ']</a>';
$b .= '</td>';
/// Print statement row
$o .= '<tr class="r' . $row . '"><td class="statement cell"><a href="index.php?action=view_statement_xml&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '&amp;statement=' . $statement->getName() . '&amp;select=edited">' . $statement->getName() . '</a>' . $b . '</tr>';
@@ -39,6 +39,7 @@ class get_db_directories extends XMLDBAction {
//$this->can_subaction = ACTION_HAVE_SUBACTIONS;
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -38,6 +38,7 @@ class load_xml_file extends XMLDBAction {
//$this->can_subaction = ACTION_HAVE_SUBACTIONS;
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -35,6 +35,7 @@ class main_view extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -85,12 +86,12 @@ class main_view extends XMLDBAction {
/// The reserved_words button
$b .= '&nbsp;<a href="index.php?action=view_reserved_words">[' . $this->str['reservedwords'] . ']</a>';
/// The test button
$b .= '&nbsp;<a href="index.php?action=test">[' . $this->str['test'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=test&amp;sesskey=' . sesskey() . '">[' . $this->str['test'] . ']</a>';
/// The check indexes button
$b .= '&nbsp;<a href="index.php?action=check_indexes">[' . $this->str['checkindexes'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=check_indexes&amp;sesskey=' . sesskey() . '">[' . $this->str['checkindexes'] . ']</a>';
/// The check bigints button (only for MySQL and PostgreSQL) MDL-11038a
if ($CFG->dbfamily == 'mysql' || $CFG->dbfamily == 'postgres') {
$b .= '&nbsp;<a href="index.php?action=check_bigints">[' . $this->str['checkbigints'] . ']</a>';
$b .= '&nbsp;<a href="index.php?action=check_bigints&amp;sesskey=' . sesskey() . '">[' . $this->str['checkbigints'] . ']</a>';
}
$b .= '</p>';
/// Send buttons to output
@@ -131,7 +132,7 @@ class main_view extends XMLDBAction {
if ($dbdir->path_exists &&
!file_exists($key . '/install.xml') &&
is_writeable($key)) {
$b .= '<a href="index.php?action=create_xml_file&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $key)) . '&amp;time=' . time() . '&amp;postaction=main_view#lastused">[' . $this->str['create'] . ']</a>';
$b .= '<a href="index.php?action=create_xml_file&amp;sesskey=' . sesskey() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $key)) . '&amp;time=' . time() . '&amp;postaction=main_view#lastused">[' . $this->str['create'] . ']</a>';
} else {
$b .= '[' . $this->str['create'] . ']';
}
@@ -164,7 +165,7 @@ class main_view extends XMLDBAction {
is_writeable($key) &&
!empty($dbdir->xml_loaded) &&
!empty($dbdir->xml_changed)) {
$b .= '<a href="index.php?action=save_xml_file&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $key)) . '&amp;time=' . time() . '&amp;postaction=main_view#lastused">[' . $this->str['save'] . ']</a>';
$b .= '<a href="index.php?action=save_xml_file&amp;sesskey=' . sesskey() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $key)) . '&amp;time=' . time() . '&amp;postaction=main_view#lastused">[' . $this->str['save'] . ']</a>';
/// Check if the file has been manually edited while being modified in the editor
if ($dbdir->filemtime != filemtime($key . '/install.xml')) {
/// File manually modified. Add to errors.
@@ -183,7 +184,7 @@ class main_view extends XMLDBAction {
is_writeable($key) &&
!empty($dbdir->xml_loaded) &&
!empty($dbdir->xml_changed)) {
$b .= '<a href="index.php?action=revert_changes&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $key)) . '">[' . $this->str['revert'] . ']</a>';
$b .= '<a href="index.php?action=revert_changes&amp;sesskey=' . sesskey() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $key)) . '">[' . $this->str['revert'] . ']</a>';
} else {
$b .= '[' . $this->str['revert'] . ']';
}
@@ -205,7 +206,7 @@ class main_view extends XMLDBAction {
is_readable($key . '/install.xml') &&
is_writeable($key) &&
empty($dbdir->xml_loaded)) {
$b .= '<a href="index.php?action=delete_xml_file&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $key)) . '">[' . $this->str['delete'] . ']</a>';
$b .= '<a href="index.php?action=delete_xml_file&amp;sesskey=' . sesskey() . '&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $key)) . '">[' . $this->str['delete'] . ']</a>';
} else {
$b .= '[' . $this->str['delete'] . ']';
}
@@ -107,6 +107,7 @@ class new_statement extends XMLDBAction {
$o.= ' <input type="hidden" name ="dir" value="' . str_replace($CFG->dirroot, '', $dirpath) . '" />';
$o.= ' <input type="hidden" name ="action" value="new_statement" />';
$o.= ' <input type="hidden" name ="postaction" value="edit_statement" />';
$o.= ' <input type="hidden" name ="sesskey" value="' . sesskey() . '" />';
$o.= ' <table id="formelements" class="boxaligncenter" cellpadding="5">';
$o.= ' <tr><td><label for="type" accesskey="t">' . $this->str['statementtype'] .' </label>' . choose_from_menu($typeoptions, 'type', '', 'choose', '', 0, true) . '<label for="table" accesskey="a">' . $this->str['statementtable'] . ' </label>' .choose_from_menu($selecttables, 'table', '', 'choose', '', 0, true) . '</td></tr>';
$o.= ' <tr><td colspan="2" align="center"><input type="submit" value="' .$this->str['create'] . '" /></td></tr>';
@@ -111,6 +111,7 @@ class new_table_from_mysql extends XMLDBAction {
$o.= ' <input type="hidden" name ="dir" value="' . str_replace($CFG->dirroot, '', $dirpath) . '" />';
$o.= ' <input type="hidden" name ="action" value="new_table_from_mysql" />';
$o.= ' <input type="hidden" name ="postaction" value="edit_table" />';
$o.= ' <input type="hidden" name ="sesskey" value="' . sesskey() . '" />';
$o.= ' <table id="formelements" class="boxaligncenter" cellpadding="5">';
$o.= ' <tr><td><label for="table" accesskey="t">' . $this->str['createtable'] .' </label>' . choose_from_menu($selecttables, 'table', '', 'choose', '', 0, true) . '<label for="after" accesskey="a">' . $this->str['aftertable'] . ' </label>' .choose_from_menu($aftertables, 'after', '', 'choose', '', 0, true) . '</td></tr>';
$o.= ' <tr><td colspan="2" align="center"><input type="submit" value="' .$this->str['create'] . '" /></td></tr>';
@@ -75,7 +75,7 @@ class revert_changes extends XMLDBAction {
$o.= ' <p class="centerpara">' . $this->str['confirmrevertchanges'] . '<br /><br />' . $dirpath . '</p>';
$o.= ' <table class="boxaligncenter" cellpadding="20"><tr><td>';
$o.= ' <div class="singlebutton">';
$o.= ' <form action="index.php?action=revert_changes&amp;confirmed=yes&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '&amp;postaction=main_view#lastused" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <form action="index.php?action=revert_changes&amp;sesskey=' . sesskey() . '&amp;confirmed=yes&amp;dir=' . urlencode(str_replace($CFG->dirroot, '', $dirpath)) . '&amp;postaction=main_view#lastused" method="post"><fieldset class="invisiblefieldset">';
$o.= ' <input type="submit" value="'. $this->str['yes'] .'" /></fieldset></form></div>';
$o.= ' </td><td>';
$o.= ' <div class="singlebutton">';
+14
View File
@@ -1014,6 +1014,20 @@ class test extends XMLDBAction {
$this->output = $o;
/// Finally drop all the potentially existing test tables
$table = new XMLDBTable('testtable');
if (table_exists($table)) {
$status = drop_table($table, true, false);
}
$table = new XMLDBTable ('anothertest');
if (table_exists($table)) {
$status = drop_table($table, true, false);
}
$table = new XMLDBTable ('newnameforthetable');
if (table_exists($table)) {
$status = drop_table($table, true, false);
}
/// Launch postaction if exists (leave this here!)
if ($this->getPostAction() && $result) {
return $this->launch($this->getPostAction());
@@ -35,6 +35,7 @@ class unload_xml_file extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -35,6 +35,7 @@ class view_field_xml extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -35,6 +35,7 @@ class view_index_xml extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -35,6 +35,7 @@ class view_key_xml extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -38,6 +38,7 @@ class view_reserved_words extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -35,6 +35,7 @@ class view_statement_xml extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -36,6 +36,7 @@ class view_structure_php extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -36,6 +36,7 @@ class view_structure_sql extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -35,6 +35,7 @@ class view_structure_xml extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -36,6 +36,7 @@ class view_table_php extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -36,6 +36,7 @@ class view_table_sql extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -35,6 +35,7 @@ class view_table_xml extends XMLDBAction {
parent::init();
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
@@ -38,6 +38,7 @@ class view_xml extends XMLDBAction {
//$this->can_subaction = ACTION_HAVE_SUBACTIONS;
/// Set own custom attributes
$this->sesskey_protected = false; // This action doesn't need sesskey protection
/// Get needed strings
$this->loadStrings(array(
+16 -9
View File
@@ -1994,15 +1994,22 @@ class CASClient
}
}
$final_uri .= strtok($_SERVER['REQUEST_URI'],"?");
$cgi_params = '?'.strtok("?");
// remove the ticket if present in the CGI parameters
$cgi_params = preg_replace('/&ticket=[^&]*/','',$cgi_params);
$cgi_params = preg_replace('/\?ticket=[^&;]*/','?',$cgi_params);
$cgi_params = preg_replace('/\?%26/','?',$cgi_params);
$cgi_params = preg_replace('/\?&/','?',$cgi_params);
$cgi_params = preg_replace('/\?$/','',$cgi_params);
$final_uri .= $cgi_params;
$baseurl = split("\?", $_SERVER['REQUEST_URI'], 2);
$final_uri .= $baseurl[0];
$query_string = '';
if ($_GET) {
$kv = array();
foreach ($_GET as $key => $value) {
if($key !== "ticket"){
$kv[] = urlencode($key). "=" . urlencode($value);
}
}
$query_string = join("&", $kv);
}
if($query_string){
$final_uri .= "?" . $query_string;
}
$this->setURL($final_uri);
}
phpCAS::traceEnd($this->_url);
+7
View File
@@ -0,0 +1,7 @@
PHP CAS library import
List of changes:
1/ backported fix for: http://www.ja-sig.org/issues/browse/PHPCAS-52 (MDL-21802)
skodak
+6 -1
View File
@@ -58,8 +58,13 @@ class auth_plugin_cas extends auth_plugin_base {
*/
function user_login ($username, $password) {
$this->connectCAS();
return phpCAS::isAuthenticated() && (phpCAS::getUser() == $username);
return phpCAS::isAuthenticated() && (trim(moodle_strtolower(phpCAS::getUser())) == $username);
}
function prevent_local_passwords() {
return true;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+1 -1
View File
@@ -602,7 +602,7 @@ if (!function_exists('ldap_connect')) { // Is php4-ldap really there?
$opt_deref[LDAP_DEREF_ALWAYS] = get_string('yes');
choose_from_menu($opt_deref, 'opt_deref', $config->opt_deref, LDAP_DEREF_NEVER, '');
choose_from_menu($opt_deref, 'opt_deref', $config->opt_deref, '');
if (isset($err['opt_deref'])) formerr($err['opt_deref']);
+7
View File
@@ -564,6 +564,13 @@ class auth_plugin_db extends auth_plugin_base {
}
}
function prevent_local_passwords() {
if (!isset($this->config->passtype)) {
return false;
}
return ($this->config->passtype != 'internal');
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+4
View File
@@ -146,6 +146,10 @@ class auth_plugin_email extends auth_plugin_base {
}
}
function prevent_local_passwords() {
return false;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+4
View File
@@ -144,6 +144,10 @@ class auth_plugin_fc extends auth_plugin_base {
return false;
}
function prevent_local_passwords() {
return true;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+4
View File
@@ -81,6 +81,10 @@ class auth_plugin_imap extends auth_plugin_base {
return false; // No match
}
function prevent_local_passwords() {
return true;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+22 -6
View File
@@ -222,7 +222,7 @@ class auth_plugin_ldap extends auth_plugin_base {
}
$ldapval = NULL;
foreach ($values as $value) {
if ($value == 'dn') {
if ((moodle_strtolower($value) == 'dn') || (moodle_strtolower($value) == 'distinguishedname')) {
$result[$key] = $user_dn;
}
if (!array_key_exists($value, $user_entry[0])) {
@@ -1803,6 +1803,10 @@ class auth_plugin_ldap extends auth_plugin_base {
return ($fresult);
}
function prevent_local_passwords() {
return !empty($this->config->preventpassindb);
}
/**
* Returns true if this authentication plugin is 'internal'.
*
@@ -1844,6 +1848,9 @@ class auth_plugin_ldap extends auth_plugin_base {
*/
function loginpage_hook() {
global $CFG, $SESSION;
// HTTPS is potentially required
httpsrequired();
if (($_SERVER['REQUEST_METHOD'] === 'GET' // Only on initial GET of loginpage
|| ($_SERVER['REQUEST_METHOD'] === 'POST'
@@ -2118,7 +2125,7 @@ class auth_plugin_ldap extends auth_plugin_base {
}
/**
* Quote control characters in texts used in ldap filters - see rfc2254.txt
* Quote control characters in texts used in ldap filters - see RFC 4515/2254
*
* @param string
*/
@@ -2130,14 +2137,23 @@ class auth_plugin_ldap extends auth_plugin_base {
}
/**
* Quote control characters in quoted "texts" used in ldap
* The order of the special characters in these arrays _IS IMPORTANT_.
* Make sure '\\5C' (and '\\') are the first elements of the arrays.
* Otherwise we'll double replace '\' with '\5C' which is Bad(tm)
*/
var $LDAP_DN_QUOTED_SPECIAL_CHARS = array('\\5c','\\20','\\22','\\23','\\2b','\\2c','\\3b','\\3c','\\3d','\\3e','\\00');
var $LDAP_DN_SPECIAL_CHARS = array('\\', ' ', '"', '#', '+', ',', ';', '<', '=', '>', "\0");
/**
* Quote control characters in distinguished names used in ldap - See RFC 4514/2253
*
* @param string
* @return string
*/
function ldap_addslashes($text) {
$text = str_replace('\\', '\\\\', $text);
$text = str_replace(array('"', "\0"),
array('\\"', '\\00'), $text);
$text = str_replace ($this->LDAP_DN_SPECIAL_CHARS,
$this->LDAP_DN_QUOTED_SPECIAL_CHARS,
$text);
return $text;
}
+3 -3
View File
@@ -16,7 +16,7 @@
if (!isset($config->opt_deref))
{ $config->opt_deref = LDAP_DEREF_NEVER; }
if (!isset($config->preventpassindb))
{ $config->preventpassindb = 0; }
{ $config->preventpassindb = 1; }
if (!isset($config->bind_dn))
{$config->bind_dn = ''; }
if (!isset($config->bind_pw))
@@ -92,7 +92,7 @@ if (!function_exists('ldap_connect')) { // Is php4-ldap really there?
<td align="right"><label for="menuversion"><?php print_string('auth_ldap_version_key','auth') ?></label></td>
<td>
<?php
$varsions = array();
$versions = array();
$versions[2] = '2';
$versions[3] = '3';
choose_from_menu($versions, 'version', $config->version, '');
@@ -199,7 +199,7 @@ if (!function_exists('ldap_connect')) { // Is php4-ldap really there?
$opt_deref = array();
$opt_deref[LDAP_DEREF_NEVER] = get_string('no');
$opt_deref[LDAP_DEREF_ALWAYS] = get_string('yes');
choose_from_menu($opt_deref, 'opt_deref', $config->opt_deref, LDAP_DEREF_NEVER, '');
choose_from_menu($opt_deref, 'opt_deref', $config->opt_deref, '');
if (isset($err['opt_deref'])) formerr($err['opt_deref']);
?>
</td>
+4
View File
@@ -62,6 +62,10 @@ class auth_plugin_manual extends auth_plugin_base {
return update_internal_user_password($user, $newpassword);
}
function prevent_local_passwords() {
return false;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+31 -13
View File
@@ -230,6 +230,17 @@ class auth_plugin_mnet extends auth_plugin_base {
return $url;
}
/**
* after a successful login, land.php will call complete_user_login
* which will in turn regenerate the session id.
* this means that what is stored in mnet_session table needs updating.
*
*/
function update_session_id() {
global $USER;
return set_field('mnet_session', 'session_id', session_id(), 'username', $USER->username, 'mnethostid', $USER->mnethostid, 'useragent', sha1($_SERVER['HTTP_USER_AGENT']));
}
/**
* This function confirms the remote (ID provider) host's mnet session
* by communicating the token and UA over the XMLRPC transport layer, and
@@ -291,16 +302,16 @@ class auth_plugin_mnet extends auth_plugin_base {
// TODO: refactor into a separate function
if (empty($localuser) || ! $localuser->id) {
if (empty($this->config->auto_add_remote_users)) {
print_error('nolocaluser', 'mnet');
print_error('nolocaluser2', 'mnet');
}
$remoteuser->mnethostid = $remotehost->id;
if (! insert_record('user', addslashes_recursive($remoteuser))) {
$remoteuser->firstaccess = time(); // First time user in this server, grab it here
if (!$remoteuser->id = insert_record('user', addslashes_recursive($remoteuser))) {
print_error('databaseerror', 'mnet');
}
$firsttime = true;
if (! $localuser = get_record('user', 'username', addslashes($remoteuser->username), 'mnethostid', $remotehost->id)) {
print_error('nolocaluser', 'mnet');
}
$localuser = $remoteuser;
}
// check sso access control list for permission first
@@ -367,6 +378,9 @@ class auth_plugin_mnet extends auth_plugin_base {
}
$localuser->mnethostid = $remotepeer->id;
if (empty($localuser->firstaccess)) { // Now firstaccess, grab it here
$localuser->firstaccess = time();
}
$bool = update_record('user', addslashes_recursive($localuser));
if (!$bool) {
@@ -591,6 +605,10 @@ class auth_plugin_mnet extends auth_plugin_base {
delete_records_select('mnet_enrol_assignments', $whereclause);
}
function prevent_local_passwords() {
return true;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
@@ -950,7 +968,7 @@ class auth_plugin_mnet extends auth_plugin_base {
// There is no way to capture what the custom session handler
// is and then reset it on each pass - I checked that out
// already.
$sesscache = clone($_SESSION);
$sesscache = $_SESSION;
$sessidcache = session_id();
session_write_close();
unset($_SESSION);
@@ -970,7 +988,7 @@ class auth_plugin_mnet extends auth_plugin_base {
session_name('MoodleSession'.$CFG->sessioncookie);
session_id($sessidcache);
session_start();
$_SESSION = clone($sesscache);
$_SESSION = $sesscache;
session_write_close();
}
}
@@ -1140,7 +1158,7 @@ class auth_plugin_mnet extends auth_plugin_base {
$uc = ini_get('session.use_cookies');
ini_set('session.use_cookies', false);
$sesscache = clone($_SESSION);
$sesscache = $_SESSION;
$sessidcache = session_id();
session_write_close();
unset($_SESSION);
@@ -1159,7 +1177,7 @@ class auth_plugin_mnet extends auth_plugin_base {
session_name('MoodleSession'.$CFG->sessioncookie);
session_id($sessidcache);
session_start();
$_SESSION = clone($sesscache);
$_SESSION = $sesscache;
session_write_close();
$end = ob_end_clean();
@@ -1186,7 +1204,7 @@ class auth_plugin_mnet extends auth_plugin_base {
$uc = ini_get('session.use_cookies');
ini_set('session.use_cookies', false);
$sesscache = clone($_SESSION);
$sesscache = $_SESSION;
$sessidcache = session_id();
session_write_close();
unset($_SESSION);
@@ -1205,7 +1223,7 @@ class auth_plugin_mnet extends auth_plugin_base {
session_name('MoodleSession'.$CFG->sessioncookie);
session_id($sessidcache);
session_start();
$_SESSION = clone($sesscache);
$_SESSION = $sesscache;
session_write_close();
$end = ob_end_clean();
@@ -1228,7 +1246,7 @@ class auth_plugin_mnet extends auth_plugin_base {
$uc = ini_get('session.use_cookies');
ini_set('session.use_cookies', false);
$sesscache = clone($_SESSION);
$sesscache = $_SESSION;
$sessidcache = session_id();
session_write_close();
unset($_SESSION);
@@ -1247,7 +1265,7 @@ class auth_plugin_mnet extends auth_plugin_base {
session_name('MoodleSession'.$CFG->sessioncookie);
session_id($sessidcache);
session_start();
$_SESSION = clone($sesscache);
$_SESSION = $sesscache;
$end = ob_end_clean();
return true;
+1
View File
@@ -34,6 +34,7 @@ $localuser = $mnetauth->confirm_mnet_session($token, $remotewwwroot);
// log in
$USER = get_complete_user_data('id', $localuser->id, $localuser->mnethostid);
complete_user_login($USER);
$mnetauth->update_session_id();
if (!empty($localuser->mnet_foreign_host_array)) {
$USER->mnet_foreign_host_array = $localuser->mnet_foreign_host_array;
+4
View File
@@ -64,6 +64,10 @@ class auth_plugin_nntp extends auth_plugin_base {
return false;
}
function prevent_local_passwords() {
return true;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+5
View File
@@ -46,6 +46,11 @@ class auth_plugin_nologin extends auth_plugin_base {
return false;
}
function prevent_local_passwords() {
// just in case, we do not want to loose the passwords
return false;
}
/**
* No external data sync.
*
+4
View File
@@ -62,6 +62,10 @@ class auth_plugin_none extends auth_plugin_base {
return update_internal_user_password($user, $newpassword);
}
function prevent_local_passwords() {
return false;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+4
View File
@@ -77,6 +77,10 @@ class auth_plugin_pam extends auth_plugin_base {
}
}
function prevent_local_passwords() {
return true;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+4
View File
@@ -81,6 +81,10 @@ class auth_plugin_pop3 extends auth_plugin_base {
return false; // No matches found
}
function prevent_local_passwords() {
return true;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+4
View File
@@ -126,6 +126,10 @@ class auth_plugin_radius extends auth_plugin_base {
$rauth->close();
}
function prevent_local_passwords() {
return true;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+36 -15
View File
@@ -25,6 +25,9 @@ Changes:
language files.
- 3. 2009: Added various improvements and bug fixes reported by Ina Müller from
university Tuebingen and Peter Ellis of University of Washington
- 4. 2009: Added another requirement for logout regarding the call back script
- 6. 2009: Changed handler URL when integrated Discovery Service is used
- 10. 2009: Fixed HTML entity preservation in Shibboleth settings
Moodle Configuration with Dual login
-------------------------------------------------------------------------------
@@ -33,11 +36,11 @@ Moodle Configuration with Dual login
For Apache you have to define a rule like the following in the Apache config:
--
<Location ~ "/auth/shibboleth/index.php">
<Directory /path/to/moodle/auth/shibboleth/index.php>
AuthType shibboleth
ShibRequireSession On
require valid-user
</Location>
</Directory>
--
To restrict access to Moodle, replace the access rule 'require valid-user'
@@ -106,6 +109,14 @@ Moodle Configuration with Dual login
in step 1 only the index.php script in
moodle/auth/shibboleth/ is protected but *not* the other
scripts and especially not the login.php script.
If you were using the integrated WAYF alread with Shibboleth 1.3, it could
be that the integrated WAYF is not working anymore after you updated Moodle.
The reason is that the implicitly set default SessionInitiator changed in
Moodle as well as in Shibboleth. For Shibboleth 1.3 one therefore has to
add /Shibboleth.sso as third parameter whereas this is /Shibboleth.sso/DS
for Shibboleth 2.x.
5. Save the changes for the 'Shibboleth settings'.
@@ -257,7 +268,6 @@ recommended to use the following approach when upgrading the Service Provider:
How to add logout support
--------------------------------------------------------------------------------
In order make Moodle support Shibboleth logout, one has to make the Shibboleth
Service Provider (SP) aware of the Moodle logout capability. Only then the SP
can trigger Moodle's front or back channel logout handler.
@@ -270,15 +280,6 @@ just before the <MetadataProvider> element.
<Notify
Channel="back"
Location="https://#YOUR_MOODLE_HOSTNAME#/moodle/auth/shibboleth/logout.php" />
<!--
If possible, you should use only the back channel logout once it is working.
-->
<!--
<Notify
Channel="front"
Location="https://#YOUR_MOODLE_HOSTNAME#/moodle/auth/shibboleth/logout.php" />
-->
--
Then restart the Shibboleth daemon and check the log file for errors. If there
@@ -293,15 +294,35 @@ Requirements:
- PHP needs the Soap Extension, which maybe must installed manually:
More information is available here http://ch.php.net/soap
- Logout only works with Shibboleth Service Provider 2.1 or higher
- /moodle/auth/shibboleth/logout.php *must not* be protected by Shibboleth!
In case all of Moodle is protected with Shibboleth, you have to add something
like this to your Apache configuration after all the other require rules
--
<Directory /path/to/moodle/auth/shibboleth/logout.php>
AuthType shibboleth
ShibRequireSession Off
require shibboleth
</Directory>
--
When using IIS, the same can be achieved by something like:
--
<Path name="auth/shibboleth/logout.php" requireSession="false" >
--
in the shibboleth2.xml RequestMap.
Limitations:
Single Logout is only supported when SAML2 is used at the SP and the IdP.
As of December 2008, the Shibboleth Identity Provider 2.1.1 does not yet support
Single Logout (SLO). Therefore, the single logout feature cannot be used yet.
As of October 2009, the Shibboleth Identity Provider 2.1.4 does not yet support
Single Logout (SLO). Therefore, the single logout feature cannot be used yet
in a Shibboleth only setup but there may be other SAML2 products that could
be used as Identity Provider, e.g. SimpleSAML PHP.
One of the reasons why SLO isn't supported yet is because there aren't many
applications yet that were adapted to support front and back channel
logout. Hopefully, the Moodle logout helps to motivate the developers to
implement SLO :)
implement SLO. On the other hand, the easiest and safest way to log out
still is to tell users to quit their web browsers :)
Also see https://spaces.internet2.edu/display/SHIB2/SLOIssues and
https://spaces.internet2.edu/display/SHIB2/NativeSPLogoutInitiator for some
+4
View File
@@ -152,6 +152,10 @@ class auth_plugin_shibboleth extends auth_plugin_base {
return $moodleattributes;
}
function prevent_local_passwords() {
return true;
}
/**
* Returns true if this authentication plugin is 'internal'.
*
+2 -2
View File
@@ -66,7 +66,7 @@
https://another.idp-id.com/shibboleth, Other Example Organization, /Shibboleth.sso/DS/SWITCHaai
urn:mace:organization2:providerID, Example Organization 2, /Shibboleth.sso/WAYF/SWITCHaai';
} else {
echo $config->organization_selection;
echo htmlentities($config->organization_selection);
}
?>
</textarea>
@@ -110,7 +110,7 @@ urn:mace:organization2:providerID, Example Organization 2, /Shibboleth.sso/WAYF/
<td>
<input name="login_name" type="text" size="30" value="<?php
if ( isset($config->login_name) and !empty($config->login_name)){
echo $config->login_name;
echo htmlentities($config->login_name);
} else {
echo 'Shibboleth Login';
}
+1
View File
@@ -14,6 +14,7 @@
}
redirect($urltogo);
}
$pluginconfig = get_config('auth/shibboleth');
+11 -4
View File
@@ -56,13 +56,20 @@ httpsrequired();
$selectedIdP = $_POST['idp'];
set_saml_cookie($selectedIdP);
// Redirect to SessionInitiator with providerId as argument
// Redirect to SessionInitiator with entityID as argument
if (isset($IdPs[$selectedIdP][1]) && !empty($IdPs[$selectedIdP][1])){
header('Location: '.$IdPs[$selectedIdP][1].'?providerId='. urlencode($selectedIdP) .'&target='. urlencode($CFG->wwwroot.'/auth/shibboleth/index.php'));
// For Shibbolet 1.x Service Providers
header('Location: '.$IdPs[$selectedIdP][1].'?providerId='. urlencode($selectedIdP) .'&target='. urlencode($CFG->wwwroot.'/auth/shibboleth/index.php'));
// For Shibbolet 2.x Service Providers
// header('Location: '.$IdPs[$selectedIdP][1].'?entityID='. urlencode($selectedIdP) .'&target='. urlencode($CFG->wwwroot.'/auth/shibboleth/index.php'));
} else {
// TODO: This has to be changed to /Shibboleth.sso/DS?entityId= for
// Shibbolet 2.x sometime...
// For Shibbolet 1.x Service Providers
header('Location: /Shibboleth.sso?providerId='. urlencode($selectedIdP) .'&target='. urlencode($CFG->wwwroot.'/auth/shibboleth/index.php'));
// For Shibboleth 2.x Service Providers
// header('Location: /Shibboleth.sso/DS?entityID='. urlencode($selectedIdP) .'&target='. urlencode($CFG->wwwroot.'/auth/shibboleth/index.php'));
}
} elseif (isset($_POST['idp']) && !isset($IdPs[$_POST['idp']])) {
$errormsg = get_string('auth_shibboleth_errormsg', 'auth');
+1 -1
View File
@@ -123,7 +123,7 @@
raise_memory_limit("192M");
//Call the form, depending the step we are
if (!$launch) {
if (!$launch or !data_submitted() or !confirm_sesskey()) {
// if we're at the start, clear the cache of prefs
if (isset($SESSION->backupprefs[$course->id])) {
unset($SESSION->backupprefs[$course->id]);
+22 -1
View File
@@ -4,6 +4,9 @@
//Check login
require_login();
// Init backupuserinfo
$backupuserinfo = false;
if (!empty($course->id)) {
if (!has_capability('moodle/site:backup', get_context_instance(CONTEXT_COURSE, $course->id))) {
if (empty($to)) {
@@ -14,10 +17,12 @@
}
}
}
$backupuserinfo = has_capability('moodle/backup:userinfo', get_context_instance(CONTEXT_COURSE, $course->id));
} else {
if (!has_capability('moodle/site:backup', get_context_instance(CONTEXT_SYSTEM))) {
error("You need to be an admin user to use this page.", "$CFG->wwwroot/login/index.php");
}
$backupuserinfo = has_capability('moodle/backup:userinfo', get_context_instance(CONTEXT_SYSTEM));
}
@@ -45,6 +50,7 @@
<form id="form" method="post" action="backup.php">
<table cellpadding="5" style="text-align:center;margin-left:auto;margin-right:auto">
<?php
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />';
if (empty($to)) {
//Now print the Backup Name tr
@@ -65,6 +71,16 @@
}
// Re-enforce 'moodle/site:backup' at system context to be able to backup all users
if ($backupprefs->backup_users == 0 and !has_capability('moodle/site:backup', get_context_instance(CONTEXT_SYSTEM))) {
$backupprefs->backup_users = 1; // users => course
}
// Re-enforce moodle/backup:userinfo capability
if (!$backupuserinfo) {
$backupprefs->backup_users = 2; // users => none
}
//Here we check if backup_users = None. Then, we switch off every module
//user info, user_files, logs and exercises, workshop and messages & blogs backups. A Warning is showed to
//inform the user.
@@ -117,7 +133,12 @@
$backupprefs->backup_blogs = 0;
$backupprefs->backuproleassignments = array();
print_simple_box("<font color=\"red\">".get_string("backupnoneusersinfo")."</font>","center", "70%", '', "20", "noticebox");
if ($backupuserinfo) { // Based on perms, decide the msg to show
$nousersmsgtoshow = 'backupnoneusersinfo';
} else {
$nousersmsgtoshow = 'backupmissinguserinfoperms';
}
print_simple_box("<font color=\"red\">".get_string($nousersmsgtoshow)."</font>","center", "70%", '', "20", "noticebox");
echo "<hr />";
}
+30 -17
View File
@@ -4,6 +4,9 @@
//Check login
require_login();
//Init backupuserinfo
$backupuserinfo = false;
if (!empty($course->id)) {
if (!has_capability('moodle/site:backup', get_context_instance(CONTEXT_COURSE, $course->id))) {
if (empty($to)) {
@@ -14,10 +17,12 @@
}
}
}
$backupuserinfo = has_capability('moodle/backup:userinfo', get_context_instance(CONTEXT_COURSE, $course->id));
} else {
if (!has_capability('moodle/site:backup', get_context_instance(CONTEXT_SYSTEM))) {
error("You need to be an admin user to use this page.", "$CFG->wwwroot/login/index.php");
}
$backupuserinfo = has_capability('moodle/backup:userinfo', get_context_instance(CONTEXT_SYSTEM));
}
//Check site
@@ -118,6 +123,8 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
<form id="form1" method="post" action="backup.php">
<table cellpadding="5" style="margin-left:auto;margin-right:auto;">
<?php
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />';
/// Acummulator for hidden options and proper XHTML output
$hidden_options = '';
//Now, check modules and info and show posibilities
@@ -130,12 +137,16 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
echo "<a href=\"javascript:void(0);\" onclick=\"selectItemInCheckboxByName('form1', 'backup_', true);\">". get_string("all")."</a>/";
echo "<a href=\"javascript:void(0);\" onclick=\"selectItemInCheckboxByName('form1', 'backup_', false);\">". get_string("none")."</a>";
echo "</td>";
echo "<td align=\"right\">";
echo '<b>&nbsp;</b>';
echo "</td><td>";
echo "<a href=\"javascript:void(0);\" onclick=\"selectItemInCheckboxByName('form1', 'backup_user_info_', true);\">". get_string("all")."</a>/";
echo "<a href=\"javascript:void(0);\" onclick=\"selectItemInCheckboxByName('form1', 'backup_user_info_', false);\">". get_string("none")."</a>";
echo "</td>";
if (empty($to) and $backupuserinfo) {
echo "<td align=\"right\">";
echo '<b>&nbsp;</b>';
echo "</td><td>";
echo "<a href=\"javascript:void(0);\" onclick=\"selectItemInCheckboxByName('form1', 'backup_user_info_', true);\">". get_string("all")."</a>/";
echo "<a href=\"javascript:void(0);\" onclick=\"selectItemInCheckboxByName('form1', 'backup_user_info_', false);\">". get_string("none")."</a>";
echo "</td>";
} else {
echo "<td colspan=\"2\">&nbsp;</td>";
}
echo "</tr>";
echo "<tr><td colspan=\"4\"><hr /></td></tr>";
$currentrow = 0;
@@ -159,7 +170,7 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
echo "</td><td align=\"right\">&nbsp;";
echo "</td><td>";
$var = "backup_user_info_".$modname;
if (empty($to)) {
if (empty($to) and $backupuserinfo) {
$backup_user_options[0] = get_string("withoutuserdata");
$backup_user_options[1] = get_string("withuserdata");
//choose_from_menu($backup_user_options, $var, $$var, "");
@@ -179,7 +190,7 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
echo '</td><td align="right">&nbsp;';
$var = 'backup_user_info_'.$modname.'_instance_'.$instance->id;
$$var = optional_param($var,1);
if (empty($to)) {
if (empty($to) and $backupuserinfo) {
print_checkbox($var,$$var,$$var,get_string('userdata'),'','this.form.elements[\'backup_user_info_'.$modname.'\'].checked=1;');
} else {
echo '<input type="hidden" name="'.$var.'" value="0" />';
@@ -207,23 +218,25 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
$hidden_options .= '<input type="hidden" name="backup_metacourse" value="0" />';
}
if (empty($to)) {
if (empty($to) and $backupuserinfo) {
//Now print the Users tr
echo "<tr>";
echo "<td align=\"right\" colspan=\"2\"><b>";
echo '<label for="menubackup_users">'.get_string ("users").'</label>';
echo "</b></td><td colspan=\"2\">";
$user_options[0] = get_string("all");
if (has_capability('moodle/site:backup', get_context_instance(CONTEXT_SYSTEM))) {
$user_options[0] = get_string("all");
}
$user_options[1] = get_string("course");
$user_options[2] = get_string("none");
choose_from_menu($user_options, "backup_users", $backup_users, "");
echo "</td></tr>";
}
else {
$hidden_options .= '<input type="hidden" name="backup_users" value="0" />';
$hidden_options .= '<input type="hidden" name="backup_users" value="2" />';
}
if (empty($to)) {
if (empty($to) and $backupuserinfo) {
//Now print the Logs tr
echo "<tr>";
echo "<td align=\"right\" colspan=\"2\"><b>";
@@ -238,7 +251,7 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
$hidden_options .= '<input type="hidden" name="backup_logs" value="0" />';
}
if (empty($to)) {
if (empty($to) and $backupuserinfo) {
//Now print the User Files tr
echo "<tr>";
echo "<td align=\"right\" colspan=\"2\"><b>";
@@ -278,7 +291,7 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
}
// do you want grade histories to be backed up?
if (empty($CFG->disablegradehistory)) {
if (empty($to) and $backupuserinfo and empty($CFG->disablegradehistory)) {
echo "<tr>";
echo "<td align=\"right\" colspan=\"2\"><b>";
echo '<label for="menubackup_gradebook_history">'.get_string ('gradebookhistories', 'grades').'</label>';
@@ -291,7 +304,7 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
$hidden_options .= '<input type="hidden" name="backup_gradebook_history" value="0" />';
}
if (empty($to) && $course->id == SITEID) {
if (empty($to) and $backupuserinfo and $course->id == SITEID) {
//If we are in a SITEID backup print the Messages tr
echo "<tr>";
echo "<td align=\"right\" colspan=\"2\"><b>";
@@ -306,7 +319,7 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
$hidden_options .= '<input type="hidden" name="backup_messages" value="0" />';
}
if (empty($to) && $course->id == SITEID && !empty($CFG->bloglevel)) {
if (empty($to) and $backupuserinfo and $course->id == SITEID and !empty($CFG->bloglevel)) {
//If we are in a SITEID backup and blogs are enabled print the Blogs tr
echo "<tr>";
echo "<td align=\"right\" colspan=\"2\"><b>";
@@ -323,7 +336,7 @@ function selectItemInCheckboxByName(formId, checkName, checked ) {
}
//Now print a place to select which role assignments to back up.
if (empty($to)) {
if (empty($to) and $backupuserinfo) {
//Line
echo "<tr><td colspan=\"4\"><hr /></td></tr>\n";
+7 -20
View File
@@ -85,7 +85,6 @@
//Returns every needed user (participant) in a course
//It uses the xxxx_get_participants() function
//plus users needed to backup scales.
//Also it search for users having messages and
//users having blogs
//WARNING: It returns only NEEDED users, not every
@@ -124,21 +123,6 @@
}
}
//Now, add scale users (from site and course scales)
//Get users
$scaleusers = get_records_sql("SELECT DISTINCT userid,userid
FROM {$CFG->prefix}scale
WHERE courseid = '0' or courseid = '$courseid'");
//Add scale users to results
if ($scaleusers) {
foreach ($scaleusers as $scaleuser) {
//If userid != 0
if ($scaleuser->userid != 0) {
$result[$scaleuser->userid]->id = $scaleuser->userid;
}
}
}
//Now, add message users if necessary
if ($includemessages) {
include_once("$CFG->dirroot/message/lib.php");
@@ -184,7 +168,7 @@
// get all users with moodle/course:view capability, this will include people
// assigned at cat level, or site level
// but it should be ok if they have no direct assignment at course, mod, block level
return get_users_by_capability(get_context_instance(CONTEXT_COURSE, $courseid), 'moodle/course:view');
return get_users_by_capability(get_context_instance(CONTEXT_COURSE, $courseid), 'moodle/course:view', '', '', '', '', '', '', false);
}
//Returns all users ids (every record in users table)
@@ -1303,7 +1287,11 @@
fwrite ($bf,full_tag("POLICYAGREED",4,false,$user->policyagreed));
fwrite ($bf,full_tag("DELETED",4,false,$user->deleted));
fwrite ($bf,full_tag("USERNAME",4,false,$user->username));
fwrite ($bf,full_tag("PASSWORD",4,false,$user->password));
// Prevent user passwords in backup files unless
// $CFG->includeuserpasswordsinbackup is defined. MDL-20838
if (!empty($CFG->includeuserpasswordsinbackup)) {
fwrite ($bf,full_tag("PASSWORD",4,false,$user->password));
}
fwrite ($bf,full_tag("IDNUMBER",4,false,$user->idnumber));
fwrite ($bf,full_tag("FIRSTNAME",4,false,$user->firstname));
fwrite ($bf,full_tag("LASTNAME",4,false,$user->lastname));
@@ -1329,7 +1317,6 @@
fwrite ($bf,full_tag("LASTLOGIN",4,false,$user->lastlogin));
fwrite ($bf,full_tag("CURRENTLOGIN",4,false,$user->currentlogin));
fwrite ($bf,full_tag("LASTIP",4,false,$user->lastip));
fwrite ($bf,full_tag("SECRET",4,false,$user->secret));
fwrite ($bf,full_tag("PICTURE",4,false,$user->picture));
fwrite ($bf,full_tag("URL",4,false,$user->url));
fwrite ($bf,full_tag("DESCRIPTION",4,false,$user->description));
@@ -2354,7 +2341,7 @@
// This way, backup contents will be neutral and independent of slasharguments configuration. MDL-18799
// Based in $unicoderegexp, decide the regular expression to use
if ($unicoderegexp) { //We can use unicode modifiers
$search = '/(\$@FILEPHP@\$)((?:(?:\/|%2f|%2F))(?:(?:\([-;:@#&=\pL0-9\$~_.+!*\',]*?\))|[-;:@#&=\pL0-9\$~_.+!*\',]|%[a-fA-F0-9]{2}|\/)*)?(\?(?:(?:(?:\([-;:@#&=\pL0-9\$~_.+!*\',]*?\))|[-;:@#&=?\pL0-9\$~_.+!*\',]|%[a-fA-F0-9]{2}|\/)*))?(?<![,.;])/';
$search = '/(\$@FILEPHP@\$)((?:(?:\/|%2f|%2F))(?:(?:\([-;:@#&=\pL0-9\$~_.+!*\',]*?\))|[-;:@#&=\pL0-9\$~_.+!*\',]|%[a-fA-F0-9]{2}|\/)*)?(\?(?:(?:(?:\([-;:@#&=\pL0-9\$~_.+!*\',]*?\))|[-;:@#&=?\pL0-9\$~_.+!*\',]|%[a-fA-F0-9]{2}|\/)*))?(?<![,.;])/u';
} else { //We cannot ue unicode modifiers
$search = '/(\$@FILEPHP@\$)((?:(?:\/|%2f|%2F))(?:(?:\([-;:@#&=a-zA-Z0-9\$~_.+!*\',]*?\))|[-;:@#&=a-zA-Z0-9\$~_.+!*\',]|%[a-fA-F0-9]{2}|\/)*)?(\?(?:(?:(?:\([-;:@#&=a-zA-Z0-9\$~_.+!*\',]*?\))|[-;:@#&=?a-zA-Z0-9\$~_.+!*\',]|%[a-fA-F0-9]{2}|\/)*))?(?<![,.;])/';
}
+2 -2
View File
@@ -427,7 +427,7 @@
</SUMMARY>
<ALLTEXT></ALLTEXT>
<POPUP></POPUP>
<OPTIONS>frame</OPTIONS>
<OPTIONS></OPTIONS>
<TIMEMODIFIED>1094240775</TIMEMODIFIED>
</MOD>
</xsl:template>
@@ -512,7 +512,7 @@
<xsl:value-of select="DESCRIPTION/TEXT"/>
</ALLTEXT>
<POPUP></POPUP>
<OPTIONS>frame</OPTIONS>
<OPTIONS></OPTIONS>
<TIMEMODIFIED>1094240775</TIMEMODIFIED>
</MOD>
</xsl:template>

Some files were not shown because too many files have changed in this diff Show More