Compare commits

..

2066 Commits

Author SHA1 Message Date
Eloy Lafuente (stronk7) 698ecafa61 Moodle 2.2.5 release 2012-09-09 16:22:00 +02:00
AMOS bot eca810808c Merge branch 'MOODLE_22_STABLE' into install_22_STABLE 2012-09-08 00:34:46 +00:00
Eloy Lafuente (stronk7) 555112a5ca weekly release 2.2.4+ 2012-09-07 02:38:09 +02:00
AMOS bot 986343b8cf Automatically generated installer lang files 2012-09-07 00:35:13 +00:00
Eloy Lafuente (stronk7) 2376d7125b Merge branch 'install_22_STABLE' of git://git.moodle.cz/moodle-install into MOODLE_22_STABLE 2012-09-07 02:18:30 +02:00
Eloy Lafuente (stronk7) 09cca2d7aa Merge branch 'MDL-34945-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-09-06 20:12:22 +02:00
Eloy Lafuente (stronk7) e7920065ac Merge branch 'MDL-34985_m22' of git://github.com/merrill-oakland/moodle into MOODLE_22_STABLE 2012-09-06 20:08:05 +02:00
Eloy Lafuente (stronk7) 222abcddd4 Merge branch 'MDL-35034-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-09-06 01:18:54 +02:00
Eloy Lafuente (stronk7) dd0e60cb3d MDL-29662 quiz overrides: use proper course value (was php notice). 2012-09-05 18:02:35 +02:00
Eloy Lafuente (stronk7) da91c22212 Merge branch 'w36_MDL-35077_m22_stats' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-09-05 13:13:53 +02:00
Petr Škoda 9a9d65a733 MDL-35077 do not show link to system stats report if stats disabled 2012-09-05 10:02:36 +02:00
Aparup Banerjee 8646d0aecb MDL-26504 blog: fixed SQL to add explicit casting 2012-09-05 10:41:29 +08:00
Eloy Lafuente (stronk7) 70206bbda8 MDL-34997 youtube filter: keep dimensions working for shortened urls 2012-09-05 01:17:30 +02:00
Eloy Lafuente (stronk7) d84df9f5a6 Merge branch 'MDL-34997-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-09-05 00:53:50 +02:00
Aparup Banerjee 7a5d23ea32 Merge branch 'wip-mdl-34537-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-09-04 17:33:28 +08:00
Frederic Massart 1461ecc0e4 MDL-34945 Repository: Creating an instance requires the user to have the permission to view it 2012-09-04 16:17:11 +08:00
Andrew Davis 63fbf99e07 MDL-26504 blog: added upgrade code to remove orphan external blog posts
Conflicts:
	lib/db/upgrade.php
	version.php

Conflicts:
	version.php
2012-09-04 14:04:47 +08:00
Andrew Davis 89ce191be2 MDL-26504 blog: made it delete external blog posts when the external blog is deleted 2012-09-04 14:03:14 +08:00
Tim Lock 32a0775cf9 MDL-35092: Add proxy support to enrol/paypal IPN 2012-09-04 10:58:08 +08:00
Eloy Lafuente (stronk7) e20371b316 Merge branch 'wip-mdl-34606-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-09-04 02:09:37 +02:00
Eloy Lafuente (stronk7) 81baf0d5f3 Merge branch 'MDL-34633-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-09-04 01:54:23 +02:00
Eloy Lafuente (stronk7) befce5863d Merge branch 'MDL-29662_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-09-04 01:14:33 +02:00
Eloy Lafuente (stronk7) 948835483a Merge branch 'MDL-27818_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-09-04 01:08:07 +02:00
Eloy Lafuente (stronk7) 3db989d41e Merge branch 'MDL-33306_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-09-04 00:31:23 +02:00
Eloy Lafuente (stronk7) 81f6a19377 Merge branch 'MDL-33812-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-09-04 00:20:38 +02:00
Eloy Lafuente (stronk7) 91f65d0ab4 Merge branch 'w36_MDL-34097_m22_environment' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-09-04 00:02:01 +02:00
Eloy Lafuente (stronk7) 7b3a9020e6 Merge branch 'MDL-28346-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-09-03 20:02:33 +02:00
Eloy Lafuente (stronk7) 06d5f84d71 Merge branch 'w36_MDL-35077_m22_stats' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-09-03 17:54:45 +02:00
Eloy Lafuente (stronk7) 8918cf7b0d Merge branch 'MDL-35133_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-09-03 17:48:12 +02:00
Eloy Lafuente (stronk7) d7831c74be Merge branch 'w36_MDL-35145_m22_guestdelete' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-09-03 16:18:33 +02:00
Aparup Banerjee dc5736f402 Merge branch 'MDL-35151_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-09-03 19:24:14 +08:00
Aparup Banerjee 6915eff9b1 Merge branch 'MDL-35180_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-09-03 17:39:13 +08:00
Jean-Philippe Gaudreau 1a73d34c10 MDL-34997 - Allow shortened url youtu.be and y2u.be for Youtube filter 2012-09-03 14:10:24 +08:00
Frederic Massart 4516e7204a MDL-34633 Repository: Flickr supports small images
Conflicts:

	repository/flickr/lib.php
	repository/flickr_public/lib.php
2012-09-03 14:10:15 +08:00
Frederic Massart 934de9687e MDL-35101 Repository: Public Flickr fails when the picture has no license 2012-09-03 14:10:15 +08:00
Frederic Massart 06aa3ac19f MDL-28346 Backup: Restore task can log results 2012-09-03 14:09:55 +08:00
Frederic Massart aae03dd4d4 MDL-28346 Backup: Backup does not fail when a file is missing
Conflicts:

	backup/util/ui/backup_ui_stage.class.php
2012-09-03 14:09:55 +08:00
Frederic Massart 5ef242f4a4 MDL-28346 Backup: Restore does not fail when a file is missing
Conflicts:

	backup/util/dbops/restore_dbops.class.php
2012-09-03 14:09:55 +08:00
Frederic Massart b3ab3bd054 MDL-28346 Backup: Added new status 'warning' for backup result 2012-09-03 14:09:55 +08:00
Frederic Massart 1e12baddde MDL-35034 Repository: Google Docs does not fail when download is restricted
Conflicts:

	lib/googleapi.php
	repository/googledocs/lib.php
2012-09-03 14:09:36 +08:00
Frederic Massart 0bcbc76b25 MDL-33812 Backup: Added some upgrade information about the changes 2012-09-03 14:09:26 +08:00
Frederic Massart 85616ca24f MDL-33812 Backup: Revert MDL-33521
Conflicts:

	backup/util/helper/backup_cron_helper.class.php
2012-09-03 14:09:26 +08:00
Frederic Massart cdf58e680c MDL-33812 Backup: Respect of backup_auto_keep 2012-09-03 14:09:25 +08:00
Sam Hemelryk e401131606 Merge branch 'MDL-31496_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-09-03 12:20:16 +12:00
Sam Hemelryk ead307f537 MDL-26822 user: Minor improvements post integration 2012-09-03 11:41:27 +12:00
Sam Hemelryk c0941ec996 Merge branch 'MDL-26882-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-09-03 11:25:57 +12:00
Sam Hemelryk 926fffa146 Merge branch 'wip-MDL-34318-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-09-03 10:12:15 +12:00
Sam Hemelryk 1ac4b314f6 Merge branch 'MDL-30020c-22' of git://github.com/srynot4sale/moodle into MOODLE_22_STABLE 2012-09-03 09:52:12 +12:00
Mary Evans 19685dbf5e MDL-35180 theme_afterburner: fixes IE9 compatibility view bug 2012-09-02 16:35:09 +01:00
Petr Škoda cbff07faef MDL-34097 keep current requirements for Moodle 2.4 2012-09-02 11:55:24 +02:00
AMOS bot d25a550db9 Automatically generated installer lang files 2012-09-02 00:32:47 +00:00
Mary Evans df1a0756ab MDL-35151 theme_anomaly: removed CSS selectors (.forumpost .content p) from style/general.php thus allowing YUI CSS to style paragraphs as normal. 2012-09-01 23:29:29 +01:00
Petr Škoda d6e2946e19 MDL-35145 add extra delete_user() parameter validation
We do not want to delete local admins and guest account, we need to validate the supplied parameter is valid $user record and refetch it from database.
2012-09-01 14:23:55 +02:00
Petr Škoda b06c820df6 MDL-35077 fix stats report navigation links 2012-08-31 14:18:48 +02:00
Eloy Lafuente (stronk7) 8f3c8e78a9 weekly release 2.2.4+ 2012-08-31 11:35:03 +02:00
Eloy Lafuente (stronk7) 5fcba2f9c8 Merge branch 'install_22_STABLE' of git://git.moodle.cz/moodle-install into MOODLE_22_STABLE 2012-08-31 11:27:45 +02:00
Eloy Lafuente (stronk7) acb539b1c9 MDL-35147 lesson qformat import: Dirty hack to support array questiontext structures. 2012-08-31 03:00:49 +02:00
Tim Hunt 228533be80 MDL-27818 question bank: multilang category names don't work. 2012-08-30 22:48:50 +01:00
Tim Hunt b8c475d631 MDL-35133 accesslib: context_module::get_context_name should format_string
Otherwise activites with multilang names are displayed badly.
2012-08-30 22:47:33 +01:00
Eloy Lafuente (stronk7) 165bfe5454 Merge branch 'MDL-35147_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-30 20:12:15 +02:00
Eloy Lafuente (stronk7) ce754f10c6 MDL-31244, MDL-25063 there is no phpuni support in 22_STABLE 2012-08-30 18:34:25 +02:00
Eloy Lafuente (stronk7) 049b47ca09 Merge branch 'MDL-31244_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-30 18:32:20 +02:00
Tim Hunt 22462fba4f MDL-35147 lesson: fix regression from MDL-25492.
I really wish someone would fix lesson to use the question bank.
2012-08-30 13:12:13 +01:00
Ankit Agarwal 30de036731 MDL-26882 profile: Applying cap check (site:viewuseridentity) to email field in user profile 2012-08-30 15:38:25 +08:00
Ankit Agarwal 952fef7299 MDL-26882 profile: Apllying the cap check site:viewuseridentity to user profile 2012-08-30 15:38:22 +08:00
Adrian Greeve 09332feae8 MDL-32108 - navigation - After logging in the user is directed to mysite instead of site home.
Thanks to lurii Kucherov for this patch.
2012-08-30 12:14:55 +08:00
Tim Hunt fe470a231f MDL-29662 quiz overrides: update dates during course reset.
Also, fix duplicate SQL clause in similar code in lib,
and fix error when saving overrides.
2012-08-29 18:43:25 +01:00
Tim Hunt ee91ffedb3 MDL-33306 qtype multichoice: fix display of right answer.
Also, fix  higlighing of last edited question in the qeustion bank, when
it co-incides with a grey row.
2012-08-29 17:48:16 +01:00
Eloy Lafuente (stronk7) 06606caf71 Merge branch 'wip-mdl-30121-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-08-29 12:15:29 +02:00
Aparup Banerjee 12f57ec9c3 Merge branch 'wip-mdl-31623-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-08-29 16:57:20 +08:00
Aparup Banerjee 2335d65949 Merge branch 'MDL-31959_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-29 15:34:06 +08:00
Aparup Banerjee 32b8a7bcf0 Merge branch 'wip-mdl-34040-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-08-29 14:45:44 +08:00
Aparup Banerjee 6a4d3ec290 Merge branch 'MDL-34952_22' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-08-29 13:27:23 +08:00
Eloy Lafuente (stronk7) 90241eaaf8 Merge branch 'MDL-29598_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-08-28 23:24:11 +02:00
Eloy Lafuente (stronk7) 6e8d3ac1bf Merge branch 'MDL-25492_22' of git://github.com/jmvedrine/moodle into MOODLE_22_STABLE 2012-08-28 20:12:48 +02:00
Eloy Lafuente (stronk7) 1c37f8865d Merge branch 'MDL-31837_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-28 20:10:43 +02:00
Tim Hunt 9345e7bfb8 MDL-31837 qtype_numerical: fix old-style unit tests. 2012-08-28 15:54:17 +01:00
Aparup Banerjee 56d47558ff Merge branch 'MDL-31837_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-28 17:04:48 +08:00
Aparup Banerjee 0639b9ca1a Merge branch 'MDL-32464_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-28 16:55:14 +08:00
Adrian Greeve 6117966d3b MDL-34318 - blog - Removal of blog associations from the database on delete.
Thanks to Erik Lundberg for this patch.
2012-08-28 15:59:21 +08:00
Jean-Michel Vedrine db6bac8b16 MDL25492_22 error in version and requires changed by mistake 2012-08-28 08:06:13 +02:00
Aaron Barnes c186374c3b MDL-30020 blocks/completion: Some criteria do not display complete
Also includes a spruce up of the code
2012-08-28 11:46:26 +12:00
Eloy Lafuente (stronk7) 4df4c677bd Merge branch 'MDL-34406_fullname_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-08-27 20:04:16 +02:00
Eloy Lafuente (stronk7) 3dd9961f44 Merge branch 'MDL-34430_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-27 18:51:25 +02:00
Eloy Lafuente (stronk7) 006052e19c Merge branch 'MDL-34993_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-27 18:36:19 +02:00
Eloy Lafuente (stronk7) 31970a66a8 Merge branch 'm22_MDL-34994' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-08-27 18:23:45 +02:00
Eloy Lafuente (stronk7) e5783fd132 Merge branch 'MDL-35026_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-27 17:54:55 +02:00
Eloy Lafuente (stronk7) 70c160f27d Merge branch 'MDL-35003_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-27 17:51:41 +02:00
Eloy Lafuente (stronk7) c06b18a475 Merge branch 'MDL-35023_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-27 16:34:02 +02:00
Eloy Lafuente (stronk7) aa81647c4c Merge branch 'MDL-35055_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-27 16:17:06 +02:00
Aparup Banerjee ad24b3a320 Merge branch 'MDL-31633-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-08-27 17:26:53 +08:00
Rajesh Taneja 3851c53f76 MDl-34606 Administration: id for clear button is set properly, and disabled on page load 2012-08-27 15:16:29 +08:00
Rajesh Taneja f731735624 MDL-34537 Enrolments: Assign alternative odd and even class to manual enrol popup 2012-08-27 14:20:06 +08:00
Aparup Banerjee f76fe80874 Merge branch 'MDL-34996_22' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-08-27 13:48:03 +08:00
AMOS bot 9bb3b99e56 Automatically generated installer lang files 2012-08-27 00:32:48 +00:00
Aaron Barnes 40efa28d9e MDL-32386 completion: Fix incorrect method parameters 2012-08-27 11:54:41 +12:00
Andreas Grabs fb2cbe2466 MDL-34996 - Improve help text for Feedback dependancies 2012-08-24 23:04:07 +02:00
Andreas Grabs 20af48348b MDL-34952 - change get_info() to public access 2012-08-24 21:53:45 +02:00
Tim Hunt 1600029de9 MDL-32464 qformat multianswer: fix missing include.
Also, add a sample file that can be used for testing, and add a unit
test to verify this is working.
2012-08-24 16:58:30 +01:00
Tim Hunt 170130d756 MDL-35055 question import: slight error with the Match grades option.
Even in the 'Error if grade not listed case', it was applying a small
tolerance. In the case of a fuzzy match, it was returning the inexact
grade from the import file, rather than the precise grade that Moodle
was expecting.

That causes problems when the editing form is displayed, because the
value from the database does not match any of the available options, so
the grade is changed to 0%.
2012-08-24 15:46:12 +01:00
Jean-Michel Vedrine 1d23052a60 MDL25-492 Blackboard V6+ question import is broken 2012-08-24 14:06:56 +02:00
Ankit Agarwal 2fc41b1ccd MDL-31633 grades: Fixing incorrect redirect when trying to edit grade letters from admin settings 2012-08-24 14:59:01 +08:00
Tim Lock 91de7cb26e MDL-31623 Course: Course reset bypass modules, which are removed 2012-08-24 11:00:16 +08:00
Rajesh Taneja e0b1515fde MDL-30121 Assignment: Draft submission files will not be included in zip, if activity is open 2012-08-24 10:55:09 +08:00
David Monllao c52a364c27 MDL-29598 backup Avoid possible future duplicate grade letters
More info in restore_activity_grades_structure_step->process_grade_letter() comments
2012-08-24 08:56:15 +08:00
Justin Filip 481415635f MDL-29598 backup Check whether a grade_letters record exists before trying to insert a new record 2012-08-24 08:56:14 +08:00
Tim Hunt 4458b51cc4 MDL-34430 qtype essay: upgrade from MDL-31393 needs a progress bar. 2012-08-23 20:04:01 +01:00
Tim Hunt 1482c2b20b MDL-35026 qtype multianswer: misnamed string.
AMOS BEGIN
 MOV [questionnadded,qtype_multianswer],[questionsadded,qtype_multianswer]
AMOS END
2012-08-23 19:02:16 +01:00
Tim Hunt e60c61e570 MDL-35023 qtype calculated: fix strict syntax problem. 2012-08-23 19:01:57 +01:00
Tim Hunt d9c2ecc342 MDL-35003 questions: remove stray full stop after correct answer.
In a few situations, this full stop makes things a bit more grammatical,
but there are many other situations where it causes problems. So, on
balance we will remove it.
2012-08-23 19:01:39 +01:00
Tim Hunt cf6b831723 MDL-34993 questions: convert numeric fields to float on load.
NUMBER(X,Y) typically come back from the DB as strings. If you don't
convert them to float, then when you display them, it appears as
1.0000000, which is not normally what you want.

Also, increase the size of the field on the edit form, so if you
question does have default mark 0.1234567, you can see that!
2012-08-23 19:01:21 +01:00
Tim Hunt 6d24c26b52 MDL-31837 numerical tolerance: better handling of very
small tolerances.

The changes between Moodle 1.9 and 2.1 made the marking of very small
answers like 10^-20 almost impossible. This change fixes it.

This fix is almost entirely due the the careful research of Pierre
Pichet, who carefully testing various proposals, and worked out that
this one seemed best.
2012-08-23 18:59:11 +01:00
Tim Hunt 5a058f33a3 MDL-31244, MDL-25063 algebra filter: fix common false positives.
There are two well-known cases where the algebra filter messes up input
that is obviously not meant for the algebra filter:

1. Copy and paste of unified diffs.

2. @@PLUGINFILE@@ tokens in the HTML that are due to be replaced by the
files API.

This fix detects these two cases, and just stops the algebra filter from
replacing them.
2012-08-23 18:58:54 +01:00
Eloy Lafuente (stronk7) 4ff0f02857 weekly release 2.2.4+ 2012-08-23 19:24:57 +02:00
Eloy Lafuente (stronk7) 956592f590 Merge branch 'install_22_STABLE' of git://git.moodle.cz/moodle-install into MOODLE_22_STABLE 2012-08-23 19:18:56 +02:00
Eloy Lafuente (stronk7) b6c52b4740 MDL-31957 Course reset: Add missing global 2012-08-23 02:13:08 +02:00
Dan Poltawski 6ab7e3a3d5 MDL-34870 enrol_cohort - don't need to do useless work 2012-08-22 10:03:40 +08:00
Adam Olley 892600868b MDL-34870: Prevent cohort enrol sync when updating course record 2012-08-22 10:03:34 +08:00
Dan Poltawski faf8ef6f04 Merge branch 'MDL-34733_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-22 09:16:32 +08:00
Eloy Lafuente (stronk7) d90e2237fe Merge branch 'wip-mdl-32759-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-08-22 02:34:35 +02:00
Eloy Lafuente (stronk7) b1dbeb8dff MDL-34702 quiz DB: fix non-matching savepoint 2012-08-22 02:28:02 +02:00
Eloy Lafuente (stronk7) 407c0fbcd6 Merge branch 'MDL-34702_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-22 02:12:11 +02:00
Dan Marsden b33d969d91 MDL-34994 mod_choice: fix restore of user responses - use correct optionid 2012-08-22 09:05:07 +12:00
Tim Hunt bfa34d8de3 MDL-34733 quiz 'secure' mode: finish review link broken in previews
Here, we use a nasty hack to fix the problem on stable branches without
an API change.
2012-08-21 12:12:11 +01:00
Juho Viitasalo 83d8c6b290 Changed two notification to output correctly 2012-08-21 15:38:27 +08:00
Dan Poltawski 4263e87000 Merge branch 'MDL-34569_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-21 12:35:23 +08:00
Petr Škoda adf397d88a MDL-34901 fix user login times handling 2012-08-21 12:02:48 +08:00
Dan Poltawski 08d2cbe451 Merge branch 'MDL-34742-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-08-21 11:59:38 +08:00
Dan Poltawski 06d9aa79b8 MDL-34808 qformat_examview - increment version 2012-08-21 11:06:23 +08:00
Dan Poltawski 6532971105 Merge branch 'MDL-34808_22' of git://github.com/jmvedrine/moodle into MOODLE_22_STABLE 2012-08-21 11:01:02 +08:00
David Monllao a0e94952d0 MDL-31496 mod_data Replacing inline styles for CSS classes in templates and browse view 2012-08-21 10:50:08 +08:00
David Monllao e8e8e49345 MDL-31496 mod_data Replacing inline styles for CSS classes in text inputs 2012-08-21 10:50:08 +08:00
David Monllao 42eb95f55c MDL-31496 mod_data Replacing inline styles for CSS classes in search containers 2012-08-21 10:50:08 +08:00
David Monllao 12f21bbb82 MDL-31496 mod_data Replacing inline styles for CSS classes in textarea elements 2012-08-21 10:50:08 +08:00
Dan Poltawski 3c061d5f83 MDL-34738 qformat_blackboard - increment version number 2012-08-21 09:53:59 +08:00
Jean-Michel Vedrine eeef6f2813 MDL-34738 qformat blackboard: blackboard format is broken
Conflicts:
	question/format/blackboard/format.php
2012-08-21 09:52:29 +08:00
Eloy Lafuente (stronk7) 0142a4b595 Merge branch 'MDL-29847_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-21 01:29:08 +02:00
Eloy Lafuente (stronk7) d60f8ef2db Merge branch 'MDL-31957-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-08-21 01:23:52 +02:00
Eric Merrill cae60d13ab MDL-34985 gradebook Fixing issue where default parent in Full View Add Category could be inconsistent.
Turns out the correct default was already computed, but was not being applied to the setting.
2012-08-20 17:14:07 -04:00
Eloy Lafuente (stronk7) de4c3e62cf Merge branch 'w34_MDL-34868_m22_gmapsv2' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-08-20 20:18:37 +02:00
Eloy Lafuente (stronk7) 85bd3fd899 Merge branch 'MDL-28531-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-08-20 16:28:38 +02:00
Eloy Lafuente (stronk7) 59e2a77596 Merge branch 'MDL-34529' of git://github.com/jasonilicic/moodle into MOODLE_22_STABLE 2012-08-20 13:59:55 +02:00
Nathan Mares 3ea975b6ba MDL-34372: Fix query in backup_cron_helper so it works on Postgres 8.3
Amended by stronk7@moodle.org to use uppercase SQL keywords.
2012-08-20 13:29:03 +02:00
Dan Poltawski 0863fbe14a Merge branch 'MDL-34779-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-08-20 15:59:06 +08:00
Michael de Raadt d62450f1dc MDL-34779 settings: Updating lang string corrposnding to the fullnamedisplay setting 2012-08-20 15:47:55 +08:00
Dan Poltawski 9549417007 Merge branch 'MDL-34957_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-08-20 14:23:35 +08:00
Rajesh Taneja 642603d40c MDL-34040 Filters: Added wmode=transparent for tinymce moodlemedia plugin, to avoid overlapping 2012-08-20 14:04:59 +08:00
Dan Poltawski 00fe761b3e Merge branch 'MDL-34535-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-08-20 12:07:02 +08:00
Dan Poltawski 2f7ca09572 Merge branch 'wip-MDL-31810-stable22' of git://github.com/phalacee/moodle into MOODLE_22_STABLE 2012-08-20 12:01:43 +08:00
Dan Poltawski b869f5d045 Merge branch 'wip-mdl-31734-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-08-20 11:57:27 +08:00
Dan Poltawski d2dccd8162 Merge branch 'MDL-30405-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-08-20 11:40:07 +08:00
Dan Poltawski 279c39f71d Merge branch 'MDL-30370_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-08-20 11:22:34 +08:00
Andrew Davis 6ebac8f0c1 MDL-34406 message: removed an unnecessary string creation 2012-08-20 10:17:30 +08:00
Petr Škoda 0df0664e4d MDL-34868 update deprecated Google maps API V2 key info 2012-08-19 18:22:13 +02:00
Jean-Michel Vedrine 4b4373ed3d MDL-34808 qformat examview Add phpunit tests to examview import format 2012-08-19 16:44:24 +02:00
Mary Evans a18539406c MDL-34957 theme_base: made small change to custommenu CSS in style/core.css to fix vertical arrow overlap in menu item 2012-08-19 01:49:34 +01:00
AMOS bot e212bd3aab Automatically generated installer lang files 2012-08-19 00:31:37 +00:00
Tim Hunt cb12522cea MDL-29847 question preview: garbage collect old preview data.
This adds cron code which looks for question previews that have not been
touched for more than 24 hours, and deletes them.

We try to delete previews immediately. For example if the user clicks
start again, then we immediately delete their previous preview. However,
we can't do that if they just close the preview window. Hence we need
some cron code to clean up old preview that have got left lying around.

Normally, this code will not have much to do, so it will be very fast,
so we can afford to run it every cron.

This has been implemented in such a way that in future it will be easy
to add other cron code to the question bank.

Sadly, to make this work on MySQL, we require a horrible hack in the
already hacky delete_usage_records_for_mysql function.
2012-08-17 10:53:05 +01:00
sam marshall eaead2aea8 MDL-31957 Course reset: Does not erase activity completion data 2012-08-17 10:41:14 +01:00
Frederic Massart 24d063dbb8 MDL-28531 Unit Tests: Fixed tests to work with core update 2012-08-17 14:46:04 +08:00
Frederic Massart a356a5f615 MDL-28531 Backup: Automated backups run when they are scheduled
Conflicts:

	lib/tests/backup_test.php
2012-08-17 14:46:03 +08:00
Frederic Massart e70c06f548 MDL-34648 Chat: No more errors when sentence begin with 'To' 2012-08-17 14:45:53 +08:00
Matt Meisberger 83985d7856 MDL-34742 - adding ability to move blocks into empty column 2012-08-17 14:45:20 +08:00
Rajesh Taneja bcc92a4cc7 MDL-31734 Course: removed unused sectiontitle string 2012-08-17 14:34:06 +08:00
Rajesh Taneja 617144c9ff MDL-26492 Lesson: lesson_get_user_grades will return grade of all users if userid=0 2012-08-17 14:31:27 +08:00
Rossiani Wijaya 6e8fad9d04 MDL-34569 - add label for search wiki input text 2012-08-17 11:30:37 +08:00
Rossiani Wijaya ee5a93f38e MDL-34569 accessibility compliance for wiki module: Add label for input text and select tag 2012-08-17 11:16:36 +08:00
AMOS bot 4f15cd4180 Automatically generated installer lang files 2012-08-17 00:31:52 +00:00
Tim Hunt 7fbbcdbdd8 MDL-34702 quiz DB: questiondecimalpoints has wrong default.
Thanks to the folks at UCL for tracking down this problem. It has only
hidden for 2+ years!

Conflicts:

	mod/quiz/db/install.xml
	mod/quiz/version.php
2012-08-16 17:41:14 +01:00
Eloy Lafuente (stronk7) 76c9fcc967 weekly release 2.2.4+ 2012-08-16 17:25:09 +02:00
Eloy Lafuente (stronk7) 2ebd272124 Merge branch 'install_22_STABLE' of git://git.moodle.cz/moodle-install into MOODLE_22_STABLE 2012-08-16 17:22:18 +02:00
Rossiani Wijaya e155365566 MDL-34563 - change string firstname to lastname and add accesshide class 2012-08-16 14:18:46 +08:00
Rossiani Wijaya afee2a7af2 MDL-34563 - removed double labeling and add label for input text 2012-08-16 14:18:37 +08:00
Aparup Banerjee 408dfe97b8 Merge branch 'MDL-34565_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-16 11:51:54 +08:00
Jason Fowler 7ceb8dacb7 MDL-31810 - Fixing unclosed DIV tags throughout Moodle 2012-08-16 10:56:01 +08:00
David Monllao 227b0f5a7d MDL-30370 mod_forum - Removing duplicate seleted field in the DB query
Credit to Iñigo Zendegi
2012-08-15 17:01:35 +08:00
Rossiani Wijaya 9a460c38fd MDL-34565 - remove duplicate labeling 2012-08-15 16:25:21 +08:00
Eloy Lafuente (stronk7) 4dd7c5cafd Merge branch 'MDL-34862_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-15 03:32:59 +02:00
AMOS bot 0beb16d923 Automatically generated installer lang files 2012-08-15 00:31:34 +00:00
Sam Hemelryk 5d44dbd1eb Merge branch 'MDL-33531_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-08-15 11:21:57 +12:00
Dan Poltawski 3403906010 MDL-29192 - clarify email_to_user call 2012-08-15 01:17:57 +02:00
Aparup Banerjee e4744c5896 Merge branch 'wip-MDL-34748-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-08-14 15:30:16 +08:00
Ankit Agarwal 9b18d9ce59 MDL-34535 message: userto should use is_number instead of is_init 2012-08-14 14:41:57 +08:00
Aparup Banerjee eed4c2339c Merge branch 'MDL-34563_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-14 14:34:53 +08:00
Rossiani Wijaya 3798162934 MDL-34563 - change plural strings and removed colon for accesshide label 2012-08-14 13:56:57 +08:00
Aparup Banerjee 97da1cf0ec Merge branch 'MDL-34565_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-14 13:53:43 +08:00
Dan Poltawski 8f4ff87e5e Merge branch 'MDL-34728_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-14 13:33:16 +08:00
Dan Poltawski 37b1a5264b Merge branch 'MDL-34807_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-14 12:08:09 +08:00
Rajesh Taneja 2b59c68796 MDL-32759 Assignment: Changing grade for existing assignments will show warning that grades will not be scaled 2012-08-14 11:44:41 +08:00
Tim Hunt 1907f7e082 MDL-34862 question preview: improve preview ownership check.
Users should only be able to access their own quetion preview. In the
past, for reasons I can no longer remember, this was enforced
using the session. It is much better to set the question_usage to belong
to the user's context.
2012-08-13 17:44:22 +01:00
Tim Hunt c090746541 MDL-34807 question bank: navigation loses place.
The symptom is that where we are now is not shown in the settings
navigation. However, the underlying cause is that question/edit.php is
doing some crazy thing of its own to build $PAGE->url, rather than using
the one returned by question_edit_setup.

Not that this patch itentionally removes the returnurl param. It was
added as part of a big change MDL-20276, which I think just got this
detail wrong. That variable is never used.
2012-08-13 11:29:46 +01:00
Tim Hunt c9b212083c MDL-34728 forms: woy for other JS to trigger disableIf update.
This was discovered while working on MDL-32705. If some JavaScript (for
example a select all/none link) changes the state of some form fields,
then the disabledIf state of other form elements does not automatically
update.

The existing form JS was so well encapsulated that this was impossible.
This change pokes a hole in the encapsulation, and provides an API
    M.form.updateFormState(formid);
that other bits of JS code can call when necessary.
2012-08-13 11:20:29 +01:00
Rossiani Wijaya 7e68a5205a MDL-34563 accessibility compliance for data module: Add forform input text and select tag 2012-08-13 15:14:27 +08:00
Rossiani Wijaya 92af44e829 MDL-34565: change to plural strings 2012-08-13 15:11:06 +08:00
Rossiani Wijaya 914a5ab622 MDL-34565 accessibility compliance for forum module: Add forform input text and select tag 2012-08-13 15:11:06 +08:00
Marina Glancy b56249893d MDL-34748 repository_filesystem: Sort files by title by default 2012-08-13 12:10:28 +08:00
Dan Poltawski 3311b367ae Merge branch 'MDL-34835_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-08-13 10:20:35 +08:00
Petr Škoda 76bdfc1d79 MDL-34840 fix fatal pg error during upgrade
This is a regression caused by MDL-30515
2012-08-11 17:49:11 +02:00
AMOS bot 329dae9cb7 Automatically generated installer lang files 2012-08-11 00:31:32 +00:00
Mary Evans 3f7bbb4aeb MDL-34835 theme_fusion: fixed displaced navbar by extending #region-header.inside bottom margin by 70px in style/pagelayout.css 2012-08-10 20:36:37 +01:00
David Monllao cfcb4304c5 MDL-33531 backup Added format_string to course shortname 2012-08-10 08:43:24 +08:00
David Monllao b5ce7c4afc MDL-33531 backup Avoiding possible Notice 2012-08-10 08:43:24 +08:00
Lorenzo Nicora dcc36c3aa2 MDL-33531 Fixed the regexp used to find old backup files 2012-08-10 08:43:23 +08:00
AMOS bot 52b5634eaa Automatically generated installer lang files 2012-08-10 00:31:49 +00:00
Eloy Lafuente (stronk7) c36de79f5c weekly release 2.2.4+ 2012-08-09 20:51:09 +02:00
Eloy Lafuente (stronk7) 20244afd2c Merge branch 'install_22_STABLE' of git://git.moodle.cz/moodle-install into MOODLE_22_STABLE 2012-08-09 20:46:25 +02:00
Tim Hunt 8cec008393 MDL-34590 javascript-static: nuclear option in openpopup
I think we have finally tamed Chrome on all platforms. (Crosses fingers.)
2012-08-09 17:17:50 +02:00
Rossiani Wijaya 072af5529b MDL-34575: fixed string typo and string duplication for label 2012-08-08 12:33:57 +08:00
Dan Marsden c491b300a3 MDL-34656 prevent login form from being shown inside iframe - also prevent wantsurl from being set to loadsco.php which isn't a valid page for initial load.
Conflicts:
	mod/scorm/loadSCO.php
2012-08-08 02:04:08 +02:00
Eloy Lafuente (stronk7) 8a991d8692 Merge branch 'MDL-34704_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-08 01:54:12 +02:00
Eloy Lafuente (stronk7) eab358f916 Merge branch 'wip-mdl-30792-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-08-08 01:01:28 +02:00
Charles Fulton 1238c6fee7 MDL-32023 wiki: remove hard-coded edit string 2012-08-08 00:29:48 +02:00
Charles Fulton 8440c2c72c MDL-29129 wiki: fix a hardcoded string 2012-08-07 23:59:39 +02:00
Aparup Banerjee 3407c2ffe0 Merge branch 'MDL-34566_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-07 15:08:04 +08:00
Aparup Banerjee 8bcbce1576 Merge branch 'MDL-34564_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-07 14:58:05 +08:00
Aparup Banerjee 24bcc1e525 Merge branch 'MDL-34560_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-07 14:45:55 +08:00
Aparup Banerjee 7733795102 Merge branch 'MDL-34559_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-07 14:37:24 +08:00
Aparup Banerjee 451b9aae0f Revert "Merge branch 'MDL-28531-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE"
This reverts commit 0c9a3490bb, reversing
changes made to dd9f138e1d.
2012-08-07 14:28:22 +08:00
Aparup Banerjee 0c9a3490bb Merge branch 'MDL-28531-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-08-07 13:58:45 +08:00
Rossiani Wijaya 807010c975 MDL-34559: removing accesshide class 2012-08-07 13:38:39 +08:00
Aparup Banerjee dd9f138e1d Merge branch 'MDL-34715-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-08-07 10:42:37 +08:00
Dan Poltawski 2dc3011aaf Merge branch 'MDL-34562_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-07 10:16:59 +08:00
Dan Poltawski 74552ee06a Merge branch 'MDL-34567_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-07 10:03:27 +08:00
Aparup Banerjee 07b64939e8 Merge branch 'MDL-22663-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-08-07 10:01:04 +08:00
Aparup Banerjee e8b2b43aff Merge branch 'MDL-33022-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-08-07 09:24:05 +08:00
Dan Poltawski c8a605729d Merge branch 'wip-MDL-34669-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-08-07 08:48:45 +08:00
AMOS bot ea7537197b Automatically generated installer lang files 2012-08-07 00:31:57 +00:00
Eloy Lafuente (stronk7) 12b7b430a4 Merge branch 'MDL-31753' of git://github.com/enovation/moodle into MOODLE_22_STABLE 2012-08-07 02:12:57 +02:00
Kirill Astashov 1d8cd19d72 MDL-34669: Fix editor filepicker context bt trying to use page context 2012-08-06 16:57:24 +08:00
Aparup Banerjee f2a044dc6b Merge branch 'MDL-31599-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-08-06 16:44:17 +08:00
Aparup Banerjee a1ee3b38a2 Merge branch 'MDL-34716-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-08-06 16:38:20 +08:00
Rossiani Wijaya 90f288d617 MDL-34562 accessibility compliance for chat module: Add <label> for input text and select tag 2012-08-06 16:30:00 +08:00
Dan Poltawski ab6f805dd4 Merge branch 'MDL-34561_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-06 15:49:18 +08:00
Rossiani Wijaya cdbf85e62a MDL-34561 accessibility compliance for assignment module: add accesshide class 2012-08-06 15:17:18 +08:00
Dan Poltawski 572024c4e6 Merge branch 'MDL-34707_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-06 14:42:19 +08:00
Charles Fulton 456014e502 MDL-34629 wiki: convert default format value during restore 2012-08-06 14:19:53 +08:00
Dan Poltawski c834462e08 Merge branch 'MDL-34561_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-06 14:09:02 +08:00
Dan Poltawski a0e776e02d Merge branch 'MDL-25983_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-08-06 13:53:03 +08:00
Dan Poltawski 957576fd62 Merge branch 'MDL-34259-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-08-06 12:21:50 +08:00
Dan Poltawski dc5ab79d39 Merge branch 'MDL-34574_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-06 12:12:38 +08:00
Dan Poltawski 4f73ef521e MDL-34575 lang/notes: reorder string to be alphabetical 2012-08-06 12:08:35 +08:00
Dan Poltawski d4e606c8c0 Merge branch 'MDL-34575_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-06 12:06:47 +08:00
Dan Poltawski d0374ba31e Merge branch 'MDL-34558_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-06 11:54:19 +08:00
Dan Poltawski 9980863f30 Merge branch 'MDL-34557_accessibility_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-08-06 11:49:59 +08:00
Dan Poltawski b02ff428de Merge branch 'MDL-34705_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-06 11:31:44 +08:00
Dan Poltawski 77c3dbfc77 Merge branch 'MDL-28207-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-08-06 10:40:51 +08:00
Dan Poltawski 659a30df30 Merge branch 'MDL-34590_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-08-06 10:11:33 +08:00
Dan Poltawski c574b5dddd Merge branch 'MDL-34405_m22' of git://github.com/kordan/moodle into MOODLE_22_STABLE 2012-08-06 10:06:40 +08:00
Dan Poltawski b690238e6b Merge branch 'w32_MDL-34585_m22_blogfiles' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-08-06 09:46:03 +08:00
Sam Hemelryk 5831c9f891 Merge branch 'MDL-34708_m22' of git://github.com/nebgor/moodle into MOODLE_22_STABLE 2012-08-06 12:04:40 +12:00
Sam Hemelryk 297e891c1f Merge branch 'MDL-34658-22' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-08-06 11:44:09 +12:00
Andreas Grabs 1dd8dd8496 MDL-34670 - undefined variable in feedback templates 2012-08-06 11:37:17 +12:00
Sam Hemelryk 07d8e5cfa7 Merge branch 'MDL-34645_22' of git://github.com/aolley/moodle into MOODLE_22_STABLE 2012-08-06 11:04:47 +12:00
Sam Hemelryk f5543aa05e Merge branch 'MDL-34647_22' of git://github.com/aolley/moodle into MOODLE_22_STABLE 2012-08-06 10:58:18 +12:00
Aparup Banerjee 542ed166a5 MDL-34708 Forms library : Fixed incorrect calendar day displayed across timezones. Credit to Matthew Davidson and team at rose-hulman.edu. 2012-08-05 23:33:04 +08:00
Rossiani Wijaya 2b8d9b5b7c MDL-34560 accessibility compliance for message: Add label for input text and select tag 2012-08-04 17:01:34 +08:00
Tim Hunt 45c29ec08d MDL-34704 couse, accesslib: improve $CFG->courselistshortnames
1. get_context_name should respect the $CFG->courselistshortnames
setting.

2. When $CFG->courselistshortnames is on, what to display should use a
language string, rather than string concatenation. This makes it
possible for people to configure the display. For example, they might
want 'My first course [M101]' instead of 'M101 My first course'.
2012-08-03 14:47:37 +01:00
Tim Hunt 92b7cdd052 MDL-34590 javascript-static: full-screep popups for Chrome.
I have left in both:
1. the code to get the window size correct initially, becuase that seems
sensible; and
2. the subsequent resize (with the setTimeout that Chrome requires,
thanks Jeff Rader for finding that) becuase on Chrome, it gets the size
a bit too big initially, so this correction is necessary.
2012-08-03 13:21:56 +01:00
Andreas Grabs 8821ce4d3d MDL-34658 - Saving failed because missing or false values 2012-08-03 12:00:22 +02:00
AMOS bot 25866795de Automatically generated installer lang files 2012-08-03 11:45:30 +02:00
Dan Poltawski d638b5f0aa MDL-34716 outcomes: Fix admin tree location 2012-08-03 16:07:36 +08:00
Frederic Massart 23249b70bd MDL-22663 Repository: WebDAV supports Digest authentication 2012-08-03 14:02:34 +08:00
Frederic Massart 9f412a79d0 MDL-22663 Repository: WebDAV supports SSL and chunked data
Conflicts:

	repository/webdav/lib.php
2012-08-03 13:58:26 +08:00
Frederic Massart f515f00aae MDL-22663 Repository: Fixed strict standards notices in WebDAV lib 2012-08-03 13:58:22 +08:00
Rossiani Wijaya 9106db46b6 MDL-34575 accessibility compliance for notes: Add form input text and select tag 2012-08-03 13:43:32 +08:00
Rossiani Wijaya a367cd0e5b MDL-34574 accessibility compliance for mymobile theme: Add forform input text and select tag 2012-08-03 12:54:22 +08:00
Rossiani Wijaya d9abbfdf5d MDL-34567 accessibility compliance for lesson module: Add forform input text and select tag 2012-08-03 12:54:16 +08:00
Rossiani Wijaya bfdae7324b MDL-34566 accessibility compliance for glossary module: Add forform input text and select tag 2012-08-03 12:54:15 +08:00
Rossiani Wijaya 5ec0afb99a MDL-34564 accessibility compliance for feedback module: Add forform input text and select tag 2012-08-03 12:54:12 +08:00
Rossiani Wijaya 7fc8b19110 MDL-34561 accessibility compliance for assignment module: Add forform input text and select tag 2012-08-03 12:54:09 +08:00
Rossiani Wijaya 0c12ac81ee MDL-34559 accessibility compliance for grade: Add forform input text and select tag 2012-08-03 12:54:08 +08:00
Rossiani Wijaya 57d086caa3 MDL-34558 accessibility compliance for filter: Add forform input text and select tag 2012-08-03 12:54:07 +08:00
Rossiani Wijaya 09fab4e7b3 MDL-34557 accessibility compliance for enrol: Add forform input text and select tag 2012-08-03 12:54:06 +08:00
Rajesh Taneja 64171aac70 MDL-30792 Files API: Cleaner approach to get maxbytes size in filepicker 2012-08-03 11:47:44 +08:00
Rajesh Taneja fa7a8a9899 MDL-30792 Files API: maxbytes will be set by get_max_upload_file_size if less then 0 or greater then max moodle limit 2012-08-03 11:44:20 +08:00
Frederic Massart bf8777d126 MDL-28531 Backup: Automated backups run when they are scheduled
Conflicts:

	lib/tests/backup_test.php
2012-08-03 09:30:14 +08:00
Frederic Massart e45890a841 MDL-34259 Lesson: True/false questions don't break on missing answer 2012-08-03 09:23:13 +08:00
Frederic Massart cbb011a1a6 MDL-28207 Course: Showing/hiding/marking a section respect capabilities 2012-08-03 09:21:14 +08:00
Tim Hunt cd914a25d0 MDL-34707 backup UI: only include the JS once. 2012-08-02 18:48:07 +01:00
Tim Hunt f66ad4aa11 MDL-34705 role assignments list: should link to contexts.
This will make Admin's lives a bit easier.
2012-08-02 18:15:40 +01:00
Petr Škoda bfa9be6230 MDL-34585 fix broken blog file access control 2012-08-02 09:59:31 +02:00
David Monllao a830d9071e MDL-25983 enrol_imsenterprise Importing the course summary when adding new courses 2012-08-02 15:35:25 +08:00
Dan Poltawski f2ddce97bd weekly release 2.2.4+ 2012-08-02 14:39:59 +08:00
Dan Poltawski 347bea1069 MDL-31599 block_news - incorrect RSS feed for guest user
Was previously using the userid 0, rather than guest to use
authenticated RSS feed.

Thanks to Paul Verrall at LUNS for helping me debug this.
2012-08-02 11:11:44 +08:00
Dan Marsden 9d94aa3154 MDL-33022 mod_form: set correct groupid when editing an existing post 2012-08-02 10:48:01 +08:00
Petr Škoda 8e6cbb58d8 MDL-34368 fix another validuntil condition 2012-08-01 15:07:16 +08:00
Ankit Agarwal 6efb36babf MDL-32827 calendar: include global to check for events with courseid as siteid 2012-08-01 15:20:52 +12:00
Dan Poltawski a9dcb44830 MDL-34599 mod_quiz: optional $thispage & $nextpage
The previous change making the params required was a regression.
2012-08-01 09:07:02 +08:00
Charles Fulton 854a3741bc MDL-29909 wiki: do not show groups when no groups present 2012-08-01 12:40:06 +12:00
Dan Poltawski 37699accdb MDL-32791 mod_quiz - correct bad version
Many thanks for Jenkins for spotting it :)
2012-07-31 19:40:33 +08:00
Dan Poltawski a14127cdbc Merge branch 'MDL-32791_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-31 17:46:27 +08:00
Dan Poltawski 254f6e4d96 Merge branch 'MDL-34599_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-31 17:42:57 +08:00
Rossiani Wijaya bc2a87e252 MDL-34556 accessibility compliance for course: Add forform input text and select tag 2012-07-31 17:18:04 +08:00
Rossiani Wijaya e1d3079fb6 MDL-34555 accessibility compliance for calendar: Add forform input text and select tag 2012-07-31 17:12:07 +08:00
Rossiani Wijaya 65ae20ba36 MDL-34554 accessibility compliance for blocks: Add forform input text and select tag 2012-07-31 17:06:16 +08:00
Rossiani Wijaya 229904970b MDL-34553 accessibility compliance for authentication: Add forform input text and select tag 2012-07-31 16:59:55 +08:00
Rossiani Wijaya d3b86750a3 MDL-34552 accessibility compliance for admin: Add forform input text and select tag 2012-07-31 16:35:30 +08:00
Aparup Banerjee 0e12789b27 MDL-34650 added MDLs to todo comment and deprecation comment.
(also triggering an amos script here for the other MDL-34650 commit)

AMOS BEGIN
  CPY [minute,form],[minute,core]
  CPY [month,form],[month,core]
  CPY [options,editor],[options,core]
  CPY [selectacourse,backup],[selectacourse,core]
AMOS END
2012-07-31 15:40:15 +08:00
Aparup Banerjee b63bc5027b MDL-34650 typo correction 2012-07-31 13:23:42 +08:00
Aparup Banerjee 906f0ddbca Merge branch 'MDL-34650_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-07-31 13:20:52 +08:00
Sam Hemelryk b21f174957 Merge branch 'MDL-34528_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-07-31 16:49:20 +12:00
Sam Hemelryk 6cb03ab5d3 Merge branch 'MDL-30515_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-07-31 16:40:37 +12:00
Sam Hemelryk 09c3821bf4 Merge branch 'MDL-32499_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-07-31 16:29:41 +12:00
Sam Hemelryk dd204f3a8f Merge branch 'MDL-32931_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-07-31 16:18:41 +12:00
Sam Hemelryk ab474e3e6d Merge branch 'MDL-32827-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-07-31 16:15:49 +12:00
Rossiani Wijaya 9000014032 MDL-34650 - accessibility compliance: Add <label> for form input text and select tag 2012-07-31 12:10:47 +08:00
Dan Poltawski 6b11733524 Merge branch 'MDL-25953-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-31 12:02:20 +08:00
Ankit Agarwal a521e7e01f MDL-32827 calendar: update eventtype of broken event in bulk instead of doing it one by one 2012-07-31 11:20:00 +08:00
Dan Poltawski a40624990c Merge branch 'MDL-34624_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-07-31 11:10:44 +08:00
Dan Poltawski b5affb62a8 Merge branch 'MDL-34255_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-07-31 10:32:00 +08:00
Jerome Mouneyrac 8884e3a2a8 MDL-33869 user_get_user_details: add support for 'Show user identity' fields set by administrator 2012-07-31 10:28:11 +08:00
Crafton Williams 01924246c3 MDL-33869 user_get_user_details: allow return of idnumber 2012-07-31 10:28:02 +08:00
Adam Olley 625aa8b043 MDL-34647: admintool: uploaduser enrolments now obey enrolperiod directive 2012-07-31 11:37:34 +09:30
Adam Olley aef7e750b0 MDL-34645: enrol_manual: enrolment init to pass default duration setting 2012-07-31 11:10:16 +09:30
Dan Poltawski e9c0708633 Merge branch 'MDL-34483_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-31 09:12:37 +08:00
Sam Hemelryk d3fd4849ae Merge branch 'MDL-28568_noncontact_warning_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-07-31 11:59:02 +12:00
Tim Hunt ae1ecaf94a MDL-34483 qformat_examview: Commit example file.
Supplied by Rick Jerz.
2012-07-30 11:56:51 +01:00
Nathan Mares 20c116f9f7 MDL-34368: Fix broken query in so tokens are correctly checked against the linked service 2012-07-30 15:49:51 +08:00
Dan Poltawski 7a9aacfcce Merge branch 'MDL-34507-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-30 14:05:07 +08:00
Dan Poltawski fe8dff2b01 Merge branch 'MDL-34589_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-30 13:56:13 +08:00
Dan Poltawski a1355c4876 Merge branch 'MDL-33537_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-07-30 13:46:40 +08:00
Dan Poltawski 368fb63346 Merge branch 'w31_MDL-34538_m22_validatefloats' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-07-30 12:35:17 +08:00
Dan Poltawski 617eabaf87 Merge branch 'MDL-31509_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-30 12:15:57 +08:00
Dan Poltawski 0022ff1787 Merge branch 'wip-mdl-34239-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-07-30 12:05:36 +08:00
Dan Poltawski f2a59d76d0 Merge branch 'MDL-34519_22_course_reset_patch' of git://github.com/rlorenzo/moodle into MOODLE_22_STABLE 2012-07-30 11:58:06 +08:00
Mary Evans 108ea10c38 MDL-34528 theme-canvas: Removed redundent exclude stylesheet configurations from CANVAS theme 2012-07-29 21:56:18 +01:00
kordan 1d55b8ecae MDL-34405 theme_formal_white: added background for quiz overview 2012-07-29 16:02:36 +02:00
Mary Evans 658c9cc336 MDL-34624 theme_base: added background-color to style/admin.css for role edit default 2012-07-29 14:48:54 +01:00
Tim Hunt c3d3eb3100 MDL-31509 quiz outcomes: let people associate quizzes with outcomes.
The quiz does not really support outcomes, but even so in 1.9 you could
select outcomes on the quiz edit form, and apparently this was useful to
some people, therefore we should re-enable it.
2012-07-27 18:13:51 +01:00
Petr Škoda aee963dac8 MDL-34538 fix PARAM_FLOAT validation 2012-07-27 18:46:23 +02:00
Tim Hunt d4b3dd67ad MDL-32791 quiz db: clean up garbage data that was causing problems.
Melinda Kraft reported having rows in their quiz_question_instances
table which caused various problems. These rows are meaningless, so I
have done a DB upgrade step to clean them up, which should deal with the
bad side-effets they were causing.
2012-07-27 16:47:56 +01:00
Jean-Michel Vedrine c354a10bd2 MDL-34483 qformat_examview: handle more questions.
These fixes come from testing with the example file supplied by Rick
Jerz.
2012-07-27 12:21:01 +01:00
Jean-Michel Vedrine 0f19cdac5e MDL-34483 qformat_examview: clean the code to make codechecker happy 2012-07-27 12:21:00 +01:00
Jean-Michel Vedrine 2275b67a95 MDL-34483 qformat_examview: changes required to make it basically work. 2012-07-27 12:20:58 +01:00
Tim Hunt dcfdf468fc MDL-34599 quiz attempts: more robust if page number out of range.
Rather than throwing an exception, we should just show the first/last
page of the quiz if the page number is out-of-range.
2012-07-27 11:48:04 +01:00
Rajesh Taneja 835731d129 MDL-34239 Blog: Editing blog associated with module will be keep it's association 2012-07-27 14:02:31 +08:00
Ankit Agarwal 44793f390f MDL-32827 calendar: Added logic to handle calendar events with empty eventtypes during restore 2012-07-27 11:17:19 +08:00
Ankit Agarwal de2635879e MDL-32827 calendar: bumping the version 2012-07-27 11:17:18 +08:00
Ankit Agarwal 7a5bbcf7f2 MDL-32827 calendar: Fixining calender entries with no eventtype 2012-07-27 11:16:30 +08:00
Frederic Massart 7bef288418 MDL-25953 Repository: Amazon S3 supports sub directories
Conflicts:

	repository/s3/lib.php
2012-07-27 10:52:06 +08:00
Frederic Massart b5b24718e3 MDL-25953 Repository: Updated Amazon S3 library
Conflicts:

	repository/s3/lib.php
2012-07-27 10:52:06 +08:00
Frederic Massart 0a9f98bf4e MDL-34507 Filepicker: Repositories with specific filetypes are displayed when expected 2012-07-27 10:01:14 +08:00
David Monllao c04f9dd478 MDL-32499 gradingform_rubric Avoid backup/restore of rubric fillings without an existing criteria 2012-07-27 09:28:41 +08:00
David Monllao b729292ca3 MDL-32931 mod_forum Polishing patch and taking into account courses without previous accesses 2012-07-27 09:28:33 +08:00
Tom Lanyon a6bc93ae8f MDL-32931 mod_forum Change forum overview to avoid use of (potentially large and slow ) log table. 2012-07-27 09:28:33 +08:00
David Monllao 16c5104baa MDL-30515 grade Removing duplicate values to avoid upgrade to 2.x crash 2012-07-27 09:26:29 +08:00
Tim Hunt d87c8d7ffd MDL-34589 quiz report graphs: PHP5.4 issue with unset($array[$float]).
Thanks to Matthew Davidson for diagnosing the problem.
2012-07-26 19:00:15 +01:00
Aparup Banerjee dd9274c4fc weekly release 2.2.4+ 2012-07-26 14:27:35 +08:00
Rossiani Wijaya 05d7440e19 MDL-34255 group calendar events: fixed adding group calendar event for students 2012-07-26 14:24:44 +08:00
Aparup Banerjee d61be4030f Merge branch 'install_22_STABLE' of git://git.moodle.cz/moodle-install into MOODLE_22_STABLE 2012-07-26 14:00:57 +08:00
AMOS bot 2b7bbba7c4 Automatically generated installer lang files 2012-07-26 00:31:45 +00:00
Dan Poltawski 60f5190149 Merge branch 'MDL-13629_droplow_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-07-25 12:29:56 +08:00
Dan Poltawski a875f820c2 MDL-27083 - upgrade: fix incorrect version number 2012-07-25 09:56:43 +08:00
Jason Ilicic 0c62ad79fb MDL-34529: Fixed ordering of course sections when performing import/restore by adding the sort parameter. 2012-07-25 10:29:55 +09:30
Sam Hemelryk 775673d4b1 Merge branch 'MDL-27083-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-25 09:18:06 +12:00
Rex Lorenzo 6570f0e041 MDL-34519 - Course reset not protected by proper capability 2012-07-24 12:04:41 -07:00
Aparup Banerjee 2a912a7aff MDL-26969 assignment : clarified phpdoc and fixed whitespace. 2012-07-24 16:40:24 +08:00
Aparup Banerjee aa95731b73 Merge branch 'MDL-26969_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-07-24 16:40:19 +08:00
Petr Škoda 249f07e616 MDL-34129 show course info on enrolment page 2012-07-24 13:42:03 +08:00
Aparup Banerjee ccbdbc7f67 Merge branch 'wip-mdl-33159-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-07-24 11:03:15 +08:00
AMOS bot f0521d9b1a Automatically generated installer lang files 2012-07-24 00:31:58 +00:00
Dan Poltawski 59cc009152 Merge branch 'MDL-34251_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-23 14:02:15 +08:00
Dan Poltawski 5d6842891e Merge branch 'MDL-34226_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-23 13:54:11 +08:00
Rajesh Taneja 4dba21f35a MDL-34148 Blog: Fixed variable name used for saving module name
Updated Erik's patch to match coding style
2012-07-23 13:46:26 +08:00
Erik Lundberg d6d00b134e MDL-34148: Instead of using the module name from the filesystem, the blog menu now fetches the module name with get_string(). 2012-07-23 13:46:25 +08:00
Dan Poltawski 5d32507ebe Merge branch 'wip-MDL-34404-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-07-23 13:26:20 +08:00
Dan Poltawski 7dd07a8d38 Merge branch 'w30_MDL-34396_m22_loginhttpsspell' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-07-23 12:20:16 +08:00
Frederic Massart c7f65058d0 MDL-27083 Questions: Orphaned questions are adopted on upgrade 2012-07-23 12:09:20 +08:00
Rossiani Wijaya 6961237957 MDL-26969 Assignment module - upload: fixed get_submission() return value to nothing when param is set to false. 2012-07-23 11:33:11 +08:00
Aparup Banerjee aeb48cca52 Merge branch 'MDL-32665_chat_popup_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-07-23 10:22:09 +08:00
Sam Hemelryk 0fd928ddeb Merge branch 'MDL-33560-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-23 12:25:09 +12:00
Jean-Philippe Gaudreau 0319cba7ee MDL-31516 Fixing grade_edit_tree::format_number 2012-07-23 12:22:52 +12:00
Sam Hemelryk 71268ddb62 Merge branch 'MDL-29563_22' of https://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-07-23 11:49:28 +12:00
Jason Ilicic 465775fc67 MDL-34427: Corrected language string when not allowed to enter the chat room. 2012-07-23 11:40:31 +12:00
Sam Hemelryk 82bb3c039c Merge branch 'm22_MDL-34374' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-07-23 11:37:59 +12:00
Sam Hemelryk 5e202b6cb4 Merge branch 'm22_MDL-34233' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-07-23 11:26:41 +12:00
Sam Hemelryk 5f6c20bca2 Merge branch 'MDL-34265-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-07-23 10:39:30 +12:00
Andrew Robert Nicols 6bec1fe66f MDL-34322 Don't display empty navigation nodes which have no link 2012-07-23 09:43:31 +12:00
Sam Hemelryk 4298cce0b6 MDL-34243 completion: Fixed up call to completion_criteria::factory that was passing object 2012-07-23 09:39:02 +12:00
Aaron Barnes 4ed5856a08 MDL-34243 completion: get_criteria() incorrectly passing object 2012-07-23 09:39:02 +12:00
Luke Tucker 150e548537 MDL-34396 Ensure TinyMCE editor spell checking works on pages with $PAGE->https_required() 2012-07-21 20:31:05 +02:00
David Monllao 2322b97e38 MDL-33537 gradingform_rubric Adding the definition when retrieving grading instances
Credit to Sam Chaffee
2012-07-20 14:59:11 +08:00
Derick Turner 125840c2a1 MDL-33159 course: Fix for site wide restricted modules not being selected by default 2012-07-20 12:33:51 +08:00
Tim Hunt b0e0762ca0 MDL-34251 question engine: possible infinite loop loading usages
In the case where either a question_attempt had not steps, or a
question_usage had not question_attempts, the load_from_records methods
could get stuck in an infinite loop.
2012-07-19 12:45:47 +01:00
Tim Hunt db5b519022 MDL-34226 multichoice qtype: correct is_complete_response for multianswer
The multianswer qtype uses the multi-choice one, and the way it does its
responses array breaks an assumption that multi-choice was making.
2012-07-19 12:45:31 +01:00
Andrew Davis 9e198bd6a6 MDL-28568 message: added a warning message when the user is about to message someone who cant reply 2012-07-19 17:07:12 +08:00
Sam Hemelryk db593ec914 MDL-33448 javascript: Added caching for the YUI instance used for debug in get_string 2012-07-19 20:22:32 +12:00
Ankit Agarwal 2fd58992ba MDL-34265 SCORM: Removing sorting from unsortable columns 2012-07-19 15:58:28 +08:00
Dan Marsden 03cafd97b1 MDL-34233 SCORM backup - change to using set_source_sql to preserve order of records in backup. 2012-07-19 19:40:36 +12:00
David Monllao e352a32604 MDL-29563 course Throwing an exception instead of a message 2012-07-19 15:36:37 +08:00
David Monllao f3d81a05ad MDL-29563 course Hide duplication button in activities without backup2 support - Credit to Mark Nielsen 2012-07-19 15:36:37 +08:00
Dan Poltawski 947ba9c802 weekly release 2.2.4+ 2012-07-19 13:46:58 +08:00
Dan Poltawski 9c2d2071ee Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-07-19 13:42:26 +08:00
Dan Marsden caf7fb15d5 MDL-34374 SCORM prevent skipview being set to always when used inside a SCORM course format. 2012-07-19 09:05:38 +12:00
Andrew Davis f7b9d61121 MDL-32665 mod_chat: disabled popup notifications in the chat windows 2012-07-18 19:08:32 +08:00
Andrew Davis 90fa8589dd MDL-13629 grade: added some unit tests to clarify the handling of droplow and improved apply_limit_rules() 2012-07-18 09:38:26 +08:00
Frederic Massart eb51ce159f MDL-33560 Enrol: Enrol password can be unmasked 2012-07-17 16:48:59 +08:00
Sam Hemelryk bff217f18b Merge branch 'MDL-33575_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-07-17 15:50:00 +12:00
Rossiani Wijaya f014bd253f MDL-33575 choice module: add label to checkbox element when privacy of results is set to publish full results 2012-07-17 10:16:33 +08:00
AMOS bot b43646c86a Automatically generated installer lang files 2012-07-17 00:31:52 +00:00
David Monllaó 6fb835d5a3 MDL-30876 filter_mediaplugin Wrapping the style sheets access with try & catch
Conflicts:

	lib/javascript-static.js
2012-07-17 12:21:11 +12:00
Dan Poltawski 6fc4e1becb Merge branch 'MDL-34187_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-16 15:57:43 +08:00
Aparup Banerjee fefcb951bc MDL-26587 Question : fixed restoring shortanswer where answers are missing due to data error in mbz file. 2012-07-16 15:51:19 +08:00
Dan Poltawski 5d0d6c692c Merge branch 'MDL-23219_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-16 14:33:06 +08:00
Dan Poltawski 38d358fc37 Merge branch 'wip-mdl-30798-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-07-16 14:26:15 +08:00
Rajesh Taneja 0c9b8dc4b3 MDL-30798 Blog: link param for entries about this course link is fixed 2012-07-16 14:12:35 +08:00
Dan Poltawski 49b4842325 Merge branch 'MDL-31622-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-16 11:34:29 +08:00
Dan Poltawski 091c725382 Merge branch 'w29_MDL-34271_m22_mysqlcollation' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-07-16 11:01:16 +08:00
Dan Poltawski 62b488086b Merge branch 'MDL-34164_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-16 10:05:59 +08:00
Sam Hemelryk f1cb47f9a3 Merge branch 'MDL-33624-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-07-16 13:50:48 +12:00
Dan Poltawski b8722357c7 MDL-33624 lang - remove incosistent use of placeholder 2012-07-16 09:46:11 +08:00
Sam Hemelryk 3c0d5ff61e Merge branch 'MDL-26145_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-07-16 11:57:25 +12:00
Sam Hemelryk a9fb701ad5 Merge branch 'MDL-28155_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-07-16 11:50:13 +12:00
Sam Hemelryk aa83dea5e8 Merge branch 'MDL-32310-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-07-16 11:00:49 +12:00
Sam Hemelryk 0cc403cbe6 Merge branch 'MDL-33917-2' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-07-16 10:49:57 +12:00
Charles Fulton 3635131be5 MDL-27563 shibboleth: set context on login page 2012-07-16 09:39:47 +12:00
Sam Hemelryk 9f55156eb4 Merge branch 'MDL-33788b-22' of git://github.com/srynot4sale/moodle into MOODLE_22_STABLE 2012-07-16 09:18:36 +12:00
AMOS bot f54ebb38f4 Automatically generated installer lang files 2012-07-15 00:32:07 +00:00
Tim Hunt 03c558af10 MDL-34164 quiz reports: only try to show graphs if GD is installed.
if (empty($CFG->gdversion)) { seems to be the common idiom for this.
I refactored the graph output into the renderer, to avoid having to
duplicate that test three times.

Conflicts:

	mod/quiz/report/overview/report.php
2012-07-14 09:29:35 +01:00
Tim Hunt f2c88f41fe MDL-34257 quiz 'secure' window: does not close automatically.
Conflicts:

	mod/quiz/version.php
2012-07-13 18:05:15 +01:00
Tim Hunt d8f23e09f2 MDL-23219 check permissions: show relevant role-assignments.
Adding this list of role assignments should make it much easier for
admins to work out why, when the permissions shown in the check
permisisons page are now what they expect.

I thought about making the links go more directly to, for example, the
assign roles pages for each context, but because of things like
enrolments in courses that is hard. It is only two clicks to go to the
context, then click the right link in the settings block there.

I also re-orderd some of the code in check.php to try to get all the DB
code before all the output code.
2012-07-13 15:23:18 +01:00
Dan Poltawski dea59b1e67 MDL-33917 mod_resource - fix upgrade of front page resources
This only affected resources linked  as a full url
2012-07-13 15:44:12 +08:00
Frederic Massart b1aa16a30e MDL-31622 Forms: Date selector supports i18n 2012-07-13 08:57:44 +08:00
AMOS bot d59c3ffff7 Automatically generated installer lang files 2012-07-13 00:32:29 +00:00
Petr Škoda 397cbe04e4 MDL-34271 add new cli tool for mysql collation conversions 2012-07-12 14:58:14 +02:00
Petr Škoda 39f6deda84 MDL-34271 use the same collation when adding new tables or columns 2012-07-12 14:57:27 +02:00
Petr Škoda 61c4fa28c1 MDL-34271 cleanup mysql engine hack before adding similar collation hack 2012-07-12 14:42:13 +02:00
Dan Poltawski 9a7c3d5fea weekly release 2.2.4+ 2012-07-12 16:02:22 +08:00
Dan Poltawski 400cf711e0 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-07-12 15:50:35 +08:00
Sam Hemelryk f163de5a8c Merge branch 'MDL-32297-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-12 18:24:36 +12:00
Sam Hemelryk bdbe35e740 Revert "MDL-33575 choice module: add label to checkbox element when privacy of results is set to publish full results"
This reverts commit ccef0a8b0a.
2012-07-12 18:21:36 +12:00
Paul Nicholls 8290c59cdf MDL-32582 - filter/multimedia: MP3 Flow Player doesn't work in Chrome if empty stylesheets are present 2012-07-12 13:40:57 +08:00
Mary Evans 53bf5f7cce MDL-31169 theme_base: adds clearfix to page layouts so body height is not zero 2012-07-12 09:51:39 +08:00
Frederic Massart 7c6c39f153 MDL-32297 Forms: Date Picker JS popup is not constraint to parent form 2012-07-12 09:51:23 +08:00
AMOS bot f16836f3b3 Automatically generated installer lang files 2012-07-12 00:32:30 +00:00
Petr Škoda 4000115abe MDL-34175 one more hardcoded /admin/ in mnet 2012-07-12 09:44:38 +12:00
David Monllao ac430a06f5 MDL-28155 mod_assignment Using the this object instead of a string 2012-07-11 15:14:19 +08:00
AMOS bot a1320c7545 Automatically generated installer lang files 2012-07-10 20:33:22 +02:00
Petr Skoda ae5b8854e5 MDL-33712 add support for unique moodle tags in tinymce 2012-07-10 15:56:22 +08:00
Sun Zhigang 7add6bb507 MDL-28155 mod_assignment - Fix an ugly hack
Show download all link for any assignment types which implement
the download_submissions() method
2012-07-10 13:32:36 +08:00
Dan Poltawski 4fdabcce0e Merge branch 'MDL-34171_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-10 09:25:32 +08:00
Petr Škoda b1eae8a90d MDL-34155 use course visibility default when creator does not have moodle/course:visibility 2012-07-10 12:49:18 +12:00
Petr Škoda 7232e79e8e MDL-34175 a few more renamed admin fixes
Conflicts:

	admin/tool/assignmentupgrade/batchupgrade.php
	admin/tool/assignmentupgrade/index.php
	admin/tool/assignmentupgrade/listnotupgraded.php
	admin/tool/assignmentupgrade/upgradesingle.php
	admin/tool/assignmentupgrade/upgradesingleconfirm.php
2012-07-10 12:44:52 +12:00
Petr Škoda 0f7e3d045d MDL-34175 automatically fix admin JS links 2012-07-10 12:44:06 +12:00
Dan Marsden 5d7f0fcc1e MDL-34198 SCORM remove unecessary get_records call 2012-07-10 08:34:53 +08:00
Sam Hemelryk 714f2d590a Merge branch 'MDL-29470-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-10 12:09:14 +12:00
Sam Hemelryk 730ff61856 Merge branch 'MDL-32297-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-10 12:05:42 +12:00
Charles Fulton 2064567b6e MDL-27800 admin: make front page restore link consistent
Conflicts:

	admin/settings/frontpage.php
2012-07-10 11:33:34 +12:00
Dan Poltawski 1e73d1ddaa Merge branch 'MDL-18301-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-09 14:27:23 +08:00
Dan Poltawski a36631fcee Merge branch 'MDL-32057_22' of git://github.com/aolley/moodle into MOODLE_22_STABLE 2012-07-09 14:14:25 +08:00
Frederic Massart afedb66359 MDL-29470 Backup: fixed unexpected next automated backup date 2012-07-09 13:48:52 +08:00
Dan Poltawski 92e63062d4 Merge branch 'MDL-33030_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-07-09 13:42:40 +08:00
Dan Poltawski 1c426aca1a Merge branch 'wip-mdl-29969-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-07-09 13:39:27 +08:00
Dan Poltawski 98fb4b4f09 Merge branch 'MDL-34077-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-09 13:37:47 +08:00
Gilles-Philippe Leblanc 751f5b0ae9 MDL-33822 SCORM Interactions report - fix formatting of empty cells. 2012-07-09 17:24:35 +12:00
Dan Poltawski f5fe53613b MDL-17395 auth_email: clarify description 2012-07-09 17:19:45 +12:00
Aaron Barnes c4c0b5a4e9 MDL-33788 completion: SQL optimisation 2012-07-09 15:39:20 +12:00
Ankit Agarwal 409d09a6c2 MDL-27831 calendar: Removing reduntand control icons in delete.php 2012-07-09 11:31:19 +08:00
Dan Poltawski 4dff0a79ed Merge branch 'MDL-33885-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-09 10:32:00 +08:00
Sam Hemelryk ccef0a8b0a MDL-33575 choice module: add label to checkbox element when privacy of results is set to publish full results 2012-07-09 10:56:33 +12:00
Sam Hemelryk df40666775 Merge branch 'MDL-30816_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-07-09 10:28:37 +12:00
Sam Hemelryk 8e7d4f3317 Merge branch 'MDL-33514-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-07-09 10:24:23 +12:00
AMOS bot 8450522521 Automatically generated installer lang files 2012-07-07 00:31:25 +00:00
Tim Hunt b2fba4af15 MDL-34171 qformat_gift: Fix edge case with special character escaping.
We need to escape \ on export, because it is un-escaped on import.
2012-07-06 10:46:57 +01:00
David Monllao 937963c589 MDL-26145 mod_chat Talk feature not working correctly 2012-07-06 16:13:40 +08:00
Frederic Massart 480d12fe8f MDL-33885 Blog: Added maxlength rule to subject field 2012-07-06 13:17:12 +08:00
Frederic Massart 5c984fd630 MDL-18301 Gradebook: Added feature for components to control grade visibility 2012-07-06 09:54:22 +08:00
Sam Hemelryk 305fbe760a Moodle 2.2.4 release 2012-07-06 11:28:23 +12:00
Sam Hemelryk 79ef66af49 weekly release 2.2.3+ 2012-07-06 10:06:32 +12:00
Sam Hemelryk ce70f9d0f7 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-07-06 09:49:32 +12:00
Rossiani Wijaya 14ed66c339 MDL-30816 Choice module: add format_string() for choice name. 2012-07-05 12:22:26 +08:00
Rossiani Wijaya ba09f6b84e MDL-30816 choice module: fixed accessibility for responses table and make it easier for screenreader to read it 2012-07-05 12:22:14 +08:00
Eloy Lafuente (stronk7) 3021f92c8c Merge branch 'MDL-34145_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-05 03:41:38 +02:00
AMOS bot 0cdc8c2261 Automatically generated installer lang files 2012-07-05 00:31:16 +00:00
Sam Hemelryk db948187be MDL-33770 webservices: Fixed error with core_group_create_groups when no enrolment key provided 2012-07-05 09:22:40 +12:00
Eloy Lafuente (stronk7) 16ce52bb7d MDL-32062 question engine: fix simpletests broken by the change. 2012-07-04 17:16:21 +02:00
Petr Škoda 90048d3cba MDL-33876 skip deleted users in enrol_database sync 2012-07-04 04:17:20 +02:00
Dan Poltawski 8e12fdea29 Merge branch 'wip-MDL-34047-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-07-04 09:51:36 +08:00
Sam Hemelryk e0c7cb6ffa Merge branch 'MDL-32614_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-07-04 13:14:48 +12:00
Eloy Lafuente (stronk7) 7351ed0134 MDL-32614 lti: on restore, clean any typeid to convert the tool to selfcontained.
This is known to be imperfect, awaiting for MDL-34161 to fix the whole thing. Also,
unrelated, there are some basiclti => lti replacements.
2012-07-04 02:15:39 +02:00
Chris Scribner 683f0e73d4 MDL-32614: Removing code which disassociated LTI instances from their tool types upon restore. 2012-07-04 02:15:31 +02:00
Dan Poltawski dc6451ce04 MDL-31692 mod_lti - ensure that various mforms are used properly
* typesettings.php and instructor_edit_tool_type.php are tided
   up properly to ensure proper use for form data
* An incorrect PARAM type is corrected for typename
2012-07-04 10:08:17 +12:00
Sam Hemelryk c0c6e7966e Merge branch 'MDL-32062_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-04 09:53:40 +12:00
Sam Hemelryk dcce217160 Merge branch 'MDL-32851-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-07-04 09:42:30 +12:00
sam marshall 547695f20d MDL-33466: Group restriction should hide activity even with 'show availability' option
This is a modified version of fix by Luke Tucker at NetSpot - thanks.
2012-07-04 09:38:12 +12:00
Jonathan Harker afb6a8aa24 MDL-27125 better manage file handles when downloading multiple files.
Based on Dongsheng Cai's branch: s11_MDL-27125_curl_file_handler_master
2012-07-04 09:33:17 +12:00
Kevin Wiliarty ca6141c264 MDL-33749 follow redirects for URL downloader
Conflicts:

	repository/url/lib.php
2012-07-04 08:37:23 +12:00
Sam Hemelryk 56861454c1 Merge branch 'wip-mdl-32787-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-07-04 08:25:46 +12:00
Eloy Lafuente (stronk7) 54bf19763e Merge branch 'MDL-33426-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-07-03 16:09:22 +02:00
sam marshall 383fc1fbae MDL-33426 Completion: Multilang activity names wrong in alt/title 2012-07-03 13:09:15 +01:00
Marina Glancy c0cea70f0b MDL-34047 repository URL downloader must say that it returns only images 2012-07-03 14:20:47 +08:00
Rajesh Taneja 4598cc934a MDL-32787 user: rule required for custom profile fields applies to all users editing own profile 2012-07-03 13:42:45 +08:00
Dan Poltawski c47951f806 Merge branch 'MDL-30903-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-03 11:51:36 +08:00
Dan Poltawski eb8509c5c3 Merge branch 'MDL-34008_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-03 11:47:36 +08:00
Dan Poltawski 9db56e51d9 Merge branch 'w27_MDL-34036_m22_bulkrole' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-07-03 11:40:22 +08:00
Dan Poltawski b33cc65f3e Merge branch 'MDL-30883_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-03 11:01:52 +08:00
Sam Hemelryk 06a3ab6c0b Merge branch 'wip-MDL-33957-stable22' of git://github.com/phalacee/moodle into MOODLE_22_STABLE 2012-07-03 14:57:23 +12:00
Dan Poltawski 705b30e99e Merge branch 'w27_MDL-34123_m22_newpasslang' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-07-03 10:39:26 +08:00
ISHIKAWA Takayuki 81bf2a1a1d MDL-33757 gradebook: Adding support to sort userlist by email address 2012-07-03 09:45:34 +08:00
AMOS bot 92697b53ee Automatically generated installer lang files 2012-07-03 00:31:31 +00:00
Adam Olley b857ff8c19 MDL-32057: Fix cohort enrolment css for ie7 2012-07-03 09:25:10 +09:30
Sam Hemelryk b16832db0d Merge branch 'MOODLE_22_STABLE-MDL-33770' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-07-03 11:48:16 +12:00
Frederic Massart 842a71a6ac MDL-33814 Output renderers: table cell objects are only created when needed 2012-07-03 11:36:47 +12:00
Frederic Massart f2fdb7f73a MDL-33796 Glossary: removed unused missing string 2012-07-03 01:07:19 +02:00
Dan Poltawski 662ddae6c2 MDL-9214 - improve comment for custom login instructions 2012-07-03 10:47:31 +12:00
Dan Poltawski 1bcd3da0de MDL-32286 - fix ambigious english string 2012-07-03 10:43:02 +12:00
Matthew G. Switlik f90d6ddb6d MDL-28151 resource: prevent cropping of large images
Conflicts:

	theme/base/style/core.css
2012-07-03 10:15:44 +12:00
Eloy Lafuente (stronk7) dbaad889e8 Merge branch 'MDL-23813_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-02 23:53:29 +02:00
Aparup Banerjee 9d8d2ee619 MDL-23254 Authentication : used httpswwwroot as root url during authentication procedure where $PAGE->https_required() is specified. 2012-07-03 09:42:47 +12:00
Dan Poltawski 4a9727aa23 MDL-34081 dml: mssql driver was using case insensitve sql 2012-07-02 21:08:41 +02:00
Tim Hunt d8b0e1bc26 MDL-23813 glossary filter: add missing YUI dependency
Fix found by Huy Hoang. I am just making a commit.
2012-07-02 17:49:08 +01:00
Eloy Lafuente (stronk7) 50dfe52884 MDL-34121 bump versions to efectively get the upgrade performed. 2012-07-02 18:22:58 +02:00
Eloy Lafuente (stronk7) e2710cb374 Merge branch 'w27_MDL-34121_m22_killbackupmess' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-07-02 18:21:04 +02:00
Tim Hunt 78040342e0 MDL-34145 postgres driver: fix get_tables perf on <= 9.0
The query of the information_schema view seems to be painfully slow on
older versions of postgres (2000ms instead of 20ms). Therefore, it is
worth detecting that case, and using a more postgres specific feedback.
This is particularly important for 2.3+ unit tests.

Thanks to Petr Skoda for his help with this.
2012-07-02 16:21:17 +01:00
Dan Poltawski 041a4a7d94 Merge branch 'MDL-33916-MOODLE_22_STABLE-1' of git://git.luns.net.uk/moodle into MOODLE_22_STABLE 2012-07-02 17:37:16 +08:00
Dan Poltawski 8c4489c53b MDL-31802 - navigation: add a comment about session reduction 2012-07-02 17:30:12 +08:00
Dan Poltawski 66f9505a53 Merge branch 'MDL-31802_22' of git://github.com/aolley/moodle into MOODLE_22_STABLE 2012-07-02 17:25:07 +08:00
Petr Škoda 1d5490dfed MDL-34120 do not try to create new passwords for incorrectly deleted users
There is still some code that ignores delete_user() and instead hacks the user table directly, skip the borked user records for now when sending new passwords.
2012-07-02 16:48:45 +08:00
Dan Poltawski 8579d40d59 Merge branch 'w27_MDL-34045_m22_idnumber' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-07-02 16:34:28 +08:00
Dan Poltawski c185e558a6 Merge branch 'MDL-34025_m22' of https://github.com/markn86/moodle into MOODLE_22_STABLE 2012-07-02 16:28:20 +08:00
Rossiani Wijaya 06f52d36cc MDL-33030 Lesson module: fixed progress bar 2012-07-02 16:21:17 +08:00
Dan Poltawski ca6495bb72 Merge branch 'MDL-33924_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-02 16:19:28 +08:00
Dan Poltawski cd7265af3a Merge branch 'm22_MDL-33914' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-07-02 16:14:52 +08:00
Dan Poltawski 4769b04283 Merge branch 'MDL-33780_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-07-02 16:07:42 +08:00
Dan Poltawski 1693774015 Merge branch 'm22_MDL-33053_AICC_flattened_TOC' of git://github.com/scara/moodle into MOODLE_22_STABLE 2012-07-02 15:50:32 +08:00
Dan Poltawski de856ec6a8 Merge branch 'MDL-32605-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-07-02 15:46:07 +08:00
Dan Poltawski c25e1814ce Merge branch 'MDL-30008-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-07-02 15:43:21 +08:00
Andrew Davis 95718caae7 MDL-25476 messages: switched some notification emails to come from the support contact instead of admin 2012-07-02 15:41:38 +08:00
Dan Poltawski 42ed5416a5 Merge branch 'MDL-9073-22' of github.com:FMCorz/moodle into MOODLE_22_STABLE 2012-07-02 15:34:27 +08:00
Dan Poltawski bf9417002d Merge branch 'm22_MDL-31203_advanced_forum_search_always_reverts_date_from_and_to' of git://github.com/kanikagoyal/moodle into MOODLE_22_STABLE 2012-07-02 15:24:29 +08:00
Rossiani Wijaya b8251ddc44 fixed the ->spacer <br> param 2012-07-02 15:20:59 +08:00
Mark Nielsen 92e6515548 fixed undefined variable 2012-07-02 15:20:54 +08:00
Dan Poltawski 52f95b5431 Merge branch 'MDL-31987_assignment_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-07-02 15:12:57 +08:00
Rossiani Wijaya c6483eb217 MDL-31987 Assignment module: fixed upgrade version 2012-07-02 14:55:03 +08:00
Dan Poltawski 19219f8c10 MDL-31987 Assignment module: fix sql for postgres. 2012-07-02 14:54:03 +08:00
Rossiani Wijaya b9fdddbabd MDL-31987 Assignment module: Assignment count submissions correctly.
For advanced upload assignment, store file count of each submission
into assignment_submissions.numfiles

When counting submissions, if the assignment is open and tracking
drafts, only submissions which has send for marking are counted.
Otherwise, submissions which has numfiles > 0 are counted.

Also change a hardcoded 'submitted' to ASSIGNMENT_STATUS_SUBMITTED.

This patch was originally written by: Sunner Sun <sunner@gmail.com>.

I made some modifation to fixed count_real_submissions() query (ref: MDL-32207) in /mod/assignment/type/upload/assignment.class.php file
2012-07-02 14:54:03 +08:00
Rajesh Taneja af70031477 MDL-29969 Administration: Default value for numsections is set to 1 for site frontpage 2012-07-02 14:34:55 +08:00
Dan Poltawski de9de3cc1b Merge branch 'MDL-27842-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-07-02 11:27:33 +08:00
Sam Hemelryk 461499b836 Merge branch 'MDL-33932_22' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-07-02 14:31:43 +12:00
Sam Hemelryk 803122e110 Merge branch 'MDL-33627_22' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-07-02 14:05:57 +12:00
Eloy Lafuente (stronk7) 116714e8dc weekly release 2.2.3+ 2012-07-02 00:52:37 +02:00
Eloy Lafuente (stronk7) 880b243c8d Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-07-02 00:41:10 +02:00
Sam Hemelryk 1d2b991046 Merge branch 'MDL-34044-22' of git://github.com/srynot4sale/moodle into MOODLE_22_STABLE 2012-07-02 08:22:26 +12:00
Eloy Lafuente (stronk7) 260bbdbc09 Merge branch 'MDL-32249c-22' of github.com:srynot4sale/moodle into MOODLE_22_STABLE 2012-07-01 02:15:19 +02:00
Sun Zhigang 713e6922e0 MDL-31201 wiki: fix a hardcoded string 2012-06-30 22:01:24 +02:00
Petr Škoda 3721bbf279 MDL-34123 use user's lang when sending new emails 2012-06-30 20:47:04 +02:00
Petr Škoda f2b9ab28e6 MDL-34036 fix course role user selector 2012-06-30 15:41:08 +02:00
Petr Škoda 5464847212 MDL-34121 drop unused backup tables that were supposed to be dropped long ago
The backup/restore leftovers that referenced these will be dropped in 2.4
2012-06-30 14:04:31 +02:00
Petr Škoda c45e903821 MDL-34045 fix invalid idnumber field type in cohort form 2012-06-30 07:51:45 +02:00
Ankit Agarwal 06314d7faf MDL-27842 calendar: remove usage of deprecated function calendar_print_event 2012-06-29 14:56:56 +08:00
Frederic Massart b8fba415a5 MDL-32297 Forms: Date Picker JS popup is not constraint to parent form 2012-06-29 14:21:20 +08:00
Frederic Massart f544bb6bf6 MDL-34077 Repositories: Flickr and Picasa can have custom names
Conflicts:

	repository/picasa/lib.php
2012-06-28 12:13:57 +08:00
Adam Olley 66424a611f MDL-31802: Remove section summaries from navigation_cache 2012-06-28 11:08:08 +09:30
AMOS bot 65c02d62ae Automatically generated installer lang files 2012-06-28 00:31:30 +00:00
Charles Fulton a00d309b33 MDL-32851 resource: skip resources with invalid files 2012-06-27 06:21:29 -07:00
Tim Hunt 5f980afc0e MDL-33924 quiz: incorrect foreign key definition.
Thanks to Jean-Michel Vedrine for spotting this.≈
2012-06-27 08:03:32 +01:00
Mark Nelson 0601dd6961 MDL-34025 - quiz secure window: fix popup closing 2012-06-27 14:32:04 +08:00
Ankit Agarwal 404cc924aa MDL-32605 calendar: Fixing the missing parameter for get_string call 2012-06-27 13:31:54 +08:00
Aaron Barnes c657426438 MDL-34044 completion: Fix regression caused by MDL-26626 2012-06-27 12:01:36 +12:00
Tim Hunt f54292267b MDL-32062 question engine: fix re-grading attempts from 2.0
The code to upgrade attempts from before Moodle 2.0 to 2.1 created
attempt data that was not exactly the same as a new attempt created in
2.1+. This did not matter very much - revew and the quiz reports all
worked OK - but it broke on re-grade.

These changes detect the problem data in the re-grade code, an apply a
work-around so that the re-grade gives the correct result.
2012-06-26 09:57:41 +01:00
Tim Hunt dd613b60ec MDL-34008 formslib: repeat_elements replace {no} for submits & buttons 2012-06-26 09:51:36 +01:00
Tim Hunt f4bd9d38a6 MDL-33780 question import: strip UTF8 BOM
Previously, if there was a byte-order mark at the start of the file, the
import would just break, which was silly. Much better to just strip it
off.
2012-06-26 09:51:23 +01:00
Tim Hunt 62cfefdbee MDL-30883 question flags: aria attributes for accessibility
Also, update code to use html_writer, and fix pointer style when not
editable.
2012-06-26 09:50:43 +01:00
Aaron Barnes 91190892f1 MDL-32249 completion: Make grade criteria more consistent
Also, round course grades and remove hardcoded string.

Note: This patch also removes the ability to update the course grade
from the completion interface
2012-06-26 13:58:19 +12:00
AMOS bot f0ad78b829 Automatically generated installer lang files 2012-06-26 00:31:30 +00:00
AMOS bot adb1616724 Merge branch 'MOODLE_22_STABLE' into install_22_STABLE 2012-06-26 00:31:30 +00:00
Andreas Grabs 90e0da6f75 MDL-33932_22 - added array_unique() 2012-06-25 21:51:59 +02:00
Andreas Grabs c6fbd0c8bf MDL-33627 - feedback block now show all feedbacks 2012-06-25 21:51:56 +02:00
Dan Poltawski 68b0cae5bc Merge branch 'MDL-33984_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-06-25 21:57:08 +08:00
Eloy Lafuente (stronk7) 72988ea0f4 MDL-33984 mysql: take rid of old unicode & mysql 4.1 message on error. 2012-06-25 15:49:27 +02:00
Dan Poltawski e9a8da9d76 Merge branch 'MDL-33984_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-06-25 18:47:10 +08:00
Eloy Lafuente (stronk7) b030363b02 MDL-33984 mysql - raise min version to 5.1.33.
Because of http://bugs.mysql.com/bug.php?id=42758 and other benefits.
2012-06-25 12:33:22 +02:00
AMOS bot 9f0e9e6296 Automatically generated installer lang files 2012-06-25 00:31:44 +00:00
Eloy Lafuente (stronk7) 1257e3b729 Merge branch 'w25_MDL-33733_m22_unzipstorage' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-06-25 01:21:52 +02:00
Eloy Lafuente (stronk7) 59f80a1b88 weekly release 2.2.3+ 2012-06-24 18:34:58 +02:00
Eloy Lafuente (stronk7) 84acd5d794 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-06-24 18:28:55 +02:00
Dan Marsden fc79f4ca61 MDL-33914 SCORM show scrollbar on TOC if too long. 2012-06-22 22:22:32 +12:00
Jason Fowler 61c520c03c MDL-33957 - Installation - Fixing field lengths so they are long enough for data entry, and don't distort page rendering 2012-06-22 10:48:08 +08:00
AMOS bot e0c06eddc3 Automatically generated installer lang files 2012-06-22 00:31:26 +00:00
Sam Hemelryk b917d504a3 Merge branch 'MDL-27675_22' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-06-21 11:29:32 +12:00
Sam Hemelryk 217926aaa1 Merge branch 'MDL-33808-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-06-21 10:06:32 +12:00
Andrew Robert Nicols 83d3858b16 MDL-33916 Ensure that capabilities are checked for cached user enrolments 2012-06-20 17:02:00 +01:00
Aparup Banerjee f4eaf5c7f0 Merge branch 'wip-MDL-33811-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-06-20 17:18:30 +08:00
Frederic Massart 6991ad41a3 MDL-9073 Glossary: uncategorised entries are printable 2012-06-20 12:26:59 +08:00
Jason Fowler c9af9c7570 MDL-32290 - Repositories - Fixing missing slash from the URL path 2012-06-20 10:42:06 +08:00
AMOS bot df4870fb31 Automatically generated installer lang files 2012-06-20 00:31:20 +00:00
Dan Poltawski c80ffce497 MDL-3971 - mod_forum: contain () in span 2012-06-20 11:40:52 +12:00
Jason Fowler 0646f76fb6 MDL-32990 - Repositories - Updating Box.net API calls to use HTTPS 2012-06-19 15:07:08 +08:00
Dan Poltawski 63472c089e MDL-33808 - format title on the repository instance screen 2012-06-19 12:10:44 +08:00
Dan Poltawski 2249f52fe2 MDL-33808 - incorrect cleaning of repository names 2012-06-19 11:27:26 +08:00
Eloy Lafuente (stronk7) 984109868d Merge branch 'MDL-33523_22' of git://github.com/dmiletic/moodle into MOODLE_22_STABLE 2012-06-19 03:10:12 +02:00
AMOS bot ecbe7b1154 Automatically generated installer lang files 2012-06-19 00:31:19 +00:00
Sam Hemelryk 13d01b3338 MDL-33811 Fixed left over debugging code preventing proper setting of YUI gallery version 2012-06-19 11:26:50 +12:00
Dan Poltawski 5e1fc324de Merge branch 'MDL-26892_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-06-18 21:40:59 +08:00
Dan Poltawski d9a92e8f41 Merge branch 'wip-MDL-33603-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-06-18 15:07:42 +08:00
Dan Poltawski 2b4dff5697 Merge branch 'wip-mdl-33607-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-06-18 14:34:39 +08:00
Adrian Greeve d9a3cd37fe MDL-33603 - data - added another sql query to allow links to records to work. 2012-06-18 10:25:47 +08:00
Petr Skoda 1d823156f7 MDL-33733 fix broken zip_packer->extract_to_storage() when extracting from stored_file 2012-06-17 23:00:47 +02:00
AMOS bot 124bda4f28 Automatically generated installer lang files 2012-06-16 00:31:32 +00:00
Eloy Lafuente (stronk7) b7f81b199c weekly release 2.2.3+ 2012-06-15 20:28:01 +02:00
Tim Hunt 6d94ae6827 MDL-26892 questions: images lost during upgrade.
This affects questions shared in the system or course category areas of
the question bank.

Thanks to Chris Edwards for working out what was going wrong.
2012-06-15 17:01:18 +01:00
Dan Poltawski 034f40257e Merge branch 'MDL-33756_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-06-15 18:38:56 +08:00
Rajesh Taneja f68fd67f0c MDl-33607 wiki-2: check subwiki before fetching it from db 2012-06-15 16:58:14 +08:00
Jerome Mouneyrac ebf57c7e94 MDL-33770 Web service: create_groups should not require enrolmentkey
Conflicts:

	group/externallib.php
2012-06-15 15:18:29 +08:00
Dan Poltawski b6c9003756 Merge branch 'MDL-32279_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-06-15 11:03:19 +08:00
Eloy Lafuente (stronk7) 0d1bd690cb MDL-33756 backup: converters only available in general course backups. 2012-06-15 02:29:11 +02:00
Eloy Lafuente (stronk7) aa0bf8596a MDL-32279 glossary filter: nasty hack to get filter working with cached texts.
For Moodle 2.3 the filters API has been extended to offer a
setup() method, able to define all the page/init requirements
for each filter.

For this (2.2) version, where the setup() method is
not available, we are abusing badly the hash() method because
it's the unique point out from the caching mechanism where we
can inject such requirements. Alternative solutions like
backporting the API or add the requirements to all the pages
have been considered worse than this abuse.

Note, finally that this is not backportable to 2.1 because the
glossary filter there is a legacy one, so it does not have the
hash() facility either. Unique workaround there is to disable caching.
2012-06-15 00:39:08 +02:00
Darko Miletic 65345f200c MDL-33523: fix 2012-06-14 18:05:32 -03:00
Dan Poltawski be87ace1b6 Merge branch 'MDL-33035-m22' of git://github.com/sunner/moodle into MOODLE_22_STABLE 2012-06-14 12:29:21 +08:00
Frederic Massart f17cc9cfe8 MDL-30008 Filepicker: correctly handles allowed file types 2012-06-14 10:01:57 +08:00
Dan Poltawski c2a3bd52d2 Merge branch 'MDL-33581_MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-06-13 17:45:36 +08:00
Eloy Lafuente (stronk7) cd9f44d8df MDL-33682 backup: keep old behavior, aka, use section number on empty section name. 2012-06-13 00:56:57 +02:00
Eloy Lafuente (stronk7) 0f63503db0 Merge branch 'MDL-33682_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-06-13 00:56:22 +02:00
Eloy Lafuente (stronk7) 897329c247 Merge branch 'MDL-33681_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-06-13 00:06:41 +02:00
Tim Hunt de50c77537 MDL-33682 backup: cope with sections called '0'
It was not previously possible to have a section called 0 because of
bugs in the standard course formats, but we hit this with the OU course
format. You got an exception because backup settings tested to see if
their lable was empty, which means a section name of '0' was fatal.
Should work now.
2012-06-12 17:51:40 +01:00
Tim Hunt 8ad93cebfa MDL-33681 course: cannot have a section called '0'.
No reason to prevent this. It is just a matter of doing a proper test,
rather than the sloppy PHP !empty().
2012-06-12 17:51:30 +01:00
Aparup Banerjee 89c3d84eda Merge branch 'm22_MDL-33515' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-06-12 11:27:48 +08:00
Eloy Lafuente (stronk7) 63e5ddeb20 weekly release 2.2.3+ 2012-06-12 02:59:54 +02:00
Eloy Lafuente (stronk7) acb0b565b1 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-06-12 02:55:22 +02:00
Aparup Banerjee c93ff53c82 Merge branch 'MDL-33548_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-06-11 13:55:54 +08:00
Eloy Lafuente (stronk7) 75bb216d66 MDL-33455 restore: process grade_grades only if user matches.
Note this has been applied both to individual activities grade_grades
and to general ones.
2012-06-11 11:14:57 +08:00
Dan Poltawski e16922ede9 MDL-33514 - rss: also exclude suspended users feeds
Thanks Petr!
2012-06-11 10:27:25 +08:00
AMOS bot cdfa338430 Automatically generated installer lang files 2012-06-09 00:31:21 +00:00
Dan Marsden a911b4cb3e MDL-33515 SCORM - attempts grading setting is confusing - last attempt is really last completed attempt. 2012-06-08 20:35:52 +12:00
Jerome Mouneyrac 1850ab013c MDL-33581 missing parameter defaults for some external functions
Conflicts:

	course/externallib.php
2012-06-08 12:00:20 +08:00
Eloy Lafuente (stronk7) 887e2c8535 Merge branch 'w23_MDL-33583_m22_keepall' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-06-08 01:56:31 +02:00
Petr Skoda b98956fdd2 MDL-30725 save automated external only backups directly to ext storage, do not pollute file pool
This solution is based on code by Tony Levi, thanks!
2012-06-08 01:46:19 +02:00
Sam Hemelryk 29515af1d8 Merge branch 'MDL-33080_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-06-08 10:23:04 +12:00
Sam Hemelryk 52b6c9bc01 Merge branch 'MDL-32325-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-06-08 10:20:37 +12:00
Eloy Lafuente (stronk7) 746a8b2838 Merge branch 'MDL-32985_integration_22' of git://github.com/merrill-oakland/moodle into MOODLE_22_STABLE 2012-06-08 00:05:01 +02:00
Dan Poltawski 1e93a653a4 Merge branch 'MDL-33532_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-06-07 22:23:48 +08:00
Tim Hunt a41848a445 MDL-33532 quiz editing: let uses enter locale floats.
So, for example, Croatian users can set the maximum grade to 65,5.

Conflicts:

	mod/quiz/edit.php
2012-06-07 12:58:39 +01:00
Petr Skoda 31ffef36ac MDL-33583 really keep all automated backup files when told to do so 2012-06-07 11:13:12 +02:00
Andreas Grabs bac1415a0b MDL-27675 - Feedback module abuses data_submitted 2012-06-06 23:16:54 +02:00
Tim Hunt e78e39cdbb MDL-33548 quiz manual grading: check the grade is in range.
To do this nicely, I refactored some code out of the quiz manual grading
report.
2012-06-06 20:23:05 +01:00
Eric Merrill 4e6fbf663c MDL-32985 cron: Fixing related problem with setting of lastnotifyfailure
Because of a flaw in the logic, lastnotifyfailure was not set unless
there was a failure. This means that after 1 hour of no failures, the
function would execute every cron cycle, which has a pretty high cost
on large sites.
2012-06-06 12:06:22 -04:00
Dan Poltawski bc8bf2376c MDL-33514 - rss: only retrieve RSS feeds for valid users 2012-06-06 23:37:45 +08:00
Frederic Massart d1e6d47f1a MDL-32325 Glossary: Entrylist print version is XHTML compliant 2012-06-06 13:17:26 +08:00
Sam Hemelryk 50eb136630 Merge branch 'MDL-33090_22-missing-xmldb-strings' of git://github.com/rlorenzo/moodle into MOODLE_22_STABLE 2012-06-06 15:37:28 +12:00
Dan Poltawski 99778c82c7 Merge branch 'MDL-33119_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-06-06 10:32:07 +08:00
AMOS bot af7278a4ff Automatically generated installer lang files 2012-06-06 00:31:29 +00:00
Sam Hemelryk 57dd3c6909 Merge branch 'MDL-30837-22' of https://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-06-06 10:59:43 +12:00
Sam Hemelryk 8d7887cdb5 MDL-31520 user-ws: Optimised if statement for email access by moving admin check to the start 2012-06-06 10:37:36 +12:00
Sam Hemelryk 65d7459b6d Merge branch 'MDL-31520-MOODLE_22_STABLE' of git://github.com/fabiomsouto/moodle into MOODLE_22_STABLE 2012-06-06 10:37:36 +12:00
Sam Hemelryk 6a27fc8b34 Merge branch 'MDL-33353_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-06-06 10:25:06 +12:00
Sam Hemelryk 9331c1ec8c Merge branch 'MDL-31823_22' of git://github.com/dmonllao/moodle into MOODLE_22_STABLE 2012-06-06 10:13:39 +12:00
Sam Hemelryk 46d433f701 Merge branch 'MDL-33441-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-06-06 10:09:54 +12:00
Sam Hemelryk 928a51ad3d Merge branch 'MDL-33487-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-06-06 10:06:05 +12:00
Sam Hemelryk 882ef2f226 MDL-26277: Fixed whitespace post integration 2012-06-06 09:13:58 +12:00
Sam Hemelryk 042ae10e1d Merge branch 'MDL-26277-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-06-06 09:07:17 +12:00
Dan Poltawski 20253ec57b MDL-33441 course/lib.php prevent fatal error when no visible categories 2012-06-05 16:41:30 +08:00
Aparup Banerjee 092e389f4f Merge branch 'wip-mdl-33455-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-06-05 15:15:44 +08:00
Koen Roggemans bc861f559d MDL-29103 web service strings improvement 2012-06-05 12:44:02 +08:00
Dan Poltawski c4b48436f9 Merge branch 'MDL-33401-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-06-05 12:34:58 +08:00
Tim Barker db181b6a14 MDL-33476 repositories: Added instructions to assist with setting up Dropbox keys 2012-06-05 12:16:18 +08:00
Dan Poltawski 5fd1ca61b8 Merge branch 'MDL-30880_feedback_property_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-06-05 11:58:40 +08:00
Rajesh Taneja 33db7d7276 MDL-33455 gradebook: Grade will not be inserted for unknown user 2012-06-05 11:21:29 +08:00
Dan Poltawski dd428d8c06 MDL-31460 mod_forum: fix trailing whitespace 2012-06-05 09:35:34 +08:00
Dan Poltawski e2cc9b272e Merge branch 'MDL-31460_unsubscribe_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-06-05 09:35:31 +08:00
Frederic Massart 3824133b8e MDL-30837 Accessibility: removed navigation icons default alt text 2012-06-05 09:16:38 +08:00
Ankit Agarwal c8471b85e1 MDL-33401 blocks: Allow managers to have block:edit capability by default 2012-06-05 08:50:36 +08:00
Eloy Lafuente (stronk7) 55a83bd034 Merge branch 'MDL-32649_ratings_sort_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-06-05 02:23:30 +02:00
Eloy Lafuente (stronk7) 5d0c60f882 MDL-32985 cron: prevent notices on "new" sites. 2012-06-05 02:15:49 +02:00
Eloy Lafuente (stronk7) 8b01dd9d0f Merge branch 'MDL-32985_m22' of git://github.com/merrill-oakland/moodle into MOODLE_22_STABLE 2012-06-05 02:02:40 +02:00
Eloy Lafuente (stronk7) 2b75dbe9b1 MDL-33080 IMSCC: look for imsmanifest.xml @ root dir 2012-06-05 01:05:52 +02:00
Eloy Lafuente (stronk7) b71e34d890 MDL-33353 make fix_utf8() to work better under some systems.
This is a partial backport of MDL-32586 and MDL-33007 in order
to get some systems handling utf-8 strings better:

- debian/ubuntu. Avoid some glibc iconv() implementations to
  throw one PHP notice each time the //IGNORE option is used.
- redhat. Avoid some implementations to return false
  each time the //IGNORE option is used.

Note this does not include any backport of the admin notification
not the configmin stuff.
2012-06-04 12:40:37 +02:00
David Monllaó e313d1695b MDL-31823 - Remote hosts users created via mnet enrolments marked as confirmed 2012-06-04 10:39:08 +02:00
Dan Poltawski 085adaf545 Merge branch 'MDL-29173_calc_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-06-04 16:22:07 +08:00
AMOS bot 129abbb41b Automatically generated installer lang files 2012-06-02 00:31:36 +00:00
Dan Poltawski 4819f2eadd MDL-33487 - mod_forum: incorrect param ordering
Thanks to Garret Gengler for spotting it.
2012-06-01 23:35:49 +08:00
Tim Hunt 3c96772120 MDL-33119 quiz complete report: fix placeholders in attempt string. 2012-06-01 08:57:05 -06:00
Eloy Lafuente (stronk7) fbbb4cc708 weekly release 2.2.3+ 2012-06-01 09:48:50 +02:00
Eloy Lafuente (stronk7) f674c132b3 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-06-01 09:43:19 +02:00
Andrew Davis d09e2a36f2 MDL-30880 grade: added a check for the feedback property existing before it is used 2012-06-01 10:44:14 +07:00
Dan Poltawski 5411ca9e40 Merge branch 'MDL-33434_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-05-31 16:59:37 +08:00
Andrew Robert Nicols ed2b8be31a MDL-33040 Reports : Validate dates correctly on log page 2012-05-31 15:20:36 +08:00
Aparup Banerjee c7fc98256a Merge branch 'MDL-33140_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-05-31 14:15:44 +08:00
Frederic Massart d1ced7c144 MDL-33398 Cron: fix wrong variable type in completion criterias 2012-05-31 12:50:48 +08:00
Dan Poltawski 4625a1b540 Merge branch 'MDL-33397-22' of https://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-05-31 10:36:05 +08:00
Eloy Lafuente (stronk7) 21bb3f9466 MDL-33434 mssql: Improve handling of returned ids on insert.
This commit moves from the batch SCOPE_IDENTITY() way to return
the inserted ids to the OUTPUT alternative (supported and
recommended since 2005). Also the handling of possible return
values is improved, with all the alternatives leading to expected results.
2012-05-31 01:44:45 +02:00
Eloy Lafuente (stronk7) 514da614c3 MDL-33434 dml: define expected results when unique constraint is violated on insert. 2012-05-31 01:44:23 +02:00
Tim Hunt 78e010e9df MDL-33140 quiz browser security: block copy/paste more 2012-05-30 14:49:40 -06:00
Sam Hemelryk 91d9449144 Revert "Merge branch 'MDL-27675_22_wip' of git://github.com/grabs/moodle into MOODLE_22_STABLE"
This reverts commit e5d6cd5461, reversing
changes made to dcd5d0840b.
2012-05-30 16:36:01 +12:00
Dan Poltawski 787132eabc Merge branch 'MDL-33398b-22' of git://github.com/srynot4sale/moodle into MOODLE_22_STABLE 2012-05-30 11:36:01 +08:00
Aaron Barnes 8e6ec68cdf MDL-33398 completion: Fix coding error (should be arrays not objects) 2012-05-30 13:38:39 +12:00
AMOS bot 562129c91d Automatically generated installer lang files 2012-05-30 00:31:22 +00:00
Andrew Davis db5e62d250 MDL-29173 grade: altered the definiton of round() and added some more unit tests 2012-05-29 16:31:36 +07:00
Dan Poltawski c5fc1191e0 Merge branch 'MDL-30905-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-05-29 16:20:36 +08:00
Dan Poltawski ef6ad52352 Merge branch 'wip-mdl-33102-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-05-29 16:11:08 +08:00
Frederic Massart 03ba959758 MDL-33397 Filepicker: cancel button always present in private files 2012-05-29 15:18:05 +08:00
Dan Poltawski 1605e8d8d2 Merge branch 'MDL-30888-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-05-29 15:12:43 +08:00
Dan Poltawski 865f537fea Merge branch 'MDL-33212-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-05-29 15:10:55 +08:00
Andrew Davis cd2b730489 MDL-31460 mod_forum: added some controls to mod/forum/unsubscribeall.php to prevent the removal of subscriptions the user shouldnt be able to delete 2012-05-29 08:22:38 +07:00
sam marshall bcaed19cc9 MDL-33212 Course page: Eye icon should override other conditions 2012-05-28 16:26:36 +01:00
Dan Poltawski 92f03977db Revert "MDL-33212 Course page: Eye icon should override other conditions"
This reverts commit e57802961b.
2012-05-28 16:58:09 +08:00
Dan Poltawski 7e3707635c Merge branch 'MDL-33212-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-05-28 16:03:11 +08:00
Dan Poltawski d855d780a3 Merge branch 'MDL-31393_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-05-28 15:24:08 +08:00
Dan Poltawski 0e55d4af36 Merge branch 'wip-MDL-32199-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-05-28 15:18:57 +08:00
Charles Fulton c9ab8472a6 MDL-33194 forum: correct number of parameters for get_record() 2012-05-28 14:59:19 +08:00
Dan Poltawski f4cfa2cbd6 Merge branch 'm22_MDL-27368' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-05-28 14:32:53 +08:00
Adrian Greeve 35124c3c4f MDL-32199 - forum - Ensure that forum RSS feeds don't leak posts and discussions.
Alteration to the code to hide the body of the post / discussion

rebase conflict resolution
2012-05-28 13:08:12 +08:00
Dan Poltawski 857e992ff7 Revert "MDL-29173 grade: altered the definiton of round() in /lib/evalmath/evalmath.class.php"
Breaking unit tests.

This reverts commit 4be0947bbe.
2012-05-28 12:38:29 +08:00
Dan Poltawski a66bb4213e Merge branch 'MDL-29173_calc_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-05-28 12:16:26 +08:00
Sam Hemelryk 5a3f6eb468 Merge branch 'MDL-33364_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-05-28 13:51:09 +12:00
Sam Hemelryk 5bd7b691b6 MDL-27675 mod_feedback: Tidy up of phpdocs and scope within feedback mod 2012-05-28 13:39:13 +12:00
Eloy Lafuente (stronk7) ce46ec1eaf MDL-33364 automated backup: return and log each course result correctly 2012-05-28 02:50:02 +02:00
Sam Hemelryk e5d6cd5461 Merge branch 'MDL-27675_22_wip' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-05-28 11:44:18 +12:00
Sam Hemelryk dcd5d0840b Merge branch 'MDL-33191_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-05-28 11:21:58 +12:00
Sam Hemelryk d48f4d2f75 Merge branch 'MDL-33325-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-05-28 10:52:12 +12:00
Andreas Grabs 64258fa070 MDL-27675 - Feedback module abuses data_submitted 2012-05-28 00:37:19 +02:00
Dan Marsden 35f858e855 MDL-27368 Clean up invalid course completion records
keep oldest timestamps from all records
2012-05-28 09:03:44 +12:00
Eloy Lafuente (stronk7) 5bb8e807eb weekly release 2.2.3+ 2012-05-25 12:50:52 +02:00
Eloy Lafuente (stronk7) 5606d3aa5c Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-05-25 12:44:47 +02:00
Dan Poltawski adb9f1aa1a Merge branch 'MDL-29924-22' of git://github.com/FMCorz/moodle into MOODLE_22_STABLE 2012-05-25 11:14:38 +08:00
Dan Poltawski 2c1dda9302 MDL-28557 - calendar: fix trivial whitespace issue 2012-05-25 11:09:10 +08:00
Dan Poltawski 4902915edb Merge branch 'MDL-28557-22' of git://github.com/bostelm/moodle into MOODLE_22_STABLE 2012-05-25 11:09:07 +08:00
Jerome Mouneyrac 8d83e44bc4 MDL-33028 display debuginfo when server die at developer mode 2012-05-25 10:23:02 +08:00
AMOS bot 62c4db2a24 Automatically generated installer lang files 2012-05-25 00:31:24 +00:00
Ankit Agarwal 792d1ea2dd MDL-33325 folder: 'set as main file' option removed, from filepicker when editing a file in a folder resource 2012-05-24 16:12:39 +08:00
Andrew Robert Nicols a8cf5e9574 MDL-33186 Ensure that the comment textarea exists before toggling it 2012-05-24 15:53:57 +08:00
Aparup Banerjee c61f5f8730 MDL-33318 lib : code style fix 2012-05-24 15:42:32 +08:00
Aparup Banerjee 4fb3cc5894 Merge branch 'm22_MDL-33318' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-05-24 15:42:22 +08:00
Frederic Massart 04c5f73665 MDL-30905 Accessibility: recent activity list is XHTML compliant 2012-05-24 13:50:45 +08:00
Frederic Massart 0d1e39b466 MDL-30903 Accessibility: user profile page uses table headers 2012-05-24 13:34:35 +08:00
Dan Marsden f67ac6697c MDL-33318 use $CFG->admin in path correctly - thanks to Clarence Prudhoe for report/fix 2012-05-24 14:09:36 +12:00
Frederic Massart bfb54eeea3 MDL-30888 Accessibility: small calendars summary does not display 'Data table' 2012-05-24 09:24:44 +08:00
AMOS bot bb5bda8aa1 Automatically generated installer lang files 2012-05-24 00:31:35 +00:00
Sam Hemelryk 3d1e457e3e Merge branch 'MDL-32203c-22' of git://github.com/srynot4sale/moodle into MOODLE_22_STABLE 2012-05-24 11:48:40 +12:00
Sam Hemelryk 05ceae9bb2 Merge branch 'MDL-26562-22' of git://github.com/vadimonus/moodle into MOODLE_22_STABLE 2012-05-24 10:56:16 +12:00
sam marshall e57802961b MDL-33212 Course page: Eye icon should override other conditions
Conflicts:

	lib/conditionlib.php
2012-05-23 13:50:42 +01:00
Dan Poltawski 605b539184 Merge branch 'wip-mdl-32155-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-05-23 13:28:08 +08:00
Rajesh Taneja c58c05ad4f MDL-32155 blocks: User can't access file, if block is hidden or doesn't have block:view capability 2012-05-23 12:57:31 +08:00
Andrew Davis fcb203c11b MDL-32649 rating: fixed the sorting in /rating/index.php 2012-05-23 08:36:51 +07:00
Mary Evans 11ba685a7b MDL-33191 theme_magazine: changes to magazine/config.php fixes $THEME->layouts for Base & Standard 2012-05-22 17:15:06 +01:00
Sun Zhigang 0f6113cba0 MDL-33035 workshop: typo in strings 2012-05-22 19:23:43 +08:00
Dan Poltawski b51ac4e290 Merge branch 'w21_MDL-32564_m22_timezonecontext' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-05-22 13:34:24 +08:00
Dan Poltawski fee000ff4e Merge branch 'MDL-32981-22' of github.com:FMCorz/moodle into MOODLE_22_STABLE 2012-05-22 11:16:06 +08:00
Frederic Massart 0c9fb0c1cb MDL-32981 Filepicker: my private files uses edit page instead of view 2012-05-22 10:50:44 +08:00
Sam Hemelryk 3e11be405b Merge branch 'MDL-32204-mnet-auth_22' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-05-22 14:49:23 +12:00
Kordan 319887f86e MDL-33055 theme_formal_white: changed "general" to "standard" in $theme->layouts array index 2012-05-22 14:31:29 +12:00
Rajesh Taneja b27eef0f7e MDL-33102 blogs: userid will be added during blog visibility upgrade 2012-05-22 10:00:30 +08:00
Andrew Davis 6dbe8ddbd8 MDL-29173 grade: altered the definiton of round() in /lib/evalmath/evalmath.class.php 2012-05-22 08:39:31 +07:00
Fábio Souto cd358c666f Allow admin to consult user email address
Currently the admin user cannot check the user email using this function. This fix allows the admin user to retrieve the email in any situation.
2012-05-21 10:36:32 +01:00
Mary Evans bb61c874bb MDL-33118 theme_mymobile: changed MAIN_CONTENT_TOKEN in layout/embedded.php to new format 2012-05-20 22:44:05 +01:00
Vadim Dvorovenko d78b67b2fc MDL-26562
Signed-off-by: Vadim Dvorovenko <vadimon@mail.ru>
2012-05-20 19:45:38 +07:00
Rex Lorenzo c31149fa67 MDL-33090 - Missing strings in XMLDB editor - added in missing strings 2012-05-19 21:31:08 -07:00
Petr Skoda 2f76ac6362 MDL-32564 fix admin/timezone.php page setup 2012-05-19 18:54:40 +02:00
Eloy Lafuente (stronk7) 14fdcb4f13 weekly release 2.2.3+ 2012-05-19 12:23:35 +02:00
Eloy Lafuente (stronk7) 2871fedb58 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-05-19 12:17:27 +02:00
Adrian Greeve 42446a0b6d MDL-32126 replaced _order with sortorder to make sorting work in oracle 2012-05-18 11:25:18 +02:00
Dan Poltawski 7fcdb8275c Merge branch 'MDL-32535-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-05-18 10:28:26 +08:00
AMOS bot 1ac90bc28e Automatically generated installer lang files 2012-05-18 00:31:51 +00:00
Matteo Scaramuccia 8e1f3b11c7 MDL-33053 AICC: Incorrect Table Of Content hierarchy using "structured" AICC
courses
[Fix] 'scorm_scoes' doesn't contain all the entries described in the DES file
[Fix] HTMLizing the parent relationship, described in the CST file,
      fails: it considers 'index = 0' (found) equals to 'false'	(not found)
2012-05-18 00:40:50 +02:00
Rajesh Taneja a71e869f34 MDL-32866 filemanager: Fixed Page url typo 2012-05-17 16:48:35 +08:00
Frederic Massart 3dc794a8f5 MDL-29924 Glossary: Entry attachments displayed in Moodle dialogue 2012-05-17 15:02:48 +08:00
Dan Poltawski 1765044c64 Merge branch 'w20_MDL-32967_m22_sqlsrvstrings' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-05-17 14:30:38 +08:00
Dan Poltawski 573e559c96 Merge branch 'MDL-31814_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-05-17 14:11:22 +08:00
Juho Viitasalo 5724bb16eb MDL-31850 wiki: extra whitespace removed from form 2012-05-17 14:49:21 +12:00
Sam Hemelryk 843599ae86 Merge branch 'm22_MDL-32794' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-05-17 12:27:37 +12:00
Aparup Banerjee 5a6042c9be Merge branch 'MDL-32633_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-05-16 16:05:42 +08:00
sam marshall e8cc54227e MDL-32988 Lib: Course delete does availability/completion in wrong order
When deleting modules that failed to delete using normal method, it deleted
the course-modules table first and then the availability/completion,
which depend on the entries in course-modules table. This commit switches
the order.
2012-05-16 14:04:13 +08:00
Aparup Banerjee b3e26da9d9 MDL-32921 lti : reused a moodle_url. 2012-05-16 13:51:53 +08:00
Chris Scribner de05ce07c2 MDL-32921: Fixing an issue with adding LTI tool providers from the admin UI 2012-05-16 13:51:45 +08:00
AMOS bot c163f86350 Automatically generated installer lang files 2012-05-16 00:31:36 +00:00
Henning Bostelmann d9df0e34fc MDL-28557 Calendar filters: show all group events in course to teacher 2012-05-15 22:25:01 +01:00
Sam Hemelryk f97184b9c9 Merge branch 'MDL-31458-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-05-16 09:12:06 +12:00
Wiktor Wandachowicz f8e01f918b MDL-32204 MNet: set auth method to mnet for users enrolled remotely 2012-05-15 15:36:42 +02:00
Aparup Banerjee 479f14a07b Merge branch 'MDL-32861-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-05-15 16:10:33 +08:00
Aparup Banerjee 1eab78b30e Merge branch 'MDL-25695-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-05-15 11:08:21 +08:00
AMOS bot 2ce6285fb0 Automatically generated installer lang files 2012-05-15 00:31:40 +00:00
Dan Marsden 4e3a4dd55c MDL-32794 SCORM prevent items in tree that have no navigation from triggering a navigation change. 2012-05-15 09:37:03 +12:00
Eric Merrill 278fc5d6dc MDL-32985 cron: don't execute notify_login_failures unnecessarily 2012-05-14 11:22:42 -04:00
Dan Poltawski 4acfacdbf8 MDL-32714 workshop - fix broken unit tests
Using a quick and dirty recordset mock. Thanks to Eloy for the
brainpower.
2012-05-14 22:17:19 +08:00
Dan Poltawski f4d4fcaa41 Merge branch 'MDL-32863_22' of git://github.com/jonof/moodle into MOODLE_22_STABLE 2012-05-14 20:49:12 +08:00
Dan Poltawski 418f8dd9a7 Merge branch 'MDL-31719_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-05-14 15:53:25 +08:00
Dan Poltawski 7e647445dd Merge branch 'MDL-31804_ambiguous_sql_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-05-14 14:20:16 +08:00
Dan Poltawski 97bb109b55 Merge branch 'MDL-24401_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-05-14 14:12:36 +08:00
Dan Poltawski a6bc302e64 Merge branch 'w20_MDL-32915_m22_chatdiv' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-05-14 14:06:45 +08:00
Dan Poltawski 043a0d4c27 Merge branch 'wip-MDL-32872-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-05-14 14:01:03 +08:00
Dan Poltawski 8dd8427aa2 Merge branch 'wip-MDL-32611-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-05-14 13:13:06 +08:00
Jonathon Fowler d5e59d8950 MDL-31804 duplicated columns cause Oracle error in grader report 2012-05-14 11:08:48 +07:00
Jonathon Fowler f3248ac9f2 MDL-32863 question: fix for Oracle ambiguous column error 2012-05-14 12:53:36 +10:00
Dan Poltawski 39a3a53069 Merge branch 'MDL-32714-rubric_22' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-05-14 10:41:54 +08:00
Andrew Robert Nicols bf03cf12b7 MDL-32340 Improve performance of calendar selection 2012-05-14 14:05:25 +12:00
Adrian Greeve 7d127b53e3 MDL-32126 - data - backport of advanced search re-write 2012-05-14 12:39:30 +12:00
Sam Hemelryk 734d880e35 MDL-32611 editcategory: Fixed up navigation error. 2012-05-14 09:17:06 +12:00
Sam Hemelryk 2146aae7bf MDL-32872 tool_roles: Fixed up navigation on user roles page 2012-05-14 08:54:28 +12:00
Mary Evans 6e765a4ce5 MDL-31719 lang/en/admin.php: changes text in $string['configallowthemechangeonurl'] to make less ambiguous 2012-05-13 15:12:33 +01:00
Petr Skoda 7c4f93cd5f MDL-32967 add diagnostic strings for missing Microsoft drivers for SQL Server 2012-05-13 12:23:39 +02:00
Petr Skoda 94492249ec MDL-32915 fix bogus open div in basic chat ui 2012-05-13 10:25:50 +02:00
David Mudrak 1f90d92464 MDL-32714 workshop: fixed SQL to load assessment form fields
Obvious problems emerged once there were some records in the
workshopform_rubric table with no workshopform_rubric_levels. As l.id
(empty in that case) was used as the key of the returned array, they all
were collapsed into a single one.
2012-05-12 10:25:41 +02:00
Eloy Lafuente (stronk7) 7d3704f293 Moodle release 2.2.3 2012-05-12 03:26:46 +02:00
Petr Skoda ce4126c7a9 MDL-31558 add missing mimetype to send_temp_file()
backported from master
2012-05-11 22:04:33 +02:00
Tim Hunt fd32dbfa1d MDL-32633 quiz editing: recreate grade item when max changed from 0 2012-05-11 20:05:22 +01:00
Eloy Lafuente (stronk7) 48861429c7 weekly release 2.2.2+ 2012-05-11 12:17:31 +02:00
Eloy Lafuente (stronk7) 6cf9033d8d Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-05-11 12:10:42 +02:00
Dan Poltawski a6f5a72ef5 MDL-31458 forum: email subjects containing ampersand are sent as &amp; 2012-05-11 15:30:40 +08:00
Sam Hemelryk 94b0258dc3 MDL-31763 mod_data: Fixed array iteration reference issue 2012-05-10 17:31:24 +12:00
Sam Hemelryk f818719f11 Merge branch 'wip-MDL-31763-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-05-10 15:14:28 +12:00
Adrian Greeve 194c653a11 MDL-31763 - data - users can only override their own presets unless they have manage presets permission. 2012-05-10 10:23:12 +08:00
AMOS bot 3782723995 Automatically generated installer lang files 2012-05-10 00:31:45 +00:00
Eloy Lafuente (stronk7) 6ba42caef7 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-05-09 19:31:46 +02:00
Tim Hunt 673ee48eb8 MDL-31393 qtype_essay upgrade: save old question_answers.feebdack 2012-05-09 15:09:27 +01:00
Charles Fulton 2d129fbea0 MDL-32861 filemanager: respect course upload limit 2012-05-09 05:09:28 -07:00
Dan Poltawski b37bb96b0f Merge branch 'wip-mdl-31498-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-05-09 17:46:15 +08:00
Rossiani Wijaya a6b4124840 MDL-24401: fixed string for adding content page 2012-05-09 14:37:11 +08:00
Andrew Davis ad9fee8416 MDL-31488 admin: made admin_externalpage_setup() try to guess the reason why the requested section couldnt be found 2012-05-09 11:58:24 +08:00
Dan Poltawski 1357fde409 Merge branch 'w19_MDL-32733_m22_authorizemessage' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-05-09 10:28:55 +08:00
Dan Poltawski c0ba02d066 Merge branch 'w19_MDL-32775_m22_searchpix' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-05-09 10:22:55 +08:00
Sam Hemelryk 93af314f78 Merge branch 'MDL-32164-MOODLE_22_STABLE-1' of git://git.luns.net.uk/moodle into MOODLE_22_STABLE 2012-05-09 11:45:57 +12:00
Sam Hemelryk a1f173f774 Merge branch 'MDL-18095-MOODLE_22_STABLE-1' of git://git.luns.net.uk/moodle into MOODLE_22_STABLE 2012-05-09 11:31:40 +12:00
Petr Skoda 3a48019ea3 MDL-32178 ignore duplicates in enroL_database external course table 2012-05-09 11:18:55 +12:00
Ruslan Kabalin ed88a0b815 MDL-18095 gradebook: Make sure grade override flag is cleared whenever required
The check for feedback and grade equality between recorded values and the current
form ones before removing override flag is not really required.
2012-05-08 12:07:41 +01:00
Frederic Massart 8d716acba5 MDL-32718 Fixed typo in column name 2012-05-08 15:55:40 +08:00
Sam Hemelryk f4e4ac8c59 Merge branch 'MDL-32670_22' of git://github.com/rlorenzo/moodle into MOODLE_22_STABLE 2012-05-08 18:06:52 +12:00
Sam Hemelryk 329920fa22 Merge branch 'MDL-31671-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-05-08 17:41:52 +12:00
Dan Poltawski d6a84028e5 Merge branch 'w19_MDL-31691_m22_cohortidnumber' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-05-08 12:40:39 +08:00
Dan Poltawski 22f754bae6 Merge branch 'MDL-32718-sql-typo_22' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-05-08 12:35:56 +08:00
AMOS bot ffeebe6088 Automatically generated installer lang files 2012-05-08 00:31:45 +00:00
David Mudrak 0bfc4d763a MDL-32718 fixing an SQL typo in workshop_get_recent_mod_activity() 2012-05-07 10:04:46 +02:00
Dan Poltawski 4b641eaf82 Merge branch 'MDL-18335_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-05-07 15:32:31 +08:00
Ankit Agarwal 47b43d0b4c MDL-31671 calendar: update_event hook should be triggered when updating event 2012-05-07 15:04:56 +08:00
Ankit Agarwal d28da62e34 MDL-31671 calendar: Fixing error when trying to delete parent of a repeated event series 2012-05-07 15:04:56 +08:00
Dan Poltawski 9d3f3b5093 Revert "MDL-32379: Fix memory leak in session_set_user"
This reverts commit 22dc32042a.

This integrator didn't properly read the diff, sorry
2012-05-07 14:40:35 +08:00
Dan Poltawski e71b8ccbd1 Merge branch 'MDL-32684_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-05-07 13:03:57 +08:00
Dan Poltawski 9d669d60bd Merge branch 'MDL-32430_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-05-07 12:48:24 +08:00
Davo Smith 73db83bfaa MDL-32698 Question - Fixed typos in load_question_attempt 2012-05-07 12:06:04 +08:00
Charles Fulton 900e37bec7 MDL-26277 grade import: validate file pointer before reading 2012-05-06 20:33:30 -07:00
Dan Poltawski 35f7fa3d36 Merge branch 'mdl32379_22' of git://github.com/tlevi/moodle into MOODLE_22_STABLE 2012-05-07 11:29:09 +08:00
Petr Skoda 5c85ac9572 MDL-31691 treat cohort idnumbers as plain text 2012-05-06 21:38:24 +02:00
Petr Skoda fee082d56c MDL-32735 add missing message provider info for unmaintained enrol_authorize 2012-05-06 12:08:34 +02:00
Petr Skoda 9622a33982 MDL-32775 fix invalid url in mediaplugin CSS 2012-05-05 10:41:11 +02:00
Tim Hunt 57f2278c69 MDL-31814 question bank: fix possible error with sort columns. 2012-05-04 17:30:24 +01:00
Tim Hunt fca1061612 MDL-32430 quiz calendar events: fix pluginfile URLs in the description. 2012-05-04 15:23:54 +01:00
Eloy Lafuente (stronk7) 8075bd8d8a weekly release 2.2.2+ 2012-05-04 13:11:17 +02:00
Eloy Lafuente (stronk7) 4553925614 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-05-04 13:07:00 +02:00
Aaron Barnes 373d42cf3a MDL-32203 completion: Fix issues with data object where clauses 2012-05-04 15:03:20 +12:00
Dan Poltawski 08546a8973 MDL-32693 webservice: fix typo in URL 2012-05-03 18:22:45 +02:00
Marina Glancy 3bb5950c7e MDL-32416: Picasa repository now returns path, also fixed album title retrieval 2012-05-03 11:34:19 +08:00
Rex Lorenzo fd1e4d5039 MDL-32670 mod/chat: also added missing call to ->set_heading in report.php 2012-05-02 19:08:51 -07:00
AMOS bot 1cecb26b18 Automatically generated installer lang files 2012-05-03 00:31:31 +00:00
Eloy Lafuente (stronk7) 8b727da971 MDL-32234 Library: usergetdate tests moved to assertIdentical()
(to check both type and value)
2012-05-03 00:45:39 +02:00
Eloy Lafuente (stronk7) 46d732c252 Merge branch 'wip-mdl-32234-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-05-03 00:40:23 +02:00
Rajesh Taneja 3416857d84 MDL-31498 formslib: repeat_elements will now set default for group elements 2012-05-02 17:10:30 +08:00
Aparup Banerjee 58d053313f Merge branch 'MDL-28657-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-05-02 13:55:50 +08:00
Jerome Mouneyrac e0a57f8ccc MDL-31762 username should be lowercase and check against PARAM_USERNAME when creating/updating user by web service 2012-05-02 17:52:35 +12:00
Mary Evans 3dde1fcafb MDL-32684 lib/pagelib: adds break; statements to theme order in lib/pagelib.php 2012-05-02 01:42:34 +01:00
ppichet cc2a87e3fe MDL-32181 question/calculatedmulti validate multianswers
restructuring the validation function of edit_calculatedmulti_form.php
adding $variant to
qtype_calculated_question_helper::start_attempt($this, $step, $variant);
2012-05-01 10:53:56 +08:00
Sam Hemelryk d0eeb25a64 Merge branch 'w18_MDL-32607_m22_upgrade2' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-05-01 13:33:53 +12:00
Sam Hemelryk 0ee1c3db00 Merge branch 'MDL-28955_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-05-01 13:17:12 +12:00
Sam Hemelryk 9a260ddd2c MDL-32012 Fixed white space 2012-05-01 12:38:53 +12:00
Sam Hemelryk fc3a00dc64 Merge branch 'MDL-32012_m22' of git://github.com/merrill-oakland/moodle into MOODLE_22_STABLE 2012-05-01 12:37:42 +12:00
AMOS bot 6e3ef95711 Automatically generated installer lang files 2012-05-01 00:31:42 +00:00
Sam Hemelryk 44835cdc8b Merge branch 'MDL-29264_zindex_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-05-01 08:23:48 +12:00
Rossiani Wijaya 81308ee649 MDL-18335 calendar event: fixed role capability checking to create new event 2012-04-30 17:38:10 +08:00
Tim Hunt 1434fdf7a6 MDL-32357 Try to fix unread post notification for blog-style forums.
I know that showing unread posts is not 100% blog-style, but I think
it is useful functionality, therefore, I chose to fix it, rather than,
say, disable it completely.

I think this fix will only affect blog-style forums since
forum_print_latest_discussions is only called with mode 'plain' in
three places:
1. Blog-style forums - the case we want to fix,
2. Site news forum, and
3. Social course format.

In all cases, having read tracking work properly seems like the
right thing to do.
2012-04-30 14:29:56 +08:00
Rajesh Taneja daa44ab05e MDL-32234 Library: usergetdate return different values when timezone is set
usergetdate should return consistent values for different timezone. There are
two return path
1. If timezone is servertime, it returns getdate
2. If timezone other then servertime, it use gmstrftime, which returns string and
   values with leading zero.
In second case, leading zero's are removed and values are type casted. One major fix
is with yday, getdate returns 0 through 365, whereas %j returns 001 through 366. This
has been fixed as well.
2012-04-30 10:54:11 +08:00
Sam Hemelryk 3464845868 Merge branch 'm22_MDL-32597' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-04-30 13:21:49 +12:00
Sam Hemelryk 390c3bc54a Merge branch 'MDL-28735-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-04-30 13:15:03 +12:00
Sam Hemelryk ead5f3793b Merge branch 'MDL-26523_grader_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-04-30 12:46:37 +12:00
Sam Hemelryk b5907a8674 Merge branch 'MDL-31429_paypal_messages_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-04-30 12:33:40 +12:00
Aparup Banerjee 839e233f17 MDL-19391 Database : fixed icon size 2012-04-30 12:21:12 +12:00
Sam Hemelryk d76ac3bab6 MDL-31510 grader report: Fixed whitespace 2012-04-30 12:13:09 +12:00
Sam Hemelryk 8a8f68ff97 Merge branch 'MDL-31510_group_activities_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-04-30 12:11:12 +12:00
Sam Hemelryk b969338742 Merge branch 'MDL-32238-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-04-30 12:02:50 +12:00
Sam Hemelryk ba69b6952a Merge branch 'MDL-32624_22_wip' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-04-30 11:57:26 +12:00
Mary Evans e1765762c2 MDL-28955 theme_nimble: added css rules to display horizontal/vertical-menu-submenu-indicator 2012-04-28 02:28:37 +01:00
Rex Lorenzo ceb66eb1fd MDL-32670 mod/chat: added missing call to $PAGE->set_heading 2012-04-27 16:02:38 -07:00
Eric Merrill d68cf3877c MDL-32012 resource: flaw in restore from moodle 1.9 backups 2012-04-27 16:16:44 -04:00
Petr Skoda 9257815ff1 MDL-32607 prevent upgrade_set_timeout abort in CLI scripts
Credit goes to Michael Aherne, thanks.
2012-04-27 13:46:07 +02:00
Eloy Lafuente (stronk7) 446dbeed7a weekly release 2.2.2+ 2012-04-27 12:47:40 +02:00
Eloy Lafuente (stronk7) 5f5990903f Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-04-27 12:41:09 +02:00
Eloy Lafuente (stronk7) 0baa0a305d Revert "MDL-32249 completion: Round course grades and remove hardcoded string"
This reverts commit b795d69cc3.
2012-04-27 12:06:39 +02:00
Andrew Davis 23caf506ba MDL-29264 course: removed the z-index from course css for course completion elements 2012-04-27 11:11:33 +07:00
Andrew Davis 50223a8ae1 MDL-26523 grade: fixed a called to addHelpButton() that was asking for a non-existent string 2012-04-27 09:19:35 +07:00
AMOS bot 1fc08528c7 Automatically generated installer lang files 2012-04-27 00:31:44 +00:00
Andrew Davis 79c0996c64 MDL-31510 grade: made the user report observe $cm->uservisible so that activities not available to a student because of groups do not appear on their user report 2012-04-26 16:59:48 +07:00
Andrew Davis 923ea459d8 MDL-31429 enrol: added db/messages.php for enrolment plugins and added some smarts to messaging so it won't display message settings for disabled enrolment plugins 2012-04-26 16:10:13 +07:00
Chris Follin ab01926c99 MDL-31429 enrol: Add missing string for PayPal enrolment messages.
Signed-off-by: Andrew Davis <andrew@moodle.com>
2012-04-26 16:08:51 +07:00
Marina Glancy 47a6c7ee31 MDL-32417: Fixed regression in original (cherrypick) backport 2012-04-26 10:22:58 +02:00
Eloy Lafuente (stronk7) c821346cfe Merge branch 'MDL-19263-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-04-26 02:59:16 +02:00
Eloy Lafuente (stronk7) b8fffc6128 Merge branch 'MDL-32630-workshop-calendar_22' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-04-26 02:20:22 +02:00
David Mudrak 08258a6dfb MDL-32630 workshop_calendar_update() does not check for calendar permissions
As discussed in MDL-32631, calendar_event::update() should not do
capability checks at all. Until that issue is fixed, we just explicitly
declare that no capability checks should be done.

The function workshop_calendar_update() is executed when adding or
updating a workshop instance (where permissions to modify the instance
were already checked and are sufficient) and in the upgrade code (where
no check should be performed anyway).
2012-04-25 16:04:47 +02:00
Eloy Lafuente (stronk7) cf1f0dfb43 Merge branch 'MDL-32192_copy_string_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-04-25 13:08:05 +02:00
Marina Glancy 8c19c9cfd0 MDL-32417: Fixed pagination bug in Flickr search results, also return thumbnail sizes 2012-04-25 03:42:42 +02:00
Eloy Lafuente (stronk7) 76c51e3b9b MDL-32490 Offline assignment: phpdocs and whitespace fixes 2012-04-25 02:41:39 +02:00
Henning Bostelmann 48dd268c8d MDL-32490 Offline assignment: do not display lateness information 2012-04-25 02:41:32 +02:00
AMOS bot d71590772f Automatically generated installer lang files 2012-04-25 00:31:38 +00:00
Eloy Lafuente (stronk7) 89d13f61ca Merge branch 'MDL-32082_messaging_readability_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-04-25 01:57:13 +02:00
Eloy Lafuente (stronk7) 5f250cff88 Merge branch 'wip-MDL-30478-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-04-25 01:12:41 +02:00
Eloy Lafuente (stronk7) 46c485a63c Merge branch 'MDL-31548-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-04-24 23:29:54 +02:00
Andreas Grabs 36e673a766 MDL-32624 - initialbars disappears 2012-04-24 21:25:15 +02:00
Eloy Lafuente (stronk7) 352476d131 MDL-31914 db fix - cannot use table aliases on DELETE statements. Credit goes to Andrew Nicols (LUNS). 2012-04-24 13:08:29 +02:00
Eloy Lafuente (stronk7) b5dd45511d Merge branch 'MDL-32249-22' of github.com:srynot4sale/moodle into MOODLE_22_STABLE 2012-04-24 12:58:50 +02:00
Eloy Lafuente (stronk7) 5c487f23ae MDL-32102 Course completion - bump to 2011120502.08 (07 was already in use) 2012-04-24 12:30:49 +02:00
Andrew Robert Nicols 8a28dbd4e1 MDL-31914 Ensure that completion criteria are deleted when removing a course module 2012-04-24 12:28:33 +02:00
Dan Poltawski 8589241024 Merge branch 'm22_MDL-32102' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-04-24 15:17:51 +08:00
Ankit Agarwal 525a4642cd MDL-32238 course: Timemodifed should be updated when a course's visible status is toggled from the category page 2012-04-24 13:41:28 +08:00
Dan Poltawski d25f6a8ecb Merge branch 'w17_MDL-32427_m22_protocols' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-04-24 10:27:22 +08:00
Dan Poltawski 1d6070951a Merge branch 'w17_MDL-25407_m22_innodb' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-04-24 10:23:34 +08:00
Ankit Agarwal 958f4ff45f MDL-28735 calendar: Fixing issues with course selection dropdown 2012-04-24 09:39:12 +08:00
Andrew Robert Nicols 8d66adc9b8 MDL-32454 Fix issues highlighted by strict warnings in MNet code 2012-04-24 01:54:26 +02:00
Andrew Robert Nicols 186fe7abe9 MDL-32514 Remove onclick for the group delete button 2012-04-24 01:43:08 +02:00
Dan Marsden 80f9011c00 MDL-32597 typo in path to version.php file for local plugins 2012-04-24 11:14:57 +12:00
Eloy Lafuente (stronk7) 0742a01d54 Merge branch 'MDL-19549-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-04-24 01:01:06 +02:00
Eloy Lafuente (stronk7) cbc6589769 Merge branch 'MDL-28176-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-04-24 00:31:06 +02:00
Eloy Lafuente (stronk7) f46c9dd0f2 Merge branch 'MDL-32134-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-04-24 00:08:44 +02:00
Eloy Lafuente (stronk7) 5a2d320ca6 Merge branch 'wip-MDL-26500-22' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-04-24 00:05:16 +02:00
Petr Skoda 3b1055ee4c MDL-25407 ignore errors in CLI mysql engine conversion script 2012-04-23 19:20:00 +02:00
Eloy Lafuente (stronk7) f7de3d4360 MDL-29262 simpletest: fix forgotten mock objects to avoid strict notices 2012-04-23 16:30:37 +02:00
Dan Poltawski 1e13c7b154 Merge branch 'MDL-32431' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-04-23 17:10:57 +08:00
Dan Poltawski ac05e65ef2 Merge branch 'w17_MDL-32477_m22_cloneperm' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-04-23 16:35:34 +08:00
Petr Skoda c609c3968e MDL-32427 fix suport for extra schemes in links in HTML Purifier 2012-04-23 10:30:43 +02:00
Dan Poltawski 7b969f0bb0 Merge branch 'w17_MDL-31553_m22_clitimeout' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-04-23 15:25:49 +08:00
Petr Skoda 3691c0de24 MDL-31553 do not timeout CLI upgrade scripts
Credit goes to Michael Aherne.
2012-04-23 08:53:41 +02:00
Dan Poltawski 4be12986aa Merge branch 'MDL-32462_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-04-23 12:54:07 +08:00
Dan Poltawski 2d3659da69 Merge branch 'MDL-32104-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-04-23 12:50:02 +08:00
Dan Poltawski 7c4e7f8fdf Merge branch 'MDL-29262_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-04-23 12:42:33 +08:00
Dan Poltawski ced892ebb2 Merge branch 'w17_MDL-25407_m22_innodb' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-04-23 12:24:48 +08:00
Jerome Mouneyrac 6d8e40a429 MDL-31431 webservices: improve user pic docs
Explain how to retrieve profile picture when forcelogin is set to NO and guestaccess to Yes
2012-04-23 11:43:27 +08:00
Andrew Robert Nicols 2bda67fa52 MDL-32459 Adjust order of remote enrolment help text to suit form order 2012-04-23 10:44:11 +08:00
Iñaki Arenaza ead9fe0cdf MDL-16646 auth/cas CAS configuration page mis-spellings
Signed-off-by: Iñaki Arenaza <iarenaza@mondragon.edu>
2012-04-23 10:33:59 +08:00
Dan Poltawski d97f2caf13 Merge branch 'MDL-23647_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-04-23 10:27:51 +08:00
Chris Follin f084d74ed1 MDL-32492 auth/cas: respect https login links 2012-04-23 09:50:17 +08:00
Aaron Barnes b795d69cc3 MDL-32249 completion: Round course grades and remove hardcoded string 2012-04-23 12:24:54 +12:00
Dan Marsden f778133a99 MDL-32102 Course completion - only restore user completion if not adding to existing course 2012-04-23 11:33:33 +12:00
Eloy Lafuente (stronk7) 6a726a9901 MDL-29262 restore: Clean controller obj form DB once finished ok 2012-04-23 00:36:41 +02:00
Eloy Lafuente (stronk7) 412ae7b629 MDL-29262 backup: Clean controller obj form DB once finished ok 2012-04-23 00:36:32 +02:00
Eloy Lafuente (stronk7) c3cc54fcce MDL-29262 backup: new setting to control the ttl of backup logs
Add one new backup setting, moving from the general CFG->loglifetime,
to be able to delete backup logged information often.

Conflicts:

	admin/settings/courses.php
	version.php
2012-04-23 00:35:10 +02:00
AMOS bot 9fed35fb09 Automatically generated installer lang files 2012-04-22 00:31:41 +00:00
Petr Skoda 6e41a68058 MDL-25407 ignore errors when converting to InnoDB and ignore timeout
This should help resolve problems with table views and other unsupported stuff.
2012-04-21 11:51:51 +02:00
Andrew Davis 65634948fa MDL-32191 grade:renamed a mis-spelled string name
AMOS BEGIN
 CPY [invalidgradeitmeid,error],[invalidgradeitemid,error]
AMOS END
2012-04-21 11:44:40 +07:00
Andrew Davis 85427358fc MDL-32082 message: added a function to make user checks more readable 2012-04-21 11:22:28 +07:00
Charles Fulton 8df946ba30 MDL-25695 wiki: enable anchor tags 2012-04-20 12:49:26 -07:00
Charles Fulton edb257109e MDL-28657 backup: make automated backup filenames site admin-configurable 2012-04-20 08:48:29 -07:00
Charles Fulton e89535552b MDL-19263 assignment: only notify users enrolled in course 2012-04-20 06:15:03 -07:00
Tim Hunt c08ea5202f MDL-32462 accesslib: fix context_user::build_paths performance
The problem was that the query was updating every row whether it needed
it or not. This turns out to be a really bad thing to do on Postgres,
because it then triggers a long expensive vacuum, which lock the context
table for a long time a really bad thing to do.
2012-04-20 10:30:26 +01:00
Tim Hunt bd680d8a01 MDL-32519 completio: Fix spelling of Enrolled. 2012-04-20 10:24:17 +01:00
Ankit Agarwal 1ac84ccdfc MDL-32431 backup: Adding the feature to support backing up and restoring calendar events 2012-04-20 08:57:49 +08:00
Ankit Agarwal 661fc73a96 MDL-32104 forum: Fixing issue with logs during restore 2012-04-20 08:55:33 +08:00
Ankit Agarwal 62c325eefe MDL-31548 enrollments: Introducing new api enrol_get_all_users_courses() that returns all user courses without any checks 2012-04-20 08:53:58 +08:00
AMOS bot e5a5ca2bcb Automatically generated installer lang files 2012-04-20 00:32:29 +00:00
Adrian Greeve 595b68e2fd MDL-30478 - wiki - Fixing up group problems when viewing and creating wiki pages.
Thanks to Matt Kolb for his contribution.
2012-04-20 07:32:13 +08:00
Petr Skoda 804feede10 MDL-32477 allow cloning of plugin permissions from core
Please note it is discouraged to clone from different plugin type because the upgrade order is not guaranteed.
2012-04-19 22:11:15 +02:00
sam marshall dc2c1b8974 MDL-32535 Completion lang string incorrect use, text 2012-04-19 14:46:49 +01:00
Dan Poltawski 93fb7b528b weekly release 2.2.2+ 2012-04-19 17:48:21 +08:00
Dan Poltawski d6f387e262 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-04-19 17:39:12 +08:00
Andrew Robert Nicols a25ac01e95 MDL-32061 Use old lesson_answer ID and correct when restoring lesson attempts 2012-04-18 02:44:01 +02:00
Jerome Mouneyrac adca1840c4 MDL-30225 Creating new web service tokens create error 2012-04-17 18:54:03 +08:00
Dan Poltawski 54ba4bf583 MDL-26500 blog: Rewrite pluginfile urls in RSS 2012-04-17 17:47:34 +08:00
Dan Poltawski 403c191be1 MDL-26500 mod/glossary: Rewrite pluginfile urls in RSS 2012-04-17 17:47:34 +08:00
Dan Poltawski 69065330c4 MDL-26500 mod/forum: Rewrite pluginfile urls in RSS 2012-04-17 17:47:33 +08:00
Dan Poltawski c8ad77f876 MDL-19549 lang: make a string less scary 2012-04-17 17:17:29 +08:00
Dan Poltawski 35eb31fa38 Merge branch 'MDL-25660-workshop-calendar_22' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-04-17 16:07:12 +08:00
Dan Poltawski dc52f193eb MDL-28176 lang - rephrase conditional access description 2012-04-17 13:38:03 +08:00
Dan Poltawski e449096842 MDL-32134 lang: Add missing PNG string 2012-04-17 11:29:52 +08:00
AMOS bot 49eb5cf372 Automatically generated installer lang files 2012-04-17 00:31:48 +00:00
Dan Poltawski 36ddd604b5 Merge branch 'w16_MDL-32437_m22_tablename' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-04-16 20:50:25 +08:00
Dan Poltawski 1399a5bc41 Merge branch 'MDL-32358_22' of https://github.com/ppichet/moodle into MOODLE_22_STABLE 2012-04-16 14:31:17 +08:00
Jerome Mouneyrac 2547042fe6 MDL-31694 Fix XSS security issue with service name accepting javascript 2012-04-16 14:27:45 +08:00
Sam Hemelryk 5335b7deb8 Merge branch 'MDL-29174_MOODLE_22' of git://github.com/raymanuk/moodle into MOODLE_22_STABLE 2012-04-16 17:37:04 +12:00
Dan Poltawski afa1de62b2 Merge branch 'wip-MDL-32393-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-04-16 13:29:07 +08:00
Dan Poltawski d2db892076 MDL-32443 queupgradehelper cli: fix path & whitespace 2012-04-16 13:23:17 +08:00
Dan Poltawski ddbc74866d Merge branch 'MDL-32443_m22' of git://github.com/merrill-oakland/moodle into MOODLE_22_STABLE 2012-04-16 13:14:42 +08:00
Sam Hemelryk 80bc3d9880 Merge branch 'MDL-32385_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-04-16 17:06:09 +12:00
Dan Poltawski d4608845b2 Merge branch 'MDL-32404_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-04-16 13:01:52 +08:00
Sam Hemelryk 4a979297aa Merge branch 'MDL-32444_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-04-16 15:59:38 +12:00
Eric Merrill ce4ca89ef1 MDL-32443 qeupgradehelper: Add cli tool to execute qeupgrade helper 2012-04-15 23:51:56 -04:00
Sam Hemelryk 41d2e418a7 MDL-32353 fixed up very minor whitespace 2012-04-16 15:22:59 +12:00
Sam Hemelryk 11990142b0 Merge branch 'MDL-32353_m22' of git://github.com/merrill-oakland/moodle into MOODLE_22_STABLE 2012-04-16 15:11:59 +12:00
Dan Poltawski 253b5f4d7e Merge branch 'MDL-32442_m22' of git://github.com/merrill-oakland/moodle into MOODLE_22_STABLE 2012-04-16 10:51:46 +08:00
ppichet 8858129c17 MDL-32358 : numerical question: validation messages errors
The selected unit parameter is added answer paramter when renderer call
 $question->get_validation_error() so that it mimics the
is_complete_response(array $response) structure.
2012-04-15 22:29:32 -04:00
Sam Hemelryk 0656d45fbc Merge branch 'm22_MDL-32388' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-04-16 12:23:10 +12:00
Sam Hemelryk 98a4be5176 Merge branch 'MDL-30819_grader_col_highlight_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-04-16 11:45:36 +12:00
Mary Evans b2fd3caea6 MDL-23647 theme_anomaly: Removed margin + added padding to current week main content to give it more definition. 2012-04-16 00:37:21 +01:00
Sam Hemelryk 77b300ca51 Merge branch 'MDL-30955_forum_ratings_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-04-16 11:34:26 +12:00
Sam Hemelryk cb36e6ba4a Merge branch 'MDL-32316_22_wip' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-04-16 11:00:25 +12:00
Sam Hemelryk b182c1238e Merge branch 'MDL-27547-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-04-16 10:47:58 +12:00
Petr Skoda fead3b432a MDL-32437 fix invalid gradebook query sql 2012-04-15 14:26:18 +02:00
Mary Evans 877a07f709 MDL-32444 theme_afterburner: adds 5px margin to the left of #loginbtn, input, button, select in /style/afterburner_styles.css 2012-04-15 01:50:31 +01:00
Tim Hunt e0538fa845 MDL-32404 question export: missing error message when exporting an empty category. 2012-04-14 15:44:22 +01:00
Mary Evans 41f8ca66e0 MDL-32385 theme_base: adds line-height:normal in style/course.css for section summary 2012-04-14 15:04:31 +01:00
Eric Merrill a68b0363bf MDL-32442 questionupgrade: error in SQL from postgres systems 2012-04-14 09:06:02 -04:00
AMOS bot 47860563bc Automatically generated installer lang files 2012-04-14 00:31:56 +00:00
David Mudrak ade4de356e MDL-25660 workshop removes its calendar events on instance deletion 2012-04-13 13:11:09 +02:00
David Mudrak 4494053b02 MDL-25660 recreate all workshop calendar events
Due to complex workshop upgrade path from 1.9 and missing calendar events
support in 2.x, the only safe way to get rid of potentially invalid
calendar events (such as those reported in MDL-26687) is to remove all
current workshop events and recreate them from scratch.
2012-04-13 04:43:58 +02:00
David Mudrak 6c6042404a MDL-25660 workshop registers events in the calendar 2012-04-13 04:43:40 +02:00
Eric Merrill 085cc4ef9a MDL-32353 backup: Flaw in settings logic for user info and anonymise 2012-04-12 10:57:24 -04:00
Dan Poltawski b1d3043354 weekly release 2.2.2+ 2012-04-12 13:27:17 +08:00
Dan Poltawski dc201dce9e Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-04-12 12:59:46 +08:00
Andrew Davis 92a7892d42 MDL-30955 rating: corrected /rating/index.php as it was determining the maximum rating incorrectly for custom scales 2012-04-12 10:19:15 +07:00
Andrew Davis c2e8445bf1 MDL-30819 grade: fixed column highlighting on the grader report 2012-04-12 10:14:36 +07:00
AMOS bot e6524dcbf9 Automatically generated installer lang files 2012-04-12 00:31:27 +00:00
Dan Marsden 2ed2d8c111 MDL-32388 SCORM: Fix chrome pop-ups 2012-04-11 21:05:49 +12:00
Jerome Mouneyrac e8a2384eb6 MDL-27547 When deleting a local plugin containing a built-in service, the built-in service is not deleted 2012-04-11 15:01:12 +08:00
Sam Hemelryk 61231c48fa Revert "MDL-30843 and MDL-30842 - accessibility compliance: Add <label> for form input text and select tag"
This reverts commit f01c7ddc7c.
2012-04-11 17:20:29 +12:00
Dan Poltawski b0a994f460 Merge branch 'MDL-32217_22' of git://github.com/ppichet/moodle into MOODLE_22_STABLE 2012-04-11 09:27:38 +08:00
Sam Hemelryk bd8d0b81d6 MDL-32393 navigation: Fixed up issue when rendering action_link instances for the navigation 2012-04-11 10:57:15 +12:00
Sam Hemelryk 999f7e3e17 MDL-32124 mod_feedback: Cleanup post-integration of unused var 2012-04-10 17:21:59 +12:00
Sam Hemelryk ec01a02d8b Merge branch 'MDL-32124_22_wip' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-04-10 17:11:57 +12:00
Tony Levi e71b08c529 MDL-32379: Fix memory leak in session_set_user
session_set_user mistakingly sets the session user to be a reference to the passed object.

This is a problem when alot of data is attached to the session user object,
as any process holding a list of these users will use more memory each time it changes user.
2012-04-10 14:09:10 +09:30
Jason Fowler d4341ff79c MDL-27427 - Blog - Adding ability to delete entries from external blogs 2012-04-10 12:05:20 +08:00
Dan Poltawski 697f104ac1 Merge branch 'wip-mdl-30051-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-04-10 11:06:09 +08:00
sam marshall 167c8c6714 MDL-32349 Installing can time out with large number of plugins 2012-04-10 12:40:00 +12:00
ppichet d8c5082b76 MDL-32217_22 Setting options->unitgradingtype
Signed-off-by: ppichet <pichet.pierre@uqam.ca>
2012-04-09 20:09:50 -04:00
Sam Hemelryk b054ead121 Merge branch 'MDL-30843_b_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-04-10 11:01:37 +12:00
Sam Hemelryk 3f046db150 Merge branch 'wip-mdl-32270-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-04-10 10:53:19 +12:00
Sam Hemelryk d9cc6b7a31 Merge branch 'w15_MDL-32263_m22_enroladmin' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-04-10 10:48:15 +12:00
Andreas Grabs eb11030b38 MDL-32316 feedback: fix tem type label does honor trusted text 2012-04-10 00:27:59 +02:00
Petr Skoda 43400d60de MDL-32263 remove broken admin test in enrol_check_plugins() 2012-04-09 20:01:28 +02:00
Hugh Davenport 2719e7c8f9 MDL-32308 Fix error when testing id of guest user 2012-04-09 19:05:54 +02:00
Andreas Grabs 767ed44ca4 MDL-32124 - mails to non respondents are sent as plain text with html-tags 2012-04-07 17:31:39 +02:00
Aparup Banerjee f24ff8f8d4 weekly release 2.2.2+ 2012-04-05 16:42:19 +08:00
Aparup Banerjee 42bcf023b4 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-04-05 16:19:49 +08:00
Aparup Banerjee c461a6a0a7 Merge branch 'wip-MDL-31631-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-04-04 13:41:00 +08:00
Eloy Lafuente (stronk7) bdd773ba40 Merge branch 'MDL-32240_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-04-04 00:11:43 +02:00
Eloy Lafuente (stronk7) fcc24148d6 Merge branch 'wip-MDL-29678-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-04-03 23:52:32 +02:00
Sam Hemelryk 729ef69705 Merge branch 'MDL-32137-MOODLE_22_STABLE-1' of git://git.luns.net.uk/moodle into MOODLE_22_STABLE 2012-04-04 08:21:52 +12:00
Eloy Lafuente (stronk7) 8c6bc1e000 Merge branch 'wip-MDL-32018-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-04-03 21:06:16 +02:00
Ray Guo d6b01141a1 MDL-29174 Remove the empty modulename_extend_navigation() stub from 7
modules.
2012-04-03 15:46:54 +01:00
Ruslan Kabalin 4f4bf67a31 MDL-32137 Fix message preference settings.
When a messaging output is set to forced, users should not be able to change
that. Regression intoroduced in bb3546f3 made possible to change checkboxes
(but not avoid forced settings). This fix replace checkboxes for 'forced'
settings with the corresponding message, similar to how it worked for
disallowed before.
2012-04-03 11:55:38 +01:00
Aparup Banerjee d0f6d6172a Merge branch 'wip-MDL-30784-stable22' of git://github.com/phalacee/moodle into MOODLE_22_STABLE 2012-04-03 17:00:51 +08:00
Aparup Banerjee 3ba909de87 Merge branch 'wip-MDL-31789-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-04-03 16:32:06 +08:00
Marina Glancy 97c0418e64 MDL-32171: add 'Manage' link to Picasa repository
Conflicts:

	repository/picasa/lib.php
2012-04-03 13:07:06 +08:00
Dan Poltawski a028969cc7 Merge branch 'wip-mdl-30904-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-04-03 11:39:21 +08:00
Rajesh Taneja cb2c45b31f MDL-32270 Library: ->defaulthomepage is checked before used 2012-04-03 11:29:33 +08:00
Dan Poltawski 65e5640a94 Merge branch 'MDL-32220_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-04-03 11:10:19 +08:00
Sam Hemelryk f65eadd42d Merge branch 'wip-mdl-32150-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-04-03 10:32:53 +12:00
Davo Smith ed9cc071d5 MDL-32213 Question upgrade now correctly handles non-core manually-graded question types 2012-04-02 17:00:44 +08:00
Dan Poltawski 41b4bb03b2 Merge branch 'MDL-32039_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-04-02 11:50:50 +08:00
Andreas Grabs 18ca35b3fa MDL-31768 - it is not possible to add a picture to the thanks page in feedback 2012-04-02 11:18:19 +08:00
Dan Poltawski 17ee774fdf Merge branch 'MDL-32214' of git://github.com/mkassaei/moodle into MOODLE_22_STABLE 2012-04-02 11:02:37 +08:00
Sam Hemelryk 2de2d0d2cd Merge branch 'MDL-32239_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-04-02 14:31:08 +12:00
Dan Poltawski 94bea73f29 Merge branch 'wip-MDL-32264-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-04-02 10:16:50 +08:00
Rajesh Taneja a99a9a163e MDL-32150 Libraries: checkbox controller will not check or uncheck freezed checkboxes 2012-04-02 10:12:06 +08:00
Dan Poltawski d54abc73a1 Merge branch 'MDL-32246_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-04-02 10:06:23 +08:00
Dan Poltawski 46303d1deb Merge branch 'MDL-32201_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-04-02 09:42:37 +08:00
Sam Hemelryk 0292c465fe Merge branch 'MDL-32256-cron-return_22_STABLE' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-04-02 11:27:55 +12:00
Sam Hemelryk 12376c971f Merge branch 'MDL-32258-data-cron_22_STABLE' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-04-02 11:24:41 +12:00
Kanika Goyal 84c10aaa7c MDL-31908 Glossary: entry list format- printable version does not show content 2012-04-02 11:20:55 +12:00
Sam Hemelryk fc0acdfacd Merge branch 'MDL-32289_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-04-02 10:16:20 +12:00
Mary Evans 59c0293d9e MDL-32289 theme_afterburner: added lang menu to frontpage layout in config.php 2012-04-01 01:12:03 +01:00
Mary Evans 04b1865d44 MDL-32262 theme_afterburner: fixed missing comma in afterburner_styles.css 2012-04-01 00:40:05 +01:00
Kanika Goyal 31238c016e MDL-31203 mod_forum: advanced search posts must be newer older than date, reverts date 2012-03-31 19:05:32 +05:30
Rajesh Taneja d2fbfb5f73 MDL-30051 cron: login error sql is now cross db 2012-03-30 16:50:42 +08:00
Rossiani Wijaya f01c7ddc7c MDL-30843 and MDL-30842 - accessibility compliance: Add <label> for form input text and select tag 2012-03-30 16:44:13 +08:00
Rajesh Taneja 48e43c12e6 MDL-32150 Libraries: checkall and uncheckall will not select disabled or readonly checkboxes 2012-03-30 13:04:52 +08:00
Rajesh Taneja f90a927b52 MDL-30904 Calendar: Event links are descriptive with hidden event name, for screen readers 2012-03-30 13:02:02 +08:00
AMOS bot 120aa6fd38 Automatically generated installer lang files 2012-03-30 00:33:10 +00:00
Jason Fowler 11c5042847 MDL-30784 - lib - Patch provided by Jason Hardin to provide detection for Android Tablets to allow the theme engine to provide the tablet theme 2012-03-30 08:24:32 +08:00
Sam Hemelryk 76fae9b6ab MDL-29678 lib: Require login now overrides to false for AJAX scripts 2012-03-30 10:23:56 +13:00
Sam Hemelryk 431c68a867 MDL-29678 navigation: Navigation AJAX require_login calls no longer set wantsurl or redirect 2012-03-30 10:23:56 +13:00
Sam Hemelryk 7b88b81a49 MDL-31631 navigation: Removed caching of activities and sections arrays in favour of relying on cminfo caching 2012-03-30 10:22:56 +13:00
Sam Hemelryk 4b023f2a10 MDL-32018 mod_wiki: Fixed up whitespace after peer-review 2012-03-30 10:21:32 +13:00
Sam Hemelryk 2be11d5faf MDL-32018 mod_wiki: Fixed formatting of the page title so that is is consistent and secure 2012-03-30 10:21:32 +13:00
Sam Hemelryk d6105bc1e1 MDL-32018 mod_wiki: Improved form definitions to ensure they consistent and secure 2012-03-30 10:21:32 +13:00
Sam Hemelryk 7068811aa9 MDL-32264 theme_standard: Fixed multi-day calendar event border issue 2012-03-30 10:19:51 +13:00
Tim Hunt 2c92dc7bab MDL-32039 qeupgradehelper: fix typos in the lang strings 2012-03-29 21:38:24 +01:00
Tim Hunt 0971dd7939 MDL-32201 question export: use qformat_xml::write_answer in base class
Without this, images in answers were not being written to the export
file for questions using extra_answer_fields.
2012-03-29 15:20:17 +01:00
David Mudrak 5e9050d1fb MDL-32258 database module does not have any data_cron() function to execute 2012-03-29 16:02:54 +02:00
David Mudrak d55cca19cf MDL-32256 quiz_cron() now returns true as expected by the current API 2012-03-29 15:52:40 +02:00
Tim Hunt 0175c5efaa MDL-32240 quiz editing: check permissions questions are added.
We also check permissions when removing questions from the quiz, so that
we do not let users make mistakes they cannot immediately undo.

Conflicts:

	mod/quiz/editlib.php
2012-03-29 14:52:19 +01:00
Tim Hunt 29e247e44e MDL-32239 question bank: wrong cap checks editing/viewing quesitions
None of these problems affect the default roles. They only occur when
the permissions have been edited to allow restricted subsets of the
question capabilities.

In some cases, things that the restriced subset of capabilities should
have allowed were blocked by errors. In other cases, users were allowed
to do more than they should bave been due to failures to check the
right capabilities in the right places.

For full details, see the bug report.

Two of the bugs were previously reported separately as MDL-26395 and
MDL-27232.
2012-03-29 14:34:09 +01:00
Tim Hunt 112bbb8ff4 MDL-32246 question export: should cope with unrecognised qtypes.
If a question is of an unrecognised type, then we just omit it from the export.
2012-03-29 14:09:19 +01:00
Tim Hunt e4a8f90479 MDL-32220 question import: files sometimes stored in the wrong context.
Sadly, this involves a small API change, but I don't believe anyone was
using the argument I had to remove (because we were sometimes passing a
wrong value, and there is not way to compute the right value at that
point in the code.)

Also sadly, the code to compute the context we are importing into is now
rather spaghetti-like, but it works.

Conflicts:

	question/format/examview/format.php
	question/format/learnwise/format.php
	question/format/webct/format.php
2012-03-29 14:08:52 +01:00
Eloy Lafuente (stronk7) 58db57ad53 weekly release 2.2.2+ 2012-03-29 13:25:05 +02:00
Eloy Lafuente (stronk7) cf6b626f39 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-03-29 13:20:12 +02:00
Dan Poltawski bddec3c1d6 Revert "MDL-31914 Ensure that completion criteria are deleted when removing a course module"
This reverts commit 3bf0bb64fd.
2012-03-29 15:58:08 +08:00
AMOS bot 340691baab Automatically generated installer lang files 2012-03-29 00:31:47 +00:00
Marina Glancy 67ace38c82 MDL-31789: Allowing context object to be passed to JS using json_encode()
Classes with magic properties such as context do not pass through json_encode().
The solution is to implement iterator in such classes and convert what we
feed to json_encode to array using 'foreach' before we pass it to json_encode():
- class context implements IteratorAggregate
- added function convert_to_array() that converts anything to array
- before calling json_encode we convert the argument to array
2012-03-28 11:43:46 +08:00
M Kassaei 4bc0b067b6 MDL-32214 quiz regrading: with many attempts, PHP runs out of memory 2012-03-27 16:15:25 +01:00
Dan Poltawski 9d0610f0f3 MDL-31775 lesson: fix undefined variable warnings 2012-03-27 20:02:48 +08:00
Andrew Robert Nicols 3bf0bb64fd MDL-31914 Ensure that completion criteria are deleted when removing a course module
Conflicts:

	lib/db/upgrade.php
	version.php
2012-03-27 10:28:38 +02:00
Dan Poltawski 59fccfb0cf Merge branch 'MDL-32028_m22' of git://github.com/nebgor/moodle into MOODLE_22_STABLE 2012-03-27 14:47:44 +08:00
Aparup Banerjee 0161e20b65 Merge branch 'wip-MDL-32106-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-03-27 10:10:19 +08:00
Tim Lock da496c52f8 MDL-31869: Searching for users in messaging with multiple roles generates a warning 2012-03-27 10:00:29 +08:00
Sam Hemelryk ec202ddbba Merge branch 'MDL-22510-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-03-27 11:03:08 +13:00
Sam Hemelryk 015c334a73 Merge branch 'm22_MDL-32147' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-03-27 09:51:28 +13:00
Dan Poltawski e0f6644dc0 Merge branch 'MDL-31775_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-03-26 14:41:46 +08:00
Dan Poltawski 26420be610 Merge branch 'MDL-32172_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-03-26 12:22:57 +08:00
Dan Poltawski 4270267ee9 Merge branch 'm22_MDL-31856_choice_responses_inconsistently_displayed' of git://github.com/kanikagoyal/moodle into MOODLE_22_STABLE 2012-03-26 12:11:18 +08:00
Dan Poltawski 55878aa09b Merge branch 'MDL-27710_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-03-26 11:27:38 +08:00
Marina Glancy e30281eed5 MDL-32106: fixed JS bug - when html element did not exist the script stopped 2012-03-26 10:48:08 +08:00
Ankit Agarwal d06b2e0c89 MDL-22510 libraries: Set wantsurl only when $setwantsurltome is set in
require_login
2012-03-26 08:56:17 +08:00
Iurii Kucherov 071746fb4a MDL-31513 rename 'Edit service' to 'Save changes' 2012-03-26 12:12:08 +13:00
Andrew Robert Nicols 07435fc117 MDL-32142 Add missing langstring for section backups 2012-03-26 12:01:50 +13:00
Sam Hemelryk 2733a8c4d5 Merge branch 'wip-mdl-29331-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-03-26 11:57:29 +13:00
Rajesh Taneja ea496d1a00 MDL-31903 course: Title on highlight and hide icon should be only added in ie 2012-03-26 11:45:58 +13:00
Rajesh Taneja f6fd27e70a MDL-31903 course: Highlight icon will get iniatlised properly 2012-03-26 11:45:58 +13:00
Rajesh Taneja e06bc8c074 MDL-31903 course: update patch to fix course highlight icon and title toggle 2012-03-26 11:45:58 +13:00
Juho Viitasalo 46424df47a MDL-31903 course: Fixed course highlight icon and title toggle 2012-03-26 11:45:58 +13:00
Sam Hemelryk abdbeec6bb Merge branch 'MDL-29400' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-03-26 11:19:27 +13:00
Ruslan Kabalin 772c720527 MDL-32026 messaging: Fix non-existing variable in the error output 2012-03-26 11:14:12 +13:00
Mary Evans 4cfd77fc0e MDL-30019 theme_fusion: fix for mod-assignment-submission page by reducing font-size and page wapper padding 2012-03-25 08:24:22 +01:00
AMOS bot 7ec66c7da8 Merge branch 'MOODLE_22_STABLE' into install_22_STABLE 2012-03-24 00:32:16 +00:00
Andrew Robert Nicols 44f2c95717 MDL-32164 Add string for file encoding
AMOS BEGIN
  CPY [encoding,tool_uploaduser],[fileencoding,mod_data]
AMOS END
2012-03-23 09:54:59 +00:00
Rossiani Wijaya a69d0091fa MDL-32172 Lesson Module: add variable initialization for 2012-03-23 15:39:12 +08:00
Rajesh Taneja c0254bafa8 MDL-29331 Users: Participants list with user_details now show check box for bluk operation 2012-03-23 11:28:58 +08:00
AMOS bot e8e1b85e72 Automatically generated installer lang files 2012-03-23 00:31:45 +00:00
Sam Hemelryk a81e8c47f1 weekly release 2.2.2+ 2012-03-23 12:19:07 +13:00
Sam Hemelryk 292f509cff Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-03-23 12:11:03 +13:00
Dan Marsden 7ebb628d8d MDL-32147 - use correct 404 for server type 2012-03-23 10:00:31 +13:00
Dan Marsden ef1889484b MDL-32147 SCORM improve performance of 404s for files inside SCORM packages. 2012-03-23 09:44:32 +13:00
Kanika Goyal 4941396825 MDL-31856, if choice not open, responses inconsistently displayed 2012-03-22 18:57:49 +05:30
Sam Hemelryk 366d7c0aba MDL-31528 categories: Fixed up typo 2012-03-22 09:45:45 +13:00
Sam Hemelryk 11c86239b7 MDL-31528 category: Fixed use of lang_string class 2012-03-21 14:28:37 +13:00
Sam Hemelryk 89399cb129 Merge branch 'wip-mdl-31640-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-03-21 09:50:13 +13:00
Sam Hemelryk 0d2001b756 Merge branch 'MDL-28952-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-03-21 09:29:12 +13:00
Andrew Robert Nicols 9c6d59285e MDL-32065 Allow feedback images to be themed 2012-03-21 09:25:22 +13:00
Dan Poltawski 91e79a37cc Merge branch 'MDL-31266_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-03-20 21:45:03 +08:00
Rossiani Wijaya 9530780571 MDL-31775 Lesson Module: fixed start at last page seen bug 2012-03-20 17:36:21 +08:00
Aparup Banerjee a57b5479db MDL-29848 glossary: fixed whitespace 2012-03-20 16:12:54 +08:00
Aparup Banerjee 6a680dd4aa Merge branch 'MDL-29848-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-03-20 16:12:21 +08:00
Rossiani Wijaya a8e1b6b3ef MDL-27710 lesson module: add the following jump options: unseen branch page, random page and random branch 2012-03-20 15:20:08 +08:00
Andrew Davis e9ed7e0ed0 MDL-31818 grade: removed some broken code to do with overriding students per page, added a post variable so the page isnt lost when submitting grades 2012-03-20 13:24:36 +08:00
Ankit Agarwal 9f84da6969 MDL-28592 blocks: changing the arguments to moodle_url::out() 2012-03-20 10:58:56 +08:00
Aparup Banerjee fbc708dc4d Merge branch 'wip-MDL-31528-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-03-20 10:10:11 +08:00
Dan Poltawski 507e6a2eda MDL-29400 assignment: Require a file to be uploaded in form
Don't display 'File uploaded successfully' when no file uploaded for
both upload and uploadsingle
2012-03-20 09:06:13 +08:00
Sam Hemelryk dff9c69fa8 Merge branch 'wip-MDL-32036-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-03-20 13:41:20 +13:00
Sam Hemelryk 26777ab2c3 Merge branch 'wip-MDL-32037-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-03-20 13:33:17 +13:00
Sam Hemelryk e9d7fb3a88 Merge branch 'w12_MDL-32071_m22_dbfamily' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-20 11:40:01 +13:00
Sam Hemelryk e6c9fdb384 Merge branch 'w12_MDL-32079_m22_folderrev' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-20 11:34:09 +13:00
M Kassaei cff8f5db55 MDL-32053 question: Question bank table displayed inconsistently 2012-03-20 11:01:21 +13:00
M Kassaei 5691235ace MDL-32048 mod_quiz: Question bank select/deselect all shows strange behaviour in IE 2012-03-20 10:56:02 +13:00
Sam Hemelryk 33ce9928d8 Merge branch 'MDL-32064_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-03-20 10:37:27 +13:00
Sam Hemelryk 2cd9cfcc97 Merge branch 'MDL-32084_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-03-19 20:38:14 +13:00
Sam Hemelryk a440a25c64 Merge branch 'w12_MDL-32090_m22_groupui' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-19 20:33:38 +13:00
Petr Skoda 59307a664c MDL-27553 admin: Fixed override bug 2012-03-19 20:21:52 +13:00
Rajesh Taneja 42ec1aa258 MDL-31640 course: removed extra error message, perpage is set properly, modulelink hidden field, and new context call is used. 2012-03-19 15:17:37 +08:00
Rajesh Taneja 246e844e5f MDL-31640 course: Move to, edit and search functionality in search.php is fixed with proper permission check 2012-03-19 15:17:31 +08:00
Petr Skoda ad6c9ad223 MDL-31703 allow serving of JavaScript from unsupported '/' dirroot 2012-03-19 20:16:49 +13:00
Sam Hemelryk 56f55380a9 Merge branch 'wip-mdl-26674-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-03-19 20:06:28 +13:00
Sam Hemelryk aa7574545f MDL-31528 navigation: Fixed up missing break and optimised category.php 2012-03-19 19:32:43 +13:00
Sam Hemelryk 739d5c91b9 MDL-31984 Fixed whitespace during integration 2012-03-19 19:12:31 +13:00
Brian Jorgensen 2e83093eba MDL-31984: add debugging message if theme renderer file is missnamed 2012-03-19 19:12:30 +13:00
Rajesh Taneja 2e32076884 MDL-26674 wiki2.0: cleaned wiki event logging patch 2012-03-19 11:20:17 +08:00
Diane Villemure e10faa46a6 MDL-26674 wiki2.0: Fixed wiki activity log 2012-03-19 11:20:11 +08:00
Sam Hemelryk 8b66d25681 Merge branch 'wip-MDL-27064-stable22' of git://github.com/phalacee/moodle into MOODLE_22_STABLE 2012-03-19 15:48:52 +13:00
Andrew Robert Nicols 51ffccda4d MDL-32004 Set the defaultrequestcategory correctly when deleting/creating the default category 2012-03-19 14:38:48 +13:00
Sam Hemelryk fc109fac2d Merge branch 'MDL-28187_messaging_nav_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-03-19 14:14:17 +13:00
Sam Hemelryk 3905c1f75b Merge branch 'MDL-31835_recent_conversations_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-03-19 14:07:05 +13:00
AMOS bot 2c4e52a7df Automatically generated installer lang files 2012-03-19 00:31:50 +00:00
Sam Hemelryk fb2e8f82c9 Merge branch 'MDL-30890_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-03-19 10:27:22 +13:00
Mary Evans ce539ad701 MDL-32084 theme_fusion: removed default tagline in frontpage.php and changed configtextarea to configtext in settings.php 2012-03-17 21:46:52 +00:00
Andrew Davis 4bf46b6e96 MDL-28187 message: fixed up $PAGE->set_url() in /message/index.php so the nav highlighted properly 2012-03-17 11:59:29 +07:00
AMOS bot 5c1a9d64ac Automatically generated installer lang files 2012-03-17 00:31:43 +00:00
Petr Skoda 466b9bad29 MDL-32090 fix invalid group members url
Credit goes to Jean-Philippe Gaudreau.
2012-03-16 20:12:27 +01:00
Tim Hunt b1ddd85ca1 MDL-32064 quiz navigation: JS form submit must fire submit event handlers. 2012-03-16 15:00:51 +00:00
Petr Skoda 1f373dfef0 MDL-32071 fix incorrect get_dbfamily() call 2012-03-16 10:31:30 +01:00
Petr Skoda 69439955e6 MDL-32071 fix fatal problems in experimental forum_usetextsearches 2012-03-16 10:30:14 +01:00
Petr Skoda 96f953cbe2 MDL-32079 folder revision must be incremented after any file change 2012-03-16 10:11:40 +01:00
Ankit Agarwal 0ce936b081 MDL-28952 blocks: Fixing the extra escaping issue with profile links 2012-03-16 15:44:51 +08:00
Andrew Davis c232e12bf2 MDL-31835 message: added a view conversation type link after each conversation on the recent conversation screen 2012-03-16 13:28:08 +07:00
Sam Hemelryk fa0f103c89 MDL-31528 navigation: Tidied up page for viewing and managing categories 2012-03-16 10:35:53 +13:00
Sam Hemelryk fc08a60dc1 MDL-31528 navigation: Fixed up navbar generation when editing categories 2012-03-16 10:35:53 +13:00
Sam Hemelryk 51f205a7e3 MDL-31528 navigation: Fixed up generation for category contexts 2012-03-16 10:35:53 +13:00
Tim Hunt 7d0f9cef34 MDL-31594 question manual grading: did not handle comma as decimal. 2012-03-15 18:48:42 +00:00
Eloy Lafuente (stronk7) 832626da76 weekly release 2.2.2+ 2012-03-15 11:46:12 +01:00
Eloy Lafuente (stronk7) f51ba2033b Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-03-15 11:42:06 +01:00
Rossiani Wijaya 3db8d8499e MDL-30890 accessibility compliance: add summary to calendar table 2012-03-15 17:09:34 +08:00
Aparup Banerjee be626b193e MDL-32028 Documentation : removed legacy 1.x documentation 2012-03-15 15:20:08 +08:00
Jason Fowler 658762de67 MDL-27064 - Blog - Changing the link text for different levels of blog entries 2012-03-15 08:52:46 +08:00
AMOS bot 494884fe7c Automatically generated installer lang files 2012-03-15 00:31:52 +00:00
Charles Fulton 104ed36274 MDL-26243 calendar: display correct number of repeated events 2012-03-15 00:41:10 +01:00
Eloy Lafuente (stronk7) 27c202c1c0 MDL-31911 admin tools: moved loop after tools admin category created 2012-03-15 00:27:41 +01:00
Eloy Lafuente (stronk7) 3ef24c6f3b MDL-28972 formslib: whitespace fixes 2012-03-14 18:11:24 +01:00
Marina Glancy 9616f3f71d MDL-32036: Repositories wikimedia and youtube lack paging
repositories wikimedia and youtube:
- save last search in
- process parameter 'page'
- remove buttons 'Refresh', 'Search' and 'Logout' since they don't have meaning
filepicker:
- allow unknown number of pages (['pages'] = -1), show one 'Next' page after the current (both JS and non-JS modes)
repository wikimedia:
- add non-AJAX search form to make it work with JS disabled
2012-03-14 14:26:21 +08:00
Marina Glancy e6be794910 MDL-32037: MDL-32037: After displaying error message filepicker could not send proper request to server
We need to make sure that code executed on error does not create more requests and
especially does not create the same request that resulted with error. So now by default
filepicker will clear the right side of the window if repository_ajax.php returned an
error.
Also fixed an 'invalidsesskey' error string.
2012-03-14 13:12:59 +08:00
Sam Hemelryk b87ca9b713 Merge branch 'wip-mdl-28972-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-03-14 14:39:59 +13:00
Davo Smith 7f40235c18 MDL-31853 Fix pagelayout problem with admin_externalpage_setup 2012-03-14 09:24:51 +08:00
AMOS bot 378ef32da0 Automatically generated installer lang files 2012-03-14 00:31:53 +00:00
Davo Smith da9cfb9630 MDL-29147 Quickform fixed insertElementBefore to ignore duplicate unnamed elements 2012-03-14 11:54:42 +13:00
Sam Hemelryk 999e6901c8 Merge branch 'MDL-29440' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-03-14 11:30:06 +13:00
Kordan b2ace0016f MDL-31975 theme_formal_white: minor css cleanup 2012-03-14 11:24:01 +13:00
Ankit Agarwal d22a68bd18 MDL-28998 libraries: Using default value of 0 for userid during login 2012-03-14 10:47:40 +13:00
Eloy Lafuente (stronk7) a784430288 Merge branch 'MDL-31981_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-03-13 18:09:24 +01:00
Andrew Davis 08b6184488 MDL-31834 message: fixed up some not quite correct usage of moodle/site:readallmessages 2012-03-13 16:49:30 +01:00
Eloy Lafuente (stronk7) 3da552e27c Merge branch 'wip-MDL-31175-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-03-13 16:16:18 +01:00
Eloy Lafuente (stronk7) 489981eaba MDL-31718 add a few more tests to check that lens and tags are properly handled
Conflicts:

	lib/simpletest/testmoodlelib.php
2012-03-13 13:16:47 +01:00
Eloy Lafuente (stronk7) 6014124ea3 Merge branch 'w11_MDL-31718_m22_shortentext' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-13 13:14:48 +01:00
Aparup Banerjee c04109fcb1 Merge branch 'wip-mdl-27862-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-03-13 15:28:12 +08:00
Rossiani Wijaya 7f7aac7ad1 MDL-31266 Lesson module: Improve feedback so that the responses are concatenated instead of overwritten 2012-03-13 14:54:39 +08:00
Aparup Banerjee 298dd4ca5d Merge branch 'wip-mdl-30817-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-03-13 11:51:54 +08:00
Aparup Banerjee 08ba77f32e Merge branch 'MDL-30867_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-03-13 11:32:29 +08:00
Mary Evans 33e69c39ef MDL-31008 themes: (base theme) reversed MDL-26712 by making dimmed objects grey and added new rule for dimmed activity label text to give 50% transparancy instead 2012-03-13 10:58:25 +08:00
Aparup Banerjee d047098e46 MDL-31910 Quiz : fixed whitespace 2012-03-13 10:15:30 +08:00
M Kassaei 52b26f8a5b MDL-31910 Quiz : Error on Manual Grading report 2012-03-13 10:15:24 +08:00
Davo Smith 66e23d6a6c MDL-31935 Fixed restore backup link in course search 2012-03-13 10:01:31 +08:00
Ruslan Kabalin e9f2ede177 MDL-31808 Upload assignment: fix user feedback display 2012-03-13 14:10:31 +13:00
Ruslan Kabalin 861de3cda1 MDL-31917 Improve assigment submission usability
Say 'View' if assignment has been graded via gradebook and changing
grades via submissions interface is not possible.
2012-03-13 14:05:08 +13:00
Ruslan Kabalin 2b6a38f5c2 MDL-31919 Fix assignment overview output to respect gradebook grading.
Currenly, if assigment has been graded in gradebook only, in the assigment
overview it is listed as not graded.
2012-03-13 14:01:04 +13:00
Eloy Lafuente (stronk7) 3ad6f443b4 Merge branch 'w11_MDL-31913_m22_tinymce' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-13 00:35:19 +01:00
Sam Hemelryk 22dde645f4 Merge branch 'w11_MDL-27457_m22_enrolnorecover' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-13 11:59:53 +13:00
Sam Hemelryk d254ae8cfe Merge branch 'MDL-30298_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-03-13 11:56:18 +13:00
Sam Hemelryk ec2b87aede Merge branch 'MDL-31702_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-03-13 10:33:39 +13:00
Eloy Lafuente (stronk7) 0b1579b2d8 Merge branch 'w11_MDL-31956_m22_paypal' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-12 21:37:01 +01:00
Michael Aherne 07f641f250 MDL-31979 Typo in config-dist.php 2012-03-12 20:18:47 +01:00
Eloy Lafuente (stronk7) 33d1075328 Merge branch 'w11_MDL-31595_m22_enrolme' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-12 18:01:01 +01:00
Petr Skoda 1b75985a39 MDL-31595 improve enrol link comments 2012-03-12 16:49:22 +01:00
Eloy Lafuente (stronk7) 3e6e265d1a Merge branch 'w11_MDL-31815_m22_confirmemail' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-12 16:34:13 +01:00
Eloy Lafuente (stronk7) 7fabd5af5c Merge branch 'w11_MDL-31534_m22_pageinitroot' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-12 15:49:30 +01:00
Petr Skoda c81e5bc9cc MDL-31534 init PAGE before require_login() 2012-03-12 13:59:08 +01:00
Eloy Lafuente (stronk7) 13cd1994af Merge branch 'w11_MDL-31494_m22_adodblink' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-12 13:38:40 +01:00
Mary Evans 6ac047c7de MDL-30298 report_progress: adds outer wrapper with class no-overflow to report table so as to enable horizontal scroll bar 2012-03-12 10:45:55 +00:00
Jason Fowler f29d40dc03 MDL-27064 - Blog - Changing the link text for different levels of blog entries 2012-03-12 15:28:21 +08:00
Sam Hemelryk b3fe3fb6c8 Merge branch 'm22_MDL-31888' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE
Conflicts:
	mod/scorm/styles.css
2012-03-12 17:29:11 +13:00
Sam Hemelryk 12d0b6c5ae MDL-27304 mod_wiki: Fixed up phpdocs for globals 2012-03-12 17:20:48 +13:00
Sam Hemelryk 25ff180756 Merge branch 'MDL-27304-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-03-12 17:05:21 +13:00
Sam Hemelryk cbb8087b30 Merge branch 'MDL-31664-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-03-12 17:02:07 +13:00
Rajesh Taneja 030f323fbb MDL-28972 formslib: orignalvalue is considered and checkboxes are updated depending on orignalvalue of controller 2012-03-12 11:51:08 +08:00
Rajesh Taneja 10fd3cd054 MDL-28972 formslib: Checkbox controller will use yui to select and unselect checkboxes 2012-03-12 11:51:01 +08:00
Sam Hemelryk 840dc3cb94 Merge branch 'MDL-28997-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-03-12 15:26:21 +13:00
Rajesh Taneja 495baea515 MDL-27862 Themes: Device name first letter is capital and font is made similar to theme name font 2012-03-12 10:19:03 +08:00
Rajesh Taneja 7f2d783fad MDL-27862 Themes: clear theme cache button will redirect to the page on which it was pressed 2012-03-12 10:19:03 +08:00
Rajesh Taneja 1b99f0565a MDL-27862 Themes: replaced disabled use theme button with unset theme button 2012-03-12 10:19:03 +08:00
Rajesh Taneja f5ee52a7fe MDL-27862 Themes: Added button to un-select theme for devices, except default device 2012-03-12 10:19:03 +08:00
Rajesh Taneja 06d09486b5 MDL-27862 Themes: Strings updated on theme selection pages 2012-03-12 10:19:03 +08:00
Rajesh Taneja 337e7897de MDL-30817 activity_completion: Fixed title and alt string (on checkbox) to have module name prefixed 2012-03-12 10:17:12 +08:00
Andrew Robert Nicols aacacde221 MDL-31811 Add/Correct checks on activity read-only periods 2012-03-12 15:15:38 +13:00
Andrew Robert Nicols 0c1e3a753b MDL-31877 Correct get_users exception 2012-03-12 14:57:21 +13:00
Andrew Robert Nicols 15958e8677 MDL-31918 Use cached module info for activity completion report 2012-03-12 14:55:13 +13:00
Dan Poltawski eb1f147000 MDL-29440 calendar: iCal export don't allow html in description export 2012-03-12 09:51:07 +08:00
Andrew Robert Nicols cfaa50a61d MDL-31923 Correctly respect hiddenfields and capabilities 2012-03-12 14:46:34 +13:00
Sam Hemelryk 7ac10ac609 Merge branch 'MDL-31841_feedback_align_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-03-12 14:22:10 +13:00
Sam Hemelryk 113b864ffc Merge branch 'wip-MDL-30906-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-03-12 14:19:50 +13:00
Sam Hemelryk 7303944957 MDL-31175 backup: Fixed undefined in register_dependency 2012-03-12 09:43:00 +13:00
Petr Skoda dd21fb11f0 MDL-31718 utf-8 support in shorten_text() 2012-03-11 21:32:07 +01:00
Mary Evans 10a6003a3a MDL-30298 report_completion: adds outer wrapper with class no-overflow to report table so as to enable horizontal scroll bar 2012-03-11 15:17:59 +00:00
Eloy Lafuente (stronk7) 476626d39e Moodle release 2.2.2 2012-03-11 16:00:29 +01:00
Mary Evans ed4a909035 MDL-30298 theme_binarius: adds horizontal scroll to report layout 2012-03-11 01:34:09 +00:00
Petr Skoda 2bf4996444 MDL-31956 fix enrol string components
Credit goes to Mark Nelson
2012-03-10 13:01:53 +01:00
Petr Skoda 4e68456832 MDL-31494 fix link to adodb driver docs
target="_bank" is valid again in html5, it does help a lot here no matter what legacy accessibility guides say…
2012-03-10 11:05:31 +01:00
Petr Skoda caec0405f4 MDL-31815 encode dots in confirm url which helps email clients with url highlighting 2012-03-10 10:47:19 +01:00
Petr Skoda 181918691c MDL-27457 fix JS error on enrol when grade history disabled 2012-03-10 09:59:58 +01:00
Petr Skoda 45962a179c MDL-31595 do not show enrolee link to guest account 2012-03-10 09:41:31 +01:00
Petr Skoda 61df8b24d2 MDL-30636 switch to new TinyMCE 3.4.9 2012-03-10 08:57:24 +01:00
Petr Skoda 5b585b8ddf MDL-30636 add TinyMCE 3.4.9 2012-03-10 08:57:24 +01:00
Tim Hunt 0aa433a054 MDL-31981 shortanswer qtype does not handle \* in correct response. 2012-03-09 19:01:59 +00:00
Tim Hunt 53e40ebe2d MDL-31702 quiz: clarify error message that has been confusing people. 2012-03-09 15:29:19 +00:00
Eloy Lafuente (stronk7) 5f51b09aec Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-03-09 11:56:33 +01:00
AMOS bot 4ed9533352 Automatically generated installer lang files 2012-03-09 11:54:16 +01:00
Eloy Lafuente (stronk7) 6c43ac23f8 weekly release 2.2.1+ 2012-03-09 11:13:49 +01:00
Eloy Lafuente (stronk7) 9be61d94fd Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-03-09 11:04:06 +01:00
Rossiani Wijaya f822433322 MDL-30867 Lesson module: fix lesson essay question formtting to be consistent with user selection 2012-03-09 17:36:44 +08:00
Eloy Lafuente (stronk7) c44c8eb96b Merge branch 'wip-MDL-31248-MOODLE_22_STABLE-v3' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-03-09 09:46:35 +01:00
Eloy Lafuente (stronk7) be0b3ea0ea Revert "MDL-31248 - lib - Alteration to the rc4encrypt function to allow for old password use."
This reverts commit 6f3e759ecb.
2012-03-09 09:37:43 +01:00
Ankit Agarwal 44b4c10a47 MDL-28998 libraries: Adding validation to customisable profile fields during signup 2012-03-09 14:51:29 +08:00
Adrian Greeve 9e7fa5f2bb MDL-31248 - lib - Retaining the old password key and creating a new cookie prefix. 2012-03-09 13:37:40 +08:00
Eloy Lafuente (stronk7) 009d72139f Revert "[MDL-31708] - wiki 2.0 non-group member can see edit option in navigation block."
This reverts commit c583993d8c.
2012-03-09 02:21:30 +01:00
Eloy Lafuente (stronk7) 478207515c Revert "MDL-31708 wiki groups: whitespace fix"
This reverts commit 27da392f3c.
2012-03-09 02:21:26 +01:00
Charles Fulton b1f60fe2f7 MDL-27304 wiki: link to user's course profile 2012-03-08 05:07:06 -08:00
Andrew Davis 9d75f3a0b9 MDL-31841 grade: prevented the feedback column on the user report from being centered 2012-03-08 15:24:19 +07:00
Eloy Lafuente (stronk7) 1312ff8740 Merge branch 'wip-MDL-31248-MOODLE_22_STABLE-v2' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-03-08 02:28:41 +01:00
AMOS bot bb3b8185a9 Automatically generated installer lang files 2012-03-08 00:31:39 +00:00
Adrian Greeve 6f3e759ecb MDL-31248 - lib - Alteration to the rc4encrypt function to allow for old password use. 2012-03-08 08:08:05 +08:00
Eloy Lafuente (stronk7) 2615855713 Merge branch 'wip-MDL-29086-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-03-08 00:48:22 +01:00
Eloy Lafuente (stronk7) c904abc752 Merge branch 'MDL-31712_M22' of git://github.com/kordan/moodle into MOODLE_22_STABLE 2012-03-07 15:40:50 +01:00
Petr Skoda bfcb69ef70 MDL-31689 fix moodle_database:execute() description
Conflicts:

	lib/dml/moodle_database.php
2012-03-07 12:43:00 +01:00
Eloy Lafuente (stronk7) 4d4e00682b MDL-31832 CLI upgrade will return 0 exit status if no upgrade is needed
Discussed with David, both points were valid but finally
we agreed about to consider the "no upgrade needed" exit
a normal/succesful one, mainly because it keeps previous
behavior the same (exit non-zero only for real errors).
2012-03-07 11:02:47 +01:00
David Mudrak 1acc431b98 MDL-31832 CLI upgrade checks if the upgrade is actually needed 2012-03-07 11:02:10 +01:00
Eloy Lafuente (stronk7) 251ed425e4 MDL-28364 whitespace fixes 2012-03-07 04:01:36 +01:00
Eloy Lafuente (stronk7) 5da8f5d11e Merge branch 'MDL-28364_22' of git://github.com/jonof/moodle into MOODLE_22_STABLE 2012-03-07 04:01:09 +01:00
Eloy Lafuente (stronk7) 49b4703187 MDL-23787 data: Init 2 arrays (global scope) that may conflict with other global scope code 2012-03-07 01:49:07 +01:00
Marina Glancy 0736188d75 MDL-23787 added possibility to embed images into textarea fields in database activity 2012-03-07 01:49:02 +01:00
AMOS bot 20640e3597 Automatically generated installer lang files 2012-03-07 00:31:46 +00:00
Ruslan Kabalin 1555c3d89f MDL-31255 Fix move of highlighted section when JS is off 2012-03-07 00:19:05 +01:00
Sam Hemelryk deaf559402 Merge branch 'MDL-28387-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-03-07 11:46:32 +13:00
Gootvilig David Hai 8d11716bfc MDL-31876 questionlib: fix question_has_capability_on memory bloat 2012-03-06 21:31:55 +01:00
Eloy Lafuente (stronk7) a9b03dc661 Merge branch 'MDL-31829_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-03-06 21:23:44 +01:00
Dan Marsden cbf6a4989e MDL-31888 SCORM prevent scrollbars on yui div 2012-03-07 09:03:14 +13:00
Eloy Lafuente (stronk7) fc7776f50a Merge branch 'w10_MDL-31785_m22_htmlpurifier' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-06 13:11:41 +01:00
Eloy Lafuente (stronk7) 27da392f3c MDL-31708 wiki groups: whitespace fix 2012-03-06 11:46:22 +01:00
Adrian Greeve 35d565ad8f MDL-30906 - course - Changed the <hx> tags to follow a sequential order 2012-03-06 14:54:49 +08:00
Gilles-Philippe Leblanc c583993d8c [MDL-31708] - wiki 2.0 non-group member can see edit option in navigation block. 2012-03-06 10:20:51 +08:00
Sam Hemelryk bd87189222 Merge branch 'MDL-27764_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-03-06 10:19:00 +13:00
Mary Evans ad7ecc08d3 MDL-31328_master theme_sky_high: fixed report layout and related files + updated css + added horizontal scroll 2012-03-06 09:59:27 +13:00
Sam Hemelryk 575a553094 Merge branch 'MDL-31828_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-03-05 17:03:20 +13:00
Sam Hemelryk 7d6c1a19bb Merge branch 'w10_MDL-31807_m22_cohort' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-03-05 16:56:05 +13:00
Sam Hemelryk 94cfcb36a5 Merge branch 'MDL-29347-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-03-05 16:13:08 +13:00
Sam Hemelryk ec5a34443c MDL-30724 mod_assignment: Minor fixes during integration 2012-03-05 16:09:50 +13:00
Sam Hemelryk 0c0ae1c696 Merge branch '22_MDL-30724_count_real_submissions_eloy_suggests' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-03-05 16:08:30 +13:00
Tony Levi 3d1573914c MDL-31819: admin: allow install to proceed when multiple admins exist already 2012-03-05 15:54:39 +13:00
Sam Hemelryk 9772d6d376 MDL-31794 theme_formalwhite: Fixed up tabs 2012-03-05 15:29:27 +13:00
Sam Hemelryk f8c24829ab Merge branch 'MDL-31707_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-03-05 15:21:19 +13:00
Kordan 141f588d8e MDL-29367 theme_formalwhite: Lines between RSS and upcoming events 2012-03-05 15:15:57 +13:00
Kordan 835ecea7fe MDL-31786 theme_formalwhite: bigger userid and password fields size in login page 2012-03-05 15:07:40 +13:00
kordan 053a3ad67d MDL-31794 theme_formalwhite: let tab-bar give evidence of the current tab and page 2012-03-05 15:01:50 +13:00
Eloy Lafuente (stronk7) dfa28b875d MDL-27764 restore - always restore as much info as possible (1.9 approach)
In 2.0 we had reduced the types of restore operations where we allow
to load the section names and section descriptions, only proceeding
when restoring to new course or to existing course, deleting.

With this patch, we change to the old 1.9 way, that was to restore
the section information always, no matter of the type of restore
operation (course restore, import, to new or to existing course,
deleting or adding). The only exception is that it's always checked that
the target section names and descriptions are empty.
2012-03-05 02:48:56 +01:00
Sam Hemelryk 4e738cab73 Merge branch 'MDL-26037_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-03-05 14:03:26 +13:00
Sam Hemelryk 62a2c4fd22 Merge branch 'MDL-29248_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-03-05 13:54:27 +13:00
Kordan f8c083e968 MDL-29127 theme_formalwhite: highlight for unread forum post 2012-03-05 12:37:37 +13:00
Sam Hemelryk bf4649edb5 Merge branch 'm22_MDL-31749' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-03-05 12:30:05 +13:00
Sam Hemelryk e6f2103ce7 Merge branch 'MDL-24235-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-03-05 12:22:19 +13:00
Sam Hemelryk fecb44d7b5 Merge branch 'MDL-31806-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-03-05 12:05:39 +13:00
Sam Hemelryk c71b744a43 Merge branch 'MDL-30893-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-03-05 11:52:45 +13:00
Sam Hemelryk 5c3c0a8ce5 Merge branch 'MDL-31466-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-03-05 11:30:53 +13:00
AMOS bot c3f525dc49 Automatically generated installer lang files 2012-03-04 00:31:48 +00:00
Petr Skoda 9e8fe8469b MDL-31785 fix and improve htmlpurifier tests 2012-03-03 11:25:34 +01:00
Petr Skoda 54ef6f4b01 MDL-31785 import HTMLPurifier 4.4.0+
Includes one extra fix for _blank 8c9d461a6259d7b8ac4ae5c9c9e95ab176cfcda3 compared to 4.4.0 release.
2012-03-03 11:25:34 +01:00
Petr Skoda 0908a1a327 MDL-31807 fix invalid nulls in cohort components
Credit goes to Stephen.
2012-03-03 10:57:16 +01:00
AMOS bot 5cb002eaa6 Automatically generated installer lang files 2012-03-03 00:31:38 +00:00
Charles Fulton 683c8259ea MDL-24235 bennu: remove dependency on mbstring from library 2012-03-02 07:59:15 -08:00
Charles Fulton a7bc85ea03 MDL-29848 glossary: get proper context for comments on exported entry 2012-03-02 07:48:42 -08:00
Adrian Greeve d1deac2d80 MDL-29086 - data - Fix for allowing the deletion of database activity presets.
Thank you to Matthias Hunstock for providing the patch for this.
2012-03-02 14:32:37 +08:00
Ankit Agarwal 43956b2c68 MDL-28387 logs: Log data when a user is deleted 2012-03-02 13:18:32 +08:00
Ankit Agarwal 72ffaf4e39 MDL-31466 Tags Adding a capability check to make sure hidden courses are not displayed in tag search results 2012-03-02 12:09:59 +08:00
Ankit Agarwal d2943aa711 MDL-30893 Accessibility Submit button in forgot password page now have separate ids 2012-03-02 11:30:07 +08:00
Andrew Davis d736ed90f7 MDL-31353 grade: added a missing YUI requires 2012-03-02 09:48:03 +07:00
Dan Marsden 50147ef444 MDL-31749 - remove extra space from scorm pop-up - especially for afterburner theme 2012-03-02 09:13:32 +13:00
Tim Hunt 2db787e242 MDL-31829 question engine SQL typo breaks some regrades.
Also, some MySQL-only code had not been updated.

This problem only affected a small minority of question attempts, like
this:
1. Suppose you have a shortanswer question with correct answer 'Toad'
and some hints.
2. Suppose a student attempts this using the interactive behaviour and
on the first try responds 'Frog', and on the second try responds 'Toad'.
3. Then suppose the teacher edits the question to make 'Frog' correct.
4. Then, when the quiz is regraded, the question_attempt_step for the
second try will need to be deleted. That is where the buggy code was.
2012-03-01 12:38:51 +00:00
Eloy Lafuente (stronk7) dff99bd6c5 MDL-26037 restore: fixes for mssql, php 5.4 and small improvs 2012-03-01 13:19:24 +01:00
Tony Levi 80d78f3aae MDL-26037: import: display search box even when no courses are currently displayed 2012-03-01 13:19:24 +01:00
Tony Levi 9b3a01563c MDL-26037: restore/import: check through all courses instead of only first 250 2012-03-01 13:19:23 +01:00
Eloy Lafuente (stronk7) 9f4ad8a5dd MDL-29248 backup: take rid of the setting and code handling the 'private' user filearea 2012-03-01 13:16:01 +01:00
Eloy Lafuente (stronk7) 6339bf1051 MDL-29248 backup: delete user_files settings, lang strings and uses
Conflicts:

	admin/settings/courses.php
	version.php
2012-03-01 13:15:46 +01:00
Tim Hunt 21356da7ee MDL-31828 attachements to essay questions do not work on Oracle. 2012-03-01 12:12:14 +00:00
Eloy Lafuente (stronk7) ce3cd1f122 MDL-31707 environment - add check for the hash extension 2012-03-01 12:52:07 +01:00
Eloy Lafuente (stronk7) e356fb68fd weekly release 2.2.1+ 2012-03-01 11:30:35 +01:00
Eloy Lafuente (stronk7) e8681669bc Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-03-01 11:26:02 +01:00
Aparup Banerjee 6d29b2989f MDL-27793 themes : anomaly theme rtl+ltr login box element widths fixed to be acceptable for IE and FF. 2012-03-01 09:23:29 +01:00
Sam Hemelryk ebbb914346 Merge branch 'MDL-31831_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-03-01 14:34:52 +13:00
Eloy Lafuente (stronk7) ee3d7d8a71 MDL-31831 whitespace clean - take2 2012-03-01 02:07:51 +01:00
Charles Fulton 044cd0a0d6 MDL-31806 tags: remove second occurrence of id in query string 2012-02-29 05:19:34 -08:00
Aparup Banerjee 2e2ca2af54 MDL-25027 web service: moved validation to before changes to DB transaction. 2012-02-29 09:57:25 +01:00
Eloy Lafuente (stronk7) f2a6db61a9 Merge branch 'wip-mdl-29274-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-02-29 02:19:19 +01:00
Eloy Lafuente (stronk7) 3716fb55e1 Merge branch 'MDL-31748_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-02-29 02:10:48 +01:00
Eloy Lafuente (stronk7) cafbb73f5b Merge branch 'MDL-26496_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-02-29 02:06:07 +01:00
AMOS bot efd5bc7eb0 Automatically generated installer lang files 2012-02-29 00:31:17 +00:00
Eloy Lafuente (stronk7) 46ccd8b12b Merge branch 'wip-MDL-31738-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-02-29 00:30:27 +01:00
Eloy Lafuente (stronk7) 313f98c88a Merge branch 'MDL-25027_stable_consistency_fix_m22' of git://github.com/nebgor/moodle into MOODLE_22_STABLE 2012-02-28 17:34:12 +01:00
Aparup Banerjee 2e0d0590da Merge branch 'MDL-14837_show-time-on-no-duration-events_22_STABLE' of https://github.com/ncsu-delta/moodle into MOODLE_22_STABLE 2012-02-28 16:41:52 +08:00
Aparup Banerjee 91470a354e Merge branch '22_MDL-31419_fix_auth_typo' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-28 16:23:21 +08:00
Aparup Banerjee 01c7382881 Merge branch 'MDL-30878-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-02-28 15:37:36 +08:00
Aparup Banerjee 9a7310e80b Merge branch 'MDL-28386-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-02-28 14:42:08 +08:00
Dan Marsden 8b4e28f87e MDL-31086 Calendar : fix sql to get distinct list of courses 2012-02-28 14:37:10 +08:00
Aparup Banerjee 415dd485a5 Merge branch 'MDL-31335_mtrace_email_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-02-28 14:15:37 +08:00
Aparup Banerjee 844d4f0ce0 Merge branch 'wip-mdl-22896-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-02-28 13:48:40 +08:00
Aparup Banerjee fe4e706f3a Merge branch 'MDL-31399_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-02-28 12:05:20 +08:00
Gerard (Gerry) Caulfield ca3cfd88cc MDL-31419 Fixing "Suspended acount" typo in auth.php 2012-02-28 11:28:07 +08:00
Eloy Lafuente (stronk7) e61fabb720 Merge branch 'MDL-27793_m22' of git://github.com/nebgor/moodle into MOODLE_22_STABLE 2012-02-28 03:52:53 +01:00
Jonathon Fowler bb98f4fda3 MDL-28364 handle question formats that support multiple file types 2012-02-28 09:24:54 +10:00
Eloy Lafuente (stronk7) 845b165edf MDL-29161 weblib: added one more test about un-keyed array params 2012-02-27 22:21:57 +01:00
Eloy Lafuente (stronk7) aaa24bb35c Merge branch 'MDL-29161_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-02-27 22:21:50 +01:00
Eloy Lafuente (stronk7) 0c93bbde9e Merge branch 'MDL-31721_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-02-27 22:06:46 +01:00
Eloy Lafuente (stronk7) bd4b665ed6 Merge branch 'MDL-31729_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-02-27 19:02:42 +01:00
Eloy Lafuente (stronk7) edb03ff65b Merge branch 'MDL-29256-resource-format_22_STABLE' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-02-27 18:54:35 +01:00
Eloy Lafuente (stronk7) 98e9b0f21e Merge branch 'MDL-29199' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-02-27 18:47:51 +01:00
Eloy Lafuente (stronk7) 515acf7914 Merge branch 'MDL-29229' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-02-27 17:07:24 +01:00
Eloy Lafuente (stronk7) 1415ba2319 Merge branch 'MDL-29523' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-02-27 16:51:54 +01:00
Eloy Lafuente (stronk7) bcf5427193 Merge branch 'MDL-29592' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-02-27 16:06:19 +01:00
Eloy Lafuente (stronk7) 0d40a799e5 Merge branch 'MDL-31348' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-02-27 15:57:09 +01:00
Eloy Lafuente (stronk7) 5775c7ec63 Merge branch 'MDL-31546' of git://github.com/danpoltawski/moodle into MOODLE_22_STABLE 2012-02-27 15:44:28 +01:00
Marina Glancy ccd6fa9e44 MDL-31738: added functions mod_xxx_get_file_info() to glossary and data modules 2012-02-27 14:14:03 +08:00
Gerard (Gerry) Caulfield 69beea7165 MDL-30724 Limit assignment_count_real_submissions() to only select real
submissions

I've also refactored some code so that it is more structured and allows
for easier overriding of function associated with counting submissions
and updated associated doc blocks.
2012-02-27 12:30:30 +08:00
Dongsheng Cai d049031e95 MDL-29347 core_enrol_get_enrolled_users web service should limit the number of participants - Jerome/Dongsheng 2012-02-27 11:45:04 +08:00
Sun Zhigang e91dd85ed7 MDL-29523 filemanager: Fix a hardcode string 2012-02-27 09:28:14 +08:00
AMOS bot 5b5ff2dac6 Automatically generated installer lang files 2012-02-27 00:31:17 +00:00
Dan Poltawski 170c23d2d2 MDL-29592 weblib: prevent warnings when $USER not set 2012-02-26 18:39:40 +08:00
Mary Evans 0bad02fd57 MDL-31748_master theme_afterburner: added min-width to fix missing horizontal scroll bar when page is reduced in browser window 2012-02-25 18:12:41 +00:00
Glenn Ansley afb0b3f421 MDL-14837 Calendar: Display start time on calendar events with no duration 2012-02-24 09:10:40 -05:00
Rajesh Taneja f013b576ec MDL-29274 blocks: people block will use course context for making url and not module context 2012-02-24 16:39:51 +08:00
Dan Poltawski ca69aa758f MDL-31651 course/info: Fix hardcoded string 2012-02-24 16:12:54 +08:00
Kordan f6df6e93db accessibility colors for formal_white M22 2012-02-24 07:35:56 +01:00
Dan Poltawski 9ee937eb33 MDL-29199 dml: fix query logging on Oracle
thanks to Jonathon Fowler for the fix
2012-02-24 11:55:14 +08:00
Dan Poltawski 08bcf220b3 MDL-31546 wiki: remove stray semicolon
causing errors on oracle

Thanks to Jonathon Fowler for the patch
2012-02-24 11:39:56 +08:00
Rajesh Taneja cd1a0a72a5 MDL-22896 libraries: Updated regular expression in html2text, for replacing unknown/unhandled entities 2012-02-24 10:10:08 +08:00
Adam Olley ed53f70413 MDL-29229 message: Set contactlist pull-down width to not exceed parent columns width 2012-02-24 10:08:55 +08:00
Aparup Banerjee f356ebc979 MDL-27793 Themes : review changes - removed .dir-rtl from .loginbox selector rule to be default css rule. made them same width too. 2012-02-24 09:52:40 +08:00
Aparup Banerjee 26c1694fdc MDL-27793 Themes : fixed "remember username" wrapping unnecessarily. 2012-02-24 09:52:40 +08:00
Aparup Banerjee 89ec652e10 MDL-27793 Themes : fixed base (and other themes) theme's loginbox
- fixed translated lengthy terms were being clipped
 - fixed clipping and positioning of loginbox in rtl and ltr languages both
2012-02-24 09:52:40 +08:00
AMOS bot 82f50464f1 Automatically generated installer lang files 2012-02-24 00:31:45 +00:00
Tim Hunt ea9f1a8faa MDL-31729 questions: files for hints are not moved or deleted.
The files that belong to the question hints are neither moved when the
question is moved to another context, nor deleted when the question is
deleted.

Oops! How come no one noticed that until today.
2012-02-23 12:04:30 +00:00
Tim Hunt db15713237 MDL-31721 question editing: improve working for Show num correct
AMOS BEGIN
 CPY [shownumpartscorrect,question],[shownumpartscorrectwhenfinished,question]
AMOS END
2012-02-23 12:04:10 +00:00
Tim Hunt 94cd982f84 MDL-29161 weblib: moodle_ulr::out does not cope with array params. 2012-02-23 12:03:50 +00:00
Tomasz Muras 8435db0112 MDL-31753 Get correct course ID for Community finder search link. 2012-02-23 11:51:03 +00:00
Eloy Lafuente (stronk7) d1c12af76e weekly release 2.2.1+ 2012-02-23 11:38:57 +01:00
Eloy Lafuente (stronk7) 17d8e3ec8a Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-02-23 11:34:52 +01:00
Rossiani Wijaya 4fbf7ca46c MDL-31399 Lesson Module: Fixed horizontal scroll bar issue when using rtl language format (eg: arabic) 2012-02-23 15:08:21 +08:00
Dan Poltawski b69337ee63 MDL-31348 calendar: event links not using user timezone
thanks to Ben Thomas for the patch
2012-02-23 14:56:08 +08:00
Eduardo Pinto c468eab4f0 MDL-26496 Lesson Module: removed warning when no answer is selected from single choice question 2012-02-23 14:05:07 +08:00
AMOS bot 23aa41015a Automatically generated installer lang files 2012-02-23 00:31:08 +00:00
AMOS bot cf38e1f2ef Automatically generated installer lang files 2012-02-22 00:31:15 +00:00
Sam Hemelryk 68eeca8621 Merge branch 'MDL-30910_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-02-22 10:21:53 +13:00
Eloy Lafuente (stronk7) 7b1890513f Merge branch 'wip-MDL-30830-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-02-21 21:19:33 +01:00
David Mudrak 2d89ead370 MDL-29256 Fixed incorrect calculation of contentformat
Legacy Resource modules of the type Web page force the HTML format for
their content. The format stored in the reference field is valid only
for legacy resources of the type Plain text page. See page_20_migrate()
function.
2012-02-21 11:12:00 +01:00
Eloy Lafuente (stronk7) 52f37a943c Merge branch '22_MDL-25996_making_language_editing_terms_user_friendly' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-21 10:48:20 +01:00
Aparup Banerjee d45c949f64 MDL-25027 Web Service: added email validation to create_users() - just like GUI 2012-02-21 15:29:20 +08:00
Aparup Banerjee 758e086b1c MDL-25027 Web Service: removed user info(firstname,lastname) truncation for GUI-WS consistency.
Currently there is no validation on user info (firstname/lastname) in user/editadvanced_form.php
2012-02-21 15:29:11 +08:00
Rossiani Wijaya 9551675cf9 MDL-30910: Lesson Module: fix lesson progress bar for screen readers
AMOS BEGIN
   CPY [progresscompleted, mod_lesson]
AMOS END
2012-02-21 12:38:33 +08:00
EVAN Irving-Pease a92ed77229 MDL-28386 Authentication Fixing user id issue with logs when a new user is added 2012-02-21 07:48:19 +05:30
Gerard (Gerry) Caulfield c39546eb72 MDL-25996 Updating languaged editing interface terms to make them user
friendly
2012-02-21 09:59:34 +08:00
Sam Hemelryk 31593361a8 Merge branch 'MDL-30249-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-02-21 14:56:13 +13:00
Darko Miletic 3a9104cb54 MDL-31561: Implemented fix for honoring correct number of course
sections
2012-02-21 02:30:50 +01:00
Darko Miletic 9f260add10 MDL-31562: Implemented support for exporting labels, minor additional
cleanups
2012-02-21 02:29:10 +01:00
Eloy Lafuente (stronk7) 894c5e0b86 Merge branch 'wip-mdl-25432-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-02-21 02:10:29 +01:00
AMOS bot a8ea83c89b Automatically generated installer lang files 2012-02-21 00:31:16 +00:00
Sam Hemelryk f231525992 Merge branch 'MDL-29402-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-02-21 10:43:41 +13:00
Andrew Robert Nicols e546d72787 MDL-19421 Correct lesson dependency mapping on restore 2012-02-20 17:17:12 +01:00
Eloy Lafuente (stronk7) 9b228afffe Merge branch 'MDL-31345_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-02-20 15:40:02 +01:00
Eloy Lafuente (stronk7) f24d063a5e Merge branch 'wip-MDL-25299-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-02-20 12:59:11 +01:00
Sam Hemelryk ab04c70d56 Merge branch 'wip-mdl-29967-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-02-20 18:20:22 +13:00
Sam Hemelryk ace2654b5d Merged MDL-29254 with conflict resolution 2012-02-20 18:06:06 +13:00
Sam Hemelryk c8072f8b50 Merge branch 'wip-MDL-30780-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-02-20 17:29:33 +13:00
Sam Hemelryk e86284fefd Merge branch 'wip-MDL-31627-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-02-20 17:25:36 +13:00
Sam Hemelryk c63a91d44a Merge branch '22_MDL-31388_fix_enrol_LDAP_typo' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-20 17:13:25 +13:00
Sam Hemelryk cf6fa5025d Merge branch 'MDL-31532_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-02-20 17:10:39 +13:00
Sam Hemelryk 5a91cf1e2a Merge branch 'm22_MDL-31381' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-02-20 17:04:30 +13:00
Sam Hemelryk 3ba632dce5 Merge branch 'MDL-31432_messaging_popup_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-02-20 16:58:20 +13:00
Sam Hemelryk 10701ea814 Merge branch '22_MDL-30957_adding_assignment_completion_status_method_and_call' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-20 16:52:35 +13:00
Gerard (Gerry) Caulfield 0ac0d06efb MDL-30957 Adding a new method "is_complete" to assignment lib for
testing if a submission has actually been submitted and then adding a
call to it before displaying the the assignment submission date header

As recommended I've simplified the functions and split the logic out into appropriate upload classes.
2012-02-20 11:37:45 +08:00
Andrew Davis a648791534 MDL-31335 message: wrapped calls to mtrace() in email_to_user() within a check to make sure its a CLI script 2012-02-20 10:35:07 +07:00
Andrew Davis e6510e0920 MDL-31432 message: prevent messaging popups while viewing messages 2012-02-20 10:14:27 +07:00
Sam Hemelryk 7654fe5811 Merge branch 'm22_MDL-31397' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-02-20 16:03:08 +13:00
Sam Hemelryk 34d7e1ce9b Merge branch 'm22_MDL-31652' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-02-20 15:53:36 +13:00
Sam Hemelryk 6f22c38b48 Merge branch 'MDL-30965-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-02-20 15:44:47 +13:00
Andrew Robert Nicols 9ef38abc49 MDL-31589 Sort order of lesson answers before restoring them 2012-02-20 15:19:20 +13:00
Andrew Robert Nicols 22f94b8ef7 MDL-31590 Correct title of error dialogue on filepicker
Thanks to Gilles-Philippe Leblanc for this patch
2012-02-20 15:01:47 +13:00
Rajesh Taneja 21144ea8c6 MDL-29254 blog: added check in upgrade for summary and content to be null fields 2012-02-20 09:35:58 +08:00
Rajesh Taneja 7e19c5e1f5 MDL-25432 backup: Catching exception for orphan course modules and it's block (if any), and logging them, no exception will be thrown for this now. 2012-02-20 09:29:26 +08:00
Eloy Lafuente (stronk7) 47ac7c3668 MDL-31532 restore: avoid null course->hiddensections problems. Credit goes to Petri Asikainen. Thanks! 2012-02-20 01:36:23 +01:00
AMOS bot c05b26f9c9 Automatically generated installer lang files 2012-02-20 00:31:19 +00:00
Sam Hemelryk a55688b394 Merge branch 'MDL-31556_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-02-20 12:39:02 +13:00
Sam Hemelryk bc392be2a8 Merge branch 'MDL-31647-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-02-20 11:54:30 +13:00
Sam Hemelryk 11a3fcb1be Merge branch 'MDL-30495-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-02-20 11:50:39 +13:00
Sam Hemelryk 8a40b2d894 MDL-30521 upgrade: Corrected version bump for uniquehash field upgrade 2012-02-20 10:56:56 +13:00
Sam Hemelryk 3fe335c455 Merge branch 'wip-mdl-30521-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-02-20 10:29:46 +13:00
AMOS bot 1acda0143c Automatically generated installer lang files 2012-02-18 00:31:28 +00:00
Charles Fulton 3bb16960af MDL-31664 fix invalid boolean to string comparison 2012-02-17 13:19:25 -08:00
sam marshall ac98193cf3 MDL-31647 Glossary: Links to glossary entries from glossary main page should not be popups 2012-02-17 10:37:24 +00:00
Jerome Mouneyrac e90d5dcfb2 MDL-30249 Display warning when downloading/uploading a file 2012-02-17 17:05:27 +08:00
Dan Marsden bb8d8346ad SCORM MDL-31381 decrease max width of TOC to prevent SCORM content from being hidden, remove padding from pop-up and improve maxheight calculation 2012-02-17 17:14:53 +13:00
Sam Hemelryk 5ac02b6e21 MDL-25299 mnet: Fixed validation when no public key is provided 2012-02-17 16:47:37 +13:00
Gerard (Gerry) Caulfield 517609f295 MDL-31388 Fixing typo in enrol_ldap 2012-02-17 11:45:47 +08:00
Ankit Agarwal 2b6f171390 MDL-30965 SCORM Removing unused variable ->head 2012-02-17 09:14:42 +05:30
Marina Glancy 18a44d8a77 MDL-31627: Arialist theme do not resize content when there are no blocks 2012-02-17 11:01:14 +08:00
Marina Glancy cffba6db62 MDL-30780: fixing the disappearance of right part of the very wide rubric 2012-02-17 11:01:07 +08:00
Dan Marsden dc71212c3c MDL-31652 SCORM - hide updatefreq setting and remove it if not required. 2012-02-17 15:32:13 +13:00
Dan Marsden 731882b52d SCORM MDL-31397 - add slashes to js string 2012-02-17 15:24:08 +13:00
Sam Hemelryk 644262726c MDL-30830 dock: Added the title using accesshide for screen readers 2012-02-17 14:52:32 +13:00
Eloy Lafuente (stronk7) ad5202771a weekly release 2.2.1+ 2012-02-17 01:48:09 +01:00
Eloy Lafuente (stronk7) cad211198a Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-02-17 01:43:38 +01:00
AMOS bot 1d2b681ec0 Automatically generated installer lang files 2012-02-17 00:31:13 +00:00
Joseph Rezeau 6404d22954 MDL-31556 Lesson Module: fixed missing 'lesson closes' event in calendar 2012-02-16 16:00:31 +08:00
Sam Hemelryk 124e846e83 Merge branch '22_MDL-30935_lti_change_instructor_role_to_teacher' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-16 15:40:38 +13:00
Sam Hemelryk 671fc51e00 Revert "MDL-30935_in_lti_change_role_from_instructor_to_teacher"
This reverts commit 76fe39b8d8.
2012-02-16 15:40:34 +13:00
Gerard (Gerry) Caulfield 4821f14caa MDL-30935_in_lti_change_role_from_instructor_to_teacher 2012-02-16 10:25:09 +08:00
Jerome Mouneyrac 4b9f199c65 MDL-30495 HTML5 apps cannot call Webservices functions if a HTTP resource is retrieved from the Moodle installation 2012-02-15 11:36:38 +08:00
Sam Hemelryk 7a419e5789 MDL-30888 course-search: Fixed typo 2012-02-15 16:28:55 +13:00
Sam Hemelryk 646704c8d0 Merge branch 'wip-mdl-30388-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-02-15 16:23:33 +13:00
Rajesh Taneja 1ff9608513 MDL-30388 Blocks: navigation block is visible on block search page 2012-02-15 10:19:58 +08:00
Rajesh Taneja 943056a9e5 MDL-30388 Blocks: Search view for block instances fixed, with proper page url and pagination 2012-02-15 10:19:47 +08:00
Andrew Robert Nicols 9e6edb0ee6 [MDL-31386] Correctly order answers in a lesson backup 2012-02-15 03:15:26 +01:00
Michael Aherne b81c860628 MDL-31495 Performance improvement in question engine upgrade SQL 2012-02-15 09:37:51 +08:00
AMOS bot 5b45d2d0fa Automatically generated installer lang files 2012-02-15 00:31:16 +00:00
Sam Hemelryk 269754e487 MDL-30709 mod_assignment: Renamed callback to mod_assignment_get_file_info 2012-02-15 11:27:01 +13:00
Charles Fulton 8cd38f2535 MDL-29402 QandA forum questions should be emailed 2012-02-14 05:59:40 -08:00
Eloy Lafuente (stronk7) 32d4d0d1ce Merge branch 'MDL-30126-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-02-14 13:12:44 +01:00
Davo Smith 4ab3a01586 MDL-31527 XMLDB Editor - make sure default tables are created with correct plugin prefix 2012-02-14 12:12:22 +01:00
Iñaki Arenaza 9c867cfef8 MDL-29667 Plugins overview shows incorrect availability for auth & enrol plugins
We store the enabled plugins as array values but later look them up as array
keys. Just flip the array when we build it.
2012-02-14 15:49:01 +08:00
Aparup Banerjee 7fda50ccee Merge branch 'wip-mdl-28101-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-02-14 15:39:04 +08:00
Rajesh Taneja 83e83887e3 MDL-30521 blog: Updated uniquehash field preceision to 255 in post table 2012-02-14 14:17:50 +08:00
Davo Smith 0c8c2969d0 MDL-31541 Repositories - make sure all repository instances have unique 'sortorder' values when retrieved 2012-02-14 13:31:59 +08:00
Sam Hemelryk ebeacb73c9 Merge branch 'MDL-30911_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2012-02-14 17:41:45 +13:00
Sam Hemelryk 47e6717105 MDL-30709 mod_assignment Fixed phpdocs for assignment_get_file_info 2012-02-14 17:15:05 +13:00
Sam Hemelryk 43c6a29cc6 Merge branch 'wip-MDL-30709-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-02-14 17:14:22 +13:00
Jerome Mouneyrac 9c228a616a MDL-30126 rest client should be updated fo json support 2012-02-14 12:03:06 +08:00
Sam Hemelryk 01348282b4 Merge branch 'wip-MDL-30771-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-02-14 17:00:25 +13:00
Aparup Banerjee bef1428345 Merge branch 'MDL-29471-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-02-14 11:43:03 +08:00
Sam Hemelryk 4e01042343 Merge branch 'MDL-30688-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-02-14 15:53:46 +13:00
Sam Hemelryk 8348cea56a Merge branch 'MDL-31604-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-02-14 15:48:09 +13:00
Sam Hemelryk 5129af8051 Merge branch '22_MDL-26807_remove_withselectedusers_strings_and_references' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-14 15:32:00 +13:00
Sam Hemelryk a6f81e7fd8 Merge branch '22_MDL-27285_fixing_grammar_on_wiki_links_page' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-14 15:27:57 +13:00
Sam Hemelryk af61dca6d0 Merge branch '22_MDL-27654_add_space_to_somefieldrequired_string' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-14 15:21:07 +13:00
Sam Hemelryk 03134095f9 Merge branch '22_MDL-30935_lti_change_instructor_role_to_teacher' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-14 15:12:22 +13:00
Sam Hemelryk 908de866bd Merge branch '22_MDL-31107_fixing_below_typos' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-14 15:08:13 +13:00
Mary Evans 959ea1241a MDL-31345_master theme_afterburner: adds horizontal scroll bar to pagelayout-report 2012-02-14 01:48:23 +00:00
Sam Hemelryk 01080b468f Merge branch 'MDL-28283-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-02-14 13:59:04 +13:00
Sam Hemelryk 66bd7ae432 Merge branch 'MDL-30815-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-02-14 13:44:52 +13:00
Andrew Robert Nicols 08b213beea MDL-31515 Allow for subsequent files to overwrite old files in database activity records 2012-02-14 10:57:06 +13:00
Sam Hemelryk 2787eeb9b3 Merge branch 'MDL-29080_export_hidden2_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-02-14 10:47:30 +13:00
Jerome Mouneyrac 6049f806f9 MDL-30688 REST simpleserver does not accept the moodlewsrestformat parameter 2012-02-13 16:43:33 +08:00
Sam Hemelryk bc967db3d4 Merge branch '22_MDL-29153_fix_typo_in_resource' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-13 18:04:06 +13:00
Sam Hemelryk 877d9f8430 Merge branch '22_MDL-30723_fixing_several_english_typos' of git://github.com/gerrywastaken/moodle into MOODLE_22_STABLE 2012-02-13 18:00:23 +13:00
Sam Hemelryk a87151d552 Merge branch 'm22_MDL-31085' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-02-13 17:52:36 +13:00
Andrew Robert Nicols 8c51b948d6 MDL-31502 Check whether a category has subcategories or courses within it before using those variables 2012-02-13 17:48:51 +13:00
Sam Hemelryk f7562f72fb Merge branch 'wip-MDL-25185-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-02-13 17:34:39 +13:00
Sam Hemelryk 38d0571f23 Merge branch 'wip-MDL-31396-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-02-13 17:17:29 +13:00
Sam Hemelryk ff60281e4f Merge branch 'wip-MDL-31463-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2012-02-13 17:02:32 +13:00
Anita Viglinoe 04773f2508 MDL-28283-master Completion Future dates can now be set as completion criteria 2012-02-13 09:02:49 +05:30
Rossiani Wijaya 254a642146 MDL-30911: mod_lesson: fix sub-heading level to be lower than lesson title. This issue is an improvement of accessibility compliance 2012-02-13 11:29:39 +08:00
Ankit Agarwal af7a1f2999 MDL-30815 Choice Labels are now explicitly tied with input elements 2012-02-13 08:44:12 +05:30
Eloy Lafuente 12ba874956 MDL-31604 Fix capabilities displayed without spaces causing text going out of the screen 2012-02-13 10:49:48 +08:00
Sam Hemelryk 8b927cfb8b Merge branch 'wip-mdl-31576-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-02-13 15:30:13 +13:00
Rajesh Taneja b71bd1e6ec MDL-28101 wiki2.0: escape bold and italics for NWIKI formatting 2012-02-13 10:27:40 +08:00
Sam Hemelryk 5eb8ad6129 Merge branch 'MDL-31554_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-02-13 15:26:21 +13:00
Sam Hemelryk 8342143862 Merge branch 'MDL-25883-22' of https://github.com/mackensen/moodle into MOODLE_22_STABLE 2012-02-13 14:36:14 +13:00
Eloy Lafuente (stronk7) ea75a579d1 weekly release 2.2.1+ 2012-02-13 01:18:28 +01:00
Eloy Lafuente (stronk7) a72cf89d5e Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-02-13 01:14:51 +01:00
Eloy Lafuente (stronk7) 6ea4bd74a4 Revert "MDL-31345 theme_afterburner fixes pagelayout-report overflow"
This reverts commit 018f49465c.
2012-02-12 23:23:43 +01:00
Gerard (Gerry) Caulfield 23071bd4ab MDL-31107 Fixing instaces of below where it is written as bellow (two L's) 2012-02-10 15:05:16 +08:00
Gerard (Gerry) Caulfield ddb931d3ab MDL-29153 Fixing typo, "Bellow" should be "Below" 2012-02-10 14:37:43 +08:00
Marina Glancy e8d5c5a8ca MDL-30771: Enable students to view rubric definition prior to submission
Also allow advanced grading plugin to extend course module navigation, it is not necessary only definition previewing
Added option to rubric whether to show it to the students before submission and option to view description
2012-02-10 13:05:05 +08:00
Gerard (Gerry) Caulfield 76fe39b8d8 MDL-30935_in_lti_change_role_from_instructor_to_teacher 2012-02-10 10:24:04 +08:00
Gerard (Gerry) Caulfield 9f77a5bcfe MDL-27285 Updating string grammar on the wiki module's links page 2012-02-10 07:56:25 +08:00
Gerard (Gerry) Caulfield e336dd6438 MDL-26807 Updating the withselectedusers_help string 2012-02-10 02:17:35 +08:00
Gerard (Gerry) Caulfield f8b8874dcf MDL-30723 Fixing English typo(s) 2012-02-10 01:49:21 +08:00
Gerard (Gerry) Caulfield 742cf42171 MDL-27654 Insert a space into the somefieldrequired string 2012-02-10 01:26:22 +08:00
Rajesh Taneja 2080cbc2eb MDL-31576 core: Duplicate message definition removed from get_core_subsystem 2012-02-09 17:13:11 +08:00
Marina Glancy d8b6bb542c MDL-30709: Fixed bug with inserting files from Recent files repository
Two parts of changes: in assignment module function assignment_get_file_info was missing
and when populating the list of recent files the function get_file_info was not called, which caused populating the list of recent files with the files that could not later be inserted
2012-02-09 13:58:11 +08:00
Adrian Greeve 6318805a04 MDL-31463 - navigation - added a context check in the navigation for fullname permission. 2012-02-09 09:57:17 +08:00
Aparup Banerjee 3509aa0275 Merge branch 'wip-MDL-31417-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-02-09 09:45:08 +08:00
Andrew Davis feba87f45e MDL-29080 grade: simplified bug fix to prevent users without the required capabilities from being able to export hidden grade items 2012-02-09 08:35:58 +07:00
Adrian Greeve 4ec0b1caec MDL-25185 - data - Allowing data from the database to be exported according to group roles. 2012-02-09 09:29:45 +08:00
AMOS bot f26a347c25 Automatically generated installer lang files 2012-02-09 00:31:11 +00:00
Tim Hunt 025a0e65cd MDL-31554 quiz view.php notices when guest / no enroled. 2012-02-08 15:45:22 +00:00
Eloy Lafuente (stronk7) 13c25d0f87 MDL-27891 tag logs: minibump version 2012-02-08 11:44:53 +01:00
Eloy Lafuente (stronk7) 948a4d8c94 Merge branch 'MDL-27891-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-02-08 11:44:19 +01:00
Eloy Lafuente (stronk7) 2ffd822e63 Merge branch 'MDL-31345_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-02-08 11:17:26 +01:00
Ruslan Kabalin 0c657454d6 MDL-31316 Fix block controls when default home is My Moodle 2012-02-08 11:08:22 +01:00
Mary Evans 018f49465c MDL-31345 theme_afterburner fixes pagelayout-report overflow 2012-02-08 03:59:42 +00:00
Aparup Banerjee e5f77fdae4 Merge branch 'MDL-31407_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-02-08 11:27:39 +08:00
Eloy Lafuente (stronk7) 47475df527 Merge branch 'MDL-29892_overview_hidden_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-02-08 03:38:44 +01:00
Ankit Agarwal eb4d0c0d51 MDL-27891 Tags Flagging tags is now logged 2012-02-08 07:57:36 +05:30
Aparup Banerjee 4bd74c8ddc Merge branch 'm22_MDL-31461' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-02-08 10:12:26 +08:00
Aparup Banerjee 822790437e Merge branch 'MDL-31482-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-02-08 09:59:04 +08:00
Eloy Lafuente (stronk7) 76456cf5f2 Merge branch 'MDL-30722_forum_unsubscribe_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-02-08 02:37:46 +01:00
Eloy Lafuente (stronk7) 6fe3c3907b Merge branch 'wip-MDL-30540-stable22' of git://github.com/phalacee/moodle into MOODLE_22_STABLE 2012-02-08 01:18:09 +01:00
Eloy Lafuente (stronk7) 16f5ffacd4 Merge branch 'MDL-26384-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-02-08 00:53:15 +01:00
Eloy Lafuente (stronk7) c2db2793d2 Merge branch 'MDL-27360-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-02-07 23:49:19 +01:00
Eloy Lafuente (stronk7) 357274c6b9 Merge branch 'm22_MDL-31374' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-02-07 22:41:39 +01:00
sam marshall e455406b69 MDL-31482 Lib: IE8/IE7 (even with stupid user agent) should not be 'legacy' device type 2012-02-07 17:42:07 +00:00
Aparup Banerjee 3e299e464d Merge branch 'MDL-31469_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-02-07 15:12:26 +08:00
Dan Marsden 5796c9223c MDL-31985 - fix quotes in filter 2012-02-07 09:51:56 +13:00
Marina Glancy cdff347baa MDL-31417: updated list of world currencies
Some countries do not exist any more, some currencies do not exist. Some countries (and currencies) started to exist recently. Some currency codes are changed (mistype or result of denomination).

Also I tried to keep the moodle formation of the name of the currencies. The first word is not the country name but the 'belonging-to-country', i.e. not 'Sweden Krona' but 'Swedish Krona'. For some countries it was not so easy to find the correct spelling.

And finally there were some mistakes in the list, like 'Schilling' instead of 'Shilling', 'Riyal' instead of 'Rial', etc. I used currencies spelling from ISO.
2012-02-06 09:58:20 +08:00
Adrian Greeve 688c43ac3e wip-MDL-31396 - data - Exporting a preset as a zip code changed to remove errors. 2012-02-06 09:49:33 +08:00
Ankit Agarwal 6e1cf8fde8 MDL-26384 Tags Fixed redirect issue when editing is toggled 2012-02-03 14:54:04 +05:30
Jason Fowler f2301c3258 MDL-30540 - BLOG - Fixing context problems for single blog entries - Thanks Aparup and Sam for the help 2012-02-03 10:50:42 +08:00
Andrew Davis 2ad0278bd2 MDL-29892 grade: added a check to prevent hidden courses appearing on student overview reports 2012-02-03 08:56:10 +07:00
Dan Marsden 733196d843 MDL-31461 Plagiarism - adjust api functions to allow better support for renderers 2012-02-03 11:38:33 +13:00
Petr Skoda 0007843de0 MDL-29684 improve enrol_meta plugin
List of changes:
* configurable unenrol action
* new setting for synchronisation of all enrolled users or users with at least one role
* cron period increased to 1 hour in order to lower server load, courses should not get out of sync often
* CLI sync script for debugging or manual sync
* phpdocs fixes
* when plugin is disabled all roles are removed, enrollments are kept
* uninstall script
* other bugfixing
2012-02-03 11:29:47 +13:00
Tim Hunt e8e2f4f62c MDL-31469 formslib: fix invalid for="" attributes on optional dates 2012-02-02 18:16:07 +00:00
Anthony Forth 648cf3397d MDL-31445 formslib: add a nice id and class to the wrapper div for CSS 2012-02-02 18:15:31 +00:00
Tim Hunt e1ded0ff55 MDL-31407 quiz: review all uses of global $USER 2012-02-02 18:13:34 +00:00
Kyle Temkin c31783bb34 MDL-31407 quiz: finish_attempt method should not rely on $USER 2012-02-02 18:13:30 +00:00
Eloy Lafuente (stronk7) 4d2f89f85b weekly release 2.2.1+ 2012-02-02 12:13:28 +01:00
Eloy Lafuente (stronk7) 18a727e6fd Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-02-02 12:08:48 +01:00
Jerome Mouneyrac 28a3a568aa MDL-27360 Web service tokens are displayed for deleted users 2012-02-02 16:23:56 +08:00
Aparup Banerjee 6432e1b4e1 Merge branch 'm22_MDL-31360' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-02-02 11:13:22 +08:00
Dan Marsden 52453939f2 MDL-31360 use extra param in get_in_or_equal - one less line of code... 2012-02-01 23:09:49 +13:00
Eloy Lafuente (stronk7) be15c303e0 Merge branch 'wip-MDL-31160-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-02-01 00:54:14 +01:00
Eloy Lafuente (stronk7) acef9e8a7f Merge branch 'wip-MDL-31197-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-02-01 00:50:38 +01:00
Eloy Lafuente (stronk7) 6badc27a66 Merge branch 'm22_MDL-31039' of git://github.com/danmarsden/moodle into MOODLE_22_STABLE 2012-02-01 00:41:47 +01:00
Andrew Robert Nicols c904d241d5 MDL-31000 Respect sortorder of repositories when displaying the filepicker 2012-02-01 00:33:54 +01:00
Glenn Ansley 7da14ca7c5 MDL-31448 Replaced incorrect PHP comment 2012-01-31 23:58:06 +01:00
Eloy Lafuente (stronk7) 14b273b3c8 MDL-30714 theme_afterburner: better, output the information, LOL 2012-01-31 23:36:35 +01:00
Mary Evans b1591e5081 MDL-30714 theme_afterburner: logo link to home page 2012-01-31 23:19:51 +01:00
Eloy Lafuente (stronk7) f22c2e015a Merge branch 'MDL-31015-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-01-31 23:02:56 +01:00
Eloy Lafuente (stronk7) d4184875ce Merge branch 'MDL-30854_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-31 19:38:48 +01:00
Eloy Lafuente (stronk7) 26be1bf17a Merge branch 'MDL-30484_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-31 17:16:51 +01:00
Eloy Lafuente (stronk7) 5a1e6f2a6c Merge branch 'MDL-31314_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-31 17:06:14 +01:00
Aparup Banerjee cfbde86579 Merge branch 'MDL-30828_feedback_sort_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-01-31 16:51:08 +08:00
Aparup Banerjee 5684c6ab99 Merge branch 'MDL-30707_forum_log_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-01-31 16:43:46 +08:00
Aparup Banerjee a5f1f8c0e2 Merge branch 'MDL-29097_mod_update_create_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-01-31 14:36:15 +08:00
Dan Marsden 7759183593 MDL-28522 Choice : View reports now correctly shows unanswered column - thanks to Marcus Boon for the patch 2012-01-31 12:23:35 +08:00
Aparup Banerjee 3d257cbf08 Merge branch 'MDL-31426_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-01-31 11:52:24 +08:00
Aparup Banerjee 611d3bd71d Merge branch 'MDL-31428_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-01-31 11:15:55 +08:00
AMOS bot fc9ca7eca3 Automatically generated installer lang files 2012-01-31 00:31:14 +00:00
Eloy Lafuente (stronk7) 94e62d8d02 MDL-31428 forum: prevent some warnings with debug enabled 2012-01-31 00:25:42 +01:00
Eloy Lafuente (stronk7) e163fbc943 MDL-31426 forum: don't show/allow any subscription to not enrolled users 2012-01-30 23:22:05 +01:00
Tim Hunt 699f075ad2 MDL-30484 question engine: don't lose response files when regrading.
The problem was mostly that, in the past, we did not worry if
question_attempt_step.id changed during regrade (because we deleted the
old step row and inserted a new one). However, now that steps can have
associated files, we can't be that slack, becuase the step id is used as
the file itemid.

So, now, we have to update the existing rows during a regrade. We do
this by having the question engine tell the question_engine_unit_of_work
that the step has first been deleted, and then added back. Then we make
the unit-of-work spot that delete + add = update.

This also means that during regrading, we have to pass around some extra
ids so that new steps know the id of the step they are replacing.

Naturally, this requires some quite trickly logic, so I finally got
around to writing unit tests for question_engine_unit_of_work, which is
a good thing.

Along the way I also got around to renaming
question_attempt->set_number_in_usage, which got missed out when
everthing else was renamed to slot ages ago.

Finally, while working on this code, I noticed and fixed some PHPdoc
comments.
2012-01-30 17:05:56 +00:00
Tim Hunt a3b0c9462f MDL-31314 gradebook restore: fix category.depth on restore.
Without this, restoring backups made with the OU's custom 'restore from
1.9' feature, and possibly other people's custom converstion code, does
not work properly.

Also, fix poor recordset code.
2012-01-30 12:31:30 +00:00
Tim Hunt d4d8a51fae MDL-30854 quiz/question editing: fix create calc question & add on page.
This was one of those innocent seeming issues where, once you start
digging, you find a mess. In this case, the code that is now in
question_wizard_form::add_hidden_fields used to exist in four different
places, in four inconsistent versions. This is now all nicely
re-factored, and that solves the problem.

Along the way, I found and fixed some wrong string references in
qtype_random, and stripped out some unnecessary &s in function
declarations.
2012-01-30 12:31:02 +00:00
Aparup Banerjee db78068443 Merge branch 'MDL-26260_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-30 16:26:47 +08:00
Aparup Banerjee c8a11c7410 Merge branch 'MDL-31392_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-30 14:25:35 +08:00
AMOS bot 53cd3d4278 Automatically generated installer lang files 2012-01-30 00:31:21 +00:00
sam marshall 8c8a31c21d MDL-31015 File/URL resource 'Open' and 'Force download' options should work consistently 2012-01-27 16:02:50 +00:00
Jerome Mouneyrac 049c70ea9d MDL-29471 php warning when adding function to a new web service 2012-01-27 16:11:47 +08:00
David Mudrak 17b629d458 MDL-31317 original_site_identifier_hash falls back to null during the backup conversion
Even if the site identifier is not defined in the source 1.9 backup then the
converted 2.0 version should still contain the element to prevent PHP
notices on direct assignment.
2012-01-27 08:50:02 +01:00
Jerome Mouneyrac 15dd454840 MDL-30878 core_user_update_users user password is reset if not specified 2012-01-27 15:26:10 +08:00
Fábio Souto 1dee84c2be Updated bugfix according to Jerome suggestions
password check is done at lib.php instead of externallib.php

Conflicts:

	user/lib.php
2012-01-27 15:26:01 +08:00
Dan Marsden bfeca9d6b9 SCORM AICC MDL-31039 update external AICC url correctly - thanks to Albert Rhemrev for report/fix 2012-01-27 19:42:30 +13:00
Dan Marsden 68e719927e MDL-31360 Don't use get_in_or_equal if array is empty, tidy up structure of $extracaps array 2012-01-27 19:40:38 +13:00
Eloy Lafuente (stronk7) d4b3034bb4 weekly release 2.2.1+ 2012-01-27 02:26:26 +01:00
Eloy Lafuente (stronk7) 61622d9709 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-01-27 02:20:16 +01:00
AMOS bot d692e80d6b Automatically generated installer lang files 2012-01-27 00:31:16 +00:00
Tim Hunt e2a4d8f9d0 MDL-31392 qeupgradehelper partial upgrade support broken since 2.2 2012-01-26 16:32:10 +00:00
Sam Hemelryk 887ec885b1 Merge branch 'w04_MDL-30509_m22_slowcohort' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-25 10:29:22 +08:00
Eloy Lafuente (stronk7) b292cea475 Merge branch 'MDL-31122-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-01-25 01:52:36 +01:00
Eloy Lafuente (stronk7) fe3130a07d Merge branch 'MDL-29896-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-01-25 01:17:06 +01:00
Eloy Lafuente (stronk7) 264189da87 Merge branch 'MDL-31113_multiple_files_file_manager_22' of https://github.com/davosmith/moodle into MOODLE_22_STABLE 2012-01-25 01:06:56 +01:00
Eloy Lafuente (stronk7) 9e3824a63d Merge branch 'w04_MDL-31238_m22_php54' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-24 23:55:36 +01:00
Andrew Robert Nicols 2af7ab97d6 MDL-31245 Add missing 'icon' class to highlight button in topics format 2012-01-24 18:47:56 +01:00
Aparup Banerjee c327996e6b Merge branch 'wip-MDL-31224-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2012-01-24 23:01:26 +08:00
Eloy Lafuente (stronk7) ea5be5a976 MDL-31189 whitespace fixes 2012-01-24 13:21:00 +01:00
Eloy Lafuente (stronk7) ba09a2619e Merge branch 'w04_MDL-31183_m22_gloscounts' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-24 12:25:55 +01:00
M Kassaei 5d2dce09b3 MDL-31306 question preview: disable 'Fill correct' for qtypes that can't 2012-01-24 13:27:34 +08:00
Sam Hemelryk d0c82a5609 Merge branch 'MDL-31205_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-24 11:28:38 +08:00
Sam Hemelryk 11942210a2 Merge branch 'MDL-31189_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-01-24 11:07:00 +08:00
Sam Hemelryk a67a3a8eec Merge branch 'MDL-31231_M22' of git://github.com/lazydaisy/moodle into MOODLE_22_STABLE 2012-01-24 11:03:02 +08:00
Eloy Lafuente (stronk7) ac2a99b1b8 Merge branch 'w04_MDL-31176_m22_groupcontext' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-24 01:30:02 +01:00
Aparup Banerjee b7c8fb6610 Merge branch 'wip-MDL-28352-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-01-24 07:12:31 +08:00
Eloy Lafuente (stronk7) 2581c3cb70 Merge branch 'MDL-30033_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-24 00:09:20 +01:00
Eloy Lafuente (stronk7) b19a440a04 Merge branch 'MDL-31065_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-24 00:07:06 +01:00
Aparup Banerjee 787c2eefd3 Merge branch 'w04_MDL-31184_m22_glosreset' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-24 06:58:33 +08:00
Mary Evans 9440efcd97 MDL-31189_M22 theme_sky_high: fixed footer so page, perfomance and validators can be seen if enabled 2012-01-23 21:41:39 +00:00
Petr Skoda 3b1e1d8964 MDL-31081 limit query to one course in forum_get_subscribed_forums()
This improves performance on the forum index page. Credit goes to Mark Nielsen.
2012-01-23 21:34:05 +01:00
Mary Evans ec5bfaf5e0 MDL-31231 fixes docked navigation menu in theme_afterburner 2012-01-23 12:45:23 +00:00
Petr Skoda 58ac441cae MDL-31172 fix variable name typo in backup file logger 2012-01-23 16:10:10 +08:00
Petr Skoda ddb621b78d MDL-31173 fix variable name typo when throwing invalid $rule param exception in restore decode processor 2012-01-23 16:07:06 +08:00
Sam Hemelryk 6f421476a9 Merge branch 'w04_MDL-31177_m22_odsexport' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-23 15:37:48 +08:00
Sam Hemelryk 3c6d27b44b Merge branch 'w04_MDL-31178_m22_enrolledws' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-23 15:15:52 +08:00
Sam Hemelryk f536a092d4 Merge branch 'w04_MDL-31182_m22_messprefs' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-23 14:45:50 +08:00
Sam Hemelryk d5d5ae432c Merge branch 'w04_MDL-31186_m22_extprofiles' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-23 14:31:48 +08:00
Petr Skoda 5125c0e332 MDL-31202 do not try sending emails to invalid addresses
The use of mtrace() in email_to_user() is most probably incorrect, I am going to use it only in CLI scripts (which includes cron). This should not be considered a security issue because we should be already validating emails when accepting them from untrusted users.
2012-01-23 14:24:43 +08:00
Mary Evans a141bd9ca2 MDL-31269 theme_magazine: fixes login pagelayout in theme_magazine 2012-01-23 13:25:49 +08:00
Mary Evans 8772dd9202 MDL-31324 fixes custom css settings in theme_afterburner 2012-01-23 13:13:51 +08:00
Andrew Davis b0b6a8dac6 MDL-29097 course: refactored to avoid having two seperate calls to events_trigger() 2012-01-23 11:56:00 +07:00
Andrew Davis 35888eee0d MDL-30722 mod_forum: prevented users being auto-logged in as guest when they access /mod/forum/unsubscribeall.php 2012-01-23 11:23:34 +07:00
Andrew Davis ec0118dd5d MDL-30707 mod_forum: fixed a add_to_log() call that was causing invalid URLs to be added to the log 2012-01-23 11:05:45 +07:00
Sam Hemelryk cd5189e266 Merge branch 'MDL-31077-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2012-01-23 11:48:25 +08:00
Sam Hemelryk c95efa3936 Merge branch 'MDL-31329_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-01-23 11:25:42 +08:00
Andrew Robert Nicols abb58a56f4 MDL-31013 Add iconsmall class to 'Export to portfolio' icon 2012-01-23 11:08:51 +08:00
Eloy Lafuente (stronk7) 7ce803eeae Merge branch 'wip-MDL-31179-MOODLE_22_STABLE' of github.com:marinaglancy/moodle into MOODLE_22_STABLE 2012-01-23 01:19:45 +01:00
Petr Skoda 196eedebb1 MDL-31180 fix coding error in fake_recordset iterator 2012-01-23 01:12:32 +01:00
Eloy Lafuente (stronk7) ed6af81b50 Merge branch 'w04_MDL-31181_m22_fitlertestcfg' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-23 01:04:17 +01:00
Eloy Lafuente (stronk7) 9e2f748669 Merge branch 'MDL-31058_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-23 00:56:24 +01:00
Eloy Lafuente (stronk7) 6daa6285cc Merge branch 'w04_MDL-31185_m22_postscfg' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-23 00:28:28 +01:00
Eloy Lafuente (stronk7) 984616805e MDL-31329 timezones: updated to 2011n 2012-01-22 21:32:07 +01:00
Petr Skoda ec6c7d98f9 MDL-31176 add missing global $DB when looking for group related context in calendar 2012-01-21 19:57:33 +01:00
Petr Skoda 918bcdcfab MDL-31177 fix notices when exporting logs to ods 2012-01-21 19:51:58 +01:00
Petr Skoda d0eb3fcf88 MDL-31178 fix broken core_enrol_external::get_enrolled_users() 2012-01-21 17:59:14 +01:00
Petr Skoda ea5214d534 MDL-31181 fix missing global $CFG that was breaking unit test teardown 2012-01-21 17:08:43 +01:00
Petr Skoda c73dbf667d MDL-31182 fix fatal error when problem detected in finding messaging defaults 2012-01-21 16:59:47 +01:00
Petr Skoda 3397a096ba MDL-31183 fix non-functional glossary_count_unrated_entries() 2012-01-21 16:47:28 +01:00
Petr Skoda 47649d4328 MDL-31184 fix multiple problems when reseting individual glossary types 2012-01-21 16:31:28 +01:00
Petr Skoda 3370262bae MDL-31185 fix missing CFG in forum_get_posts_by_user() 2012-01-21 16:17:33 +01:00
Petr Skoda 06f7eb2a36 MDL-31186 fix wrong context preloading sql 2012-01-21 16:09:01 +01:00
Petr Skoda 13a1eb3c10 MDL-30509 backport perf improvement in role cleanup in cohort sync
This patch simplifies the role cleanup sql, it is not necessary to look for roles without enrolment instance because all roles are automatically unassigned when deleting enrol instances.
2012-01-21 11:55:32 +01:00
Petr Skoda caa4912f70 MDL-31208 fix obsolete get_record_sql() parameter
Credit goes to Rajesh Taneja.
2012-01-21 11:36:52 +01:00
Petr Skoda 68d4c5bc1f MDL-31238 remove now unnecessary null to stdClass conversion for plugin settings 2012-01-21 11:17:18 +01:00
Petr Skoda 057d39bbc1 MDL-31238 always return object for plugin settings from get_config()
This prevents multiple creations of objects from NULL which is note a warnings in php54
2012-01-21 11:17:18 +01:00
Tim Hunt 2f7d4b4213 MDL-31058 qtype match 1.9 restore: fix restore of dodgy questions. 2012-01-20 18:06:53 +00:00
Tim Hunt 4eac963a41 MDL-31065 question stats: fix analysis of responses not matching a given answer
When shortanswer, numerical, calculated and calculatedsimple questions
did not have a '*' match-anything answer, then any student response that
did not match any of the teacher-given answers were classified as
'[No response]', which was not right.

This patch fixes that. Such responses are now classified as
[Did not match any answer].

While I was doing this, I noticed that the display of tolerance
intervals for numerical questions in the response analysis was horrible,
so I improved it.
2012-01-20 17:46:01 +00:00
Tim Hunt 2b18b65f9a MDL-31065 qtype shortanswer: refactor the unit tests to use a proper helper. 2012-01-20 17:45:56 +00:00
Tim Hunt 277106de6e MDL-31205 quiz 'secure' window: scrollbars missing.
Embarrassing type in the arguments to openpopup
2012-01-20 16:58:32 +00:00
Tim Hunt bc8e22c4cc MDL-30033 quiz overall feedback not show for attempts with a -ve grade
This can happen, for example, if a student does really badly on a CBM quiz.
2012-01-20 16:57:26 +00:00
Jason Ilicic 8f8db0fc5f MDL-26260 Fix quiz right-click prevention loophole. 2012-01-20 16:56:59 +00:00
sam marshall 125e250a85 MDL-29896 Navigation: Make links, files clickable in nav block 2012-01-20 10:33:05 +00:00
Andrew Davis 04d9550434 MDL-30828 mod_feedback: fixed sorting when viewing responses 2012-01-20 15:51:58 +07:00
Marina Glancy e58dbe0fe8 MDL-28352: Fixed bug in html_writer::select_time causing not autoselecting month 2012-01-20 16:27:39 +08:00
Sam Hemelryk 135de8d007 MDL-31197 navigation: Fixed issue withing require_login for courses that are hidden or unavailable 2012-01-20 12:51:48 +08:00
Sam Hemelryk ac41de6697 MDL-31224 block_navigation: Fixed display of icons for node with an action_link action 2012-01-20 11:19:20 +08:00
David Penner 5a479aa628 MDL-31160 block_navigation: Fixed incorrect thrid arg to substr. 2012-01-20 11:14:21 +08:00
Marina Glancy 288503b780 MDL-31179: added missing global 2012-01-20 10:33:23 +08:00
AMOS bot 5b01459102 Automatically generated installer lang files 2012-01-20 00:31:23 +00:00
Davo Smith 6d3c3b02a6 MDL-31113 filemanager element - refresh file list from server on load 2012-01-19 19:50:05 +00:00
sam marshall 54b1dc4950 MDL-31122 Navigation: Do not show week in navigation if it contains only labels 2012-01-19 14:46:34 +00:00
Eloy Lafuente (stronk7) 269c884874 weekly release 2.2.1+ 2012-01-19 13:33:36 +01:00
Eloy Lafuente (stronk7) 4a4c146e9f Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-01-19 13:28:42 +01:00
AMOS bot bd9cbc32f5 Automatically generated installer lang files 2012-01-19 00:31:22 +00:00
Andrew Robert Nicols e639d0cca8 MDL-31242 Prevent redefinition of MOODLE_INTERNAL when loading multiple YUI modules from Moodle 2012-01-18 15:40:36 +01:00
Tim Hunt e7a8905fc9 MDL-31157 quiz cron: another regression from MDL-30635 2012-01-18 10:27:06 +01:00
Eloy Lafuente (stronk7) 4416991914 MDL-31006 revert partially @ get_config()
The change from null to stdClass() in get_config() was leading to:

1) unit tests not passing.
2) non-equivalent evaluation in conditions (null evals false,
   stdClassi() evals true)
2012-01-18 02:11:53 +01:00
AMOS bot 11bb61041b Automatically generated installer lang files 2012-01-18 00:31:36 +00:00
Petr Skoda a1317d1b99 MDL-31006 some more PHP54 notices
PHP54 compatibility - PhpStorm IDE is the best tool for this kind of work!!
2012-01-18 01:17:09 +01:00
Petr Skoda 88e2bbae6d MDL-31006 fix various notices in PHP54
PHP54 compatibility
2012-01-18 01:04:45 +01:00
Eloy Lafuente (stronk7) 2aa4f06a88 Merge branch 'w03_MDL-31213_m22_attributesmess' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-17 12:37:28 +01:00
Petr Skoda fc0a71999e MDL-31213 fix incorrect modifications of quickforms attributes 2012-01-17 11:21:10 +01:00
Jerome Mouneyrac 4bc3f5a2da MDL-31077 REST server should return null if nothing fail and if the description function return null. 2012-01-17 15:50:37 +08:00
Eloy Lafuente (stronk7) 14a49d6d28 Merge branch 'w03_MDL-31053_m22_contextpreloading' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-17 02:26:25 +01:00
Eloy Lafuente (stronk7) b837c9e84d Merge branch 'w03_MDL-31127_m22_switchaccessinit' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-17 02:11:36 +01:00
Eloy Lafuente (stronk7) 8838b16705 Merge branch 'w03_MDL-31161_m22_reqpluginnotice' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-17 02:06:06 +01:00
Eloy Lafuente (stronk7) e4715ab74a Merge branch 'MDL-31080_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-17 02:01:49 +01:00
Eloy Lafuente (stronk7) 87be88ad2f Merge branch 'w03_MDL-31142_m22_slowiconv' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-17 01:39:07 +01:00
Eloy Lafuente (stronk7) 27dd6a7c57 Merge branch 'w03_MDL-31171_m22_blogattachment' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-17 01:32:17 +01:00
AMOS bot fba6d4c169 Automatically generated installer lang files 2012-01-17 00:31:12 +00:00
Eloy Lafuente (stronk7) 9690f66447 Merge branch 'w03_MDL-31170_m22_blogblocks' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-17 00:55:45 +01:00
Sam Hemelryk 1c1b04c994 Merge branch 'MDL-31095_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-16 16:59:27 +08:00
Sam Hemelryk 8a9edd6dba Merge branch 'MDL-31135_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-16 16:41:24 +08:00
Sam Hemelryk 282dcd3c03 Merge branch 'MDL-31102_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-16 16:27:38 +08:00
Petr Skoda 76917f764f MDL-31142 fix textlib::substr() performance, invalid length in iconv_substr; use mbstring by default 2012-01-16 09:17:36 +01:00
Sam Hemelryk d5c88f9333 Merge remote-tracking branch 'skodak/w03_MDL-27165_m22_confirmed' into MOODLE_22_STABLE 2012-01-16 16:17:09 +08:00
Aparup Banerjee 1a3b5c6cfc Merge branch 'MDL-31143_22' of https://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-16 15:29:30 +08:00
Sam Hemelryk 199ba4286b Merge remote-tracking branch 'skodak/w03_MDL-29102_m22_autogrouping' into MOODLE_22_STABLE 2012-01-16 15:11:07 +08:00
Sam Hemelryk f0987e98ad Merge remote-tracking branch 'skodak/w03_MDL-30891_m22_repository' into MOODLE_22_STABLE 2012-01-16 15:01:09 +08:00
Sam Hemelryk 735d8ce2ce Merge remote-tracking branch 'skodak/w03_MDL-30958_m22_yuissl' into MOODLE_22_STABLE 2012-01-16 14:56:06 +08:00
Aparup Banerjee 0a52c0d63d Merge branch 'w03_MDL-31166_m22_clipath' of https://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-16 14:52:48 +08:00
Sam Hemelryk ec9cd69156 MDL-31011 course: Fixed typo in comment 2012-01-16 14:49:28 +08:00
Sam Hemelryk 43812bf883 Merge remote-tracking branch 'skodak/w03_MDL-31011_m22_loglinks' into MOODLE_22_STABLE 2012-01-16 14:49:28 +08:00
Aparup Banerjee 7b3dae9096 Merge branch 'w03_MDL-21992_m22_customscripts' of https://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-16 14:48:16 +08:00
Sam Hemelryk 6f960202e7 Merge remote-tracking branch 'skodak/w03_MDL-31035_m22_identitynotice' into MOODLE_22_STABLE 2012-01-16 14:38:36 +08:00
Sam Hemelryk ff65ab25c2 Merge remote-tracking branch 'skodak/w03_MDL-31117_m22_grouptodo' into MOODLE_22_STABLE 2012-01-16 14:34:58 +08:00
Sam Hemelryk ac0d9c6411 Merge remote-tracking branch 'skodak/w03_MDL-31109_m22_maintenance' into MOODLE_22_STABLE 2012-01-16 14:33:01 +08:00
Sam Hemelryk 1480ead173 Merge branch 'wip-MDL-31060-MOODLE_22_STABLE' of git://github.com/marinaglancy/moodle into MOODLE_22_STABLE 2012-01-16 12:00:12 +08:00
Sam Hemelryk 2d48474f2a Merge branch 'MDL-31130_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-16 11:48:50 +08:00
Aparup Banerjee 94828bec35 Merge branch 'wip-MDL-31072-MOODLE_22_STABLE' of github.com:marinaglancy/moodle into MOODLE_22_STABLE 2012-01-16 11:39:43 +08:00
Andrew Robert Nicols 6a226839d0 MDL-31018 Improve consistency of horizontal alignment across grade reports 2012-01-16 11:14:46 +08:00
Sam Hemelryk 6bf567100a Merge branch 'MDL-31040-MOODLE_22_STABLE-3' of git://git.luns.net.uk/moodle into MOODLE_22_STABLE 2012-01-16 10:59:41 +08:00
Mayank Gupa 00e4cad952 MDL-30578, Updating CMILongIdentifer read comments at tracker 2012-01-16 10:16:50 +08:00
Mayank Gupa 754eb73b23 MDL-30578, Updating CMILongIdentifer to check for valid URI (RFC 3986 [6]) and URN syntax as per RFC 2141 [3] 2012-01-16 10:16:41 +08:00
Eloy Lafuente (stronk7) e09cfa968b Merge branch 'w03_MDL-31165_m22_innodbconv' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-16 02:06:57 +01:00
Eloy Lafuente (stronk7) 8b23f31909 Merge branch 'MDL-31157_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-16 01:43:20 +01:00
Charles Fulton 534f9fec11 MDL-25883 correct element name for wiki comments editor 2012-01-15 10:35:23 -08:00
Petr Skoda cee1176862 MDL-29102 fix notice when auto-creating groups in existing grouping 2012-01-15 19:27:08 +01:00
Petr Skoda 5274209ac1 MDL-31171 fix blog attachment serving in BLOG_USER_LEVEL 2012-01-15 19:11:41 +01:00
Petr Skoda 12f2dc577d MDL-31011 fix report links in logs 2012-01-15 19:02:34 +01:00
Petr Skoda 7e6f69b9af MDL-31035 fix showuseridentity notice before settings upgrade 2012-01-15 17:13:11 +01:00
Petr Skoda 7991c4c000 MDL-21992 fix custom scripts on https pages and CLI 2012-01-15 16:00:45 +01:00
Petr Skoda 7fdb5afc08 MDL-31161 fix notice when checking plugin requirements
Credit goes to Joseph Rézeau, thanks.
2012-01-15 15:35:20 +01:00
Petr Skoda a2c5642872 MDL-30958 do not use Yahoo CDN on https sites
Browsers do not like mixing of ssl and non-use content on one page. Unfortunately YAHOO does not provide the files over SSL yet - see http://yuilibrary.com/yui/docs/tutorials/faq/#does-yahoos-cdn-support-ssl
2012-01-15 15:25:01 +01:00
Petr Skoda fde76de588 MDL-31170 fix automatic blog blocks hiding/unhiding after blog level change 2012-01-15 13:40:37 +01:00
Petr Skoda 45d88e56cb MDL-31166 do not try to cleanup data root paths in CLI install script
PARAM_TYPE can not be used for full OS paths. Admins have to enter correct data there, if not they get directory creation error.
2012-01-15 11:05:30 +01:00
Petr Skoda 22d6b3da4f MDL-31165 fix InnoDB conversion query to use ENGINE parameter instead of legacy TYPE 2012-01-15 10:32:29 +01:00
AMOS bot f7ff057d0b Automatically generated installer lang files 2012-01-15 00:31:12 +00:00
Petr Skoda 04c0a7d205 MDL-31109 fix maintenance link value in get_string() 2012-01-15 00:56:29 +01:00
Petr Skoda f543eea9d6 MDL-31117 delete obsolete TODO
This TODO was added when we were still using moodledata folder for group images, it is not relevant any more because group images are in new file API which supports DB transaction rollbacks.
2012-01-15 00:44:04 +01:00
Petr Skoda a5a993abc2 MDL-31127 init USER->access when switching roles
Only admins were affected by this problem because has_capability() does not init USER->access for them.
2012-01-15 00:15:17 +01:00
Petr Skoda 38d341b0d7 MDL-27165 fix broken confirmed user filtering 2012-01-14 22:14:58 +01:00
Petr Skoda 1c83b13343 MDL-30891 fix invalid hardcoded capability check when disable legacy files repo 2012-01-14 21:58:33 +01:00
Petr Skoda 182f5cc6f6 MDL-31053 fix invalid context preloading in get_user_capability_course() 2012-01-14 21:36:32 +01:00
Tim Hunt d8b06a25b2 MDL-31157 quiz cron: timenow was not being initialised 2012-01-13 22:33:16 +00:00
Tim Hunt ef0376f4ef MDL-31095 quiz editing: only set quiz->grade to 0 if really necessary.
It is only necessary when there are (non-preview) attempts. However,
after making this change we have to ensure users cannot start attempts
when ->grade > 0 and ->sumgrades = 0.

Display ->grade on the order and paging tab of edit.php, so it is clear
what is going on when you are using that tab.

Finally, improve the error message a student gets if they try to start a
quiz with no questions.
2012-01-13 11:42:57 +00:00
Tim Hunt 090d2f90e8 MDL-31095 quiz: fix bug in quiz::has_questions. 2012-01-13 11:42:55 +00:00
Marina Glancy ee5cf900f8 MDL-31072: Fixed bug causing memory overflow for many-user systems:
when function find_users was supposed to be used for user validation but no userids were passed to it, it retrieved all users in the system.
This caused memory overflow on systems with too many users (like moodle.org).
Now we make sure that find_users is not called for validation if there is nobody to validate.

Also improved query inside find_users to make it work faster
2012-01-13 10:13:04 +08:00
Marina Glancy e5a9af0a70 MDL-31060: removed unnecessary fields from query which also caused problems in MSSQL 2012-01-13 10:12:55 +08:00
Tim Hunt b3c02fae54 MDL-31143 quiz reports: average grade of null causes php error. 2012-01-12 16:46:12 +00:00
Andrew Robert Nicols 87b8419f80 MDL-31040 Correct LTR language issue and inconsistency in display 2012-01-12 14:01:51 +00:00
Jonathon Fowler 0a2569e55c MDL-31130 question bank: toggling show all / 20 per page broken. 2012-01-12 12:44:44 +00:00
Tim Hunt a8f912faf1 MDL-31135 question instances report: 'All' option broken 2012-01-12 12:44:15 +00:00
Tim Hunt 16f75808c7 MDL-31102 question preview: fix HTML validation errors. 2012-01-12 11:33:00 +00:00
Tim Hunt a364362b95 MDL-31100 unit tests: don't mangle UTF-8 in failure messages. 2012-01-12 11:32:41 +00:00
Tim Hunt d16597b557 MDL-31080 quiz editing, must be able to see and delete missing questions 2012-01-12 11:32:22 +00:00
Eloy Lafuente (stronk7) f70f6e9ad1 weekly release 2.2.1+ 2012-01-12 11:33:19 +01:00
Eloy Lafuente (stronk7) cb5d7dbe14 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-01-12 11:25:01 +01:00
Tim Hunt 7ecee68542 MDL-26469 upgrade: cope with modules that do not set $module->cron. 2012-01-11 19:08:13 +01:00
Tim Hunt 18930123e3 MDL-26469 upgrade: module cron setting not updated. 2012-01-11 14:04:16 +00:00
Tim Hunt f40f4013f1 MDL-30635 quiz cron: fixup - enable in version.php & fn name quiz_statistics_cron 2012-01-11 14:02:17 +00:00
AMOS bot 86645a5e91 Automatically generated installer lang files 2012-01-11 00:31:22 +00:00
Eloy Lafuente (stronk7) e516577ec7 Merge branch 'MDL-31101_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-10 23:35:15 +01:00
Tim Hunt 8261570853 MDL-31101 format_string: Don't mangle < and > in strings like x < 1. 2012-01-10 14:54:40 +00:00
Rajesh Taneja 4cb258fbdf MDL-30452 Repositories: Changed default capability on repos - Thanks Michael
Signed-off-by: Rajesh Taneja <rajesh@moodle.org>
2012-01-10 11:11:34 +01:00
Sam Hemelryk 859624f26c Merge branch 'MDL-24394_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-10 14:30:22 +13:00
Sam Hemelryk 10c3c6d49c Merge branch 'MDL-31019_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-10 14:26:36 +13:00
Sam Hemelryk 7e9f29178e MDL-31000 Added comment about the importance of repository array keys 2012-01-10 12:27:38 +13:00
Sam Hemelryk 7984be4a13 Revert "MDL-31000 Respect sortorder of repositories when displaying the filepicker"
This reverts commit ce40b669cc.
2012-01-10 12:25:11 +13:00
Eloy Lafuente (stronk7) efabe26141 Merge branch 'wip-mdl-30608-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-01-09 22:19:11 +01:00
Darko Miletic a7e79bfe78 MDL-30783: Implemented fix 2012-01-09 21:51:41 +01:00
Tim Hunt c4989dc75f MDL-24394 qtype_match: should be able to use multilang for the choices. 2012-01-09 18:06:11 +00:00
Tim Hunt 0f504be67b MDL-31019 quiz secure mode. Fix typo that breaks submit. 2012-01-09 17:10:19 +00:00
Aparup Banerjee 54afb1ca01 Merge branch 'w02_MDL-30718_m22_usertimedb' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-09 12:20:34 +08:00
Sam Hemelryk da744e0065 Merge branch 'w02_MDL-31005_m22_contextlevelname' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-09 16:12:38 +13:00
Sam Hemelryk 7a44fb4d97 MDL-30608 Blocks: Fixed block disappering from search page 2012-01-09 11:04:44 +08:00
Aleksey Avdeev d43c4284e1 MDL-29046 use of install/distrolib.php in the CLI installer
Signed-off-by: Aleksey Avdeev <solo@altlinux.ru>
2012-01-09 02:32:37 +01:00
Eloy Lafuente (stronk7) f36884dde7 Merge branch 'MDL-30031-22' of git://github.com/bostelm/moodle into MOODLE_22_STABLE 2012-01-09 02:14:31 +01:00
Sam Hemelryk 5dff4c565f Merge branch 'w02_MDL-30717_m22_usercreated' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-09 14:03:00 +13:00
Sam Hemelryk 0ca7b84953 MDL-30928 lib: Fixed whitespace 2012-01-09 13:57:23 +13:00
Sam Hemelryk 995294dfa3 Merge branch 'w02_MDL-30928_m22_deletetimes' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-09 13:48:37 +13:00
Sam Hemelryk cef1e7f444 Merge branch 'w02_MDL-30969_m22_suspendedcsv' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-09 13:02:21 +13:00
Darko Miletic 23758a4588 MDL-30778: Implemented intendeduserrole support 2012-01-09 00:42:48 +01:00
Eloy Lafuente (stronk7) f35cacdc83 Merge branch 'MDL-30966-print-object_22_STABLE' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-01-09 00:33:31 +01:00
Eloy Lafuente (stronk7) 7e20d8e330 Merge branch 'MDL-30635_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-09 00:18:18 +01:00
Sam Hemelryk ade2e5955e Merge branch 'MDL-30652_m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2012-01-09 12:00:22 +13:00
Andrew Robert Nicols ce40b669cc MDL-31000 Respect sortorder of repositories when displaying the filepicker 2012-01-09 11:53:53 +13:00
Petr Skoda 05042a7ed8 MDL-31005 fix strict coding style warning in context_helper
PHP54 compatibility
2012-01-08 15:42:34 +01:00
Petr Skoda 2824832a18 MDL-30717 update user->timemodified in update_user_record() 2012-01-08 15:04:06 +01:00
Petr Skoda 17330e8aae MDL-30717 add missing time created info in create_user_record()
Credit goes to Luis Gustavo Mueller de Alcantara.
2012-01-08 15:04:05 +01:00
Petr Skoda 6ac158e9e3 MDL-30718 add missing timecraeted and timeupdated, fix user undeleting 2012-01-08 14:51:47 +01:00
Petr Skoda dfff77eedd MDL-30928 include course and user deletion time in event
Credit goes to Luis Gustavo Mueller de Alcantara.
2012-01-08 14:30:06 +01:00
Petr Skoda 77536bd387 MDL-30969 add support for suspending in uploaduser admin tool 2012-01-08 14:01:49 +01:00
AMOS bot c56a8d4441 Merge branch 'MOODLE_22_STABLE' into install_22_STABLE 2012-01-08 00:31:21 +00:00
Eloy Lafuente (stronk7) a1d246334b Moodle release 2.2.1 2012-01-07 17:04:34 +01:00
AMOS bot e71389830c Automatically generated installer lang files 2012-01-07 00:31:19 +00:00
David Mudrak b886841fc8 MDL-30966 print_object() output made CLI-friendly 2012-01-06 22:47:11 +01:00
Tim Hunt 25200f80f7 MDL-30635 let quiz reports do cron in the standard way.
The old legacy way is still supported in 2.2, but this support will be
dropped in 2.3.
2012-01-06 18:13:13 +00:00
AMOS bot fdac23f168 Automatically generated installer lang files 2012-01-06 00:31:29 +00:00
Eloy Lafuente (stronk7) 7ca0ece0db weekly release 2.2+ 2012-01-05 15:06:46 +01:00
Eloy Lafuente (stronk7) dcfc7a875a Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2012-01-05 12:50:26 +01:00
Sam Hemelryk ffd6212152 Merge branch 'MDL-31017_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2012-01-05 11:17:13 +13:00
Eloy Lafuente (stronk7) 1cf721e235 MDL-31017 whitespace clean - take1 2012-01-04 16:28:59 +01:00
Eloy Lafuente (stronk7) aed7f32783 Merge branch 'MDL-30865-workshop-unittest_22_STABLE' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2012-01-04 02:19:11 +01:00
Eloy Lafuente (stronk7) dbc7d20cf5 Merge branch 'MDL-30879-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2012-01-04 02:14:34 +01:00
Petr Skoda 6357d61912 MDL-30945 add support for unenrolling of individual users + code cleanup 2012-01-04 01:53:33 +01:00
AMOS bot 3acce7a095 Automatically generated installer lang files 2012-01-04 00:31:17 +00:00
Petr Skoda a36531da4f MDL-30948 do not generate new passwords for suspended accounts because they would not get any emails 2012-01-04 00:49:04 +01:00
Petr Skoda 7d1906cf7c MDL-30948 stop messaging suspended and deleted users 2012-01-04 00:49:03 +01:00
Petr Skoda 8be58774cd MDL-30951 prevent fatal error when category sync enrolment not configured 2012-01-04 00:40:26 +01:00
Petr Skoda ffbcd681f3 MDL-29917 prevent form autocompletion in most Moodle forms
The password autocompletion in case of Moodle makes sense only on the login page, the form autocompletion in general is most probably useful only on the user signup page.

This patch is compatible with html 5, unfortunately we have to ignore strict warnings in legacy xhtml 1.0 standard.
2012-01-04 10:58:31 +13:00
Petr Skoda dc49c2d461 MDL-30548 support user suspended flag in admin UI
This patch includes:
* user management suspend UI tweaks and other coding style improvements
* suspended info in user profiles
* suspend option in advanced edit form
* suspended user filtering
* hidden user fields option for suspended field

Thanks Sam Hemelryk for valuable feedback.
2012-01-04 10:51:04 +13:00
Petr Skoda 10357af3ef MDL-30950 remove references to removed admin block
Credit goes to Ralf Hilgenstock.
2012-01-03 22:35:00 +01:00
sam marshall 1800b35bf6 MDL-30879 Course page: missing space after class for new 'description on course page' feature 2012-01-03 12:42:24 +00:00
Rossiani Wijaya 6ca2f1d3ce MDL-30600 Fix mymobile theme choice renderer 2012-01-03 17:54:34 +08:00
Ankit Kumar Agarwal 9f097a7248 MDL-30652 SCORM Fixing report prefrences display for interactions report 2012-01-03 12:10:52 +05:30
Ankit Kumar Agarwal 8755b6aaca MDL-30652 SCORM Fixing report prefrences display issue for basic report 2012-01-03 12:10:43 +05:30
Ankit Kumar Agarwal bea916ae7c MDL-30652 Scorm adding proper comments 2012-01-03 12:10:21 +05:30
Aparup Banerjee 8ef685cf4c Merge branch 'wip-mdl-29844-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2012-01-03 12:31:22 +08:00
Eloy Lafuente e4b1208377 MDL-29844 Administration: Added new config for users to login for viewing profile image 2012-01-03 12:02:59 +08:00
Sam Hemelryk cd735560d3 Merge branch 'w52_MDL-30786_m22_todelete' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2012-01-03 16:35:26 +13:00
Petr Skoda a770897929 MDL-30673 fix login autocompletion protection 2012-01-03 14:09:36 +13:00
AMOS bot 40ff6e3663 Automatically generated installer lang files 2012-01-03 00:31:16 +00:00
Petr Skoda b408061558 MDL-30809 do not add guest info to add course form if default instance prevented 2012-01-03 13:05:38 +13:00
Petr Skoda be1af716b7 MDL-30924 merge upstream pspell fix
See https://github.com/moodle/custom-tinymce_spellchecker_php/tree/MOODLE_22_2.0.6a
2012-01-03 12:49:38 +13:00
Petr Skoda f69ff3b72e MDL-30926 fix course and module blog associations 2012-01-03 12:39:17 +13:00
Petr Skoda 0543bb679b MDL-30934 fix module delete cleanup
Credit goes to Rajiv Navada.
2012-01-03 12:26:35 +13:00
Petr Skoda 9cad3e182d MDL-30943 fix forgotten admin/report/ references 2012-01-03 12:23:43 +13:00
Sam Hemelryk 1243bf814b Merge branch 'MDL-30802_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-03 11:25:50 +13:00
Sam Hemelryk e972cdc5ad Merge branch 'MDL-30766_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-03 11:23:00 +13:00
Sam Hemelryk dc8d309c88 Merge branch 'MDL-30168_tim2_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-03 11:14:10 +13:00
Sam Hemelryk 860848dca8 Merge branch 'MDL-27200_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2012-01-03 11:12:01 +13:00
Henning Bostelmann aafe1618f8 MDL-29266 Assignment grading: save state of "send notifications" box 2012-01-03 11:09:59 +13:00
Petr Skoda 358e5cf791 MDL-13572 fix incorrect value printing 2012-01-03 11:01:29 +13:00
Petr Skoda a2c591662b MDL-13572 fix incorrect value printing 2012-01-03 11:01:29 +13:00
Petr Skoda 64550fa6c1 MDL-13572 do not send emails to invalid addresses 2012-01-03 11:01:29 +13:00
Mary Evans 267ff8cd27 MDL-30868 Fix for assignment view in theme_boxxie 2012-01-03 10:39:03 +13:00
Henning Bostelmann 32bbc36039 MDL-29821 Navigation tree: fix link to course notes page 2012-01-03 10:12:56 +13:00
Dan Poltawski 8129b01641 MDL-30706 mymobile: don't send login pages through ajax
By doing 'real requests' we can allow external authentication to happen
(e.g. apache module which does a redirect to external SSO system)
2012-01-03 10:09:43 +13:00
Andrew Robert Nicols a39a53fa6f MDL-30804 Rename the 'onthispage' fieldset for block configuration 2012-01-03 10:06:53 +13:00
Andrew Robert Nicols c50d05671b MDL-30805 Require HTML content for the HTML block configuration 2012-01-03 10:03:23 +13:00
Sam Hemelryk 7f7d9ce6e8 Merge branch 'MDL-13572_validate_email_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2012-01-03 09:57:14 +13:00
Eloy Lafuente (stronk7) 58a44ab228 Merge branch 'MDL-30851_22_wip' of git://github.com/grabs/moodle into MOODLE_22_STABLE 2012-01-02 20:26:40 +01:00
Petr Skoda b43c2e9d39 MDL-30953 fix utf-8 support in PSpell class
Credit for discover and proposed fix goes to David Hai Gootvilig, this patch is part of https://github.com/moodle/custom-tinymce_spellchecker_php/tree/MOODLE_22_2.0.6b which will be used in the next tinymce import. It was reported upstream as https://github.com/tinymce/tinymce_spellchecker_php/pull/5
2012-01-02 20:20:08 +01:00
AMOS bot 42cbe9be98 Automatically generated installer lang files 2011-12-29 00:31:19 +00:00
Henning Bostelmann fb93cfac00 MDL-30031 Adaptive question behaviour: ignore invalid answers without penalty 2011-12-28 17:20:51 +00:00
AMOS bot 0ba9f5a5e9 Automatically generated installer lang files 2011-12-24 00:31:35 +00:00
Andreas Grabs 9d1963b421 MDL-30851 - Syntax error in analysis_course.php 2011-12-23 17:39:16 +01:00
Tim Hunt ed82e03798 MDL-30873 quiz: display an overall grade for preview users.
Also, don't display an overall grade unless there is at least one finished attempt.
2011-12-23 11:49:59 +00:00
Tim Hunt a89d501b72 MDL-30802 question nav: fix questions link in front page course. 2011-12-23 11:49:38 +00:00
Tim Hunt 4587d4f5b7 MDL-30766 mod_quiz: fix edge cases of repaginate function. 2011-12-23 11:49:18 +00:00
Tim Hunt cb0318b633 MDL-30168 formslib: untangle automatic id generation.
Previously, we had overridden the _generateId method in almost all
subclasses; and then we mostly, but not always; ignored the value that
was generated there, and instead generated new (nicer) values in
MoodleQuickForm_Renderer::renderElement. Of course, that is not really a
logical place to (re)generate ids.

I have fixed the code so that the _generateId method now uses the 'nice
id' algorithm from renderElement. This should make the whole code flow
more logical.

This make all our overriding of _generateId unnecessary.

We do need a special _generateId for radio buttons, because you often
have different radio buttons with the same name but different values.

This change should only change the ids on radio, checkbox and
advcheckbox elements. Previously, those were essentially random, so I
don't think anyone could have been relying on the particular values.

This commit also has new unit tests, first to test the basic _generateId
algorithm, and then to create and render an example form (including some
tricky things like repeat_elements) and chech the acutal ids in the
generated HTML.
2011-12-23 11:19:48 +00:00
Tim Hunt 404e01f59e MDL-27200 missing {} in various lang strings. 2011-12-23 11:19:24 +00:00
Petr Skoda 96ebc911d7 MDL-30786 fix overview status of standard plugins to be deleted 2011-12-23 10:36:12 +01:00
David Mudrak 7d8c4fb5af MDL-30865 Workshop method aggregate_grading_grades_process() accepts explicit aggregation timestamp 2011-12-23 09:21:09 +01:00
Eloy Lafuente (stronk7) 929c26ccf1 weekly release 2.2+ 2011-12-23 03:03:32 +01:00
Eloy Lafuente (stronk7) c994fe7430 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2011-12-23 02:53:07 +01:00
AMOS bot 1d4262608c Automatically generated installer lang files 2011-12-23 00:31:21 +00:00
Eloy Lafuente (stronk7) 0016ed0115 MDL-30760 question engine: reduce summary max size
MySQL only accepts 65536 (aprox) bytes in default TEXT
columns. So we define the max allowed as 32000 to allow
99.9% of utf-8 contents to fit. If some day MDL-19603 is
implemented and all current TEXTs are moved (MySQL) to
the BIG counterparts, this restriction can be out (MDL-19603).
2011-12-23 01:16:00 +01:00
Gerard (Gerry) Caulfield 0c5e3d4564 MDL-29400 Fixing unset object bug encountered by Rajesh during testing 2011-12-22 09:55:38 +01:00
Sam Hemelryk e0c00395b7 Merge branch 'wip-MDL-18128-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2011-12-22 11:44:34 +13:00
Sam Hemelryk 9e9e0732f5 MDL-30639 mod_lesson: Used a consistent format for users display of answer 2011-12-22 11:23:15 +13:00
Sam Hemelryk 965344c08f Merge branch 'MDL-30639_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2011-12-22 11:21:08 +13:00
Tim Hunt 0f97c8afdb MDL-30704 quiz_overview: fixup, add missing rescaling.
Thanks Micheal de Raadt for catching this in testing.
2011-12-21 18:33:32 +01:00
Eloy Lafuente (stronk7) 1b5afe64c4 MDL-20245 grade: added tests for set_user_preference() and the 1333 limit
Added to tests to check that both the "limit" case of using 1333
chars is allowed and 1334 causes coding exception to happen
2011-12-21 16:30:57 +01:00
Eloy Lafuente (stronk7) 5831b4c70c MDL-20245 grade: fix version numbers
This commit puts the 22_STABLE and master main
versions back to "on-sync" mode (very first
weeks after major release).

Conflicts:

	lib/db/upgrade.php
	version.php
2011-12-21 12:25:11 +01:00
Andrew Davis 223e753520 MDL-20245 grade: increased the size of the user_preferences value column and added php validation of the data going into that column
Conflicts:

	lib/db/upgrade.php
	version.php
2011-12-21 12:23:50 +01:00
adrian@moodle.com 72682b8868 MDL-18128 - forum - Addition of group editing for forums. 2011-12-21 15:40:09 +08:00
Aparup Banerjee 8fe13ecf1a Merge branch 'wip-MDL-30541-stable22' of git://github.com/phalacee/moodle into MOODLE_22_STABLE 2011-12-21 14:16:55 +08:00
Aparup Banerjee dbfa519ad9 MDL-28126 webservice : resolved integration conflicts 2011-12-21 11:28:33 +08:00
Sam Hemelryk 6ff99dde45 Merge branch 'MDL-29239_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2011-12-21 15:00:41 +13:00
Jason Fowler 332748dd7e MDL-30541 - Blog - Fixing the context for RSS Feed headers on the single blog entry pages 2011-12-21 09:35:52 +08:00
Sam Hemelryk db65026449 Merge branch 'MDL-30704_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-21 14:30:27 +13:00
Eloy Lafuente (stronk7) 45c920b0af MDL-30777: whitespace fix 2011-12-21 00:41:20 +01:00
Darko Miletic 1be36988ac MDL-30777: Properly implemented error message 2011-12-21 00:41:09 +01:00
Eloy Lafuente (stronk7) d7964ccf87 Merge branch 'MDL-30170-mnet-undelete_22_STABLE' of git://github.com/mudrd8mz/moodle into MOODLE_22_STABLE 2011-12-20 23:33:19 +01:00
Gerard (Gerry) Caulfield efa9f19281 MDL-29400 Update the upload and uploadsingle assignment classes to so
that they only display the assignment submitted status when it has
actually been submitted.
2011-12-20 22:55:23 +01:00
Eloy Lafuente (stronk7) 6662dee76d MDL-30761 make it work under Oracle. To revisit after MDL-29765 is done. 2011-12-20 22:38:21 +01:00
Eloy Lafuente (stronk7) 1729746211 Merge branch 'w51_MDL-30761_m22_slowmysql' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-20 22:38:09 +01:00
Darko Miletic fe2a74db60 MDL-30631: Fixed the default grade import for the question for both CC
1.0 and 1.1
2011-12-20 22:02:51 +01:00
Eloy Lafuente (stronk7) 72b01fbeb3 Merge branch 'MDL-30603_m22' of https://github.com/nebgor/moodle into MOODLE_22_STABLE 2011-12-20 19:49:45 +01:00
Eloy Lafuente (stronk7) 7259dbc551 Merge branch 'MDL-29048-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2011-12-20 18:56:01 +01:00
Eloy Lafuente (stronk7) 39949b56ad Merge branch 'wip-MDL-30733-MOODLE_22_STABLE' of github.com:marinaglancy/moodle into MOODLE_22_STABLE 2011-12-20 18:52:48 +01:00
Aparup Banerjee 7110207a34 MDL-25561 Gradebook : fixed whitespaces 2011-12-20 19:15:48 +08:00
Aparup Banerjee 40b67fca0a Merge branch 'MDL-25561_user_report_name_clickable_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2011-12-20 19:15:20 +08:00
Andrew Robert Nicols b9c38ef120 MDL-30627 Ensure that the dialogue is always shown in the current view window 2011-12-20 13:38:41 +08:00
Rossiani Wijaya b8e5740796 MDL-30636 Lesson Module: fixed essay answer display format 2011-12-20 12:51:52 +08:00
Andrew Robert Nicols 8c9d533f3d MDL-30641 Stop italicising and underlining folder names in the filepicker 2011-12-20 11:55:12 +08:00
Aparup Banerjee 18952a18fd Merge branch 'MDL-30569-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2011-12-20 11:11:02 +08:00
Eloy Lafuente (stronk7) 53516a8ece Merge branch 'wip-mdl-29067-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2011-12-20 03:12:55 +01:00
Sam Hemelryk a5f35b4cf2 MDL-30770 admin: Fixed notice about missing variable 2011-12-20 02:26:34 +01:00
Eloy Lafuente (stronk7) fbb829b82d MDL-30739 add one test to confirm the solution is cross-db 2011-12-20 02:23:55 +01:00
Eloy Lafuente (stronk7) ceec817f95 Merge branch 'MDL-30739_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-20 02:21:30 +01:00
Sam Hemelryk 0cba7c0408 Merge branch 'MDL-30764-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2011-12-20 14:15:43 +13:00
Eloy Lafuente (stronk7) 2df28fda6c Merge branch 'MDL-30738_22_STABLE' of git://github.com/kiklop74/moodle into MOODLE_22_STABLE 2011-12-20 02:01:29 +01:00
Sam Hemelryk 9f83ba0887 Merge branch 'MDL-30760_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-20 13:34:53 +13:00
AMOS bot 956d1a3ab5 Automatically generated installer lang files 2011-12-20 00:31:22 +00:00
Sam Hemelryk 6005434b55 Merge branch 'MDL-30646_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-20 13:21:11 +13:00
Sam Hemelryk a8fb78b142 Merge branch 'MDL-29846_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-20 13:16:20 +13:00
Sam Hemelryk b3af6c110a Merge branch 'w51_MDL-30787_m22_coursemodedit' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-20 12:08:09 +13:00
Eloy Lafuente (stronk7) 58ca2c4b71 Merge branch 'MDL-30741_m22' of git://github.com/jfilip/moodle into MOODLE_22_STABLE 2011-12-20 00:05:13 +01:00
Sam Hemelryk 4e77491aff Merge branch 'wip-MDL-28948-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2011-12-20 10:42:45 +13:00
Petr Skoda c2ca1a3793 MDL-30779 add port and socket to dbtansfer tool 2011-12-20 10:29:11 +13:00
Sam Hemelryk 1f3933bee6 Merge branch 'w51_MDL-30765_m22_context' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-20 10:09:27 +13:00
Sam Hemelryk e7af814b0d Merge branch 'w51_MDL-30697_m22_roleslink' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-20 10:03:59 +13:00
Tim Hunt 365e163946 MDL-30704 Quiz grades report shows inconsistent averages.
Previously, for the overall grade, we averaged the final marks for each
student; while for the individual question grades, we averaged all
grades.

The report now works consistently on the principle that the averages
should include exactly what is currenlty being shown in the report. This
is more logical, and so should be easier for users to understand.

If you want to see the averages that are currently shown (e.g. just the
average of each student's highers grade) then the report options let you
do that.
2011-12-19 15:03:56 +00:00
Tim Hunt 9f689071a8 MDL-29846 qbehaviours admin: correct $needed logic.
Also, fix a notice.
2011-12-19 14:34:09 +00:00
Aparup Banerjee 85daa5926c Merge branch 'w51_MDL-30735_m22_cron' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-19 11:53:32 +08:00
Sam Hemelryk 415be0ff94 Merge branch 'w51_MDL-30789_m22_enrolupdatestatus' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-19 16:26:01 +13:00
Mary Evans e50e70d12e MDL-30500 Fix for Sky High report & print layout 2011-12-19 15:22:41 +13:00
Ankit Kumar Agarwal 8c14856d86 MDL-30569 Administration Fixing the redirect after editting is toggeled on the front page 2011-12-19 07:42:49 +05:30
Sam Hemelryk d613d7d78e Merge branch 'MDL-37049_22' of git://github.com/jamiepratt/moodle into MOODLE_22_STABLE 2011-12-19 15:05:42 +13:00
Sam Hemelryk 7c19940ca6 Merge branch 'MDL-30683_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-19 14:14:55 +13:00
Sam Hemelryk ead158db7e Merge branch 'MDL-29176_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-19 12:23:36 +13:00
Sam Hemelryk 3bcb2c1dff Merge branch 'MDL-30734_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-19 11:52:32 +13:00
Sam Hemelryk 265dbb3a54 Merge branch 'MDL-30742_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-19 11:30:42 +13:00
Sam Hemelryk 2253ea2592 Merge branch 'MDL-30744_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-19 10:53:57 +13:00
Sam Hemelryk 5ff8144cc8 Merge branch 'MDL-30758_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-19 09:28:10 +13:00
Petr Skoda 9cf83e67a1 MDL-30789 add new update_status() method to enrol plugins and improve enrol cache invalidation 2011-12-18 17:31:12 +01:00
Petr Skoda 4d199d6b33 MDL-30787 fix use of module and section edit capabilities 2011-12-18 13:55:31 +01:00
AMOS bot 8109fce46d Automatically generated installer lang files 2011-12-18 00:31:19 +00:00
Petr Skoda cb6ff0a71c MDL-30697 fix incorrect capability for role assign button
Credit goes to Alexander Bias.
2011-12-17 14:47:17 +01:00
Petr Skoda d107f1e2cd MDL-30735 fix cron maintenancerun detection
Credit goes to Rodrigo Belluomini Cardilli.
2011-12-17 14:18:22 +01:00
Petr Skoda ebad6e2f6f MDL-30765 fix invalid context variable 2011-12-16 23:03:17 +01:00
Tim Hunt 9660c98e57 MDL-30760 question engine: question summary can be longer than 64k!
1. So we will truncate the question summary to 65000 chars if necessary.

2. Also, fix one minor error in mutlianswer save_question_options.

question_bank::MAX_SUMMARY_LENGTH is not the most logical class to add
the constant to, but it needs to be accessible during upgrade, so I was
lazy and put it there.
2011-12-16 15:57:49 +00:00
Petr Skoda c34b325447 MDL-30761 improve get_user_access_sitewide() performance 2011-12-16 16:27:18 +01:00
Petr Skoda 35cd08c96e MDL-30761 fix simpletest regression caused by rubrics 2011-12-16 14:26:12 +01:00
Dan Marsden e5baaad498 MDL-28728 SCORM Add missing string 2011-12-16 11:39:12 +08:00
Rajesh Taneja 8e8a8810de MDL-29067 Admin: Added spam checking on comments, messages and forum posts 2011-12-16 11:34:43 +08:00
adrian@moodle.com 177bc9c8b9 MDL-28948 - lib - removed the hard coded key for the rc4encryt function. 2011-12-16 09:14:53 +08:00
AMOS bot 33b8721c71 Automatically generated installer lang files 2011-12-16 00:31:19 +00:00
David Mudrak 6cf3a65082 MDL-30170 MNet peers administration - various usability improvements
While fixing MDL-30170, the following tiny usability details were
improved along the way:

* the maximum length of the peer site title and the hostname is now
  validated (this was actually a real bug as the default value is pre-loaded
  from the peer) so the admin gets a nice validation error instead of
  the database write exception when trying to register a host with a
  longer site title.
* hard-coded English string 'All Hosts' is now localized
* the hostname link in the list of MNet peers leads to the peer itself
2011-12-15 21:26:45 +01:00
David Mudrak 841b2a44ef MDL-30170 MNet peers administration - highlight the undelete widget
The patch highlights the undelete radio selector at the host edit form.
It moves it to the end of the form (near the submit button) and displays
an explanation above the radio selector.

Also, the list of deleted hosts is now displayed below the table of
active peers at the Manage peers page.

The data returned by mnet_get_hosts() function now contain the deleted
status, too. It is possible to obtain deleted hosts from that function
now.
2011-12-15 21:15:56 +01:00
Tim Hunt 98402da094 MDL-29176 quiz editing: can't move questions onto a new page. 2011-12-15 19:33:01 +00:00
Tim Hunt 76ffac7f93 MDL-30646 default qbank sort should only use visible columns. 2011-12-15 18:40:32 +00:00
sam marshall 782b21dc0f MDL-30764 Activity settings: do not disable grouping dropdown if it is already set 2011-12-15 16:47:08 +00:00
Justin Filip e0b587be49 MDL-30741 Adding a new test to check for incorrect parsing of complicate HTML with a PRE tag. 2011-12-15 11:10:32 -05:00
Justin Filip e60d8e5a42 MDL-30741 Fix the handling of PRE tags with the latest code from upstream: http://trac.roundcube.net/browser/trunk/roundcubemail/program/lib/html2text.php?rev=5497 2011-12-15 11:10:20 -05:00
Tim Hunt 67cb80dc09 MDL-30758 quiz_statistics report fails if all 1st attempts require grading 2011-12-15 12:52:10 +00:00
Tim Hunt abe73c6d99 MDL-30739 qtype numerical: upgrade script uses SQL that is not cross-DB. 2011-12-15 12:22:27 +00:00
Tim Hunt f455e4e9bd MDL-30744 question editing permissions. Update to new accessslib.php code.
I don't believe this will actually fix the reported problem, which I
cannot reproduce, but it should give us much better error messages, at
which point we can fix it.
2011-12-15 11:56:21 +00:00
Tim Hunt 6d3ac4035b MDL-30592 / MDL-27183 quiz statistics: fix merge problem.
These two fixes changes the same file in different ways, causing breakage.
2011-12-15 11:22:33 +00:00
Aparup Banerjee b057855440 MDL-28126 webservice : string fixed. 2011-12-15 18:05:13 +08:00
Marina Glancy 92ec74a9a7 MDL-30733: synchronizing view_feedback with parent function to work with advanced grading
assignment_upload::view_feedback was overriden. It is altered the same way as parent function was to work with advanced grading and so it is displayed correctly in user complete report
2011-12-15 16:47:18 +08:00
Jamie Pratt 9abb69aacb MDL-30749 fixing typo referring to question instead of answer object 2011-12-15 14:47:15 +07:00
Aparup Banerjee cb8e878573 Revert "MDL-30482 create new capability for viewing glossary entries" (test failed)
This reverts commit 03adb289ec.
2011-12-15 15:46:22 +08:00
Aparup Banerjee ba0c76e7a9 Revert "MDL-30482 - Glossary - Adding capability to other areas using glossary" (testing failed)
This reverts commit b2b9890d08.
2011-12-15 15:29:36 +08:00
Eloy Lafuente (stronk7) 40ab5a4010 MDL-30592 moodlelib: minor phpdocs/debug tweaks 2011-12-14 22:44:47 +01:00
Eloy Lafuente (stronk7) a30e3c5a1a Merge branch 'MDL-30592_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-14 22:44:33 +01:00
Tim Lock cb140ca0d6 MDL-30419: IMS package content missing when using Blackboard packages 2011-12-14 21:36:04 +01:00
Darko Miletic 4026898f5c MDL-30738: Fix for 2.2 stable 2011-12-14 15:06:31 -03:00
Tim Hunt 51d861632b MDL-30742 restoring 1.9 backups with missing question data should be robust 2011-12-14 17:18:04 +00:00
Jerome Mouneyrac 72306a6ff4 MDL-28126 webservices : should not able to create token if user is deleted,unconfirmed,suspended or guest. 2011-12-15 00:52:16 +08:00
Tim Hunt 9831354928 MDL-30734 question engine: sum_usage_marks_subquery edge-case.
When all qas in a useage are 'gaveup' state, it gives NULL, not 0.0, for the total.
2011-12-14 14:30:25 +00:00
Andrew Davis 925d068de1 MDL-13572 message: added validation of the email address in the messaging preferences 2011-12-14 17:48:36 +08:00
Andrew Davis 1a35796fba MDL-25561 grade: made the student names clickable on the user report 2011-12-14 15:33:10 +08:00
Jason Fowler b2b9890d08 MDL-30482 - Glossary - Adding capability to other areas using glossary 2011-12-14 15:02:51 +08:00
Aparup Banerjee 4f7dc83fe8 Revert "MDL-30482 - Glossary - Adding capability to other areas using glossary"
This reverts commit b23dd6ee72.
2011-12-14 15:02:37 +08:00
Dan Marsden 7c183f44d4 MDL-28728 SCORM - only show delete button if data exists for this user in this scorm 2011-12-14 13:42:14 +08:00
Dan Marsden 7d919d8f27 MDL-28728 SCORM - add capability to allow users to delete own attempts - given to no-one by default. 2011-12-14 13:42:06 +08:00
Aparup Banerjee 324ea4d7de MDL-29325 fixed typo - camelcasing. 2011-12-14 13:14:28 +08:00
Mayank Gupa 9ff12f3dae MDL-30576, Fixing cmi.completion_threshold and default value of minProgressMeasure to be saved correctly in the database. 2011-12-14 17:22:45 +13:00
Sam Hemelryk 83688ab542 Merge branch 'MDL-27183_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-14 17:17:29 +13:00
Eloy Lafuente (stronk7) 2b6d08a333 Merge branch 'wip-MDL-27767-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2011-12-14 03:16:31 +01:00
Mark Nielsen e2acc0a010 MDL-29048 Glossary Force glossary type to secondary while trying to duplicate a mail glossary 2011-12-14 07:28:28 +05:30
Eloy Lafuente (stronk7) c5b8cda403 Merge branch 'w51_MDL-30605_m22_env23' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-14 02:39:11 +01:00
Sam Hemelryk d4b584c5f6 Merge branch 'MDL-30463_m22' of git://github.com/rwijaya/moodle into MOODLE_22_STABLE 2011-12-14 14:25:17 +13:00
Sam Hemelryk 2f24a39b5b Merge branch 'MDL-30140-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2011-12-14 14:08:21 +13:00
AMOS bot de1b85d795 Automatically generated installer lang files 2011-12-14 00:31:23 +00:00
Tim Hunt d6b040af81 MDL-30683 don't show overall feedback in the quiz grades report.
The grades are small, while the feedback can be big, which breaks the table layout.
2011-12-13 16:51:35 +00:00
Aparup Banerjee a23463acec Merge branch 'MDL-29772-22' of git://github.com/bostelm/moodle into MOODLE_22_STABLE 2011-12-13 17:05:07 +08:00
Aparup Banerjee 3b89933d9f MDL-29325 Enrol : reduced isset calls and improved readability 2011-12-13 16:36:49 +08:00
Dan Marsden 903ab24de4 MDL-29325 imsenterprise enrolment - allow more flexible naming of courses - thanks to Adam Barbary for patch 2011-12-13 16:27:37 +08:00
Mayank Gupa 5c8e2b97d3 MDL-30577, fixing cmi.credit, cmi.mode are not evaluated correctly 2011-12-13 14:49:47 +08:00
Aparup Banerjee 9dfd9a124d Merge branch 'MDL-30472-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2011-12-13 14:36:02 +08:00
Andrew Robert Nicols db5602f751 MDL-30362 Change icon class for editsection icons in course formats 2011-12-13 14:30:21 +08:00
Aparup Banerjee a3bb5afdd0 Merge branch 'MDL-30562_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-13 14:01:57 +08:00
Alexnader Bias 423dc3b17e MDL-30472 Course Making user lists sortable when lastacess field is hidden 2011-12-13 10:53:52 +05:30
Aparup Banerjee 3a353b12ba Merge branch 'MDL-30655-m22' of git://github.com/sammarshallou/moodle into MOODLE_22_STABLE 2011-12-13 13:21:05 +08:00
Tim Hunt 26ebc41703 MDL-30559 conditional availability: missing validation of grade rules. 2011-12-13 12:07:47 +08:00
Jason Fowler b23dd6ee72 MDL-30482 - Glossary - Adding capability to other areas using glossary 2011-12-13 11:51:40 +08:00
Charles Fulton 03adb289ec MDL-30482 create new capability for viewing glossary entries 2011-12-13 11:51:33 +08:00
Petr Skoda 1a52d9e2cc MDL-30575 more mail header cleanup 2011-12-13 10:23:56 +08:00
Mayank Gupa 1daa8c0821 MDL-30645, Fixing evaluation of default value of CMI elements. 2011-12-13 10:16:09 +08:00
Andrew Robert Nicols 51a2716e6b MDL-30653 Remove duplicate Participants link from navbar 2011-12-13 12:09:02 +13:00
Sam Hemelryk b3463f416c Merge branch 'MDL-30677_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-13 11:20:04 +13:00
Sam Hemelryk fc97bb9863 Merge branch 'MDL-30532_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-13 11:15:08 +13:00
Sam Hemelryk 8c495ea4ee Merge branch 'MDL-30498a_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-13 11:11:21 +13:00
Sam Hemelryk bb0ece5a0c Merge branch 'MDL-27143_22' of git://github.com/timhunt/moodle into MOODLE_22_STABLE 2011-12-13 10:26:31 +13:00
Sam Hemelryk e79c09855c Merge branch 'w51_MDL-30621_m22_protectdir' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-13 10:17:56 +13:00
Henning Bostelmann 1f00dc45d4 MDL-29772 Adaptive question behaviour: improve penalty information
also fixes MDL-29780: suppress penalty information if question penalty is 0
2011-12-12 15:38:16 +00:00
Petr Skoda f9c5bd9234 MDL-30621 more dataroot protection 2011-12-12 15:07:25 +01:00
Rossiani Wijaya f6b9be73f5 MDL-30463 lesson module: add space between yes and no options on start last attempt page 2011-12-12 17:13:45 +08:00
Rossiani Wijaya f08f05610b MDL-29239 fixed edit course setting for moodle/course:changesummary permission is set to prevent. 2011-12-12 15:53:54 +08:00
Aparup Banerjee b750cfde81 Merge branch 'w51_MDL-30613_m22_FULLME' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-12 15:05:37 +08:00
Aparup Banerjee 7210cb5d19 MDL-30603 synced and renamed incorrect ZF 1.10.6 file and name 2011-12-12 14:08:00 +08:00
Sam Hemelryk 860f7f9195 Merge branch 'w51_MDL-29117_m22_enrolnewcourse' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-12 17:59:24 +13:00
Sam Hemelryk a3a3186770 Merge branch 'w51_MDL-30292_m22_health' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-12 17:41:00 +13:00
Sam Hemelryk 424f91c056 Merge branch 'w51_MDL-30364_m22_report' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-12 17:37:39 +13:00
Petr Skoda 56b77440ad MDL-30415 prevent yui2 rollups in debug mode 2011-12-12 17:33:22 +13:00
Petr Skoda 92bf70765a MDL-30502 remove bogus role name param
Credit goes to Michael J Litzkow.
2011-12-12 17:24:43 +13:00
Sam Hemelryk 653599b3a4 Merge branch 'w51_MDL-30588_m22_switchrole' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-12 17:14:58 +13:00
Sam Hemelryk ba9489ce91 Merge branch 'w51_MDL-30659_m22_yuidebug' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-12 16:37:03 +13:00
Sam Hemelryk 6aabb69f9e Merge branch 'w51_MDL-30687_m22_ldapnewcourse' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-12 16:10:19 +13:00
Sam Hemelryk 02af5654f2 Merge branch 'MDL-29942-MOODLE_22_STABLE' of git://github.com/mouneyrac/moodle into MOODLE_22_STABLE 2011-12-12 15:13:01 +13:00
Sam Hemelryk 4e8da675ac Merge branch 'MDL-28180_22' of git://github.com/stronk7/moodle into MOODLE_22_STABLE 2011-12-12 14:56:40 +13:00
Sam Hemelryk d3054582d5 Merge branch 'MDL-30198-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2011-12-12 13:57:40 +13:00
Andrew Robert Nicols c3c2a213a2 MDL-29195 Remove duplicate Participants -> Notes from navbar 2011-12-12 13:51:07 +13:00
Eloy Lafuente (stronk7) ed9c60fed7 MDL-28180 backup - on restore always prevent completion_aggr_methd dupes
This covers the last case where dupes could be happening in the
completion_aggr_methd table: Restoring one complete course into
an existing one, adding information. Now we always check if the
aggr_method exists before inserting it.
2011-12-11 23:03:51 +01:00
Eloy Lafuente (stronk7) 9de951556f MDL-28180 backup - take rid of dupes in course_completion_aggr_methd 2011-12-11 22:14:02 +01:00
Eloy Lafuente (stronk7) ff4a2ddef7 MDL-28180 backup - set excluded activities for any non-course operation 2011-12-11 21:37:33 +01:00
Petr Skoda 8d7ec82427 MDL-30687 use course defaults when template not set in ldap enrol 2011-12-11 11:07:00 +01:00
Petr Skoda c4437be63b MDL-29117 use default course settings when template not set in db enrol 2011-12-11 10:58:37 +01:00
Petr Skoda 7f467e69c0 MDL-30292 rework trailing whitespace test
Now compatible with zlib compression.
2011-12-10 20:34:20 +01:00
Petr Skoda d59ef547c9 MDL-30364 fix user report regressions 2011-12-10 20:19:07 +01:00
Petr Skoda abf82af8f7 MDL-30621 prevent warnings when creating temp and cache dirs 2011-12-10 17:35:56 +01:00
Petr Skoda 5cb418e9f8 MDL-30659 fix use of yui filters 2011-12-10 13:52:41 +01:00
Petr Skoda 7109330e9a MDL-30659 fix phpdocs problems 2011-12-10 13:52:40 +01:00
Petr Skoda e467ed219f DML-30588 do not require enrollment after switching of roles 2011-12-10 12:45:06 +01:00
AMOS bot f0c8bb711f Automatically generated installer lang files 2011-12-10 00:31:25 +00:00
Petr Skoda cfef4e754a MDL-30610 new environment requirements for 2.3 2011-12-09 21:55:23 +01:00
Petr Skoda cbd8609407 MDL-30613 use standard https checks 2011-12-09 21:27:10 +01:00
Tim Hunt 2a1733aafc MDL-30592 question_bank: make files in qtext work in the question list. 2011-12-09 19:24:20 +00:00
Tim Hunt 1357ab1d5b MDL-30592 quiz statistics, ensure images in the question text appear. 2011-12-09 19:24:13 +00:00
Tim Hunt 001f78b41f MDL-30592 moodlelib: new helper component_callback
I chose to be slighly inconsistent with plugin_callback in order to make a nicer API.
2011-12-09 19:23:54 +00:00
Tim Hunt 853f2e8eea MDL-30677 quiz: fix attempt counts when a student is in several groups. 2011-12-09 17:59:29 +00:00
Valeriy Streltsov 00c7590c95 MDL-30562 qtypes: extra_answer_fields & questionid_column_name public
Will let us make more of qtype backup and restore work automatically.
2011-12-09 17:58:31 +00:00
Tim Hunt 24e5fcbe26 MDL-30532 qeupgradehelper has broken links to quizzes. 2011-12-09 17:57:35 +00:00
Tim Hunt 4d8a37a0db MDL-30498 user name can overlap user report icon. 2011-12-09 17:57:06 +00:00
Tim Hunt 3cba5809ae MDL-27183 quiz reports: don't show data to users not in any group
if the quiz is set to separate groups, and the user does not have access all groups.
2011-12-09 17:56:35 +00:00
Tim Hunt d7320fc84a MDL-27143 question bank: questions not saved when deleting a category.
Based on a fix by Nikhil Gupta.
2011-12-09 17:56:05 +00:00
sam marshall cff596e51b MDL-30655 Blocks: Moving block to top of list can cause (harmless) PHP warnings 2011-12-09 17:45:57 +00:00
Eloy Lafuente (stronk7) acb3bf8ac1 weekly release 2.2+ 2011-12-09 16:27:08 +01:00
Eloy Lafuente (stronk7) ebd748fd71 Merge branch 'install_22_STABLE' of git://github.com/amosbot/moodle into MOODLE_22_STABLE 2011-12-09 16:09:25 +01:00
Tim Hunt 653e811ec0 MDL-30660 javascript-static: another yui3/ticket/2531561 work-around. 2011-12-09 12:41:36 +01:00
Petr Skoda 81dda1da15 MDL-30625 fail gracefully when admins not defined 2011-12-09 10:57:42 +01:00
Aparup Banerjee 9cd8fdda3c MDL-30542 minor string change 2011-12-09 17:10:12 +08:00
Jerome Mouneyrac c532957be2 MDL-30140 alternative way to select user when adding a token. When more than 500 users we display a text box instead of a select box 2011-12-09 14:51:31 +08:00
Mitsuhiro ad86ee91e9 MDL-30198 Glossary Changing string during imports 2011-12-09 10:10:38 +05:30
Petr Skoda 11892d8fdf MDL-27364 use https for recaptcha when site runs via https
Based on solution by Rajesh Taneja.
2011-12-09 11:10:13 +08:00
Tim Hunt 00aa596e8e MDL-30558 question bank, missing string with obscure permissions.
AMOS BEGIN
 MOV [selectcategoryabove,mod_quiz],[selectcategoryabove,question]
AMOS END
2011-12-09 10:47:19 +08:00
Dan Marsden 7b80d3c65a MDL-26974 - add extra logging information all the time - not just when debugging is on. 2011-12-09 10:21:08 +08:00
Mayank Gupa 7da6c0f82d MDL-30579, fixing Data Model Elements are being initialized with an empty string 2011-12-09 10:16:06 +08:00
Tim Hunt a6395af1b9 MDL-27314 quiz reports: fix JS confirmation before deleting attempts. 2011-12-09 02:35:38 +01:00
Eloy Lafuente (stronk7) 4dbdc834ff MDL-30604 Added 2 missing messages andd deleting an incorrect one 2011-12-09 02:10:18 +01:00
Aparup Banerjee bc3801cb9c MDL-30604 Added upgrade lines to upgrade.php(s) 2011-12-09 02:03:58 +01:00
AMOS bot 4e7a371b2e Automatically generated installer lang files 2011-12-09 00:31:16 +00:00
Petr Skoda db48cf080d MDL-30625 full support for main admin 2011-12-09 00:13:05 +01:00
Sam Hemelryk e0745be16b Merge branch 'MDL-30660' of git://github.com/timhunt/moodle 2011-12-09 11:48:01 +13:00
Tim Hunt 9671325a35 MDL-29579 quiz statistics, include qtext in full XHTML export. 2011-12-08 23:37:19 +01:00
Tim Hunt 1e92c729ba MDL-30660 javascript-static: M.util.show_confirm_dialog fixes 2011-12-08 17:51:45 +00:00
Dan Marsden 347f822856 MDL-30028 - use page pref correctly when pagination or re-ordering 2011-12-08 17:07:32 +08:00
Aparup Banerjee 0f69a9eaaf Merge branch 'wip-MDL-30336-MOODLE_22_STABLE' of git://github.com/abgreeve/moodle into MOODLE_22_STABLE 2011-12-08 16:19:02 +08:00
Aparup Banerjee cdbd44f00e Merge branch 'wip-mdl-30560-m22' of git://github.com/rajeshtaneja/moodle into MOODLE_22_STABLE 2011-12-08 15:54:55 +08:00
Jerome Mouneyrac 6ae2048c1f MDL-29942 trigger user events in web service calls 2011-12-08 15:19:45 +08:00
Andrew Robert Nicols 02ed16902b MDL-30350 Highlight late submissions in the submission overview page 2011-12-08 14:27:22 +08:00
Aparup Banerjee 30e1b79889 Merge branch 'MDL-27432_gd_error_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2011-12-08 14:04:46 +08:00
Aparup Banerjee d30043c852 Merge branch 'MDL-28710_rating_classes_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2011-12-08 13:48:27 +08:00
Aparup Banerjee add75e9682 Merge branch 'MDL-30607_override_email_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2011-12-08 13:39:49 +08:00
Sam Hemelryk 78baf38ea4 Merge branch 'MDL-30518' of git://github.com/mackensen/moodle into MOODLE_22_STABLE 2011-12-08 16:05:08 +13:00
Petr Skoda cad8d5ccb0 MDL-30528 stop recreating role_assignments on every login attempt for each user
Credit goes to Luis Gustavo Mueller de Alcantara.
2011-12-08 15:51:08 +13:00
adrian@moodle.com a52422abcb MDL-30336 - login - Added a setting in security that allows auto complete to be set to off in password fields. 2011-12-08 09:08:38 +08:00
Sam Hemelryk a33d85b374 Merge branch 'w50_MDL-30623_m22_guest' of git://github.com/skodak/moodle into MOODLE_22_STABLE 2011-12-08 13:50:03 +13:00
Eloy Lafuente (stronk7) da3494a8c4 Merge branch 'wip-MDL-30582-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2011-12-08 01:37:03 +01:00
AMOS bot ae7aad593c Automatically generated installer lang files 2011-12-08 00:31:19 +00:00
Eloy Lafuente (stronk7) cf2d7311ab Merge branch 'MDL-26522_user_report_menu_22' of git://github.com/andyjdavis/moodle into MOODLE_22_STABLE 2011-12-08 01:02:01 +01:00
Igor Sazonov 8f64668af2 MDL-27314 quiz attempts cannot be deleted in separate groups mode. 2011-12-08 00:46:49 +01:00
Jerome Mouneyrac 2af51a1dc3 MDL-29712 REST-XML server was translating too many HTML characters. use htmlspecialchars instead of htmlentities. Translated characters by htmlspecialchars are compatible with XML validation, and so XML parsers for javascript, java... 2011-12-08 12:42:44 +13:00
Eloy Lafuente (stronk7) 17e0ed7919 Merge branch 'wip-MDL-30222-m22' of git://github.com/samhemelryk/moodle into MOODLE_22_STABLE 2011-12-08 00:39:53 +01:00
Dan Marsden 7e4c833c5a MDL-30211 imsenterprise enrolment - set up default enrolment methods in new courses 2011-12-08 10:49:58 +13:00
Dan Marsden 264ca6c58d MDL-30536 Choice - remove setType so that validation works when JS is disabled 2011-12-08 10:36:48 +13:00
Sam Hemelryk b1d4c42ad6 Merge branch 'MDL-28282-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2011-12-08 10:22:58 +13:00
Sam Hemelryk 7f96df6222 Merge branch 'MDL-28588-m22' of git://github.com/ankitagarwal/moodle into MOODLE_22_STABLE 2011-12-08 10:19:22 +13:00
Petr Skoda 73553ddbaa MDL-30623 fix password upgrade path from 1.9 2011-12-07 09:15:37 +01:00
Petr Skoda a6adddfb7d MDL-30623 fix null guest passwords in existing 2.2 sites 2011-12-07 09:15:37 +01:00
Petr Skoda f10ad2d4eb MDL-30623 make sure guest password field is not null 2011-12-07 09:15:36 +01:00
Rajesh Taneja e61eecacc8 MDL-30560 Forms Lib: 'type' key for repeat_elements is restored 2011-12-07 12:04:54 +08:00
Andrew Davis 924deffba6 MDL-30607 message: removed an if condition that prevented you from clearing an overrident email address 2011-12-07 12:04:47 +08:00
Andrew Davis de276c9216 MDL-28710 rating: added some more classes to the html for entering ratings 2011-12-07 11:54:10 +08:00
Andrew Davis aed70c6d40 MDL-27432 mod_data: improved handling of the absence of the GD php extension 2011-12-07 11:48:49 +08:00
Andrew Davis b11d6236df MDL-26522 grade: made the user selection drop down on the user report behave more sensibly 2011-12-07 11:42:44 +08:00
Charles Fulton 4921fb4c9f MDL-19147 - forum - Removed single discussions from the pull down menu for moving posts to different forums. 2011-12-07 14:21:21 +13:00
AMOS bot 6a8a17eb28 Automatically generated installer lang files 2011-12-07 00:31:18 +00:00
Charles Fulton c114ff92bb MDL-19147 - forum - Removed single discussions from the pull down menu for moving posts to different forums. 2011-12-07 12:39:56 +13:00
Ankit Kumar Agarwal a77b489d67 MDL-28588 Removing IN from SQL statments 2011-12-06 11:06:23 +05:30
Ankit Kumar Agarwal 9d7ce57ae3 MDL-28282 Scorm Restorting Groups support in Scorm reports 2011-12-06 09:59:26 +05:30
Sam Hemelryk 28a6552570 MDL-30582 navigation: Fixed regression in generation of front page modules 2011-12-06 13:34:27 +13:00
Sam Hemelryk 6f2d62d022 MDL-27767 install: Shows notifications rather than throwing exceptions when installation encounters unexpected id for guest or admin 2011-12-06 12:22:17 +13:00
Sam Hemelryk a9cc3954b9 MDL-30222 Fixed home page redirection madness. Thank you Julien Boulen for providing the solution 2011-12-06 12:08:32 +13:00
AMOS bot 2324ddd3d5 Automatically generated installer lang files 2011-12-05 18:36:41 +01:00
5884 changed files with 382861 additions and 510242 deletions
-1
View File
@@ -25,4 +25,3 @@ CVS
/.project
/.buildpath
/.cache
phpunit.xml
-160
View File
@@ -1,160 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This file is used to display a categories sub categories, external pages, and settings.
*
* @since 2.3
* @package admin
* @copyright 2011 Sam Hemelryk
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
$category = required_param('category', PARAM_SAFEDIR);
$return = optional_param('return','', PARAM_ALPHA);
$adminediting = optional_param('adminedit', -1, PARAM_BOOL);
/// no guest autologin
require_login(0, false);
$PAGE->set_context(get_context_instance(CONTEXT_SYSTEM));
$PAGE->set_url('/admin/category.php', array('category' => $category));
$PAGE->set_pagetype('admin-setting-' . $category);
$PAGE->set_pagelayout('admin');
$PAGE->navigation->clear_cache();
$adminroot = admin_get_root(); // need all settings
$settingspage = $adminroot->locate($category, true);
if (empty($settingspage) or !($settingspage instanceof admin_category)) {
print_error('categoryerror', 'admin', "$CFG->wwwroot/$CFG->admin/");
}
if (!($settingspage->check_access())) {
print_error('accessdenied', 'admin');
}
$statusmsg = '';
$errormsg = '';
if ($data = data_submitted() and confirm_sesskey()) {
if (admin_write_settings($data)) {
$statusmsg = get_string('changessaved');
}
if (empty($adminroot->errors)) {
switch ($return) {
case 'site': redirect("$CFG->wwwroot/");
case 'admin': redirect("$CFG->wwwroot/$CFG->admin/");
}
} else {
$errormsg = get_string('errorwithsettings', 'admin');
$firsterror = reset($adminroot->errors);
}
$adminroot = admin_get_root(true); //reload tree
$settingspage = $adminroot->locate($category, true);
}
if ($PAGE->user_allowed_editing() && $adminediting != -1) {
$USER->editing = $adminediting;
}
if ($PAGE->user_allowed_editing()) {
$url = clone($PAGE->url);
if ($PAGE->user_is_editing()) {
$caption = get_string('blockseditoff');
$url->param('adminedit', 'off');
} else {
$caption = get_string('blocksediton');
$url->param('adminedit', 'on');
}
$buttons = $OUTPUT->single_button($url, $caption, 'get');
}
$savebutton = false;
$outputhtml = '';
foreach ($settingspage->children as $childpage) {
if ($childpage->is_hidden()) {
continue;
}
if ($childpage instanceof admin_externalpage) {
$outputhtml .= $OUTPUT->heading(html_writer::link($childpage->url, $childpage->visiblename), 3);
} else if ($childpage instanceof admin_settingpage) {
$outputhtml .= $OUTPUT->heading(html_writer::link(new moodle_url('/'.$CFG->admin.'/settings.php', array('section' => $childpage->name)), $childpage->visiblename), 3);
} else if ($childpage instanceof admin_category) {
$outputhtml .= $OUTPUT->heading(html_writer::link(new moodle_url('/'.$CFG->admin.'/category.php', array('category' => $childpage->name)), get_string('admincategory', 'admin', $childpage->visiblename)), 3);
} else {
continue;
}
if (!empty($childpage->settings)) {
$outputhtml .= html_writer::start_tag('fieldset', array('class' => 'adminsettings'));
foreach ($childpage->settings as $setting) {
if (empty($setting->nosave)) {
$savebutton = true;
}
$fullname = $setting->get_full_name();
if (array_key_exists($fullname, $adminroot->errors)) {
$data = $adminroot->errors[$fullname]->data;
} else {
$data = $setting->get_setting();
}
$outputhtml .= html_writer::tag('div', '<!-- -->', array('class' => 'clearer'));
$outputhtml .= $setting->output_html($data);
}
$outputhtml .= html_writer::end_tag('fieldset');
}
}
if ($savebutton) {
$outputhtml .= html_writer::start_tag('div', array('class' => 'form-buttons'));
$outputhtml .= html_writer::empty_tag('input', array('class' => 'form-submit', 'type' => 'submit', 'value' => get_string('savechanges','admin')));
$outputhtml .= html_writer::end_tag('div');
}
$visiblepathtosection = array_reverse($settingspage->visiblepath);
$PAGE->set_title("$SITE->shortname: " . implode(": ",$visiblepathtosection));
$PAGE->set_heading($SITE->fullname);
$PAGE->set_button($buttons);
echo $OUTPUT->header();
if ($errormsg !== '') {
echo $OUTPUT->notification($errormsg);
} else if ($statusmsg !== '') {
echo $OUTPUT->notification($statusmsg, 'notifysuccess');
}
$path = array_reverse($settingspage->visiblepath);
if (is_array($path)) {
$visiblename = join(' / ', $path);
} else {
$visiblename = $path;
}
echo $OUTPUT->heading(get_string('admincategory', 'admin', $visiblename), 2);
echo html_writer::start_tag('form', array('action' => '', 'method' => 'post', 'id' => 'adminsettings'));
echo html_writer::start_tag('div');
echo html_writer::input_hidden_params(new moodle_url($PAGE->url, array('sesskey' => sesskey(), 'return' => $return)));
echo html_writer::end_tag('div');
echo html_writer::start_tag('fieldset');
echo html_writer::tag('div', '<!-- -->', array('class' => 'clearer'));
echo $outputhtml;
echo html_writer::end_tag('fieldset');
echo html_writer::end_tag('form');
echo $OUTPUT->footer();
+2 -5
View File
@@ -425,8 +425,7 @@ if (isset($maturity)) {
exit(1);
}
} else {
cli_problem(get_string('maturitycorewarning', 'admin', $maturitylevel));
cli_error(get_string('maturityallowunstable', 'admin'));
cli_error(get_string('maturitycorewarning', 'admin'));
}
}
}
@@ -678,9 +677,7 @@ if (!$envstatus) {
// Test plugin dependencies.
require_once($CFG->libdir . '/pluginlib.php');
$failed = array();
if (!plugin_manager::instance()->all_plugins_ok($version, $failed)) {
cli_problem(get_string('pluginscheckfailed', 'admin', array('pluginslist' => implode(', ', array_unique($failed)))));
if (!plugin_manager::instance()->all_plugins_ok($version)) {
cli_error(get_string('pluginschecktodo', 'admin'));
}
+1 -3
View File
@@ -161,9 +161,7 @@ if (!$envstatus) {
// Test plugin dependencies.
require_once($CFG->libdir . '/pluginlib.php');
$failed = array();
if (!plugin_manager::instance()->all_plugins_ok($version, $failed)) {
cli_problem(get_string('pluginscheckfailed', 'admin', array('pluginslist' => implode(', ', array_unique($failed)))));
if (!plugin_manager::instance()->all_plugins_ok($version)) {
cli_error(get_string('pluginschecktodo', 'admin'));
}
+211
View File
@@ -0,0 +1,211 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* MySQL collation conversion tool.
*
* @package core
* @copyright 2012 Petr Skoda (http://skodak.org)
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('CLI_SCRIPT', true);
require(dirname(dirname(dirname(__FILE__))).'/config.php');
require_once($CFG->libdir.'/clilib.php'); // cli only functions
if ($DB->get_dbfamily() !== 'mysql') {
cli_error('This function is designed for MySQL databases only!');
}
// now get cli options
list($options, $unrecognized) = cli_get_params(array('help'=>false, 'list'=>false, 'collation'=>false, 'available'=>false),
array('h'=>'help', 'l'=>'list', 'a'=>'available'));
if ($unrecognized) {
$unrecognized = implode("\n ", $unrecognized);
cli_error(get_string('cliunknowoption', 'admin', $unrecognized));
}
$help =
"MySQL collation conversions script.
It is strongly recommended to stop the web server before the conversion.
This script may be executed before the main upgrade - 1.9.x data for example.
Options:
--collation=COLLATION Convert MySQL tables to different collation
-l, --list Show table and column information
-a, --available Show list of available collations
-h, --help Print out this help
Example:
\$ sudo -u www-data /usr/bin/php admin/cli/mysql_collation.php --collation=utf8_general_ci
";
if (!empty($options['collation'])) {
$collations = mysql_get_collations();
$collation = clean_param($options['collation'], PARAM_ALPHANUMEXT);
$collation = strtolower($collation);
if (!isset($collations[$collation])) {
cli_error("Error: collation '$collation' is not available on this server!");
}
echo "Converting tables and columns to '$collation' for $CFG->wwwroot:\n";
$prefix = $DB->get_prefix();
$prefix = str_replace('_', '\\_', $prefix);
$sql = "SHOW TABLE STATUS WHERE Name LIKE BINARY '$prefix%'";
$rs = $DB->get_recordset_sql($sql);
$converted = 0;
$skipped = 0;
$errors = 0;
foreach ($rs as $table) {
echo str_pad($table->name, 40). " - ";
if ($table->collation === $collation) {
echo "NO CHANGE\n";
$skipped++;
} else {
$DB->change_database_structure("ALTER TABLE $table->name DEFAULT COLLATE = $collation");
echo "CONVERTED\n";
$converted++;
}
$sql = "SHOW FULL COLUMNS FROM $table->name WHERE collation IS NOT NULL";
$rs2 = $DB->get_recordset_sql($sql);
foreach ($rs2 as $column) {
$column = (object)array_change_key_case((array)$column, CASE_LOWER);
echo ' '.str_pad($column->field, 36). " - ";
if ($column->collation === $collation) {
echo "NO CHANGE\n";
$skipped++;
continue;
}
if ($column->type === 'tinytext' or $column->type === 'mediumtext' or $column->type === 'text' or $column->type === 'longtext') {
$notnull = ($column->null === 'NO') ? 'NOT NULL' : 'NULL';
$default = (!is_null($column->default) and $column->default !== '') ? "DEFAULT '$column->default'" : '';
// primary, unique and inc are not supported for texts
$sql = "ALTER TABLE $table->name MODIFY COLUMN $column->field $column->type COLLATE $collation $notnull $default";
$DB->change_database_structure($sql);
} else if (strpos($column->type, 'varchar') === 0) {
$notnull = ($column->null === 'NO') ? 'NOT NULL' : 'NULL';
$default = !is_null($column->default) ? "DEFAULT '$column->default'" : '';
// primary, unique and inc are not supported for texts
$sql = "ALTER TABLE $table->name MODIFY COLUMN $column->field $column->type COLLATE $collation $notnull $default";
$DB->change_database_structure($sql);
} else {
echo "ERROR (unknown column type: $column->type)\n";
$error++;
continue;
}
echo "CONVERTED\n";
$converted++;
}
$rs2->close();
}
$rs->close();
echo "Converted: $converted, skipped: $skipped, errors: $errors\n";
exit(0); // success
} else if (!empty($options['list'])) {
echo "List of tables for $CFG->wwwroot:\n";
$prefix = $DB->get_prefix();
$prefix = str_replace('_', '\\_', $prefix);
$sql = "SHOW TABLE STATUS WHERE Name LIKE BINARY '$prefix%'";
$rs = $DB->get_recordset_sql($sql);
$counts = array();
foreach ($rs as $table) {
if (isset($counts[$table->collation])) {
$counts[$table->collation]++;
} else {
$counts[$table->collation] = 1;
}
echo str_pad($table->name, 40);
echo $table->collation. "\n";
$collations = mysql_get_column_collations($table->name);
foreach ($collations as $columname=>$collation) {
if (isset($counts[$collation])) {
$counts[$collation]++;
} else {
$counts[$collation] = 1;
}
echo ' ';
echo str_pad($columname, 36);
echo $collation. "\n";
}
}
$rs->close();
echo "\n";
echo "Table collations summary for $CFG->wwwroot:\n";
foreach ($counts as $collation => $count) {
echo "$collation: $count\n";
}
exit(0); // success
} else if (!empty($options['available'])) {
echo "List of available MySQL collations for $CFG->wwwroot:\n";
$collations = mysql_get_collations();
foreach ($collations as $collation) {
echo " $collation\n";
}
die;
} else {
echo $help;
die;
}
// ========== Some functions ==============
function mysql_get_collations() {
global $DB;
$collations = array();
$sql = "SHOW COLLATION WHERE Collation LIKE 'utf8\_%' AND Charset = 'utf8'";
$rs = $DB->get_recordset_sql($sql);
foreach ($rs as $collation) {
$collations[$collation->collation] = $collation->collation;
}
$rs->close();
$collation = $DB->get_dbcollation();
if (isset($collations[$collation])) {
$collations[$collation] .= ' (default)';
}
return $collations;
}
function mysql_get_column_collations($tablename) {
global $DB;
$collations = array();
$sql = "SELECT column_name, collation_name
FROM INFORMATION_SCHEMA.COLUMNS
WHERE table_schema = DATABASE() AND table_name = ? AND collation_name IS NOT NULL";
$rs = $DB->get_recordset_sql($sql, array($tablename));
foreach($rs as $record) {
$collations[$record->column_name] = $record->collation_name;
}
$rs->close();
return $collations;
}
+8 -67
View File
@@ -34,8 +34,8 @@ if ($DB->get_dbfamily() !== 'mysql') {
}
// now get cli options
list($options, $unrecognized) = cli_get_params(array('help'=>false, 'list'=>false, 'engine'=>false, 'available'=>false),
array('h'=>'help', 'l'=>'list', 'a'=>'available'));
list($options, $unrecognized) = cli_get_params(array('help'=>false, 'list'=>false, 'engine'=>false),
array('h'=>'help', 'l'=>'list'));
if ($unrecognized) {
$unrecognized = implode("\n ", $unrecognized);
@@ -52,7 +52,6 @@ and does not support transactions.
Options:
--engine=ENGINE Convert MySQL tables to different engine
-l, --list Show table information
-a, --available Show list of available engines
-h, --help Print out this help
Example:
@@ -60,11 +59,7 @@ Example:
";
if (!empty($options['engine'])) {
$engines = mysql_get_engines();
$engine = clean_param($options['engine'], PARAM_ALPHA);
if (!isset($engines[strtoupper($engine)])) {
cli_error("Error: engine '$engine' is not available on this server!");
}
echo "Converting tables to '$engine' for $CFG->wwwroot:\n";
$prefix = $DB->get_prefix();
@@ -73,11 +68,9 @@ if (!empty($options['engine'])) {
$rs = $DB->get_recordset_sql($sql);
$converted = 0;
$skipped = 0;
$errors = 0;
foreach ($rs as $table) {
if (strtoupper($table->engine) === strtoupper($engine)) {
$newengine = mysql_get_table_engine($table->name);
echo str_pad($table->name, 40). " - NO CONVERSION NEEDED ($newengine)\n";
if ($table->engine === $engine) {
echo str_pad($table->name, 40). " - NO CONVERSION NEEDED\n";
$skipped++;
continue;
}
@@ -85,22 +78,16 @@ if (!empty($options['engine'])) {
try {
$DB->change_database_structure("ALTER TABLE {$table->name} ENGINE = $engine");
$newengine = mysql_get_table_engine($table->name);
if (strtoupper($newengine) !== strtoupper($engine)) {
echo "ERROR ($newengine)\n";
$errors++;
continue;
}
echo "DONE ($newengine)\n";
$converted++;
} catch (moodle_exception $e) {
echo $e->getMessage()."\n";
$errors++;
$skipped++;
continue;
}
echo "DONE\n";
$converted++;
}
$rs->close();
echo "Converted: $converted, skipped: $skipped, errors: $errors\n";
echo "Converted: $converted, skipped: $skipped\n";
exit(0); // success
} else if (!empty($options['list'])) {
@@ -128,53 +115,7 @@ if (!empty($options['engine'])) {
}
exit(0); // success
} else if (!empty($options['available'])) {
echo "List of available MySQL engines for $CFG->wwwroot:\n";
$engines = mysql_get_engines();
foreach ($engines as $engine) {
echo " $engine\n";
}
die;
} else {
echo $help;
die;
}
// ========== Some functions ==============
function mysql_get_engines() {
global $DB;
$sql = "SHOW Engines";
$rs = $DB->get_recordset_sql($sql);
$engines = array();
foreach ($rs as $engine) {
if (strtoupper($engine->support) !== 'YES' and strtoupper($engine->support) !== 'DEFAULT') {
continue;
}
$engines[strtoupper($engine->engine)] = $engine->engine;
if (strtoupper($engine->support) === 'DEFAULT') {
$engines[strtoupper($engine->engine)] .= ' (default)';
}
}
$rs->close();
return $engines;
}
function mysql_get_table_engine($tablename) {
global $DB;
$engine = null;
$sql = "SHOW TABLE STATUS WHERE Name = '$tablename'"; // no special chars expected here
$rs = $DB->get_recordset_sql($sql);
if ($rs->valid()) {
$record = $rs->current();
$engine = $record->engine;
}
$rs->close();
return $engine;
}
+3 -7
View File
@@ -82,7 +82,7 @@ if (empty($CFG->version)) {
cli_error(get_string('missingconfigversion', 'debug'));
}
require("$CFG->dirroot/version.php"); // defines $version, $release, $branch and $maturity
require("$CFG->dirroot/version.php"); // defines $version, $release and $maturity
$CFG->target_release = $release; // used during installation and upgrades
if ($version < $CFG->version) {
@@ -109,9 +109,7 @@ if (!$envstatus) {
}
// Test plugin dependencies.
$failed = array();
if (!plugin_manager::instance()->all_plugins_ok($version, $failed)) {
cli_problem(get_string('pluginscheckfailed', 'admin', array('pluginslist' => implode(', ', array_unique($failed)))));
if (!plugin_manager::instance()->all_plugins_ok($version)) {
cli_error(get_string('pluginschecktodo', 'admin'));
}
@@ -134,8 +132,7 @@ if (isset($maturity)) {
echo get_string('morehelp') . ': ' . get_docs_url('admin/versions') . PHP_EOL;
cli_separator();
} else {
cli_problem(get_string('maturitycorewarning', 'admin', $maturitylevel));
cli_error(get_string('maturityallowunstable', 'admin'));
cli_error(get_string('maturitycorewarning', 'admin', $maturitylevel));
}
}
}
@@ -153,7 +150,6 @@ if ($version > $CFG->version) {
upgrade_core($version, true);
}
set_config('release', $release);
set_config('branch', $branch);
// unconditionally upgrade
upgrade_noncore(true);
-3
View File
@@ -81,9 +81,6 @@ if (check_browser_version('MSIE')) {
@header('Content-Type: text/plain; charset=utf-8');
}
// we do not want html markup in emulated CLI
@ini_set('html_errors', 'off');
// execute the cron
cron_run();
+112 -6
View File
@@ -561,11 +561,6 @@
</DATABASE>
<PHP version="5.3.2" level="required">
</PHP>
<PCREUNICODE level="optional">
<FEEDBACK>
<ON_CHECK message="pcreunicodewarning" />
</FEEDBACK>
</PCREUNICODE>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
@@ -659,5 +654,116 @@
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
</MOODLE>
</MOODLE>
<MOODLE version="2.4" requires="2.2">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mysql" version="5.1.33" />
<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.2" />
<VENDOR name="sqlite" version="2.0" />
</DATABASE>
<PHP version="5.3.2" level="required">
</PHP>
<PHP_EXTENSIONS>
<PHP_EXTENSION name="iconv" level="required">
<FEEDBACK>
<ON_CHECK message="iconvrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="mbstring" level="optional">
<FEEDBACK>
<ON_CHECK message="mbstringrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="curl" level="required">
<FEEDBACK>
<ON_CHECK message="curlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="openssl" level="optional">
<FEEDBACK>
<ON_CHECK message="opensslrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="tokenizer" level="optional">
<FEEDBACK>
<ON_CHECK message="tokenizerrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="xmlrpc" level="optional">
<FEEDBACK>
<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" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="zip" level="required">
<FEEDBACK>
<ON_ERROR message="ziprequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="gd" level="optional">
<FEEDBACK>
<ON_CHECK message="gdrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="simplexml" level="required">
<FEEDBACK>
<ON_CHECK message="simplexmlrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="spl" level="required">
<FEEDBACK>
<ON_CHECK message="splrequired" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="pcre" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="dom" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="xml" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="intl" level="optional">
<FEEDBACK>
<ON_CHECK message="intlrecommended" />
</FEEDBACK>
</PHP_EXTENSION>
<PHP_EXTENSION name="json" level="required">
</PHP_EXTENSION>
<PHP_EXTENSION name="hash" level="required"/>
</PHP_EXTENSIONS>
<PHP_SETTINGS>
<PHP_SETTING name="memory_limit" value="40M" level="required">
<FEEDBACK>
<ON_ERROR message="settingmemorylimit" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="safe_mode" value="0" level="optional">
<FEEDBACK>
<ON_CHECK message="settingsafemode" />
</FEEDBACK>
</PHP_SETTING>
<PHP_SETTING name="file_uploads" value="1" level="optional">
<FEEDBACK>
<ON_CHECK message="settingfileuploads" />
</FEEDBACK>
</PHP_SETTING>
</PHP_SETTINGS>
</MOODLE>
</COMPATIBILITY_MATRIX>
+2
View File
@@ -242,6 +242,7 @@ function get_table_row($filterinfo, $isfirstrow, $islastactive, $applytostrings)
// Disable/off/on
$select = new single_select(filters_action_url($filter, 'setstate'), 'newstate', $activechoices, $filterinfo->active, null, 'active' . basename($filter));
$select->set_label(get_string('isactive', 'filters'), array('class' => 'accesshide'));
$row[] = $OUTPUT->render($select);
// Re-order
@@ -263,6 +264,7 @@ function get_table_row($filterinfo, $isfirstrow, $islastactive, $applytostrings)
// Apply to strings.
$select = new single_select(filters_action_url($filter, 'setapplyto'), 'stringstoo', $applytochoices, $applytostrings, null, 'applyto' . basename($filter));
$select->set_label(get_string('applyto', 'filters'), array('class' => 'accesshide'));
$select->disabled = $filterinfo->active == TEXTFILTER_DISABLED;
$row[] = $OUTPUT->render($select);
+17 -95
View File
@@ -44,13 +44,17 @@ if (!function_exists('iconv')) {
echo 'Moodle requires the iconv PHP extension. Please install or enable the iconv extension.';
die();
}
if (iconv('UTF-8', 'UTF-8//IGNORE', 'abc') !== 'abc') {
// known to be broken in mid-2011 MAMP installations
echo 'Broken iconv PHP extension detected, installation/upgrade can not continue.';
die();
}
define('NO_OUTPUT_BUFFERING', true);
require('../config.php');
require_once($CFG->libdir.'/adminlib.php'); // various admin-only functions
require_once($CFG->libdir.'/upgradelib.php'); // general upgrade/install related functions
require_once($CFG->libdir.'/pluginlib.php'); // available updates notifications
$id = optional_param('id', '', PARAM_TEXT);
$confirmupgrade = optional_param('confirmupgrade', 0, PARAM_BOOL);
@@ -58,7 +62,6 @@ $confirmrelease = optional_param('confirmrelease', 0, PARAM_BOOL);
$confirmplugins = optional_param('confirmplugincheck', 0, PARAM_BOOL);
$showallplugins = optional_param('showallplugins', 0, PARAM_BOOL);
$agreelicense = optional_param('agreelicense', 0, PARAM_BOOL);
$fetchupdates = optional_param('fetchupdates', 0, PARAM_BOOL);
// Check some PHP server settings
@@ -90,20 +93,21 @@ if (!isset($CFG->release)) {
if (!isset($CFG->version)) {
$CFG->version = '';
}
if (!isset($CFG->branch)) {
$CFG->branch = '';
}
$version = null;
$release = null;
$branch = null;
require("$CFG->dirroot/version.php"); // defines $version, $release, $branch and $maturity
require("$CFG->dirroot/version.php"); // defines $version, $release and $maturity
$CFG->target_release = $release; // used during installation and upgrades
if (!$version or !$release) {
print_error('withoutversion', 'debug'); // without version, stop
}
if (!isset($maturity)) {
// Fallback for now. Should probably be removed in the future.
$maturity = MATURITY_STABLE;
}
// Turn off xmlstrictheaders during upgrade.
$origxmlstrictheaders = !empty($CFG->xmlstrictheaders);
$CFG->xmlstrictheaders = false;
@@ -147,20 +151,6 @@ if (!core_tables_exist()) {
die();
}
// check plugin dependencies
$failed = array();
if (!plugin_manager::instance()->all_plugins_ok($version, $failed)) {
$PAGE->navbar->add(get_string('pluginscheck', 'admin'));
$PAGE->set_title($strinstallation);
$PAGE->set_heading($strinstallation . ' - Moodle ' . $CFG->target_release);
$output = $PAGE->get_renderer('core', 'admin');
$url = new moodle_url('/admin/index.php', array('agreelicense' => 1, 'confirmrelease' => 1, 'lang' => $CFG->lang));
echo $output->unsatisfied_dependencies_page($version, $failed, $url);
die();
}
unset($failed);
//TODO: add a page with list of non-standard plugins here
$strdatabasesetup = get_string('databasesetup');
@@ -200,17 +190,7 @@ if ($version > $CFG->version) { // upgrade
$PAGE->set_pagelayout('maintenance');
$PAGE->set_popup_notification_allowed(false);
if (upgrade_stale_php_files_present()) {
$PAGE->set_title($stradministration);
$PAGE->set_cacheable(false);
$output = $PAGE->get_renderer('core', 'admin');
echo $output->upgrade_stale_php_files_page();
die();
}
if (empty($confirmupgrade)) {
$a = new stdClass();
$a->oldversion = "$CFG->release ($CFG->version)";
$a->newversion = "$release ($version)";
$strdatabasechecking = get_string('databasechecking', '', $a);
@@ -245,28 +225,9 @@ if ($version > $CFG->version) { // upgrade
$PAGE->set_heading($strplugincheck);
$PAGE->set_cacheable(false);
$reloadurl = new moodle_url('/admin/index.php', array('confirmupgrade' => 1, 'confirmrelease' => 1));
// check plugin dependencies first
$failed = array();
if (!plugin_manager::instance()->all_plugins_ok($version, $failed)) {
$output = $PAGE->get_renderer('core', 'admin');
echo $output->unsatisfied_dependencies_page($version, $failed, $reloadurl);
die();
}
unset($failed);
if ($fetchupdates) {
// no sesskey support guaranteed here
if (empty($CFG->disableupdatenotifications)) {
available_update_checker::instance()->fetch();
}
redirect($reloadurl);
}
$output = $PAGE->get_renderer('core', 'admin');
echo $output->upgrade_plugin_check_page(plugin_manager::instance(), available_update_checker::instance(),
$version, $showallplugins, $reloadurl,
echo $output->upgrade_plugin_check_page(plugin_manager::instance(), $version, $showallplugins,
new moodle_url('/admin/index.php', array('confirmupgrade' => 1, 'confirmrelease' => 1)),
new moodle_url('/admin/index.php', array('confirmupgrade'=>1, 'confirmrelease'=>1, 'confirmplugincheck'=>1)));
die();
@@ -284,10 +245,6 @@ if ($release <> $CFG->release) { // Update the release version
set_config('release', $release);
}
if ($branch <> $CFG->branch) { // Update the branch
set_config('branch', $branch);
}
if (moodle_needs_upgrading()) {
if (!$PAGE->headerprinted) {
// means core upgrade or installation was not already done
@@ -301,26 +258,9 @@ if (moodle_needs_upgrading()) {
$PAGE->set_heading($strplugincheck);
$PAGE->set_cacheable(false);
if ($fetchupdates) {
// no sesskey support guaranteed here
available_update_checker::instance()->fetch();
redirect($PAGE->url);
}
$output = $PAGE->get_renderer('core', 'admin');
// check plugin dependencies first
$failed = array();
if (!plugin_manager::instance()->all_plugins_ok($version, $failed)) {
echo $output->unsatisfied_dependencies_page($version, $failed, $PAGE->url);
die();
}
unset($failed);
// dependencies check passed, let's rock!
echo $output->upgrade_plugin_check_page(plugin_manager::instance(), available_update_checker::instance(),
$version, $showallplugins,
new moodle_url($PAGE->url),
echo $output->upgrade_plugin_check_page(plugin_manager::instance(), $version, $showallplugins,
new moodle_url('/admin/index.php'),
new moodle_url('/admin/index.php', array('confirmplugincheck'=>1)));
die();
}
@@ -358,8 +298,7 @@ if (during_initial_install()) {
}
// at this stage there can be only one admin unless more were added by install - users may change username, so do not rely on that
$adminids = explode(',', $CFG->siteadmins);
$adminuser = get_complete_user_data('id', reset($adminids));
$adminuser = get_complete_user_data('id', reset(explode(',', $CFG->siteadmins)));
if ($adminuser->password === 'adminsetuppending') {
// prevent installation hijacking
@@ -424,24 +363,7 @@ $cronoverdue = ($lastcron < time() - 3600 * 24);
$dbproblems = $DB->diagnose();
$maintenancemode = !empty($CFG->maintenance_enabled);
$updateschecker = available_update_checker::instance();
$availableupdates = $updateschecker->get_update_info('core',
array('minmaturity' => $CFG->updateminmaturity, 'notifybuilds' => $CFG->updatenotifybuilds));
$availableupdatesfetch = $updateschecker->get_last_timefetched();
$buggyiconvnomb = (!function_exists('mb_convert_encoding') and @iconv('UTF-8', 'UTF-8//IGNORE', '100'.chr(130).'€') !== '100€');
//check if the site is registered on Moodle.org
$registered = $DB->count_records('registration_hubs', array('huburl' => HUB_MOODLEORGHUBURL, 'confirmed' => 1));
admin_externalpage_setup('adminnotifications');
if ($fetchupdates) {
require_sesskey();
$updateschecker->fetch();
redirect($PAGE->url);
}
$output = $PAGE->get_renderer('core', 'admin');
echo $output->admin_notifications_page($maturity, $insecuredataroot, $errorsdisplayed,
$cronoverdue, $dbproblems, $maintenancemode, $availableupdates, $availableupdatesfetch, $buggyiconvnomb,
$registered);
$cronoverdue, $dbproblems, $maintenancemode);
+3 -31
View File
@@ -34,10 +34,6 @@ require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
// Get the submitted params
$disable = optional_param('disable', 0, PARAM_INT);
$enable = optional_param('enable', 0, PARAM_INT);
$uninstall = optional_param('uninstall', 0, PARAM_INT);
$confirm = optional_param('confirm', false, PARAM_BOOL);
$headingtitle = get_string('managemessageoutputs', 'message');
if (!empty($disable) && confirm_sesskey()) {
if (!$processor = $DB->get_record('message_processors', array('id'=>$disable))) {
@@ -46,38 +42,14 @@ if (!empty($disable) && confirm_sesskey()) {
$DB->set_field('message_processors', 'enabled', '0', array('id'=>$processor->id)); // Disable output
}
if (!empty($enable) && confirm_sesskey()) {
if (!empty($enable) && confirm_sesskey() ) {
if (!$processor = $DB->get_record('message_processors', array('id'=>$enable))) {
print_error('outputdoesnotexist', 'message');
}
$DB->set_field('message_processors', 'enabled', '1', array('id'=>$processor->id)); // Enable output
}
if (!empty($uninstall) && confirm_sesskey()) {
echo $OUTPUT->header();
echo $OUTPUT->heading($headingtitle);
if (!$processor = $DB->get_record('message_processors', array('id'=>$uninstall))) {
print_error('outputdoesnotexist', 'message');
}
$processorname = get_string('pluginname', 'message_'.$processor->name);
if (!$confirm) {
echo $OUTPUT->confirm(get_string('processordeleteconfirm', 'message', $processorname), 'message.php?uninstall='.$processor->id.'&confirm=1', 'message.php');
echo $OUTPUT->footer();
exit;
} else {
message_processor_uninstall($processor->name);
$a = new stdClass();
$a->processor = $processorname;
$a->directory = $CFG->dirroot.'/message/output/'.$processor->name;
notice(get_string('processordeletefiles', 'message', $a), 'message.php');
}
}
if ($disable || $enable || $uninstall) {
if ($disable || $enable) {
$url = new moodle_url('message.php');
redirect($url);
}
@@ -93,6 +65,6 @@ $messageoutputs = $renderer->manage_messageoutputs($processors);
// Display the page
echo $OUTPUT->header();
echo $OUTPUT->heading($headingtitle);
echo $OUTPUT->heading(get_string('managemessageoutputs', 'message'));
echo $messageoutputs;
echo $OUTPUT->footer();
+5 -4
View File
@@ -103,7 +103,7 @@ if ($form = data_submitted() and confirm_sesskey()) {
$usernames = explode(',', $form->username);
foreach ($usernames as $username) {
$username = trim(textlib::strtolower($username));
$username = trim(moodle_strtolower($username));
if (!empty($username)) {
if (mnet_update_sso_access_control($username, $form->mnet_host_id, $form->accessctrl)) {
if ($form->accessctrl == 'allow') {
@@ -203,17 +203,18 @@ echo get_string('username') . ":\n";
if (!empty($formerror['username'])) {
echo '<span class="error"> * </span>';
}
echo '<input type="text" name="username" size="20" maxlength="100" />';
echo html_writer::label(get_string('username'), 'menuusername', false, array('class' => 'accesshide'));
echo '<input id="menuusername" type="text" name="username" size="20" maxlength="100" />';
// choose a remote host
echo " " . get_string('remotehost', 'mnet') . ":\n";
echo " " . html_writer::label(get_string('remotehost', 'mnet'), 'menumnet_host_id') . ":\n";
if (!empty($formerror['mnet_host_id'])) {
echo '<span class="error"> * </span>';
}
echo html_writer::select($mnethosts, 'mnet_host_id');
// choose an access level
echo " " . get_string('accesslevel', 'mnet') . ":\n";
echo " " . html_writer::label(get_string('accesslevel', 'mnet'), 'menuaccessctrl') . ":\n";
if (!empty($formerror['accessctrl'])) {
echo '<span class="error"> * </span>';
}
+3 -3
View File
@@ -141,10 +141,10 @@ class mnet_review_host_form extends moodleform {
if ($mnet_peer && !empty($mnet_peer->deleted)) {
$radioarray = array();
$radioarray[] = $mform->createElement('static', 'deletedinfo', '',
$radioarray[] = MoodleQuickForm::createElement('static', 'deletedinfo', '',
$OUTPUT->container(get_string('deletedhostinfo', 'mnet'), 'deletedhostinfo'));
$radioarray[] = $mform->createElement('radio', 'deleted', '', get_string('yes'), 1);
$radioarray[] = $mform->createElement('radio', 'deleted', '', get_string('no'), 0);
$radioarray[] = MoodleQuickForm::createElement('radio', 'deleted', '', get_string('yes'), 1);
$radioarray[] = MoodleQuickForm::createElement('radio', 'deleted', '', get_string('no'), 0);
$mform->addGroup($radioarray, 'radioar', get_string('deleted'), array(' ', ' '), false);
} else {
$mform->addElement('hidden', 'deleted');
+1 -1
View File
@@ -30,7 +30,7 @@
require_once(dirname(dirname(dirname(__FILE__))) . '/config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->dirroot.'/mnet/lib.php');
require_once($CFG->dirroot.'/admin/mnet/peer_forms.php');
require_once($CFG->dirroot.'/'.$CFG->admin.'/mnet/peer_forms.php');
require_login();
-46
View File
@@ -1,46 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* An oauth2 redirection endpoint which can be used for an application:
* http://tools.ietf.org/html/draft-ietf-oauth-v2-26#section-3.1.2
*
* This is used because some oauth servers will not allow a redirect urls
* with get params (like repository callback) and that needs to be called
* using the state param.
*
* @package core
* @copyright 2012 Dan Poltawski
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(dirname(__FILE__)).'/config.php');
// The authorization code generated by the authorization server.
$code = required_param('code', PARAM_RAW);
// The state parameter we've given (used in moodle as a redirect url).
$state = required_param('state', PARAM_LOCALURL);
$redirecturl = new moodle_url($state);
$params = $redirecturl->params();
if (isset($params['sesskey']) and confirm_sesskey($params['sesskey'])) {
$redirecturl->param('oauth2code', $code);
redirect($redirecturl);
} else {
print_error('invalidsesskey');
}
+1 -13
View File
@@ -30,17 +30,5 @@ require_once($CFG->libdir . '/pluginlib.php');
require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
admin_externalpage_setup('pluginsoverview');
$fetchremote = optional_param('fetchremote', false, PARAM_BOOL);
$pluginman = plugin_manager::instance();
$checker = available_update_checker::instance();
if ($fetchremote) {
require_sesskey();
$checker->fetch();
redirect($PAGE->url);
}
$output = $PAGE->get_renderer('core', 'admin');
echo $output->plugin_management_page($pluginman, $checker);
echo $output->plugin_management_page(plugin_manager::instance());
+2
View File
@@ -197,6 +197,7 @@ if (($action == 'edit') || ($action == 'new')) {
$currentaction = 'hide';
}
$select = new single_select(portfolio_action_url($pluginid, 'pf'), 'action', $actionchoicesforexisting, $currentaction, null, 'applyto' . $pluginid);
$select->set_label(get_string('action'), array('class' => 'accesshide'));
$table->data[] = array($pluginname, $OUTPUT->render($select), $settings);
}
if (!in_array($plugin, $usedplugins)) {
@@ -218,6 +219,7 @@ if (($action == 'edit') || ($action == 'new')) {
$insaneplugins[] = $p;
} else {
$select = new single_select(portfolio_action_url($p, 'pf'), 'action', $actionchoicesfornew, 'delete', null, 'applyto' . $p);
$select->set_label(get_string('action'), array('class' => 'accesshide'));
$table->data[] = array(portfolio_static_function($p, 'get_name'), $OUTPUT->render($select), '');
}
}
+1 -1
View File
@@ -44,7 +44,7 @@ $hubname = optional_param('hubname', '', PARAM_TEXT);
$token = optional_param('token', '', PARAM_TEXT);
$error = optional_param('error', '', PARAM_ALPHANUM);
admin_externalpage_setup('registrationhubs');
admin_externalpage_setup('registrationindex');
if (!empty($error) and $error == 'urlalreadyexist') {
throw new moodle_exception('urlalreadyregistered', 'hub',
+13 -15
View File
@@ -236,7 +236,6 @@ class site_registration_form extends moodleform {
$geolocation = get_config('hub', 'site_geolocation_' . $cleanhuburl);
$contactable = get_config('hub', 'site_contactable_' . $cleanhuburl);
$emailalert = get_config('hub', 'site_emailalert_' . $cleanhuburl);
$emailalert = ($emailalert === 0) ? 0 : 1;
$coursesnumber = get_config('hub', 'site_coursesnumber_' . $cleanhuburl);
$usersnumber = get_config('hub', 'site_usersnumber_' . $cleanhuburl);
$roleassignmentsnumber = get_config('hub', 'site_roleassignmentsnumber_' . $cleanhuburl);
@@ -280,6 +279,9 @@ class site_registration_form extends moodleform {
$mform->setType('description', PARAM_TEXT);
$mform->addHelpButton('description', 'sitedesc', 'hub');
$mform->addElement('static', 'urlstring', get_string('siteurl', 'hub'), $CFG->wwwroot);
$mform->addHelpButton('urlstring', 'siteurl', 'hub');
$languages = get_string_manager()->get_list_of_languages();
collatorlib::asort($languages);
$mform->addElement('select', 'language', get_string('sitelang', 'hub'),
@@ -288,6 +290,16 @@ class site_registration_form extends moodleform {
$mform->addHelpButton('language', 'sitelang', 'hub');
$mform->setDefault('language', $language);
$mform->addElement('static', 'versionstring', get_string('siteversion', 'hub'), $CFG->version);
$mform->addElement('hidden', 'moodleversion', $CFG->version);
$mform->setType('moodleversion', PARAM_INT);
$mform->addHelpButton('versionstring', 'siteversion', 'hub');
$mform->addElement('static', 'releasestring', get_string('siterelease', 'hub'), $CFG->release);
$mform->addElement('hidden', 'moodlerelease', $CFG->release);
$mform->setType('moodlerelease', PARAM_TEXT);
$mform->addHelpButton('releasestring', 'siterelease', 'hub');
$mform->addElement('textarea', 'address', get_string('postaladdress', 'hub'),
array('rows' => 4, 'cols' => 41));
$mform->setType('address', PARAM_TEXT);
@@ -348,20 +360,6 @@ class site_registration_form extends moodleform {
//TODO site logo
$mform->addElement('hidden', 'imageurl', ''); //TODO: temporary
$mform->setType('imageurl', PARAM_URL);
$mform->addElement('static', 'urlstring', get_string('siteurl', 'hub'), $CFG->wwwroot);
$mform->addHelpButton('urlstring', 'siteurl', 'hub');
$mform->addElement('static', 'versionstring', get_string('siteversion', 'hub'), $CFG->version);
$mform->addElement('hidden', 'moodleversion', $CFG->version);
$mform->setType('moodleversion', PARAM_INT);
$mform->addHelpButton('versionstring', 'siteversion', 'hub');
$mform->addElement('static', 'releasestring', get_string('siterelease', 'hub'), $CFG->release);
$mform->addElement('hidden', 'moodlerelease', $CFG->release);
$mform->setType('moodlerelease', PARAM_TEXT);
$mform->addHelpButton('releasestring', 'siterelease', 'hub');
/// Display statistic that are going to be retrieve by the hub
$coursecount = $DB->count_records('course') - 1;
$usercount = $DB->count_records('user', array('deleted' => 0));
+68
View File
@@ -0,0 +1,68 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/*
* @package moodle
* @subpackage registration
* @author Jerome Mouneyrac <jerome@mouneyrac.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL
* @copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com
*
* Thsi page displays a hub selector or a hub URL + password. Then it will redirect to
* the site registration form (with the selected hub as parameter)
*/
require('../../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->dirroot.'/' . $CFG->admin . '/registration/forms.php');
admin_externalpage_setup('registrationselector');
$hubselectorform = new hub_selector_form();
$fromform = $hubselectorform->get_data();
//// Redirect to the registration form if an URL has been choosen ////
$selectedhuburl = optional_param('publichub', false, PARAM_URL);
$unlistedhuburl = optional_param('unlistedurl', false, PARAM_TEXT);
$password = optional_param('password', '', PARAM_RAW);
if (!empty($unlistedhuburl)) {
if (clean_param($unlistedhuburl, PARAM_URL) !== '') {
$huburl = $unlistedhuburl;
}
} else if (!empty($selectedhuburl)) {
$huburl = $selectedhuburl;
}
//redirect
if (!empty($huburl) and confirm_sesskey()) {
$hubname = optional_param(clean_param($huburl, PARAM_ALPHANUMEXT), '', PARAM_TEXT);
$params = array('sesskey' => sesskey(), 'huburl' => $huburl,
'password' => $password, 'hubname' => $hubname);
redirect(new moodle_url($CFG->wwwroot."/" . $CFG->admin . "/registration/register.php",
$params));
}
//// OUTPUT ////
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('registeron', 'hub'), 3, 'main');
$hubselectorform->display();
echo $OUTPUT->footer();
+11 -56
View File
@@ -22,9 +22,8 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL
* @copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com
*
* On this page the administrator selects which hub he wants to register,
* except for MOOCH. Admins can register with MOOCH with the top admin menu "Registration" link.
* On this page the administrator can also unregister from any hubs, including MOOCH.
* On this page the administrator select if he wants to register on Moodle.org or
* a specific hub
*/
require('../../config.php');
@@ -35,7 +34,7 @@ require_once($CFG->dirroot . '/' . $CFG->admin . '/registration/forms.php');
require_once($CFG->dirroot . '/course/publish/lib.php');
require_once($CFG->dirroot . "/webservice/xmlrpc/lib.php");
admin_externalpage_setup('registrationhubs');
admin_externalpage_setup('registrationindex');
$renderer = $PAGE->get_renderer('core', 'register');
@@ -127,15 +126,13 @@ if (empty($cancel) and $unregistration and $confirm and confirm_sesskey()) {
}
}
echo $OUTPUT->header();
//do not check sesskey if confirm = false because this script is linked into email message
if (!empty($errormessage)) {
echo $OUTPUT->notification(get_string('unregistrationerror', 'hub', $errormessage));
}
if (empty($cancel) and $unregistration and !$confirm) {
echo $OUTPUT->header();
//do not check sesskey if confirm = false because this script is linked into email message
if (!empty($errormessage)) {
echo $OUTPUT->notification(get_string('unregistrationerror', 'hub', $errormessage));
}
$hub = $registrationmanager->get_registeredhub($huburl);
echo $OUTPUT->heading(get_string('unregisterfrom', 'hub', $hub->hubname), 3, 'main');
if ($cleanregdata) {
@@ -145,7 +142,6 @@ if (empty($cancel) and $unregistration and !$confirm) {
$siteunregistrationform = new site_unregistration_form('',
array('huburl' => $huburl, 'hubname' => $hub->hubname));
}
$siteunregistrationform->display();
} else {
$registeredonmoodleorg = false;
@@ -154,49 +150,8 @@ if (empty($cancel) and $unregistration and !$confirm) {
$registeredonmoodleorg = true;
}
// load the hub selector form
$hubselectorform = new hub_selector_form();
$fromform = $hubselectorform->get_data();
$selectedhuburl = optional_param('publichub', false, PARAM_URL);
$unlistedhuburl = optional_param('unlistedurl', false, PARAM_TEXT);
$password = optional_param('password', '', PARAM_RAW);
$registeringhuburl = null;
if (!empty($unlistedhuburl)) {
if (clean_param($unlistedhuburl, PARAM_URL) !== '') {
$registeringhuburl = $unlistedhuburl;
}
} else if (!empty($selectedhuburl)) {
$registeringhuburl = $selectedhuburl;
}
// a hub has been selected, redirect to the hub registration page
if (empty($cancel) and !empty($registeringhuburl) and confirm_sesskey()) {
$hubname = optional_param(clean_param($registeringhuburl, PARAM_ALPHANUMEXT), '', PARAM_TEXT);
$params = array('sesskey' => sesskey(), 'huburl' => $registeringhuburl,
'password' => $password, 'hubname' => $hubname);
redirect(new moodle_url($CFG->wwwroot . "/" . $CFG->admin . "/registration/register.php",
$params));
}
echo $OUTPUT->header();
//check if the site is registered on Moodle.org and display a message about registering on MOOCH
$registered = $DB->count_records('registration_hubs', array('huburl' => HUB_MOODLEORGHUBURL, 'confirmed' => 1));
if (empty($registered)) {
$warningmsg = get_string('registermoochtips', 'hub');
$warningmsg .= $renderer->single_button(new moodle_url('register.php', array('huburl' => HUB_MOODLEORGHUBURL
, 'hubname' => 'Moodle.org')), get_string('register', 'admin'));
echo $renderer->box($warningmsg, 'buttons mdl-align generalbox adminwarning');
}
//do not check sesskey if confirm = false because this script is linked into email message
if (!empty($errormessage)) {
echo $OUTPUT->notification(get_string('unregistrationerror', 'hub', $errormessage));
}
echo $OUTPUT->heading(get_string('registerwith', 'hub'));
$hubselectorform->display();
echo $OUTPUT->heading(get_string('registeron', 'hub'), 3, 'main');
echo $renderer->registrationselector($registeredonmoodleorg);
if (extension_loaded('xmlrpc')) {
$hubs = $registrationmanager->get_registered_on_hubs();
+6 -15
View File
@@ -27,7 +27,7 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL
* @copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com
*
* This page displays the site registration form for Moodle.org/MOOCH or for a different hub.
* This page displays the site registration form.
* It handles redirection to the hub to continue the registration workflow process.
* It also handles update operation by web service.
*/
@@ -39,17 +39,15 @@ require_once($CFG->dirroot . '/' . $CFG->admin . '/registration/forms.php');
require_once($CFG->dirroot . '/webservice/lib.php');
require_once($CFG->dirroot . '/' . $CFG->admin . '/registration/lib.php');
admin_externalpage_setup('registrationindex');
$huburl = required_param('huburl', PARAM_URL);
$huburl = rtrim($huburl, "/");
if ($huburl == HUB_MOODLEORGHUBURL) { // register to Moodle.org
admin_externalpage_setup('registrationmoodleorg');
} else { //register to a hub
admin_externalpage_setup('registrationhub');
}
$password = optional_param('password', '', PARAM_TEXT);
$hubname = optional_param('hubname', '', PARAM_TEXT);
if (!confirm_sesskey()) {
throw new moodle_exception('missingparameter');
}
$registrationmanager = new registration_manager();
@@ -147,12 +145,5 @@ if (!empty($error)) {
echo $error;
}
//some Moodle.org resitration explanation
if ($huburl == HUB_MOODLEORGHUBURL) {
echo $OUTPUT->heading(get_string('registerwithmoodleorg', 'admin'));
$renderer = $PAGE->get_renderer('core', 'register');
echo $renderer->moodleorg_registration_message();
}
$siteregistrationform->display();
echo $OUTPUT->footer();
+51 -17
View File
@@ -30,23 +30,6 @@
*/
class core_register_renderer extends plugin_renderer_base {
/**
* Display Moodle.org registration message about benefit to register on Moodle.org
*
* @return string
*/
public function moodleorg_registration_message() {
$moodleorgurl = html_writer::link('http://moodle.org', 'Moodle.org');
$moodleorgstatsurl = html_writer::link('http://moodle.org/stats', get_string('statsmoodleorg', 'admin'));
$moochurl = html_writer::link(HUB_MOODLEORGHUBURL, 'MOOCH');
$moodleorgregmsg = get_string('registermoodleorg', 'admin', $moodleorgurl);
$items = array(get_string('registermoodleorgli1', 'admin'),
get_string('registermoodleorgli2', 'admin', $moodleorgstatsurl),
get_string('registermoodleorgli3', 'admin', $moochurl));
$moodleorgregmsg .= html_writer::alist($items);
return $moodleorgregmsg;
}
/**
* Display a box message confirming a site registration (add or update)
* @param string $confirmationmessage
@@ -59,6 +42,57 @@ class core_register_renderer extends plugin_renderer_base {
return $this->output->box($message);
}
/**
* Display the page to register on Moodle.org or on a specific hub
*/
public function registrationselector($updatemoodleorg = false) {
global $CFG;
$table = new html_table();
$table->head = array(get_string('moodleorg', 'hub'), get_string('specifichub', 'hub'));
$table->size = array('50%', '50%');
//$table->attributes['class'] = 'registerindextable';
//Moodle.org information cell
$moodleorgcell = get_string('moodleorgregistrationdetail', 'hub');
$moodleorgcell .= html_writer::empty_tag('br') . html_writer::empty_tag('br');
$moodleorgcell = html_writer::tag('div', $moodleorgcell, array('class' => 'justifytext'));
//Specific hub information cell
$specifichubcell = get_string('specifichubregistrationdetail', 'hub');
$specifichubcell .= html_writer::empty_tag('br') . html_writer::empty_tag('br');
$specifichubcell = html_writer::tag('div', $specifichubcell, array('class' => 'justifytext'));
//add information cells
$cells = array($moodleorgcell, $specifichubcell);
$row = new html_table_row($cells);
$table->data[] = $row;
//Moodle.org button cell
$registeronmoodleorgurl = new moodle_url("/" . $CFG->admin . "/registration/register.php",
array('sesskey' => sesskey(), 'huburl' => HUB_MOODLEORGHUBURL
, 'hubname' => 'Moodle.org'));
$registeronmoodleorgbutton = new single_button($registeronmoodleorgurl,
$updatemoodleorg ? get_string('updatesite', 'hub', 'Moodle.org') : get_string('registeronmoodleorg', 'hub'));
$registeronmoodleorgbutton->class = 'centeredbutton';
$registeronmoodleorgbuttonhtml = $this->output->render($registeronmoodleorgbutton);
$moodleorgcell = $registeronmoodleorgbuttonhtml;
//Specific hub button cell
$registeronspecifichuburl = new moodle_url("/" . $CFG->admin . "/registration/hubselector.php",
array('sesskey' => sesskey()));
$registeronspecifichubbutton = new single_button($registeronspecifichuburl,
get_string('registeronspecifichub', 'hub'));
$registeronspecifichubbutton->class = 'centeredbutton';
$registeronspecifichubbuttonhtml = $this->output->render($registeronspecifichubbutton);
$specifichubcell = $registeronspecifichubbuttonhtml;
//add button cells
$cells = array($moodleorgcell, $specifichubcell);
$row = new html_table_row($cells);
$table->data[] = $row;
return html_writer::table($table);
}
/**
* Display the listing of registered on hub
*/
+1 -1
View File
@@ -39,7 +39,7 @@ $url = optional_param('url', '', PARAM_URL);
$hubname = optional_param('hubname', '', PARAM_TEXT);
$token = optional_param('token', '', PARAM_TEXT);
admin_externalpage_setup('registrationhubs');
admin_externalpage_setup('registrationindex');
//check that we are waiting a confirmation from this hub, and check that the token is correct
$registrationmanager = new registration_manager();
+50 -366
View File
@@ -57,26 +57,6 @@ class core_admin_renderer extends plugin_renderer_base {
return $output;
}
/**
* Display page explaining proper upgrade process,
* there can not be any PHP file leftovers...
*
* @return string HTML to output.
*/
public function upgrade_stale_php_files_page() {
$output = '';
$output .= $this->header();
$output .= $this->heading(get_string('upgradestalefiles', 'admin'));
$output .= $this->box_start('generalbox', 'notice');
$output .= get_string('upgradestalefilesinfo', 'admin', get_docs_url('Upgrading'));
$output .= html_writer::empty_tag('br');
$output .= html_writer::tag('div', $this->single_button($this->page->url, get_string('reload'), 'get'), array('class' => 'buttons'));
$output .= $this->box_end();
$output .= $this->footer();
return $output;
}
/**
* Display the 'environment check' page that is displayed during install.
* @param int $maturity
@@ -107,29 +87,6 @@ class core_admin_renderer extends plugin_renderer_base {
return $output;
}
/**
* Displays the list of plugins with unsatisfied dependencies
*
* @param double|string|int $version Moodle on-disk version
* @param array $failed list of plugins with unsatisfied dependecies
* @param moodle_url $reloadurl URL of the page to recheck the dependencies
* @return string HTML
*/
public function unsatisfied_dependencies_page($version, array $failed, moodle_url $reloadurl) {
$output = '';
$output .= $this->header();
$output .= $this->heading(get_string('pluginscheck', 'admin'));
$output .= $this->warning(get_string('pluginscheckfailed', 'admin', array('pluginslist' => implode(', ', array_unique($failed)))));
$output .= $this->plugins_check_table(plugin_manager::instance(), $version, array('xdep' => true));
$output .= $this->warning(get_string('pluginschecktodo', 'admin'));
$output .= $this->continue_button($reloadurl);
$output .= $this->footer();
return $output;
}
/**
* Display the 'You are about to upgrade Moodle' page. The first page
* during upgrade.
@@ -188,47 +145,30 @@ class core_admin_renderer extends plugin_renderer_base {
/**
* Display the upgrade page that lists all the plugins that require attention.
* @param plugin_manager $pluginman provides information about the plugins.
* @param available_update_checker $checker provides information about available updates.
* @param int $version the version of the Moodle code from version.php.
* @param bool $showallplugins
* @param moodle_url $reloadurl
* @param moodle_url $continueurl
* @return string HTML to output.
*/
public function upgrade_plugin_check_page(plugin_manager $pluginman, available_update_checker $checker,
$version, $showallplugins, $reloadurl, $continueurl) {
global $CFG;
public function upgrade_plugin_check_page(plugin_manager $pluginman, $version, $showallplugins, $reloadurl, $continueurl) {
$output = '';
$output .= $this->header();
$output .= $this->box_start('generalbox');
$output .= $this->container_start('generalbox', 'notice');
$output .= html_writer::tag('p', get_string('pluginchecknotice', 'core_plugin'));
if (empty($CFG->disableupdatenotifications)) {
$output .= $this->container_start('checkforupdates');
$output .= $this->single_button(new moodle_url($reloadurl, array('fetchupdates' => 1)), get_string('checkforupdates', 'core_plugin'));
if ($timefetched = $checker->get_last_timefetched()) {
$output .= $this->container(get_string('checkforupdateslast', 'core_plugin',
userdate($timefetched, get_string('strftimedatetime', 'core_langconfig'))));
}
$output .= $this->container_end();
}
$output .= $this->container_end();
$output .= $this->container(get_string('pluginchecknotice', 'core_plugin'), 'generalbox', 'notice');
$output .= $this->plugins_check_table($pluginman, $version, array('full' => $showallplugins));
$output .= $this->box_end();
$output .= $this->upgrade_reload($reloadurl);
if ($pluginman->some_plugins_updatable()) {
$output .= $this->container_start('upgradepluginsinfo');
$output .= $this->help_icon('upgradepluginsinfo', 'core_admin', get_string('upgradepluginsfirst', 'core_admin'));
$output .= $this->container_end();
if ($pluginman->all_plugins_ok($version)) {
$button = new single_button($continueurl, get_string('upgradestart', 'admin'), 'get');
$button->class = 'continuebutton';
$output .= $this->render($button);
} else {
$output .= $this->box(get_string('pluginschecktodo', 'admin'), 'environmentbox errorbox');
}
$button = new single_button($continueurl, get_string('upgradestart', 'admin'), 'get');
$button->class = 'continuebutton';
$output .= $this->render($button);
$output .= $this->footer();
return $output;
@@ -242,28 +182,19 @@ class core_admin_renderer extends plugin_renderer_base {
* @param bool $cronoverdue warn cron not running
* @param bool $dbproblems warn db has problems
* @param bool $maintenancemode warn in maintenance mode
* @param bool $buggyiconvnomb warn iconv problems
* @param array|null $availableupdates array of available_update_info objects or null
* @param int|null $availableupdatesfetch timestamp of the most recent updates fetch or null (unknown)
*
* @return string HTML to output.
*/
public function admin_notifications_page($maturity, $insecuredataroot, $errorsdisplayed,
$cronoverdue, $dbproblems, $maintenancemode, $availableupdates, $availableupdatesfetch,
$buggyiconvnomb, $registered) {
global $CFG;
$cronoverdue, $dbproblems, $maintenancemode) {
$output = '';
$output .= $this->header();
$output .= $this->maturity_info($maturity);
$output .= empty($CFG->disableupdatenotifications) ? $this->available_updates($availableupdates, $availableupdatesfetch) : '';
$output .= $this->insecure_dataroot_warning($insecuredataroot);
$output .= $this->display_errors_warning($errorsdisplayed);
$output .= $this->buggy_iconv_warning($buggyiconvnomb);
$output .= $this->cron_overdue_warning($cronoverdue);
$output .= $this->db_problems($dbproblems);
$output .= $this->maintenance_mode_warning($maintenancemode);
$output .= $this->registration_warning($registered);
//////////////////////////////////////////////////////////////////////////////////////////////////
//// IT IS ILLEGAL AND A VIOLATION OF THE GPL TO HIDE, REMOVE OR MODIFY THIS COPYRIGHT NOTICE ///
@@ -277,31 +208,17 @@ class core_admin_renderer extends plugin_renderer_base {
/**
* Display the plugin management page (admin/plugins.php).
*
* @param plugin_manager $pluginman
* @param available_update_checker $checker
* @return string HTML to output.
*/
public function plugin_management_page(plugin_manager $pluginman, available_update_checker $checker) {
global $CFG;
public function plugin_management_page(plugin_manager $pluginman) {
$output = '';
$output .= $this->header();
$output .= $this->heading(get_string('pluginsoverview', 'core_admin'));
$output .= $this->plugins_overview_panel($pluginman);
if (empty($CFG->disableupdatenotifications)) {
$output .= $this->container_start('checkforupdates');
$output .= $this->single_button(new moodle_url($this->page->url, array('fetchremote' => 1)), get_string('checkforupdates', 'core_plugin'));
if ($timefetched = $checker->get_last_timefetched()) {
$output .= $this->container(get_string('checkforupdateslast', 'core_plugin',
userdate($timefetched, get_string('strftimedatetime', 'core_langconfig'))));
}
$output .= $this->container_end();
}
$output .= $this->box($this->plugins_control_panel($pluginman), 'generalbox');
$output .= $this->box_start('generalbox');
$output .= $this->plugins_control_panel($pluginman);
$output .= $this->box_end();
$output .= $this->footer();
return $output;
@@ -385,19 +302,6 @@ class core_admin_renderer extends plugin_renderer_base {
return $this->warning(get_string('displayerrorswarning', 'admin'));
}
/**
* Render an appropriate message if iconv is buggy and mbstring missing.
* @param bool $buggyiconvnomb
* @return string HTML to output.
*/
protected function buggy_iconv_warning($buggyiconvnomb) {
if (!$buggyiconvnomb) {
return '';
}
return $this->warning(get_string('warningiconvbuggy', 'admin'));
}
/**
* Render an appropriate message if cron has not been run recently.
* @param bool $cronoverdue
@@ -491,105 +395,7 @@ class core_admin_renderer extends plugin_renderer_base {
return $this->box(
get_string('maturitycoreinfo', 'admin', $maturitylevel) . ' ' .
$this->doc_link('admin/versions', get_string('morehelp')),
'generalbox adminwarning maturityinfo maturity'.$maturity);
}
/**
* Displays the info about available Moodle updates
*
* @param array|null $updates array of available_update_info objects or null
* @param int|null $fetch timestamp of the most recent updates fetch or null (unknown)
* @return string
*/
protected function available_updates($updates, $fetch) {
$updateinfo = $this->box_start('generalbox adminwarning availableupdatesinfo');
if (is_array($updates)) {
$updateinfo .= $this->heading(get_string('updateavailable', 'core_admin'), 3);
foreach ($updates as $update) {
$updateinfo .= $this->moodle_available_update_info($update);
}
} else {
$now = time();
if ($fetch and ($fetch <= $now) and ($now - $fetch < HOURSECS)) {
$updateinfo .= $this->heading(get_string('updateavailablenot', 'core_admin'), 3);
}
}
$updateinfo .= $this->container_start('checkforupdates');
$updateinfo .= $this->single_button(new moodle_url($this->page->url, array('fetchupdates' => 1)), get_string('checkforupdates', 'core_plugin'));
if ($fetch) {
$updateinfo .= $this->container(get_string('checkforupdateslast', 'core_plugin',
userdate($fetch, get_string('strftimedatetime', 'core_langconfig'))));
}
$updateinfo .= $this->container_end();
$updateinfo .= $this->box_end();
return $updateinfo;
}
/**
* Display a warning about not being registered on Moodle.org if necesary.
*
* @param boolean $registered true if the site is registered on Moodle.org
* @return string HTML to output.
*/
protected function registration_warning($registered) {
if (!$registered) {
$registerbutton = $this->single_button(new moodle_url('registration/register.php',
array('huburl' => HUB_MOODLEORGHUBURL, 'hubname' => 'Moodle.org')),
get_string('register', 'admin'));
return $this->warning( get_string('registrationwarning', 'admin')
. '&nbsp;' . $this->help_icon('registration', 'admin') . $registerbutton );
}
return '';
}
/**
* Helper method to render the information about the available Moodle update
*
* @param available_update_info $updateinfo information about the available Moodle core update
*/
protected function moodle_available_update_info(available_update_info $updateinfo) {
$boxclasses = 'moodleupdateinfo';
$info = array();
if (isset($updateinfo->release)) {
$info[] = html_writer::tag('span', get_string('updateavailable_release', 'core_admin', $updateinfo->release),
array('class' => 'info release'));
}
if (isset($updateinfo->version)) {
$info[] = html_writer::tag('span', get_string('updateavailable_version', 'core_admin', $updateinfo->version),
array('class' => 'info version'));
}
if (isset($updateinfo->maturity)) {
$info[] = html_writer::tag('span', get_string('maturity'.$updateinfo->maturity, 'core_admin'),
array('class' => 'info maturity'));
$boxclasses .= ' maturity'.$updateinfo->maturity;
}
if (isset($updateinfo->download)) {
$info[] = html_writer::link($updateinfo->download, get_string('download'), array('class' => 'info download'));
}
if (isset($updateinfo->url)) {
$info[] = html_writer::link($updateinfo->url, get_string('updateavailable_moreinfo', 'core_plugin'),
array('class' => 'info more'));
}
$box = $this->output->box_start($boxclasses);
$box .= $this->output->box(implode(html_writer::tag('span', ' ', array('class' => 'separator')), $info), '');
$box .= $this->output->box_end();
return $box;
'generalbox adminwarning maturityinfo');
}
/**
@@ -620,24 +426,24 @@ class core_admin_renderer extends plugin_renderer_base {
* This default implementation renders all plugins into one big table. The rendering
* options support:
* (bool)full = false: whether to display up-to-date plugins, too
* (bool)xdep = false: display the plugins with unsatisified dependecies only
*
* @param plugin_manager $pluginman provides information about the plugins.
* @param int $version the version of the Moodle code from version.php.
* @param array $options rendering options
* @return string HTML code
*/
public function plugins_check_table(plugin_manager $pluginman, $version, array $options = array()) {
global $CFG;
public function plugins_check_table(plugin_manager $pluginman, $version, array $options = null) {
$plugininfo = $pluginman->get_plugins();
if (empty($plugininfo)) {
return '';
}
$options['full'] = isset($options['full']) ? (bool)$options['full'] : false;
$options['xdep'] = isset($options['xdep']) ? (bool)$options['xdep'] : false;
if (empty($options)) {
$options = array(
'full' => false,
);
}
$table = new html_table();
$table->id = 'plugins-check';
@@ -706,43 +512,23 @@ class core_admin_renderer extends plugin_renderer_base {
$statuscode = $plugin->get_status();
$row->attributes['class'] .= ' status-' . $statuscode;
$status = get_string('status_' . $statuscode, 'core_plugin');
$availableupdates = $plugin->available_updates();
if (!empty($availableupdates) and empty($CFG->disableupdatenotifications)) {
foreach ($availableupdates as $availableupdate) {
$status .= $this->plugin_available_update_info($availableupdate);
}
}
$status = new html_table_cell($status);
$status = new html_table_cell(get_string('status_' . $statuscode, 'core_plugin'));
$requires = new html_table_cell($this->required_column($plugin, $pluginman, $version));
$statusisboring = in_array($statuscode, array(
plugin_manager::PLUGIN_STATUS_NODB, plugin_manager::PLUGIN_STATUS_UPTODATE));
$coredependency = $plugin->is_core_dependency_satisfied($version);
$otherpluginsdependencies = $pluginman->are_dependencies_satisfied($plugin->get_other_required_plugins());
$dependenciesok = $coredependency && $otherpluginsdependencies;
if ($options['xdep']) {
// we want to see only plugins with failed dependencies
if ($dependenciesok) {
continue;
}
} else if ($isstandard and $statusisboring and $dependenciesok and empty($availableupdates)) {
// no change is going to happen to the plugin - display it only
// if the user wants to see the full list
$dependenciesok = $pluginman->are_dependencies_satisfied(
$plugin->get_other_required_plugins());
if ($isstandard and $statusisboring and $dependenciesok) {
if (empty($options['full'])) {
continue;
}
} else {
$numofhighlighted[$type]++;
}
// ok, the plugin should be displayed
$numofhighlighted[$type]++;
$row->cells = array($displayname, $rootdir, $source,
$versiondb, $versiondisk, $requires, $status);
$plugintyperows[] = $row;
@@ -758,11 +544,7 @@ class core_admin_renderer extends plugin_renderer_base {
$sumofhighlighted = array_sum($numofhighlighted);
if ($options['xdep']) {
// we do not want to display no heading and links in this mode
$out = '';
} else if ($sumofhighlighted == 0) {
if ($sumofhighlighted == 0) {
$out = $this->output->container_start('nonehighlighted', 'plugins-check-info');
$out .= $this->output->heading(get_string('nonehighlighted', 'core_plugin'));
if (empty($options['full'])) {
@@ -779,10 +561,6 @@ class core_admin_renderer extends plugin_renderer_base {
$out .= html_writer::link(new moodle_url('/admin/index.php',
array('confirmupgrade' => 1, 'confirmrelease' => 1, 'showallplugins' => 1)),
get_string('somehighlightedinfo', 'core_plugin'));
} else {
$out .= html_writer::link(new moodle_url('/admin/index.php',
array('confirmupgrade' => 1, 'confirmrelease' => 1, 'showallplugins' => 0)),
get_string('somehighlightedonly', 'core_plugin'));
}
$out .= $this->output->container_end();
}
@@ -796,12 +574,12 @@ class core_admin_renderer extends plugin_renderer_base {
/**
* Formats the information that needs to go in the 'Requires' column.
* @param plugininfo_base $plugin the plugin we are rendering the row for.
* @param plugin_information $plugin the plugin we are rendering the row for.
* @param plugin_manager $pluginman provides data on all the plugins.
* @param string $version
* @return string HTML code
*/
protected function required_column(plugininfo_base $plugin, plugin_manager $pluginman, $version) {
protected function required_column(plugin_information $plugin, plugin_manager $pluginman, $version) {
$requires = array();
if (!empty($plugin->versionrequires)) {
@@ -848,48 +626,6 @@ class core_admin_renderer extends plugin_renderer_base {
return html_writer::tag('ul', implode("\n", $requires));
}
/**
* Prints an overview about the plugins - number of installed, number of extensions etc.
*
* @param plugin_manager $pluginman provides information about the plugins
* @return string as usually
*/
public function plugins_overview_panel(plugin_manager $pluginman) {
global $CFG;
$plugininfo = $pluginman->get_plugins();
$numtotal = $numdisabled = $numextension = $numupdatable = 0;
foreach ($plugininfo as $type => $plugins) {
foreach ($plugins as $name => $plugin) {
if ($plugin->get_status() === plugin_manager::PLUGIN_STATUS_MISSING) {
continue;
}
$numtotal++;
if ($plugin->is_enabled() === false) {
$numdisabled++;
}
if (!$plugin->is_standard()) {
$numextension++;
}
if (empty($CFG->disableupdatenotifications) and $plugin->available_updates()) {
$numupdatable++;
}
}
}
$info = array();
$info[] = html_writer::tag('span', get_string('numtotal', 'core_plugin', $numtotal), array('class' => 'info total'));
$info[] = html_writer::tag('span', get_string('numdisabled', 'core_plugin', $numdisabled), array('class' => 'info disabled'));
$info[] = html_writer::tag('span', get_string('numextension', 'core_plugin', $numextension), array('class' => 'info extension'));
if ($numupdatable > 0) {
$info[] = html_writer::tag('span', get_string('numupdatable', 'core_plugin', $numupdatable), array('class' => 'info updatable'));
}
return $this->output->box(implode(html_writer::tag('span', ' ', array('class' => 'separator')), $info), '', 'plugins-overview-panel');
}
/**
* Displays all known plugins and links to manage them
*
@@ -899,8 +635,6 @@ class core_admin_renderer extends plugin_renderer_base {
* @return string HTML code
*/
public function plugins_control_panel(plugin_manager $pluginman) {
global $CFG;
$plugininfo = $pluginman->get_plugins();
if (empty($plugininfo)) {
@@ -911,14 +645,15 @@ class core_admin_renderer extends plugin_renderer_base {
$table->id = 'plugins-control-panel';
$table->head = array(
get_string('displayname', 'core_plugin'),
get_string('systemname', 'core_plugin'),
get_string('source', 'core_plugin'),
get_string('version', 'core_plugin'),
get_string('availability', 'core_plugin'),
get_string('actions', 'core_plugin'),
get_string('notes','core_plugin'),
get_string('settings', 'core_plugin'),
get_string('uninstall','core_plugin'),
);
$table->colclasses = array(
'pluginname', 'source', 'version', 'availability', 'actions', 'notes'
'displayname', 'systemname', 'source', 'version', 'availability', 'settings', 'uninstall',
);
foreach ($plugininfo as $type => $plugins) {
@@ -954,9 +689,10 @@ class core_admin_renderer extends plugin_renderer_base {
} else {
$msg = '';
}
$pluginname = html_writer::tag('div', $icon . ' ' . $plugin->displayname . ' ' . $msg, array('class' => 'displayname')).
html_writer::tag('div', $plugin->component, array('class' => 'componentname'));
$pluginname = new html_table_cell($pluginname);
$displayname = $icon . ' ' . $plugin->displayname . ' ' . $msg;
$displayname = new html_table_cell($displayname);
$systemname = new html_table_cell($plugin->type . '_' . $plugin->name);
if ($plugin->is_standard()) {
$row->attributes['class'] .= ' standard';
@@ -981,39 +717,28 @@ class core_admin_renderer extends plugin_renderer_base {
$availability = new html_table_cell($icon . ' ' . get_string('plugindisabled', 'core_plugin'));
}
$actions = array();
$settingsurl = $plugin->get_settings_url();
if (!is_null($settingsurl)) {
$actions[] = html_writer::link($settingsurl, get_string('settings', 'core_plugin'), array('class' => 'settings'));
if (is_null($settingsurl)) {
$settings = new html_table_cell('');
} else {
$settings = html_writer::link($settingsurl, get_string('settings', 'core_plugin'));
$settings = new html_table_cell($settings);
}
$uninstallurl = $plugin->get_uninstall_url();
if (!is_null($uninstallurl)) {
$actions[] = html_writer::link($uninstallurl, get_string('uninstall', 'core_plugin'), array('class' => 'uninstall'));
}
$actions = new html_table_cell(implode(html_writer::tag('span', ' ', array('class' => 'separator')), $actions));
$requriedby = $pluginman->other_plugins_that_require($plugin->component);
if ($requriedby) {
$requiredby = html_writer::tag('div', get_string('requiredby', 'core_plugin', implode(', ', $requriedby)),
array('class' => 'requiredby'));
if (is_null($uninstallurl)) {
$uninstall = new html_table_cell('');
} else if ($requriedby) {
$uninstall = new html_table_cell(get_string('requiredby', 'core_plugin', implode(', ', $requriedby)));
$uninstall->attributes['class'] = 'requiredby';
} else {
$requiredby = '';
$uninstall = html_writer::link($uninstallurl, get_string('uninstall', 'core_plugin'));
$uninstall = new html_table_cell($uninstall);
}
$updateinfo = '';
if (empty($CFG->disableupdatenotifications) and is_array($plugin->available_updates())) {
foreach ($plugin->available_updates() as $availableupdate) {
$updateinfo .= $this->plugin_available_update_info($availableupdate);
}
}
$notes = new html_table_cell($requiredby.$updateinfo);
$row->cells = array(
$pluginname, $source, $version, $availability, $actions, $notes
$displayname, $systemname, $source, $version, $availability, $settings, $uninstall
);
$table->data[] = $row;
}
@@ -1022,47 +747,6 @@ class core_admin_renderer extends plugin_renderer_base {
return html_writer::table($table);
}
/**
* Helper method to render the information about the available plugin update
*
* The passed objects always provides at least the 'version' property containing
* the (higher) version of the plugin available.
*
* @param available_update_info $updateinfo information about the available update for the plugin
*/
protected function plugin_available_update_info(available_update_info $updateinfo) {
$boxclasses = 'pluginupdateinfo';
$info = array();
if (isset($updateinfo->release)) {
$info[] = html_writer::tag('span', get_string('updateavailable_release', 'core_plugin', $updateinfo->release),
array('class' => 'info release'));
}
if (isset($updateinfo->maturity)) {
$info[] = html_writer::tag('span', get_string('maturity'.$updateinfo->maturity, 'core_admin'),
array('class' => 'info maturity'));
$boxclasses .= ' maturity'.$updateinfo->maturity;
}
if (isset($updateinfo->download)) {
$info[] = html_writer::link($updateinfo->download, get_string('download'), array('class' => 'info download'));
}
if (isset($updateinfo->url)) {
$info[] = html_writer::link($updateinfo->url, get_string('updateavailable_moreinfo', 'core_plugin'),
array('class' => 'info more'));
}
$box = $this->output->box_start($boxclasses);
$box .= html_writer::tag('div', get_string('updateavailable', 'core_plugin', $updateinfo->version), array('class' => 'version'));
$box .= $this->output->box(implode(html_writer::tag('span', ' ', array('class' => 'separator')), $info), '');
$box .= $this->output->box_end();
return $box;
}
/**
* This function will render one beautiful table with all the environmental
* configuration and how it suits Moodle needs.
+12 -58
View File
@@ -1,27 +1,12 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
require_once(dirname(dirname(__FILE__)) . '/config.php');
require_once($CFG->dirroot . '/repository/lib.php');
require_once($CFG->libdir . '/adminlib.php');
$repository = optional_param('repos', '', PARAM_ALPHANUMEXT);
$action = optional_param('action', '', PARAM_ACTION);
$sure = optional_param('sure', '', PARAM_ALPHA);
$downloadcontents = optional_param('downloadcontents', false, PARAM_BOOL);
$repository = optional_param('repos', '', PARAM_FORMAT);
$action = optional_param('action', '', PARAM_ALPHA);
$sure = optional_param('sure', '', PARAM_ALPHA);
$display = true; // fall through to normal display
@@ -57,10 +42,6 @@ $configstr = get_string('manage', 'repository');
$return = true;
if (!empty($action)) {
require_sesskey();
}
/**
* Helper function that generates a moodle_url object
* relevant to the repository
@@ -171,10 +152,10 @@ if (($action == 'edit') || ($action == 'new')) {
// Display instances list and creation form
if ($action == 'edit') {
$instanceoptionnames = repository::static_function($repository, 'get_instance_option_names');
if (!empty($instanceoptionnames)) {
repository::display_instances_list(context_system::instance(), $repository);
}
$instanceoptionnames = repository::static_function($repository, 'get_instance_option_names');
if (!empty($instanceoptionnames)) {
repository::display_instances_list(get_context_instance(CONTEXT_SYSTEM), $repository);
}
}
}
} else if ($action == 'show') {
@@ -204,8 +185,7 @@ if (($action == 'edit') || ($action == 'new')) {
if (!confirm_sesskey()) {
print_error('confirmsesskeybad', '', $baseurl);
}
if ($repositorytype->delete($downloadcontents)) {
if ($repositorytype->delete()) {
redirect($baseurl);
} else {
print_error('instancenotdeleted', 'repository', $baseurl);
@@ -213,34 +193,7 @@ if (($action == 'edit') || ($action == 'new')) {
exit;
} else {
echo $OUTPUT->header();
$message = get_string('confirmremove', 'repository', $repositorytype->get_readablename());
$output = $OUTPUT->box_start('generalbox', 'notice');
$output .= html_writer::tag('p', $message);
$removeurl = new moodle_url($sesskeyurl);
$removeurl->params(array(
'action' =>'delete',
'repos' => $repository,
'sure' => 'yes',
));
$removeanddownloadurl = new moodle_url($sesskeyurl);
$removeanddownloadurl->params(array(
'action' =>'delete',
'repos'=> $repository,
'sure' => 'yes',
'downloadcontents' => 1,
));
$output .= $OUTPUT->single_button($removeurl, get_string('continueuninstall', 'repository'));
$output .= $OUTPUT->single_button($removeanddownloadurl, get_string('continueuninstallanddownload', 'repository'));
$output .= $OUTPUT->single_button($baseurl, get_string('cancel'));
$output .= $OUTPUT->box_end();
echo $output;
echo $OUTPUT->confirm(get_string('confirmremove', 'repository', $repositorytype->get_readablename()), $sesskeyurl . '&action=delete&repos=' . $repository . '&sure=yes', $baseurl);
$return = false;
}
} else if ($action == 'moveup') {
@@ -302,7 +255,7 @@ if (($action == 'edit') || ($action == 'new')) {
// Calculate number of instances in order to display them for the Moodle administrator
if (!empty($instanceoptionnames)) {
$params = array();
$params['context'] = array(context_system::instance());
$params['context'] = array(get_system_context());
$params['onlyvisible'] = false;
$params['type'] = $typename;
$admininstancenumber = count(repository::static_function($typename, 'get_instances', $params));
@@ -352,7 +305,7 @@ if (($action == 'edit') || ($action == 'new')) {
}
$select = new single_select(repository_action_url($typename, 'repos'), 'action', $actionchoicesforexisting, $currentaction, null, 'applyto' . basename($typename));
$select->set_label(get_string('action'), array('class' => 'accesshide'));
// Display up/down link
$updown = '';
$spacer = $OUTPUT->spacer(array('height'=>15, 'width'=>15)); // should be done with CSS instead
@@ -389,6 +342,7 @@ if (($action == 'edit') || ($action == 'new')) {
// Check that it has not already been listed
if (!in_array($plugin, $alreadyplugins)) {
$select = new single_select(repository_action_url($plugin, 'repos'), 'action', $actionchoicesfornew, 'delete', null, 'applyto' . basename($plugin));
$select->set_label(get_string('action'), array('class' => 'accesshide'));
$table->data[] = array(get_string('pluginname', 'repository_'.$plugin), $OUTPUT->render($select), '', '');
}
}
+30 -58
View File
@@ -1,35 +1,18 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
require_once(dirname(dirname(__FILE__)) . '/config.php');
require_once($CFG->dirroot . '/repository/lib.php');
require_once($CFG->libdir . '/adminlib.php');
require_sesskey();
// id of repository
$edit = optional_param('edit', 0, PARAM_INT);
$new = optional_param('new', '', PARAM_PLUGIN);
$new = optional_param('new', '', PARAM_FORMAT);
$hide = optional_param('hide', 0, PARAM_INT);
$delete = optional_param('delete', 0, PARAM_INT);
$sure = optional_param('sure', '', PARAM_ALPHA);
$type = optional_param('type', '', PARAM_PLUGIN);
$downloadcontents = optional_param('downloadcontents', false, PARAM_BOOL);
$context = context_system::instance();
$context = get_context_instance(CONTEXT_SYSTEM);
$pagename = 'repositorycontroller';
@@ -41,20 +24,16 @@ if ($edit){
$pagename = 'repositoryinstancenew';
}
admin_externalpage_setup($pagename, '', null, new moodle_url('/admin/repositoryinstance.php'));
require_capability('moodle/site:config', $context);
$baseurl = new moodle_url("/$CFG->admin/repositoryinstance.php", array('sesskey'=>sesskey()));
$parenturl = new moodle_url("/$CFG->admin/repository.php", array(
'sesskey'=>sesskey(),
'action'=>'edit',
));
admin_externalpage_setup($pagename);
require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
$sesskeyurl = "$CFG->wwwroot/$CFG->admin/repositoryinstance.php?sesskey=" . sesskey();
$baseurl = "$CFG->wwwroot/$CFG->admin/repository.php?session=". sesskey() .'&action=edit&repos=';
if ($new) {
$parenturl->param('repos', $new);
} else {
$parenturl->param('repos', $type);
$baseurl .= $new;
}
else {
$baseurl .= $type;
}
$return = true;
@@ -69,7 +48,7 @@ if (!empty($edit) || !empty($new)) {
$typeid = $instance->options['typeid'];
} else {
$plugin = $new;
$typeid = null;
$typeid = $new;
$instance = null;
}
@@ -78,9 +57,12 @@ if (!empty($edit) || !empty($new)) {
// end setup, begin output
if ($mform->is_cancelled()){
redirect($parenturl);
redirect($baseurl);
exit;
} else if ($fromform = $mform->get_data()){
if (!confirm_sesskey()) {
print_error('confirmsesskeybad', '', $baseurl);
}
if ($edit) {
$settings = array();
$settings['name'] = $fromform->name;
@@ -95,13 +77,13 @@ if (!empty($edit) || !empty($new)) {
}
$success = $instance->set_option($settings);
} else {
$success = repository::static_function($plugin, 'create', $plugin, 0, $context, $fromform);
$success = repository::static_function($plugin, 'create', $plugin, 0, get_system_context(), $fromform);
$data = data_submitted();
}
if ($success) {
redirect($parenturl);
redirect($baseurl);
} else {
print_error('instancenotsaved', 'repository', $parenturl);
print_error('instancenotsaved', 'repository', $baseurl);
}
exit;
} else {
@@ -113,6 +95,9 @@ if (!empty($edit) || !empty($new)) {
$return = false;
}
} else if (!empty($hide)) {
if (!confirm_sesskey()) {
print_error('confirmsesskeybad', '', $baseurl);
}
$instance = repository::get_type_by_typename($hide);
$instance->hide();
$return = true;
@@ -123,38 +108,25 @@ if (!empty($edit) || !empty($new)) {
throw new repository_exception('readonlyinstance', 'repository');
}
if ($sure) {
if ($instance->delete($downloadcontents)) {
if (!confirm_sesskey()) {
print_error('confirmsesskeybad', '', $baseurl);
}
if ($instance->delete()) {
$deletedstr = get_string('instancedeleted', 'repository');
redirect($parenturl, $deletedstr, 3);
redirect($baseurl, $deletedstr, 3);
} else {
print_error('instancenotdeleted', 'repository', $parenturl);
print_error('instancenotdeleted', 'repository', $baseurl);
}
exit;
}
echo $OUTPUT->header();
echo $OUTPUT->box_start('generalbox', 'notice');
$continueurl = new moodle_url($baseurl, array(
'type' => $type,
'delete' => $delete,
'sure' => 'yes',
));
$continueanddownloadurl = new moodle_url($continueurl, array(
'downloadcontents' => 1
));
$message = get_string('confirmdelete', 'repository', $instance->name);
echo html_writer::tag('p', $message);
echo $OUTPUT->single_button($continueurl, get_string('continueuninstall', 'repository'));
echo $OUTPUT->single_button($continueanddownloadurl, get_string('continueuninstallanddownload', 'repository'));
echo $OUTPUT->single_button($parenturl, get_string('cancel'));
echo $OUTPUT->box_end();
echo $OUTPUT->confirm(get_string('confirmdelete', 'repository', $instance->name), "$sesskeyurl&type=$type'&delete=$delete'&sure=yes", "$CFG->wwwroot/$CFG->admin/repositoryinstance.php?session=". sesskey());
$return = false;
}
if (!empty($return)) {
redirect($parenturl);
redirect($baseurl);
}
echo $OUTPUT->footer();
+30 -5
View File
@@ -104,20 +104,45 @@ switch ($context->contextlevel) {
break;
}
// Get the list of the reported-on user's role assignments - must be after
// the page setup code above, or the language might be wrong.
$reportuser = $userselector->get_selected_user();
if (!is_null($reportuser)) {
$roleassignments = get_user_roles_with_special($context, $reportuser->id);
$rolenames = role_get_names($context);
}
echo $OUTPUT->header();
// These are needed early because of tabs.php
$assignableroles = get_assignable_roles($context, ROLENAME_BOTH);
$overridableroles = get_overridable_roles($context, ROLENAME_BOTH);
// Print heading.
echo $OUTPUT->heading($title);
// If a user has been chosen, show all the permissions for this user.
$reportuser = $userselector->get_selected_user();
if (!is_null($reportuser)) {
echo $OUTPUT->box_start('generalbox boxaligncenter boxwidthwide');
echo $OUTPUT->heading(get_string('permissionsforuser', 'role', fullname($reportuser)), 3);
if (!empty($roleassignments)) {
echo $OUTPUT->heading(get_string('rolesforuser', 'role', fullname($reportuser)), 3);
echo html_writer::start_tag('ul');
$systemcontext = context_system::instance();
foreach ($roleassignments as $ra) {
$racontext = context::instance_by_id($ra->contextid);
$link = html_writer::link($racontext->get_url(), $racontext->get_context_name());
$rolename = $rolenames[$ra->roleid]->localname;
if (has_capability('moodle/role:manage', $systemcontext)) {
$rolename = html_writer::link(new moodle_url('/admin/roles/define.php',
array('action' => 'view', 'roleid' => $ra->roleid)), $rolename);
}
echo html_writer::tag('li', get_string('roleincontext', 'role',
array('role' => $rolename, 'context' => $link)));
}
echo html_writer::end_tag('ul');
}
echo $OUTPUT->heading(get_string('permissionsforuser', 'role', fullname($reportuser)), 3);
$table = new check_capability_table($context, $reportuser, $contextname);
$table->display();
echo $OUTPUT->box_end();
+2 -2
View File
@@ -610,8 +610,8 @@ class define_role_table_advanced extends capability_table_with_risks {
$shortname = optional_param('shortname', null, PARAM_RAW);
if (!is_null($shortname)) {
$this->role->shortname = $shortname;
$this->role->shortname = textlib::specialtoascii($this->role->shortname);
$this->role->shortname = textlib::strtolower(clean_param($this->role->shortname, PARAM_ALPHANUMEXT));
$this->role->shortname = textlib_get_instance()->specialtoascii($this->role->shortname);
$this->role->shortname = moodle_strtolower(clean_param($this->role->shortname, PARAM_ALPHANUMEXT));
if (empty($this->role->shortname)) {
$this->errors['shortname'] = get_string('errorbadroleshortname', 'role');
}
+3 -2
View File
@@ -166,7 +166,8 @@ function print_report_tree($contextid, $contexts, $systemcontext, $fullname) {
$context = context::instance_by_id($contextid);
// Print the context name.
echo $OUTPUT->heading($context->get_context_name(), 4, 'contextname');
echo $OUTPUT->heading(html_writer::link($context->get_url(), $context->get_context_name()),
4, 'contextname');
// If there are any role assignments here, print them.
foreach ($contexts[$contextid]->roleassignments as $ra) {
@@ -189,7 +190,7 @@ function print_report_tree($contextid, $contexts, $systemcontext, $fullname) {
}
$a = new stdClass;
$a->fullname = $fullname;
$a->contextlevel = get_contextlevel_name($context->contextlevel);
$a->contextlevel = $context->get_level_name();
if ($context->contextlevel == CONTEXT_SYSTEM) {
$strgoto = get_string('gotoassignsystemroles', 'role');
$strcheck = get_string('checksystempermissionsfor', 'role', $a);
+4 -8
View File
@@ -32,6 +32,7 @@ if (!($settingspage->check_access())) {
$statusmsg = '';
$errormsg = '';
$focus = '';
if ($data = data_submitted() and confirm_sesskey()) {
if (admin_write_settings($data)) {
@@ -46,6 +47,7 @@ if ($data = data_submitted() and confirm_sesskey()) {
} else {
$errormsg = get_string('errorwithsettings', 'admin');
$firsterror = reset($adminroot->errors);
$focus = $firsterror->id;
}
$adminroot = admin_get_root(true); //reload tree
$settingspage = $adminroot->locate($section, true);
@@ -131,12 +133,6 @@ if (empty($SITE->fullname)) {
echo '</form>';
}
$PAGE->requires->yui_module('moodle-core-formchangechecker',
'M.core_formchangechecker.init',
array(array(
'formid' => 'adminsettings'
))
);
$PAGE->requires->string_for_js('changesmadereallygoaway', 'moodle');
echo $OUTPUT->footer();
+83 -126
View File
@@ -4,30 +4,30 @@
if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$ADMIN->add('appearance', new admin_category('themes', new lang_string('themes')));
$ADMIN->add('appearance', new admin_category('themes', get_string('themes')));
// "themesettings" settingpage
$temp = new admin_settingpage('themesettings', new lang_string('themesettings', 'admin'));
$temp->add(new admin_setting_configtext('themelist', new lang_string('themelist', 'admin'), new lang_string('configthemelist','admin'), '', PARAM_NOTAGS));
$setting = new admin_setting_configcheckbox('themedesignermode', new lang_string('themedesignermode', 'admin'), new lang_string('configthemedesignermode', 'admin'), 0);
$temp = new admin_settingpage('themesettings', get_string('themesettings', 'admin'));
$temp->add(new admin_setting_configtext('themelist', get_string('themelist', 'admin'), get_string('configthemelist','admin'), '', PARAM_NOTAGS));
$setting = new admin_setting_configcheckbox('themedesignermode', get_string('themedesignermode', 'admin'), get_string('configthemedesignermode', 'admin'), 0);
$setting->set_updatedcallback('theme_reset_all_caches');
$temp->add($setting);
$temp->add(new admin_setting_configcheckbox('allowuserthemes', new lang_string('allowuserthemes', 'admin'), new lang_string('configallowuserthemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowcoursethemes', new lang_string('allowcoursethemes', 'admin'), new lang_string('configallowcoursethemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowcategorythemes', new lang_string('allowcategorythemes', 'admin'), new lang_string('configallowcategorythemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowthemechangeonurl', new lang_string('allowthemechangeonurl', 'admin'), new lang_string('configallowthemechangeonurl', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowuserblockhiding', new lang_string('allowuserblockhiding', 'admin'), new lang_string('configallowuserblockhiding', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('allowblockstodock', new lang_string('allowblockstodock', 'admin'), new lang_string('configallowblockstodock', 'admin'), 1));
$temp->add(new admin_setting_configtextarea('custommenuitems', new lang_string('custommenuitems', 'admin'), new lang_string('configcustommenuitems', 'admin'), '', PARAM_TEXT, '50', '10'));
$temp->add(new admin_setting_configcheckbox('enabledevicedetection', new lang_string('enabledevicedetection', 'admin'), new lang_string('configenabledevicedetection', 'admin'), 1));
$temp->add(new admin_setting_devicedetectregex('devicedetectregex', new lang_string('devicedetectregex', 'admin'), new lang_string('devicedetectregex_desc', 'admin'), ''));
$temp->add(new admin_setting_configcheckbox('allowuserthemes', get_string('allowuserthemes', 'admin'), get_string('configallowuserthemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowcoursethemes', get_string('allowcoursethemes', 'admin'), get_string('configallowcoursethemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowcategorythemes', get_string('allowcategorythemes', 'admin'), get_string('configallowcategorythemes', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowthemechangeonurl', get_string('allowthemechangeonurl', 'admin'), get_string('configallowthemechangeonurl', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowuserblockhiding', get_string('allowuserblockhiding', 'admin'), get_string('configallowuserblockhiding', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('allowblockstodock', get_string('allowblockstodock', 'admin'), get_string('configallowblockstodock', 'admin'), 1));
$temp->add(new admin_setting_configtextarea('custommenuitems', get_string('custommenuitems', 'admin'), get_string('configcustommenuitems', 'admin'), '', PARAM_TEXT, '50', '10'));
$temp->add(new admin_setting_configcheckbox('enabledevicedetection', get_string('enabledevicedetection', 'admin'), get_string('configenabledevicedetection', 'admin'), 1));
$temp->add(new admin_setting_devicedetectregex('devicedetectregex', get_string('devicedetectregex', 'admin'), get_string('devicedetectregex_desc', 'admin'), ''));
$ADMIN->add('themes', $temp);
$ADMIN->add('themes', new admin_externalpage('themeselector', new lang_string('themeselector','admin'), $CFG->wwwroot . '/theme/index.php'));
$ADMIN->add('themes', new admin_externalpage('themeselector', get_string('themeselector','admin'), $CFG->wwwroot . '/theme/index.php'));
// settings for each theme
foreach (get_plugin_list('theme') as $theme => $themedir) {
$settings_path = "$themedir/settings.php";
if (file_exists($settings_path)) {
$settings = new admin_settingpage('themesetting'.$theme, new lang_string('pluginname', 'theme_'.$theme));
$settings = new admin_settingpage('themesetting'.$theme, get_string('pluginname', 'theme_'.$theme));
include($settings_path);
if ($settings) {
$ADMIN->add('themes', $settings);
@@ -37,164 +37,121 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// calendar
$temp = new admin_settingpage('calendar', new lang_string('calendarsettings','admin'));
$temp = new admin_settingpage('calendar', get_string('calendarsettings','admin'));
$temp->add(new admin_setting_special_adminseesall());
//this is hacky because we do not want to include the stuff from calendar/lib.php
$temp->add(new admin_setting_configselect('calendar_site_timeformat', new lang_string('pref_timeformat', 'calendar'),
new lang_string('explain_site_timeformat', 'calendar'), '0',
array('0' => new lang_string('default', 'calendar'),
'%I:%M %p' => new lang_string('timeformat_12', 'calendar'),
'%H:%M' => new lang_string('timeformat_24', 'calendar'))));
$temp->add(new admin_setting_configselect('calendar_startwday', new lang_string('configstartwday', 'admin'), new lang_string('helpstartofweek', 'admin'), 0,
$temp->add(new admin_setting_configselect('calendar_site_timeformat', get_string('pref_timeformat', 'calendar'),
get_string('explain_site_timeformat', 'calendar'), '0',
array('0' => get_string('default', 'calendar'),
'%I:%M %p' => get_string('timeformat_12', 'calendar'),
'%H:%M' => get_string('timeformat_24', 'calendar'))));
$temp->add(new admin_setting_configselect('calendar_startwday', get_string('configstartwday', 'admin'), get_string('helpstartofweek', 'admin'), 0,
array(
0 => new lang_string('sunday', 'calendar'),
1 => new lang_string('monday', 'calendar'),
2 => new lang_string('tuesday', 'calendar'),
3 => new lang_string('wednesday', 'calendar'),
4 => new lang_string('thursday', 'calendar'),
5 => new lang_string('friday', 'calendar'),
6 => new lang_string('saturday', 'calendar')
0 => get_string('sunday', 'calendar'),
1 => get_string('monday', 'calendar'),
2 => get_string('tuesday', 'calendar'),
3 => get_string('wednesday', 'calendar'),
4 => get_string('thursday', 'calendar'),
5 => get_string('friday', 'calendar'),
6 => get_string('saturday', 'calendar')
)));
$temp->add(new admin_setting_special_calendar_weekend());
$options = array();
for ($i=1; $i<=99; $i++) {
$options[$i] = $i;
}
$temp->add(new admin_setting_configselect('calendar_lookahead',new lang_string('configlookahead','admin'),new lang_string('helpupcominglookahead', 'admin'),21,$options));
$temp->add(new admin_setting_configselect('calendar_lookahead',get_string('configlookahead','admin'),get_string('helpupcominglookahead', 'admin'),21,$options));
$options = array();
for ($i=1; $i<=20; $i++) {
$options[$i] = $i;
}
$temp->add(new admin_setting_configselect('calendar_maxevents',new lang_string('configmaxevents','admin'),new lang_string('helpupcomingmaxevents', 'admin'),10,$options));
$temp->add(new admin_setting_configcheckbox('enablecalendarexport', new lang_string('enablecalendarexport', 'admin'), new lang_string('configenablecalendarexport','admin'), 1));
$temp->add(new admin_setting_configtext('calendar_exportsalt', new lang_string('calendarexportsalt','admin'), new lang_string('configcalendarexportsalt', 'admin'), random_string(60)));
$temp->add(new admin_setting_configselect('calendar_maxevents',get_string('configmaxevents','admin'),get_string('helpupcomingmaxevents', 'admin'),10,$options));
$temp->add(new admin_setting_configcheckbox('enablecalendarexport', get_string('enablecalendarexport', 'admin'), get_string('configenablecalendarexport','admin'), 1));
$temp->add(new admin_setting_configtext('calendar_exportsalt', get_string('calendarexportsalt','admin'), get_string('configcalendarexportsalt', 'admin'), random_string(60)));
$ADMIN->add('appearance', $temp);
// blog
$temp = new admin_settingpage('blog', new lang_string('blog','blog'));
$temp->add(new admin_setting_configcheckbox('useblogassociations', new lang_string('useblogassociations', 'blog'), new lang_string('configuseblogassociations','blog'), 1));
$temp->add(new admin_setting_bloglevel('bloglevel', new lang_string('bloglevel', 'admin'), new lang_string('configbloglevel', 'admin'), 4, array(BLOG_GLOBAL_LEVEL => new lang_string('worldblogs','blog'),
BLOG_SITE_LEVEL => new lang_string('siteblogs','blog'),
BLOG_USER_LEVEL => new lang_string('personalblogs','blog'),
0 => new lang_string('disableblogs','blog'))));
$temp->add(new admin_setting_configcheckbox('useexternalblogs', new lang_string('useexternalblogs', 'blog'), new lang_string('configuseexternalblogs','blog'), 1));
$temp->add(new admin_setting_configselect('externalblogcrontime', new lang_string('externalblogcrontime', 'blog'), new lang_string('configexternalblogcrontime', 'blog'), 86400,
array(43200 => new lang_string('numhours', '', 12),
86400 => new lang_string('numhours', '', 24),
172800 => new lang_string('numdays', '', 2),
604800 => new lang_string('numdays', '', 7))));
$temp->add(new admin_setting_configtext('maxexternalblogsperuser', new lang_string('maxexternalblogsperuser','blog'), new lang_string('configmaxexternalblogsperuser', 'blog'), 1));
$temp->add(new admin_setting_configcheckbox('blogusecomments', new lang_string('enablecomments', 'admin'), new lang_string('configenablecomments', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('blogshowcommentscount', new lang_string('showcommentscount', 'admin'), new lang_string('configshowcommentscount', 'admin'), 1));
$temp = new admin_settingpage('blog', get_string('blog','blog'));
$temp->add(new admin_setting_configcheckbox('useblogassociations', get_string('useblogassociations', 'blog'), get_string('configuseblogassociations','blog'), 1));
$temp->add(new admin_setting_bloglevel('bloglevel', get_string('bloglevel', 'admin'), get_string('configbloglevel', 'admin'), 4, array(BLOG_GLOBAL_LEVEL => get_string('worldblogs','blog'),
BLOG_SITE_LEVEL => get_string('siteblogs','blog'),
BLOG_USER_LEVEL => get_string('personalblogs','blog'),
0 => get_string('disableblogs','blog'))));
$temp->add(new admin_setting_configcheckbox('useexternalblogs', get_string('useexternalblogs', 'blog'), get_string('configuseexternalblogs','blog'), 1));
$temp->add(new admin_setting_configselect('externalblogcrontime', get_string('externalblogcrontime', 'blog'), get_string('configexternalblogcrontime', 'blog'), 86400,
array(43200 => get_string('numhours', '', 12),
86400 => get_string('numhours', '', 24),
172800 => get_string('numdays', '', 2),
604800 => get_string('numdays', '', 7))));
$temp->add(new admin_setting_configtext('maxexternalblogsperuser', get_string('maxexternalblogsperuser','blog'), get_string('configmaxexternalblogsperuser', 'blog'), 1));
$temp->add(new admin_setting_configcheckbox('blogusecomments', get_string('enablecomments', 'admin'), get_string('configenablecomments', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('blogshowcommentscount', get_string('showcommentscount', 'admin'), get_string('configshowcommentscount', 'admin'), 1));
$ADMIN->add('appearance', $temp);
// Navigation settings
$temp = new admin_settingpage('navigation', new lang_string('navigation'));
$temp = new admin_settingpage('navigation', get_string('navigation'));
$choices = array(
HOMEPAGE_SITE => new lang_string('site'),
HOMEPAGE_MY => new lang_string('mymoodle', 'admin'),
HOMEPAGE_USER => new lang_string('userpreference', 'admin')
HOMEPAGE_SITE => get_string('site'),
HOMEPAGE_MY => get_string('mymoodle', 'admin'),
HOMEPAGE_USER => get_string('userpreference', 'admin')
);
$temp->add(new admin_setting_configselect('defaulthomepage', new lang_string('defaulthomepage', 'admin'), new lang_string('configdefaulthomepage', 'admin'), HOMEPAGE_SITE, $choices));
$temp->add(new admin_setting_configcheckbox('navshowcategories', new lang_string('navshowcategories', 'admin'), new lang_string('confignavshowcategories', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('navshowmycoursecategories', new lang_string('navshowmycoursecategories', 'admin'), new lang_string('navshowmycoursecategories_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('navshowallcourses', new lang_string('navshowallcourses', 'admin'), new lang_string('confignavshowallcourses', 'admin'), 0));
$temp->add(new admin_setting_configtext('navcourselimit',new lang_string('navcourselimit','admin'),new lang_string('confignavcourselimit', 'admin'),20,PARAM_INT));
$temp->add(new admin_setting_configcheckbox('usesitenameforsitepages', new lang_string('usesitenameforsitepages', 'admin'), new lang_string('configusesitenameforsitepages', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('linkadmincategories', new lang_string('linkadmincategories', 'admin'), new lang_string('linkadmincategories_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('navshowfrontpagemods', new lang_string('navshowfrontpagemods', 'admin'), new lang_string('navshowfrontpagemods_help', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('navadduserpostslinks', new lang_string('navadduserpostslinks', 'admin'), new lang_string('navadduserpostslinks_help', 'admin'), 1));
$temp->add(new admin_setting_configselect('defaulthomepage', get_string('defaulthomepage', 'admin'), get_string('configdefaulthomepage', 'admin'), HOMEPAGE_SITE, $choices));
$temp->add(new admin_setting_configcheckbox('navshowcategories', get_string('navshowcategories', 'admin'), get_string('confignavshowcategories', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('navshowallcourses', get_string('navshowallcourses', 'admin'), get_string('confignavshowallcourses', 'admin'), 0));
$temp->add(new admin_setting_configtext('navcourselimit',get_string('navcourselimit','admin'),get_string('confignavcourselimit', 'admin'),20,PARAM_INT));
$temp->add(new admin_setting_configcheckbox('navlinkcoursesections', get_string('navlinkcoursesections', 'admin'), get_string('navlinkcoursesections_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('usesitenameforsitepages', get_string('usesitenameforsitepages', 'admin'), get_string('configusesitenameforsitepages', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('navadduserpostslinks', get_string('navadduserpostslinks', 'admin'), get_string('navadduserpostslinks_help', 'admin'), 1));
$ADMIN->add('appearance', $temp);
// "htmlsettings" settingpage
$temp = new admin_settingpage('htmlsettings', new lang_string('htmlsettings', 'admin'));
$temp->add(new admin_setting_configcheckbox('formatstringstriptags', new lang_string('stripalltitletags', 'admin'), new lang_string('configstripalltitletags', 'admin'), 1));
$temp = new admin_settingpage('htmlsettings', get_string('htmlsettings', 'admin'));
$temp->add(new admin_setting_configcheckbox('formatstringstriptags', get_string('stripalltitletags', 'admin'), get_string('configstripalltitletags', 'admin'), 1));
$temp->add(new admin_setting_emoticons());
$ADMIN->add('appearance', $temp);
$ADMIN->add('appearance', new admin_externalpage('resetemoticons', new lang_string('emoticonsreset', 'admin'),
$ADMIN->add('appearance', new admin_externalpage('resetemoticons', get_string('emoticonsreset', 'admin'),
new moodle_url('/admin/resetemoticons.php'), 'moodle/site:config', true));
// The "media" subpage.
$temp = new admin_settingpage('mediasettings', get_string('mediasettings', 'core_media'));
$temp->add(new admin_setting_heading('mediaformats', get_string('mediaformats', 'core_media'),
format_text(get_string('mediaformats_desc', 'core_media'), FORMAT_MARKDOWN)));
// External services.
$temp->add(new admin_setting_configcheckbox('core_media_enable_youtube',
get_string('siteyoutube', 'core_media'), get_string('siteyoutube_desc', 'core_media'), 1));
$temp->add(new admin_setting_configcheckbox('core_media_enable_vimeo',
get_string('sitevimeo', 'core_media'), get_string('sitevimeo_desc', 'core_media'), 0));
// Options which require Flash.
$temp->add(new admin_setting_configcheckbox('core_media_enable_mp3',
get_string('mp3audio', 'core_media'), get_string('mp3audio_desc', 'core_media'), 1));
$temp->add(new admin_setting_configcheckbox('core_media_enable_flv',
get_string('flashvideo', 'core_media'), get_string('flashvideo_desc', 'core_media'), 1));
$temp->add(new admin_setting_configcheckbox('core_media_enable_swf',
get_string('flashanimation', 'core_media'), get_string('flashanimation_desc', 'core_media'), 1));
// HTML 5 media.
// Audio now enabled by default so that it can provide a fallback for mp3 on devices without flash.
$temp->add(new admin_setting_configcheckbox('core_media_enable_html5audio',
get_string('html5audio', 'core_media'), get_string('html5audio_desc', 'core_media'), 1));
// Video now enabled by default so it can provide mp4 support.
$temp->add(new admin_setting_configcheckbox('core_media_enable_html5video',
get_string('html5video', 'core_media'), get_string('html5video_desc', 'core_media'), 1));
// Legacy players.
$temp->add(new admin_setting_heading('legacymediaformats',
get_string('legacyheading', 'core_media'), get_string('legacyheading_desc', 'core_media')));
$temp->add(new admin_setting_configcheckbox('core_media_enable_qt',
get_string('legacyquicktime', 'core_media'), get_string('legacyquicktime_desc', 'core_media'), 1));
$temp->add(new admin_setting_configcheckbox('core_media_enable_wmp',
get_string('legacywmp', 'core_media'), get_string('legacywmp_desc', 'core_media'), 1));
$temp->add(new admin_setting_configcheckbox('core_media_enable_rm',
get_string('legacyreal', 'core_media'), get_string('legacyreal_desc', 'core_media'), 1));
$ADMIN->add('appearance', $temp);
// "documentation" settingpage
$temp = new admin_settingpage('documentation', new lang_string('moodledocs'));
$temp->add(new admin_setting_configtext('docroot', new lang_string('docroot', 'admin'), new lang_string('configdocroot', 'admin'), 'http://docs.moodle.org', PARAM_URL));
$temp->add(new admin_setting_configcheckbox('doctonewwindow', new lang_string('doctonewwindow', 'admin'), new lang_string('configdoctonewwindow', 'admin'), 0));
$temp = new admin_settingpage('documentation', get_string('moodledocs'));
$temp->add(new admin_setting_configtext('docroot', get_string('docroot', 'admin'), get_string('configdocroot', 'admin'), 'http://docs.moodle.org', PARAM_URL));
$temp->add(new admin_setting_configcheckbox('doctonewwindow', get_string('doctonewwindow', 'admin'), get_string('configdoctonewwindow', 'admin'), 0));
$ADMIN->add('appearance', $temp);
$temp = new admin_externalpage('mypage', new lang_string('mypage', 'admin'), $CFG->wwwroot . '/my/indexsys.php');
$temp = new admin_externalpage('mypage', get_string('mypage', 'admin'), $CFG->wwwroot . '/my/indexsys.php');
$ADMIN->add('appearance', $temp);
$temp = new admin_externalpage('profilepage', new lang_string('myprofile', 'admin'), $CFG->wwwroot . '/user/profilesys.php');
$temp = new admin_externalpage('profilepage', get_string('myprofile', 'admin'), $CFG->wwwroot . '/user/profilesys.php');
$ADMIN->add('appearance', $temp);
// coursecontact is the person responsible for course - usually manages enrolments, receives notification, etc.
$temp = new admin_settingpage('coursecontact', new lang_string('courses'));
$temp = new admin_settingpage('coursecontact', get_string('courses'));
$temp->add(new admin_setting_special_coursecontact());
$temp->add(new admin_setting_configcheckbox('courselistshortnames',
new lang_string('courselistshortnames', 'admin'),
new lang_string('courselistshortnames_desc', 'admin'), 0));
get_string('courselistshortnames', 'admin'),
get_string('courselistshortnames_desc', 'admin'), 0));
$ADMIN->add('appearance', $temp);
$temp = new admin_settingpage('ajax', new lang_string('ajaxuse'));
$temp->add(new admin_setting_configcheckbox('enableajax', new lang_string('enableajax', 'admin'), new lang_string('configenableajax', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('useexternalyui', new lang_string('useexternalyui', 'admin'), new lang_string('configuseexternalyui', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('yuicomboloading', new lang_string('yuicomboloading', 'admin'), new lang_string('configyuicomboloading', 'admin'), 1));
$setting = new admin_setting_configcheckbox('cachejs', new lang_string('cachejs', 'admin'), new lang_string('cachejs_help', 'admin'), 1);
$temp = new admin_settingpage('ajax', get_string('ajaxuse'));
$temp->add(new admin_setting_configcheckbox('enableajax', get_string('enableajax', 'admin'), get_string('configenableajax', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('useexternalyui', get_string('useexternalyui', 'admin'), get_string('configuseexternalyui', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('yuicomboloading', get_string('yuicomboloading', 'admin'), get_string('configyuicomboloading', 'admin'), 1));
$setting = new admin_setting_configcheckbox('cachejs', get_string('cachejs', 'admin'), get_string('cachejs_help', 'admin'), 1);
$setting->set_updatedcallback('js_reset_all_caches');
$temp->add($setting);
$temp->add(new admin_setting_configcheckbox('enablecourseajax', get_string('enablecourseajax', 'admin'),
get_string('enablecourseajax_desc', 'admin'), 1));
$ADMIN->add('appearance', $temp);
// link to tag management interface
$ADMIN->add('appearance', new admin_externalpage('managetags', new lang_string('managetags', 'tag'), "$CFG->wwwroot/tag/manage.php"));
$ADMIN->add('appearance', new admin_externalpage('managetags', get_string('managetags', 'tag'), "$CFG->wwwroot/tag/manage.php"));
$temp = new admin_settingpage('additionalhtml', new lang_string('additionalhtml', 'admin'));
$temp->add(new admin_setting_heading('additionalhtml_heading', new lang_string('additionalhtml_heading', 'admin'), new lang_string('additionalhtml_desc', 'admin')));
$temp->add(new admin_setting_configtextarea('additionalhtmlhead', new lang_string('additionalhtmlhead', 'admin'), new lang_string('additionalhtmlhead_desc', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtextarea('additionalhtmltopofbody', new lang_string('additionalhtmltopofbody', 'admin'), new lang_string('additionalhtmltopofbody_desc', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtextarea('additionalhtmlfooter', new lang_string('additionalhtmlfooter', 'admin'), new lang_string('additionalhtmlfooter_desc', 'admin'), '', PARAM_RAW));
$temp = new admin_settingpage('additionalhtml', get_string('additionalhtml', 'admin'));
$temp->add(new admin_setting_heading('additionalhtml_heading', get_string('additionalhtml_heading', 'admin'), get_string('additionalhtml_desc', 'admin')));
$temp->add(new admin_setting_configtextarea('additionalhtmlhead', get_string('additionalhtmlhead', 'admin'), get_string('additionalhtmlhead_desc', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtextarea('additionalhtmltopofbody', get_string('additionalhtmltopofbody', 'admin'), get_string('additionalhtmltopofbody_desc', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtextarea('additionalhtmlfooter', get_string('additionalhtmlfooter', 'admin'), get_string('additionalhtmlfooter_desc', 'admin'), '', PARAM_RAW));
$ADMIN->add('appearance', $temp);
} // end of speedup
+92 -92
View File
@@ -8,146 +8,146 @@ if ($hassiteconfig
or has_capability('moodle/course:create', $systemcontext)
or has_capability('moodle/site:approvecourse', $systemcontext)) { // speedup for non-admins, add all caps used on this page
$ADMIN->add('courses', new admin_externalpage('coursemgmt', new lang_string('coursemgmt', 'admin'), $CFG->wwwroot . '/course/index.php?categoryedit=on',
$ADMIN->add('courses', new admin_externalpage('coursemgmt', get_string('coursemgmt', 'admin'), $CFG->wwwroot . '/course/index.php?categoryedit=on',
array('moodle/category:manage', 'moodle/course:create')));
/// Course Default Settings Page
/// NOTE: these settings must be applied after all other settings because they depend on them
///main course settings
$temp = new admin_settingpage('coursesettings', new lang_string('coursesettings'));
$temp = new admin_settingpage('coursesettings', get_string('coursesettings'));
$courseformats = get_plugin_list('format');
$formcourseformats = array();
foreach ($courseformats as $courseformat => $courseformatdir) {
$formcourseformats[$courseformat] = new lang_string('pluginname', "format_$courseformat");
$formcourseformats[$courseformat] = get_string('pluginname', "format_$courseformat");
}
$temp->add(new admin_setting_configselect('moodlecourse/format', new lang_string('format'), new lang_string('coursehelpformat'), 'weeks',$formcourseformats));
$temp->add(new admin_setting_configselect('moodlecourse/format', get_string('format'), get_string('coursehelpformat'), 'weeks',$formcourseformats));
$temp->add(new admin_setting_configtext('moodlecourse/maxsections', new lang_string('maxnumberweeks'), new lang_string('maxnumberweeks_desc'), 52));
$temp->add(new admin_setting_configtext('moodlecourse/maxsections', get_string('maxnumberweeks'), get_string('maxnumberweeks_desc'), 52));
$temp->add(new admin_settings_num_course_sections('moodlecourse/numsections', new lang_string('numberweeks'), new lang_string('coursehelpnumberweeks'), 10));
$temp->add(new admin_settings_num_course_sections('moodlecourse/numsections', get_string('numberweeks'), get_string('coursehelpnumberweeks'), 10));
$choices = array();
$choices['0'] = new lang_string('hiddensectionscollapsed');
$choices['1'] = new lang_string('hiddensectionsinvisible');
$temp->add(new admin_setting_configselect('moodlecourse/hiddensections', new lang_string('hiddensections'), new lang_string('coursehelphiddensections'), 0,$choices));
$choices['0'] = get_string('hiddensectionscollapsed');
$choices['1'] = get_string('hiddensectionsinvisible');
$temp->add(new admin_setting_configselect('moodlecourse/hiddensections', get_string('hiddensections'), get_string('coursehelphiddensections'), 0,$choices));
$options = range(0, 10);
$temp->add(new admin_setting_configselect('moodlecourse/newsitems', new lang_string('newsitemsnumber'), new lang_string('coursehelpnewsitemsnumber'), 5,$options));
$temp->add(new admin_setting_configselect('moodlecourse/showgrades', new lang_string('showgrades'), new lang_string('coursehelpshowgrades'), 1,array(0 => new lang_string('no'), 1 => new lang_string('yes'))));
$temp->add(new admin_setting_configselect('moodlecourse/showreports', new lang_string('showreports'), '', 0,array(0 => new lang_string('no'), 1 => new lang_string('yes'))));
$temp->add(new admin_setting_configselect('moodlecourse/newsitems', get_string('newsitemsnumber'), get_string('coursehelpnewsitemsnumber'), 5,$options));
$temp->add(new admin_setting_configselect('moodlecourse/showgrades', get_string('showgrades'), get_string('coursehelpshowgrades'), 1,array(0 => get_string('no'), 1 => get_string('yes'))));
$temp->add(new admin_setting_configselect('moodlecourse/showreports', get_string('showreports'), '', 0,array(0 => get_string('no'), 1 => get_string('yes'))));
if (isset($CFG->maxbytes)) {
$choices = get_max_upload_sizes($CFG->maxbytes);
} else {
$choices = get_max_upload_sizes();
}
$temp->add(new admin_setting_configselect('moodlecourse/maxbytes', new lang_string('maximumupload'), new lang_string('coursehelpmaximumupload'), key($choices), $choices));
$temp->add(new admin_setting_configselect('moodlecourse/maxbytes', get_string('maximumupload'), get_string('coursehelpmaximumupload'), key($choices), $choices));
if (!empty($CFG->legacyfilesinnewcourses)) {
$choices = array('0'=>new lang_string('no'), '2'=>new lang_string('yes'));
$temp->add(new admin_setting_configselect('moodlecourse/legacyfiles', new lang_string('courselegacyfiles'), new lang_string('courselegacyfiles_help'), key($choices), $choices));
$choices = array('0'=>get_string('no'), '2'=>get_string('yes'));
$temp->add(new admin_setting_configselect('moodlecourse/legacyfiles', get_string('courselegacyfiles'), get_string('courselegacyfiles_help'), key($choices), $choices));
}
$temp->add(new admin_setting_heading('groups', new lang_string('groups', 'group'), ''));
$temp->add(new admin_setting_heading('groups', get_string('groups', 'group'), ''));
$choices = array();
$choices[NOGROUPS] = new lang_string('groupsnone', 'group');
$choices[SEPARATEGROUPS] = new lang_string('groupsseparate', 'group');
$choices[VISIBLEGROUPS] = new lang_string('groupsvisible', 'group');
$temp->add(new admin_setting_configselect('moodlecourse/groupmode', new lang_string('groupmode'), '', key($choices),$choices));
$temp->add(new admin_setting_configselect('moodlecourse/groupmodeforce', new lang_string('force'), new lang_string('coursehelpforce'), 0,array(0 => new lang_string('no'), 1 => new lang_string('yes'))));
$choices[NOGROUPS] = get_string('groupsnone', 'group');
$choices[SEPARATEGROUPS] = get_string('groupsseparate', 'group');
$choices[VISIBLEGROUPS] = get_string('groupsvisible', 'group');
$temp->add(new admin_setting_configselect('moodlecourse/groupmode', get_string('groupmode'), '', key($choices),$choices));
$temp->add(new admin_setting_configselect('moodlecourse/groupmodeforce', get_string('force'), get_string('coursehelpforce'), 0,array(0 => get_string('no'), 1 => get_string('yes'))));
$temp->add(new admin_setting_heading('availability', new lang_string('availability'), ''));
$temp->add(new admin_setting_heading('availability', get_string('availability'), ''));
$choices = array();
$choices['0'] = new lang_string('courseavailablenot');
$choices['1'] = new lang_string('courseavailable');
$temp->add(new admin_setting_configselect('moodlecourse/visible', new lang_string('visible'), '', 1,$choices));
$choices['0'] = get_string('courseavailablenot');
$choices['1'] = get_string('courseavailable');
$temp->add(new admin_setting_configselect('moodlecourse/visible', get_string('visible'), '', 1,$choices));
$temp->add(new admin_setting_heading('language', new lang_string('language'), ''));
$temp->add(new admin_setting_heading('language', get_string('language'), ''));
$languages=array();
$languages[''] = new lang_string('forceno');
$languages[''] = get_string('forceno');
$languages += get_string_manager()->get_list_of_translations();
$temp->add(new admin_setting_configselect('moodlecourse/lang', new lang_string('forcelanguage'), '',key($languages),$languages));
$temp->add(new admin_setting_configselect('moodlecourse/lang', get_string('forcelanguage'), '',key($languages),$languages));
$temp->add(new admin_setting_heading('progress', new lang_string('progress','completion'), ''));
$temp->add(new admin_setting_configselect('moodlecourse/enablecompletion', new lang_string('completion','completion'), '',
0, array(0 => new lang_string('completiondisabled','completion'), 1 => new lang_string('completionenabled','completion'))));
$temp->add(new admin_setting_heading('progress', get_string('progress','completion'), ''));
$temp->add(new admin_setting_configselect('moodlecourse/enablecompletion', get_string('completion','completion'), '',
0, array(0 => get_string('completiondisabled','completion'), 1 => get_string('completionenabled','completion'))));
$temp->add(new admin_setting_configcheckbox('moodlecourse/completionstartonenrol', new lang_string('completionstartonenrol','completion'), new lang_string('completionstartonenrolhelp', 'completion'), 0));
$temp->add(new admin_setting_configcheckbox('moodlecourse/completionstartonenrol', get_string('completionstartonenrol','completion'), get_string('completionstartonenrolhelp', 'completion'), 0));
$ADMIN->add('courses', $temp);
/// "courserequests" settingpage
$temp = new admin_settingpage('courserequest', new lang_string('courserequest'));
$temp->add(new admin_setting_configcheckbox('enablecourserequests', new lang_string('enablecourserequests', 'admin'), new lang_string('configenablecourserequests', 'admin'), 0));
$temp->add(new admin_settings_coursecat_select('defaultrequestcategory', new lang_string('defaultrequestcategory', 'admin'), new lang_string('configdefaultrequestcategory', 'admin'), 1));
$temp->add(new admin_setting_users_with_capability('courserequestnotify', new lang_string('courserequestnotify', 'admin'), new lang_string('configcourserequestnotify2', 'admin'), array(), 'moodle/site:approvecourse'));
$temp = new admin_settingpage('courserequest', get_string('courserequest'));
$temp->add(new admin_setting_configcheckbox('enablecourserequests', get_string('enablecourserequests', 'admin'), get_string('configenablecourserequests', 'admin'), 0));
$temp->add(new admin_settings_coursecat_select('defaultrequestcategory', get_string('defaultrequestcategory', 'admin'), get_string('configdefaultrequestcategory', 'admin'), 1));
$temp->add(new admin_setting_users_with_capability('courserequestnotify', get_string('courserequestnotify', 'admin'), get_string('configcourserequestnotify2', 'admin'), array(), 'moodle/site:approvecourse'));
$ADMIN->add('courses', $temp);
/// Pending course requests.
if (!empty($CFG->enablecourserequests)) {
$ADMIN->add('courses', new admin_externalpage('coursespending', new lang_string('pendingrequests'),
$ADMIN->add('courses', new admin_externalpage('coursespending', get_string('pendingrequests'),
$CFG->wwwroot . '/course/pending.php', array('moodle/site:approvecourse')));
}
// Add a category for backups
$ADMIN->add('courses', new admin_category('backups', new lang_string('backups','admin')));
$ADMIN->add('courses', new admin_category('backups', get_string('backups','admin')));
// Create a page for general backups configuration and defaults.
$temp = new admin_settingpage('backupgeneralsettings', new lang_string('generalbackdefaults', 'backup'), 'moodle/backup:backupcourse');
$temp = new admin_settingpage('backupgeneralsettings', get_string('generalbackdefaults', 'backup'), 'moodle/backup:backupcourse');
// General configuration section.
$temp->add(new admin_setting_configselect('backup/loglifetime', new lang_string('loglifetime', 'backup'), new lang_string('configloglifetime', 'backup'), 30, array(
1 => new lang_string('numdays', '', 1),
2 => new lang_string('numdays', '', 2),
3 => new lang_string('numdays', '', 3),
5 => new lang_string('numdays', '', 5),
7 => new lang_string('numdays', '', 7),
10 => new lang_string('numdays', '', 10),
14 => new lang_string('numdays', '', 14),
20 => new lang_string('numdays', '', 20),
30 => new lang_string('numdays', '', 30),
60 => new lang_string('numdays', '', 60),
90 => new lang_string('numdays', '', 90),
120 => new lang_string('numdays', '', 120),
180 => new lang_string('numdays', '', 180),
365 => new lang_string('numdays', '', 365)
$temp->add(new admin_setting_configselect('backup/loglifetime', get_string('loglifetime', 'backup'), get_string('configloglifetime', 'backup'), 30, array(
1 => get_string('numdays', '', 1),
2 => get_string('numdays', '', 2),
3 => get_string('numdays', '', 3),
5 => get_string('numdays', '', 5),
7 => get_string('numdays', '', 7),
10 => get_string('numdays', '', 10),
14 => get_string('numdays', '', 14),
20 => get_string('numdays', '', 20),
30 => get_string('numdays', '', 30),
60 => get_string('numdays', '', 60),
90 => get_string('numdays', '', 90),
120 => get_string('numdays', '', 120),
180 => get_string('numdays', '', 180),
365 => get_string('numdays', '', 365)
)));
// General defaults section.
$temp->add(new admin_setting_heading('generalsettings', new lang_string('generalsettings', 'backup'), ''));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_users', new lang_string('generalusers','backup'), new lang_string('configgeneralusers','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_anonymize', new lang_string('generalanonymize','backup'), new lang_string('configgeneralanonymize','backup'), array('value'=>0, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_role_assignments', new lang_string('generalroleassignments','backup'), new lang_string('configgeneralroleassignments','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_activities', new lang_string('generalactivities','backup'), new lang_string('configgeneralactivities','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_blocks', new lang_string('generalblocks','backup'), new lang_string('configgeneralblocks','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_filters', new lang_string('generalfilters','backup'), new lang_string('configgeneralfilters','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_comments', new lang_string('generalcomments','backup'), new lang_string('configgeneralcomments','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_userscompletion', new lang_string('generaluserscompletion','backup'), new lang_string('configgeneraluserscompletion','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_logs', new lang_string('generallogs','backup'), new lang_string('configgenerallogs','backup'), array('value'=>0, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_histories', new lang_string('generalhistories','backup'), new lang_string('configgeneralhistories','backup'), array('value'=>0, 'locked'=>0)));
$temp->add(new admin_setting_heading('generalsettings', get_string('generalsettings', 'backup'), ''));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_users', get_string('generalusers','backup'), get_string('configgeneralusers','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_anonymize', get_string('generalanonymize','backup'), get_string('configgeneralanonymize','backup'), array('value'=>0, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_role_assignments', get_string('generalroleassignments','backup'), get_string('configgeneralroleassignments','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_activities', get_string('generalactivities','backup'), get_string('configgeneralactivities','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_blocks', get_string('generalblocks','backup'), get_string('configgeneralblocks','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_filters', get_string('generalfilters','backup'), get_string('configgeneralfilters','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_comments', get_string('generalcomments','backup'), get_string('configgeneralcomments','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_userscompletion', get_string('generaluserscompletion','backup'), get_string('configgeneraluserscompletion','backup'), array('value'=>1, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_logs', get_string('generallogs','backup'), get_string('configgenerallogs','backup'), array('value'=>0, 'locked'=>0)));
$temp->add(new admin_setting_configcheckbox_with_lock('backup/backup_general_histories', get_string('generalhistories','backup'), get_string('configgeneralhistories','backup'), array('value'=>0, 'locked'=>0)));
$ADMIN->add('backups', $temp);
// Create a page for automated backups configuration and defaults.
$temp = new admin_settingpage('automated', new lang_string('automatedsetup','backup'), 'moodle/backup:backupcourse');
$temp = new admin_settingpage('automated', get_string('automatedsetup','backup'), 'moodle/backup:backupcourse');
// Automated configuration section.
$temp->add(new admin_setting_configselect('backup/backup_auto_active', new lang_string('active'), new lang_string('autoactivedescription', 'backup'), 0, array(
0 => new lang_string('autoactivedisabled', 'backup'),
1 => new lang_string('autoactiveenabled', 'backup'),
2 => new lang_string('autoactivemanual', 'backup')
$temp->add(new admin_setting_configselect('backup/backup_auto_active', get_string('active'), get_string('autoactivedescription', 'backup'), 0, array(
0 => get_string('autoactivedisabled', 'backup'),
1 => get_string('autoactiveenabled', 'backup'),
2 => get_string('autoactivemanual', 'backup')
)));
$temp->add(new admin_setting_special_backupdays());
$temp->add(new admin_setting_configtime('backup/backup_auto_hour', 'backup_auto_minute', new lang_string('executeat'),
new lang_string('backupexecuteathelp'), array('h' => 0, 'm' => 0)));
$temp->add(new admin_setting_configtime('backup/backup_auto_hour', 'backup_auto_minute', get_string('executeat'),
get_string('backupexecuteathelp'), array('h' => 0, 'm' => 0)));
$storageoptions = array(
0 => new lang_string('storagecourseonly', 'backup'),
1 => new lang_string('storageexternalonly', 'backup'),
2 => new lang_string('storagecourseandexternal', 'backup')
0 => get_string('storagecourseonly', 'backup'),
1 => get_string('storageexternalonly', 'backup'),
2 => get_string('storagecourseandexternal', 'backup')
);
$temp->add(new admin_setting_configselect('backup/backup_auto_storage', new lang_string('automatedstorage', 'backup'), new lang_string('automatedstoragehelp', 'backup'), 0, $storageoptions));
$temp->add(new admin_setting_configdirectory('backup/backup_auto_destination', new lang_string('saveto'), new lang_string('backupsavetohelp'), ''));
$temp->add(new admin_setting_configselect('backup/backup_auto_storage', get_string('automatedstorage', 'backup'), get_string('automatedstoragehelp', 'backup'), 0, $storageoptions));
$temp->add(new admin_setting_configdirectory('backup/backup_auto_destination', get_string('saveto'), get_string('backupsavetohelp'), ''));
$keepoptoins = array(
0 => new lang_string('all'), 1 => '1',
0 => get_string('all'), 1 => '1',
2 => '2',
5 => '5',
10 => '10',
@@ -160,24 +160,24 @@ if ($hassiteconfig
300 => '300',
400 => '400',
500 => '500');
$temp->add(new admin_setting_configselect('backup/backup_auto_keep', new lang_string('keep'), new lang_string('backupkeephelp'), 1, $keepoptoins));
$temp->add(new admin_setting_configcheckbox('backup/backup_shortname', new lang_string('backup_shortname', 'admin'), new lang_string('backup_shortnamehelp', 'admin'), 0));
$temp->add(new admin_setting_configselect('backup/backup_auto_keep', get_string('keep'), get_string('backupkeephelp'), 1, $keepoptoins));
$temp->add(new admin_setting_configcheckbox('backup/backup_shortname', get_string('backup_shortname', 'admin'), get_string('backup_shortnamehelp', 'admin'), 0));
// Automated defaults section.
$temp->add(new admin_setting_heading('automatedsettings', new lang_string('automatedsettings','backup'), ''));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_users', new lang_string('generalusers', 'backup'), new lang_string('configgeneralusers', 'backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_role_assignments', new lang_string('generalroleassignments','backup'), new lang_string('configgeneralroleassignments','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_activities', new lang_string('generalactivities','backup'), new lang_string('configgeneralactivities','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_blocks', new lang_string('generalblocks','backup'), new lang_string('configgeneralblocks','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_filters', new lang_string('generalfilters','backup'), new lang_string('configgeneralfilters','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_comments', new lang_string('generalcomments','backup'), new lang_string('configgeneralcomments','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_userscompletion', new lang_string('generaluserscompletion','backup'), new lang_string('configgeneraluserscompletion','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_logs', new lang_string('generallogs', 'backup'), new lang_string('configgenerallogs', 'backup'), 0));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_histories', new lang_string('generalhistories','backup'), new lang_string('configgeneralhistories','backup'), 0));
$temp->add(new admin_setting_heading('automatedsettings', get_string('automatedsettings','backup'), ''));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_users', get_string('generalusers', 'backup'), get_string('configgeneralusers', 'backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_role_assignments', get_string('generalroleassignments','backup'), get_string('configgeneralroleassignments','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_activities', get_string('generalactivities','backup'), get_string('configgeneralactivities','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_blocks', get_string('generalblocks','backup'), get_string('configgeneralblocks','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_filters', get_string('generalfilters','backup'), get_string('configgeneralfilters','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_comments', get_string('generalcomments','backup'), get_string('configgeneralcomments','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_userscompletion', get_string('generaluserscompletion','backup'), get_string('configgeneraluserscompletion','backup'), 1));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_logs', get_string('generallogs', 'backup'), get_string('configgenerallogs', 'backup'), 0));
$temp->add(new admin_setting_configcheckbox('backup/backup_auto_histories', get_string('generalhistories','backup'), get_string('configgeneralhistories','backup'), 0));
//$temp->add(new admin_setting_configcheckbox('backup/backup_auto_messages', new lang_string('messages', 'message'), new lang_string('backupmessageshelp','message'), 0));
//$temp->add(new admin_setting_configcheckbox('backup/backup_auto_blogs', new lang_string('blogs', 'blog'), new lang_string('backupblogshelp','blog'), 0));
//$temp->add(new admin_setting_configcheckbox('backup/backup_auto_messages', get_string('messages', 'message'), get_string('backupmessageshelp','message'), 0));
//$temp->add(new admin_setting_configcheckbox('backup/backup_auto_blogs', get_string('blogs', 'blog'), get_string('backupblogshelp','blog'), 0));
$ADMIN->add('backups', $temp);
+38 -44
View File
@@ -5,67 +5,61 @@
if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// Experimental settings page
$ADMIN->add('development', new admin_category('experimental', new lang_string('experimental','admin')));
$ADMIN->add('development', new admin_category('experimental', get_string('experimental','admin')));
$temp = new admin_settingpage('experimentalsettings', new lang_string('experimentalsettings', 'admin'));
$temp = new admin_settingpage('experimentalsettings', get_string('experimentalsettings', 'admin'));
//TODO: Re-enable cc-import once re-implemented in 2.0.x
//$temp->add(new admin_setting_configcheckbox('enableimsccimport', new lang_string('enable_cc_import', 'imscc'), new lang_string('enable_cc_import_description', 'imscc'), 0));
$temp->add(new admin_setting_configcheckbox('enablesafebrowserintegration', new lang_string('enablesafebrowserintegration', 'admin'), new lang_string('configenablesafebrowserintegration', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('enablegroupmembersonly', new lang_string('enablegroupmembersonly', 'admin'), new lang_string('configenablegroupmembersonly', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('dndallowtextandlinks', new lang_string('dndallowtextandlinks', 'admin'), new lang_string('configdndallowtextandlinks', 'admin'), 0));
// The CSS optimiser setting. When changed we need to reset the theme caches in order to ensure they are regenerated through the optimiser.
$enablecssoptimiser = new admin_setting_configcheckbox('enablecssoptimiser', new lang_string('enablecssoptimiser','admin'), new lang_string('enablecssoptimiser_desc','admin'), 0);
$enablecssoptimiser->set_updatedcallback('theme_reset_all_caches');
$temp->add($enablecssoptimiser);
//$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));
$temp->add(new admin_setting_configcheckbox('enablegroupmembersonly', get_string('enablegroupmembersonly', 'admin'), get_string('configenablegroupmembersonly', 'admin'), 0));
$ADMIN->add('experimental', $temp);
// "debugging" settingpage
$temp = new admin_settingpage('debugging', new lang_string('debugging', 'admin'));
$temp = new admin_settingpage('debugging', get_string('debugging', 'admin'));
$temp->add(new admin_setting_special_debug());
$temp->add(new admin_setting_configcheckbox('debugdisplay', new lang_string('debugdisplay', 'admin'), new lang_string('configdebugdisplay', 'admin'), ini_get_bool('display_errors')));
$temp->add(new admin_setting_configcheckbox('xmlstrictheaders', new lang_string('xmlstrictheaders', 'admin'), new lang_string('configxmlstrictheaders', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('debugsmtp', new lang_string('debugsmtp', 'admin'), new lang_string('configdebugsmtp', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('perfdebug', new lang_string('perfdebug', 'admin'), new lang_string('configperfdebug', 'admin'), '7', '15', '7'));
$temp->add(new admin_setting_configcheckbox('debugstringids', new lang_string('debugstringids', 'admin'), new lang_string('debugstringids_desc', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('debugvalidators', new lang_string('debugvalidators', 'admin'), new lang_string('configdebugvalidators', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('debugpageinfo', new lang_string('debugpageinfo', 'admin'), new lang_string('configdebugpageinfo', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('debugdisplay', get_string('debugdisplay', 'admin'), get_string('configdebugdisplay', 'admin'), ini_get_bool('display_errors')));
$temp->add(new admin_setting_configcheckbox('xmlstrictheaders', get_string('xmlstrictheaders', 'admin'), get_string('configxmlstrictheaders', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('debugsmtp', get_string('debugsmtp', 'admin'), get_string('configdebugsmtp', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('perfdebug', get_string('perfdebug', 'admin'), get_string('configperfdebug', 'admin'), '7', '15', '7'));
$temp->add(new admin_setting_configcheckbox('debugstringids', get_string('debugstringids', 'admin'), get_string('debugstringids_desc', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('debugvalidators', get_string('debugvalidators', 'admin'), get_string('configdebugvalidators', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('debugpageinfo', get_string('debugpageinfo', 'admin'), get_string('configdebugpageinfo', 'admin'), 0));
$ADMIN->add('development', $temp);
// "profiling" settingpage (conditionally if the 'xhprof' extension is available only)
if (extension_loaded('xhprof') && function_exists('xhprof_enable')) {
$temp = new admin_settingpage('profiling', new lang_string('profiling', 'admin'));
$temp = new admin_settingpage('profiling', get_string('profiling', 'admin'));
// Main profiling switch
$temp->add(new admin_setting_configcheckbox('profilingenabled', new lang_string('profilingenabled', 'admin'), new lang_string('profilingenabled_help', 'admin'), false));
$temp->add(new admin_setting_configcheckbox('profilingenabled', get_string('profilingenabled', 'admin'), get_string('profilingenabled_help', 'admin'), false));
// List of URLs that will be automatically profiled
$temp->add(new admin_setting_configtextarea('profilingincluded', new lang_string('profilingincluded', 'admin'), new lang_string('profilingincluded_help', 'admin'), ''));
$temp->add(new admin_setting_configtextarea('profilingincluded', get_string('profilingincluded', 'admin'), get_string('profilingincluded_help', 'admin'), ''));
// List of URLs that won't be profiled ever
$temp->add(new admin_setting_configtextarea('profilingexcluded', new lang_string('profilingexcluded', 'admin'), new lang_string('profilingexcluded_help', 'admin'), ''));
$temp->add(new admin_setting_configtextarea('profilingexcluded', get_string('profilingexcluded', 'admin'), get_string('profilingexcluded_help', 'admin'), ''));
// Allow random profiling each XX requests
$temp->add(new admin_setting_configtext('profilingautofrec', new lang_string('profilingautofrec', 'admin'), new lang_string('profilingautofrec_help', 'admin'), 0, PARAM_INT));
$temp->add(new admin_setting_configtext('profilingautofrec', get_string('profilingautofrec', 'admin'), get_string('profilingautofrec_help', 'admin'), 0, PARAM_INT));
// Allow PROFILEME/DONTPROFILEME GPC
$temp->add(new admin_setting_configcheckbox('profilingallowme', new lang_string('profilingallowme', 'admin'), new lang_string('profilingallowme_help', 'admin'), false));
$temp->add(new admin_setting_configcheckbox('profilingallowme', get_string('profilingallowme', 'admin'), get_string('profilingallowme_help', 'admin'), false));
// Allow PROFILEALL/PROFILEALLSTOP GPC
$temp->add(new admin_setting_configcheckbox('profilingallowall', new lang_string('profilingallowall', 'admin'), new lang_string('profilingallowall_help', 'admin'), false));
$temp->add(new admin_setting_configcheckbox('profilingallowall', get_string('profilingallowall', 'admin'), get_string('profilingallowall_help', 'admin'), false));
// TODO: Allow to skip PHP functions (XHPROF_FLAGS_NO_BUILTINS)
// TODO: Allow to skip call_user functions (ignored_functions array)
// Specify the life time (in minutes) of profiling runs
$temp->add(new admin_setting_configselect('profilinglifetime', new lang_string('profilinglifetime', 'admin'), new lang_string('profilinglifetime_help', 'admin'), 24*60, array(
0 => new lang_string('neverdeleteruns', 'admin'),
30*24*60 => new lang_string('numdays', '', 30),
15*24*60 => new lang_string('numdays', '', 15),
7*24*60 => new lang_string('numdays', '', 7),
4*24*60 => new lang_string('numdays', '', 4),
2*24*60 => new lang_string('numdays', '', 2),
24*60 => new lang_string('numhours', '', 24),
16*80 => new lang_string('numhours', '', 16),
8*60 => new lang_string('numhours', '', 8),
4*60 => new lang_string('numhours', '', 4),
2*60 => new lang_string('numhours', '', 2),
60 => new lang_string('numminutes', '', 60),
30 => new lang_string('numminutes', '', 30),
15 => new lang_string('numminutes', '', 15))));
$temp->add(new admin_setting_configselect('profilinglifetime', get_string('profilinglifetime', 'admin'), get_string('profilinglifetime_help', 'admin'), 24*60, array(
0 => get_string('neverdeleteruns', 'admin'),
30*24*60 => get_string('numdays', '', 30),
15*24*60 => get_string('numdays', '', 15),
7*24*60 => get_string('numdays', '', 7),
4*24*60 => get_string('numdays', '', 4),
2*24*60 => get_string('numdays', '', 2),
24*60 => get_string('numhours', '', 24),
16*80 => get_string('numhours', '', 16),
8*60 => get_string('numhours', '', 8),
4*60 => get_string('numhours', '', 4),
2*60 => get_string('numhours', '', 2),
60 => get_string('numminutes', '', 60),
30 => get_string('numminutes', '', 30),
15 => get_string('numminutes', '', 15))));
// Add the 'profiling' page to admin block
$ADMIN->add('development', $temp);
@@ -73,12 +67,12 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// Web service test clients DO NOT COMMIT : THE EXTERNAL WEB PAGE IS NOT AN ADMIN PAGE !!!!!
$ADMIN->add('development', new admin_externalpage('testclient', new lang_string('testclient', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/testclient.php"));
$ADMIN->add('development', new admin_externalpage('testclient', get_string('testclient', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/testclient.php"));
if ($CFG->mnet_dispatcher_mode !== 'off') {
$ADMIN->add('development', new admin_externalpage('mnettestclient', new lang_string('testclient', 'mnet'), "$CFG->wwwroot/$CFG->admin/mnet/testclient.php"));
$ADMIN->add('development', new admin_externalpage('mnettestclient', get_string('testclient', 'mnet'), "$CFG->wwwroot/$CFG->admin/mnet/testclient.php"));
}
$ADMIN->add('development', new admin_externalpage('purgecaches', new lang_string('purgecaches','admin'), "$CFG->wwwroot/$CFG->admin/purgecaches.php"));
$ADMIN->add('development', new admin_externalpage('purgecaches', get_string('purgecaches','admin'), "$CFG->wwwroot/$CFG->admin/purgecaches.php"));
} // end of speedup
+17 -17
View File
@@ -20,22 +20,22 @@ if (!during_initial_install()) { //do not use during installation
'moodle/question:moveall'), $frontpagecontext)) {
// "frontpage" settingpage
$temp = new admin_settingpage('frontpagesettings', new lang_string('frontpagesettings','admin'), 'moodle/course:update', false, $frontpagecontext);
$temp->add(new admin_setting_sitesettext('fullname', new lang_string('fullsitename'), '', NULL)); // no default
$temp->add(new admin_setting_sitesettext('shortname', new lang_string('shortsitename'), '', NULL)); // no default
$temp = new admin_settingpage('frontpagesettings', get_string('frontpagesettings','admin'), 'moodle/course:update', false, $frontpagecontext);
$temp->add(new admin_setting_sitesettext('fullname', get_string('fullsitename'), '', NULL)); // no default
$temp->add(new admin_setting_sitesettext('shortname', get_string('shortsitename'), '', NULL)); // no default
$temp->add(new admin_setting_special_frontpagedesc());
$temp->add(new admin_setting_courselist_frontpage(false)); // non-loggedin version of the setting (that's what the parameter is for :) )
$temp->add(new admin_setting_courselist_frontpage(true)); // loggedin version of the setting
$options = array();
$options[] = new lang_string('unlimited');
$options[] = get_string('unlimited');
for ($i=1; $i<100; $i++) {
$options[$i] = $i;
}
$temp->add(new admin_setting_configselect('maxcategorydepth', new lang_string('configsitemaxcategorydepth','admin'), new lang_string('configsitemaxcategorydepthhelp','admin'), 0, $options));
$temp->add(new admin_setting_configselect('maxcategorydepth', get_string('configsitemaxcategorydepth','admin'), get_string('configsitemaxcategorydepthhelp','admin'), 0, $options));
$temp->add(new admin_setting_sitesetcheckbox('numsections', new lang_string('sitesection'), new lang_string('sitesectionhelp','admin'), 1));
$temp->add(new admin_setting_sitesetselect('newsitems', new lang_string('newsitemsnumber'), '', 3,
$temp->add(new admin_setting_sitesetcheckbox('numsections', get_string('sitesection'), get_string('sitesectionhelp','admin'), 1));
$temp->add(new admin_setting_sitesetselect('newsitems', get_string('newsitemsnumber'), '', 3,
array('0' => '0',
'1' => '1',
'2' => '2',
@@ -47,12 +47,12 @@ if (!during_initial_install()) { //do not use during installation
'8' => '8',
'9' => '9',
'10' => '10')));
$temp->add(new admin_setting_configtext('commentsperpage', new lang_string('commentsperpage', 'admin'), '', 15, PARAM_INT));
$temp->add(new admin_setting_configtext('commentsperpage', get_string('commentsperpage', 'admin'), '', 15, PARAM_INT));
$temp->add(new admin_setting_configtext('coursesperpage', new lang_string('coursesperpage', 'admin'), new lang_string('configcoursesperpage', 'admin'), 20, PARAM_INT));
$temp->add(new admin_setting_configtext('coursesperpage', get_string('coursesperpage', 'admin'), get_string('configcoursesperpage', 'admin'), 20, PARAM_INT));
// front page default role
$options = array(0=>new lang_string('none')); // roles to choose from
$options = array(0=>get_string('none')); // roles to choose from
$defaultfrontpageroleid = 0;
foreach (get_all_roles() as $role) {
if (empty($role->archetype) or $role->archetype === 'guest' or $role->archetype === 'frontpage' or $role->archetype === 'student') {
@@ -66,18 +66,18 @@ if (!during_initial_install()) { //do not use during installation
//frotpage role may not exist in old upgraded sites
unset($options[0]);
}
$temp->add(new admin_setting_configselect('defaultfrontpageroleid', new lang_string('frontpagedefaultrole', 'admin'), '', $defaultfrontpageroleid, $options));
$temp->add(new admin_setting_configselect('defaultfrontpageroleid', get_string('frontpagedefaultrole', 'admin'), '', $defaultfrontpageroleid, $options));
$ADMIN->add('frontpage', $temp);
$ADMIN->add('frontpage', new admin_externalpage('frontpageroles', new lang_string('frontpageroles', 'admin'), "$CFG->wwwroot/$CFG->admin/roles/assign.php?contextid=" . $frontpagecontext->id, 'moodle/role:assign', false, $frontpagecontext));
$ADMIN->add('frontpage', new admin_externalpage('frontpageroles', get_string('frontpageroles', 'admin'), "$CFG->wwwroot/$CFG->admin/roles/assign.php?contextid=" . $frontpagecontext->id, 'moodle/role:assign', false, $frontpagecontext));
$ADMIN->add('frontpage', new admin_externalpage('frontpagefilters', new lang_string('frontpagefilters', 'admin'), "$CFG->wwwroot/filter/manage.php?contextid=" . $frontpagecontext->id, 'moodle/filter:manage', false, $frontpagecontext));
$ADMIN->add('frontpage', new admin_externalpage('frontpagefilters', get_string('frontpagefilters', 'admin'), "$CFG->wwwroot/filter/manage.php?contextid=" . $frontpagecontext->id, 'moodle/filter:manage', false, $frontpagecontext));
$ADMIN->add('frontpage', new admin_externalpage('frontpagebackup', new lang_string('frontpagebackup', 'admin'), $CFG->wwwroot.'/backup/backup.php?id='.SITEID, 'moodle/backup:backupcourse', false, $frontpagecontext));
$ADMIN->add('frontpage', new admin_externalpage('frontpagebackup', get_string('frontpagebackup', 'admin'), $CFG->wwwroot.'/backup/backup.php?id='.SITEID, 'moodle/backup:backupcourse', false, $frontpagecontext));
$ADMIN->add('frontpage', new admin_externalpage('frontpagerestore', new lang_string('frontpagerestore', 'admin'), $CFG->wwwroot.'/files/index.php?id='.SITEID.'&amp;wdir=/backupdata', 'moodle/restore:restorecourse', false, $frontpagecontext));
$ADMIN->add('frontpage', new admin_externalpage('frontpagerestore', get_string('frontpagerestore', 'admin'), $CFG->wwwroot.'/backup/restorefile.php?contextid='.$frontpagecontext->id, 'moodle/restore:restorecourse', false, $frontpagecontext));
$questioncapabilities = array(
'moodle/question:add',
@@ -87,10 +87,10 @@ if (!during_initial_install()) { //do not use during installation
'moodle/question:viewall',
'moodle/question:movemine',
'moodle/question:moveall');
$ADMIN->add('frontpage', new admin_externalpage('frontpagequestions', new lang_string('frontpagequestions', 'admin'), $CFG->wwwroot.'/question/edit.php?courseid='.SITEID, $questioncapabilities, false, $frontpagecontext));
$ADMIN->add('frontpage', new admin_externalpage('frontpagequestions', get_string('frontpagequestions', 'admin'), $CFG->wwwroot.'/question/edit.php?courseid='.SITEID, $questioncapabilities, false, $frontpagecontext));
if (!empty($SITE->legacyfiles) and $SITE->legacyfiles === 2) {
$ADMIN->add('frontpage', new admin_externalpage('sitefiles', new lang_string('sitelegacyfiles'), $CFG->wwwroot . '/files/index.php?id=' . SITEID, 'moodle/course:managefiles', false, $frontpagecontext));
$ADMIN->add('frontpage', new admin_externalpage('sitefiles', get_string('sitelegacyfiles'), $CFG->wwwroot . '/files/index.php?id=' . SITEID, 'moodle/course:managefiles', false, $frontpagecontext));
}
}
}
+84 -86
View File
@@ -6,21 +6,21 @@ if (has_capability('moodle/grade:manage', $systemcontext)
or has_capability('moodle/grade:manageletters', $systemcontext)) { // speedup for non-admins, add all caps used on this page
require_once $CFG->libdir.'/grade/constants.php';
$display_types = array(GRADE_DISPLAY_TYPE_REAL => new lang_string('real', 'grades'),
GRADE_DISPLAY_TYPE_PERCENTAGE => new lang_string('percentage', 'grades'),
GRADE_DISPLAY_TYPE_LETTER => new lang_string('letter', 'grades'),
GRADE_DISPLAY_TYPE_REAL_PERCENTAGE => new lang_string('realpercentage', 'grades'),
GRADE_DISPLAY_TYPE_REAL_LETTER => new lang_string('realletter', 'grades'),
GRADE_DISPLAY_TYPE_LETTER_REAL => new lang_string('letterreal', 'grades'),
GRADE_DISPLAY_TYPE_LETTER_PERCENTAGE => new lang_string('letterpercentage', 'grades'),
GRADE_DISPLAY_TYPE_PERCENTAGE_LETTER => new lang_string('percentageletter', 'grades'),
GRADE_DISPLAY_TYPE_PERCENTAGE_REAL => new lang_string('percentagereal', 'grades')
$display_types = array(GRADE_DISPLAY_TYPE_REAL => get_string('real', 'grades'),
GRADE_DISPLAY_TYPE_PERCENTAGE => get_string('percentage', 'grades'),
GRADE_DISPLAY_TYPE_LETTER => get_string('letter', 'grades'),
GRADE_DISPLAY_TYPE_REAL_PERCENTAGE => get_string('realpercentage', 'grades'),
GRADE_DISPLAY_TYPE_REAL_LETTER => get_string('realletter', 'grades'),
GRADE_DISPLAY_TYPE_LETTER_REAL => get_string('letterreal', 'grades'),
GRADE_DISPLAY_TYPE_LETTER_PERCENTAGE => get_string('letterpercentage', 'grades'),
GRADE_DISPLAY_TYPE_PERCENTAGE_LETTER => get_string('percentageletter', 'grades'),
GRADE_DISPLAY_TYPE_PERCENTAGE_REAL => get_string('percentagereal', 'grades')
);
asort($display_types);
// General settings
$temp = new admin_settingpage('gradessettings', new lang_string('generalsettings', 'grades'), 'moodle/grade:manage');
$temp = new admin_settingpage('gradessettings', get_string('generalsettings', 'grades'), 'moodle/grade:manage');
if ($ADMIN->fulltree) {
// new CFG variable for gradebook (what roles to display)
@@ -30,35 +30,33 @@ if (has_capability('moodle/grade:manage', $systemcontext)
$temp->add(new admin_setting_grade_profilereport());
$temp->add(new admin_setting_configselect('grade_aggregationposition', new lang_string('aggregationposition', 'grades'),
new lang_string('aggregationposition_help', 'grades'), GRADE_REPORT_AGGREGATION_POSITION_LAST,
array(GRADE_REPORT_AGGREGATION_POSITION_FIRST => new lang_string('positionfirst', 'grades'),
GRADE_REPORT_AGGREGATION_POSITION_LAST => new lang_string('positionlast', 'grades'))));
$temp->add(new admin_setting_configselect('grade_aggregationposition', get_string('aggregationposition', 'grades'),
get_string('aggregationposition_help', 'grades'), GRADE_REPORT_AGGREGATION_POSITION_LAST,
array(GRADE_REPORT_AGGREGATION_POSITION_FIRST => get_string('positionfirst', 'grades'),
GRADE_REPORT_AGGREGATION_POSITION_LAST => get_string('positionlast', 'grades'))));
$temp->add(new admin_setting_regradingcheckbox('grade_includescalesinaggregation', new lang_string('includescalesinaggregation', 'grades'), new lang_string('includescalesinaggregation_help', 'grades'), 1));
$temp->add(new admin_setting_regradingcheckbox('grade_includescalesinaggregation', get_string('includescalesinaggregation', 'grades'), get_string('includescalesinaggregation_help', 'grades'), 1));
$temp->add(new admin_setting_configcheckbox('grade_hiddenasdate', new lang_string('hiddenasdate', 'grades'), new lang_string('hiddenasdate_help', 'grades'), 0));
$temp->add(new admin_setting_configcheckbox('grade_hiddenasdate', get_string('hiddenasdate', 'grades'), get_string('hiddenasdate_help', 'grades'), 0));
// enable publishing in exports/imports
$temp->add(new admin_setting_configcheckbox('gradepublishing', new lang_string('gradepublishing', 'grades'), new lang_string('gradepublishing_help', 'grades'), 0));
$temp->add(new admin_setting_configcheckbox('gradepublishing', get_string('gradepublishing', 'grades'), get_string('gradepublishing_help', 'grades'), 0));
$temp->add(new admin_setting_configselect('grade_export_displaytype', new lang_string('gradeexportdisplaytype', 'grades'),
new lang_string('gradeexportdisplaytype_desc', 'grades'), GRADE_DISPLAY_TYPE_REAL, $display_types));
$temp->add(new admin_setting_configselect('grade_export_displaytype', get_string('gradeexportdisplaytype', 'grades'),
get_string('gradeexportdisplaytype_desc', 'grades'), GRADE_DISPLAY_TYPE_REAL, $display_types));
$temp->add(new admin_setting_configselect('grade_export_decimalpoints', new lang_string('gradeexportdecimalpoints', 'grades'),
new lang_string('gradeexportdecimalpoints_desc', 'grades'), 2,
$temp->add(new admin_setting_configselect('grade_export_decimalpoints', get_string('gradeexportdecimalpoints', 'grades'),
get_string('gradeexportdecimalpoints_desc', 'grades'), 2,
array( '0' => '0',
'1' => '1',
'2' => '2',
'3' => '3',
'4' => '4',
'5' => '5')));
$temp->add(new admin_setting_configselect('grade_navmethod', new lang_string('navmethod', 'grades'), null, 0,
array(GRADE_NAVMETHOD_DROPDOWN => new lang_string('dropdown', 'grades'),
GRADE_NAVMETHOD_TABS => new lang_string('tabs', 'grades'),
GRADE_NAVMETHOD_COMBO => new lang_string('combo', 'grades'))));
$temp->add(new admin_setting_configcheckbox('recovergradesdefault', new lang_string('recovergradesdefault', 'grades'), new lang_string('recovergradesdefault_help', 'grades'), 0));
$temp->add(new admin_setting_configselect('grade_navmethod', get_string('navmethod', 'grades'), null, 0,
array(GRADE_NAVMETHOD_DROPDOWN => get_string('dropdown', 'grades'),
GRADE_NAVMETHOD_TABS => get_string('tabs', 'grades'),
GRADE_NAVMETHOD_COMBO => get_string('combo', 'grades'))));
$temp->add(new admin_setting_special_gradeexport());
@@ -67,68 +65,68 @@ if (has_capability('moodle/grade:manage', $systemcontext)
$ADMIN->add('grades', $temp);
/// Grade category settings
$temp = new admin_settingpage('gradecategorysettings', new lang_string('gradecategorysettings', 'grades'), 'moodle/grade:manage');
$temp = new admin_settingpage('gradecategorysettings', get_string('gradecategorysettings', 'grades'), 'moodle/grade:manage');
if ($ADMIN->fulltree) {
$temp->add(new admin_setting_configcheckbox('grade_hideforcedsettings', new lang_string('hideforcedsettings', 'grades'), new lang_string('hideforcedsettings_help', 'grades'), '1'));
$temp->add(new admin_setting_configcheckbox('grade_hideforcedsettings', get_string('hideforcedsettings', 'grades'), get_string('hideforcedsettings_help', 'grades'), '1'));
$strnoforce = new lang_string('noforce', 'grades');
$strnoforce = get_string('noforce', 'grades');
// Aggregation type
$options = array(GRADE_AGGREGATE_MEAN =>new lang_string('aggregatemean', 'grades'),
GRADE_AGGREGATE_WEIGHTED_MEAN =>new lang_string('aggregateweightedmean', 'grades'),
GRADE_AGGREGATE_WEIGHTED_MEAN2 =>new lang_string('aggregateweightedmean2', 'grades'),
GRADE_AGGREGATE_EXTRACREDIT_MEAN=>new lang_string('aggregateextracreditmean', 'grades'),
GRADE_AGGREGATE_MEDIAN =>new lang_string('aggregatemedian', 'grades'),
GRADE_AGGREGATE_MIN =>new lang_string('aggregatemin', 'grades'),
GRADE_AGGREGATE_MAX =>new lang_string('aggregatemax', 'grades'),
GRADE_AGGREGATE_MODE =>new lang_string('aggregatemode', 'grades'),
GRADE_AGGREGATE_SUM =>new lang_string('aggregatesum', 'grades'));
$options = array(GRADE_AGGREGATE_MEAN =>get_string('aggregatemean', 'grades'),
GRADE_AGGREGATE_WEIGHTED_MEAN =>get_string('aggregateweightedmean', 'grades'),
GRADE_AGGREGATE_WEIGHTED_MEAN2 =>get_string('aggregateweightedmean2', 'grades'),
GRADE_AGGREGATE_EXTRACREDIT_MEAN=>get_string('aggregateextracreditmean', 'grades'),
GRADE_AGGREGATE_MEDIAN =>get_string('aggregatemedian', 'grades'),
GRADE_AGGREGATE_MIN =>get_string('aggregatemin', 'grades'),
GRADE_AGGREGATE_MAX =>get_string('aggregatemax', 'grades'),
GRADE_AGGREGATE_MODE =>get_string('aggregatemode', 'grades'),
GRADE_AGGREGATE_SUM =>get_string('aggregatesum', 'grades'));
$defaultvisible = array(GRADE_AGGREGATE_MEAN, GRADE_AGGREGATE_WEIGHTED_MEAN, GRADE_AGGREGATE_WEIGHTED_MEAN2,
GRADE_AGGREGATE_EXTRACREDIT_MEAN, GRADE_AGGREGATE_MEDIAN, GRADE_AGGREGATE_MIN,
GRADE_AGGREGATE_MAX, GRADE_AGGREGATE_MODE, GRADE_AGGREGATE_SUM);
$defaults = array('value'=>GRADE_AGGREGATE_WEIGHTED_MEAN2, 'forced'=>false, 'adv'=>false);
$temp->add(new admin_setting_gradecat_combo('grade_aggregation', new lang_string('aggregation', 'grades'), new lang_string('aggregation_help', 'grades'), $defaults, $options));
$temp->add(new admin_setting_gradecat_combo('grade_aggregation', get_string('aggregation', 'grades'), get_string('aggregation_help', 'grades'), $defaults, $options));
$temp->add(new admin_setting_configmultiselect('grade_aggregations_visible', new lang_string('aggregationsvisible', 'grades'),
new lang_string('aggregationsvisiblehelp', 'grades'), $defaultvisible, $options));
$temp->add(new admin_setting_configmultiselect('grade_aggregations_visible', get_string('aggregationsvisible', 'grades'),
get_string('aggregationsvisiblehelp', 'grades'), $defaultvisible, $options));
$options = array(0 => new lang_string('no'), 1 => new lang_string('yes'));
$options = array(0 => get_string('no'), 1 => get_string('yes'));
$defaults = array('value'=>1, 'forced'=>false, 'adv'=>true);
$temp->add(new admin_setting_gradecat_combo('grade_aggregateonlygraded', new lang_string('aggregateonlygraded', 'grades'),
new lang_string('aggregateonlygraded_help', 'grades'), $defaults, $options));
$temp->add(new admin_setting_gradecat_combo('grade_aggregateonlygraded', get_string('aggregateonlygraded', 'grades'),
get_string('aggregateonlygraded_help', 'grades'), $defaults, $options));
$defaults = array('value'=>0, 'forced'=>false, 'adv'=>true);
$temp->add(new admin_setting_gradecat_combo('grade_aggregateoutcomes', new lang_string('aggregateoutcomes', 'grades'),
new lang_string('aggregateoutcomes_help', 'grades'), $defaults, $options));
$temp->add(new admin_setting_gradecat_combo('grade_aggregatesubcats', new lang_string('aggregatesubcats', 'grades'),
new lang_string('aggregatesubcats_help', 'grades'), $defaults, $options));
$temp->add(new admin_setting_gradecat_combo('grade_aggregateoutcomes', get_string('aggregateoutcomes', 'grades'),
get_string('aggregateoutcomes_help', 'grades'), $defaults, $options));
$temp->add(new admin_setting_gradecat_combo('grade_aggregatesubcats', get_string('aggregatesubcats', 'grades'),
get_string('aggregatesubcats_help', 'grades'), $defaults, $options));
$options = array(0 => new lang_string('none'));
$options = array(0 => get_string('none'));
for ($i=1; $i<=20; $i++) {
$options[$i] = $i;
}
$defaults['value'] = 0;
$defaults['forced'] = true;
$temp->add(new admin_setting_gradecat_combo('grade_keephigh', new lang_string('keephigh', 'grades'),
new lang_string('keephigh_help', 'grades'), $defaults, $options));
$temp->add(new admin_setting_gradecat_combo('grade_keephigh', get_string('keephigh', 'grades'),
get_string('keephigh_help', 'grades'), $defaults, $options));
$defaults['forced'] = false;
$temp->add(new admin_setting_gradecat_combo('grade_droplow', new lang_string('droplow', 'grades'),
new lang_string('droplow_help', 'grades'), $defaults, $options));
$temp->add(new admin_setting_gradecat_combo('grade_droplow', get_string('droplow', 'grades'),
get_string('droplow_help', 'grades'), $defaults, $options));
}
$ADMIN->add('grades', $temp);
/// Grade item settings
$temp = new admin_settingpage('gradeitemsettings', new lang_string('gradeitemsettings', 'grades'), 'moodle/grade:manage');
$temp = new admin_settingpage('gradeitemsettings', get_string('gradeitemsettings', 'grades'), 'moodle/grade:manage');
if ($ADMIN->fulltree) {
$temp->add(new admin_setting_configselect('grade_displaytype', new lang_string('gradedisplaytype', 'grades'),
new lang_string('gradedisplaytype_help', 'grades'), GRADE_DISPLAY_TYPE_REAL, $display_types));
$temp->add(new admin_setting_configselect('grade_displaytype', get_string('gradedisplaytype', 'grades'),
get_string('gradedisplaytype_help', 'grades'), GRADE_DISPLAY_TYPE_REAL, $display_types));
$temp->add(new admin_setting_configselect('grade_decimalpoints', new lang_string('decimalpoints', 'grades'),
new lang_string('decimalpoints_help', 'grades'), 2,
$temp->add(new admin_setting_configselect('grade_decimalpoints', get_string('decimalpoints', 'grades'),
get_string('decimalpoints_help', 'grades'), 2,
array( '0' => '0',
'1' => '1',
'2' => '2',
@@ -136,48 +134,48 @@ if (has_capability('moodle/grade:manage', $systemcontext)
'4' => '4',
'5' => '5')));
$temp->add(new admin_setting_configmultiselect('grade_item_advanced', new lang_string('gradeitemadvanced', 'grades'), new lang_string('gradeitemadvanced_help', 'grades'),
$temp->add(new admin_setting_configmultiselect('grade_item_advanced', get_string('gradeitemadvanced', 'grades'), get_string('gradeitemadvanced_help', 'grades'),
array('iteminfo', 'idnumber', 'gradepass', 'plusfactor', 'multfactor', 'display', 'decimals', 'hiddenuntil', 'locktime'),
array('iteminfo' => new lang_string('iteminfo', 'grades'),
'idnumber' => new lang_string('idnumbermod'),
'gradetype' => new lang_string('gradetype', 'grades'),
'scaleid' => new lang_string('scale'),
'grademin' => new lang_string('grademin', 'grades'),
'grademax' => new lang_string('grademax', 'grades'),
'gradepass' => new lang_string('gradepass', 'grades'),
'plusfactor' => new lang_string('plusfactor', 'grades'),
'multfactor' => new lang_string('multfactor', 'grades'),
'display' => new lang_string('gradedisplaytype', 'grades'),
'decimals' => new lang_string('decimalpoints', 'grades'),
'hidden' => new lang_string('hidden', 'grades'),
'hiddenuntil' => new lang_string('hiddenuntil', 'grades'),
'locked' => new lang_string('locked', 'grades'),
'locktime' => new lang_string('locktime', 'grades'),
'aggregationcoef' => new lang_string('aggregationcoef', 'grades'),
'parentcategory' => new lang_string('parentcategory', 'grades'))));
array('iteminfo' => get_string('iteminfo', 'grades'),
'idnumber' => get_string('idnumbermod'),
'gradetype' => get_string('gradetype', 'grades'),
'scaleid' => get_string('scale'),
'grademin' => get_string('grademin', 'grades'),
'grademax' => get_string('grademax', 'grades'),
'gradepass' => get_string('gradepass', 'grades'),
'plusfactor' => get_string('plusfactor', 'grades'),
'multfactor' => get_string('multfactor', 'grades'),
'display' => get_string('gradedisplaytype', 'grades'),
'decimals' => get_string('decimalpoints', 'grades'),
'hidden' => get_string('hidden', 'grades'),
'hiddenuntil' => get_string('hiddenuntil', 'grades'),
'locked' => get_string('locked', 'grades'),
'locktime' => get_string('locktime', 'grades'),
'aggregationcoef' => get_string('aggregationcoef', 'grades'),
'parentcategory' => get_string('parentcategory', 'grades'))));
}
$ADMIN->add('grades', $temp);
/// Scales and outcomes
$scales = new admin_externalpage('scales', new lang_string('scales'), $CFG->wwwroot.'/grade/edit/scale/index.php', 'moodle/grade:manage');
$scales = new admin_externalpage('scales', get_string('scales'), $CFG->wwwroot.'/grade/edit/scale/index.php', 'moodle/grade:manage');
$ADMIN->add('grades', $scales);
if (!empty($CFG->enableoutcomes)) {
$outcomes = new admin_externalpage('outcomes', new lang_string('outcomes', 'grades'), $CFG->wwwroot.'/grade/edit/outcome/index.php', 'moodle/grade:manage');
$outcomes = new admin_externalpage('outcomes', get_string('outcomes', 'grades'), $CFG->wwwroot.'/grade/edit/outcome/index.php', 'moodle/grade:manage');
$ADMIN->add('grades', $outcomes);
}
$letters = new admin_externalpage('letters', new lang_string('letters', 'grades'), $CFG->wwwroot.'/grade/edit/letter/index.php', 'moodle/grade:manageletters');
$letters = new admin_externalpage('letters', get_string('letters', 'grades'), $CFG->wwwroot.'/grade/edit/letter/index.php', 'moodle/grade:manageletters');
$ADMIN->add('grades', $letters);
// The plugins must implement a settings.php file that adds their admin settings to the $settings object
// Reports
$ADMIN->add('grades', new admin_category('gradereports', new lang_string('reportsettings', 'grades')));
$ADMIN->add('grades', new admin_category('gradereports', get_string('reportsettings', 'grades')));
foreach (get_plugin_list('gradereport') as $plugin => $plugindir) {
// Include all the settings commands for this plugin if there are any
if (file_exists($plugindir.'/settings.php')) {
$settings = new admin_settingpage('gradereport'.$plugin, new lang_string('pluginname', 'gradereport_'.$plugin), 'moodle/grade:manage');
$settings = new admin_settingpage('gradereport'.$plugin, get_string('pluginname', 'gradereport_'.$plugin), 'moodle/grade:manage');
include($plugindir.'/settings.php');
if ($settings) {
$ADMIN->add('gradereports', $settings);
@@ -186,12 +184,12 @@ if (has_capability('moodle/grade:manage', $systemcontext)
}
// Imports
$ADMIN->add('grades', new admin_category('gradeimports', new lang_string('importsettings', 'grades')));
$ADMIN->add('grades', new admin_category('gradeimports', get_string('importsettings', 'grades')));
foreach (get_plugin_list('gradeimport') as $plugin => $plugindir) {
// Include all the settings commands for this plugin if there are any
if (file_exists($plugindir.'/settings.php')) {
$settings = new admin_settingpage('gradeimport'.$plugin, new lang_string('pluginname', 'gradeimport_'.$plugin), 'moodle/grade:manage');
$settings = new admin_settingpage('gradeimport'.$plugin, get_string('pluginname', 'gradeimport_'.$plugin), 'moodle/grade:manage');
include($plugindir.'/settings.php');
if ($settings) {
$ADMIN->add('gradeimports', $settings);
@@ -201,11 +199,11 @@ if (has_capability('moodle/grade:manage', $systemcontext)
// Exports
$ADMIN->add('grades', new admin_category('gradeexports', new lang_string('exportsettings', 'grades')));
$ADMIN->add('grades', new admin_category('gradeexports', get_string('exportsettings', 'grades')));
foreach (get_plugin_list('gradeexport') as $plugin => $plugindir) {
// Include all the settings commands for this plugin if there are any
if (file_exists($plugindir.'/settings.php')) {
$settings = new admin_settingpage('gradeexport'.$plugin, new lang_string('pluginname', 'gradeexport_'.$plugin), 'moodle/grade:manage');
$settings = new admin_settingpage('gradeexport'.$plugin, get_string('pluginname', 'gradeexport_'.$plugin), 'moodle/grade:manage');
include($plugindir.'/settings.php');
if ($settings) {
$ADMIN->add('gradeexports', $settings);
+8 -8
View File
@@ -5,15 +5,15 @@
if ($hassiteconfig) {
// "languageandlocation" settingpage
$temp = new admin_settingpage('langsettings', new lang_string('languagesettings', 'admin'));
$temp->add(new admin_setting_configcheckbox('autolang', new lang_string('autolang', 'admin'), new lang_string('configautolang', 'admin'), 1));
$temp->add(new admin_setting_configselect('lang', new lang_string('lang', 'admin'), new lang_string('configlang', 'admin'), current_language(), get_string_manager()->get_list_of_translations())); // $CFG->lang might be set in installer already, default en is in setup.php
$temp->add(new admin_setting_configcheckbox('langmenu', new lang_string('langmenu', 'admin'), new lang_string('configlangmenu', 'admin'), 1));
$temp = new admin_settingpage('langsettings', get_string('languagesettings', 'admin'));
$temp->add(new admin_setting_configcheckbox('autolang', get_string('autolang', 'admin'), get_string('configautolang', 'admin'), 1));
$temp->add(new admin_setting_configselect('lang', get_string('lang', 'admin'), get_string('configlang', 'admin'), current_language(), get_string_manager()->get_list_of_translations())); // $CFG->lang might be set in installer already, default en is in setup.php
$temp->add(new admin_setting_configcheckbox('langmenu', get_string('langmenu', 'admin'), get_string('configlangmenu', 'admin'), 1));
$temp->add(new admin_setting_langlist());
$temp->add(new admin_setting_configcheckbox('langcache', new lang_string('langcache', 'admin'), new lang_string('langcache_desc', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('langstringcache', new lang_string('langstringcache', 'admin'), new lang_string('configlangstringcache', 'admin'), 1));
$temp->add(new admin_setting_configtext('locale', new lang_string('localetext', 'admin'), new lang_string('configlocale', 'admin'), '', PARAM_FILE));
$temp->add(new admin_setting_configselect('latinexcelexport', new lang_string('latinexcelexport', 'admin'), new lang_string('configlatinexcelexport', 'admin'), '0', array('0'=>'Unicode','1'=>'Latin')));
$temp->add(new admin_setting_configcheckbox('langcache', get_string('langcache', 'admin'), get_string('langcache_desc', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('langstringcache', get_string('langstringcache', 'admin'), get_string('configlangstringcache', 'admin'), 1));
$temp->add(new admin_setting_configtext('locale', get_string('localetext', 'admin'), get_string('configlocale', 'admin'), '', PARAM_FILE));
$temp->add(new admin_setting_configselect('latinexcelexport', get_string('latinexcelexport', 'admin'), get_string('configlatinexcelexport', 'admin'), '0', array('0'=>'Unicode','1'=>'Latin')));
$ADMIN->add('language', $temp);
+11 -11
View File
@@ -3,20 +3,20 @@
if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// "locations" settingpage
$temp = new admin_settingpage('locationsettings', new lang_string('locationsettings', 'admin'));
$temp = new admin_settingpage('locationsettings', get_string('locationsettings', 'admin'));
$options = get_list_of_timezones();
$options[99] = new lang_string('serverlocaltime');
$temp->add(new admin_setting_configselect('timezone', new lang_string('timezone','admin'), new lang_string('configtimezone', 'admin'), 99, $options));
$options[99] = new lang_string('timezonenotforced', 'admin');
$temp->add(new admin_setting_configselect('forcetimezone', new lang_string('forcetimezone', 'admin'), new lang_string('helpforcetimezone', 'admin'), 99, $options));
$temp->add(new admin_settings_country_select('country', new lang_string('country', 'admin'), new lang_string('configcountry', 'admin'), 0));
$temp->add(new admin_setting_configtext('defaultcity', new lang_string('defaultcity', 'admin'), new lang_string('defaultcity_help', 'admin'), ''));
$options[99] = get_string('serverlocaltime');
$temp->add(new admin_setting_configselect('timezone', get_string('timezone','admin'), get_string('configtimezone', 'admin'), 99, $options));
$options[99] = get_string('timezonenotforced', 'admin');
$temp->add(new admin_setting_configselect('forcetimezone', get_string('forcetimezone', 'admin'), get_string('helpforcetimezone', 'admin'), 99, $options));
$temp->add(new admin_settings_country_select('country', get_string('country', 'admin'), get_string('configcountry', 'admin'), 0));
$temp->add(new admin_setting_configtext('defaultcity', get_string('defaultcity', 'admin'), get_string('defaultcity_help', 'admin'), ''));
$temp->add(new admin_setting_heading('iplookup', new lang_string('iplookup', 'admin'), new lang_string('iplookupinfo', 'admin')));
$temp->add(new admin_setting_configfile('geoipfile', new lang_string('geoipfile', 'admin'), new lang_string('configgeoipfile', 'admin', $CFG->dataroot.'/geoip/'), $CFG->dataroot.'/geoip/GeoLiteCity.dat'));
$temp->add(new admin_setting_configtext('googlemapkey', new lang_string('googlemapkey', 'admin'), new lang_string('configgooglemapkey', 'admin', $CFG->wwwroot), ''));
$temp->add(new admin_setting_heading('iplookup', get_string('iplookup', 'admin'), get_string('iplookupinfo', 'admin')));
$temp->add(new admin_setting_configfile('geoipfile', get_string('geoipfile', 'admin'), get_string('configgeoipfile', 'admin', $CFG->dataroot.'/geoip/'), $CFG->dataroot.'/geoip/GeoLiteCity.dat'));
$temp->add(new admin_setting_configtext('googlemapkey', get_string('googlemapkey', 'admin'), get_string('configgooglemapkey', 'admin', $CFG->wwwroot), ''));
$temp->add(new admin_setting_configtext('allcountrycodes', new lang_string('allcountrycodes', 'admin'), new lang_string('configallcountrycodes', 'admin'), '', '/^(?:\w+(?:,\w+)*)?$/'));
$temp->add(new admin_setting_configtext('allcountrycodes', get_string('allcountrycodes', 'admin'), get_string('configallcountrycodes', 'admin'), '', '/^(?:\w+(?:,\w+)*)?$/'));
$ADMIN->add('location', $temp);
+11 -11
View File
@@ -4,18 +4,18 @@
if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$ADMIN->add('mnet', new admin_externalpage('net', new lang_string('settings', 'mnet'),
$ADMIN->add('mnet', new admin_externalpage('net', get_string('settings', 'mnet'),
"$CFG->wwwroot/$CFG->admin/mnet/index.php",
'moodle/site:config'));
$ADMIN->add('mnet', new admin_externalpage('mnetpeers', new lang_string('managemnetpeers', 'mnet'),
$ADMIN->add('mnet', new admin_externalpage('mnetpeers', get_string('managemnetpeers', 'mnet'),
"$CFG->wwwroot/$CFG->admin/mnet/peers.php",
'moodle/site:config'));
$ADMIN->add('mnet', new admin_category('mnetpeercat', new lang_string('mnetpeers', 'mnet')));
$ADMIN->add('mnet', new admin_category('mnetpeercat', get_string('mnetpeers', 'mnet')));
if (isset($CFG->mnet_dispatcher_mode) and $CFG->mnet_dispatcher_mode !== 'off') {
require_once($CFG->dirroot.'/mnet/lib.php');
@@ -23,39 +23,39 @@ if (isset($CFG->mnet_dispatcher_mode) and $CFG->mnet_dispatcher_mode !== 'off')
$hosts = mnet_get_hosts();
foreach ($hosts as $host) {
if ($host->id == $CFG->mnet_all_hosts_id) {
$host->name = new lang_string('allhosts', 'core_mnet');
$host->name = get_string('allhosts', 'core_mnet');
}
$ADMIN->add('mnetpeercat',
new admin_externalpage(
'mnetpeer' . $host->id,
$host->name,
$CFG->wwwroot . '/admin/mnet/peers.php?step=update&hostid=' . $host->id,
$CFG->wwwroot . '/'.$CFG->admin.'/mnet/peers.php?step=update&hostid=' . $host->id,
'moodle/site:config'
)
);
}
}
$ADMIN->add('mnet', new admin_externalpage('ssoaccesscontrol', new lang_string('ssoaccesscontrol', 'mnet'),
$ADMIN->add('mnet', new admin_externalpage('ssoaccesscontrol', get_string('ssoaccesscontrol', 'mnet'),
"$CFG->wwwroot/$CFG->admin/mnet/access_control.php",
'moodle/site:config'));
$ADMIN->add('mnet', new admin_externalpage('mnetenrol', new lang_string('clientname', 'mnetservice_enrol'),
$ADMIN->add('mnet', new admin_externalpage('mnetenrol', get_string('clientname', 'mnetservice_enrol'),
"$CFG->wwwroot/mnet/service/enrol/index.php",
'moodle/site:config'));
$ADMIN->add('mnet', new admin_externalpage('trustedhosts', new lang_string('trustedhosts', 'mnet'),
$ADMIN->add('mnet', new admin_externalpage('trustedhosts', get_string('trustedhosts', 'mnet'),
"$CFG->wwwroot/$CFG->admin/mnet/trustedhosts.php",
'moodle/site:config'));
if (isset($CFG->mnet_dispatcher_mode) and $CFG->mnet_dispatcher_mode !== 'off') {
$profilefields = new admin_settingpage('mnetprofilefields', new lang_string('profilefields', 'mnet'),
$profilefields = new admin_settingpage('mnetprofilefields', get_string('profilefields', 'mnet'),
'moodle/site:config');
$ADMIN->add('mnet', $profilefields);
$fields = mnet_profile_field_options();
$forced = implode(', ', $fields['forced']);
$profilefields->add(new admin_setting_configmultiselect('mnetprofileexportfields', new lang_string('profileexportfields', 'mnet'), new lang_string('profilefielddesc', 'mnet', $forced), $fields['legacy'], $fields['optional']));
$profilefields->add(new admin_setting_configmultiselect('mnetprofileimportfields', new lang_string('profileimportfields', 'mnet'), new lang_string('profilefielddesc', 'mnet', $forced), $fields['legacy'], $fields['optional']));
$profilefields->add(new admin_setting_configmultiselect('mnetprofileexportfields', get_string('profileexportfields', 'mnet'), get_string('profilefielddesc', 'mnet', $forced), $fields['legacy'], $fields['optional']));
$profilefields->add(new admin_setting_configmultiselect('mnetprofileimportfields', get_string('profileimportfields', 'mnet'), get_string('profilefielddesc', 'mnet', $forced), $fields['legacy'], $fields['optional']));
}
+131 -131
View File
@@ -6,7 +6,7 @@
if ($hassiteconfig) {
$ADMIN->add('modules', new admin_page_pluginsoverview());
$ADMIN->add('modules', new admin_category('modsettings', new lang_string('activitymodules')));
$ADMIN->add('modules', new admin_category('modsettings', get_string('activitymodules')));
$ADMIN->add('modsettings', new admin_page_managemods());
$modules = $DB->get_records('modules', array(), "name ASC");
foreach ($modules as $module) {
@@ -14,7 +14,7 @@ if ($hassiteconfig) {
if (!file_exists("$CFG->dirroot/mod/$modulename/lib.php")) {
continue;
}
$strmodulename = new lang_string('modulename', 'mod_'.$modulename);
$strmodulename = get_string('modulename', 'mod_'.$modulename);
if (file_exists($CFG->dirroot.'/mod/'.$modulename.'/settings.php')) {
// do not show disabled modules in tree, keep only settings link on manage page
$settings = new admin_settingpage('modsetting'.$modulename, $strmodulename, 'moodle/site:config', !$module->visible);
@@ -28,7 +28,7 @@ if ($hassiteconfig) {
// hidden script for converting journals to online assignments (or something like that) linked from elsewhere
$ADMIN->add('modsettings', new admin_externalpage('oacleanup', 'Online Assignment Cleanup', $CFG->wwwroot.'/'.$CFG->admin.'/oacleanup.php', 'moodle/site:config', true));
$ADMIN->add('modules', new admin_category('blocksettings', new lang_string('blocks')));
$ADMIN->add('modules', new admin_category('blocksettings', get_string('blocks')));
$ADMIN->add('blocksettings', new admin_page_manageblocks());
$blocks = $DB->get_records('block', array(), "name ASC");
foreach ($blocks as $block) {
@@ -36,7 +36,7 @@ if ($hassiteconfig) {
if (!file_exists("$CFG->dirroot/blocks/$blockname/block_$blockname.php")) {
continue;
}
$strblockname = new lang_string('pluginname', 'block_'.$blockname);
$strblockname = get_string('pluginname', 'block_'.$blockname);
if (file_exists($CFG->dirroot.'/blocks/'.$blockname.'/settings.php')) {
$settings = new admin_settingpage('blocksetting'.$blockname, $strblockname, 'moodle/site:config', !$block->visible);
include($CFG->dirroot.'/blocks/'.$blockname.'/settings.php');
@@ -47,7 +47,7 @@ if ($hassiteconfig) {
}
// message outputs
$ADMIN->add('modules', new admin_category('messageoutputs', new lang_string('messageoutputs', 'message')));
$ADMIN->add('modules', new admin_category('messageoutputs', get_string('messageoutputs', 'message')));
$ADMIN->add('messageoutputs', new admin_page_managemessageoutputs());
$ADMIN->add('messageoutputs', new admin_page_defaultmessageoutputs());
require_once($CFG->dirroot.'/message/lib.php');
@@ -58,7 +58,7 @@ if ($hassiteconfig) {
continue;
}
if ($processor->hassettings) {
$strprocessorname = new lang_string('pluginname', 'message_'.$processorname);
$strprocessorname = get_string('pluginname', 'message_'.$processorname);
$settings = new admin_settingpage('messagesetting'.$processorname, $strprocessorname, 'moodle/site:config', !$processor->enabled);
include($CFG->dirroot.'/message/output/'.$processor->name.'/settings.php');
if ($settings) {
@@ -68,35 +68,35 @@ if ($hassiteconfig) {
}
// authentication plugins
$ADMIN->add('modules', new admin_category('authsettings', new lang_string('authentication', 'admin')));
$ADMIN->add('modules', new admin_category('authsettings', get_string('authentication', 'admin')));
$temp = new admin_settingpage('manageauths', new lang_string('authsettings', 'admin'));
$temp = new admin_settingpage('manageauths', get_string('authsettings', 'admin'));
$temp->add(new admin_setting_manageauths());
$temp->add(new admin_setting_heading('manageauthscommonheading', new lang_string('commonsettings', 'admin'), ''));
$temp->add(new admin_setting_heading('manageauthscommonheading', get_string('commonsettings', 'admin'), ''));
$temp->add(new admin_setting_special_registerauth());
$temp->add(new admin_setting_configcheckbox('authpreventaccountcreation', new lang_string('authpreventaccountcreation', 'admin'), new lang_string('authpreventaccountcreation_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('loginpageautofocus', new lang_string('loginpageautofocus', 'admin'), new lang_string('loginpageautofocus_help', 'admin'), 0));
$temp->add(new admin_setting_configselect('guestloginbutton', new lang_string('guestloginbutton', 'auth'),
new lang_string('showguestlogin', 'auth'), '1', array('0'=>new lang_string('hide'), '1'=>new lang_string('show'))));
$temp->add(new admin_setting_configtext('alternateloginurl', new lang_string('alternateloginurl', 'auth'),
new lang_string('alternatelogin', 'auth', htmlspecialchars(get_login_url())), ''));
$temp->add(new admin_setting_configtext('forgottenpasswordurl', new lang_string('forgottenpasswordurl', 'auth'),
new lang_string('forgottenpassword', 'auth'), ''));
$temp->add(new admin_setting_confightmleditor('auth_instructions', new lang_string('instructions', 'auth'),
new lang_string('authinstructions', 'auth'), ''));
$temp->add(new admin_setting_configtext('allowemailaddresses', new lang_string('allowemailaddresses', 'admin'), new lang_string('configallowemailaddresses', 'admin'), '', PARAM_NOTAGS));
$temp->add(new admin_setting_configtext('denyemailaddresses', new lang_string('denyemailaddresses', 'admin'), new lang_string('configdenyemailaddresses', 'admin'), '', PARAM_NOTAGS));
$temp->add(new admin_setting_configcheckbox('verifychangedemail', new lang_string('verifychangedemail', 'admin'), new lang_string('configverifychangedemail', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('authpreventaccountcreation', get_string('authpreventaccountcreation', 'admin'), get_string('authpreventaccountcreation_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('loginpageautofocus', get_string('loginpageautofocus', 'admin'), get_string('loginpageautofocus_help', 'admin'), 0));
$temp->add(new admin_setting_configselect('guestloginbutton', get_string('guestloginbutton', 'auth'),
get_string('showguestlogin', 'auth'), '1', array('0'=>get_string('hide'), '1'=>get_string('show'))));
$temp->add(new admin_setting_configtext('alternateloginurl', get_string('alternateloginurl', 'auth'),
get_string('alternatelogin', 'auth', htmlspecialchars(get_login_url())), ''));
$temp->add(new admin_setting_configtext('forgottenpasswordurl', get_string('forgottenpasswordurl', 'auth'),
get_string('forgottenpassword', 'auth'), ''));
$temp->add(new admin_setting_confightmleditor('auth_instructions', get_string('instructions', 'auth'),
get_string('authinstructions', 'auth'), ''));
$temp->add(new admin_setting_configtext('allowemailaddresses', get_string('allowemailaddresses', 'admin'), get_string('configallowemailaddresses', 'admin'), '', PARAM_NOTAGS));
$temp->add(new admin_setting_configtext('denyemailaddresses', get_string('denyemailaddresses', 'admin'), get_string('configdenyemailaddresses', 'admin'), '', PARAM_NOTAGS));
$temp->add(new admin_setting_configcheckbox('verifychangedemail', get_string('verifychangedemail', 'admin'), get_string('configverifychangedemail', 'admin'), 1));
$temp->add(new admin_setting_configtext('recaptchapublickey', new lang_string('recaptchapublickey', 'admin'), new lang_string('configrecaptchapublickey', 'admin'), '', PARAM_NOTAGS));
$temp->add(new admin_setting_configtext('recaptchaprivatekey', new lang_string('recaptchaprivatekey', 'admin'), new lang_string('configrecaptchaprivatekey', 'admin'), '', PARAM_NOTAGS));
$temp->add(new admin_setting_configtext('recaptchapublickey', get_string('recaptchapublickey', 'admin'), get_string('configrecaptchapublickey', 'admin'), '', PARAM_NOTAGS));
$temp->add(new admin_setting_configtext('recaptchaprivatekey', get_string('recaptchaprivatekey', 'admin'), get_string('configrecaptchaprivatekey', 'admin'), '', PARAM_NOTAGS));
$ADMIN->add('authsettings', $temp);
$auths = get_plugin_list('auth');
$authsenabled = get_enabled_auth_plugins();
foreach ($auths as $authname => $authdir) {
$strauthname = new lang_string('pluginname', "auth_{$authname}");
$strauthname = get_string('pluginname', "auth_{$authname}");
// do not show disabled auths in tree, keep only settings link on manage page
$enabled = in_array($authname, $authsenabled);
if (file_exists($authdir.'/settings.php')) {
@@ -114,8 +114,8 @@ if ($hassiteconfig) {
// Enrolment plugins
$ADMIN->add('modules', new admin_category('enrolments', new lang_string('enrolments', 'enrol')));
$temp = new admin_settingpage('manageenrols', new lang_string('manageenrols', 'enrol'));
$ADMIN->add('modules', new admin_category('enrolments', get_string('enrolments', 'enrol')));
$temp = new admin_settingpage('manageenrols', get_string('manageenrols', 'enrol'));
$temp->add(new admin_setting_manageenrols());
if (empty($CFG->enrol_plugins_enabled)) {
$enabled = array();
@@ -129,7 +129,7 @@ if ($hassiteconfig) {
continue;
}
$settings = new admin_settingpage('enrolsettings'.$enrol, new lang_string('pluginname', 'enrol_'.$enrol), 'moodle/site:config', !in_array($enrol, $enabled));
$settings = new admin_settingpage('enrolsettings'.$enrol, get_string('pluginname', 'enrol_'.$enrol), 'moodle/site:config', !in_array($enrol, $enabled));
// settings.php may create a subcategory or unset the settings completely
include("$enrolpath/settings.php");
if ($settings) {
@@ -142,8 +142,8 @@ if ($hassiteconfig) {
/// Editor plugins
$ADMIN->add('modules', new admin_category('editorsettings', new lang_string('editors', 'editor')));
$temp = new admin_settingpage('manageeditors', new lang_string('editorsettings', 'editor'));
$ADMIN->add('modules', new admin_category('editorsettings', get_string('editors', 'editor')));
$temp = new admin_settingpage('manageeditors', get_string('editorsettings', 'editor'));
$temp->add(new admin_setting_manageeditors());
$htmleditors = editors_get_available();
$ADMIN->add('editorsettings', $temp);
@@ -151,7 +151,7 @@ if ($hassiteconfig) {
$editors_available = editors_get_available();
foreach ($editors_available as $editor=>$editorstr) {
if (file_exists($CFG->dirroot . '/lib/editor/'.$editor.'/settings.php')) {
$settings = new admin_settingpage('editorsettings'.$editor, new lang_string('pluginname', 'editor_'.$editor), 'moodle/site:config');
$settings = new admin_settingpage('editorsettings'.$editor, get_string('pluginname', 'editor_'.$editor), 'moodle/site:config');
// settings.php may create a subcategory or unset the settings completely
include($CFG->dirroot . '/lib/editor/'.$editor.'/settings.php');
if ($settings) {
@@ -161,56 +161,56 @@ if ($hassiteconfig) {
}
/// License types
$ADMIN->add('modules', new admin_category('licensesettings', new lang_string('licenses')));
$temp = new admin_settingpage('managelicenses', new lang_string('managelicenses', 'admin'));
$ADMIN->add('modules', new admin_category('licensesettings', get_string('licenses')));
$temp = new admin_settingpage('managelicenses', get_string('managelicenses', 'admin'));
require_once($CFG->libdir . '/licenselib.php');
$licenses = array();
$array = explode(',', $CFG->licenses);
foreach ($array as $value) {
$licenses[$value] = new lang_string($value, 'license');
$licenses[$value] = get_string($value, 'license');
}
$temp->add(new admin_setting_configselect('sitedefaultlicense', new lang_string('configsitedefaultlicense','admin'), new lang_string('configsitedefaultlicensehelp','admin'), 'allrightsreserved', $licenses));
$temp->add(new admin_setting_configselect('sitedefaultlicense', get_string('configsitedefaultlicense','admin'), get_string('configsitedefaultlicensehelp','admin'), 'allrightsreserved', $licenses));
$temp->add(new admin_setting_managelicenses());
$ADMIN->add('licensesettings', $temp);
/// Filter plugins
$ADMIN->add('modules', new admin_category('filtersettings', new lang_string('managefilters')));
$ADMIN->add('modules', new admin_category('filtersettings', get_string('managefilters')));
$ADMIN->add('filtersettings', new admin_page_managefilters());
// "filtersettings" settingpage
$temp = new admin_settingpage('commonfiltersettings', new lang_string('commonfiltersettings', 'admin'));
$temp = new admin_settingpage('commonfiltersettings', get_string('commonfiltersettings', 'admin'));
if ($ADMIN->fulltree) {
$cachetimes = array(
604800 => new lang_string('numdays','',7),
86400 => new lang_string('numdays','',1),
43200 => new lang_string('numhours','',12),
10800 => new lang_string('numhours','',3),
7200 => new lang_string('numhours','',2),
3600 => new lang_string('numhours','',1),
2700 => new lang_string('numminutes','',45),
1800 => new lang_string('numminutes','',30),
900 => new lang_string('numminutes','',15),
600 => new lang_string('numminutes','',10),
540 => new lang_string('numminutes','',9),
480 => new lang_string('numminutes','',8),
420 => new lang_string('numminutes','',7),
360 => new lang_string('numminutes','',6),
300 => new lang_string('numminutes','',5),
240 => new lang_string('numminutes','',4),
180 => new lang_string('numminutes','',3),
120 => new lang_string('numminutes','',2),
60 => new lang_string('numminutes','',1),
30 => new lang_string('numseconds','',30),
0 => new lang_string('no')
604800 => get_string('numdays','',7),
86400 => get_string('numdays','',1),
43200 => get_string('numhours','',12),
10800 => get_string('numhours','',3),
7200 => get_string('numhours','',2),
3600 => get_string('numhours','',1),
2700 => get_string('numminutes','',45),
1800 => get_string('numminutes','',30),
900 => get_string('numminutes','',15),
600 => get_string('numminutes','',10),
540 => get_string('numminutes','',9),
480 => get_string('numminutes','',8),
420 => get_string('numminutes','',7),
360 => get_string('numminutes','',6),
300 => get_string('numminutes','',5),
240 => get_string('numminutes','',4),
180 => get_string('numminutes','',3),
120 => get_string('numminutes','',2),
60 => get_string('numminutes','',1),
30 => get_string('numseconds','',30),
0 => get_string('no')
);
$items = array();
$items[] = new admin_setting_configselect('cachetext', new lang_string('cachetext', 'admin'), new lang_string('configcachetext', 'admin'), 60, $cachetimes);
$items[] = new admin_setting_configselect('filteruploadedfiles', new lang_string('filteruploadedfiles', 'admin'), new lang_string('configfilteruploadedfiles', 'admin'), 0,
array('0' => new lang_string('none'), '1' => new lang_string('allfiles'), '2' => new lang_string('htmlfilesonly')));
$items[] = new admin_setting_configcheckbox('filtermatchoneperpage', new lang_string('filtermatchoneperpage', 'admin'), new lang_string('configfiltermatchoneperpage', 'admin'), 0);
$items[] = new admin_setting_configcheckbox('filtermatchonepertext', new lang_string('filtermatchonepertext', 'admin'), new lang_string('configfiltermatchonepertext', 'admin'), 0);
$items[] = new admin_setting_configselect('cachetext', get_string('cachetext', 'admin'), get_string('configcachetext', 'admin'), 60, $cachetimes);
$items[] = new admin_setting_configselect('filteruploadedfiles', get_string('filteruploadedfiles', 'admin'), get_string('configfilteruploadedfiles', 'admin'), 0,
array('0' => get_string('none'), '1' => get_string('allfiles'), '2' => get_string('htmlfilesonly')));
$items[] = new admin_setting_configcheckbox('filtermatchoneperpage', get_string('filtermatchoneperpage', 'admin'), get_string('configfiltermatchoneperpage', 'admin'), 0);
$items[] = new admin_setting_configcheckbox('filtermatchonepertext', get_string('filtermatchonepertext', 'admin'), get_string('configfiltermatchonepertext', 'admin'), 0);
foreach ($items as $item) {
$item->set_updatedcallback('reset_text_filters_cache');
$temp->add($item);
@@ -234,8 +234,8 @@ if ($hassiteconfig) {
//== Portfolio settings ==
require_once($CFG->libdir. '/portfoliolib.php');
$catname = new lang_string('portfolios', 'portfolio');
$manage = new lang_string('manageportfolios', 'portfolio');
$catname = get_string('portfolios', 'portfolio');
$manage = get_string('manageportfolios', 'portfolio');
$url = "$CFG->wwwroot/$CFG->admin/portfolio.php";
$ADMIN->add('modules', new admin_category('portfoliosettings', $catname, empty($CFG->enableportfolios)));
@@ -245,37 +245,37 @@ if ($hassiteconfig) {
$ADMIN->add('portfoliosettings', $temp);
// Add common settings page
$temp = new admin_settingpage('manageportfolioscommon', new lang_string('commonportfoliosettings', 'portfolio'));
$temp->add(new admin_setting_heading('manageportfolioscommon', '', new lang_string('commonsettingsdesc', 'portfolio')));
$temp = new admin_settingpage('manageportfolioscommon', get_string('commonportfoliosettings', 'portfolio'));
$temp->add(new admin_setting_heading('manageportfolioscommon', '', get_string('commonsettingsdesc', 'portfolio')));
$fileinfo = portfolio_filesize_info(); // make sure this is defined in one place since its used inside portfolio too to detect insane settings
$fileoptions = $fileinfo['options'];
$temp->add(new admin_setting_configselect(
'portfolio_moderate_filesize_threshold',
new lang_string('moderatefilesizethreshold', 'portfolio'),
new lang_string('moderatefilesizethresholddesc', 'portfolio'),
get_string('moderatefilesizethreshold', 'portfolio'),
get_string('moderatefilesizethresholddesc', 'portfolio'),
$fileinfo['moderate'], $fileoptions));
$temp->add(new admin_setting_configselect(
'portfolio_high_filesize_threshold',
new lang_string('highfilesizethreshold', 'portfolio'),
new lang_string('highfilesizethresholddesc', 'portfolio'),
get_string('highfilesizethreshold', 'portfolio'),
get_string('highfilesizethresholddesc', 'portfolio'),
$fileinfo['high'], $fileoptions));
$temp->add(new admin_setting_configtext(
'portfolio_moderate_db_threshold',
new lang_string('moderatedbsizethreshold', 'portfolio'),
new lang_string('moderatedbsizethresholddesc', 'portfolio'),
get_string('moderatedbsizethreshold', 'portfolio'),
get_string('moderatedbsizethresholddesc', 'portfolio'),
20, PARAM_INTEGER, 3));
$temp->add(new admin_setting_configtext(
'portfolio_high_db_threshold',
new lang_string('highdbsizethreshold', 'portfolio'),
new lang_string('highdbsizethresholddesc', 'portfolio'),
get_string('highdbsizethreshold', 'portfolio'),
get_string('highdbsizethresholddesc', 'portfolio'),
50, PARAM_INTEGER, 3));
$ADMIN->add('portfoliosettings', $temp);
$ADMIN->add('portfoliosettings', new admin_externalpage('portfolionew', new lang_string('addnewportfolio', 'portfolio'), $url, 'moodle/site:config', true), '', $url);
$ADMIN->add('portfoliosettings', new admin_externalpage('portfoliodelete', new lang_string('deleteportfolio', 'portfolio'), $url, 'moodle/site:config', true), '', $url);
$ADMIN->add('portfoliosettings', new admin_externalpage('portfoliocontroller', new lang_string('manageportfolios', 'portfolio'), $url, 'moodle/site:config', true), '', $url);
$ADMIN->add('portfoliosettings', new admin_externalpage('portfolionew', get_string('addnewportfolio', 'portfolio'), $url, 'moodle/site:config', true), '', $url);
$ADMIN->add('portfoliosettings', new admin_externalpage('portfoliodelete', get_string('deleteportfolio', 'portfolio'), $url, 'moodle/site:config', true), '', $url);
$ADMIN->add('portfoliosettings', new admin_externalpage('portfoliocontroller', get_string('manageportfolios', 'portfolio'), $url, 'moodle/site:config', true), '', $url);
foreach (portfolio_instances(false, false) as $portfolio) {
require_once($CFG->dirroot . '/portfolio/' . $portfolio->get('plugin') . '/lib.php');
@@ -295,8 +295,8 @@ if ($hassiteconfig) {
// repository setting
require_once("$CFG->dirroot/repository/lib.php");
$catname =new lang_string('repositories', 'repository');
$managerepo = new lang_string('manage', 'repository');
$catname =get_string('repositories', 'repository');
$managerepo = get_string('manage', 'repository');
$url = $CFG->wwwroot.'/'.$CFG->admin.'/repository.php';
$ADMIN->add('modules', new admin_category('repositorysettings', $catname));
@@ -305,81 +305,81 @@ if ($hassiteconfig) {
$ADMIN->add('repositorysettings', $temp);
// Add common settings page
$temp = new admin_settingpage('managerepositoriescommon', new lang_string('commonrepositorysettings', 'repository'));
$temp->add(new admin_setting_configtext('repositorycacheexpire', new lang_string('cacheexpire', 'repository'), new lang_string('configcacheexpire', 'repository'), 120));
$temp->add(new admin_setting_configcheckbox('repositoryallowexternallinks', new lang_string('allowexternallinks', 'repository'), new lang_string('configallowexternallinks', 'repository'), 1));
$temp->add(new admin_setting_configcheckbox('legacyfilesinnewcourses', new lang_string('legacyfilesinnewcourses', 'admin'), new lang_string('legacyfilesinnewcourses_help', 'admin'), 0));
$temp = new admin_settingpage('managerepositoriescommon', get_string('commonrepositorysettings', 'repository'));
$temp->add(new admin_setting_configtext('repositorycacheexpire', get_string('cacheexpire', 'repository'), get_string('configcacheexpire', 'repository'), 120));
$temp->add(new admin_setting_configcheckbox('repositoryallowexternallinks', get_string('allowexternallinks', 'repository'), get_string('configallowexternallinks', 'repository'), 1));
$temp->add(new admin_setting_configcheckbox('legacyfilesinnewcourses', get_string('legacyfilesinnewcourses', 'admin'), get_string('legacyfilesinnewcourses_help', 'admin'), 0));
$ADMIN->add('repositorysettings', $temp);
$ADMIN->add('repositorysettings', new admin_externalpage('repositorynew',
new lang_string('addplugin', 'repository'), $url, 'moodle/site:config', true),
get_string('addplugin', 'repository'), $url, 'moodle/site:config', true),
'', $url);
$ADMIN->add('repositorysettings', new admin_externalpage('repositorydelete',
new lang_string('deleterepository', 'repository'), $url, 'moodle/site:config', true),
get_string('deleterepository', 'repository'), $url, 'moodle/site:config', true),
'', $url);
$ADMIN->add('repositorysettings', new admin_externalpage('repositorycontroller',
new lang_string('manage', 'repository'), $url, 'moodle/site:config', true),
get_string('manage', 'repository'), $url, 'moodle/site:config', true),
'', $url);
$ADMIN->add('repositorysettings', new admin_externalpage('repositoryinstancenew',
new lang_string('createrepository', 'repository'), $url, 'moodle/site:config', true),
get_string('createrepository', 'repository'), $url, 'moodle/site:config', true),
'', $url);
$ADMIN->add('repositorysettings', new admin_externalpage('repositoryinstanceedit',
new lang_string('editrepositoryinstance', 'repository'), $url, 'moodle/site:config', true),
get_string('editrepositoryinstance', 'repository'), $url, 'moodle/site:config', true),
'', $url);
foreach (repository::get_types() as $repositorytype) {
//display setup page for plugins with: general options or multiple instances (e.g. has instance config)
$typeoptionnames = repository::static_function($repositorytype->get_typename(), 'get_type_option_names');
$instanceoptionnames = repository::static_function($repositorytype->get_typename(), 'get_instance_option_names');
if (!empty($typeoptionnames) || !empty($instanceoptionnames)) {
$params = array('action'=>'edit', 'sesskey'=>sesskey(), 'repos'=>$repositorytype->get_typename());
$settingsurl = new moodle_url("/$CFG->admin/repository.php", $params);
$repositoryexternalpage = new admin_externalpage('repositorysettings'.$repositorytype->get_typename(), $repositorytype->get_readablename(), $settingsurl);
$ADMIN->add('repositorysettings', $repositoryexternalpage);
}
$ADMIN->add('repositorysettings',
new admin_externalpage('repositorysettings'.$repositorytype->get_typename(),
$repositorytype->get_readablename(),
$url . '?action=edit&repos=' . $repositorytype->get_typename()),
'moodle/site:config');
}
}
}
/// Web services
$ADMIN->add('modules', new admin_category('webservicesettings', new lang_string('webservices', 'webservice')));
$ADMIN->add('modules', new admin_category('webservicesettings', get_string('webservices', 'webservice')));
/// overview page
$temp = new admin_settingpage('webservicesoverview', new lang_string('webservicesoverview', 'webservice'));
$temp = new admin_settingpage('webservicesoverview', get_string('webservicesoverview', 'webservice'));
$temp->add(new admin_setting_webservicesoverview());
$ADMIN->add('webservicesettings', $temp);
//API documentation
$ADMIN->add('webservicesettings', new admin_externalpage('webservicedocumentation', new lang_string('wsdocapi', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/documentation.php", 'moodle/site:config', false));
$ADMIN->add('webservicesettings', new admin_externalpage('webservicedocumentation', get_string('wsdocapi', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/documentation.php", 'moodle/site:config', false));
/// manage service
$temp = new admin_settingpage('externalservices', new lang_string('externalservices', 'webservice'));
$temp = new admin_settingpage('externalservices', get_string('externalservices', 'webservice'));
$enablemobiledocurl = new moodle_url(get_docs_url('Enable_mobile_web_services'));
$enablemobiledoclink = html_writer::link($enablemobiledocurl, new lang_string('documentation'));
$temp->add(new admin_setting_enablemobileservice('enablemobilewebservice', new lang_string('enablemobilewebservice', 'admin'), new lang_string('configenablemobilewebservice', 'admin', $enablemobiledoclink), 0));
$temp->add(new admin_setting_heading('manageserviceshelpexplaination', new lang_string('information', 'webservice'), new lang_string('servicehelpexplanation', 'webservice')));
$enablemobiledoclink = html_writer::link($enablemobiledocurl, get_string('documentation'));
$temp->add(new admin_setting_enablemobileservice('enablemobilewebservice', get_string('enablemobilewebservice', 'admin'), get_string('configenablemobilewebservice', 'admin', $enablemobiledoclink), 0));
$temp->add(new admin_setting_heading('manageserviceshelpexplaination', get_string('information', 'webservice'), get_string('servicehelpexplanation', 'webservice')));
$temp->add(new admin_setting_manageexternalservices());
$ADMIN->add('webservicesettings', $temp);
$ADMIN->add('webservicesettings', new admin_externalpage('externalservice', new lang_string('editaservice', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/service.php", 'moodle/site:config', true));
$ADMIN->add('webservicesettings', new admin_externalpage('externalservicefunctions', new lang_string('externalservicefunctions', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/service_functions.php", 'moodle/site:config', true));
$ADMIN->add('webservicesettings', new admin_externalpage('externalserviceusers', new lang_string('externalserviceusers', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/service_users.php", 'moodle/site:config', true));
$ADMIN->add('webservicesettings', new admin_externalpage('externalserviceusersettings', new lang_string('serviceusersettings', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/service_user_settings.php", 'moodle/site:config', true));
$ADMIN->add('webservicesettings', new admin_externalpage('externalservice', get_string('editaservice', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/service.php", 'moodle/site:config', true));
$ADMIN->add('webservicesettings', new admin_externalpage('externalservicefunctions', get_string('externalservicefunctions', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/service_functions.php", 'moodle/site:config', true));
$ADMIN->add('webservicesettings', new admin_externalpage('externalserviceusers', get_string('externalserviceusers', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/service_users.php", 'moodle/site:config', true));
$ADMIN->add('webservicesettings', new admin_externalpage('externalserviceusersettings', get_string('serviceusersettings', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/service_user_settings.php", 'moodle/site:config', true));
/// manage protocol page link
$temp = new admin_settingpage('webserviceprotocols', new lang_string('manageprotocols', 'webservice'));
$temp = new admin_settingpage('webserviceprotocols', get_string('manageprotocols', 'webservice'));
$temp->add(new admin_setting_managewebserviceprotocols());
if (empty($CFG->enablewebservices)) {
$temp->add(new admin_setting_heading('webservicesaredisabled', '', new lang_string('disabledwarning', 'webservice')));
$temp->add(new admin_setting_heading('webservicesaredisabled', '', get_string('disabledwarning', 'webservice')));
}
// We cannot use $OUTPUT this early, doing so means that we lose the ability
// to set the page layout on all admin pages.
// $wsdoclink = $OUTPUT->doc_link('How_to_get_a_security_key');
$url = new moodle_url(get_docs_url('How_to_get_a_security_key'));
$wsdoclink = html_writer::tag('a', new lang_string('supplyinfo', 'webservice'), array('href'=>$url));
$temp->add(new admin_setting_configcheckbox('enablewsdocumentation', new lang_string('enablewsdocumentation',
'admin'), new lang_string('configenablewsdocumentation', 'admin', $wsdoclink), false));
$wsdoclink = html_writer::tag('a', get_string('supplyinfo'),array('href'=>$url));
$temp->add(new admin_setting_configcheckbox('enablewsdocumentation', get_string('enablewsdocumentation',
'admin'), get_string('configenablewsdocumentation', 'admin', $wsdoclink), false));
$ADMIN->add('webservicesettings', $temp);
/// links to protocol pages
$webservices_available = get_plugin_list('webservice');
$active_webservices = empty($CFG->webserviceprotocols) ? array() : explode(',', $CFG->webserviceprotocols);
foreach ($webservices_available as $webservice => $location) {
if (file_exists("$location/settings.php")) {
$name = new lang_string('pluginname', 'webservice_'.$webservice);
$name = get_string('pluginname', 'webservice_'.$webservice);
$settings = new admin_settingpage('webservicesetting'.$webservice, $name, 'moodle/site:config', !in_array($webservice, $active_webservices) or empty($CFG->enablewebservices));
include("$location/settings.php");
if ($settings) {
@@ -388,29 +388,29 @@ if ($hassiteconfig) {
}
}
/// manage token page link
$ADMIN->add('webservicesettings', new admin_externalpage('addwebservicetoken', new lang_string('managetokens', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/tokens.php", 'moodle/site:config', true));
$temp = new admin_settingpage('webservicetokens', new lang_string('managetokens', 'webservice'));
$ADMIN->add('webservicesettings', new admin_externalpage('addwebservicetoken', get_string('managetokens', 'webservice'), "$CFG->wwwroot/$CFG->admin/webservice/tokens.php", 'moodle/site:config', true));
$temp = new admin_settingpage('webservicetokens', get_string('managetokens', 'webservice'));
$temp->add(new admin_setting_managewebservicetokens());
if (empty($CFG->enablewebservices)) {
$temp->add(new admin_setting_heading('webservicesaredisabled', '', new lang_string('disabledwarning', 'webservice')));
$temp->add(new admin_setting_heading('webservicesaredisabled', '', get_string('disabledwarning', 'webservice')));
}
$ADMIN->add('webservicesettings', $temp);
// Question type settings
if ($hassiteconfig || has_capability('moodle/question:config', $systemcontext)) {
// Question behaviour settings.
$ADMIN->add('modules', new admin_category('qbehavioursettings', new lang_string('questionbehaviours', 'admin')));
$ADMIN->add('modules', new admin_category('qbehavioursettings', get_string('questionbehaviours', 'admin')));
$ADMIN->add('qbehavioursettings', new admin_page_manageqbehaviours());
// Question type settings.
$ADMIN->add('modules', new admin_category('qtypesettings', new lang_string('questiontypes', 'admin')));
$ADMIN->add('modules', new admin_category('qtypesettings', get_string('questiontypes', 'admin')));
$ADMIN->add('qtypesettings', new admin_page_manageqtypes());
$qtypes = get_plugin_list('qtype');
foreach ($qtypes as $qtype => $path) {
$settingsfile = $path . '/settings.php';
if (file_exists($settingsfile)) {
$settings = new admin_settingpage('qtypesetting' . $qtype,
new lang_string('pluginname', 'qtype_' . $qtype), 'moodle/question:config');
get_string('pluginname', 'qtype_' . $qtype), 'moodle/question:config');
include($settingsfile);
if ($settings) {
$ADMIN->add('qtypesettings', $settings);
@@ -421,17 +421,17 @@ if ($hassiteconfig || has_capability('moodle/question:config', $systemcontext))
// Plagiarism plugin settings
if ($hassiteconfig && !empty($CFG->enableplagiarism)) {
$ADMIN->add('modules', new admin_category('plagiarism', new lang_string('plagiarism', 'plagiarism')));
$temp = new admin_settingpage('plagiarismsettings', new lang_string('plagiarismsettings', 'plagiarism'));
$ADMIN->add('modules', new admin_category('plagiarism', get_string('plagiarism', 'plagiarism')));
$temp = new admin_settingpage('plagiarismsettings', get_string('plagiarismsettings', 'plagiarism'));
$temp->add(new admin_setting_manageplagiarism());
$ADMIN->add('plagiarism', $temp);
foreach (get_plugin_list('plagiarism') as $plugin => $plugindir) {
if (file_exists($plugindir.'/settings.php')) {
$ADMIN->add('plagiarism', new admin_externalpage('plagiarism'.$plugin, new lang_string($plugin, 'plagiarism_'.$plugin), "$CFG->wwwroot/plagiarism/$plugin/settings.php", 'moodle/site:config'));
$ADMIN->add('plagiarism', new admin_externalpage('plagiarism'.$plugin, get_string($plugin, 'plagiarism_'.$plugin), "$CFG->wwwroot/plagiarism/$plugin/settings.php", 'moodle/site:config'));
}
}
}
$ADMIN->add('reports', new admin_externalpage('comments', new lang_string('comments'), $CFG->wwwroot.'/comment/', 'moodle/site:viewreports'));
$ADMIN->add('reports', new admin_externalpage('comments', get_string('comments'), $CFG->wwwroot.'/comment/', 'moodle/site:viewreports'));
// Course reports settings
if ($hassiteconfig) {
@@ -440,7 +440,7 @@ if ($hassiteconfig) {
$file = $CFG->dirroot . '/course/report/' . $report . '/settings.php';
if (file_exists($file)) {
$settings = new admin_settingpage('coursereport' . $report,
new lang_string('pluginname', 'coursereport_' . $report), 'moodle/site:config');
get_string('pluginname', 'coursereport_' . $report), 'moodle/site:config');
// settings.php may create a subcategory or unset the settings completely
include($file);
if ($settings) {
@@ -449,7 +449,7 @@ if ($hassiteconfig) {
}
}
if (!empty($pages)) {
$ADMIN->add('modules', new admin_category('coursereports', new lang_string('coursereports')));
$ADMIN->add('modules', new admin_category('coursereports', get_string('coursereports')));
foreach ($pages as $page) {
$ADMIN->add('coursereports', $page);
}
@@ -463,15 +463,15 @@ foreach (get_plugin_list('report') as $report => $plugindir) {
$settings_path = "$plugindir/settings.php";
if (file_exists($settings_path)) {
$settings = new admin_settingpage('report' . $report,
new lang_string('pluginname', 'report_' . $report), 'moodle/site:config');
get_string('pluginname', 'report_' . $report), 'moodle/site:config');
include($settings_path);
if ($settings) {
$pages[] = $settings;
}
}
}
$ADMIN->add('modules', new admin_category('reportplugins', new lang_string('reports')));
$ADMIN->add('reportplugins', new admin_externalpage('managereports', new lang_string('reportsmanage', 'admin'),
$ADMIN->add('modules', new admin_category('reportplugins', get_string('reports')));
$ADMIN->add('reportplugins', new admin_externalpage('managereports', get_string('reportsmanage', 'admin'),
$CFG->wwwroot . '/' . $CFG->admin . '/reports.php'));
foreach ($pages as $page) {
$ADMIN->add('reportplugins', $page);
@@ -479,8 +479,8 @@ foreach ($pages as $page) {
/// Add all admin tools
if ($hassiteconfig) {
$ADMIN->add('modules', new admin_category('tools', new lang_string('tools', 'admin')));
$ADMIN->add('tools', new admin_externalpage('managetools', new lang_string('toolsmanage', 'admin'),
$ADMIN->add('modules', new admin_category('tools', get_string('tools', 'admin')));
$ADMIN->add('tools', new admin_externalpage('managetools', get_string('toolsmanage', 'admin'),
$CFG->wwwroot . '/' . $CFG->admin . '/tools.php'));
}
@@ -494,8 +494,8 @@ foreach (get_plugin_list('tool') as $plugin => $plugindir) {
/// Add all local plugins - must be always last!
if ($hassiteconfig) {
$ADMIN->add('modules', new admin_category('localplugins', new lang_string('localplugins')));
$ADMIN->add('localplugins', new admin_externalpage('managelocalplugins', new lang_string('localpluginsmanage'),
$ADMIN->add('modules', new admin_category('localplugins', get_string('localplugins')));
$ADMIN->add('localplugins', new admin_externalpage('managelocalplugins', get_string('localpluginsmanage'),
$CFG->wwwroot . '/' . $CFG->admin . '/localplugins.php'));
}
+83 -70
View File
@@ -3,101 +3,114 @@
if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// "ip blocker" settingpage
$temp = new admin_settingpage('ipblocker', new lang_string('ipblocker', 'admin'));
$temp->add(new admin_setting_configcheckbox('allowbeforeblock', new lang_string('allowbeforeblock', 'admin'), new lang_string('allowbeforeblockdesc', 'admin'), 0));
$temp->add(new admin_setting_configiplist('allowedip', new lang_string('allowediplist', 'admin'),
new lang_string('ipblockersyntax', 'admin'), ''));
$temp->add(new admin_setting_configiplist('blockedip', new lang_string('blockediplist', 'admin'),
new lang_string('ipblockersyntax', 'admin'), ''));
$temp = new admin_settingpage('ipblocker', get_string('ipblocker', 'admin'));
$temp->add(new admin_setting_configcheckbox('allowbeforeblock', get_string('allowbeforeblock', 'admin'), get_string('allowbeforeblockdesc', 'admin'), 0));
$temp->add(new admin_setting_configiplist('allowedip', get_string('allowediplist', 'admin'),
get_string('ipblockersyntax', 'admin'), ''));
$temp->add(new admin_setting_configiplist('blockedip', get_string('blockediplist', 'admin'),
get_string('ipblockersyntax', 'admin'), ''));
$ADMIN->add('security', $temp);
// "sitepolicies" settingpage
$temp = new admin_settingpage('sitepolicies', new lang_string('sitepolicies', 'admin'));
$temp->add(new admin_setting_configcheckbox('protectusernames', new lang_string('protectusernames', 'admin'), new lang_string('configprotectusernames', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('forcelogin', new lang_string('forcelogin', 'admin'), new lang_string('configforcelogin', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('forceloginforprofiles', new lang_string('forceloginforprofiles', 'admin'), new lang_string('configforceloginforprofiles', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('forceloginforprofileimage', new lang_string('forceloginforprofileimage', 'admin'), new lang_string('forceloginforprofileimage_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('opentogoogle', new lang_string('opentogoogle', 'admin'), new lang_string('configopentogoogle', 'admin'), 0));
$temp = new admin_settingpage('sitepolicies', get_string('sitepolicies', 'admin'));
$temp->add(new admin_setting_configcheckbox('protectusernames', get_string('protectusernames', 'admin'), get_string('configprotectusernames', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('forcelogin', get_string('forcelogin', 'admin'), get_string('configforcelogin', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('forceloginforprofiles', get_string('forceloginforprofiles', 'admin'), get_string('configforceloginforprofiles', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('forceloginforprofileimage', get_string('forceloginforprofileimage', 'admin'), get_string('forceloginforprofileimage_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('opentogoogle', get_string('opentogoogle', 'admin'), get_string('configopentogoogle', 'admin'), 0));
$temp->add(new admin_setting_pickroles('profileroles',
new lang_string('profileroles','admin'),
new lang_string('configprofileroles', 'admin'),
get_string('profileroles','admin'),
get_string('configprofileroles', 'admin'),
array('student', 'teacher', 'editingteacher')));
$max_upload_choices = get_max_upload_sizes();
// maxbytes set to 0 will allow the maximum server limit for uploads
$max_upload_choices[0] = new lang_string('serverlimit', 'admin');
$temp->add(new admin_setting_configselect('maxbytes', new lang_string('maxbytes', 'admin'), new lang_string('configmaxbytes', 'admin'), 0, $max_upload_choices));
$max_upload_choices[0] = get_string('serverlimit', 'admin');
$temp->add(new admin_setting_configselect('maxbytes', get_string('maxbytes', 'admin'), get_string('configmaxbytes', 'admin'), 0, $max_upload_choices));
// 100MB
$defaultuserquota = 104857600;
$params = new stdClass();
$params->bytes = $defaultuserquota;
$params->displaysize = display_size($defaultuserquota);
$temp->add(new admin_setting_configtext('userquota', new lang_string('userquota', 'admin'), new lang_string('configuserquota', 'admin', $params), $defaultuserquota));
$temp->add(new admin_setting_configtext('userquota', get_string('userquota', 'admin'), get_string('configuserquota', 'admin', $params), $defaultuserquota));
$temp->add(new admin_setting_configcheckbox('allowobjectembed', new lang_string('allowobjectembed', 'admin'), new lang_string('configallowobjectembed', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('enabletrusttext', new lang_string('enabletrusttext', 'admin'), new lang_string('configenabletrusttext', 'admin'), 0));
$temp->add(new admin_setting_configselect('maxeditingtime', new lang_string('maxeditingtime','admin'), new lang_string('configmaxeditingtime','admin'), 1800,
array(60 => new lang_string('numminutes', '', 1),
300 => new lang_string('numminutes', '', 5),
900 => new lang_string('numminutes', '', 15),
1800 => new lang_string('numminutes', '', 30),
2700 => new lang_string('numminutes', '', 45),
3600 => new lang_string('numminutes', '', 60))));
$temp->add(new admin_setting_configselect('fullnamedisplay', new lang_string('fullnamedisplay', 'admin'), new lang_string('configfullnamedisplay', 'admin'),
'language', array('language' => new lang_string('language'),
'firstname lastname' => new lang_string('firstname').' + '.new lang_string('lastname'),
'lastname firstname' => new lang_string('lastname').' + '.new lang_string('firstname'),
'firstname' => new lang_string('firstname'))));
$temp->add(new admin_setting_configcheckbox('extendedusernamechars', new lang_string('extendedusernamechars', 'admin'), new lang_string('configextendedusernamechars', 'admin'), 0));
$temp->add(new admin_setting_configtext('sitepolicy', new lang_string('sitepolicy', 'admin'), new lang_string('sitepolicy_help', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtext('sitepolicyguest', new lang_string('sitepolicyguest', 'admin'), new lang_string('sitepolicyguest_help', 'admin'), (isset($CFG->sitepolicy) ? $CFG->sitepolicy : ''), PARAM_RAW));
$temp->add(new admin_setting_configcheckbox('extendedusernamechars', new lang_string('extendedusernamechars', 'admin'), new lang_string('configextendedusernamechars', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('keeptagnamecase', new lang_string('keeptagnamecase','admin'),new lang_string('configkeeptagnamecase', 'admin'),'1'));
$temp->add(new admin_setting_configcheckbox('allowobjectembed', get_string('allowobjectembed', 'admin'), get_string('configallowobjectembed', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('enabletrusttext', get_string('enabletrusttext', 'admin'), get_string('configenabletrusttext', 'admin'), 0));
$temp->add(new admin_setting_configselect('maxeditingtime', get_string('maxeditingtime','admin'), get_string('configmaxeditingtime','admin'), 1800,
array(60 => get_string('numminutes', '', 1),
300 => get_string('numminutes', '', 5),
900 => get_string('numminutes', '', 15),
1800 => get_string('numminutes', '', 30),
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'),
'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'))));
$temp->add(new admin_setting_configcheckbox('extendedusernamechars', get_string('extendedusernamechars', 'admin'), get_string('configextendedusernamechars', 'admin'), 0));
$temp->add(new admin_setting_configtext('sitepolicy', get_string('sitepolicy', 'admin'), get_string('sitepolicy_help', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtext('sitepolicyguest', get_string('sitepolicyguest', 'admin'), get_string('sitepolicyguest_help', 'admin'), (isset($CFG->sitepolicy) ? $CFG->sitepolicy : ''), PARAM_RAW));
$temp->add(new admin_setting_configcheckbox('extendedusernamechars', get_string('extendedusernamechars', 'admin'), get_string('configextendedusernamechars', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('keeptagnamecase', get_string('keeptagnamecase','admin'),get_string('configkeeptagnamecase', 'admin'),'1'));
$temp->add(new admin_setting_configcheckbox('profilesforenrolledusersonly', new lang_string('profilesforenrolledusersonly','admin'),new lang_string('configprofilesforenrolledusersonly', 'admin'),'1'));
$temp->add(new admin_setting_configcheckbox('profilesforenrolledusersonly', get_string('profilesforenrolledusersonly','admin'),get_string('configprofilesforenrolledusersonly', 'admin'),'1'));
$temp->add(new admin_setting_configcheckbox('cronclionly', new lang_string('cronclionly', 'admin'), new lang_string('configcronclionly', 'admin'), 0));
$temp->add(new admin_setting_configpasswordunmask('cronremotepassword', new lang_string('cronremotepassword', 'admin'), new lang_string('configcronremotepassword', 'admin'), ''));
$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', new lang_string('passwordpolicy', 'admin'), new lang_string('configpasswordpolicy', 'admin'), 1));
$temp->add(new admin_setting_configtext('minpasswordlength', new lang_string('minpasswordlength', 'admin'), new lang_string('configminpasswordlength', 'admin'), 8, PARAM_INT));
$temp->add(new admin_setting_configtext('minpassworddigits', new lang_string('minpassworddigits', 'admin'), new lang_string('configminpassworddigits', 'admin'), 1, PARAM_INT));
$temp->add(new admin_setting_configtext('minpasswordlower', new lang_string('minpasswordlower', 'admin'), new lang_string('configminpasswordlower', 'admin'), 1, PARAM_INT));
$temp->add(new admin_setting_configtext('minpasswordupper', new lang_string('minpasswordupper', 'admin'), new lang_string('configminpasswordupper', 'admin'), 1, PARAM_INT));
$temp->add(new admin_setting_configtext('minpasswordnonalphanum', new lang_string('minpasswordnonalphanum', 'admin'), new lang_string('configminpasswordnonalphanum', 'admin'), 1, PARAM_INT));
$temp->add(new admin_setting_configtext('maxconsecutiveidentchars', new lang_string('maxconsecutiveidentchars', 'admin'), new lang_string('configmaxconsecutiveidentchars', 'admin'), 0, PARAM_INT));
$temp->add(new admin_setting_configcheckbox('groupenrolmentkeypolicy', new lang_string('groupenrolmentkeypolicy', 'admin'), new lang_string('groupenrolmentkeypolicy_desc', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('disableuserimages', new lang_string('disableuserimages', 'admin'), new lang_string('configdisableuserimages', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('emailchangeconfirmation', new lang_string('emailchangeconfirmation', 'admin'), new lang_string('configemailchangeconfirmation', 'admin'), 1));
$temp->add(new admin_setting_configselect('rememberusername', new lang_string('rememberusername','admin'), new lang_string('rememberusername_desc','admin'), 2, array(1=>new lang_string('yes'), 0=>new lang_string('no'), 2=>new lang_string('optional'))));
$temp->add(new admin_setting_configcheckbox('strictformsrequired', new lang_string('strictformsrequired', 'admin'), new lang_string('configstrictformsrequired', '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));
$temp->add(new admin_setting_configtext('minpasswordupper', get_string('minpasswordupper', 'admin'), get_string('configminpasswordupper', 'admin'), 1, PARAM_INT));
$temp->add(new admin_setting_configtext('minpasswordnonalphanum', get_string('minpasswordnonalphanum', 'admin'), get_string('configminpasswordnonalphanum', 'admin'), 1, PARAM_INT));
$temp->add(new admin_setting_configtext('maxconsecutiveidentchars', get_string('maxconsecutiveidentchars', 'admin'), get_string('configmaxconsecutiveidentchars', 'admin'), 0, PARAM_INT));
$temp->add(new admin_setting_configcheckbox('groupenrolmentkeypolicy', get_string('groupenrolmentkeypolicy', 'admin'), get_string('groupenrolmentkeypolicy_desc', 'admin'), 1));
$temp->add(new admin_setting_configcheckbox('disableuserimages', get_string('disableuserimages', 'admin'), get_string('configdisableuserimages', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('emailchangeconfirmation', get_string('emailchangeconfirmation', 'admin'), get_string('configemailchangeconfirmation', 'admin'), 1));
$temp->add(new admin_setting_configselect('rememberusername', get_string('rememberusername','admin'), get_string('rememberusername_desc','admin'), 2, array(1=>get_string('yes'), 0=>get_string('no'), 2=>get_string('optional'))));
$temp->add(new admin_setting_configcheckbox('strictformsrequired', get_string('strictformsrequired', 'admin'), get_string('configstrictformsrequired', 'admin'), 0));
$ADMIN->add('security', $temp);
// "httpsecurity" settingpage
$temp = new admin_settingpage('httpsecurity', new lang_string('httpsecurity', 'admin'));
$temp->add(new admin_setting_configcheckbox('loginhttps', new lang_string('loginhttps', 'admin'), new lang_string('configloginhttps', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('cookiesecure', new lang_string('cookiesecure', 'admin'), new lang_string('configcookiesecure', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('cookiehttponly', new lang_string('cookiehttponly', 'admin'), new lang_string('configcookiehttponly', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('allowframembedding', new lang_string('allowframembedding', 'admin'), new lang_string('allowframembedding_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('loginpasswordautocomplete', new lang_string('loginpasswordautocomplete', 'admin'), new lang_string('loginpasswordautocomplete_help', 'admin'), 0));
$temp = new admin_settingpage('httpsecurity', get_string('httpsecurity', 'admin'));
$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('allowframembedding', get_string('allowframembedding', 'admin'), get_string('allowframembedding_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('loginpasswordautocomplete', get_string('loginpasswordautocomplete', 'admin'), get_string('loginpasswordautocomplete_help', 'admin'), 0));
$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' => 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));
$temp->add(new admin_setting_configmultiselect_modules('defaultallowedmodules',
get_string('defaultallowedmodules', 'admin'),
get_string('configdefaultallowedmodules', 'admin')));
$ADMIN->add('security', $temp);
// "notifications" settingpage
$temp = new admin_settingpage('notifications', new lang_string('notifications', 'admin'));
$temp->add(new admin_setting_configselect('displayloginfailures', new lang_string('displayloginfailures', 'admin'), new lang_string('configdisplayloginfailures', 'admin'), '', array('' => new lang_string('nobody'),
'admin' => new lang_string('administrators'),
'teacher' => new lang_string('administratorsandteachers'),
'everybody' => new lang_string('everybody'))));
$temp->add(new admin_setting_users_with_capability('notifyloginfailures', new lang_string('notifyloginfailures', 'admin'), new lang_string('confignotifyloginfailures', 'admin'), array(), 'moodle/site:config'));
$temp = new admin_settingpage('notifications', get_string('notifications', 'admin'));
$temp->add(new admin_setting_configselect('displayloginfailures', get_string('displayloginfailures', 'admin'), get_string('configdisplayloginfailures', 'admin'), '', array('' => get_string('nobody'),
'admin' => get_string('administrators'),
'teacher' => get_string('administratorsandteachers'),
'everybody' => get_string('everybody'))));
$temp->add(new admin_setting_users_with_capability('notifyloginfailures', get_string('notifyloginfailures', 'admin'), get_string('confignotifyloginfailures', 'admin'), array(), 'moodle/site:config'));
$options = array();
for ($i = 1; $i <= 100; $i++) {
$options[$i] = $i;
}
$temp->add(new admin_setting_configselect('notifyloginthreshold', new lang_string('notifyloginthreshold', 'admin'), new lang_string('confignotifyloginthreshold', 'admin'), '10', $options));
$temp->add(new admin_setting_configselect('notifyloginthreshold', get_string('notifyloginthreshold', 'admin'), get_string('confignotifyloginthreshold', 'admin'), '10', $options));
$ADMIN->add('security', $temp);
@@ -106,12 +119,12 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// "antivirus" settingpage
$temp = new admin_settingpage('antivirus', new lang_string('antivirus', 'admin'));
$temp->add(new admin_setting_configcheckbox('runclamonupload', new lang_string('runclamavonupload', 'admin'), new lang_string('configrunclamavonupload', 'admin'), 0));
$temp->add(new admin_setting_configexecutable('pathtoclam', new lang_string('pathtoclam', 'admin'), new lang_string('configpathtoclam', 'admin'), ''));
$temp->add(new admin_setting_configdirectory('quarantinedir', new lang_string('quarantinedir', 'admin'), new lang_string('configquarantinedir', 'admin'), ''));
$temp->add(new admin_setting_configselect('clamfailureonupload', new lang_string('clamfailureonupload', 'admin'), new lang_string('configclamfailureonupload', 'admin'), 'donothing', array('donothing' => new lang_string('configclamdonothing', 'admin'),
'actlikevirus' => new lang_string('configclamactlikevirus', 'admin'))));
$temp = new admin_settingpage('antivirus', get_string('antivirus', 'admin'));
$temp->add(new admin_setting_configcheckbox('runclamonupload', get_string('runclamavonupload', 'admin'), get_string('configrunclamavonupload', 'admin'), 0));
$temp->add(new admin_setting_configexecutable('pathtoclam', get_string('pathtoclam', 'admin'), get_string('configpathtoclam', 'admin'), ''));
$temp->add(new admin_setting_configdirectory('quarantinedir', get_string('quarantinedir', 'admin'), get_string('configquarantinedir', 'admin'), ''));
$temp->add(new admin_setting_configselect('clamfailureonupload', get_string('clamfailureonupload', 'admin'), get_string('configclamfailureonupload', 'admin'), 'donothing', array('donothing' => get_string('configclamdonothing', 'admin'),
'actlikevirus' => get_string('configclamactlikevirus', 'admin'))));
$ADMIN->add('security', $temp);
} // end of speedup
+141 -160
View File
@@ -6,19 +6,19 @@ if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
// "systempaths" settingpage
$temp = new admin_settingpage('systempaths', new lang_string('systempaths','admin'));
$temp->add(new admin_setting_configselect('gdversion', new lang_string('gdversion','admin'), new lang_string('configgdversion', 'admin'), check_gd_version(), array('0' => new lang_string('gdnot'),
'1' => new lang_string('gd1'),
'2' => new lang_string('gd2'))));
$temp->add(new admin_setting_configexecutable('pathtodu', new lang_string('pathtodu', 'admin'), new lang_string('configpathtodu', 'admin'), ''));
$temp->add(new admin_setting_configexecutable('aspellpath', new lang_string('aspellpath', 'admin'), new lang_string('edhelpaspellpath'), ''));
$temp->add(new admin_setting_configexecutable('pathtodot', new lang_string('pathtodot', 'admin'), new lang_string('pathtodot_help', 'admin'), ''));
$temp = new admin_settingpage('systempaths', get_string('systempaths','admin'));
$temp->add(new admin_setting_configselect('gdversion', get_string('gdversion','admin'), get_string('configgdversion', 'admin'), check_gd_version(), array('0' => get_string('gdnot'),
'1' => get_string('gd1'),
'2' => get_string('gd2'))));
$temp->add(new admin_setting_configexecutable('pathtodu', get_string('pathtodu', 'admin'), get_string('configpathtodu', 'admin'), ''));
$temp->add(new admin_setting_configexecutable('aspellpath', get_string('aspellpath', 'admin'), get_string('edhelpaspellpath'), ''));
$temp->add(new admin_setting_configexecutable('pathtodot', get_string('pathtodot', 'admin'), get_string('pathtodot_help', 'admin'), ''));
$ADMIN->add('server', $temp);
// "supportcontact" settingpage
$temp = new admin_settingpage('supportcontact', new lang_string('supportcontact','admin'));
$temp = new admin_settingpage('supportcontact', get_string('supportcontact','admin'));
if (isloggedin()) {
global $USER;
$primaryadminemail = $USER->email;
@@ -29,158 +29,158 @@ if (isloggedin()) {
$primaryadminemail = NULL;
$primaryadminname = NULL;
}
$temp->add(new admin_setting_configtext('supportname', new lang_string('supportname', 'admin'), new lang_string('configsupportname', 'admin'), $primaryadminname, PARAM_NOTAGS));
$temp->add(new admin_setting_configtext('supportemail', new lang_string('supportemail', 'admin'), new lang_string('configsupportemail', 'admin'), $primaryadminemail, PARAM_NOTAGS));
$temp->add(new admin_setting_configtext('supportpage', new lang_string('supportpage', 'admin'), new lang_string('configsupportpage', 'admin'), '', PARAM_URL));
$temp->add(new admin_setting_configtext('supportname', get_string('supportname', 'admin'), get_string('configsupportname', 'admin'), $primaryadminname, PARAM_NOTAGS));
$temp->add(new admin_setting_configtext('supportemail', get_string('supportemail', 'admin'), get_string('configsupportemail', 'admin'), $primaryadminemail, PARAM_NOTAGS));
$temp->add(new admin_setting_configtext('supportpage', get_string('supportpage', 'admin'), get_string('configsupportpage', 'admin'), '', PARAM_URL));
$ADMIN->add('server', $temp);
// "sessionhandling" settingpage
$temp = new admin_settingpage('sessionhandling', new lang_string('sessionhandling', 'admin'));
$temp->add(new admin_setting_configcheckbox('dbsessions', new lang_string('dbsessions', 'admin'), new lang_string('configdbsessions', 'admin'), 1));
$temp->add(new admin_setting_configselect('sessiontimeout', new lang_string('sessiontimeout', 'admin'), new lang_string('configsessiontimeout', 'admin'), 7200, array(14400 => new lang_string('numhours', '', 4),
10800 => new lang_string('numhours', '', 3),
7200 => new lang_string('numhours', '', 2),
5400 => new lang_string('numhours', '', '1.5'),
3600 => new lang_string('numminutes', '', 60),
2700 => new lang_string('numminutes', '', 45),
1800 => new lang_string('numminutes', '', 30),
900 => new lang_string('numminutes', '', 15),
300 => new lang_string('numminutes', '', 5))));
$temp->add(new admin_setting_configtext('sessioncookie', new lang_string('sessioncookie', 'admin'), new lang_string('configsessioncookie', 'admin'), '', PARAM_ALPHANUM));
$temp->add(new admin_setting_configtext('sessioncookiepath', new lang_string('sessioncookiepath', 'admin'), new lang_string('configsessioncookiepath', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtext('sessioncookiedomain', new lang_string('sessioncookiedomain', 'admin'), new lang_string('configsessioncookiedomain', 'admin'), '', PARAM_RAW, 50));
$temp = new admin_settingpage('sessionhandling', get_string('sessionhandling', 'admin'));
$temp->add(new admin_setting_configcheckbox('dbsessions', get_string('dbsessions', 'admin'), get_string('configdbsessions', 'admin'), 1));
$temp->add(new admin_setting_configselect('sessiontimeout', get_string('sessiontimeout', 'admin'), get_string('configsessiontimeout', 'admin'), 7200, array(14400 => get_string('numhours', '', 4),
10800 => get_string('numhours', '', 3),
7200 => get_string('numhours', '', 2),
5400 => get_string('numhours', '', '1.5'),
3600 => get_string('numminutes', '', 60),
2700 => get_string('numminutes', '', 45),
1800 => get_string('numminutes', '', 30),
900 => get_string('numminutes', '', 15),
300 => get_string('numminutes', '', 5))));
$temp->add(new admin_setting_configtext('sessioncookie', get_string('sessioncookie', 'admin'), get_string('configsessioncookie', 'admin'), '', PARAM_ALPHANUM));
$temp->add(new admin_setting_configtext('sessioncookiepath', get_string('sessioncookiepath', 'admin'), get_string('configsessioncookiepath', 'admin'), '', PARAM_RAW));
$temp->add(new admin_setting_configtext('sessioncookiedomain', get_string('sessioncookiedomain', 'admin'), get_string('configsessioncookiedomain', 'admin'), '', PARAM_RAW, 50));
$ADMIN->add('server', $temp);
// "stats" settingpage
$temp = new admin_settingpage('stats', new lang_string('stats'), 'moodle/site:config', empty($CFG->enablestats));
$temp->add(new admin_setting_configselect('statsfirstrun', new lang_string('statsfirstrun', 'admin'), new lang_string('configstatsfirstrun', 'admin'), 'none', array('none' => new lang_string('none'),
60*60*24*7 => new lang_string('numweeks','moodle',1),
60*60*24*14 => new lang_string('numweeks','moodle',2),
60*60*24*21 => new lang_string('numweeks','moodle',3),
60*60*24*28 => new lang_string('nummonths','moodle',1),
60*60*24*56 => new lang_string('nummonths','moodle',2),
60*60*24*84 => new lang_string('nummonths','moodle',3),
60*60*24*112 => new lang_string('nummonths','moodle',4),
60*60*24*140 => new lang_string('nummonths','moodle',5),
60*60*24*168 => new lang_string('nummonths','moodle',6),
'all' => new lang_string('all') )));
$temp->add(new admin_setting_configselect('statsmaxruntime', new lang_string('statsmaxruntime', 'admin'), new lang_string('configstatsmaxruntime3', 'admin'), 0, array(0 => new lang_string('untilcomplete'),
60*30 => '10 '.new lang_string('minutes'),
60*30 => '30 '.new lang_string('minutes'),
60*60 => '1 '.new lang_string('hour'),
60*60*2 => '2 '.new lang_string('hours'),
60*60*3 => '3 '.new lang_string('hours'),
60*60*4 => '4 '.new lang_string('hours'),
60*60*5 => '5 '.new lang_string('hours'),
60*60*6 => '6 '.new lang_string('hours'),
60*60*7 => '7 '.new lang_string('hours'),
60*60*8 => '8 '.new lang_string('hours') )));
$temp->add(new admin_setting_configtext('statsruntimedays', new lang_string('statsruntimedays', 'admin'), new lang_string('configstatsruntimedays', 'admin'), 31, PARAM_INT));
$temp->add(new admin_setting_configtime('statsruntimestarthour', 'statsruntimestartminute', new lang_string('statsruntimestart', 'admin'), new lang_string('configstatsruntimestart', 'admin'), array('h' => 0, 'm' => 0)));
$temp->add(new admin_setting_configtext('statsuserthreshold', new lang_string('statsuserthreshold', 'admin'), new lang_string('configstatsuserthreshold', 'admin'), 0, PARAM_INT));
$temp = new admin_settingpage('stats', get_string('stats'), 'moodle/site:config', empty($CFG->enablestats));
$temp->add(new admin_setting_configselect('statsfirstrun', get_string('statsfirstrun', 'admin'), get_string('configstatsfirstrun', 'admin'), 'none', array('none' => get_string('none'),
60*60*24*7 => get_string('numweeks','moodle',1),
60*60*24*14 => get_string('numweeks','moodle',2),
60*60*24*21 => get_string('numweeks','moodle',3),
60*60*24*28 => get_string('nummonths','moodle',1),
60*60*24*56 => get_string('nummonths','moodle',2),
60*60*24*84 => get_string('nummonths','moodle',3),
60*60*24*112 => get_string('nummonths','moodle',4),
60*60*24*140 => get_string('nummonths','moodle',5),
60*60*24*168 => get_string('nummonths','moodle',6),
'all' => get_string('all') )));
$temp->add(new admin_setting_configselect('statsmaxruntime', get_string('statsmaxruntime', 'admin'), get_string('configstatsmaxruntime3', 'admin'), 0, array(0 => get_string('untilcomplete'),
60*30 => '10 '.get_string('minutes'),
60*30 => '30 '.get_string('minutes'),
60*60 => '1 '.get_string('hour'),
60*60*2 => '2 '.get_string('hours'),
60*60*3 => '3 '.get_string('hours'),
60*60*4 => '4 '.get_string('hours'),
60*60*5 => '5 '.get_string('hours'),
60*60*6 => '6 '.get_string('hours'),
60*60*7 => '7 '.get_string('hours'),
60*60*8 => '8 '.get_string('hours') )));
$temp->add(new admin_setting_configtext('statsruntimedays', get_string('statsruntimedays', 'admin'), get_string('configstatsruntimedays', 'admin'), 31, PARAM_INT));
$temp->add(new admin_setting_configtime('statsruntimestarthour', 'statsruntimestartminute', get_string('statsruntimestart', 'admin'), get_string('configstatsruntimestart', 'admin'), array('h' => 0, 'm' => 0)));
$temp->add(new admin_setting_configtext('statsuserthreshold', get_string('statsuserthreshold', 'admin'), get_string('configstatsuserthreshold', 'admin'), 0, PARAM_INT));
$ADMIN->add('server', $temp);
// "http" settingpage
$temp = new admin_settingpage('http', new lang_string('http', 'admin'));
$temp->add(new admin_setting_configcheckbox('slasharguments', new lang_string('slasharguments', 'admin'), new lang_string('configslasharguments', 'admin'), 1));
$temp->add(new admin_setting_heading('reverseproxy', new lang_string('reverseproxy', 'admin'), '', ''));
$temp = new admin_settingpage('http', get_string('http', 'admin'));
$temp->add(new admin_setting_configcheckbox('slasharguments', get_string('slasharguments', 'admin'), get_string('configslasharguments', 'admin'), 1));
$temp->add(new admin_setting_heading('reverseproxy', get_string('reverseproxy', 'admin'), '', ''));
$options = array(
0 => 'HTTP_CLIENT_IP, HTTP_X_FORWARDED_FOR, REMOTE_ADDR',
GETREMOTEADDR_SKIP_HTTP_CLIENT_IP => 'HTTP_X_FORWARDED_FOR, REMOTE_ADDR',
GETREMOTEADDR_SKIP_HTTP_X_FORWARDED_FOR => 'HTTP_CLIENT, REMOTE_ADDR',
GETREMOTEADDR_SKIP_HTTP_X_FORWARDED_FOR|GETREMOTEADDR_SKIP_HTTP_CLIENT_IP => 'REMOTE_ADDR');
$temp->add(new admin_setting_configselect('getremoteaddrconf', new lang_string('getremoteaddrconf', 'admin'), new lang_string('configgetremoteaddrconf', 'admin'), 0, $options));
$temp->add(new admin_setting_heading('webproxy', new lang_string('webproxy', 'admin'), new lang_string('webproxyinfo', 'admin')));
$temp->add(new admin_setting_configtext('proxyhost', new lang_string('proxyhost', 'admin'), new lang_string('configproxyhost', 'admin'), '', PARAM_HOST));
$temp->add(new admin_setting_configtext('proxyport', new lang_string('proxyport', 'admin'), new lang_string('configproxyport', 'admin'), 0, PARAM_INT));
$temp->add(new admin_setting_configselect('getremoteaddrconf', get_string('getremoteaddrconf', 'admin'), get_string('configgetremoteaddrconf', 'admin'), 0, $options));
$temp->add(new admin_setting_heading('webproxy', get_string('webproxy', 'admin'), get_string('webproxyinfo', 'admin')));
$temp->add(new admin_setting_configtext('proxyhost', get_string('proxyhost', 'admin'), get_string('configproxyhost', 'admin'), '', PARAM_HOST));
$temp->add(new admin_setting_configtext('proxyport', get_string('proxyport', 'admin'), get_string('configproxyport', 'admin'), 0, PARAM_INT));
$options = array('HTTP'=>'HTTP');
if (defined('CURLPROXY_SOCKS5')) {
$options['SOCKS5'] = 'SOCKS5';
}
$temp->add(new admin_setting_configselect('proxytype', new lang_string('proxytype', 'admin'), new lang_string('configproxytype','admin'), 'HTTP', $options));
$temp->add(new admin_setting_configtext('proxyuser', new lang_string('proxyuser', 'admin'), new lang_string('configproxyuser', 'admin'), ''));
$temp->add(new admin_setting_configpasswordunmask('proxypassword', new lang_string('proxypassword', 'admin'), new lang_string('configproxypassword', 'admin'), ''));
$temp->add(new admin_setting_configtext('proxybypass', new lang_string('proxybypass', 'admin'), new lang_string('configproxybypass', 'admin'), 'localhost, 127.0.0.1'));
$temp->add(new admin_setting_configselect('proxytype', get_string('proxytype', 'admin'), get_string('configproxytype','admin'), 'HTTP', $options));
$temp->add(new admin_setting_configtext('proxyuser', get_string('proxyuser', 'admin'), get_string('configproxyuser', 'admin'), ''));
$temp->add(new admin_setting_configpasswordunmask('proxypassword', get_string('proxypassword', 'admin'), get_string('configproxypassword', 'admin'), ''));
$temp->add(new admin_setting_configtext('proxybypass', get_string('proxybypass', 'admin'), get_string('configproxybypass', 'admin'), 'localhost, 127.0.0.1'));
$ADMIN->add('server', $temp);
$temp = new admin_settingpage('maintenancemode', new lang_string('sitemaintenancemode', 'admin'));
$options = array(0=>new lang_string('disable'), 1=>new lang_string('enable'));
$temp->add(new admin_setting_configselect('maintenance_enabled', new lang_string('sitemaintenancemode', 'admin'),
new lang_string('helpsitemaintenance', 'admin'), 0, $options));
$temp->add(new admin_setting_confightmleditor('maintenance_message', new lang_string('optionalmaintenancemessage', 'admin'),
$temp = new admin_settingpage('maintenancemode', get_string('sitemaintenancemode', 'admin'));
$options = array(0=>get_string('disable'), 1=>get_string('enable'));
$temp->add(new admin_setting_configselect('maintenance_enabled', get_string('sitemaintenancemode', 'admin'),
get_string('helpsitemaintenance', 'admin'), 0, $options));
$temp->add(new admin_setting_confightmleditor('maintenance_message', get_string('optionalmaintenancemessage', 'admin'),
'', ''));
$ADMIN->add('server', $temp);
$temp = new admin_settingpage('cleanup', new lang_string('cleanup', 'admin'));
$temp->add(new admin_setting_configselect('deleteunconfirmed', new lang_string('deleteunconfirmed', 'admin'), new lang_string('configdeleteunconfirmed', 'admin'), 168, array(0 => new lang_string('never'),
168 => new lang_string('numdays', '', 7),
144 => new lang_string('numdays', '', 6),
120 => new lang_string('numdays', '', 5),
96 => new lang_string('numdays', '', 4),
72 => new lang_string('numdays', '', 3),
48 => new lang_string('numdays', '', 2),
24 => new lang_string('numdays', '', 1),
12 => new lang_string('numhours', '', 12),
6 => new lang_string('numhours', '', 6),
1 => new lang_string('numhours', '', 1))));
$temp = new admin_settingpage('cleanup', get_string('cleanup', 'admin'));
$temp->add(new admin_setting_configselect('deleteunconfirmed', get_string('deleteunconfirmed', 'admin'), get_string('configdeleteunconfirmed', 'admin'), 168, array(0 => get_string('never'),
168 => get_string('numdays', '', 7),
144 => get_string('numdays', '', 6),
120 => get_string('numdays', '', 5),
96 => get_string('numdays', '', 4),
72 => get_string('numdays', '', 3),
48 => get_string('numdays', '', 2),
24 => get_string('numdays', '', 1),
12 => get_string('numhours', '', 12),
6 => get_string('numhours', '', 6),
1 => get_string('numhours', '', 1))));
$temp->add(new admin_setting_configselect('deleteincompleteusers', new lang_string('deleteincompleteusers', 'admin'), new lang_string('configdeleteincompleteusers', 'admin'), 0, array(0 => new lang_string('never'),
168 => new lang_string('numdays', '', 7),
144 => new lang_string('numdays', '', 6),
120 => new lang_string('numdays', '', 5),
96 => new lang_string('numdays', '', 4),
72 => new lang_string('numdays', '', 3),
48 => new lang_string('numdays', '', 2),
24 => new lang_string('numdays', '', 1))));
$temp->add(new admin_setting_configselect('deleteincompleteusers', get_string('deleteincompleteusers', 'admin'), get_string('configdeleteincompleteusers', 'admin'), 0, array(0 => get_string('never'),
168 => get_string('numdays', '', 7),
144 => get_string('numdays', '', 6),
120 => get_string('numdays', '', 5),
96 => get_string('numdays', '', 4),
72 => get_string('numdays', '', 3),
48 => get_string('numdays', '', 2),
24 => get_string('numdays', '', 1))));
$temp->add(new admin_setting_configcheckbox('logguests', new lang_string('logguests', 'admin'),
new lang_string('logguests_help', 'admin'), 1));
$temp->add(new admin_setting_configselect('loglifetime', new lang_string('loglifetime', 'admin'), new lang_string('configloglifetime', 'admin'), 0, array(0 => new lang_string('neverdeletelogs'),
1000 => new lang_string('numdays', '', 1000),
365 => new lang_string('numdays', '', 365),
180 => new lang_string('numdays', '', 180),
150 => new lang_string('numdays', '', 150),
120 => new lang_string('numdays', '', 120),
90 => new lang_string('numdays', '', 90),
60 => new lang_string('numdays', '', 60),
35 => new lang_string('numdays', '', 35),
10 => new lang_string('numdays', '', 10),
5 => new lang_string('numdays', '', 5),
2 => new lang_string('numdays', '', 2))));
$temp->add(new admin_setting_configcheckbox('logguests', get_string('logguests', 'admin'),
get_string('logguests_help', 'admin'), 1));
$temp->add(new admin_setting_configselect('loglifetime', get_string('loglifetime', 'admin'), get_string('configloglifetime', 'admin'), 0, array(0 => get_string('neverdeletelogs'),
1000 => get_string('numdays', '', 1000),
365 => get_string('numdays', '', 365),
180 => get_string('numdays', '', 180),
150 => get_string('numdays', '', 150),
120 => get_string('numdays', '', 120),
90 => get_string('numdays', '', 90),
60 => get_string('numdays', '', 60),
35 => get_string('numdays', '', 35),
10 => get_string('numdays', '', 10),
5 => get_string('numdays', '', 5),
2 => get_string('numdays', '', 2))));
$temp->add(new admin_setting_configcheckbox('disablegradehistory', new lang_string('disablegradehistory', 'grades'),
new lang_string('disablegradehistory_help', 'grades'), 0));
$temp->add(new admin_setting_configcheckbox('disablegradehistory', get_string('disablegradehistory', 'grades'),
get_string('disablegradehistory_help', 'grades'), 0));
$temp->add(new admin_setting_configselect('gradehistorylifetime', new lang_string('gradehistorylifetime', 'grades'),
new lang_string('gradehistorylifetime_help', 'grades'), 0, array(0 => new lang_string('neverdeletehistory', 'grades'),
1000 => new lang_string('numdays', '', 1000),
365 => new lang_string('numdays', '', 365),
180 => new lang_string('numdays', '', 180),
150 => new lang_string('numdays', '', 150),
120 => new lang_string('numdays', '', 120),
90 => new lang_string('numdays', '', 90),
60 => new lang_string('numdays', '', 60),
30 => new lang_string('numdays', '', 30))));
$temp->add(new admin_setting_configselect('gradehistorylifetime', get_string('gradehistorylifetime', 'grades'),
get_string('gradehistorylifetime_help', 'grades'), 0, array(0 => get_string('neverdeletehistory', 'grades'),
1000 => get_string('numdays', '', 1000),
365 => get_string('numdays', '', 365),
180 => get_string('numdays', '', 180),
150 => get_string('numdays', '', 150),
120 => get_string('numdays', '', 120),
90 => get_string('numdays', '', 90),
60 => get_string('numdays', '', 60),
30 => get_string('numdays', '', 30))));
$ADMIN->add('server', $temp);
$ADMIN->add('server', new admin_externalpage('environment', new lang_string('environment','admin'), "$CFG->wwwroot/$CFG->admin/environment.php"));
$ADMIN->add('server', new admin_externalpage('phpinfo', new lang_string('phpinfo'), "$CFG->wwwroot/$CFG->admin/phpinfo.php"));
$ADMIN->add('server', new admin_externalpage('environment', get_string('environment','admin'), "$CFG->wwwroot/$CFG->admin/environment.php"));
$ADMIN->add('server', new admin_externalpage('phpinfo', get_string('phpinfo'), "$CFG->wwwroot/$CFG->admin/phpinfo.php"));
// "performance" settingpage
$temp = new admin_settingpage('performance', new lang_string('performance', 'admin'));
$temp = new admin_settingpage('performance', get_string('performance', 'admin'));
$temp->add(new admin_setting_configtext('numcoursesincombo', new lang_string('numcoursesincombo', 'admin'), new lang_string('numcoursesincombo_help', 'admin'), 500));
$temp->add(new admin_setting_configtext('numcoursesincombo', get_string('numcoursesincombo', 'admin'), get_string('numcoursesincombo_help', 'admin'), 500));
$temp->add(new admin_setting_configselect('extramemorylimit', new lang_string('extramemorylimit', 'admin'),
new lang_string('configextramemorylimit', 'admin'), '512M',
$temp->add(new admin_setting_configselect('extramemorylimit', get_string('extramemorylimit', 'admin'),
get_string('configextramemorylimit', 'admin'), '512M',
// if this option is set to 0, default 128M will be used
array( '64M' => '64M',
'128M' => '128M',
@@ -188,56 +188,37 @@ $temp->add(new admin_setting_configselect('extramemorylimit', new lang_string('e
'512M' => '512M',
'1024M' => '1024M'
)));
$temp->add(new admin_setting_configtext('curlcache', new lang_string('curlcache', 'admin'),
new lang_string('configcurlcache', 'admin'), 120, PARAM_INT));
$temp->add(new admin_setting_configtext('curlcache', get_string('curlcache', 'admin'),
get_string('configcurlcache', 'admin'), 120, PARAM_INT));
$temp->add(new admin_setting_configtext('curltimeoutkbitrate', new lang_string('curltimeoutkbitrate', 'admin'),
new lang_string('curltimeoutkbitrate_help', 'admin'), 56, PARAM_INT));
$temp->add(new admin_setting_configtext('curltimeoutkbitrate', get_string('curltimeoutkbitrate', 'admin'),
get_string('curltimeoutkbitrate_help', 'admin'), 56, PARAM_INT));
/* //TODO: we need to fix code instead of relying on slow rcache, enable this once we have some code that is actually using it
$temp->add(new admin_setting_special_selectsetup('cachetype', new lang_string('cachetype', 'admin'),
new lang_string('configcachetype', 'admin'), '',
array( '' => new lang_string('none'),
$temp->add(new admin_setting_special_selectsetup('cachetype', get_string('cachetype', 'admin'),
get_string('configcachetype', 'admin'), '',
array( '' => get_string('none'),
'internal' => 'internal',
'memcached' => 'memcached',
'eaccelerator' => 'eaccelerator')));
// NOTE: $CFG->rcache is forced to bool in lib/setup.php
$temp->add(new admin_setting_special_selectsetup('rcache', new lang_string('rcache', 'admin'),
new lang_string('configrcache', 'admin'), 0,
array( '0' => new lang_string('no'),
'1' => new lang_string('yes'))));
$temp->add(new admin_setting_configtext('rcachettl', new lang_string('rcachettl', 'admin'),
new lang_string('configrcachettl', 'admin'), 10));
$temp->add(new admin_setting_configtext('intcachemax', new lang_string('intcachemax', 'admin'),
new lang_string('configintcachemax', 'admin'), 10));
$temp->add(new admin_setting_configtext('memcachedhosts', new lang_string('memcachedhosts', 'admin'),
new lang_string('configmemcachedhosts', 'admin'), ''));
$temp->add(new admin_setting_configselect('memcachedpconn', new lang_string('memcachedpconn', 'admin'),
new lang_string('configmemcachedpconn', 'admin'), 0,
array( '0' => new lang_string('no'),
'1' => new lang_string('yes'))));
$temp->add(new admin_setting_special_selectsetup('rcache', get_string('rcache', 'admin'),
get_string('configrcache', 'admin'), 0,
array( '0' => get_string('no'),
'1' => get_string('yes'))));
$temp->add(new admin_setting_configtext('rcachettl', get_string('rcachettl', 'admin'),
get_string('configrcachettl', 'admin'), 10));
$temp->add(new admin_setting_configtext('intcachemax', get_string('intcachemax', 'admin'),
get_string('configintcachemax', 'admin'), 10));
$temp->add(new admin_setting_configtext('memcachedhosts', get_string('memcachedhosts', 'admin'),
get_string('configmemcachedhosts', 'admin'), ''));
$temp->add(new admin_setting_configselect('memcachedpconn', get_string('memcachedpconn', 'admin'),
get_string('configmemcachedpconn', 'admin'), 0,
array( '0' => get_string('no'),
'1' => get_string('yes'))));
*/
$ADMIN->add('server', $temp);
$ADMIN->add('server', new admin_externalpage('adminregistration', new lang_string('hubs', 'admin'),
"$CFG->wwwroot/$CFG->admin/registration/index.php"));
// "update notifications" settingpage
if (empty($CFG->disableupdatenotifications)) {
$temp = new admin_settingpage('updatenotifications', new lang_string('updatenotifications', 'core_admin'));
$temp->add(new admin_setting_configcheckbox('updateautocheck', new lang_string('updateautocheck', 'core_admin'),
new lang_string('updateautocheck_desc', 'core_admin'), 1));
$temp->add(new admin_setting_configselect('updateminmaturity', new lang_string('updateminmaturity', 'core_admin'),
new lang_string('updateminmaturity_desc', 'core_admin'), MATURITY_STABLE,
array(
MATURITY_ALPHA => new lang_string('maturity'.MATURITY_ALPHA, 'core_admin'),
MATURITY_BETA => new lang_string('maturity'.MATURITY_BETA, 'core_admin'),
MATURITY_RC => new lang_string('maturity'.MATURITY_RC, 'core_admin'),
MATURITY_STABLE => new lang_string('maturity'.MATURITY_STABLE, 'core_admin'),
)));
$temp->add(new admin_setting_configcheckbox('updatenotifybuilds', new lang_string('updatenotifybuilds', 'core_admin'),
new lang_string('updatenotifybuilds_desc', 'core_admin'), 0));
$ADMIN->add('server', $temp);
}
$ADMIN->add('server', new admin_externalpage('adminregistration', get_string('registration','admin'), "$CFG->wwwroot/$CFG->admin/registration/index.php"));
} // end of speedup
+24 -26
View File
@@ -2,47 +2,45 @@
if ($hassiteconfig) { // speedup for non-admins, add all caps used on this page
$optionalsubsystems->add(new admin_setting_configcheckbox('enableoutcomes', new lang_string('enableoutcomes', 'grades'), new lang_string('enableoutcomes_help', 'grades'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('usecomments', new lang_string('enablecomments', 'admin'), new lang_string('configenablecomments', 'admin'), 1));
$optionalsubsystems->add(new admin_setting_configcheckbox('enableoutcomes', get_string('enableoutcomes', 'grades'), get_string('enableoutcomes_help', 'grades'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('usecomments', get_string('enablecomments', 'admin'), get_string('configenablecomments', 'admin'), 1));
$optionalsubsystems->add(new admin_setting_configcheckbox('usetags', new lang_string('usetags','admin'),new lang_string('configusetags', 'admin'), '1'));
$optionalsubsystems->add(new admin_setting_configcheckbox('usetags', get_string('usetags','admin'),get_string('configusetags', 'admin'), '1'));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablenotes', new lang_string('enablenotes', 'notes'), new lang_string('configenablenotes', 'notes'), 1));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablenotes', get_string('enablenotes', 'notes'), get_string('configenablenotes', 'notes'), 1));
$optionalsubsystems->add(new admin_setting_configcheckbox('enableportfolios', new lang_string('enabled', 'portfolio'), new lang_string('enableddesc', 'portfolio'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enableportfolios', get_string('enabled', 'portfolio'), get_string('enableddesc', 'portfolio'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablewebservices', new lang_string('enablewebservices', 'admin'), new lang_string('configenablewebservices', 'admin'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablewebservices', get_string('enablewebservices', 'admin'), get_string('configenablewebservices', 'admin'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('messaging', new lang_string('messaging', 'admin'), new lang_string('configmessaging','admin'), 1));
$optionalsubsystems->add(new admin_setting_configcheckbox('messaging', get_string('messaging', 'admin'), get_string('configmessaging','admin'), 1));
$optionalsubsystems->add(new admin_setting_configcheckbox('messaginghidereadnotifications', new lang_string('messaginghidereadnotifications', 'admin'), new lang_string('configmessaginghidereadnotifications','admin'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('messaginghidereadnotifications', get_string('messaginghidereadnotifications', 'admin'), get_string('configmessaginghidereadnotifications','admin'), 0));
$options = array(DAYSECS=>new lang_string('secondstotime86400'), WEEKSECS=>new lang_string('secondstotime604800'), 2620800=>new lang_string('nummonths', 'moodle', 1), 15724800=>new lang_string('nummonths', 'moodle', 6),0=>new lang_string('never'));
$optionalsubsystems->add(new admin_setting_configselect('messagingdeletereadnotificationsdelay', new lang_string('messagingdeletereadnotificationsdelay', 'admin'), new lang_string('configmessagingdeletereadnotificationsdelay', 'admin'), 604800, $options));
$options = array(DAYSECS=>get_string('secondstotime86400'), WEEKSECS=>get_string('secondstotime604800'), 2620800=>get_string('nummonths', 'moodle', 1), 15724800=>get_string('nummonths', 'moodle', 6),0=>get_string('never'));
$optionalsubsystems->add(new admin_setting_configselect('messagingdeletereadnotificationsdelay', get_string('messagingdeletereadnotificationsdelay', 'admin'), get_string('configmessagingdeletereadnotificationsdelay', 'admin'), 604800, $options));
$optionalsubsystems->add(new admin_setting_configcheckbox('messagingallowemailoverride', new lang_string('messagingallowemailoverride', 'admin'), new lang_string('configmessagingallowemailoverride','admin'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablestats', get_string('enablestats', 'admin'), get_string('configenablestats', 'admin'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablestats', new lang_string('enablestats', 'admin'), new lang_string('configenablestats', 'admin'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablerssfeeds', get_string('enablerssfeeds', 'admin'), get_string('configenablerssfeeds', 'admin'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enablerssfeeds', new lang_string('enablerssfeeds', 'admin'), new lang_string('configenablerssfeeds', 'admin'), 0));
$optionalsubsystems->add(new admin_setting_bloglevel('bloglevel', get_string('bloglevel', 'admin'),
get_string('configbloglevel', 'admin'), 4, array(5 => get_string('worldblogs','blog'),
4 => get_string('siteblogs','blog'),
1 => get_string('personalblogs','blog'),
0 => get_string('disableblogs','blog'))));
$optionalsubsystems->add(new admin_setting_bloglevel('bloglevel', new lang_string('bloglevel', 'admin'),
new lang_string('configbloglevel', 'admin'), 4, array(5 => new lang_string('worldblogs','blog'),
4 => new lang_string('siteblogs','blog'),
1 => new lang_string('personalblogs','blog'),
0 => new lang_string('disableblogs','blog'))));
$options = array('off'=>new lang_string('off', 'mnet'), 'strict'=>new lang_string('on', 'mnet'));
$optionalsubsystems->add(new admin_setting_configselect('mnet_dispatcher_mode', new lang_string('net', 'mnet'), new lang_string('configmnet', 'mnet'), 'off', $options));
$options = array('off'=>get_string('off', 'mnet'), 'strict'=>get_string('on', 'mnet'));
$optionalsubsystems->add(new admin_setting_configselect('mnet_dispatcher_mode', get_string('net', 'mnet'), get_string('configmnet', 'mnet'), 'off', $options));
// Conditional activities: completion and availability
$optionalsubsystems->add(new admin_setting_configcheckbox('enablecompletion',
new lang_string('enablecompletion','completion'),
new lang_string('configenablecompletion','completion'), 0));
get_string('enablecompletion','completion'),
get_string('configenablecompletion','completion'), 0));
$optionalsubsystems->add($checkbox = new admin_setting_configcheckbox('enableavailability',
new lang_string('enableavailability','condition'),
new lang_string('configenableavailability','condition'), 0));
get_string('enableavailability','condition'),
get_string('configenableavailability','condition'), 0));
$checkbox->set_affects_modinfo(true);
$optionalsubsystems->add(new admin_setting_configcheckbox('enableplagiarism', new lang_string('enableplagiarism','plagiarism'), new lang_string('configenableplagiarism','plagiarism'), 0));
$optionalsubsystems->add(new admin_setting_configcheckbox('enableplagiarism', get_string('enableplagiarism','plagiarism'), get_string('configenableplagiarism','plagiarism'), 0));
}
+24 -24
View File
@@ -8,41 +8,41 @@
$systemcontext = get_context_instance(CONTEXT_SYSTEM);
$hassiteconfig = has_capability('moodle/site:config', $systemcontext);
$ADMIN->add('root', new admin_externalpage('adminnotifications', new lang_string('notifications'), "$CFG->wwwroot/$CFG->admin/index.php"));
$ADMIN->add('root', new admin_externalpage('adminnotifications', get_string('notifications'), "$CFG->wwwroot/$CFG->admin/index.php"));
$ADMIN->add('root', new admin_externalpage('registrationmoodleorg', new lang_string('registration', 'admin'),
"$CFG->wwwroot/$CFG->admin/registration/register.php?huburl=" . HUB_MOODLEORGHUBURL . "&hubname=Moodle.org"));
$ADMIN->add('root', new admin_externalpage('registrationhub', new lang_string('registerwith', 'hub'),
$ADMIN->add('root', new admin_externalpage('registrationindex', get_string('registration','admin'),
"$CFG->wwwroot/$CFG->admin/registration/index.php"));
$ADMIN->add('root', new admin_externalpage('registration', get_string('registeron','hub'),
"$CFG->wwwroot/$CFG->admin/registration/register.php", 'moodle/site:config', true));
$ADMIN->add('root', new admin_externalpage('registrationhubs', new lang_string('hubs', 'admin'),
"$CFG->wwwroot/$CFG->admin/registration/index.php", 'moodle/site:config', true));
$ADMIN->add('root', new admin_externalpage('registrationselector', get_string('registeron','hub'),
"$CFG->wwwroot/$CFG->admin/registration/hubselector.php", 'moodle/site:config', true));
$ADMIN->add('root', new admin_externalpage('siteregistrationconfirmed',
new lang_string('registrationconfirmed', 'hub'),
get_string('registrationconfirmed', 'hub'),
$CFG->wwwroot."/".$CFG->admin."/registration/confirmregistration.php", 'moodle/site:config', true));
// hidden upgrade script
$ADMIN->add('root', new admin_externalpage('upgradesettings', new lang_string('upgradesettings', 'admin'), "$CFG->wwwroot/$CFG->admin/upgradesettings.php", 'moodle/site:config', true));
$ADMIN->add('root', new admin_externalpage('upgradesettings', get_string('upgradesettings', 'admin'), "$CFG->wwwroot/$CFG->admin/upgradesettings.php", 'moodle/site:config', true));
if ($hassiteconfig) {
$optionalsubsystems = new admin_settingpage('optionalsubsystems', new lang_string('advancedfeatures', 'admin'));
$optionalsubsystems = new admin_settingpage('optionalsubsystems', get_string('advancedfeatures', 'admin'));
$ADMIN->add('root', $optionalsubsystems);
}
$ADMIN->add('root', new admin_category('users', new lang_string('users','admin')));
$ADMIN->add('root', new admin_category('courses', new lang_string('courses','admin')));
$ADMIN->add('root', new admin_category('grades', new lang_string('grades')));
$ADMIN->add('root', new admin_category('location', new lang_string('location','admin')));
$ADMIN->add('root', new admin_category('language', new lang_string('language')));
$ADMIN->add('root', new admin_category('modules', new lang_string('plugins', 'admin')));
$ADMIN->add('root', new admin_category('security', new lang_string('security','admin')));
$ADMIN->add('root', new admin_category('appearance', new lang_string('appearance','admin')));
$ADMIN->add('root', new admin_category('frontpage', new lang_string('frontpage','admin')));
$ADMIN->add('root', new admin_category('server', new lang_string('server','admin')));
$ADMIN->add('root', new admin_category('mnet', new lang_string('net','mnet'), (isset($CFG->mnet_dispatcher_mode) and $CFG->mnet_dispatcher_mode === 'off')));
$ADMIN->add('root', new admin_category('reports', new lang_string('reports')));
$ADMIN->add('root', new admin_category('development', new lang_string('development', 'admin')));
$ADMIN->add('root', new admin_category('users', get_string('users','admin')));
$ADMIN->add('root', new admin_category('courses', get_string('courses','admin')));
$ADMIN->add('root', new admin_category('grades', get_string('grades')));
$ADMIN->add('root', new admin_category('location', get_string('location','admin')));
$ADMIN->add('root', new admin_category('language', get_string('language')));
$ADMIN->add('root', new admin_category('modules', get_string('plugins', 'admin')));
$ADMIN->add('root', new admin_category('security', get_string('security','admin')));
$ADMIN->add('root', new admin_category('appearance', get_string('appearance','admin')));
$ADMIN->add('root', new admin_category('frontpage', get_string('frontpage','admin')));
$ADMIN->add('root', new admin_category('server', get_string('server','admin')));
$ADMIN->add('root', new admin_category('mnet', get_string('net','mnet'), (isset($CFG->mnet_dispatcher_mode) and $CFG->mnet_dispatcher_mode === 'off')));
$ADMIN->add('root', new admin_category('reports', get_string('reports')));
$ADMIN->add('root', new admin_category('development', get_string('development', 'admin')));
// hidden unsupported category
$ADMIN->add('root', new admin_category('unsupported', new lang_string('unsupported', 'admin'), true));
$ADMIN->add('root', new admin_category('unsupported', get_string('unsupported', 'admin'), true));
// hidden search script
$ADMIN->add('root', new admin_externalpage('search', new lang_string('searchresults'), "$CFG->wwwroot/$CFG->admin/search.php", 'moodle/site:config', true));
$ADMIN->add('root', new admin_externalpage('search', get_string('searchresults'), "$CFG->wwwroot/$CFG->admin/search.php", 'moodle/site:config', true));
+51 -51
View File
@@ -2,8 +2,8 @@
// This file defines settingpages and externalpages under the "users" category
$ADMIN->add('users', new admin_category('accounts', new lang_string('accounts', 'admin')));
$ADMIN->add('users', new admin_category('roles', new lang_string('permissions', 'role')));
$ADMIN->add('users', new admin_category('accounts', get_string('accounts', 'admin')));
$ADMIN->add('users', new admin_category('roles', get_string('permissions', 'role')));
if ($hassiteconfig
or has_capability('moodle/user:create', $systemcontext)
@@ -21,17 +21,17 @@ if ($hassiteconfig
$securewwwroot = str_replace('http:','https:',$CFG->wwwroot);
}
// stuff under the "accounts" subcategory
$ADMIN->add('accounts', new admin_externalpage('editusers', new lang_string('userlist','admin'), "$CFG->wwwroot/$CFG->admin/user.php", array('moodle/user:update', 'moodle/user:delete')));
$ADMIN->add('accounts', new admin_externalpage('userbulk', new lang_string('userbulk','admin'), "$CFG->wwwroot/$CFG->admin/user/user_bulk.php", array('moodle/user:update', 'moodle/user:delete')));
$ADMIN->add('accounts', new admin_externalpage('addnewuser', new lang_string('addnewuser'), "$securewwwroot/user/editadvanced.php?id=-1", 'moodle/user:create'));
$ADMIN->add('accounts', new admin_externalpage('profilefields', new lang_string('profilefields','admin'), "$CFG->wwwroot/user/profile/index.php", 'moodle/site:config'));
$ADMIN->add('accounts', new admin_externalpage('cohorts', new lang_string('cohorts', 'cohort'), $CFG->wwwroot . '/cohort/index.php', array('moodle/cohort:manage', 'moodle/cohort:view')));
$ADMIN->add('accounts', new admin_externalpage('editusers', get_string('userlist','admin'), "$CFG->wwwroot/$CFG->admin/user.php", array('moodle/user:update', 'moodle/user:delete')));
$ADMIN->add('accounts', new admin_externalpage('userbulk', get_string('userbulk','admin'), "$CFG->wwwroot/$CFG->admin/user/user_bulk.php", array('moodle/user:update', 'moodle/user:delete')));
$ADMIN->add('accounts', new admin_externalpage('addnewuser', get_string('addnewuser'), "$securewwwroot/user/editadvanced.php?id=-1", 'moodle/user:create'));
$ADMIN->add('accounts', new admin_externalpage('profilefields', get_string('profilefields','admin'), "$CFG->wwwroot/user/profile/index.php", 'moodle/site:config'));
$ADMIN->add('accounts', new admin_externalpage('cohorts', get_string('cohorts', 'cohort'), $CFG->wwwroot . '/cohort/index.php', array('moodle/cohort:manage', 'moodle/cohort:view')));
// stuff under the "roles" subcategory
// "userpolicies" settingpage
$temp = new admin_settingpage('userpolicies', new lang_string('userpolicies', 'admin'));
$temp = new admin_settingpage('userpolicies', get_string('userpolicies', 'admin'));
if ($ADMIN->fulltree) {
if (!during_initial_install()) {
$context = get_context_instance(CONTEXT_SYSTEM);
@@ -80,28 +80,28 @@ if ($hassiteconfig
}
if (empty($guestroles)) {
$guestroles[0] = new lang_string('none');
$guestroles[0] = get_string('none');
$defaultguestid = 0;
}
if (empty($userroles)) {
$userroles[0] = new lang_string('none');
$userroles[0] = get_string('none');
$defaultuserid = 0;
}
$restorersnewrole = $creatornewroles;
$restorersnewrole[0] = new lang_string('none');
$restorersnewrole[0] = get_string('none');
$temp->add(new admin_setting_configselect('notloggedinroleid', new lang_string('notloggedinroleid', 'admin'),
new lang_string('confignotloggedinroleid', 'admin'), $defaultguestid, ($guestroles + $otherroles)));
$temp->add(new admin_setting_configselect('guestroleid', new lang_string('guestroleid', 'admin'),
new lang_string('guestroleid_help', 'admin'), $defaultguestid, ($guestroles + $otherroles)));
$temp->add(new admin_setting_configselect('defaultuserroleid', new lang_string('defaultuserroleid', 'admin'),
new lang_string('configdefaultuserroleid', 'admin'), $defaultuserid, ($userroles + $otherroles)));
$temp->add(new admin_setting_configselect('creatornewroleid', new lang_string('creatornewroleid', 'admin'),
new lang_string('creatornewroleid_help', 'admin'), $defaultteacherid, $creatornewroles));
$temp->add(new admin_setting_configselect('restorernewroleid', new lang_string('restorernewroleid', 'admin'),
new lang_string('restorernewroleid_help', 'admin'), $defaultteacherid, $restorersnewrole));
$temp->add(new admin_setting_configselect('notloggedinroleid', get_string('notloggedinroleid', 'admin'),
get_string('confignotloggedinroleid', 'admin'), $defaultguestid, ($guestroles + $otherroles)));
$temp->add(new admin_setting_configselect('guestroleid', get_string('guestroleid', 'admin'),
get_string('guestroleid_help', 'admin'), $defaultguestid, ($guestroles + $otherroles)));
$temp->add(new admin_setting_configselect('defaultuserroleid', get_string('defaultuserroleid', 'admin'),
get_string('configdefaultuserroleid', 'admin'), $defaultuserid, ($userroles + $otherroles)));
$temp->add(new admin_setting_configselect('creatornewroleid', get_string('creatornewroleid', 'admin'),
get_string('creatornewroleid_help', 'admin'), $defaultteacherid, $creatornewroles));
$temp->add(new admin_setting_configselect('restorernewroleid', get_string('restorernewroleid', 'admin'),
get_string('restorernewroleid_help', 'admin'), $defaultteacherid, $restorersnewrole));
// release memory
unset($otherroles);
@@ -111,24 +111,24 @@ if ($hassiteconfig
unset($restorersnewrole);
}
$temp->add(new admin_setting_configcheckbox('autologinguests', new lang_string('autologinguests', 'admin'), new lang_string('configautologinguests', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('autologinguests', get_string('autologinguests', 'admin'), get_string('configautologinguests', 'admin'), 0));
$temp->add(new admin_setting_configmultiselect('hiddenuserfields', new lang_string('hiddenuserfields', 'admin'),
new lang_string('confighiddenuserfields', 'admin'), array(),
array('description' => new lang_string('description'),
'city' => new lang_string('city'),
'country' => new lang_string('country'),
'webpage' => new lang_string('webpage'),
'icqnumber' => new lang_string('icqnumber'),
'skypeid' => new lang_string('skypeid'),
'yahooid' => new lang_string('yahooid'),
'aimid' => new lang_string('aimid'),
'msnid' => new lang_string('msnid'),
'firstaccess' => new lang_string('firstaccess'),
'lastaccess' => new lang_string('lastaccess'),
'mycourses' => new lang_string('mycourses'),
'groups' => new lang_string('groups'),
'suspended' => new lang_string('suspended', 'auth'),
$temp->add(new admin_setting_configmultiselect('hiddenuserfields', get_string('hiddenuserfields', 'admin'),
get_string('confighiddenuserfields', 'admin'), array(),
array('description' => get_string('description'),
'city' => get_string('city'),
'country' => get_string('country'),
'webpage' => get_string('webpage'),
'icqnumber' => get_string('icqnumber'),
'skypeid' => get_string('skypeid'),
'yahooid' => get_string('yahooid'),
'aimid' => get_string('aimid'),
'msnid' => get_string('msnid'),
'firstaccess' => get_string('firstaccess'),
'lastaccess' => get_string('lastaccess'),
'mycourses' => get_string('mycourses'),
'groups' => get_string('groups'),
'suspended' => get_string('suspended', 'auth'),
)));
// Select fields to display as part of user identity (only to those
@@ -140,25 +140,25 @@ if ($hassiteconfig
// be a security problem to reveal usernames even to trusted staff.
// Custom user profile fields are not currently supported.
$temp->add(new admin_setting_configmulticheckbox('showuseridentity',
new lang_string('showuseridentity', 'admin'),
new lang_string('showuseridentity_desc', 'admin'), array('email' => 1), array(
'idnumber' => new lang_string('idnumber'),
'email' => new lang_string('email'),
'phone1' => new lang_string('phone'),
'phone2' => new lang_string('phone2'),
'department' => new lang_string('department'),
'institution' => new lang_string('institution'),
get_string('showuseridentity', 'admin'),
get_string('showuseridentity_desc', 'admin'), array('email' => 1), array(
'idnumber' => get_string('idnumber'),
'email' => get_string('email'),
'phone1' => get_string('phone'),
'phone2' => get_string('phone2'),
'department' => get_string('department'),
'institution' => get_string('institution'),
)));
$temp->add(new admin_setting_configcheckbox('enablegravatar', new lang_string('enablegravatar', 'admin'), new lang_string('enablegravatar_help', 'admin'), 0));
$temp->add(new admin_setting_configcheckbox('enablegravatar', get_string('enablegravatar', 'admin'), get_string('enablegravatar_help', 'admin'), 0));
}
$ADMIN->add('roles', $temp);
if (is_siteadmin()) {
$ADMIN->add('roles', new admin_externalpage('admins', new lang_string('siteadministrators', 'role'), "$CFG->wwwroot/$CFG->admin/roles/admins.php"));
$ADMIN->add('roles', new admin_externalpage('admins', get_string('siteadministrators', 'role'), "$CFG->wwwroot/$CFG->admin/roles/admins.php"));
}
$ADMIN->add('roles', new admin_externalpage('defineroles', new lang_string('defineroles', 'role'), "$CFG->wwwroot/$CFG->admin/roles/manage.php", 'moodle/role:manage'));
$ADMIN->add('roles', new admin_externalpage('assignroles', new lang_string('assignglobalroles', 'role'), "$CFG->wwwroot/$CFG->admin/roles/assign.php?contextid=".$systemcontext->id, 'moodle/role:assign'));
$ADMIN->add('roles', new admin_externalpage('checkpermissions', new lang_string('checkglobalpermissions', 'role'), "$CFG->wwwroot/$CFG->admin/roles/check.php?contextid=".$systemcontext->id, array('moodle/role:assign', 'moodle/role:safeoverride', 'moodle/role:override', 'moodle/role:manage')));
$ADMIN->add('roles', new admin_externalpage('defineroles', get_string('defineroles', 'role'), "$CFG->wwwroot/$CFG->admin/roles/manage.php", 'moodle/role:manage'));
$ADMIN->add('roles', new admin_externalpage('assignroles', get_string('assignglobalroles', 'role'), "$CFG->wwwroot/$CFG->admin/roles/assign.php?contextid=".$systemcontext->id, 'moodle/role:assign'));
$ADMIN->add('roles', new admin_externalpage('checkpermissions', get_string('checkglobalpermissions', 'role'), "$CFG->wwwroot/$CFG->admin/roles/check.php?contextid=".$systemcontext->id, array('moodle/role:assign', 'moodle/role:safeoverride', 'moodle/role:override', 'moodle/role:manage')));
} // end of speedup
+1 -1
View File
@@ -44,7 +44,7 @@
$timezones = get_list_of_timezones();
echo '<center><form action="timezone.php" method="post">';
echo "$strusers ($strall): ";
echo html_writer::label($strusers . ' (' . $strall . '): ', 'menuzone');
echo html_writer::select($timezones, "zone", $current, array('99'=>get_string("serverlocaltime")));
echo "<input type=\"hidden\" name=\"sesskey\" value=\"".sesskey()."\" />";
echo '<input type="submit" value="'.s($strsavechanges).'" />';
@@ -1,70 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Script to show all the assignments that have not been upgraded after the main upgrade.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('NO_OUTPUT_BUFFERING', true);
require_once(dirname(__FILE__) . '/../../../config.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/locallib.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/upgradableassignmentstable.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/upgradableassignmentsbatchform.php');
require_sesskey();
// admin_externalpage_setup calls require_login and checks moodle/site:config
admin_externalpage_setup('assignmentupgrade', '', array(), tool_assignmentupgrade_url('batchupgrade'));
$PAGE->set_pagelayout('maintenance');
$PAGE->navbar->add(get_string('batchupgrade', 'tool_assignmentupgrade'));
$renderer = $PAGE->get_renderer('tool_assignmentupgrade');
$confirm = required_param('confirm', PARAM_BOOL);
if (!$confirm) {
print_error('invalidrequest');
die();
}
raise_memory_limit(MEMORY_EXTRA);
session_get_instance()->write_close(); // release session
echo $renderer->header();
echo $renderer->heading(get_string('batchupgrade', 'tool_assignmentupgrade'));
$current = 0;
if (optional_param('upgradeall', false, PARAM_BOOL)) {
$assignmentids = tool_assignmentupgrade_load_all_upgradable_assignmentids();
} else {
$assignmentids = explode(',', optional_param('selected', '', PARAM_TEXT));
}
$total = count($assignmentids);
foreach ($assignmentids as $assignmentid) {
list($summary, $success, $log) = tool_assignmentupgrade_upgrade_assignment($assignmentid);
$current += 1;
echo $renderer->heading(get_string('upgradeprogress', 'tool_assignmentupgrade', array('current'=>$current, 'total'=>$total)), 3);
echo $renderer->convert_assignment_result($summary, $success, $log);
}
echo $renderer->continue_button(tool_assignmentupgrade_url('listnotupgraded'));
echo $renderer->footer();
-50
View File
@@ -1,50 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This tool can upgrade old assignment activities to the new assignment activity type
*
* The upgrade can be done on any old assignment instance providing it is using one of the core
* assignment subtypes (online text, single upload, etc).
* The new assignment module was introduced in Moodle 2.3 and although it completely reproduces
* the features of the existing assignment type it wasn't designed to replace it entirely as there
* are many custom assignment types people use and it wouldn't be practical to try to convert them.
* Instead the existing assignment type will be left in core and people will be encouraged to
* use the new assignment type.
*
* This screen is the main entry-point to the plugin, it gives the admin a list
* of options available to them.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(__FILE__) . '/../../../config.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/locallib.php');
// admin_externalpage_setup calls require_login and checks moodle/site:config
admin_externalpage_setup('assignmentupgrade');
$renderer = $PAGE->get_renderer('tool_assignmentupgrade');
$actions = array();
$header = get_string('pluginname', 'tool_assignmentupgrade');
$actions[] = tool_assignmentupgrade_action::make('listnotupgraded');
echo $renderer->index_page($header, $actions);
@@ -1,59 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Strings for the assignment upgrade tool
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['areyousure'] = 'Are you sure?';
$string['areyousuremessage'] = 'Are you sure you want to upgrade the assignment "{$a->name}"?';
$string['assignmentid'] = 'Assignment ID';
$string['assignmentnotfound'] = 'Assignment could not be found (id={$a})';
$string['assignmentsperpage'] = 'Assignments per page';
$string['assignmenttype'] = 'Assignment type';
$string['backtoindex'] = 'Back to index';
$string['batchoperations'] = 'Batch operations';
$string['batchupgrade'] = 'Upgrade multiple assignments';
$string['confirmbatchupgrade'] = 'Confirm batch upgrade assignments';
$string['conversioncomplete'] = 'Assignment converted';
$string['conversionfailed'] = 'The assignment conversion was not successful. The log from the upgrade was: <br />{$a}';
$string['listnotupgraded'] = 'List assignments that have not been upgraded';
$string['listnotupgraded_desc'] = 'You can upgrade individual assignments from here';
$string['noassignmentstoupgrade'] = 'There are no assignments that require upgrading';
$string['notsupported'] = '';
$string['notupgradedintro'] = 'This page lists the assignments created with an older version of Moodle that have not been upgraded to the new assignment module in Moodle 2.3. Not all assignments can be upgraded - if they were created with a custom assignment subtype, then that subtype will need to be upgraded to the new assignment plugin format in order to complete the upgrade.';
$string['notupgradedtitle'] = 'Assignments not upgraded';
$string['pluginname'] = 'Assignment upgrade helper';
$string['select'] = 'Select';
$string['submissions'] = 'Submissions';
$string['supported'] = 'Upgrade';
$string['updatetable'] = 'Update table';
$string['unknown'] = 'Unknown';
$string['upgradeassignmentsummary'] = 'Upgrade assignment: {$a->name} (Course: {$a->shortname})';
$string['upgradeassignmentsuccess'] = 'Result: Upgrade successful';
$string['upgradeassignmentfailed'] = 'Result: Upgrade failed. The log from the upgrade was: <br/><div class="tool_assignmentupgrade_upgradelog">{$a->log}</div>';
$string['upgradable'] = 'Upgradable';
$string['upgradeselected'] = 'Upgrade selected assignments';
$string['upgradeselectedcount'] = 'Upgrade {$a} selected assignments?';
$string['upgradeall'] = 'Upgrade all assignments';
$string['upgradeallconfirm'] = 'Upgrade all assignments?';
$string['upgradeprogress'] = 'Upgrade assignment {$a->current} of {$a->total}';
$string['upgradesingle'] = 'Upgrade single assignment';
$string['viewcourse'] = 'View the course with the converted assignment';
@@ -1,60 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Script to show all the assignments that have not been upgraded after the main upgrade.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(__FILE__) . '/../../../config.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/locallib.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/upgradableassignmentstable.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/upgradableassignmentsbatchform.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/paginationform.php');
// admin_externalpage_setup calls require_login and checks moodle/site:config
admin_externalpage_setup('assignmentupgrade', '', array(), tool_assignmentupgrade_url('listnotupgraded'));
$PAGE->navbar->add(get_string('listnotupgraded', 'tool_assignmentupgrade'));
$renderer = $PAGE->get_renderer('tool_assignmentupgrade');
$perpage = optional_param('perpage', 0, PARAM_INT);
if (!$perpage) {
$perpage = get_user_preferences('tool_assignmentupgrade_perpage', 100);
} else {
set_user_preference('tool_assignmentupgrade_perpage', $perpage);
}
$assignments = new tool_assignmentupgrade_assignments_table($perpage);
$batchform = new tool_assignmentupgrade_batchoperations_form();
$data = $batchform->get_data();
if ($data && $data->selectedassignments != '' || $data && isset($data->upgradeall)) {
require_sesskey();
echo $renderer->confirm_batch_operation_page($data);
} else {
$paginationform = new tool_assignmentupgrade_pagination_form();
$pagedata = new stdClass();
$pagedata->perpage = $perpage;
$paginationform->set_data($pagedata);
echo $renderer->assignment_list_page($assignments, $batchform, $paginationform);
}
-215
View File
@@ -1,215 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Assignment upgrade tool library functions
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
/**
* Get the URL of a script within this plugin.
* @param string $script the script name, without .php. E.g. 'index'
* @param array $params URL parameters (optional)
* @return moodle_url
*/
function tool_assignmentupgrade_url($script, $params = array()) {
return new moodle_url('/admin/tool/assignmentupgrade/' . $script . '.php', $params);
}
/**
* Class to encapsulate the continue / cancel for batch operations
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_assignmentupgrade_batchoperationconfirm implements renderable {
/** @var string $continuemessage The message to show above the continue cancel buttons */
public $continuemessage = '';
/** @var string $continueurl The url to load if the user clicks continue */
public $continueurl;
/**
* Constructor for this class
* @param stdClass $data - The data from the previous batch form
*/
function __construct($data) {
if (isset($data->upgradeselected)) {
$this->continuemessage = get_string('upgradeselectedcount', 'tool_assignmentupgrade', count(explode(',', $data->selectedassignments)));
$this->continueurl = new moodle_url('/admin/tool/assignmentupgrade/batchupgrade.php', array('upgradeselected'=>'1', 'confirm'=>'1', 'sesskey'=>sesskey(), 'selected'=>$data->selectedassignments));
} else if (isset($data->upgradeall)) {
if (!tool_assignmentupgrade_any_upgradable_assignments()) {
$this->continuemessage = get_string('noassignmentstoupgrade', 'tool_assignmentupgrade');
$this->continueurl = '';
} else {
$this->continuemessage = get_string('upgradeallconfirm', 'tool_assignmentupgrade');
$this->continueurl = new moodle_url('/admin/tool/assignmentupgrade/batchupgrade.php', array('upgradeall'=>'1', 'confirm'=>'1', 'sesskey'=>sesskey()));
}
}
}
}
/**
* Class to encapsulate one of the functionalities that this plugin offers.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_assignmentupgrade_action {
/** @var string the name of this action. */
public $name;
/** @var moodle_url the URL to launch this action. */
public $url;
/** @var string a description of this aciton. */
public $description;
/**
* Constructor to set the fields.
*
* In order to create a new tool_assignmentupgrade_action instance you must use the tool_assignmentupgrade_action::make
* method.
*
* @param string $name the name of this action.
* @param moodle_url $url the URL to launch this action.
* @param string $description a description of this aciton.
*/
protected function __construct($name, moodle_url $url, $description) {
$this->name = $name;
$this->url = $url;
$this->description = $description;
}
/**
* Make an action with standard values.
* @param string $shortname internal name of the action. Used to get strings and build a URL.
* @param array $params any URL params required.
* @return tool_assignmentupgrade_action
*/
public static function make($shortname, $params = array()) {
return new self(
get_string($shortname, 'tool_assignmentupgrade'),
tool_assignmentupgrade_url($shortname, $params),
get_string($shortname . '_desc', 'tool_assignmentupgrade'));
}
}
/**
* Determine if there are any assignments that can be upgraded
* @return boolean - Are there any assignments that can be upgraded
*/
function tool_assignmentupgrade_any_upgradable_assignments() {
global $DB, $CFG;
require_once($CFG->dirroot . '/mod/assign/locallib.php');
// first find all the unique assignment types
$types = $DB->get_records_sql('SELECT plugin AS assignmenttype, value AS version FROM {config_plugins} WHERE name = ? AND plugin LIKE ?', array('version', 'assignment_%'));
$upgradabletypes = array();
foreach ($types as $assignment) {
$shorttype = substr($assignment->assignmenttype, strlen('assignment_'));
if (assign::can_upgrade_assignment($shorttype, $assignment->version)) {
$upgradabletypes[] = $shorttype;
}
}
list($sql, $params) = $DB->get_in_or_equal($upgradabletypes);
$count = $DB->count_records_sql('SELECT COUNT(id) from {assignment} where assignmenttype ' . $sql, $params);
return $count > 0;
}
/**
* Load a list of all the assignmentids that can be upgraded
* @return array of assignment ids
*/
function tool_assignmentupgrade_load_all_upgradable_assignmentids() {
global $DB, $CFG;
require_once($CFG->dirroot . '/mod/assign/locallib.php');
// first find all the unique assignment types
$types = $DB->get_records_sql('SELECT plugin AS assignmenttype, value AS version FROM {config_plugins} WHERE name = ? AND plugin LIKE ?', array('version', 'assignment_%'));
$upgradabletypes = array();
foreach ($types as $assignment) {
$shorttype = substr($assignment->assignmenttype, strlen('assignment_'));
if (assign::can_upgrade_assignment($shorttype, $assignment->version)) {
$upgradabletypes[] = $shorttype;
}
}
list($sql, $params) = $DB->get_in_or_equal($upgradabletypes);
$records = $DB->get_records_sql('SELECT id from {assignment} where assignmenttype ' . $sql, $params);
$ids = array();
foreach ($records as $record) {
$ids[] = $record->id;
}
return $ids;
}
/**
* Upgrade a single assignment. This is used by both upgrade single and upgrade batch
*
* @param int $assignmentid - The assignment id to upgrade
* @return array(string, boolean, string) -
* The array contains
* - the assignment summary (returned by tool_assignmentupgrade_get_assignment)
* - success
* - the upgrade log
*/
function tool_assignmentupgrade_upgrade_assignment($assignmentid) {
global $CFG;
require_once($CFG->dirroot . '/mod/assign/upgradelib.php');
$assignment_upgrader = new assign_upgrade_manager();
$info = tool_assignmentupgrade_get_assignment($assignmentid);
if ($info) {
$log = '';
$success = $assignment_upgrader->upgrade_assignment($assignmentid, $log);
} else {
$success = false;
$log = get_string('assignmentnotfound', 'tool_assignmentupgrade', $assignmentid);
$info = new stdClass();
$info->name = get_string('unknown', 'tool_assignmentupgrade');
$info->shortname = get_string('unknown', 'tool_assignmentupgrade');
}
return array($info, $success, $log);
}
/**
* Get the information about a assignment to be upgraded.
* @param int $assignmentid the assignment id.
* @return stdClass the information about that assignment.
*/
function tool_assignmentupgrade_get_assignment($assignmentid) {
global $DB;
return $DB->get_record_sql("
SELECT a.id, a.name, c.shortname, c.id AS courseid
FROM {assignment} a
JOIN {course} c ON c.id = a.course
WHERE a.id = ?", array($assignmentid));
}
-71
View File
@@ -1,71 +0,0 @@
M.tool_assignmentupgrade = {
init_upgrade_table: function(Y) {
Y.use('node', function(Y) {
checkboxes = Y.all('td.c0 input');
checkboxes.each(function(node) {
node.on('change', function(e) {
rowelement = e.currentTarget.get('parentNode').get('parentNode');
if (e.currentTarget.get('checked')) {
rowelement.setAttribute('class', 'selectedrow');
} else {
rowelement.setAttribute('class', 'unselectedrow');
}
});
rowelement = node.get('parentNode').get('parentNode');
if (node.get('checked')) {
rowelement.setAttribute('class', 'selectedrow');
} else {
rowelement.setAttribute('class', 'unselectedrow');
}
});
});
var selectall = Y.one('th.c0 input');
selectall.on('change', function(e) {
if (e.currentTarget.get('checked')) {
checkboxes = Y.all('td.c0 input');
checkboxes.each(function(node) {
rowelement = node.get('parentNode').get('parentNode');
node.set('checked', true);
rowelement.setAttribute('class', 'selectedrow');
});
} else {
checkboxes = Y.all('td.c0 input');
checkboxes.each(function(node) {
rowelement = node.get('parentNode').get('parentNode');
node.set('checked', false);
rowelement.setAttribute('class', 'unselectedrow');
});
}
});
var batchform = Y.one('.tool_assignmentupgrade_batchform form');
batchform.on('submit', function(e) {
checkboxes = Y.all('td.c0 input');
var selectedassignments = [];
checkboxes.each(function(node) {
if (node.get('checked')) {
selectedassignments[selectedassignments.length] = node.get('value');
}
});
operation = Y.one('#id_operation');
assignmentsinput = Y.one('input.selectedassignments');
assignmentsinput.set('value', selectedassignments.join(','));
if (selectedassignments.length == 0) {
alert(M.str.assign.noassignmentsselected);
e.preventDefault();
}
});
var perpage = Y.one('#id_perpage');
perpage.on('change', function(e) {
window.onbeforeunload = null;
Y.one('.tool_assignmentupgrade_paginationform form').submit();
});
}
}
@@ -1,59 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This file contains the forms to create and edit an instance of this module
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot {@link http://www.netspot.com.au}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die('Direct access to this script is forbidden.');
/** Include formslib.php */
require_once ($CFG->libdir.'/formslib.php');
/**
* Assignment upgrade table display options
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot {@link http://www.netspot.com.au}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_assignmentupgrade_pagination_form extends moodleform {
/**
* Define this form - called from the parent constructor
*/
function definition() {
$mform = $this->_form;
$instance = $this->_customdata;
$mform->addElement('header', 'general', get_string('assignmentsperpage', 'tool_assignmentupgrade'));
// visible elements
$options = array(10=>'10', 20=>'20', 50=>'50', 100=>'100');
$mform->addElement('select', 'perpage', get_string('assignmentsperpage', 'assign'), $options);
// hidden params
$mform->addElement('hidden', 'action', 'saveoptions');
$mform->setType('action', PARAM_ALPHA);
// buttons
$this->add_action_buttons(false, get_string('updatetable', 'tool_assignmentupgrade'));
}
}
-244
View File
@@ -1,244 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Defines the renderer for the assignment upgrade helper plugin.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
/**
* Renderer for the assignment upgrade helper plugin.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_assignmentupgrade_renderer extends plugin_renderer_base {
/**
* Render the index page.
* @param string $detected information about what sort of site was detected.
* @param array $actions list of actions to show on this page.
* @return string html to output.
*/
public function index_page($detected, array $actions) {
$output = '';
$output .= $this->header();
$output .= $this->heading(get_string('pluginname', 'tool_assignmentupgrade'));
$output .= $this->box($detected);
$output .= html_writer::start_tag('ul');
foreach ($actions as $action) {
$output .= html_writer::tag('li',
html_writer::link($action->url, $action->name) . ' - ' .
$action->description);
}
$output .= html_writer::end_tag('ul');
$output .= $this->footer();
return $output;
}
/**
* Render a page that is just a simple message.
* @param string $message the message to display.
* @return string html to output.
*/
public function simple_message_page($message) {
$output = '';
$output .= $this->header();
$output .= $this->heading($message);
$output .= $this->back_to_index();
$output .= $this->footer();
return $output;
}
/**
* Render the confirm batch operation page
* @param stdClass $data Submitted form data with list of assignments to upgrade
* @return string html to output.
*/
public function confirm_batch_operation_page(stdClass $data) {
$output = '';
$output .= $this->header();
$output .= $this->heading(get_string('confirmbatchupgrade', 'tool_assignmentupgrade'));
$output .= $this->output->spacer(array(), true);
$output .= $this->container_start('tool_assignmentupgrade_confirmbatch');
$output .= $this->render(new tool_assignmentupgrade_batchoperationconfirm($data));
$output .= $this->container_end();
$output .= $this->back_to_index();
$output .= $this->footer();
return $output;
}
/**
* Render the confirm batch continue / cancel links
* @param tool_assignmentupgrade_batchoperationconfirm $confirm Wrapper class to determine the continue message and url
* @return string html to output.
*/
public function render_tool_assignmentupgrade_batchoperationconfirm(tool_assignmentupgrade_batchoperationconfirm $confirm) {
$output = '';
if ($confirm->continueurl) {
$output .= $this->output->confirm($confirm->continuemessage, $confirm->continueurl, tool_assignmentupgrade_url('listnotupgraded'));
} else {
$output .= $this->output->box($confirm->continuemessage);
$output .= $this->output->continue_button(tool_assignmentupgrade_url('listnotupgraded'));
}
return $output;
}
/**
* Render the list of assignments that still need to be upgraded page.
* @param tool_assignmentupgrade_assignments_table $assignments of data about assignments.
* @param tool_assignmentupgrade_batchoperations_form $batchform Submitted form with list of assignments to upgrade
* @param tool_assignmentupgrade_pagination_form $paginationform Form which contains the preferences for paginating the table
* @return string html to output.
*/
public function assignment_list_page(tool_assignmentupgrade_assignments_table $assignments, tool_assignmentupgrade_batchoperations_form $batchform, tool_assignmentupgrade_pagination_form $paginationform) {
$output = '';
$output .= $this->header();
$this->page->requires->js_init_call('M.tool_assignmentupgrade.init_upgrade_table', array());
$output .= $this->heading(get_string('notupgradedtitle', 'tool_assignmentupgrade'));
$output .= $this->box(get_string('notupgradedintro', 'tool_assignmentupgrade'));
$output .= $this->output->spacer(array(), true);
$output .= $this->container_start('tool_assignmentupgrade_upgradetable');
$output .= $this->container_start('tool_assignmentupgrade_paginationform');
$output .= $this->moodleform($paginationform);
$output .= $this->container_end();
$output .= $this->flexible_table($assignments, $assignments->get_rows_per_page(), true);
$output .= $this->container_end();
if ($assignments->anyupgradableassignments) {
$output .= $this->container_start('tool_assignmentupgrade_batchform');
$output .= $this->moodleform($batchform);
$output .= $this->container_end();
}
$output .= $this->back_to_index();
$output .= $this->footer();
return $output;
}
/**
* Render the result of an assignment conversion
* @param stdClass $assignmentsummary data about the assignment to upgrade.
* @param bool $success Set to true if the outcome of the conversion was a success
* @param string $log The log from the conversion
* @return string html to output.
*/
public function convert_assignment_result($assignmentsummary, $success, $log) {
$output = '';
$output .= $this->container_start('tool_assignmentupgrade_result');
$output .= $this->container(get_string('upgradeassignmentsummary', 'tool_assignmentupgrade', $assignmentsummary));
if (!$success) {
$output .= $this->container(get_string('conversionfailed', 'tool_assignmentupgrade', $log));
} else {
$output .= $this->container(get_string('upgradeassignmentsuccess', 'tool_assignmentupgrade'));
$output .= $this->container(html_writer::link(new moodle_url('/course/view.php', array('id'=>$assignmentsummary->courseid)) ,get_string('viewcourse', 'tool_assignmentupgrade')));
}
$output .= $this->container_end();
return $output;
}
/**
* Render the are-you-sure page to confirm a manual upgrade.
* @param stdClass $assignmentsummary data about the assignment to upgrade.
* @return string html to output.
*/
public function convert_assignment_are_you_sure($assignmentsummary) {
$output = '';
$output .= $this->header();
$output .= $this->heading(get_string('areyousure', 'tool_assignmentupgrade'));
$params = array('id' => $assignmentsummary->id, 'confirmed' => 1, 'sesskey' => sesskey());
$output .= $this->confirm(get_string('areyousuremessage', 'tool_assignmentupgrade', $assignmentsummary),
new single_button(tool_assignmentupgrade_url('upgradesingle', $params), get_string('yes')),
tool_assignmentupgrade_url('listnotupgraded'));
$output .= $this->footer();
return $output;
}
/**
* Helper method dealing with the fact we can not just fetch the output of flexible_table
*
* @param flexible_table $table
* @param int $rowsperpage
* @param bool $displaylinks Show links in the table
* @return string HTML
*/
protected function flexible_table(flexible_table $table, $rowsperpage, $displaylinks) {
$o = '';
ob_start();
$table->out($rowsperpage, $displaylinks);
$o = ob_get_contents();
ob_end_clean();
return $o;
}
/**
* Helper method dealing with the fact we can not just fetch the output of moodleforms
*
* @param moodleform $mform
* @return string HTML
*/
protected function moodleform(moodleform $mform) {
$o = '';
ob_start();
$mform->display();
$o = ob_get_contents();
ob_end_clean();
return $o;
}
/**
* Render a link in a div, such as the 'Back to plugin main page' link.
* @param string|moodle_url $url the link URL.
* @param string $text the link text.
* @return string html to output.
*/
public function end_of_page_link($url, $text) {
return html_writer::tag('div', html_writer::link($url, $text), array('class' => 'mdl-align'));
}
/**
* Output a link back to the plugin index page.
* @return string html to output.
*/
public function back_to_index() {
return $this->end_of_page_link(tool_assignmentupgrade_url('index'), get_string('backtoindex', 'tool_assignmentupgrade'));
}
}
-31
View File
@@ -1,31 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Adds this plugin to the admin menu.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die;
if ($hassiteconfig) { // needs this condition or there is error on login page
$ADMIN->add('root', new admin_externalpage('assignmentupgrade',
get_string('pluginname', 'tool_assignmentupgrade'),
new moodle_url('/admin/tool/assignmentupgrade/index.php')));
}
-11
View File
@@ -1,11 +0,0 @@
#page-admin-tool-assignmentupgrade-listnotupgraded .tool_assignmentupgrade_upgradetable .c0 { display: none; }
#page-admin-tool-assignmentupgrade-listnotupgraded.jsenabled .tool_assignmentupgrade_upgradetable .c0 { display: table-cell; }
/*
.gradingbatchoperationsform { display: none; }
.jsenabled .gradingbatchoperationsform { display: block; }
*/
#page-admin-tool-assignmentupgrade-listnotupgraded .tool_assignmentupgrade_upgradetable tr.selectedrow td { background-color: #ffeecc; }
#page-admin-tool-assignmentupgrade-listnotupgraded .tool_assignmentupgrade_upgradetable tr.unselectedrow td { background-color: white; }
#page-admin-tool-assignmentupgrade-listnotupgraded .tool_assignmentupgrade_paginationform .hidden { display: none; }
@@ -1,55 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This file contains the forms to create and edit an instance of this module
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot {@link http://www.netspot.com.au}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die('Direct access to this script is forbidden.');
/** Include formslib.php */
require_once ($CFG->libdir.'/formslib.php');
/**
* Assignment upgrade batch operations form
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot {@link http://www.netspot.com.au}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_assignmentupgrade_batchoperations_form extends moodleform {
/**
* Define this form - is called from parent constructor
*/
function definition() {
$mform = $this->_form;
$instance = $this->_customdata;
$mform->addElement('header', 'general', get_string('batchoperations', 'tool_assignmentupgrade'));
// visible elements
$mform->addElement('hidden', 'selectedassignments', '', array('class'=>'selectedassignments'));
$mform->addElement('submit', 'upgradeselected', get_string('upgradeselected', 'tool_assignmentupgrade'));
$mform->addElement('submit', 'upgradeall', get_string('upgradeall', 'tool_assignmentupgrade'));
}
}
@@ -1,171 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* This file contains the definition for the grading table which subclassses easy_table
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot {@link http://www.netspot.com.au}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir.'/tablelib.php');
require_once($CFG->libdir.'/gradelib.php');
require_once($CFG->dirroot.'/mod/assign/locallib.php');
/**
* Extends table_sql to provide a table of assignment submissions
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot {@link http://www.netspot.com.au}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
class tool_assignmentupgrade_assignments_table extends table_sql implements renderable {
/** @var int $perpage */
private $perpage = 10;
/** @var int $rownum (global index of current row in table) */
private $rownum = -1;
/** @var renderer_base for getting output */
private $output = null;
/** @var boolean anyupgradableassignments - True if there is one or more assignments that can upgraded */
public $anyupgradableassignments = false;
/**
* This table loads a list of the old assignment instances and tests them to see if they can be upgraded
*
* @param int $perpage How many per page
* @param int $rowoffset The starting row for pagination
*/
function __construct($perpage, $rowoffset=0) {
global $PAGE;
parent::__construct('tool_assignmentupgrade_assignments');
$this->perpage = $perpage;
$this->output = $PAGE->get_renderer('tool_assignmentupgrade');
$this->define_baseurl(new moodle_url('/admin/tool/assignmentupgrade/listnotupgraded.php'));
$this->anyupgradableassignments = tool_assignmentupgrade_any_upgradable_assignments();
// do some business - then set the sql
if ($rowoffset) {
$this->rownum = $rowoffset - 1;
}
$fields = 'a.id as id, a.name as name, a.assignmenttype as type, c.shortname as courseshortname, c.id as courseid, COUNT(s.id) as submissioncount';
$from = '{assignment} a JOIN {course} c ON a.course = c.id ' .
' LEFT JOIN {assignment_submissions} s ON a.id = s.assignment';
$where = '1 = 1';
$where .= ' GROUP BY a.id, a.name, a.assignmenttype, c.shortname, c.id ';
$this->set_sql($fields, $from, $where, array());
$this->set_count_sql('SELECT COUNT(*) FROM {assignment} a JOIN {course} c ON a.course = c.id', array());
$columns = array();
$headers = array();
$columns[] = 'select';
$headers[] = get_string('select', 'tool_assignmentupgrade') . '<div class="selectall"><input type="checkbox" name="selectall" title="' . get_string('selectall') . '"/></div>';
$columns[] = 'upgradable';
$headers[] = get_string('upgradable', 'tool_assignmentupgrade');
$columns[] = 'id';
$headers[] = get_string('assignmentid', 'tool_assignmentupgrade');
$columns[] = 'courseshortname';
$headers[] = get_string('course');
$columns[] = 'name';
$headers[] = get_string('name');
$columns[] = 'type';
$headers[] = get_string('assignmenttype', 'tool_assignmentupgrade');
$columns[] = 'submissioncount';
$headers[] = get_string('submissions', 'tool_assignmentupgrade');
// set the columns
$this->define_columns($columns);
$this->define_headers($headers);
$this->no_sorting('upgradable');
$this->no_sorting('select');
}
/**
* Return the number of rows to display on a single page
*
* @return int The number of rows per page
*/
function get_rows_per_page() {
return $this->perpage;
}
/**
* Format a link to the assignment instance
*
* @param stdClass $row
* @return string
*/
function col_name(stdClass $row) {
return html_writer::link(new moodle_url('/mod/assignment/view.php',
array('a' => $row->id)), $row->name);
}
/**
* Format a link to the upgrade single tool
*
* @param stdClass $row (contains cached result from previous upgradable check)
* @return string
*/
function col_upgradable(stdClass $row) {
if ($row->upgradable) {
return html_writer::link(new moodle_url('/admin/tool/assignmentupgrade/upgradesingleconfirm.php',
array('id' => $row->id, 'sesskey' => sesskey())), get_string('supported', 'tool_assignmentupgrade'));
} else {
return get_string('notsupported', 'tool_assignmentupgrade');
}
}
/**
* Insert a checkbox for selecting the current row for batch operations
*
* @param stdClass $row
* @return string
*/
function col_select(stdClass $row) {
global $CFG;
$version = get_config('assignment_' . $row->type, 'version');
require_once($CFG->dirroot . '/mod/assign/locallib.php');
if (assign::can_upgrade_assignment($row->type, $version)) {
$row->upgradable = true;
return '<input type="checkbox" name="selectedassignment" value="' . $row->id . '"/>';
}
$row->upgradable = false;
return '';
}
/**
* Override the table show_hide_link to not show for select column
*
* @param string $column the column name, index into various names.
* @param int $index numerical index of the column.
* @return string HTML fragment.
*/
protected function show_hide_link($column, $index) {
if ($index > 0) {
return parent::show_hide_link($column, $index);
}
return '';
}
}
@@ -1,46 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Script to show all the assignments that have not been upgraded after the main upgrade.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(__FILE__) . '/../../../config.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/locallib.php');
require_sesskey();
$assignmentid = required_param('id', PARAM_INT);
// admin_externalpage_setup calls require_login and checks moodle/site:config
admin_externalpage_setup('assignmentupgrade', '', array(), tool_assignmentupgrade_url('upgradesingle', array('id' => $assignmentid)));
$PAGE->navbar->add(get_string('upgradesingle', 'tool_assignmentupgrade'));
$renderer = $PAGE->get_renderer('tool_assignmentupgrade');
$log = '';
list($summary, $success, $log) = tool_assignmentupgrade_upgrade_assignment($assignmentid);
echo $renderer->header();
echo $renderer->heading(get_string('conversioncomplete', 'tool_assignmentupgrade'));
echo $renderer->convert_assignment_result($summary, $success, $log);
echo $renderer->continue_button(tool_assignmentupgrade_url('listnotupgraded'));
echo $renderer->footer();
@@ -1,41 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Script to show all the assignments that have not been upgraded after the main upgrade.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(__FILE__) . '/../../../config.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->dirroot . '/admin/tool/assignmentupgrade/locallib.php');
require_sesskey();
$assignmentid = required_param('id', PARAM_INT);
// admin_externalpage_setup calls require_login and checks moodle/site:config
admin_externalpage_setup('assignmentupgrade', '', array(), tool_assignmentupgrade_url('upgradesingle', array('id' => $assignmentid)));
$PAGE->navbar->add(get_string('upgradesingle', 'tool_assignmentupgrade'));
$renderer = $PAGE->get_renderer('tool_assignmentupgrade');
$assignmentinfo = tool_assignmentupgrade_get_assignment($assignmentid);
echo $renderer->convert_assignment_are_you_sure($assignmentinfo);
-30
View File
@@ -1,30 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Version details.
*
* @package tool_assignmentupgrade
* @copyright 2012 NetSpot
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700;
$plugin->requires = 2012061700;
$plugin->component = 'tool_assignmentupgrade';
$plugin->dependencies = array('mod_assign' => 2012061700);
@@ -28,6 +28,37 @@ defined('MOODLE_INTERNAL') || die;
function xmldb_tool_bloglevelupgrade_install() {
global $CFG, $OUTPUT;
// this is a hack - admins were long ago instructed to upgrade blog levels,
// the problem is that blog is not supposed to be course level activity!!
if (!empty($CFG->bloglevel_upgrade_complete)) {
// somebody already upgrades, we do not need this any more
unset_config('bloglevel_upgrade_complete');
return;
}
if (!isset($CFG->bloglevel)) {
// fresh install?
return;
}
if (($CFG->bloglevel == BLOG_COURSE_LEVEL || $CFG->bloglevel == BLOG_GROUP_LEVEL)) {
// inform admins that some settings require attention after upgrade
$site = get_site();
$a = new StdClass;
$a->sitename = $site->fullname;
$a->fixurl = "$CFG->wwwroot/$CFG->admin/tool/bloglevelupgrade/index.php";
$subject = get_string('bloglevelupgrade', 'tool_bloglevelupgrade');
$description = get_string('bloglevelupgradedescription', 'tool_bloglevelupgrade', $a);
// can not use messaging here because it is not configured yet!
upgrade_log(UPGRADE_LOG_NOTICE, null, $subject, $description);
set_config('tool_bloglevelupgrade_pending', 1);
echo $OUTPUT->notification($description);
}
}
+2 -2
View File
@@ -25,6 +25,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_bloglevelupgrade'; // Full name of the plugin (used for diagnostics)
+2 -2
View File
@@ -25,6 +25,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_capability'; // Full name of the plugin (used for diagnostics)
+2 -1
View File
@@ -18,7 +18,8 @@
/**
* Defines the capabilities used by the Language customization admin tool
*
* @package tool_customlang
* @package tool
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
+18
View File
@@ -28,6 +28,24 @@ defined('MOODLE_INTERNAL') || die;
function xmldb_tool_customlang_install() {
global $CFG, $OUTPUT, $DB;
// this is a hack - this plugin used to live in admin/report/customlang,
// we want to remove the orphaned version info and capability
// unless there is a new report type with the same name
// the original tables can be dropped because they are used for caching only
if (!file_exists("$CFG->dirroot/report/customlang")) {
unset_all_config_for_plugin('report_customlang');
capabilities_cleanup('report_customlang');
$dbman = $DB->get_manager();
$table = new xmldb_table('report_customlang');
if ($dbman->table_exists($table)) {
$dbman->drop_table($table);
}
$table = new xmldb_table('report_customlang_components');
if ($dbman->table_exists($table)) {
$dbman->drop_table($table);
}
}
}
+8 -8
View File
@@ -1,22 +1,22 @@
<?xml version="1.0" encoding="UTF-8" ?>
<XMLDB PATH="admin/tool/customlang/db" VERSION="20120122" COMMENT="XMLDB file for Moodle admin/tool/customlang"
<XMLDB PATH="admin/tool/customlang/db" VERSION="20110925" COMMENT="XMLDB file for Moodle admin/tool/customlang"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../../../lib/xmldb/xmldb.xsd"
>
<TABLES>
<TABLE NAME="tool_customlang" COMMENT="Contains the working checkout of all strings and their customization" NEXT="tool_customlang_components">
<FIELDS>
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="true" NEXT="lang"/>
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" SEQUENCE="true" NEXT="lang"/>
<FIELD NAME="lang" TYPE="char" LENGTH="20" NOTNULL="true" SEQUENCE="false" COMMENT="The code of the language this string belongs to. Like en, cs or es" PREVIOUS="id" NEXT="componentid"/>
<FIELD NAME="componentid" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="false" COMMENT="The id of the component" PREVIOUS="lang" NEXT="stringid"/>
<FIELD NAME="componentid" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" SEQUENCE="false" COMMENT="The id of the component" PREVIOUS="lang" NEXT="stringid"/>
<FIELD NAME="stringid" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" COMMENT="The identifier of the string" PREVIOUS="componentid" NEXT="original"/>
<FIELD NAME="original" TYPE="text" LENGTH="big" NOTNULL="true" SEQUENCE="false" COMMENT="English original of the string" PREVIOUS="stringid" NEXT="master"/>
<FIELD NAME="master" TYPE="text" LENGTH="big" NOTNULL="false" SEQUENCE="false" COMMENT="Master translation of the string as is distributed in the official lang pack, null if not translated" PREVIOUS="original" NEXT="local"/>
<FIELD NAME="local" TYPE="text" LENGTH="big" NOTNULL="false" SEQUENCE="false" COMMENT="Local customization of the string, null if not customized" PREVIOUS="master" NEXT="timemodified"/>
<FIELD NAME="timemodified" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="false" COMMENT="The timestamp of when the original or master was recently modified" PREVIOUS="local" NEXT="timecustomized"/>
<FIELD NAME="timecustomized" TYPE="int" LENGTH="10" NOTNULL="false" SEQUENCE="false" COMMENT="The timestamp of when the value of the local translation was recently modified, null if not customized yet" PREVIOUS="timemodified" NEXT="outdated"/>
<FIELD NAME="outdated" TYPE="int" LENGTH="3" NOTNULL="false" DEFAULT="0" SEQUENCE="false" COMMENT="Either the English original or the master translation changed and the customization may be outdated" PREVIOUS="timecustomized" NEXT="modified"/>
<FIELD NAME="modified" TYPE="int" LENGTH="3" NOTNULL="false" DEFAULT="0" SEQUENCE="false" COMMENT="Has the string been modified via the translator?" PREVIOUS="outdated"/>
<FIELD NAME="timemodified" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" SEQUENCE="false" COMMENT="The timestamp of when the original or master was recently modified" PREVIOUS="local" NEXT="timecustomized"/>
<FIELD NAME="timecustomized" TYPE="int" LENGTH="10" NOTNULL="false" UNSIGNED="true" SEQUENCE="false" COMMENT="The timestamp of when the value of the local translation was recently modified, null if not customized yet" PREVIOUS="timemodified" NEXT="outdated"/>
<FIELD NAME="outdated" TYPE="int" LENGTH="3" NOTNULL="false" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" COMMENT="Either the English original or the master translation changed and the customization may be outdated" PREVIOUS="timecustomized" NEXT="modified"/>
<FIELD NAME="modified" TYPE="int" LENGTH="3" NOTNULL="false" UNSIGNED="true" DEFAULT="0" SEQUENCE="false" COMMENT="Has the string been modified via the translator?" PREVIOUS="outdated"/>
</FIELDS>
<KEYS>
<KEY NAME="primary" TYPE="primary" FIELDS="id" NEXT="fk_component"/>
@@ -28,7 +28,7 @@
</TABLE>
<TABLE NAME="tool_customlang_components" COMMENT="Contains the list of all installed plugins that provide their own language pack" PREVIOUS="tool_customlang">
<FIELDS>
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" SEQUENCE="true" NEXT="name"/>
<FIELD NAME="id" TYPE="int" LENGTH="10" NOTNULL="true" UNSIGNED="true" SEQUENCE="true" NEXT="name"/>
<FIELD NAME="name" TYPE="char" LENGTH="255" NOTNULL="true" SEQUENCE="false" COMMENT="The normalized name of the plugin" PREVIOUS="id" NEXT="version"/>
<FIELD NAME="version" TYPE="char" LENGTH="255" NOTNULL="false" SEQUENCE="false" COMMENT="The checked out version of the plugin, null if the version is unknown" PREVIOUS="name"/>
</FIELDS>
+2
View File
@@ -29,6 +29,8 @@ function xmldb_tool_customlang_upgrade($oldversion) {
$dbman = $DB->get_manager();
// Moodle v2.2.0 release upgrade line
// Put any upgrade step following this
return true;
}
+2 -2
View File
@@ -25,6 +25,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700;
$plugin->requires = 2012061700;
$plugin->version = 2011092500;
$plugin->requires = 2011092100;
$plugin->component = 'tool_customlang'; // Full name of the plugin (used for diagnostics)
@@ -39,7 +39,7 @@ class database_transfer_form extends moodleform {
'pgsql/native',
'mssql/native',
'oci/native',
'sqlsrv/native',
'sqlite3/pdo',
);
$drivers = array();
foreach($supported as $driver) {
+2 -2
View File
@@ -25,6 +25,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_dbtransfer'; // Full name of the plugin (used for diagnostics)
+4 -4
View File
@@ -348,7 +348,7 @@ class generator {
$base_course->summary = 'Blah Blah';
$base_course->format = 'weeks';
$base_course->numsections = '10';
$base_course->startdate = time();
$base_course->startdate = mktime();
$base_course->id = '0';
$courses_count = 0;
@@ -461,7 +461,7 @@ class generator {
case 'assignment':
$module->intro = $description;
$module->assignmenttype = $this->get_module_type('assignment');
$module->timedue = time() + 89487321;
$module->timedue = mktime() + 89487321;
$module->grade = rand(50,100);
break;
case 'chat':
@@ -505,8 +505,8 @@ class generator {
break;
case 'lesson':
$module->lessondefault = 1;
$module->available = time();
$module->deadline = time() + 719891987;
$module->available = mktime();
$module->deadline = mktime() + 719891987;
$module->grade = 100;
break;
case 'quiz':
+2 -2
View File
@@ -25,8 +25,8 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_generator'; // Full name of the plugin (used for diagnostics)
$plugin->maturity = MATURITY_ALPHA; // this version's maturity level
+2 -2
View File
@@ -25,8 +25,8 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_health'; // Full name of the plugin (used for diagnostics)
$plugin->maturity = MATURITY_ALPHA; // this version's maturity level
+8 -19
View File
@@ -42,40 +42,29 @@ if ($DB->get_dbfamily() != 'mysql') {
notice('This function is for MySQL databases only!', new moodle_url('/admin/'));
}
$prefix = str_replace('_', '\\_', $DB->get_prefix()).'%';
$sql = "SHOW TABLE STATUS WHERE Name LIKE ? AND Engine <> 'InnoDB'";
$rs = $DB->get_recordset_sql($sql, array($prefix));
if (!$rs->valid()) {
$rs->close();
echo $OUTPUT->box('<p>All tables are already using InnoDB database engine.</p>');
echo $OUTPUT->continue_button('/admin/');
echo $OUTPUT->footer();
die;
}
if (data_submitted() and $confirm and confirm_sesskey()) {
echo $OUTPUT->notification('Please be patient and wait for this to complete...', 'notifysuccess');
set_time_limit(0);
foreach ($rs as $table) {
if ($tables = $DB->get_tables()) {
$DB->set_debug(true);
$fulltable = $table->name;
try {
$DB->change_database_structure("ALTER TABLE $fulltable ENGINE=INNODB");
} catch (moodle_exception $e) {
echo $OUTPUT->notification(s($e->getMessage()).'<br />'.s($e->debuginfo));
foreach ($tables as $table) {
$fulltable = $DB->get_prefix().$table;
try {
$DB->change_database_structure("ALTER TABLE $fulltable ENGINE=INNODB");
} catch (moodle_exception $e) {
echo $OUTPUT->notification(s($e->getMessage()).'<br />'.s($e->debuginfo));
}
}
$DB->set_debug(false);
}
$rs->close();
echo $OUTPUT->notification('... done.', 'notifysuccess');
echo $OUTPUT->continue_button(new moodle_url('/admin/'));
echo $OUTPUT->footer();
} else {
$rs->close();
$optionsyes = array('confirm'=>'1', 'sesskey'=>sesskey());
$formcontinue = new single_button(new moodle_url('/admin/tool/innodb/index.php', $optionsyes), get_string('yes'));
$formcancel = new single_button(new moodle_url('/admin/'), get_string('no'), 'get');
+2 -2
View File
@@ -25,6 +25,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_innodb'; // Full name of the plugin (used for diagnostics)
+2 -2
View File
@@ -287,7 +287,7 @@ $url = new moodle_url('/admin/tool/langimport/index.php', array('mode' => DELETI
echo html_writer::start_tag('td', array('valign' => 'top'));
echo html_writer::start_tag('form', array('id' => 'uninstallform', 'action' => $url->out(), 'method' => 'post'));
echo html_writer::start_tag('fieldset');
echo html_writer::label(get_string('installedlangs', 'tool_langimport'), 'uninstalllang');
echo html_writer::label(get_string('installedlangs', 'tool_langimport'), 'menuuninstalllang');
echo html_writer::empty_tag('br');
echo html_writer::select($installedlangs, 'uninstalllang', '', false, array('size' => 15));
echo html_writer::empty_tag('input', array('type' => 'hidden', 'name' => 'sesskey', 'value' => sesskey()));
@@ -315,7 +315,7 @@ if (!empty($options)) {
$url = new moodle_url('/admin/tool/langimport/index.php', array('mode' => INSTALLATION_OF_SELECTED_LANG));
echo html_writer::start_tag('form', array('id' => 'installform', 'action' => $url->out(), 'method' => 'post'));
echo html_writer::start_tag('fieldset');
echo html_writer::label(get_string('availablelangs','install'), 'pack');
echo html_writer::label(get_string('availablelangs','install'), 'menupack');
echo html_writer::empty_tag('br');
echo html_writer::select($options, 'pack[]', '', false, array('size' => 15, 'multiple' => 'multiple'));
echo html_writer::empty_tag('input', array('type' => 'hidden', 'name' => 'sesskey', 'value' => sesskey()));
+2 -2
View File
@@ -25,6 +25,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_langimport'; // Full name of the plugin (used for diagnostics)
+2 -2
View File
@@ -25,7 +25,7 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_multilangupgrade'; // Full name of the plugin (used for diagnostics)
-66
View File
@@ -1,66 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* All in one init script - PHP version.
*
* @package tool_phpunit
* @copyright 2012 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
if (isset($_SERVER['REMOTE_ADDR'])) {
die; // no access from web!
}
require_once(__DIR__.'/../../../../lib/clilib.php');
require_once(__DIR__.'/../../../../lib/phpunit/bootstraplib.php');
echo "Initialising Moodle PHPUnit test environment...\n";
$output = null;
exec('php --version', $output, $code);
if ($code != 0) {
phpunit_bootstrap_error(1, 'Can not execute \'php\' binary.');
}
chdir(__DIR__);
$output = null;
exec("php util.php --diag", $output, $code);
if ($code == 0) {
// everything is ready
} else if ($code == PHPUNIT_EXITCODE_INSTALL) {
passthru("php util.php --install", $code);
if ($code != 0) {
exit($code);
}
} else if ($code == PHPUNIT_EXITCODE_REINSTALL) {
passthru("php util.php --drop", $code);
passthru("php util.php --install", $code);
if ($code != 0) {
exit($code);
}
} else {
echo implode("\n", $output)."\n";
exit($code);
}
passthru("php util.php --buildconfig", $code);
exit(0);
-160
View File
@@ -1,160 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* PHPUnit related utilities.
*
* Exit codes: {@see phpunit_bootstrap_error()}
*
* @package tool_phpunit
* @copyright 2012 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
if (isset($_SERVER['REMOTE_ADDR'])) {
die; // no access from web!
}
require_once(__DIR__.'/../../../../lib/clilib.php');
require_once(__DIR__.'/../../../../lib/phpunit/bootstraplib.php');
// now get cli options
list($options, $unrecognized) = cli_get_params(
array(
'drop' => false,
'install' => false,
'buildconfig' => false,
'buildcomponentconfigs' => false,
'diag' => false,
'phpunitdir' => false,
'run' => false,
'help' => false,
),
array(
'h' => 'help'
)
);
if ($options['phpunitdir']) {
// nasty skodak's hack for testing of future PHPUnit versions - intentionally not documented
if (!file_exists($options['phpunitdir'])) {
cli_error('Invalid custom PHPUnit lib location');
}
$files = scandir($options['phpunitdir']);
foreach ($files as $file) {
$path = $options['phpunitdir'].'/'.$file;
if (!is_dir($path) or strpos($file, '.') === 0) {
continue;
}
ini_set('include_path', $path . PATH_SEPARATOR . ini_get('include_path'));
}
unset($files);
unset($file);
}
// verify PHPUnit libs are loaded
if (!include_once('PHPUnit/Autoload.php')) {
phpunit_bootstrap_error(PHPUNIT_EXITCODE_PHPUNITMISSING);
}
if ($options['run']) {
unset($options);
unset($unrecognized);
foreach ($_SERVER['argv'] as $k=>$v) {
if (strpos($v, '--run') === 0 or strpos($v, '--phpunitdir') === 0) {
unset($_SERVER['argv'][$k]);
$_SERVER['argc'] = $_SERVER['argc'] - 1;
}
}
$_SERVER['argv'] = array_values($_SERVER['argv']);
PHPUnit_TextUI_Command::main();
exit(0);
}
define('PHPUNIT_UTIL', true);
require(__DIR__ . '/../../../../lib/phpunit/bootstrap.php');
// from now on this is a regular moodle CLI_SCRIPT
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/upgradelib.php');
require_once($CFG->libdir.'/clilib.php');
require_once($CFG->libdir.'/pluginlib.php');
require_once($CFG->libdir.'/installlib.php');
if ($unrecognized) {
$unrecognized = implode("\n ", $unrecognized);
cli_error(get_string('cliunknowoption', 'admin', $unrecognized));
}
$diag = $options['diag'];
$drop = $options['drop'];
$install = $options['install'];
$buildconfig = $options['buildconfig'];
$buildcomponentconfigs = $options['buildcomponentconfigs'];
if ($options['help'] or (!$drop and !$install and !$buildconfig and !$buildcomponentconfigs and !$diag)) {
$help = "Various PHPUnit utility functions
Options:
--drop Drop database and dataroot
--install Install database
--diag Diagnose installation and return error code only
--run Execute PHPUnit tests (alternative for standard phpunit binary)
--buildconfig Build /phpunit.xml from /phpunit.xml.dist that runs all tests
--buildcomponentconfigs
Build distributed phpunit.xml files for each component
-h, --help Print out this help
Example:
\$/usr/bin/php lib/phpunit/tool.php --install
";
echo $help;
exit(0);
}
if ($diag) {
list($errorcode, $message) = phpunit_util::testing_ready_problem();
if ($errorcode) {
phpunit_bootstrap_error($errorcode, $message);
}
exit(0);
} else if ($buildconfig) {
if (phpunit_util::build_config_file()) {
exit(0);
} else {
phpunit_bootstrap_error(PHPUNIT_EXITCODE_CONFIGWARNING, 'Can not create main /phpunit.xml configuration file, verify dirroot permissions');
}
} else if ($buildcomponentconfigs) {
phpunit_util::build_component_config_files();
exit(0);
} else if ($drop) {
// make sure tests do not run in parallel
phpunit_util::acquire_test_lock();
phpunit_util::drop_site();
// note: we must stop here because $CFG is messed up and we can not reinstall, sorry
exit(0);
} else if ($install) {
phpunit_util::install_site();
exit(0);
}
-38
View File
@@ -1,38 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* PHPUnit info
*
* @package tool_phpunit
* @copyright 2012 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require(dirname(__FILE__) . '/../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
admin_externalpage_setup('toolphpunit');
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('pluginname', 'tool_phpunit'));
echo $OUTPUT->box_start();
$info = file_get_contents("$CFG->libdir/phpunit/readme.md");
echo markdown_to_html($info);
echo $OUTPUT->box_end();
echo $OUTPUT->footer();
@@ -1,25 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Strings for component 'tool_phpunit'
*
* @package tool_phpunit
* @copyright 2012 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['pluginname'] = 'PHPUnit tests';
-32
View File
@@ -1,32 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* PHPunit integration
*
* @package tool_phpunit
* @copyright 2012 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die;
if ($hassiteconfig) {
$ADMIN->add('development', new admin_externalpage('toolphpunit', get_string('pluginname', 'tool_phpunit'), "$CFG->wwwroot/$CFG->admin/tool/phpunit/index.php"));
$ADMIN->add('development', new admin_externalpage('toolphpunitwebrunner', get_string('pluginname', 'tool_phpunit'), "$CFG->wwwroot/$CFG->admin/tool/phpunit/webrunner.php",
'moodle/site:config', true));
}
-30
View File
@@ -1,30 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Plugin version info
*
* @package tool_phpunit
* @copyright 2012 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->component = 'tool_phpunit'; // Full name of the plugin (used for diagnostics)
-192
View File
@@ -1,192 +0,0 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* PHPUnit shell execution wrapper
*
* @package tool_phpunit
* @copyright 2012 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('NO_OUTPUT_BUFFERING', true);
require(dirname(__FILE__) . '/../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
$testpath = optional_param('testpath', '', PARAM_PATH);
$testclass = optional_param('testclass', '', PARAM_ALPHANUMEXT);
$execute = optional_param('execute', 0, PARAM_BOOL);
navigation_node::override_active_url(new moodle_url('/admin/tool/phpunit/index.php'));
admin_externalpage_setup('toolphpunitwebrunner');
if (!debugging('', DEBUG_DEVELOPER)) {
error('Not available on production sites, sorry.');
}
set_time_limit(60*30);
$oldcwd = getcwd();
$code = 0;
if (!isset($CFG->phpunit_dataroot) or !isset($CFG->phpunit_prefix)) {
tool_phpunit_problem('Missing $CFG->phpunit_dataroot or $CFG->phpunit_prefix, can not execute tests.');
}
if (!file_exists($CFG->phpunit_dataroot)) {
mkdir($CFG->phpunit_dataroot, 02777, true);
}
if (!is_writable($CFG->phpunit_dataroot)) {
tool_phpunit_problem('$CFG->phpunit_dataroot in not writable, can not execute tests.');
}
$output = null;
exec('php --version', $output, $code);
if ($code != 0) {
tool_phpunit_problem('Can not execute \'php\' binary.');
}
if ($execute) {
require_sesskey();
chdir($CFG->dirroot);
$output = null;
exec("php $CFG->admin/tool/phpunit/cli/util.php --diag", $output, $code);
if ($code == 0) {
// everything is ready
} else if ($code == PHPUNIT_EXITCODE_INSTALL) {
tool_phpunit_header();
echo $OUTPUT->box_start('generalbox');
echo '<pre>';
echo "Initialising test database:\n\n";
chdir($CFG->dirroot);
ignore_user_abort(true);
passthru("php $CFG->admin/tool/phpunit/cli/util.php --buildconfig", $code);
passthru("php $CFG->admin/tool/phpunit/cli/util.php --install", $code);
chdir($oldcwd);
echo '</pre>';
echo $OUTPUT->box_end();
if ($code != 0) {
tool_phpunit_problem('Can not initialize database');
}
$CFG->debug = 0; // no pesky redirect warning, we really want to redirect
redirect(new moodle_url($PAGE->url, array('execute'=>1, 'tespath'=>$testpath, 'testclass'=>$testclass, 'sesskey'=>sesskey())), 'Reloading page');
echo $OUTPUT->footer();
die();
} else if ($code == PHPUNIT_EXITCODE_REINSTALL) {
tool_phpunit_header();
echo $OUTPUT->box_start('generalbox');
echo '<pre>';
echo "Reinitialising test database:\n\n";
chdir($CFG->dirroot);
ignore_user_abort(true);
passthru("php $CFG->admin/tool/phpunit/cli/util.php --drop", $code);
passthru("php $CFG->admin/tool/phpunit/cli/util.php --buildconfig", $code);
passthru("php $CFG->admin/tool/phpunit/cli/util.php --install", $code);
chdir($oldcwd);
echo '</pre>';
echo $OUTPUT->box_end();
if ($code != 0) {
tool_phpunit_problem('Can not initialize database');
}
$CFG->debug = 0; // no pesky redirect warning, we really want to redirect
redirect(new moodle_url($PAGE->url, array('execute'=>1, 'tespath'=>$testpath, 'testclass'=>$testclass, 'sesskey'=>sesskey())), 'Reloading page');
die();
} else {
tool_phpunit_header();
echo $OUTPUT->box_start('generalbox');
echo '<pre>';
echo "Error: $code\n\n";
echo implode("\n", $output);
echo '</pre>';
echo $OUTPUT->box_end();
tool_phpunit_problem('Can not execute tests');
die();
}
tool_phpunit_header();
echo $OUTPUT->box_start('generalbox');
echo '<pre>';
// use the dataroot file
$configdir = "$CFG->phpunit_dataroot/phpunit/webrunner.xml";
if (!file_exists($configdir)) {
passthru("php $CFG->admin/tool/phpunit/cli/util.php --buildconfig", $code);
if ($code != 0) {
tool_phpunit_problem('Can not create configuration file');
}
}
$configdir = escapeshellarg($configdir);
// no cleanup of path - this is tricky because we can not use escapeshellarg and friends for escaping,
// this is from admin user so PARAM_PATH must be enough
chdir($CFG->dirroot);
passthru("php $CFG->admin/tool/phpunit/cli/util.php --run -c $configdir $testclass $testpath", $code);
chdir($oldcwd);
echo '</pre>';
echo $OUTPUT->box_end();
} else {
tool_phpunit_header();
}
echo $OUTPUT->box_start('generalbox boxwidthwide boxaligncenter');
echo '<form method="get" action="webrunner.php">';
echo '<fieldset class="invisiblefieldset">';
echo '<label for="testpath">Test one file</label> ';
echo '<input type="text" id="testpath" name="testpath" value="'.s($testpath).'" size="50" /> (all test cases from webrunner.xml if empty)';
echo '</p>';
echo '<label for="testclass">Class name</label> ';
echo '<input type="text" id="testclass" name="testclass" value="'.s($testclass).'" size="50" /> (first class in file if empty)';
echo '</p>';
echo '<input type="submit" value="Run" />';
echo '<input type="hidden" name="execute" value="1" />';
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />';
echo '</fieldset>';
echo '</form>';
echo $OUTPUT->box_end();
echo $OUTPUT->footer();
die;
//========================================
/**
* Print headers and experimental warning
* @return void
*/
function tool_phpunit_header() {
global $OUTPUT;
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('pluginname', 'tool_phpunit'));
echo $OUTPUT->box('EXPERIMENTAL: it is recommended to execute PHPUnit tests and init scripts only from command line.', array('generalbox'));
}
/**
* Called when PHPUnit can not execute.
* @param string $message
* @return void
*/
function tool_phpunit_problem($message) {
global $PAGE;
if (!$PAGE->headerprinted) {
tool_phpunit_header();
}
notice($message, new moodle_url('/admin/tool/phpunit/'));
}
+1 -1
View File
@@ -142,7 +142,7 @@ if (isset($script)) {
// The flexitable that will root listings
$table = new xhprof_table_sql('profiling-list-table');
$baseurl = $CFG->wwwroot . '/admin/tool/profiling/index.php';
$baseurl = $CFG->wwwroot . '/'.$CFG->admin.'/tool/profiling/index.php';
// Check if we are listing all or some URL ones
$sqlconditions = '';
+2 -2
View File
@@ -25,6 +25,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_profiling'; // Full name of the plugin (used for diagnostics)
@@ -28,4 +28,11 @@ defined('MOODLE_INTERNAL') || die;
function xmldb_tool_qeupgradehelper_install() {
global $CFG;
// this is a hack - this plugin used to live in local/qeupgradehelper,
// we want to remove the orphaned version info and capability
// unless there is a local plugin type with the same name
if (!file_exists("$CFG->dirroot/local/qeupgradehelper")) {
unset_all_config_for_plugin('local_qeupgradehelper');
}
}
+2 -2
View File
@@ -25,6 +25,6 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700;
$plugin->requires = 2012061700;
$plugin->version = 2011092500;
$plugin->requires = 2011092100;
$plugin->component = 'tool_qeupgradehelper'; // Full name of the plugin (used for diagnostics)
+2 -2
View File
@@ -25,8 +25,8 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2012061700; // Requires this Moodle version
$plugin->version = 2011092500; // The current plugin version (Date: YYYYMMDDXX)
$plugin->requires = 2011092100; // Requires this Moodle version
$plugin->component = 'tool_replace'; // Full name of the plugin (used for diagnostics)
$plugin->maturity = MATURITY_ALPHA; // this version's maturity level
+1
View File
@@ -96,6 +96,7 @@ echo $OUTPUT->box_start(); // The forms section at the top
<form method="post" action="index.php">
<div>
<label class="accesshide" for="keyword_el"><?php print_string('spamkeyword', 'tool_spamcleaner') ?></label>
<input type="text" name="keyword" id="keyword_el" value="<?php p($keyword) ?>" />
<input type="hidden" name="sesskey" value="<?php echo sesskey();?>" />
<input type="submit" value="<?php echo get_string('spamsearch', 'tool_spamcleaner')?>" />
@@ -38,6 +38,7 @@ $string['spamfromcomments'] = 'From comments:';
$string['spamfrommessages'] = 'From messages:';
$string['spamfromforumpost'] = 'From forum post:';
$string['spaminvalidresult'] = 'Unknown but invalid result';
$string['spamkeyword'] = 'Keyword';
$string['spamoperation'] = 'Operation';
$string['spamresult'] = 'Results of searching user profiles containing:';
$string['spamsearch'] = 'Search for these keywords';
+2 -2
View File
@@ -25,7 +25,7 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700;
$plugin->requires = 2012061700;
$plugin->version = 2011092500;
$plugin->requires = 2011092100;
$plugin->component = 'tool_spamcleaner'; // Full name of the plugin (used for diagnostics)
+2 -2
View File
@@ -25,7 +25,7 @@
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2012061700;
$plugin->requires = 2012061700;
$plugin->version = 2011092500;
$plugin->requires = 2011092100;
$plugin->component = 'tool_timezoneimport'; // Full name of the plugin (used for diagnostics)
+3 -2
View File
@@ -60,8 +60,9 @@ if (!isset($args[0]) || !in_array($args[0], $alloweddirs)) {
print_error('invalidarguments');
}
// only serve some controlled extensions/mimetypes
if (!file_extension_in_typegroup($filepath, array('web_file', 'web_image'), true)) {
// only serve some controlled extensions
$allowedextensions = array('text/html', 'text/css', 'image/gif', 'application/x-javascript');
if (!in_array(mimeinfo('type', $filepath), $allowedextensions)) {
print_error('invalidarguments');
}
+2 -3
View File
@@ -17,13 +17,12 @@
/**
* Unitest caps.
*
* @package tool_unittest
* @package tool
* @subpackage unittest
* @copyright 1999 onwards Martin Dougiamas {@link http://moodle.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$capabilities = array(
// Note: do not add managers here, unittests are dangerous and not intended for production sites!!!
+8
View File
@@ -28,4 +28,12 @@ defined('MOODLE_INTERNAL') || die;
function xmldb_tool_unittest_install() {
global $CFG;
// this is a hack - this plugin used to live in admin/report/unittest,
// we want to remove the orphaned version info and capability
// unless there is a new report type with the same name
if (!file_exists("$CFG->dirroot/report/unittest")) {
unset_all_config_for_plugin('report_unittest');
capabilities_cleanup('report_unittest');
}
}
+168
View File
@@ -0,0 +1,168 @@
<?php
// This file is part of Moodle - http://moodle.org/
//
// Moodle is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// Moodle is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
/**
* Run database functional tests.
*
* @package tool
* @subpackage unittest
* @copyright 2008 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
define('NO_OUTPUT_BUFFERING', true);
require(dirname(__FILE__) . '/../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once('simpletestlib.php');
require_once('simpletestcoveragelib.php');
require_once('ex_simple_test.php');
require_once('ex_reporter.php');
$showpasses = optional_param('showpasses', false, PARAM_BOOL);
$codecoverage = optional_param('codecoverage', false, PARAM_BOOL);
$selected = optional_param_array('selected', array(), PARAM_INT);
// Print the header and check access.
admin_externalpage_setup('tooldbtest');
echo $OUTPUT->header();
global $UNITTEST;
$UNITTEST = new stdClass();
if (!data_submitted()) {
$selected = array();
for ($i=0; $i<=10; $i++) {
$selected[$i] = 1;
}
}
$dbinfos = array();
$tests = array();
$dbinfos[0] = array('name'=>"Current database ($CFG->dblibrary/$CFG->dbtype)", 'installed'=>true, 'configured'=>true); // TODO: localise
if (data_submitted() and !empty($selected[0])) {
$tests[0] = $DB;
}
for ($i=1; $i<=10; $i++) {
$name = 'func_test_db_'.$i;
if (!isset($CFG->$name)) {
continue;
}
list($library, $driver, $dbhost, $dbuser, $dbpass, $dbname, $prefix, $dboptions) = $CFG->$name;
$dbinfos[$i] = array('name'=>"External database $i ($library/$driver/$dbhost/$dbname/$prefix)", 'installed'=>false, 'configured'=>false);
$classname = "{$driver}_{$library}_moodle_database";
require_once("$CFG->libdir/dml/$classname.php");
$d = new $classname();
if (!$d->driver_installed()) {
continue;
}
$dbinfos[$i]['installed'] = true;
try {
$d->connect($dbhost, $dbuser, $dbpass, $dbname, $prefix, $dboptions);
$dbinfos[$i]['configured'] = true;
if (data_submitted() and !empty($selected[$i])) {
$tests[$i] = $d;
} else {
$d->dispose();
}
} catch (dml_connection_exception $e) {
$dbinfos[$i]['configured'] = false;
}
}
if (!empty($tests)) {
$covreporter = new moodle_coverage_reporter('Functional DB Tests Code Coverage Report', 'dbtest');
$covrecorder = new moodle_coverage_recorder($covreporter);
foreach ($tests as $i=>$database) {
$dbinfo = $dbinfos[$i];
$UNITTEST->func_test_db = $database; // pass the db to the tests through global
echo $OUTPUT->heading('Running tests on: '.$dbinfo['name'], 3); // TODO: localise
// Create the group of tests.
$test = new autogroup_test_coverage(false, true, $codecoverage);
$test->addTestFile($CFG->libdir.'/dml/simpletest/testdml.php');
$test->addTestFile($CFG->libdir.'/ddl/simpletest/testddl.php');
// Make the reporter, which is what displays the results.
$reporter = new ExHtmlReporter($showpasses);
set_time_limit(300); // 5 mins per DB should be enough
$test->run_with_external_coverage($reporter, $covrecorder);
unset($UNITTEST->func_test_db);
echo '<hr />';
}
if ($codecoverage) {
$covrecorder->generate_report();
moodle_coverage_reporter::print_summary_info('dbtest');
}
}
// Print the form for adjusting options.
echo $OUTPUT->box_start('generalbox boxwidthwide boxaligncenter');
echo '<form method="post" action="dbtest.php">';
echo '<div>';
echo $OUTPUT->heading("Run functional database tests"); // TODO: localise
echo '<p>'.html_writer::checkbox('showpasses', 1, $showpasses, get_string('showpasses', 'tool_unittest')).'</p>';
if (moodle_coverage_recorder::can_run_codecoverage()) {
echo '<p>'.html_writer::checkbox('codecoverage', 1, $codecoverage, get_string('codecoverageanalysis', 'tool_unittest')).'</p>';
} else {
echo '<p>'; print_string('codecoveragedisabled', 'tool_unittest'); echo '<input type="hidden" name="codecoverage" value="0" /></p>';
}
echo '<p><strong>'."Databases:".'</strong></p>';
echo '<ul>';
foreach ($dbinfos as $i=>$dbinfo) {
$name = $dbinfo['name'];
if ($dbinfo['installed']) {
if (!$dbinfo['configured']) {
$name = "$name (misconfigured)"; // TODO: localise
}
echo '<li>'.html_writer::checkbox('selected['.$i.']', 1, intval(!empty($selected[$i])), $name).'</li>';
} else {
echo '<li>'."$name: driver not installed".'</li>'; // TODO: localise
}
}
echo '</ul>';
echo '<p>External databases are configured in config.php, add lines:</p>
<pre>
$CFG->func_test_db_1 = array("native", "pgsql", "localhost", "moodleuser", "password", "moodle", "test", null);
$CFG->func_test_db_2 = array("native", "mssql", "localhost", "moodleuser", "password", "moodle", "test", null);
</pre>
<p>where order of parameters is: dblibrary, dbtype, dbhost, dbuser, dbpass, dbname, prefix, dboptions</p>';
echo '<p><input type="submit" value="' . get_string('runtests', 'tool_unittest') . '" /></p>';
echo '</div>';
echo '</form>';
echo $OUTPUT->box_end();
// Print link to latest code coverage for this report type
if (!data_submitted() || !$codecoverage) {
moodle_coverage_reporter::print_link_to_latest('dbtest');
}
// Footer.
echo $OUTPUT->footer();

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