Compare commits

...

3868 Commits

Author SHA1 Message Date
Eloy Lafuente (stronk7) 01f7f6f9aa Moodle release 2.2 2011-12-05 12:09:08 +01:00
Eloy Lafuente (stronk7) 3fdc4d0414 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-12-05 11:55:06 +01:00
Eloy Lafuente (stronk7) da78edea18 Merge branch 'MDL-30340-sticky-blocks_simplify_frontpage_ui' of git://github.com/stronk7/moodle 2011-12-05 10:57:53 +01:00
Eloy Lafuente (stronk7) 0e92570cca Merge branch 'MDL-30340.sticky_category_blocks' of git://github.com/stronk7/moodle 2011-12-05 10:55:06 +01:00
Martin Dougiamas 192a3380f1 MDL-30340 blocks - fix/restrict frontpage dark magic application
It seems that there are some overlapping constants in the blocks
subsystem that were causing some code, initially planned only
to frontpage, to be executed in other contexts. This commit moves
the bui_editingatfrontpage condition as root condition.
2011-12-05 10:28:54 +01:00
AMOS bot 140fd1e23c Automatically generated installer lang files 2011-12-05 00:30:55 +00:00
Eloy Lafuente (stronk7) 49ae1fdcea MDL-30340 blocks - incorrect option in user profile template and missing lang string in my template 2011-12-05 01:14:19 +01:00
Eloy Lafuente (stronk7) d4e71a4eed MDL-30340 blocks - hide some redundant pagetypepattern options at front page
The dual front-page/system-wide form to edit blocks can
be reduced asuming that, always:

A) system sets the context to system,
   recursively and with page-type set to "*"
B) frontpage only sets the context to site-course,
   non-recursively and with page-type set to "site-index"
C) frontpage all added sets the context to site-course,
   recursively and with paget-type set to "*"

And that is the change that this patch provides, by:

1) detecting properly if we are editing blocks @ protpage
2) passing that information to the form data processor
3) setting parentcontextid, showinsubcontexts and
   pagetypepattern following the A, B, C immutables above.

Finally, and affecting some other system-wide pages, there
are cases (my, user templates...) having only one possible
pagetypepattern, and it looks badly if the page has subpages, so
for those system-wide cases we are showing exceptionaly the
pagetypepattern statically. This will be revisited once MDL-30574
is decided and implemented, although perhaps it's ok to leave it
as default to places with only one pagetypepattern available.
2011-12-05 01:09:02 +01:00
David Mudrak 9d2c424d83 MDL-30340 Block stickiness computation improvements
This is an attempt to clean up and fix the computation of the block
stickiness. At first, the page pattern can't be ignored because the user
may want to currently try to limit the page pattern. Second, the
site-index pattern can be forced only if the user selected 'Front page
only' as the page context.
2011-12-03 16:57:21 +01:00
David Mudrak e3cdf40ff5 MDL-30340 Always generate pagetype patterns in the block settings form
This is an alternative solution to MDL-27812. If the current block
instance has page type set to site-index, we need to provide a way how
that page type pattern can be reset back to other value.
2011-12-03 16:57:21 +01:00
David Mudrak 7c600d46aa MDL-30340 Trivial change in PHP doc block - the function does not accept any params 2011-12-03 16:57:21 +01:00
Eloy Lafuente (stronk7) 458fdc5280 MDL-30340 blocks - add back 'any page' support to course cats
Added the * option that is not affected by the 'varying-pagetype'
problem that has been detected and issued @ MDL-30564. So now, it's
(back) possible to define coursecat blocks to be spread over children
coursecats/courses/modules (contexts).
2011-12-03 15:52:24 +01:00
Eloy Lafuente (stronk7) bf69e333fe Merge branch 'w49_MDL-30538_m22_versions' of git://github.com/skodak/moodle 2011-12-03 12:30:49 +01:00
Eloy Lafuente (stronk7) b2221ee59c MDL-30340 blocks - avoid lockin'blocks in subcontexts.
Everytime that one block instance is edited @ any subcontext,
guarantee that the 'bring back' pattern (* = all pages) is
available, so the block can be reseted to its original context
2011-12-03 11:21:48 +01:00
Petr Skoda cd2f3c17f9 MDL-30538 add missing course format versions and fix email filter file name typo 2011-12-03 08:40:53 +01:00
AMOS bot 53581c7689 Automatically generated installer lang files 2011-12-02 00:30:48 +00:00
Sam Hemelryk 50d15ca47f MDL-30543 navigation: Added missing course variable for user context 2011-12-02 12:31:12 +13:00
Eloy Lafuente (stronk7) d0e016f53f Moodle release 2.2rc1 2011-12-01 12:12:21 +01:00
Eloy Lafuente (stronk7) 6451a6b15c Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-12-01 12:04:08 +01:00
Eloy Lafuente (stronk7) 773d1ec56b Merge branch 'MDL-30544_disable_notifications' of git://github.com/andyjdavis/moodle 2011-12-01 10:38:40 +01:00
Andrew Davis f6ce2eb25a MDL-30544 message: prevented the temporarily disable notifications checkbox from erasing your messaging preferences 2011-12-01 16:54:48 +08:00
Jerome Mouneyrac 3b40f3b1a7 MDL-30496 fix upload max size issue when server limit is set + return some kind of json error object for filenameexists and oversizedfile errors 2011-12-01 15:13:52 +08:00
Sam Hemelryk 6416c6c25b Merge branch 'MDL-30007' of git://github.com/stronk7/moodle 2011-12-01 17:14:52 +13:00
Aparup Banerjee 0f4c6067e5 MDL-30386 blog : saved a function call 2011-12-01 12:03:31 +08:00
Aparup Banerjee 9be14d29e4 Merge branch 'wip-MDL-30386-master' of git://github.com/phalacee/moodle 2011-12-01 11:54:25 +08:00
Aparup Banerjee 0fa557d5fd Merge branch 'MDL-30260_disable_messages' of git://github.com/andyjdavis/moodle 2011-12-01 11:24:47 +08:00
Jerome Mouneyrac 264764e222 MDL-30459 when one filename already exist we bypass the execution and continue. We just return the error into the json string 2011-12-01 15:56:15 +13:00
Sam Hemelryk 7bebeb2a29 Merge branch 'wip-mdl-30421' of git://github.com/rajeshtaneja/moodle 2011-12-01 15:48:20 +13:00
Sam Hemelryk bba1338a60 Merged branch 'MDL-30459' of git://github.com/mouneyrac/moodle.git with whitespace fixes 2011-12-01 14:43:39 +13:00
Sam Hemelryk eb7ee15659 MDL-30376 mod_glossary: Integration tidy up 2011-12-01 14:17:10 +13:00
Sam Hemelryk 63a0768888 Merge branch 'wip-MDL-30376-master' of git://github.com/phalacee/moodle 2011-12-01 14:16:19 +13:00
Jason Fowler c000545dee MDL-30386 - Blog - Adding RSS Feed link to the User blogs 2011-12-01 09:07:21 +08:00
Sam Hemelryk c3f185949f Merge branch 'MDL-30526' of git://git.luns.net.uk/moodle 2011-12-01 12:44:09 +13:00
Eloy Lafuente (stronk7) 59e6df2883 MDL-30007 standardise assignment subplugin lang files 2011-12-01 00:42:25 +01:00
Sam Hemelryk e8c3f32f83 Merge branch 'MDL-29730' of git://github.com/rwijaya/moodle 2011-12-01 12:29:19 +13:00
Sam Hemelryk c9c7b8fb0b Merge branch 'MDL-30453-exassessment-link' of git://github.com/mudrd8mz/moodle 2011-12-01 12:15:29 +13:00
Eloy Lafuente (stronk7) 9ecbb6e494 MDL-30007 standardise mnet service version files 2011-12-01 00:14:42 +01:00
Sam Hemelryk fa6765cf9c Merge branch 'MDL-30271-switch-role-workshop' of git://github.com/mudrd8mz/moodle 2011-12-01 11:48:55 +13:00
Ruslan Kabalin 65c7713115 MDL-30526 Choice: add form validation rule for numeric field 2011-11-30 17:17:12 +00:00
Aparup Banerjee 15cca3e470 Merge branch 'MDL-30494_tokenize_test' of git://github.com/andyjdavis/moodle 2011-11-30 17:47:18 +08:00
Aparup Banerjee e95a0cefda Merge branch 'w49_MDL-30517_m22_blockdelete' of git://github.com/skodak/moodle 2011-11-30 17:39:23 +08:00
Petr Skoda 8620bfee90 MDL-30517 use alternative block delete to prevent upgrade problems 2011-11-30 08:50:28 +01:00
Aparup Banerjee e8012802db MDL-30202 forum : whitespace cleanup 2011-11-30 15:44:16 +08:00
Aparup Banerjee 20ab954b3c Merge branch 'MDL-30202' of git://github.com/rwijaya/moodle 2011-11-30 15:36:14 +08:00
Aparup Banerjee 4202a9173f MDL-27334 : summarised comment about problem.
we have git for history.
2011-11-30 15:16:08 +08:00
Jerome Mouneyrac f25aee3251 MDL-30459 better error message when file already exist 2011-11-30 15:15:59 +08:00
Aparup Banerjee d423462e1c Merge branch 'wip-MDL-27334-master' of git://github.com/abgreeve/moodle 2011-11-30 15:01:25 +08:00
Jason Fowler 1a9528e010 MDL-30376 - Glossary - Fixing ability to see the RSS feed for a glossary 2011-11-30 14:43:08 +08:00
Aparup Banerjee b50ac85799 MDL-29469 Enrolments : fixed whitespaces 2011-11-30 14:42:04 +08:00
Rajesh Taneja 35b81f27ca MDL-30421 forum: resolved error in single discussion forum, if more then one record is present 2011-11-30 14:38:23 +08:00
Aparup Banerjee 96b3002aae Merge branch 'wip-MDL-29469-master' of git://github.com/phalacee/moodle 2011-11-30 14:37:59 +08:00
Aparup Banerjee 2069c52e20 Merge branch 'MDL-30395' of git://github.com/mouneyrac/moodle 2011-11-30 14:04:14 +08:00
Rossiani Wijaya 52eebcc8df MDL-30202 forum rss: move check to the end of if statement to prevent unnecessary db process if rss is disable 2011-11-30 14:00:33 +08:00
Andrew Davis 39ee0ced4a MDL-30494 grade: provided a failure string to gives people experiencing UTF character test failures a starting point for fixing the problem 2011-11-30 11:49:39 +08:00
Andrew Davis 58800b7c36 MDL-30494 grade: improved unit tests for tokenize() 2011-11-30 11:39:25 +08:00
Rossiani Wijaya 1bb422319f MDL-29730 Lesson mod: fixed check_answer() for shortanswser with regular expression option enable 2011-11-30 11:30:09 +08:00
Eloy Lafuente (stronk7) f2fecd0d7c MDL-30007 standardise data preset subplugin version and lang files 2011-11-30 03:46:17 +01:00
Eloy Lafuente (stronk7) f8b02913ad MDL-30007 standardise data field subplugin lang files 2011-11-30 03:46:08 +01:00
Jerome Mouneyrac 4d693fc44c MDL-30395 display the folder name if the block/module of a backup file is not installed in the site 2011-11-30 10:33:21 +08:00
Andrew Davis d8aa5ec7a0 MDL-30260 message: added /message/upgrade.txt, checked calls to message_send() are supplying user.emailstop and improved message_send() to handle message requests that don't 2011-11-30 10:02:45 +08:00
Eloy Lafuente (stronk7) 9b7e2cbb2e MDL-30007 standardise data field subplugin version files 2011-11-30 02:59:39 +01:00
Eloy Lafuente (stronk7) 7927af450c MDL-30007 standardise user profile field version files 2011-11-30 02:45:21 +01:00
AMOS bot 67124a020f Automatically generated installer lang files 2011-11-30 00:31:01 +00:00
Sam Hemelryk 0a9b7c2b6d Merge branch 'MDL-30440-master' of git://github.com/ankitagarwal/moodle 2011-11-30 13:04:37 +13:00
Sam Hemelryk 4117b4fcd8 Merge branch 'MDL-30322' of git://github.com/timhunt/moodle 2011-11-30 13:02:15 +13:00
Sam Hemelryk b64a3e1ac1 MDL-30485 whitespace fix 2011-11-30 11:55:55 +13:00
Sam Hemelryk 0c0d501144 Merge commit 'FETCH_HEAd' 2011-11-30 11:49:40 +13:00
Sam Hemelryk 3ddbd75acc Merged branch 'MDL-30505' of git://github.com/lazydaisy/moodle.git with conflict resolution 2011-11-30 11:05:46 +13:00
Petr Skoda 4041478751 MDL-30007 standardise workshop subplugin version files 2011-11-29 22:29:14 +01:00
Petr Skoda fd20817aa9 MDL-30007 standardise text editor version files 2011-11-29 22:21:34 +01:00
Petr Skoda 11106669a1 MDL-30007 standardise quiz report version files 2011-11-29 22:19:05 +01:00
Petr Skoda 37c48acb45 MDL-30007 standardise assignment plugin version files 2011-11-29 22:15:28 +01:00
Petr Skoda b5c04aa153 MDL-30007 standardise webservice version files 2011-11-29 22:12:15 +01:00
Petr Skoda 0790df351f MDL-30007 standardise repository version files 2011-11-29 22:06:27 +01:00
Petr Skoda 466bc44fb5 MDL-30007 standardise portfolio version files 2011-11-29 21:54:11 +01:00
Petr Skoda 633d5a07af MDL-30007 standardise module version files 2011-11-29 21:38:14 +01:00
Petr Skoda 5563272125 MDL-30007 standardise messaging plugin version files 2011-11-29 21:23:18 +01:00
Petr Skoda 25a333877c MDL-30007 standardise gradebook plugins version files 2011-11-29 21:20:13 +01:00
Petr Skoda 9c89c04af5 MDL-30007 standardise filter version files 2011-11-29 21:15:42 +01:00
Petr Skoda 9dbf768ede MDL-30007 standardise enrol plugins version info 2011-11-29 21:09:42 +01:00
Petr Skoda 7f6e07a3eb MDL-30007 standardise admin tool version info 2011-11-29 21:02:13 +01:00
Petr Skoda d68b3dbe72 MDL-30007 standard version file for all blocks 2011-11-29 20:57:30 +01:00
Petr Skoda be974aa7f9 MDL-30007 add/fix version files for all auth plugins 2011-11-29 20:41:21 +01:00
Eloy Lafuente (stronk7) a5b5881d46 on-demand release 2.2beta+ 2011-11-29 20:09:37 +01:00
Eloy Lafuente (stronk7) 5ac8e50b89 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-11-29 20:07:36 +01:00
Eloy Lafuente (stronk7) 5b14551371 MDL-30466 Backup: delete empty method 2011-11-29 19:47:25 +01:00
Eloy Lafuente (stronk7) 457e9ab606 Merge branch 'wip-mdl-30466' of git://github.com/rajeshtaneja/moodle 2011-11-29 19:45:39 +01:00
Eloy Lafuente (stronk7) 2321e0d661 Merge branch 'MDL-30444' of git://github.com/kiklop74/moodle 2011-11-29 16:39:22 +01:00
Mary Evans 231d40d543 MDL-30505 Fix for nested mixed ordered/unordered lists 2011-11-29 15:21:09 +00:00
Eloy Lafuente (stronk7) 8192d3cf43 Merge branch 'MDL-30435' of git://github.com/kiklop74/moodle 2011-11-29 15:54:28 +01:00
Chris Scribner cc6a4b0ecd MDL-30400 lti: Fixing warning in OAuthBodyPost
This would have only shown up if the tool provider didn't set the
content-type header, which I don't think is valid to begin with.

(amended by integrator to follow coding style rules)
2011-11-29 15:42:43 +01:00
Aparup Banerjee ab83fa53fd MDL-28646 webservices : version bump 2011-11-29 18:35:25 +08:00
Aparup Banerjee 1b39425dae Merge branch 'wip-MDL-28646' of git://github.com/mouneyrac/moodle 2011-11-29 16:38:02 +08:00
Sam Hemelryk fb056a811e Merge branch 'MDL-30302-master-2' of git://git.luns.net.uk/moodle 2011-11-29 16:56:29 +13:00
Sam Hemelryk f091da528e MDL-26240 theme_anomaly: Fixed small regression with dock 2011-11-29 16:54:00 +13:00
Sam Hemelryk 9ac82391a2 Merge branch 'MDL-26240' of git://github.com/lazydaisy/moodle 2011-11-29 16:52:50 +13:00
Sam Hemelryk 223b3ce3a0 MDL-30273 whitespace cleanup 2011-11-29 16:47:21 +13:00
Sam Hemelryk 925ae95824 Merge branch 'wip-MDL-30273-master' of git://github.com/abgreeve/moodle 2011-11-29 16:46:47 +13:00
Sam Hemelryk e343ff6a5d Merge branch 'MDL-30471' of git://github.com/lazydaisy/moodle 2011-11-29 16:28:24 +13:00
Aparup Banerjee 67411c8399 Merge branch 'MDL-30368' of git://github.com/rwijaya/moodle 2011-11-29 11:27:53 +08:00
Jerome Mouneyrac 07cc3d11e2 MDL-28646 add missing authentication web service checks. Merge download/upload script checks in the same lib functions. Make the download scrit return json error message. Add missing webservice lang. Minor unit test doc improvement. 2011-11-29 11:18:36 +08:00
Eloy Lafuente (stronk7) 82fb6d1a08 Merge branch 'wip-MDL-30378-m22' of git://github.com/samhemelryk/moodle 2011-11-29 03:18:02 +01:00
Sam Hemelryk e68fa2500a Merge branch 'MDL-30347' of git://github.com/stronk7/moodle 2011-11-29 15:16:27 +13:00
Eloy Lafuente (stronk7) 055a278ad9 MDL-30347 lti: disabling outated/incorrect unit tests 2011-11-29 03:05:19 +01:00
Sam Hemelryk bada16d35c Merged branch 'wip-MDL-30361-master-rtlpatches' of git://github.com/nadavkav/moodle.git with changes 2011-11-29 13:51:25 +13:00
AMOS bot 8cfa492c45 Automatically generated installer lang files 2011-11-29 00:30:40 +00:00
Sam Hemelryk 56c062a45f MDL-30378 navigation: Front page activities are now added to the navigation on every page 2011-11-29 11:13:50 +13:00
Eloy Lafuente (stronk7) 3654f38623 Merge branch 'w48_MDL-30487_m22_filtertest' of git://github.com/skodak/moodle 2011-11-28 20:18:43 +01:00
Petr Skoda e7b90ca0fa MDL-30487 remove obsolete test
Since MDL-30303 media filter accepts any ? parameters.
2011-11-28 20:11:59 +01:00
Tim Hunt 3385a144b8 MDL-30485 XML import from 1.9 does not handle files in subfolders. 2011-11-28 17:26:17 +00:00
Andrew Robert Nicols 68ec4a273c MDL-30302 Adjust options for calendar day settings 2011-11-28 17:02:31 +00:00
Tim Hunt 7d087744cb MDL-30322 qtypes calc* and mulitanswer -> optional_param_array. 2011-11-28 16:57:00 +00:00
Rossiani Wijaya dbf4433d75 MDL-30202 forum module: fixed code regression for displaying rss feed icon (link) 2011-11-28 17:49:14 +08:00
Aparup Banerjee 66b97716c5 Merge branch 'wip-MDL-30214-master' of github.com:marinaglancy/moodle 2011-11-28 17:02:26 +08:00
Dongsheng Cai ec0d6ea2a9 MDL-28646 Web service: core_course_get_contents()
1. Implement core_course_get_contents web service
2. Implement callbacks in folder, resource, page and url modules
3. Implement download script for web service
2011-11-28 16:22:38 +08:00
Aparup Banerjee 3625e9049f Merge branch 'MDL-30379' of git://github.com/rwijaya/moodle 2011-11-28 15:21:34 +08:00
Aparup Banerjee 900d5fd61c MDL-30243 theme - whitespace fixes to afterburner 2011-11-28 14:47:15 +08:00
Aparup Banerjee 00347b3c3c Merge branch 'MDL-30243' of git://github.com/lazydaisy/moodle 2011-11-28 14:33:57 +08:00
Ankit Kumar Agarwal bbe5bad575 MDL-30440 SCORM Fixing Sql errors in interraction reporting 2011-11-28 11:51:37 +05:30
Rajesh Taneja 3c33d77817 MDL-30466 Backup: Fixed duplicate completion record check error 2011-11-28 14:12:41 +08:00
Sam Hemelryk ac386aa925 Merge branch 'w48_MDL-30448_m22_urlpar' of git://github.com/skodak/moodle 2011-11-28 18:54:49 +13:00
Sam Hemelryk beb684ba11 Merge branch 'w48_MDL-30457_m22_deluserspictures' of git://github.com/skodak/moodle 2011-11-28 18:21:39 +13:00
Sam Hemelryk 5c0b8ea3f1 Merge branch 'w48_MDL-30467_m22_delusers' of git://github.com/skodak/moodle 2011-11-28 18:13:27 +13:00
Marina Glancy beb180689b MDL-30214: Added function forum_get_file_info() to fix the bug with choosing recent forum files in filepicker 2011-11-28 11:52:57 +08:00
Aparup Banerjee 86b3dd264e Merge branch 'MDL-30460-master' of git://github.com/ankitagarwal/moodle 2011-11-28 11:43:03 +08:00
Rossiani Wijaya 24b6984613 MDL-30368 box.net plugins: add richhtml format as part of box.net supported formats 2011-11-28 10:57:03 +08:00
Rossiani Wijaya ea4721f047 MDL-30379 survey module: change clean_param() to clean_param_array() 2011-11-28 10:12:13 +08:00
Mary Evans 486a9ad89f MDL-30471 Fix for nesting unordered list inside ordered list 2011-11-27 23:53:15 +00:00
Eloy Lafuente (stronk7) 1ff31a54a2 Merge branch 'dropbox-api-bump-for-master' of git://git.luns.net.uk/moodle 2011-11-28 00:08:31 +01:00
Mary Evans d11d1e5bc0 MDL-26240 Fixes for Anomaly theme inconsistency 2011-11-27 00:46:24 +00:00
Petr Skoda ee2592346f MDL-30448 fix url param problems 2011-11-26 13:39:22 +01:00
Petr Skoda 8e470797e3 MDL-30467 notify devs deleted users do not have context 2011-11-26 09:17:02 +01:00
Petr Skoda 5bca744cad MDL-30467 skip deleted users during pix upgrade 2011-11-26 09:17:02 +01:00
Petr Skoda 368f5b7b4c MDL-30467 do profiles in tags for deleted users 2011-11-26 09:16:51 +01:00
Petr Skoda d05e39b0d9 MDL-30467 no system profile for deleted users 2011-11-26 09:16:27 +01:00
Petr Skoda 589071ba34 MDL-30467 no course profile for deleted users 2011-11-26 09:16:08 +01:00
Petr Skoda 03636668d4 MDL-30457 do not show pictures of deleted users
Since 2.2 deleted users do not have contexts.
2011-11-26 08:42:36 +01:00
AMOS bot d8d11e9dde Automatically generated installer lang files 2011-11-26 00:31:01 +00:00
David Mudrak cdc8577762 MDL-30453 Use correct renderable classes to represent assessments of example submission 2011-11-25 18:41:07 +01:00
David Mudrak e30f6ff338 MDL-30453 New renderable classes for assessments of example submissions
The patch introduces two new classes for rendering assessments of
example submission - both the training one and the reference one.
Together with the cooking functions for obtaining instances of these
classes.
2011-11-25 18:41:07 +01:00
David Mudrak 2dce240984 MDL-30271 Inform the user about the example assessment conflict, instead of throwing the exception 2011-11-25 16:01:48 +01:00
David Mudrak 660bc937f0 MDL-30271 Move the page initialization so that we can produce output in param processing sections eventually 2011-11-25 16:01:48 +01:00
Dan Poltawski 4b05a49bcb MDL-29960 repository/dropbox - Fix obvious incorrect url 2011-11-25 10:13:29 +00:00
Eloy Lafuente (stronk7) 1de9151c6f on-demand release 2.2beta+ 2011-11-25 11:11:33 +01:00
Eloy Lafuente (stronk7) a22e233cbb Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-11-25 11:05:27 +01:00
Dan Poltawski 6381177b9f MDL-29960 repository/dropbox - remove unsused code
This function calls an API request which may be changed from the
version 0 of the API
2011-11-25 09:59:01 +00:00
Dan Poltawski c745d1e80e MDL-29960 repository/dropbox - update to use 1.0 API version 2011-11-25 09:59:01 +00:00
Ankit Kumar Agarwal 4021f5f986 MDL-30460 Wiki making file extension case-insensitive 2011-11-25 14:40:09 +05:30
Aparup Banerjee 98377ed578 Merge branch 'MDL-30428-master-1' of git://git.luns.net.uk/moodle 2011-11-25 11:59:10 +08:00
Eloy Lafuente (stronk7) 66d8f36b9e Merge branch 'MDL-30456' of git://github.com/stronk7/moodle 2011-11-25 03:22:09 +01:00
Eloy Lafuente (stronk7) ef77af3852 MDL-30456 backup - avoid missing deleted users on backup 2011-11-25 03:16:53 +01:00
AMOS bot 64432a901c Automatically generated installer lang files 2011-11-25 00:30:42 +00:00
Sam Hemelryk 77da06ceb4 Merge branch 'MDL-30422-master' of git://github.com/ankitagarwal/moodle 2011-11-25 13:13:06 +13:00
Eloy Lafuente (stronk7) ede7105fd9 MDL-27233 move the restorer enrol/ra creation to the very beginning of the restore process
Some early steps in restore are using capability checks to decide how to
restore some information. But at that stage, if the course contents have
been removed and the user had perms at course level only (usually teacher)
the process can fail because some content is not restoreable due to the
lack of permissions.

Moving the restorer step to the beginning really helps is those situations
and it does not hurt at all.

Also, fixed one notice detected when testing this.
2011-11-25 01:07:27 +01:00
Eloy Lafuente (stronk7) 2afaf485cf Merge branch 'master' of git.moodle.org:/git/integration 2011-11-25 00:59:59 +01:00
Sam Hemelryk d905b69e95 Merge branch 'MDL-29115' of git://github.com/rwijaya/moodle 2011-11-25 11:53:24 +13:00
Eloy Lafuente (stronk7) 0620787a17 Merge branch 'w47_MDL-27233_m22_restoreenrol' of git://github.com/skodak/moodle 2011-11-24 23:44:24 +01:00
Sam Hemelryk 7355a8e4b7 Merge branch 'wip-mdl-30391' of git://github.com/rajeshtaneja/moodle 2011-11-25 11:29:33 +13:00
Mary Evans c42f1288ea MDL-28625 - removed ul/ol styles from canvas/text.css 2011-11-25 11:04:49 +13:00
Darko Miletic adf8f7a172 MDL-30435: updated xpath query for CC 1.0 and improved url validity
detection
2011-11-24 17:42:16 -03:00
Darko Miletic 4f26504015 MDL-3044: Fixed validation issue related to the incorrect definition of
xs:language type. All xs:language instances are replaced with xs:token
type. It relaxes validation enough for all the complex or dummy language
strings to be accepted.
2011-11-24 15:40:35 -03:00
Petr Skoda 1f238ad4df MDL-27233 fix variable names
Thanks Eloy!
2011-11-24 10:40:38 +01:00
Mary Evans 4d33fbef43 MDL-30243 - corrected admin tree to add custom css settings 2011-11-24 09:31:32 +00:00
Aparup Banerjee c47b8c7d0c Merge branch 'MDL-30288_override_checkbox' of git://github.com/andyjdavis/moodle 2011-11-24 16:14:37 +08:00
Ankit Kumar Agarwal 6348043461 MDL-30422 SCORM Fixing old variable use in interraction report 2011-11-24 12:53:37 +05:30
Aparup Banerjee 3ca3098f31 Merge branch 'MDL-29226' of git://github.com/lazydaisy/moodle 2011-11-24 14:39:53 +08:00
Andrew Davis 185db1c962 MDL-30288 gradebook: prevented grade grade feedback being wrapped in a text to html div tag which was causing it to look like feedback had been edited when it hadn't 2011-11-24 11:27:13 +08:00
AMOS bot 6c72ee14cd Automatically generated installer lang files 2011-11-24 00:31:00 +00:00
Eloy Lafuente (stronk7) c08a5622b8 Merge branch 'w47_MDL-29450_m22_removecoursecontent' of git://github.com/skodak/moodle 2011-11-23 23:01:27 +01:00
Petr Skoda 73d000f389 MDL-27233 allow adding of default role to restorers 2011-11-23 18:38:27 +01:00
Petr Skoda d53e3298c0 MDL-27233 add new options to keep enrols and groups purging existing course in restore 2011-11-23 18:38:27 +01:00
Petr Skoda 16ef46e7b6 MDL-29450 improve and cleanup course content removal
New keep roles/enrolments and groups/groupings options, notification CSS fixed, standardised notification texts, added missing delete of module blocks, fixed file deleting and some other minor issues.
2011-11-23 18:37:36 +01:00
Andrew Robert Nicols 9e23487a10 MDL-30428 Add br tag when showing the 'Export to Portfolio' text 2011-11-23 14:07:52 +00:00
Eloy Lafuente (stronk7) 43fb30d652 Merge branch 'wip-mdl-30394' of git://github.com/rajeshtaneja/moodle 2011-11-23 13:37:37 +01:00
Eloy Lafuente (stronk7) 8ccbf8d1e5 Merge branch 'MDL-30409-master' of git://github.com/sammarshallou/moodle 2011-11-23 13:33:39 +01:00
Eloy Lafuente (stronk7) 07a27990a0 Merge branch 'wip-mdl-30375' of git://github.com/rajeshtaneja/moodle 2011-11-23 13:28:24 +01:00
Eloy Lafuente (stronk7) c897e4639c Merge branch 'MDL-30398-master' of git://github.com/ankitagarwal/moodle 2011-11-23 13:19:21 +01:00
Eloy Lafuente (stronk7) 9002363b35 Merge branch 'MDL-30390-grading-restore' of git://github.com/mudrd8mz/moodle 2011-11-23 13:16:04 +01:00
Eloy Lafuente (stronk7) ab9dde2f97 Merge branch 'MDL-29095' of git://github.com/timhunt/moodle 2011-11-23 12:05:36 +01:00
Eloy Lafuente (stronk7) 48e74d2c10 Merge branch 'MDL-29060' of git://github.com/timhunt/moodle 2011-11-23 11:47:51 +01:00
Eloy Lafuente (stronk7) 1bb98bd7a4 Merge branch 'wip-mdl-28947' of git://github.com/rajeshtaneja/moodle 2011-11-23 11:37:34 +01:00
Eloy Lafuente (stronk7) 5535390c55 Merge branch 'MDL-30165-master-1' of git://git.luns.net.uk/moodle 2011-11-23 11:22:50 +01:00
Eloy Lafuente (stronk7) 3a02133f3f Merge branch 'master_MDL-25757' of git://github.com/danmarsden/moodle 2011-11-23 11:07:50 +01:00
Aparup Banerjee c32e3a0a0a Merge branch 'MDL-30026_sqlsrv' of git://github.com/stronk7/moodle 2011-11-23 14:34:34 +08:00
Aparup Banerjee 9d06eb139c MDL-29995 Filters - added MDL issue number to Todo. 2011-11-23 13:51:11 +08:00
Aparup Banerjee d7de1c8a62 Merge branch 'MDL-29995' of git://github.com/stronk7/moodle 2011-11-23 13:47:52 +08:00
Aparup Banerjee 4cff8cb550 Merge branch 'MDL-28562_wip' of https://github.com/jamiepratt/moodle 2011-11-23 12:36:35 +08:00
Aparup Banerjee a9c56ad2df Merge branch 'master_MDL-29290' of git://github.com/danmarsden/moodle 2011-11-23 12:06:58 +08:00
Sam Hemelryk b674092416 Merge branch 'dev_MDL-29476_ws_participants_master' of git://github.com/dongsheng/moodle 2011-11-23 16:52:08 +13:00
Aparup Banerjee 03848c4568 MDL-30335 formslib : phpdoc improvement 2011-11-23 11:47:06 +08:00
Aparup Banerjee 5cde86faa9 Merge branch 'MDL-30335' of git://github.com/timhunt/moodle 2011-11-23 11:41:58 +08:00
Jason Fowler 2c5857186b MDL-29469 Enrolments - fixing the role assignment access elevation issue 2011-11-23 11:23:05 +08:00
Aparup Banerjee d2b5a2caf5 Merge branch 'wip-MDL-20627-master' of git://github.com/abgreeve/moodle 2011-11-23 11:12:03 +08:00
Mary Evans 4ea621f75b MDL-29778 Fix to make user selector arrow visible 2011-11-23 15:54:59 +13:00
Kordan b9b9614356 MDL-29830 theme_base: Fix overflow problems with navigation items 2011-11-23 15:48:03 +13:00
Rossiani Wijaya 4fd95658bb MDL-29115 lesson mod: fixed the display of 'try again' button so it relates to lesson setting 2011-11-23 10:34:49 +08:00
Rajesh Taneja 2d8732d199 MDL-30375 Blocks: Comments block will show blank textbox rather then hiding and 'add a comment' will be visible if it's empty 2011-11-23 10:32:14 +08:00
Eloy Lafuente (stronk7) a0d26f45f7 Merge branch 'MDL-30042-master-1' of git://git.luns.net.uk/moodle 2011-11-23 03:06:18 +01:00
Eloy Lafuente (stronk7) 7722bb5df8 Merge branch 'MDL-27045' of git://github.com/timhunt/moodle 2011-11-23 03:01:50 +01:00
adrian@moodle.com b489d37d56 MDL-27334 - forum - Fixed the issue of error session keys being displayed when trying to browse to a site without logging in. 2011-11-23 09:43:39 +08:00
Sam Hemelryk b8a2a92773 Merge branch 'MDL-30192' of git://github.com/stronk7/moodle 2011-11-23 14:11:23 +13:00
Eloy Lafuente (stronk7) 689461f4d8 Merge branch 'MDL-30259-master' of git://github.com/sammarshallou/moodle 2011-11-23 02:00:53 +01:00
Sam Hemelryk ba54648b45 Merge branch 'MDL-29904-master' of git://github.com/lazydaisy/moodle 2011-11-23 13:54:26 +13:00
Eloy Lafuente (stronk7) 0f6cc7a7cc Merge branch 'MDL-30203-master' of git://github.com/sammarshallou/moodle 2011-11-23 01:44:49 +01:00
AMOS bot 20adbd65cd Automatically generated installer lang files 2011-11-23 00:30:58 +00:00
Eloy Lafuente (stronk7) ea46fcbced Merge branch 'master_MDL-30223' of git://github.com/danmarsden/moodle 2011-11-23 01:20:39 +01:00
Eloy Lafuente (stronk7) 1316fc8af9 Merge branch 'MDL-30306b' of git://github.com/timhunt/moodle 2011-11-23 01:18:00 +01:00
Eloy Lafuente (stronk7) 8ea233e7ad Merge branch 'MDL-30381-dataroot-install' of git://github.com/mudrd8mz/moodle 2011-11-23 01:11:01 +01:00
Eloy Lafuente (stronk7) 7242b051ac Merge branch 'MDL-30402-install-string' of git://github.com/mudrd8mz/moodle 2011-11-23 01:07:44 +01:00
Eloy Lafuente (stronk7) c8a82fdbfe Merge branch 'MDL-30404-stringcaches' of git://github.com/mudrd8mz/moodle 2011-11-23 01:04:29 +01:00
Mary Evans b04ae8ad2b MDL-30164 FIX for missing gap between icon and text in reports 2011-11-23 12:59:04 +13:00
Mary Evans 6207bf8f05 MDL-30196 changed reference from Serenity to Sky High in theme_sky_high.php 2011-11-23 12:50:08 +13:00
Sam Hemelryk f2d11739a8 Merge branch 'MDL-30393_2' of git://git.catalyst.net.nz/moodle-r2 2011-11-23 12:41:24 +13:00
Nadav Kavalerchik bc86c87261 MDL-30361 - mod/assignment, fix right margin of felement on Grading page that is linked from the user's submissions page (In RTL mode) Not sure what the previous fix was doing, (i made it on a previous commit) hope it does not break some other UI element when in RTL mode. 2011-11-23 01:31:54 +02:00
Nadav Kavalerchik 10625d2efe MDL-30361 - mod/glossary/editcategories.php - fix spelling ($rightalignment) 2011-11-23 01:31:54 +02:00
Nadav Kavalerchik a1f9bc038e MDL-29226 - right align User's fullprofile link, in user's profile page (when in RTL mode)(cherry picked from commit 6437269) 2011-11-23 01:31:54 +02:00
Nadav Kavalerchik efbbe2f047 MDL-29226 - right align table's cells, in Glossary edit categories page (when in RTL mode)(cherry picked from commit 9ace475) 2011-11-23 01:31:53 +02:00
Nadav Kavalerchik f40a7feb2a MDL-29226 - center align Scale table, in course grades menu (when in RTL mode)(cherry picked from commit 40b83ae) 2011-11-23 01:31:53 +02:00
Nadav Kavalerchik f34f2891b8 MDL-29226 - right align grade category title, in course grade report (when in RTL mode)(cherry picked from commit 2f364ff) 2011-11-23 01:31:53 +02:00
Nadav Kavalerchik 61f85d9ecd MDL-29226 - fix right margin fitem in all Forms (when in RTL mode)(cherry picked from commit 7a82ba6) 2011-11-23 01:31:52 +02:00
Nadav Kavalerchik 85cba684b8 MDL-29226 - right align "Autocomplete" box, beside the activity's name (when in RTL mode)(cherry picked from commit 2e7c5a1) 2011-11-23 01:31:52 +02:00
Sam Hemelryk b2d3e5cc49 Merge branch 'w46_MDL-30303_m22_mimeinfo' of git://github.com/skodak/moodle 2011-11-23 12:17:14 +13:00
Sam Hemelryk 15415bf8e8 Merge branch 'w46_MDL-30403_m22_upgradedocs' of git://github.com/skodak/moodle 2011-11-23 10:57:38 +13:00
sam marshall 3d8138bbd2 MDL-30409 moodlelib syntax errors 'throw coding_exception' 2011-11-22 16:33:23 +00:00
David Mudrak 086ed2a6c0 MDL-30390 Advanced grading - fixed the database table field name in the restore
This is a regression of the recent fields renaming.
2011-11-22 15:50:17 +01:00
David Mudrak 561d547173 MDL-30404 All Moodle caches can be now purged from CLI 2011-11-22 11:50:54 +01:00
David Mudrak 6dc2df50f9 MDL-30404 Ability to manually purge string caches from the language packs import utility 2011-11-22 11:37:36 +01:00
Petr Skoda d898238081 MDL-30403 add upgrade docs for admin tools 2011-11-22 11:02:30 +01:00
Petr Skoda c2dbe006d0 MDL-30403 improve upgrade docs for general reports 2011-11-22 11:02:13 +01:00
Aparup Banerjee e0e2db92a3 Merge branch 'MDL-30397' of git://github.com/timhunt/moodle 2011-11-22 17:16:27 +08:00
David Mudrak 6e17567624 MDL-30402 Removing hard-coded English string from the CLI installer 2011-11-22 10:02:42 +01:00
Ankit Kumar Agarwal 7b5abb50ce MDL-30398 Validations added for password field 2011-11-22 14:23:05 +05:30
Aparup Banerjee 65fbaea13d Merge branch 'MDL-30185' of git://github.com/colchambers/moodle 2011-11-22 16:26:29 +08:00
Aparup Banerjee 525e45795a Merge branch 'wip-mdl-29396' of git://github.com/rajeshtaneja/moodle 2011-11-22 16:08:57 +08:00
Rajesh Taneja ade30ad3c4 MDL-29396 core: ip blocking will be bypassed for cli scripts - Thanks Petr 2011-11-22 16:02:02 +08:00
Aparup Banerjee 46fc365c77 Merge branch 'MDL-27735' of git://github.com/rwijaya/moodle 2011-11-22 15:28:17 +08:00
Rossiani Wijaya db8312d23c MDL-27735 Q&A forum: add new caps to add question. By default, teacher, editing teacher and manager role has the capability to add new question 2011-11-22 15:26:44 +08:00
Tim Hunt 2ecbad416e MDL-30397 qformat_xml::format() should be public. 2011-11-22 07:21:04 +00:00
Aparup Banerjee 6aabd59e69 Merge branch 'MDL-27703_user_report_sql' of git://github.com/andyjdavis/moodle 2011-11-22 13:48:24 +08:00
Sam Hemelryk b28de4b412 Merge branch 'MDL-28629' of git://github.com/mouneyrac/moodle 2011-11-22 18:26:35 +13:00
Jonathan Harker 95641b4529 MDL-30393 lib/bennu minor fixes for RFC-2445 and PHP 5.x support. 2011-11-22 17:26:49 +13:00
Rajesh Taneja d6e23c1466 MDL-30394 Backup: Removed popup, inserted by 27790 during restore in new course 2011-11-22 12:03:26 +08:00
Rajesh Taneja ecdd2d183c MDL-30391 Backup: Exception in restore should be thrown as it is to be handled by calling function 2011-11-22 11:39:18 +08:00
Aparup Banerjee 3a9e6be55a Merge branch 'w46_MDL-30349_m22_filestatcaching' of git://github.com/skodak/moodle 2011-11-22 11:33:55 +08:00
Rajesh Taneja 187672608e MDL-28947 lib: print_object cleans html special chars before printing 2011-11-22 09:28:54 +08:00
Eloy Lafuente (stronk7) 79b0fece1f on-demand release 2.2beta+ 2011-11-22 01:51:50 +01:00
Eloy Lafuente (stronk7) df17785210 fix permissions 2011-11-22 01:51:06 +01:00
Eloy Lafuente (stronk7) b8ba54a408 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-11-22 01:50:20 +01:00
AMOS bot 3370582b86 Automatically generated installer lang files 2011-11-22 00:30:48 +00:00
Sam Hemelryk f5d0ac1077 Merge branch 'MDL-30392' of git://github.com/stronk7/moodle 2011-11-22 12:59:19 +13:00
Eloy Lafuente (stronk7) 08fa81d6c5 MDL-30392 DML - Fix old-style delete_records() call 2011-11-22 00:41:05 +01:00
David Mudrak fbe33209ce MDL-30381 install_init_dataroot() now creates temp and cache
This prevents PHP warnings displayed due to recent modifications in
make_temp_dir() and make_cache_dir(). These functions now expect that
the root temp/cache dir already exists. So they must be available before
the lang_installer installs the lang pack during install.
2011-11-21 23:56:05 +01:00
Sam Hemelryk 009b14c065 MDL-30270 rubric Cleaned up minor points after review before integration 2011-11-22 10:40:15 +13:00
Sam Hemelryk 495bcb06d1 Merge branch 'wip-MDL-30270-master' of git://github.com/marinaglancy/moodle 2011-11-22 10:39:02 +13:00
Eloy Lafuente (stronk7) 2b72f6dc62 Merge branch 'mdl-23006-xmldb-missing-strings' of git://github.com/sbourget/moodle 2011-11-21 19:42:20 +01:00
Andrew Robert Nicols 70eddb71cf MDL-30174 Assignment : Only increment submission offset if the current assignment was not saved 2011-11-22 02:20:16 +08:00
Andrew Robert Nicols 89a4471b97 MDL-30173 Assignment : Convert to use moodle_url and add missing filter param 2011-11-22 02:02:26 +08:00
Aparup Banerjee 85227804b4 Merge branch 'MDL-29814_blank_emails2' of git://github.com/andyjdavis/moodle 2011-11-22 01:15:26 +08:00
Eloy Lafuente (stronk7) 7715c88d36 MDL-30344 lti - whitespace & comments cleanup 2011-11-21 16:59:58 +01:00
Chris Scribner 59fc5c5404 MDL-30344 lti - Hiding roster permission from the UI as it's not implemented in LTI 1.1. 2011-11-21 16:42:28 +01:00
Chris Scribner 038d8e30c3 MDL-30344 lti - Fix issue with privacy settings not working for a course level tool if no Launch URL is specified. 2011-11-21 16:42:12 +01:00
Chris Scribner 4c598b133f MDL-20534 lti: Updating privacy settings dynamically based on matched Launch URL. 2011-11-21 16:42:12 +01:00
David Mudrak b907d3f58c MDL-30381 Fixed the tempdir and cachedir value calculation
Instead of using the default dataroot location, the tempdir and cachedir
are now set under the real dataroot location specified via the argument
and/or the interactive session.

The patch also adds a PARAM_PATH check for the dataroot specified.
2011-11-21 16:01:18 +01:00
David Mudrak 12812ad5da MDL-30381 Fixed path to the cache directory in installers
This fixes the patch f848c0f6e6 introduced
in MDL-29351.
2011-11-21 15:48:31 +01:00
Aparup Banerjee 3a59d04c65 MDL-30268 Web service : resolved version number conflict 2011-11-21 14:47:23 +08:00
Aparup Banerjee 9dc97097b1 Merge branch 'wip-MDL-30289-master' of git://github.com/abgreeve/moodle 2011-11-21 13:57:34 +08:00
Aparup Banerjee 338b9cab83 Merge branch 'w46_MDL-21617_m22_xhack' of git://github.com/skodak/moodle 2011-11-21 11:28:27 +08:00
Eloy Lafuente (stronk7) 6b532f5d4d Merge branch 'w46_MDL-30147_m22_tablenotexists' of git://github.com/skodak/moodle 2011-11-21 02:30:19 +01:00
Eloy Lafuente (stronk7) feeb52949f MDL-30328 some whitespace changes 2011-11-21 02:23:51 +01:00
Eloy Lafuente (stronk7) 27e5ce8b9f Merge branch 'MDL-30328' of git://github.com/scriby/moodle 2011-11-21 02:22:40 +01:00
Eloy Lafuente (stronk7) e5235e6eef Merge branch 'MDL-30326' of git://github.com/scriby/moodle 2011-11-21 02:03:51 +01:00
Charles Fulton 6737aae6bb MDL-30289 forum - set page context when pruning a discussion 2011-11-21 08:58:26 +08:00
Eloy Lafuente (stronk7) 5f72d1025b MDL-30354 lti - whitespace fixes 2011-11-21 01:57:24 +01:00
Eloy Lafuente (stronk7) d167cc3397 Merge branch 'MDL-30354' of git://github.com/scriby/moodle 2011-11-21 01:48:52 +01:00
Eloy Lafuente (stronk7) eba4bcb441 Merge branch 'master' of git.moodle.org:/git/integration 2011-11-21 01:45:37 +01:00
Sam Hemelryk 919423fc6c Merge branch 'w46_MDL-30228_m22_pdftestcopyright' of git://github.com/skodak/moodle 2011-11-21 13:32:55 +13:00
Mary Evans c6185e2eac MDL-30243 Added configtitle to theme_afternburner 2011-11-21 00:31:39 +00:00
Eloy Lafuente (stronk7) 77a7978f11 MDL-20534 lti: B9 - mini bump 2011-11-21 01:27:34 +01:00
Mary Evans 6ee5f11511 MDL-30236 removed outlawed javasript from theme_anomaly 2011-11-21 13:27:22 +13:00
Eloy Lafuente (stronk7) 695f327a70 Merge branch 'MDL-30343' of git://github.com/scriby/moodle 2011-11-21 01:17:06 +01:00
Eloy Lafuente (stronk7) 0fca3dbbce Merge branch 'MDL-30341' of git://github.com/scriby/moodle 2011-11-21 01:11:54 +01:00
Eloy Lafuente (stronk7) 253f5575c9 MDL-30339 lti lang - whitespace fixes 2011-11-21 01:03:22 +01:00
Eloy Lafuente (stronk7) 8efcee5f8c Merge branch 'MDL-30295' of git://github.com/scriby/moodle
Conflicts:
	mod/lti/lang/en/lti.php
2011-11-21 00:58:12 +01:00
Eloy Lafuente (stronk7) 34087d7be2 Merge branch 'MDL-30339' of git://github.com/scriby/moodle 2011-11-21 00:50:32 +01:00
Sam Hemelryk 28e6598dff Merge branch 'w46_MDL-30294_m22_errorsinthemefiles' of git://github.com/skodak/moodle 2011-11-21 12:48:06 +13:00
Sam Hemelryk 67c768dbe8 Merge branch 'w46_MDL-30308_m22_reqstrict' of git://github.com/skodak/moodle 2011-11-21 12:39:42 +13:00
Sam Hemelryk 4f0596f874 Merge branch 'plagiarismbranch' of git://github.com/peterbulmer/moodle 2011-11-21 12:23:32 +13:00
Sam Hemelryk 291029dfd5 Merge branch 'MDL-30309' of git://github.com/lazydaisy/moodle 2011-11-21 12:01:45 +13:00
Sam Hemelryk 34e05996c1 Merge branch 'MDL-30319' of git://github.com/lazydaisy/moodle 2011-11-21 11:53:45 +13:00
Sam Hemelryk b8c117e126 Merge branch 'w46_MDL-30327_m22_blockconfig' of git://github.com/skodak/moodle 2011-11-21 11:48:47 +13:00
Sam Hemelryk eb3217dc40 MDL-30359 theme_base Fixed regression with course completion icons 2011-11-21 11:30:17 +13:00
Sam Hemelryk 7cdf3904a7 Merge branch 'MDL-30359' of git://github.com/lazydaisy/moodle 2011-11-21 10:28:32 +13:00
Mary Evans 98dd8e72e9 MDL-29904-master FIX to add pagelayout=>report 2011-11-20 18:58:49 +00:00
Tim Hunt 7e7fdf59c6 MDL-29060 q export: writefiles should be public write_files & belongs to XML format. 2011-11-20 11:49:41 +00:00
Petr Skoda 685dc4438f MDL-30228 fix incorrect author info
Sorry David!
2011-11-19 19:03:10 +01:00
Petr Skoda 32322d8680 MDL-30308 outputrequirementslib.php breaks xhtml validation
Credit goes to Matthew Davidson.
2011-11-19 18:43:55 +01:00
Petr Skoda 7f86bee330 MDL-30303 fix media playback from URLs with ? query parts
Credit for the rawurlencode() fix goes to Eloy.
2011-11-19 18:17:37 +01:00
Petr Skoda 544832790d MDL-30327 standardise block deletion process 2011-11-19 16:56:11 +01:00
Petr Skoda 4e8d084bc9 MDL-21617 remove problematic attempt to remove script events from random text
This "feature" was used to partially eliminate XSS attacks on vulnerable code. Developers MUST use clean_text() on HTML text fragments only, it can not be used on random html tag attributes.

This change may simplify a bit exploiting of vulnerable code, but every XSS cheat sheet contains information how to work around this outdated anti-XSS measure.

Please note this change fixes many problems with valid uses of language= or onXXXXX= such as in urls, tex, code samples, etc.
2011-11-19 13:22:33 +01:00
Petr Skoda e164a0dfea MDL-30349 clear file stat cache when adding new theme cache files
Hopefully this will resolve some cache reset problems.
2011-11-19 12:14:26 +01:00
Petr Skoda c198390a49 MDL-30294 prevent notices and errors in theme files content
Theme images, css and JS are broken by PHP error messages which creates major problems for production sites with enabled displaying of errors because the files are cached indefinitely. It is better to send the errors and notices to logs only, in any case all developers must learn to use error logs.
2011-11-19 11:23:28 +01:00
Petr Skoda 0b9f2a02ab MDL-30349 make sure file stat cache is reset properly after each remove_dir()
Typo3 does this, maybe it works around some PHP bugs…
2011-11-19 10:36:37 +01:00
Petr Skoda fed02be153 MDL-30147 do not expect text comparison exceptions when not in debug mode
Unfortunately the column type fetching is too expensive, we do extra verification in debug mode only.
2011-11-19 09:44:33 +01:00
Petr Skoda a453ec079f MDL-30147 optional verification if dml exception when table missing 2011-11-19 09:39:07 +01:00
Eloy Lafuente (stronk7) 870896eca1 MDL-30147 dml - mysql and no params now behaving "standard" 2011-11-19 09:27:10 +01:00
Eloy Lafuente (stronk7) a8097d6dda MDL-30147 dml - one more test behavior without params 2011-11-19 09:27:09 +01:00
Eloy Lafuente (stronk7) 8f201c9ded MDL-30147 dml - added some tests demoing bad get_columns() behavior 2011-11-19 09:27:09 +01:00
Petr Skoda 69ac5d478f MDL-30147 do not rely on dml exception type outside of dml layer
The trouble is that dml driver methods (insert, update, select) are not guaranteed to return the same exception class for various db problems and coding style issues. The recommended practice is to catch dml_exception only.
2011-11-19 09:25:11 +01:00
Petr Skoda c04e80e328 MDL-30147 detect missing table when processing query conditions 2011-11-19 09:16:51 +01:00
Andrew Davis 22e23da6f4 MDL-29814 message: made html personal messages store a plain text version as a fallback 2011-11-19 15:35:23 +08:00
Mary Evans 24050190e3 MDL-29226 RTL fixes - additions and amendments 2011-11-19 00:53:14 +00:00
AMOS bot 967bc47c80 Merge branch 'master' into install_master 2011-11-19 00:30:59 +00:00
Mary Evans 2062be1a01 MDL-30359 Fixes for dir-rtl in theme_base CSS 2011-11-19 00:04:41 +00:00
Chris Scribner 036e84c389 MDL-30354 lti - B27 - locallib changes 2011-11-18 12:38:41 -05:00
Eloy Lafuente (stronk7) f218cdab34 Merge branch 'MDL-29591-master-2' of git://git.luns.net.uk/moodle 2011-11-18 17:28:53 +01:00
Eloy Lafuente (stronk7) 668933bcaa MDL-20534 lti: B14 - tiny bit, but savepoint tests require that 2011-11-18 17:19:59 +01:00
Chris Scribner 532ae9aa34 MDL-30295 lti - Adding lti:manage localization string. 2011-11-18 11:19:07 -05:00
Chris Scribner efba8960e1 MDL-20534 lti: B11 - Making language file changes (re-order, markdown, remove newlines in strings) 2011-11-18 11:18:36 -05:00
Tim Hunt fc2dafcff5 MDL-30306 get_string developer warning. Help lazy developers. 2011-11-18 16:00:33 +00:00
Eloy Lafuente (stronk7) 194f2c60ef MDL-20534 lti: B14 - whitespace and comment fixes 2011-11-18 16:05:22 +01:00
Andrew Robert Nicols 7d7d82de03 MDL-29591 Check for permission before overwriting course idnumber when restoring 2011-11-18 14:54:00 +00:00
Eloy Lafuente (stronk7) 3a2927081c Merge branch 'MDL-30290' of git://github.com/scriby/moodle 2011-11-18 13:40:16 +01:00
Eloy Lafuente (stronk7) 1acad8eed7 MDL-30192 restore - prevent any extra info to be created for deleted users 2011-11-18 13:03:08 +01:00
Eloy Lafuente (stronk7) f8cd596aae MDL-30026 dml - fix sqlsrv support for session locks 2011-11-18 13:02:24 +01:00
Eloy Lafuente (stronk7) dd3fafbda5 MDL-29995 filters - consider leacy filters and locations deprecated in 2.2
Support for them will be dropped in 2.3 thanks to MDL-29996
2011-11-18 13:00:57 +01:00
Marina Glancy a19d1057ca MDL-30270, MDL-30269: rubric interface/usability improvements:
- In rubric editor the line 'Current rubric status' is hidden if there is no status yet
- If present the style of the status is the same as on manage.php page
- For newly created rubric 'Add criterion' button is pre-pressed automatically
- Changed JavaScript to work for Mac browsers default settings and for IPad
- MDL-30269: added explanation message about score to grade mapping
- fixed bug with non-javascript 'Add criterion' behaviour
2011-11-18 15:35:24 +08:00
Aparup Banerjee 8adce198e4 Merge branch 'MDL-30279-master' of git://github.com/ankitagarwal/moodle 2011-11-18 15:34:18 +08:00
Charles Fulton 5a1038bb47 MDL-30273 prevent the creation of discussions in simple single forums 2011-11-18 14:11:49 +08:00
adrian@moodle.com e94113a859 MDL-20627 user - Fixed viewing permission of email when sending group messages. 2011-11-18 11:41:11 +08:00
AMOS bot 00db87ad38 Automatically generated installer lang files 2011-11-18 00:30:45 +00:00
Eloy Lafuente (stronk7) fe41ba7489 on-demand release 2.2beta 2011-11-18 01:20:35 +01:00
Eloy Lafuente (stronk7) d9f2975413 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-11-18 01:17:52 +01:00
Chris Scribner 38936053a3 MDL-20534 lti: B9 - Adding db/log.php 2011-11-17 16:41:45 -05:00
Chris Scribner aeae316274 MDL-20534 lti: B28 - Accidentally included Copyright header in wrong file. 2011-11-17 16:30:20 -05:00
Chris Scribner 8f45215d1c MDL-20534 lti: B28 - Update attribution headers. 2011-11-17 16:29:50 -05:00
Chris Scribner 76519c52f0 MDL-20534 lti: B11 - Making language file changes (re-order, markdown, remove newlines in strings) 2011-11-17 15:50:14 -05:00
Eloy Lafuente (stronk7) 8a9426bc17 MDL-29350 Prevent memory/time problems if there are zillions of combinations 2011-11-17 20:10:02 +01:00
Tim Hunt 8f6384a9ec MDL-27045 formslib: fix disabledif for advcheckbox
This is based on earlier work by Henning Bostelmann and Tom Potts.
2011-11-17 17:57:27 +00:00
Tim Hunt fa2fa5c698 MDL-30335 formslib: fix repeat_elements for groups that don't appendName 2011-11-17 16:42:13 +00:00
Eloy Lafuente (stronk7) 408ea3b547 Merge branch 'MDL-29350-master-2' of git://git.luns.net.uk/moodle 2011-11-17 17:15:00 +01:00
Charles Severance 6edcab7a1a MDL-20534
Undo change that Chris already did.
2011-11-17 10:35:07 -05:00
Charles Severance 461bde28d8 MDL-20534
Add the tool_consumer_info fields and fix parsing of custom parameters.
2011-11-17 10:34:58 -05:00
Chris Scribner 34eb05018f MDL-20534 lti: Some cleanup of locallib.php 2011-11-17 10:34:45 -05:00
Charles Severance ddcfda87d6 MDL-20534
I ran the software through the certification and caught a few nits:

The error return is 'failure' not 'error'
The spec says that it needs to return 'failure' for out of range or non-numeric grades
The result score needs a language tag, hard-coded as 'en'
Setting a grade multiplied by 100 but reading the grade did not divide by 100
All those are now fixed with this patch as well as this bit of cruft:

I removed the "extension service url" as it is not implemented in service.php

Feel free to review and adjust - probably the one place you might want to refactor
is that I put code to catch out-of-range-and non-numeric in
lti_parse_grade_replace_message and threw an exception on error and then caught
it in service.php and sent back the 'failure' message. Feel free to refactor a
bit if you see this done in a cleaner manner.
2011-11-17 10:34:23 -05:00
Chris Scribner 0297a3d4b7 MDL-20534 lti: Updating the tool consumer information strings to match newest spec version. 2011-11-17 10:34:07 -05:00
Chris Scribner 776e5cfa0f MDL-20534 lti: B8 - Switching from $ME to $FULLME to properly detect SSL requests. 2011-11-17 09:35:56 -05:00
Chris Scribner b07878ec7d MDL-20534 lti: B14 - Implementing "show description on course page" 2011-11-17 09:28:40 -05:00
Mary Evans e3b977ac83 MDL-30319 changed lang $string Light to Light/Blue in theme_mymobile 2011-11-17 13:51:30 +00:00
Eloy Lafuente (stronk7) f71e41691a Merge branch 'MDL-30182' of git://github.com/timhunt/moodle 2011-11-17 10:53:56 +01:00
Tim Hunt 0850e6301a MDL-30182 fix missing include. Sorry. 2011-11-17 08:02:20 +00:00
Charles Fulton 9f2dc66f72 MDL-30279 show full date and time for all wiki revisions 2011-11-17 08:54:50 +05:30
Sam Hemelryk b750c6b388 Merge branch 'MDL-24577-master-1' of git://git.luns.net.uk/moodle 2011-11-17 14:53:38 +13:00
Peter Bulmer bfad2f2fff MDL-30313 plagiarism support for unformated rsults
support for obtaining plagiarism detection results without
html formatting
2011-11-17 14:12:03 +13:00
AMOS bot 7d82204fab Automatically generated installer lang files 2011-11-17 00:55:25 +00:00
Eloy Lafuente (stronk7) 1f40b7e252 Merge branch 'MDL-29743' of git://github.com/timhunt/moodle 2011-11-17 01:22:22 +01:00
Sam Hemelryk 28ab9dbe98 Merge branch 'MDL-29893-master' of git://github.com/ankitagarwal/moodle 2011-11-17 13:11:46 +13:00
Eloy Lafuente (stronk7) d647c2d608 Merge branch 'MDL-30069' of git://github.com/timhunt/moodle 2011-11-17 00:45:00 +01:00
Eloy Lafuente (stronk7) e929eb0353 Merge branch 'MDL-30122' of git://github.com/timhunt/moodle 2011-11-17 00:33:54 +01:00
Eloy Lafuente (stronk7) b22dc5374c Merge branch 'MDL-30167' of git://github.com/timhunt/moodle 2011-11-17 00:29:18 +01:00
Eloy Lafuente (stronk7) e5bac3491a Merge branch 'MDL-30182' of git://github.com/timhunt/moodle 2011-11-17 00:18:25 +01:00
Eloy Lafuente (stronk7) 2c9073ab2a Merge branch 'MDL-30186' of git://github.com/timhunt/moodle 2011-11-17 00:11:29 +01:00
Eloy Lafuente (stronk7) 0918488dec Merge branch 'MDL-30199' of git://github.com/timhunt/moodle 2011-11-17 00:08:18 +01:00
Eloy Lafuente (stronk7) 85e013ef79 Merge branch 'MDL-30266-master' of git://github.com/sammarshallou/moodle 2011-11-17 00:05:45 +01:00
Eloy Lafuente (stronk7) 7f8dc336aa Merge branch 'MDL-30209' of git://github.com/timhunt/moodle 2011-11-17 00:02:02 +01:00
Eloy Lafuente (stronk7) 69f9e7f3e4 Merge branch 'MDL-30300' of git://github.com/timhunt/moodle 2011-11-17 00:00:12 +01:00
Nadav Kavalerchik 7a25d39873 MDL-27516 Several CSS fixes for right to left languages 2011-11-17 11:42:12 +13:00
Eloy Lafuente (stronk7) cfaa2bd744 Merge branch 'MDL-30274-master-1' of git://git.luns.net.uk/moodle 2011-11-16 22:51:51 +01:00
Mary Evans 7d058f73e2 MDL-30309 FIX typo in CSS in theme_anomaly 2011-11-16 21:15:24 +00:00
Eloy Lafuente (stronk7) 2fee72e19b Merge branch 'MDL-30275-master' of git://github.com/sammarshallou/moodle 2011-11-16 21:29:25 +01:00
Tim Hunt 3d17cd3f1c MDL-30300 qbehaviours: convert to the new is_compatible_question API. 2011-11-16 11:11:10 +00:00
Tim Hunt 15d660a8fd MDL-30300 question behaviours: improve q compatibility API. 2011-11-16 10:52:19 +00:00
Ankit Kumar Agarwal e079e82c08 MDL-29893 Fixing issues with password generation function 2011-11-16 12:01:57 +05:30
Ankit Kumar Agarwal 63a1625d78 MDL-30279 SCORM Fixing sql errors during cron 2011-11-16 09:47:00 +05:30
Dongsheng Cai ad7612f597 MDL-29476 web service improvements
1. moodle_enrol_get_users_courses should return number of participants,
2. moodle_user_get_users_by_courseid should limit the fields to be returned
2011-11-16 12:02:24 +08:00
Jerome Mouneyrac af03513f93 MDL-30268 add 'Can download files' field to service 2011-11-16 11:51:03 +08:00
andrew d3e303470d MDL-27703 gradebook: altered an sql query in the user report. join with no on clause causes an error in some DBs 2011-11-16 09:56:46 +08:00
AMOS bot 7e82d9c61d Automatically generated installer lang files 2011-11-16 00:55:51 +00:00
Mary Evans 799cc1cfcb Merge branch 'MDL-30243' of github.com:lazydaisy/moodle into MDL-30243 2011-11-15 22:21:05 +00:00
Mary Evans 0e91846730 MDL-30243 Add custom settings to theme_afterburner 2011-11-15 22:20:26 +00:00
Dan Marsden 23b3e448b2 SCORM MDL-25757 fix for saving of duplicate CMI values - thanks to Evan Irving-Pease for the patch 2011-11-16 10:50:55 +13:00
Dan Marsden 801fdcfd3f MDL-29290 - few more coding guideline fixes with function 2011-11-16 08:51:58 +13:00
Dan Marsden 20d694ac59 MDL-29290 fix spacing 2011-11-16 08:51:57 +13:00
Dan Marsden cffd976ee3 MDL-29290 Enrol IMSEnterprise - use correct course defaults - thanks to Adam Barbary for the fix 2011-11-16 08:51:57 +13:00
Dan Marsden d3bf0a950f SCORM AICC MDL-30223 invalid call to update_record - very hard to test/reproduce. 2011-11-16 08:48:50 +13:00
sam marshall 24ad1d1feb MDL-30275 Assignment activity description not displayed on course page 2011-11-15 15:24:08 +00:00
Andrew Robert Nicols 4a645a6821 MDL-30274 Correct typo of loginpage variable 2011-11-15 15:16:47 +00:00
sam marshall 770b7f6c9f MDL-30203 RSS: Remove broken 'podcasting' support that thinks mailto links are attachments 2011-11-15 14:06:15 +00:00
sam marshall 0c9cb1bc19 MDL-30266 completionlib fix unit test breakage (regression) 2011-11-15 14:05:20 +00:00
Tim Hunt 08502b574d MDL-30182 quiz grade.php should support userid param. 2011-11-15 11:36:10 +00:00
Tim Hunt 7238cd2ef0 MDL-30209 quiz refers to wrong rendere method in two places.
Thanks to Dan Marsden for working out the fix.
2011-11-15 11:23:03 +00:00
Tim Hunt 0f7477c07f MDL-30199 qtype numerical etc. Don't require tolerance for answer *. 2011-11-15 11:22:00 +00:00
Tim Hunt f7094147b1 MDL-30186 qtype editing forms should use advcheckbox. 2011-11-15 11:21:27 +00:00
Tim Hunt 6c314a3681 MDL-30167 qtype_numerical: notice when required unit is not in the answer. 2011-11-15 11:19:46 +00:00
Tim Hunt 94c0ec2159 MDL-30185 question engine reporting: add redundant where to query for perf.
Without this, MySQL fails to cope.
2011-11-15 11:19:15 +00:00
Tim Hunt 5cc021a00b MDL-30069 Question type icons missing in lots of places. 2011-11-15 11:17:18 +00:00
Henning Bostelmann 6336bd914a MDL-29350 Prevent duplication of groupings when copying activities
This patch also includes a database upgrade to correct data produced as a
result of this bug.
2011-11-15 11:12:40 +00:00
Tim Hunt cb1564b1ce MDL-29743 quiz: Finish attempt link didn't save responses in some brosers.
Thanks to Brandon Browning for identifying the problem. It is quite subtle why this typo would have this effect. You need to look at the implementation of the preventDefault method in lib/yui/3.4.1/build/event-base/event-base.js.
2011-11-15 11:10:51 +00:00
Oleg Sychev 1067775131 MDL-29095: initialise_question_instance should use extra_question_fields
Shortanswer question type converted to use extra question fields.

Signed-off-by: Oleg Sychev <oasychev@gmail.com>
2011-11-15 11:10:14 +00:00
Eloy Lafuente (stronk7) 6be90ce05f Moodle release 2.2beta 2011-11-15 11:04:15 +01:00
Eloy Lafuente (stronk7) 1dda2cf54f Fix permissions 2011-11-15 10:58:09 +01:00
Eloy Lafuente (stronk7) b51c46fc1a Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-11-15 10:54:40 +01:00
AMOS bot 037dd8156d Automatically generated installer lang files 2011-11-15 00:55:17 +00:00
Eloy Lafuente (stronk7) 9bddc37f97 MDL-29956 ims-cc - whitespace cleanup 2011-11-14 23:35:12 +01:00
Eloy Lafuente (stronk7) acb8164304 MDL-29956 ims-cc - disabling export and cleaning some unused code
This commits cleans some code (settings and dependencies)
and one file included previous by error.

Also it disables all the IMS-CC export feature by default, being
possible to enable it under demand by setting (@ config.php):

$CFG->enablebackupconverters = true;
2011-11-14 21:32:05 +01:00
Darko Miletic 584f92962d Updated text conversion to read and store safe xml strings. 2011-11-14 21:25:08 +01:00
Mark Nielsen 726a770949 MDL-29956: Common Cartridge should handle HTML content more natively (r17188, r17210:17265)
Also implemented support for LTI icon during import.
2011-11-14 21:25:08 +01:00
Mark Nielsen 91e6ca6e71 MDL-29956: Implement export of Quiz activity (r16977, r17032) 2011-11-14 21:25:08 +01:00
Mark Nielsen 42dffc6feb MDL-29956: Implement common cartridge export (r16882) 2011-11-14 21:25:08 +01:00
David Mudrak 3319af85a9 MDL-29793 Advanced grading - do not execute the restore step if the grading.xml is missing 2011-11-14 21:11:41 +01:00
David Mudrak c309e4f05e MDL-29793 Advanced grading backup - fixed the recently renamed DB field 2011-11-14 21:11:00 +01:00
Rod Norfor ad6fbb6074 MDL-30259 TinyMCE: Add spellchecker language options 2011-11-14 16:26:31 +00:00
Eloy Lafuente (stronk7) 98ca9e8480 MDL-27622 theme_mymobile: add it to core themes 2011-11-14 12:45:48 +01:00
Eloy Lafuente (stronk7) 8d78644bcc Merge branch 'lti' of git://github.com/scriby/moodle 2011-11-14 12:37:43 +01:00
Eloy Lafuente (stronk7) 6a7998f9a1 MDL-20534 lti: bump version and requires to current before integration, yay! 2011-11-14 12:35:52 +01:00
Sam Hemelryk 1ae9aa2b8f Merged MDL-29108 Advanced grading 2011-11-14 22:01:05 +13:00
David Mudrak 053d290c0d Merge pull request #25 from marinaglancy/wip-nov14-rubric 2011-11-14 00:20:16 -08:00
Dan Marsden 9a68ff24d2 MDL-27036 AICC HACP handling - add missing check for correct user with has_capability. 2011-11-14 21:20:14 +13:00
Marina Glancy 3c2b3cb3ee MDL-29108: added comments, declared functions visibility, renamed variables; also fixed MDL-30240 2011-11-14 14:53:14 +08:00
Marina Glancy b1add93e47 MDL-30241: fixing Javascript to work in IE as well 2011-11-14 14:48:28 +08:00
Sam Hemelryk 364fe13b11 Merge branch 'MDL-28670' of git://github.com/nebgor/moodle 2011-11-14 17:49:47 +13:00
Aparup Banerjee 8887601196 MDL-28670 webservice : (review) changes improving performance 2011-11-14 11:25:36 +08:00
Mary Evans f1c0d7bdce MDL-30243 Add custom settings to theme_afterburner 2011-11-14 01:29:21 +00:00
Sam Hemelryk 6335838604 Merge branch 'wip-MDL-30010' of git://github.com/lazydaisy/moodle 2011-11-14 12:10:17 +13:00
Eloy Lafuente (stronk7) da2e3c12db Merge branch 'MDL-30026' of git://github.com/stronk7/moodle 2011-11-13 19:35:13 +01:00
Eloy Lafuente (stronk7) da3a1f3ae7 MDL-30026 improve session lock - stronger detection for oracle 2011-11-13 19:23:53 +01:00
Eloy Lafuente (stronk7) d16b0197de MDL-30026 improve session lock - mssql workaround for bug with scalar returned values 2011-11-13 19:06:44 +01:00
Eloy Lafuente (stronk7) 12dfd6df01 MDL-30026 improve session lock - unit tests & minor comment fixup 2011-11-13 19:05:57 +01:00
AMOS bot 326d05832e Automatically generated installer lang files 2011-11-13 15:14:31 +01:00
David Mudrak 6f07a6a2ea MDL-29108 Advanced grading - renaming DB field forminstanceid to instanceid
As a response to Sam's review (7.4)
2011-11-13 14:07:33 +01:00
David Mudrak 71ab436aa9 MDL-29108 Advanced grading - renaming DB fields formid to definitionid
As a response to Sam's review (7.1 and 7.3)
2011-11-13 14:03:38 +01:00
David Mudrak 9e32368b29 MDL-29108 Remove all associated grading areas when the context is being deleted 2011-11-13 13:50:00 +01:00
AMOS bot b3e5e774e3 Automatically generated installer lang files 2011-11-13 00:55:17 +00:00
Eloy Lafuente (stronk7) cf2de1cf10 MDL-27622 theme_mymobile: whitespace fixes 2011-11-11 20:22:41 +01:00
Chris Scribner 42a2c7f16e MDL-20534 lti: A8. Removing locallib.php require from lib.php 2011-11-11 13:54:54 -05:00
Chris Scribner 2575332b86 MDL-20534 lti: Updating call to lti_add_instance with 2nd argument. 2011-11-11 13:47:53 -05:00
Chris Scribner d00d058d55 MDL-20534 lti: Fixing some language in lti's index.php 2011-11-11 13:40:59 -05:00
Chris Scribner 78d52bf87c MDL-20534 lti: Getting rid of references to "Basic" LTI in language file 2011-11-11 13:34:24 -05:00
Chris Scribner 89b7bbe9ee MDL-20534 lti: A9. Fixing issues with the course tool popup not disappearing. 2011-11-11 13:31:09 -05:00
Eloy Lafuente (stronk7) dddfaa73cb Merge branch 'MDL-30057' of git://github.com/stronk7/moodle 2011-11-11 15:47:33 +01:00
Darko Miletic 4febc0a013 Added Moodle 1.9 -> Moodle 2 converter 2011-11-11 08:31:34 -05:00
David Mudrak c15b933c69 MDL-29108 Orphaned areas are excluded from search results
If for any reason the referenced context does not exist any more, the
forms defined in relevant areas are considered removed (even if their
records still exist in the database).
2011-11-11 14:16:17 +01:00
David Mudrak a3b37e4b6e MDL-29483 The capability to manage grading forms can be overridden at the Assignment module level 2011-11-11 13:59:04 +01:00
David Mudrak 1dea75b8d1 MDL-29108 Do not display grading method selector for non-privileged users
The patch checks the required capability before it displays the grading
method selectors in the modform.
2011-11-11 13:58:45 +01:00
Eloy Lafuente (stronk7) 0852418307 Merge branch 'MDL-29945' of git://github.com/timhunt/moodle 2011-11-11 12:54:11 +01:00
Tim Hunt 1dd21f4058 MDL-29945 incorrect logic when testing if a qtype can be uninstalled.
Thanks to Andrew Davis for catching this during testing.
2011-11-11 11:40:07 +00:00
David Mudrak 217116d414 MDL-29108 Improving get_grading_method() documentation
As a response to Sam's review (10)
2011-11-11 12:18:02 +01:00
David Mudrak 794cea253c MDL-29108 Fixing a typo
Spotted by Sam during the review (23)
2011-11-11 12:17:01 +01:00
David Mudrak 6f19a2a98b MDL-29108 Removing global variables where they are not needed
Spotted by Sam during the review (17.1 and 17.3)
2011-11-11 12:10:02 +01:00
Jerome Mouneyrac 07a90ec313 MDL-28629 more checks during web service authentication 2011-11-11 15:07:18 +08:00
Sam Hemelryk e2b38d06cf MDL-27622 theme_mymobile: quick regression fix of var 2011-11-11 18:36:10 +13:00
Sam Hemelryk 025d304ad3 Merge branch 'wip-MDL-27622-master' of git://github.com/samhemelryk/moodle 2011-11-11 18:35:13 +13:00
Aparup Banerjee 6cf8f401ba MDL-27037 wiki : fixed whitespace. 2011-11-11 13:28:46 +08:00
Mayank Gupta dc0cabb488 MDL-27037, wiki does not support visiblegroups functionality 2011-11-11 13:28:41 +08:00
Aparup Banerjee d48dae7507 Merge branch 'wip-MDL-26712-master' of git://github.com/phalacee/moodle 2011-11-11 11:26:22 +08:00
Eloy Lafuente (stronk7) 8ac9d33f49 Merge branch 'MDL-26647-master' of git://github.com/sammarshallou/moodle
Conflicts:
	lib/db/upgrade.php
	report/completion/index.php
	report/progress/index.php
	version.php
2011-11-11 03:37:55 +01:00
Eloy Lafuente (stronk7) 032bfca82a Merge branch 'MDL-29035-master' of git://github.com/ankitagarwal/moodle 2011-11-11 02:42:40 +01:00
Eloy Lafuente (stronk7) 509361cfde Merge branch 'MDL-22351' of git://github.com/lazydaisy/moodle
Conflicts:
	theme/anomaly/style/general.css

Merged with some changes done with the introduction of
the new report plugins (MDL-29030)
2011-11-11 02:31:21 +01:00
Stephen Bourget 8c93ab4e0f MDL-29529 Assignment: Fix regression caused by MDL-27638 2011-11-11 01:23:47 +01:00
Eloy Lafuente (stronk7) 06b3d9c8c0 Merge branch 'wip-MDL-25511' of git://github.com/lazydaisy/moodle
Conflicts:
	theme/canvas/style/course.css
2011-11-11 00:20:13 +01:00
Eloy Lafuente (stronk7) d59df6582b Merge branch 'MDL-29808' of git://github.com/timhunt/moodle
Conflicts:
	question/type/upgrade.txt

There were already one just added upgrade.txt file so this ended
conflicting. Reviewed the contents, I've deleted the less detailed
note about pluginname, leaving the longer description added by Tim.

Ciao :-)
2011-11-10 21:54:36 +01:00
Eloy Lafuente (stronk7) 47c6991a8e Merge branch 'MDL-29945' of git://github.com/timhunt/moodle 2011-11-10 21:47:22 +01:00
Tim Hunt 226b312472 MDL-29808 qtypes: use standard pluginname strings and update version.php
AMOS BEGIN
 MOV [calculated,qtype_calculated],[pluginname,qtype_calculated]
 MOV [calculated_help,qtype_calculated],[pluginname_help,qtype_calculated]
 MOV [calculated_link,qtype_calculated],[pluginname_link,qtype_calculated]
 MOV [addingcalculated,qtype_calculated],[pluginnameadding,qtype_calculated]
 MOV [editingcalculated,qtype_calculated],[pluginnameediting,qtype_calculated]
 MOV [calculatedsummary,qtype_calculated],[pluginnamesummary,qtype_calculated]

 MOV [calculatedmulti,qtype_calculatedmulti],[pluginname,qtype_calculatedmulti]
 MOV [calculatedmulti_help,qtype_calculatedmulti],[pluginname_help,qtype_calculatedmulti]
 MOV [calculatedmulti_link,qtype_calculatedmulti],[pluginname_link,qtype_calculatedmulti]
 MOV [addingcalculatedmulti,qtype_calculatedmulti],[pluginnameadding,qtype_calculatedmulti]
 MOV [editingcalculatedmulti,qtype_calculatedmulti],[pluginnameediting,qtype_calculatedmulti]
 MOV [calculatedmultisummary,qtype_calculatedmulti],[pluginnamesummary,qtype_calculatedmulti]

 MOV [calculatedsimple,qtype_calculatedsimple],[pluginname,qtype_calculatedsimple]
 MOV [calculatedsimple_help,qtype_calculatedsimple],[pluginname_help,qtype_calculatedsimple]
 MOV [calculatedsimple_link,qtype_calculatedsimple],[pluginname_link,qtype_calculatedsimple]
 MOV [addingcalculatedsimple,qtype_calculatedsimple],[pluginnameadding,qtype_calculatedsimple]
 MOV [editingcalculatedsimple,qtype_calculatedsimple],[pluginnameediting,qtype_calculatedsimple]
 MOV [calculatedsimplesummary,qtype_calculatedsimple],[pluginnamesummary,qtype_calculatedsimple]

 MOV [description,qtype_description],[pluginname,qtype_description]
 MOV [description_help,qtype_description],[pluginname_help,qtype_description]
 MOV [addingdescription,qtype_description],[pluginnameadding,qtype_description]
 MOV [editingdescription,qtype_description],[pluginnameediting,qtype_description]
 MOV [descriptionsummary,qtype_description],[pluginnamesummary,qtype_description]

 MOV [essay,qtype_essay],[pluginname,qtype_essay]
 MOV [essay_help,qtype_essay],[pluginname_help,qtype_essay]
 MOV [essay_link,qtype_essay],[pluginname_link,qtype_essay]
 MOV [addingessay,qtype_essay],[pluginnameadding,qtype_essay]
 MOV [editingessay,qtype_essay],[pluginnameediting,qtype_essay]
 MOV [essaysummary,qtype_essay],[pluginnamesummary,qtype_essay]

 MOV [match,qtype_match],[pluginname,qtype_match]
 MOV [match_help,qtype_match],[pluginname_help,qtype_match]
 MOV [match_link,qtype_match],[pluginname_link,qtype_match]
 MOV [addingmatch,qtype_match],[pluginnameadding,qtype_match]
 MOV [editingmatch,qtype_match],[pluginnameediting,qtype_match]
 MOV [matchsummary,qtype_match],[pluginnamesummary,qtype_match]

 MOV [missingtype,qtype_missingtype],[pluginname,qtype_missingtype]
 MOV [addingmissingtype,qtype_missingtype],[pluginnameadding,qtype_missingtype]
 MOV [editingmissingtype,qtype_missingtype],[pluginnameediting,qtype_missingtype]

 MOV [multianswer,qtype_multianswer],[pluginname,qtype_multianswer]
 MOV [multianswer_help,qtype_multianswer],[pluginname_help,qtype_multianswer]
 MOV [multianswer_link,qtype_multianswer],[pluginname_link,qtype_multianswer]
 MOV [addingmultianswer,qtype_multianswer],[pluginnameadding,qtype_multianswer]
 MOV [editingmultianswer,qtype_multianswer],[pluginnameediting,qtype_multianswer]
 MOV [multianswersummary,qtype_multianswer],[pluginnamesummary,qtype_multianswer]

 MOV [multichoice,qtype_multichoice],[pluginname,qtype_multichoice]
 MOV [multichoice_help,qtype_multichoice],[pluginname_help,qtype_multichoice]
 MOV [multichoice_link,qtype_multichoice],[pluginname_link,qtype_multichoice]
 MOV [addingmultichoice,qtype_multichoice],[pluginnameadding,qtype_multichoice]
 MOV [editingmultichoice,qtype_multichoice],[pluginnameediting,qtype_multichoice]
 MOV [multichoicesummary,qtype_multichoice],[pluginnamesummary,qtype_multichoice]

 MOV [numerical,qtype_numerical],[pluginname,qtype_numerical]
 MOV [numerical_help,qtype_numerical],[pluginname_help,qtype_numerical]
 MOV [numerical_link,qtype_numerical],[pluginname_link,qtype_numerical]
 MOV [addingnumerical,qtype_numerical],[pluginnameadding,qtype_numerical]
 MOV [editingnumerical,qtype_numerical],[pluginnameediting,qtype_numerical]
 MOV [numericalsummary,qtype_numerical],[pluginnamesummary,qtype_numerical]

 MOV [random,qtype_random],[pluginname,qtype_random]
 MOV [random_help,qtype_random],[pluginname_help,qtype_random]
 MOV [editingrandom,qtype_random],[pluginnameediting,qtype_random]

 MOV [shortanswer,qtype_shortanswer],[pluginname,qtype_shortanswer]
 MOV [shortanswer_help,qtype_shortanswer],[pluginname_help,qtype_shortanswer]
 MOV [shortanswer_link,qtype_shortanswer],[pluginname_link,qtype_shortanswer]
 MOV [addingshortanswer,qtype_shortanswer],[pluginnameadding,qtype_shortanswer]
 MOV [editingshortanswer,qtype_shortanswer],[pluginnameediting,qtype_shortanswer]
 MOV [shortanswersummary,qtype_shortanswer],[pluginnamesummary,qtype_shortanswer]

 MOV [truefalse,qtype_truefalse],[pluginname,qtype_truefalse]
 MOV [truefalse_help,qtype_truefalse],[pluginname_help,qtype_truefalse]
 MOV [truefalse_link,qtype_truefalse],[pluginname_link,qtype_truefalse]
 MOV [addingtruefalse,qtype_truefalse],[pluginnameadding,qtype_truefalse]
 MOV [editingtruefalse,qtype_truefalse],[pluginnameediting,qtype_truefalse]
 MOV [truefalsesummary,qtype_truefalse],[pluginnamesummary,qtype_truefalse]
AMOS END
2011-11-10 19:12:30 +00:00
Tim Hunt 646791794d MDL-29808 qformats: use standard pluginname string and add version.php
AMOS BEGIN
 MOV [aiken,qformat_aiken],[pluginname,qformat_aiken]
 MOV [aiken_help,qformat_aiken],[pluginname_help,qformat_aiken]
 MOV [aiken_link,qformat_aiken],[pluginname_link,qformat_aiken]
 MOV [blackboard,qformat_blackboard],[pluginname,qformat_blackboard]
 MOV [blackboard_help,qformat_blackboard],[pluginname_help,qformat_blackboard]
 MOV [blackboard_six,qformat_blackboard_six],[pluginname,qformat_blackboard_six]
 MOV [blackboard_six_help,qformat_blackboard_six],[pluginname_help,qformat_blackboard_six]
 MOV [examview,qformat_examview],[pluginname,qformat_examview]
 MOV [examview_help,qformat_examview],[pluginname_help,qformat_examview]
 MOV [gift_help,qformat_gift],[pluginname_help,qformat_gift]
 MOV [gift_link,qformat_gift],[pluginname_link,qformat_gift]
 MOV [learnwise,qformat_learnwise],[pluginname,qformat_learnwise]
 MOV [learnwise_help,qformat_learnwise],[pluginname_help,qformat_learnwise]
 MOV [missingword,qformat_missingword],[pluginname,qformat_missingword]
 MOV [missingword_help,qformat_missingword],[pluginname_help,qformat_missingword]
 MOV [missingword_link,qformat_missingword],[pluginname_link,qformat_missingword]
 MOV [multianswer,qformat_multianswer],[pluginname,qformat_multianswer]
 MOV [multianswer_help,qformat_multianswer],[pluginname_help,qformat_multianswer]
 MOV [multianswer_link,qformat_multianswer],[pluginname_link,qformat_multianswer]
 MOV [webct_help,qformat_webct],[pluginname_help,qformat_webct]
 MOV [webct_link,qformat_webct],[pluginname_link,qformat_webct]
 MOV [xhtml,qformat_xhtml],[pluginname,qformat_xhtml]
 MOV [xhtml_help,qformat_xhtml],[pluginname_help,qformat_xhtml]
 MOV [xhtml_link,qformat_xhtml],[pluginname_link,qformat_xhtml]
 MOV [xml_help,qformat_xml],[pluginname_help,qformat_xml]
 MOV [xml_link,qformat_xml],[pluginname_link,qformat_xml]
AMOS END
2011-11-10 19:12:28 +00:00
Tim Hunt 75a31c9039 MDL-29808 qbehaviours: update to use ->dependencies in version.php 2011-11-10 19:12:25 +00:00
Tim Hunt 828788f03b MDL-29945 plugin management: don't show Uninstall links for required plugins. 2011-11-10 19:11:24 +00:00
Eloy Lafuente (stronk7) 8f1a0d21cb MDL-28277 scorm report - set interaction as standard + version component 2011-11-10 16:55:54 +01:00
Eloy Lafuente (stronk7) cff6d78a7b Merge branch 'MDL-30027' of git://github.com/mouneyrac/moodle 2011-11-10 01:58:57 +01:00
Eloy Lafuente (stronk7) b01095d1e0 Merge branch 'MDL-30043' of git://github.com/mouneyrac/moodle 2011-11-10 01:49:56 +01:00
Eloy Lafuente (stronk7) af85aa7bb6 Merge branch 'MDL-29931' of git://github.com/mouneyrac/moodle 2011-11-10 01:43:07 +01:00
Eloy Lafuente (stronk7) 9fc402e47d Merge branch 'MDL-28426' of git://github.com/timhunt/moodle 2011-11-10 01:32:01 +01:00
Eloy Lafuente (stronk7) f3bf5eba51 Merge branch 'MDL-30145' of git://github.com/timhunt/moodle 2011-11-10 00:25:45 +01:00
Eloy Lafuente (stronk7) 3c37f0adbc Merge branch 'MDL-30158-master' of git://github.com/ankitagarwal/moodle 2011-11-10 00:22:13 +01:00
Eloy Lafuente (stronk7) 7ca578dea9 Merge branch 'w44_MDL-30148_m22_guestpass' of git://github.com/skodak/moodle 2011-11-09 23:59:02 +01:00
Eloy Lafuente (stronk7) d64cb2fb73 Merge branch 'w44_MDL-30131_m22_enrolcaching' of https://github.com/skodak/moodle 2011-11-09 23:47:01 +01:00
Sam Hemelryk e3dfd1a1d9 Merged branch 'w44_MDL-29030_m22_reports' of git://github.com/skodak/moodle.git with conflict resolution 2011-11-10 10:15:50 +13:00
David Mudrak 241d9463de MDL-29798 Final clean-up before submitting for the integration review 2011-11-09 22:08:09 +01:00
Sam Hemelryk 7d99144e83 Merge branch 'w44_MDL-30150_m22_pagetypefrankenstyle' of git://github.com/skodak/moodle 2011-11-10 09:41:38 +13:00
Eloy Lafuente (stronk7) ff64599f25 Merge branch 'w44_MDL-29897_m22_upgradetxt' of git://github.com/skodak/moodle 2011-11-09 16:35:57 +01:00
Eloy Lafuente (stronk7) b5b99e0b7a NOBUG: Whitespace fixes 2011-11-09 16:32:30 +01:00
Eloy Lafuente (stronk7) 3fa5cb0bea Merge branch 'MDL-27542b' of git://github.com/rwijaya/moodle 2011-11-09 15:55:07 +01:00
Aparup Banerjee b965ee236c Merge branch 'MDL-29620-workshop-sequence' of git://github.com/mudrd8mz/moodle 2011-11-09 17:55:04 +08:00
Eloy Lafuente (stronk7) c4bdf6b2d4 Merge branch 'w44_MDL-30151_m22_initialforumsubscribe' of git://github.com/skodak/moodle 2011-11-09 10:05:40 +01:00
Sun Zhigang 29a9ba9130 MDL-29656 Fix bad string reference 2011-11-09 16:47:16 +08:00
Eloy Lafuente (stronk7) 7654b7bbc1 Merge branch 'MDL-28277-master' of git://github.com/ankitagarwal/moodle 2011-11-09 09:43:18 +01:00
Ankit Kumar Agarwal f9ab70a908 MDL-28277 Changing optional_param to optional_param_array 2011-11-09 13:29:26 +05:30
Dan Poltawski 39b7715099 MDL-29696 mod/data - fixed page continuing after footer. 2011-11-09 15:42:07 +08:00
Sun Zhigang 81bb0556d9 MDL-29722 - No default guest enrol instance for requested courses 2011-11-09 15:20:00 +08:00
Aparup Banerjee 024f0f7374 Merge branch 'MDL-29977-mnet-masquerade' of git://github.com/mudrd8mz/moodle 2011-11-09 13:40:24 +08:00
Sam Hemelryk 3c0c2bf080 MDL-27622 theme_mymobile: Pre-integration clean up 2011-11-09 18:18:41 +13:00
Aparup Banerjee 92f6c2eb7f Merge branch 'MDL-30021' of git://github.com/timhunt/moodle 2011-11-09 12:19:20 +08:00
Aparup Banerjee 097ba12ba0 Merge branch 'MDL-29058' of git://github.com/timhunt/moodle 2011-11-09 11:29:45 +08:00
Dan Poltawski 2d7ad201ac MDL-29812 partcipiant report - breaks when filtering by user 2011-11-09 11:17:17 +08:00
Aparup Banerjee 5b653c75dd Merge branch 'wip-MDL-24200-master' of git://github.com/phalacee/moodle 2011-11-09 11:05:32 +08:00
Mary Evans 4db41cbdcf MDL-25511-theme_canvas tidy up CORE css files 2011-11-09 02:22:36 +00:00
Eloy Lafuente (stronk7) b7830daba1 Merge branch 'master_MDL-29159' of git://github.com/danmarsden/moodle 2011-11-09 02:20:26 +01:00
Eloy Lafuente (stronk7) 0a9ed36c9e Merge branch 'master_MDL-30146' of git://github.com/danmarsden/moodle 2011-11-09 02:13:38 +01:00
Eloy Lafuente (stronk7) ec25a72c4d Merge branch 'master_MDL-27036' of git://github.com/danmarsden/moodle 2011-11-09 02:03:25 +01:00
Eloy Lafuente (stronk7) df087b865b Merge branch 'master_MDL-30041' of git://github.com/danmarsden/moodle 2011-11-09 01:34:08 +01:00
Eloy Lafuente (stronk7) e7ec46fc59 MDL-28277 SCORM some whitespace and MOODLE_INTERNAL fixes 2011-11-09 01:30:51 +01:00
Eloy Lafuente (stronk7) 253b3231b9 Merge branch 'MDL-28277-master' of git://github.com/ankitagarwal/moodle 2011-11-09 01:20:06 +01:00
Dan Poltawski c1733742c6 MDL-29803 report/logs - don't retrieve all users uncessarily
Also remove uncessary retrieval of idnumber

Helps display the main logs page on large sites without running out of
memory
2011-11-09 00:49:36 +01:00
David Mudrak 9faf837fc0 Moved CSS into the base theme to make the UI friendly in all themes by default 2011-11-08 23:58:10 +01:00
David Mudrak 37065c2e06 MDL-29793 Advanced grading forms attached to activity modules can be restored now 2011-11-08 23:33:40 +01:00
Colin Chambers e3ab75de2b MDL-30185 reduce height of true/false question type fields 2011-11-08 16:18:07 +00:00
David Mudrak 9b553d472e MDL-29793 Advanced grading forms attached to activity modules are included in the backup now 2011-11-08 16:25:58 +01:00
Aparup Banerjee 98901d3ea9 Merge branch 'MDL-29739' of git://github.com/timhunt/moodle 2011-11-08 20:34:41 +08:00
Eloy Lafuente (stronk7) 8f76418516 MDL-20534 lti: added missing MOODLE_INTERNAL checks 2011-11-08 12:09:49 +01:00
Aparup Banerjee 3c905de59d Merge branch 'MDL-29970' of git://github.com/timhunt/moodle 2011-11-08 16:48:59 +08:00
David Mudrak 3e5e7004c5 Merge pull request #24 from marinaglancy/wip-nov08-rubric 2011-11-08 00:23:45 -08:00
Aparup Banerjee 3730e077fc Merge branch 'wip-mdl-27521-master' of git://github.com/phalacee/moodle 2011-11-08 15:18:22 +08:00
Aparup Banerjee 3a21e47829 Merge branch 'wip-mdl-27790-modified' of git://github.com/rajeshtaneja/moodle 2011-11-08 14:50:16 +08:00
Marina Glancy c97933ffa3 MDL-30161: link from gradebook (grading analysis) only appears now in Grader report but for all items; in User report the link under activity name contains userid 2011-11-08 14:09:50 +08:00
Aparup Banerjee 7e63edc42f Merge branch 'MDL-30135' of git://github.com/timhunt/moodle 2011-11-08 11:43:49 +08:00
Aparup Banerjee d4bdd01bd2 Merge branch 'MDL-30137' of git://github.com/timhunt/moodle 2011-11-08 11:37:59 +08:00
Rajesh Taneja 687f512d88 MDL-27790 Backup: Added warning message to let user know that temporary course will be created for restoration process 2011-11-08 11:37:48 +08:00
Rajesh Taneja 416128379f MDL-27790 Backup: temperory course will be deleted in case of exception and cancellation of restore process 2011-11-08 11:37:43 +08:00
Aparup Banerjee 5d788e38ff MDL-30154 Repositories : fixed whitespace. 2011-11-08 11:29:31 +08:00
Aparup Banerjee 7a3a8fd0c5 Merge branch 'MDL-30154_master_wip' of git://github.com/grabs/moodle 2011-11-08 11:15:01 +08:00
Eloy Lafuente (stronk7) 419c4f54c5 MDL-20534 lti: comments cleanup 2011-11-08 03:36:26 +01:00
Marina Glancy 8545f86cc9 Fixed small bug in displaying locked outcomes in assignment grade form 2011-11-08 10:34:23 +08:00
Eloy Lafuente (stronk7) 64ce589b39 MDL-20534 lti: various fixes 2011-11-08 03:31:44 +01:00
Marina Glancy 71380f2f14 MDL-30061: advanced grading evaluation freezes now if grade is locked or overriden 2011-11-08 10:06:33 +08:00
Eloy Lafuente (stronk7) b9fbe554ef MDL-20534 lti: fix settings page, needs more work (B12) 2011-11-08 02:29:24 +01:00
Marina Glancy 050125d47e fixed bug that appeared when teacher grades student with a rubric for the first time 2011-11-08 09:15:42 +08:00
Eloy Lafuente (stronk7) 5f1362550f MDL-20534 lti: reformat queries and fix some errors 2011-11-08 02:12:39 +01:00
Eloy Lafuente (stronk7) c69bd1af4f MDL-20534 lti: various fixes to add/update_instance() 2011-11-08 02:11:53 +01:00
David Mudrak bb50c37651 MDL-30162 The grading method can be selected when creating new instance of the activity module 2011-11-08 01:54:36 +01:00
Sam Hemelryk ee16b8af34 Merge branch 'MDL-25823' of git://github.com/rwijaya/moodle 2011-11-08 13:10:00 +13:00
David Mudrak b2c16c6e51 Files embedded into the form description are now served by the core itself
The grading form description is in the core scope so it should be served
by the core, not by the plugin.
2011-11-08 01:06:47 +01:00
Sam Hemelryk 195ad02f4a Merge branch 'wip-MDL-30059-master' of git://github.com/phalacee/moodle 2011-11-08 13:00:00 +13:00
Eloy Lafuente (stronk7) 7fdee5b643 MDL-20534 lti: add component and set lti module as core one 2011-11-08 00:55:59 +01:00
Eloy Lafuente (stronk7) 3bc4f6336b MDL-20534 lti: fix last whitespace issues + borked lang file 2011-11-08 00:36:00 +01:00
Eloy Lafuente (stronk7) b5d68e50a6 MDL-20534 lti: A7, delete some unused/empty files 2011-11-08 00:01:01 +01:00
Sam Hemelryk 3e4fb0cf81 Merge branch 'MDL-30044-master' of git://github.com/ankitagarwal/moodle 2011-11-08 11:58:10 +13:00
Eloy Lafuente (stronk7) b1e9a121c9 MDL-20534 lti: fix some errors introduced by myself in the cleanup 2011-11-07 23:41:05 +01:00
Eloy Lafuente (stronk7) 6c64e8ac17 MDL-20534 lti: B3, A6, apply new external icons support to lti (MDL-30175) 2011-11-07 23:40:52 +01:00
Eloy Lafuente (stronk7) 5e1f727df7 MDL-20534 lti: B3, revert old outputlib hack for external icons 2011-11-07 23:35:58 +01:00
David Mudrak b02b7c5add MDL-30111 Rubric - reordered English strings by stringid 2011-11-07 23:23:38 +01:00
Martin Dougiamas de2eb195fe MDL-30111 Rubric - some English strings rewording 2011-11-07 23:19:51 +01:00
Sam Hemelryk daa1ed26cf Merge branch 'MDL-30175' of git://github.com/stronk7/moodle 2011-11-08 10:57:54 +13:00
Eloy Lafuente (stronk7) c443a1cdb6 MDL-30175 cm_info - add support to external url icon images 2011-11-07 22:14:13 +01:00
Andrew Robert Nicols 2a420f5cd4 MDL-30042: Sanitize httpwwwroot in mnet jump 2011-11-07 14:35:46 +00:00
Tony Levi bce6b3c70a MDL-24577: Fix mark all posts in this discussion read doesn't work completely correct 2011-11-07 12:59:26 +00:00
David Mudrak 903198de7b Merge pull request #23 from marinaglancy/wip-nov07-rubric 2011-11-07 04:47:29 -08:00
Tim Hunt 4a84c94bec MDL-30135 question formats: trans_format/get_format should be public.
They need to be used by third-party qtype developers.
2011-11-07 11:31:27 +00:00
Andrew Robert Nicols 7633f4b55b MDL-30165: Make repository file extension check case insensitive 2011-11-07 11:14:19 +00:00
Rossiani Wijaya d52777b486 MDL-27542 calendar export: fixed the following:
1. changing auth token to use user id instead of username
2. add fall back checking for old url
3. remove yui functionality to generate calendar url
4. add missing variable
5. fixed usercontext instance
2011-11-07 17:07:00 +08:00
Petr Skoda 274a7d3701 MDL-29030 add block page type upgrade 2011-11-07 09:13:51 +01:00
Marina Glancy 188e840b99 MDL-29481: when student is being regraded we try to pick up the latest saved but not submitted version of grading
There are no visible changes yet because at the moment rubric is only saved when it is submitted but this is a base for AJAX saving
2011-11-07 15:55:08 +08:00
Jason Fowler 483239087c MDL24200 - Admin Users - Changing the submit button to just a button to prevent it from taking focus when entering text. (Patch provided by Hubert Chathi) 2011-11-07 15:29:11 +08:00
Marina Glancy 13926e735d MDL-30159: fixed bug: When evaluating by advanced grading extra entries are inserted in grading_instances 2011-11-07 14:37:58 +08:00
Aparup Banerjee e88c193fb0 MDL-28670 webservice : added dimming of service name in security keys page if webservice is disabled or not on authorised list to access webservice. 2011-11-07 14:21:40 +08:00
Chris Scribner 5de15b83cc MDL-20534 lti: Replacing <<< strings with normal multi-line strings. 2011-11-07 01:05:42 -05:00
Ankit Kumar Agarwal 9e07e9a782 MDL-30158 Questions Cleaning up blackboard/format.php 2011-11-07 11:11:04 +05:30
Mark Nielsen 92d0dd9fb8 MDL-30059: Assignment Submission Notification Should Use Teacher's Timezone Rather Than Server Time 2011-11-07 13:32:49 +08:00
Marina Glancy ffbf4370a2 MDL-30023: rubric editor usability - automatically set scores for added levels 2011-11-07 13:07:43 +08:00
Marina Glancy 2d41a9115b Fixed small bug resulting in a warning message when creating new rubric 2011-11-07 13:07:30 +08:00
Eloy Lafuente (stronk7) a55c361955 MDL-20534 lti: various fixes 2011-11-06 22:05:35 -05:00
Eloy Lafuente (stronk7) fabd4fcf53 MDL-20534 lti: A4, add some todos towards unified Oauth 2011-11-06 22:05:11 -05:00
Eloy Lafuente (stronk7) fccacaa785 MDL-20534 lti: A2, cleanup upgrade and moodle1 conversion 2011-11-06 22:03:55 -05:00
Eloy Lafuente (stronk7) ea04a9f989 MDL-20534 lti: A3, coding style + some scope, constructors 2011-11-06 22:02:26 -05:00
Chris Scribner e27cb316aa MDL-20534 lti: A3, whitespace fixes (Changes by stronk7) 2011-11-06 22:00:40 -05:00
Chris Scribner 61eb12d4df MDL-20534 lti: A3, copyright and DOS lf fixed 2011-11-06 21:51:06 -05:00
Chris Scribner a0ba4ec675 Add unsupported service support. 2011-11-06 20:42:03 -05:00
Chris Scribner d8d0412168 Updating SSL settings & configuration for the LTI plugin. 2011-11-06 20:42:03 -05:00
Chris Scribner 55e89adf4d Adding securetoolurl and secureicon fields 2011-11-06 20:42:02 -05:00
Chris Scribner 1d4f052e46 Update role checking to check course role if module is not available 2011-11-06 20:42:02 -05:00
Chris Scribner 16cac56633 Fixing the method used to get LTI roles 2011-11-06 20:42:02 -05:00
Chris Scribner 6d462df856 Adding the ability to edit the LTI icon URL 2011-11-06 20:42:01 -05:00
Chris Scribner feb30fd891 Only consider configured tools when receiving LTI web service calls 2011-11-06 20:42:01 -05:00
Chris Scribner 558be8fcef Adding a comment about the ext_submit button 2011-11-06 20:42:00 -05:00
Chris Scribner 58e3a4f371 Preventing column names from wrapping on the instructor add tool page. 2011-11-06 20:42:00 -05:00
Chris Scribner c4d80efeb6 More work on the tool return page to help the user get the tool configured. 2011-11-06 20:42:00 -05:00
Chris Scribner 9d57ad1737 Fix a bug introduced recently that broke launches (adding the return url after signing). Trim the launch URL to prevent signature errors. 2011-11-06 20:41:59 -05:00
Chris Scribner 3dd9ca2430 Some bug fixing & mostly done with help message when an unsigned request doesn't work. 2011-11-06 20:41:59 -05:00
Chris Scribner 020eea1be8 Updating web service verification method to work for LTI messages that don't send a source id.
Adding extension so other plugins can handle LTI web service calls.
2011-11-06 20:41:59 -05:00
Chris Scribner d66865d95b Fixing a coding error. 2011-11-06 20:41:58 -05:00
Chris Scribner a390d4537c Leaving a little more room beneath embedded object so it doesn't get cut off on some themes. 2011-11-06 20:41:58 -05:00
Chris Scribner c07aec164f Implementing custom LTI icon support 2011-11-06 20:41:57 -05:00
Chris Scribner 57836e2403 Adding storage for overriding the instance specific icon. 2011-11-06 20:41:57 -05:00
Chris Scribner 57d1dffd38 Implementing the return URL.
Still needs some help text when an error occurs.
2011-11-06 20:41:57 -05:00
Chris Scribner 60bd82f61d Tested grade reading and deleting. Fixed bugs. 2011-11-06 20:41:56 -05:00
Chris Scribner 3ff01b2fb7 Adding the lis_outcome_service_url to the launch 2011-11-06 20:41:56 -05:00
Chris Scribner 5e078d62c6 Refactoring some code to use constants and deleting old services 2011-11-06 20:41:56 -05:00
Chris Scribner f17f49595c If no launch URL is specified, launch to the base URL of the tool. 2011-11-06 20:41:55 -05:00
Chris Scribner 67ddf8472b Removing some unused code. 2011-11-06 20:41:55 -05:00
Chris Scribner 32c079dc1a Updating LTI backup / restore 2011-11-06 20:41:54 -05:00
Chris Scribner cca9d3f769 Updating launch container for mobile devices 2011-11-06 20:41:54 -05:00
Chris Scribner f4f711d79b Updating LTI submission viewer 2011-11-06 20:41:54 -05:00
Chris Scribner a35626f9bc Adding warning icon 2011-11-06 20:41:53 -05:00
Chris Scribner b26dc53cca Adding help icons 2011-11-06 20:41:53 -05:00
Chris Scribner 795dff011f Updates to get the plugin to work side-by-side with the basicLTI plugin 2011-11-06 20:41:53 -05:00
Chris Scribner 7023b65ef5 Favor course tools over global tools 2011-11-06 20:41:52 -05:00
Chris Scribner 16e8f13084 Improving the experience of instructor managed tool types 2011-11-06 20:41:52 -05:00
Chris Scribner 606ab1a13e A couple bugfixes related to instructor defined tools 2011-11-06 20:41:51 -05:00
Chris Scribner 6831c7cd4b LTI plugin updates. Finishing support of course level plugins. 2011-11-06 20:41:51 -05:00
Chris Scribner b69dc42951 Fixing a couple issues with grade receipt 2011-11-06 20:41:51 -05:00
Chris Scribner 996b0fd961 Updates to lti plugin & progress on instructor management of course tools. 2011-11-06 20:41:50 -05:00
Chris Scribner dbb0fec9fd Renaming global functions to include lti prefix 2011-11-06 20:41:50 -05:00
Chris Scribner b9b2e7bbf8 Adding oauth body code (from Chuck), implemented outcome services (only replaceResult tested) 2011-11-06 20:41:49 -05:00
Chris Scribner aa6eca66df Setting some default parameters when adding an lti instance 2011-11-06 20:41:49 -05:00
Chris Scribner 844afad045 Tool base URLs don't need to start with http(s) 2011-11-06 20:41:49 -05:00
Chris Scribner 879e97bd3b Extracting add/edit type functions for reuse 2011-11-06 20:41:48 -05:00
Chris Scribner 560ed50ca5 Adding a newline 2011-11-06 20:41:48 -05:00
Chris Scribner 57e8c4752a Allowing tools be added even if none exist 2011-11-06 20:41:48 -05:00
Chris Scribner a0eeacf9c7 Fixing issues with launching a tool which is not configured in the admin side, and improving utility methods for determing if a tool should be registered 2011-11-06 20:41:47 -05:00
Chris Scribner f5134df434 Fixing localization string 2011-11-06 20:41:47 -05:00
Chris Scribner a4a07996f0 Implemented admin tool management 2011-11-06 20:41:46 -05:00
Chris Scribner 73300339b0 Renaming plugin to lti from blti 2011-11-06 20:41:46 -05:00
Chris Scribner 0d8afb44ee Removing course id field admin setting, making cmidnumber advanced in instructor interface, wiring up setting to show tool in creation screen 2011-11-06 20:41:46 -05:00
Chris Scribner d97d72aab9 Implemented launch options & fixed issues with frame sizing 2011-11-06 20:41:45 -05:00
Chris Scribner 5f24742f86 Test launch works 2011-11-06 20:41:45 -05:00
Chris Scribner 285f825046 Adjusting layout of editor pages & starting changes of blti properties 2011-11-06 20:41:44 -05:00
Chris Scribner a64b29cf9d Renamed plugin from basiclti to blti 2011-11-06 20:41:44 -05:00
Chris Scribner b7e436b037 Adding basiclti plugin 2011-11-06 20:41:44 -05:00
Dan Marsden 3cfffd8c3e SCORM MDL-27036 increase sessid, improve lang strings 2011-11-07 14:34:13 +13:00
Sam Hemelryk efe41e35c9 MDL-28292 block_html: white space fix 2011-11-07 12:33:18 +13:00
Sam Hemelryk 68bcca4d04 Merge branch 'wip-MDL-28292-master' of git://github.com/phalacee/moodle 2011-11-07 12:24:26 +13:00
Sam Hemelryk a86529bdeb MDL-29864 minify: Added a link to upstream issue being patched 2011-11-07 12:19:57 +13:00
Sam Hemelryk a82a42b6c1 Merge branch 'MDL-29864-master-2' of git://git.luns.net.uk/moodle 2011-11-07 11:58:44 +13:00
Sam Hemelryk 0abe89f7b4 Merge branch 'MDL-29955' of git://github.com/rwijaya/moodle 2011-11-07 11:41:31 +13:00
Andreas Grabs 6543f3cd5b MDL-30154 - WebDAV-Repository fails on some WebDAV-Server 2011-11-06 22:09:11 +01:00
Mary Evans afc7026a57 MDL-30010FIX for pagelayout problems when moving blocks 2011-11-06 19:48:10 +00:00
Petr Skoda bc196cbe21 MDL-30151 finally remove mod/forum:initialsubscriptions and improve perf
The 'mod/forum:initialsubscriptions' was introduced in 1.7 as a workaround for missing enrolment info - the mod_form forum help was not even updated to mention this capability. Now that we have reliable enrolment info we can significantly improve both enrol and unenrol performance. Hopefully majority of users will not miss this capability...
2011-11-06 19:58:16 +01:00
Petr Skoda 2b0e3941e9 MDL-30026 improve session lock acquire timeouts and other minor cleanup
This is partially based on original patch by Tony Levi.
2011-11-06 17:52:15 +01:00
Petr Skoda 4f6bba205d MDL-29030 add report management UI 2011-11-06 12:51:48 +01:00
Petr Skoda bb41c281e9 MDL-29030 add pagetype names 2011-11-06 12:31:17 +01:00
Petr Skoda f621e30b49 MDL-29030 fix report_log paging 2011-11-06 12:22:52 +01:00
Petr Skoda a260c84796 MDL-29030 move user completion reporting to report_completion plugin 2011-11-06 12:22:52 +01:00
Petr Skoda beda8fa8e2 MDL-29030 move user stats reporting to report_stats plugin 2011-11-06 12:22:52 +01:00
Petr Skoda fad8e0248c MDL-29030 move user log reporting to report_log plugin 2011-11-06 12:22:52 +01:00
Petr Skoda 4d00fded9d MDL-29030 migrate outline user reporting to plugin 2011-11-06 12:22:51 +01:00
Petr Skoda f0897f4426 MDL-29030 more css cleanup 2011-11-06 12:22:51 +01:00
Petr Skoda 672281f996 MDL-29030 normalise version numbers in all reports 2011-11-06 12:22:51 +01:00
Petr Skoda 158e9e2af9 MDL-29030 add basic report backup/restore support for course level 2011-11-06 12:22:51 +01:00
Petr Skoda ba50bd3d63 MDL-29030 fix remaining report linking hacks
Please note all plugin references from core should use callbacks, it is not ok to use capabilities or links to plugins because they may not be present in customised installs.
2011-11-06 12:22:50 +01:00
Petr Skoda ffd8bb207e MDL-29030 update completion block to use migrated report 2011-11-06 12:22:50 +01:00
Petr Skoda 635284c42f MDL-29030 update themes to use new report selectors 2011-11-06 12:22:50 +01:00
Petr Skoda cf24e82ed3 MDL-29030 move base CSS to report plugins 2011-11-06 12:22:50 +01:00
Petr Skoda a2a444ab75 MDL-29030 migration and cleanup of stats report
AMOS BEGIN
 MOV [pluginpagetype,coursereport_stats],[pluginpagetype,report_stats]
 MOV [stats:view,coursereport_stats],[stats:view,report_stats]
AMOS END
2011-11-06 12:22:49 +01:00
Petr Skoda bb1377744c MDL-29030 fix broken report settings support 2011-11-06 12:22:49 +01:00
Petr Skoda 033af4b7ba MDL-29030 migrate and cleanup log report
AMOS BEGIN
 MOV [log:view,coursereport_log],[log:view,report_log]
 MOV [log:viewtoday,coursereport_log],[log:viewtoday,report_log]
AMOS END
2011-11-06 12:22:49 +01:00
Petr Skoda 8a8f29c2f5 MDL-29030 new loglive report plugin
AMOS BEGIN
 CPY [log:viewlive,coursereport_log,[loglive:view,report_loglive]
 MOV [livelogs,core],[livelogs,report_loglive]
 CPY [loglive,coursereport_log],[pluginname,report_loglive]
AMOS END
2011-11-06 12:22:49 +01:00
Petr Skoda e20de26278 MDL-29030 minor participation report cleanup 2011-11-06 12:22:48 +01:00
Petr Skoda 3afce1a574 MDL-29030 convert participation report to new report type
AMOS BEGIN
 MOV [participation:view,coursereport_participation],[participation:view,report_participation]
 MOV [pluginpagetype,coursereport_participation],[pluginpagetype,report_participation]
 MOV [pluginname,coursereport_participation],[pluginname,report_participation]
AMOS END
2011-11-06 12:22:48 +01:00
Petr Skoda 8619857d5f MDL-29030 migrate progress report to new type
AMOS BEGIN
 MOV [pluginname,coursereport_progress],[pluginname,report_progress]
 MOV [pluginpagetype,coursereport_progress],[pluginpagetype,report_progress]
 MOV [progress:view,coursereport_progress],[progress:view,report_progress]
AMOS END
2011-11-06 12:22:48 +01:00
Petr Skoda ee6000db2c MDL-29030 fix typos 2011-11-06 12:22:47 +01:00
Petr Skoda 764607014d MDL-29030 minor completion report cleanup 2011-11-06 12:22:47 +01:00
Petr Skoda 13fdaaacc3 MDL-29030 migrate completion report to new report type
AMOS BEGIN
 MOV [completion:view,coursereport_completion],[completion:view,report_completion]
 MOV [completiondate,coursereport_completion],[completiondate,report_completion]
 MOV [pluginpagetype,coursereport_completion],[pluginpagetype,report_completion]
 MOV [pluginname,coursereport_completion],[pluginname,report_completion]
AMOS END
2011-11-06 12:22:47 +01:00
Petr Skoda 3f5389b129 MDL-29030 fix whitespace 2011-11-06 12:22:47 +01:00
Petr Skoda 275cbac71a MDL-29030 migrate outline report to new type
AMOS BEGIN
 MOV [outline:view,coursereport_outline],[outline:view,report_outline]
 MOV [pluginpagetype,coursereport_outline],[pluginpagetype,report_outline]
 MOV [pluginname,coursereport_outline],[pluginname,report_outline]
AMOS END
2011-11-06 12:22:47 +01:00
Petr Skoda d9298dc6fd MDL-29030 standardise report_security 2011-11-06 12:22:46 +01:00
Petr Skoda a54078f684 MDL-29030 standardise report_questioninstances 2011-11-06 12:22:46 +01:00
Petr Skoda fd2af3faea MDL-29030 standardise report_courseoverview 2011-11-06 12:22:46 +01:00
Petr Skoda c3a18edf65 MDL-29030 standardise report_configlog 2011-11-06 12:22:46 +01:00
Petr Skoda 1241d9736c MDL-29030 standardise report_backups 2011-11-06 12:22:45 +01:00
Petr Skoda e30cc24c0d MDL-29030 make admin reports general reports
AMOS BEGIN
 CPY [pluginname,coursereport_log],[pluginname,report_log]
 CPY [pluginname,coursereport_stats],[pluginname,report_stats]
AMOS END
2011-11-06 12:22:45 +01:00
Petr Skoda 2a1ce6a8ed MDL-30150 support frankenstyle in page type callbacks 2011-11-06 11:32:12 +01:00
Petr Skoda 817e396a84 MDL-30148 remember guest access key
Remember password for course guest access and reuse it if the enrol cache is reset. Do not print guest access form when already using guest course access.
2011-11-06 11:00:31 +01:00
Petr Skoda bbfdff344c MDL-30131 improve current user enrol caching 2011-11-06 09:40:06 +01:00
Dan Marsden 4388bd45b2 SCORM MDL-30146 AICC - add ability to link direct to a simple AICC url 2011-11-05 21:51:24 +13:00
Dan Marsden ba0e91a281 SCORM MDL-27036 enable AICC HACP 2011-11-05 20:31:01 +13:00
Tim Hunt 9d5687893a MDL-30145 Quiz intro not displayed on the password page 2011-11-04 22:57:17 +00:00
Tim Hunt f484a62984 MDL-30137 question engine: Ugglify the SQL to appease MS SQL server. 2011-11-04 15:02:29 +00:00
sam marshall b849c21255 MDL-26647 (8) Support showuseridentity on enrol screen
Includes support for the table display, plus the AJAX, including search. (The fallback version uses user selector so is already supported.)
2011-11-04 13:57:21 +00:00
sam marshall 02dd3b9fc0 MDL-26647 (7) Support showuseridentity on assignment report 2011-11-04 13:57:19 +00:00
sam marshall e4aec5bed3 MDL-26647 (6) Support showuseridentity on grader report, quiz report, SCORM report 2011-11-04 13:57:17 +00:00
sam marshall 24e14bc7a6 MDL-26647 (5) Support showuseridentity on course and activity completion reports 2011-11-04 13:57:15 +00:00
sam marshall 43aa295b95 MDL-26647 (4) Support showuseridentity on Participants page 2011-11-04 13:57:13 +00:00
sam marshall 1fdc0c6aaa MDL-26647 (3) Support showuseridentity on Browse Users page 2011-11-04 13:57:11 +00:00
sam marshall a1c947bde2 MDL-26647 (2) New lib function get_extra_user_fields and related
get_extra_user_fields to get a list of extra user fields for display (that are permitted for current user in given context). get_extra_user_fields_sql returns the same thing as a SELECT list.

get_user_field_name returns the display name of a user field (basically just get_string($field) except phone1=>phone)
2011-11-04 13:57:10 +00:00
sam marshall 5c60a847f5 MDL-26647 (1) 'extrauserselectorfields' -> 'showuseridentity', add capability
This change:
- Renames the existing setting 'extrauserselectorfields' to 'showuseridentity'
  in preparation for using it in more places. (Upgrade change, new version.)
- Adds a new capability moodle/site:viewuseridentity, now required in order
  to see the extra fields; if you don't have the capability, you don't see them
- Slightly improves the display of extra fields in user selector list; it used
  to be like 'sam marshall, 01234567, email@address' and is now
  'sam marshall [01234567, email@address]' ie the fields are in square
  brackets
- Turns feature on for the group selector - the feature was enabled for other
  user selectors but not for the group selector. Tim did the disable code, he
  thinks this may be to do with more people having access to group selector -
  probably not a problem now it is controlled by capability.
2011-11-04 13:57:08 +00:00
David Mudrak 58c447aef0 MDL-29620 workshop table id sequence reset after the upgrade 2011-11-04 13:58:23 +01:00
David Mudrak 10df8657c1 MDL-29977 MNet does not allow to start a remote session when masquerading as another user 2011-11-04 10:02:19 +01:00
David Mudrak fa4cbd214b Merge pull request #22 from marinaglancy/wip-nov04_1-rubric 2011-11-04 00:42:52 -07:00
Marina Glancy 59be90119e MDL-30023: rubric editor usability - support for tab key and adding multiple levels 2011-11-04 14:58:05 +08:00
Ankit Kumar Agarwal 3ab853fade MDL-28277 SCORM optimising function get_scorm_question_count 2011-11-04 11:27:17 +05:30
Marina Glancy 4f110c471a MDL-30023: rubriceditor usability - skip buttons for reorder and delete in tabindex 2011-11-04 11:30:06 +08:00
Mary Evans 0a52611c5a wip-MDL-22351 convert Anomaly CSS to readable format 2011-11-04 02:37:11 +00:00
AMOS bot 4384a6805b Automatically generated installer lang files 2011-11-04 00:55:28 +00:00
stabijoh 2fd7abbbd7 MDL-27622 integrate mymobile thme into core RC2 2011-11-03 10:59:45 -04:00
David Mudrak 0455c99864 MDL-29920 User report may display the grade analysis link, too
The original idea was to use the link in the row header (the activity
link). However, for both unified user experience and the overall patch
design reasons, I finally decided not to alter the activity link but to
append the analysis icon. The user experience should be the same as in
the grader report.
2011-11-03 13:51:45 +01:00
David Mudrak f17bb885e9 MDL-29920 Grader report does not need to cache grade.php existence flags any more
This caching is now performed by the underlying methods.
2011-11-03 13:50:34 +01:00
David Mudrak eff314b06a MDL-29920 Performance improvements in the gradebook reports
Both methods get_activity_link() and get_grade_analysis_url() now cache
the results of the check whether the activity module provides grade.php
or not. Previously, get_activity_link() called file_exists() in every
call and get_grade_analysis_url() did not check the existence at all.

Note that this solution is still sub-optimal as apparently both methods
do very similar job. This should be refactored one day by a brave
developer who works on gradebook. Meanwhile, even this suboptimal
solution is more effective than the previous one for most courses.
2011-11-03 13:44:41 +01:00
Dan Marsden 7320f48b98 SCORM MDL-29159 - override getContentHtml function in treeview so that it doesn't escape text incorrectly 2011-11-04 00:29:05 +13:00
Tim Hunt de529cd253 MDL-30021 qtype numerical better showunits default when coming from 1.9
This applies to:
1. Upgrade from 1.9,
2. Import of questions exported from 1.9, and
3. Restore of courses backed-up from 1.9.

It also applies to the calculated question type.
2011-11-03 11:27:41 +00:00
Tim Hunt 78fc17ebdf MDL-29058 question export: include files from hints & combined feedback. 2011-11-03 11:27:39 +00:00
Tim Hunt fe5f412104 MDL-29739 question import used a bad default for text formats.
The new logic is that the questiontext defaults to HTML if the format is
not specified, then all other fields default to the same format of the
question text.

However, good practice is that the XML file should specify the format
for each bit of text content.

This code is not 100% backwards-compatible, since some methods have new
arguments, however for question types that have not been updated, it
will just generate a PHP Warning, which is, I think, and OK way to let
qtype developers know that they need to update their question types.
2011-11-03 11:27:37 +00:00
Charles Fulton 8f725ade78 MDL-29970 question preview: Fill correct only if qtype supports it 2011-11-03 11:27:09 +00:00
Tim Hunt bbc8c32174 MDL-28426 qtype base export_to_xml does not write format.
Fix based on Roger Moore's patch.
2011-11-03 11:24:29 +00:00
David Mudrak e14e78abbf Merge pull request #21 from marinaglancy/wip-nov03-rubric
Display warnings if used rubric is being updated and mark instances for regrade
2011-11-03 02:52:53 -07:00
Jason Fowler baf9c832de MDL-28292 - Blocks - Patch supplied by Chris Follin to fix blocks with empty titles that disappear when docked 2011-11-03 16:18:39 +08:00
Marina Glancy 0136124e21 MDL-30112: marking rubric filling instances for regrading
- If a used rubric being updated, teacher (moderator) is notified
- If the changes are significant, all instances automatically marked for regrade
- if the changes are minor (texts, options or sortorder), teacher can choose whether to mark for regrade or not
- The instances marked for regrade can be re-graded but students are not able to see the rubric
- when grading a message appears if the instance is marked for regrade and is not visible to students
2011-11-03 16:08:36 +08:00
Petr Skoda ee362526f8 MDL-29897 Update upgrade.txt files 2011-11-03 08:11:55 +01:00
Ankit Kumar Agarwal ef6b3ba159 MDL-29035 Backups making email match case-insensitive when restoring backups 2011-11-03 10:18:15 +05:30
Rossiani Wijaya 548a878bec MDL-25823 lesson mod: fixed true and false question feedback. 2011-11-03 12:47:53 +08:00
Ankit Kumar Agarwal e46cef0b64 MDL-30044 SCORM documenting function scorm_report_list 2011-11-03 07:51:43 +05:30
Ankit Kumar Agarwal b2f5ce3526 MDL-28277 SCORM Polishing codes 2011-11-03 07:46:08 +05:30
Dan Marsden 3297bb1add MDL-28277 SCORM remove whitespace from patch 2011-11-03 07:46:05 +05:30
Dan Marsden 49ff0cf349 MDL-28277 MDL-30009 fix for started on/last accessed on dates for users with no attempts. 2011-11-03 07:46:03 +05:30
Ankit Kumar Agarwal 769a621dc0 MDL-28277 small bug fixes
modified:   mod/scorm/report/interactions/report.php
	modified:   mod/scorm/report/interactions/responsessettings_form.php
	modified:   mod/scorm/report/reportlib.php
2011-11-03 07:46:01 +05:30
Ankit Kumar Agarwal 35540ec537 MDL-28277 Adding course context to format_Strings 2011-11-03 07:45:59 +05:30
Ankit Kumar Agarwal 7def307d1a MDL-28277 removed IN from sql statments 2011-11-03 07:45:57 +05:30
Ankit Kumar Agarwal 3b1e85a143 MDL-28277 formating codes 2011-11-03 07:45:55 +05:30
Ankit Kumar Agarwal b84b783f6c MDL-28277 Small fixes 2011-11-03 07:45:52 +05:30
Ankit Kumar Agarwal c03d2b753e MDL-28277 Added function to find question count 2011-11-03 07:45:50 +05:30
Ankit Kumar Agarwal 1135979696 MDL-28277 Basic Skeleton update
modified:   mod/scorm/report/interactions/report.php
2011-11-03 07:45:48 +05:30
Ankit Kumar Agarwal 8fb40a45fb MDL-28277 First Version push of the interactions plugin
new file:   mod/scorm/report/interactions/lang/en/scormreport_interactions.php
	new file:   mod/scorm/report/interactions/report.php
	new file:   mod/scorm/report/interactions/responsessettings_form.php
	new file:   mod/scorm/report/interactions/version.php
2011-11-03 07:45:46 +05:30
Ankit Kumar Agarwal b7afad0e17 MDL27522 First version Push
modified:   mod/scorm/report.php
	new file:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports-remove users report to seperate files for better re-use

	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports validated reportuser.php

	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM REPORT - updating reportuser.php to use MUST_EXIST parameter

	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports- Cleaning of codes
	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports- update formating

	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports removed unwanted codes from reportuser.php

	modified:   mod/scorm/reportuser.php

MDL-27522 Scorm Reports - optimising codes

	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 Scorm Reports-Formating report.php
	modified:   mod/scorm/report.php

MDL-27522 Scorm Reporting - removing unsed variables

	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reporting - Renaming reportuser.php to userreport.php
	new file:   mod/scorm/userreport.php

MDL-27522 SCORM Reporting - deleting old reportuser.php

	deleted:    mod/scorm/reportuser.php

MDL-27522 Scorm Reporting - updated version number

MDL-27522 Scorm Reporting - Discarding version changes

MDL-27523 Scorm Reporting - Basic reporting plugin
	new file:   mod/scorm/report/basic/lang/en/scorm_basic.php
	new file:   mod/scorm/report/basic/report.php
	new file:   mod/scorm/report/default.php
	new file:   mod/scorm/report/reportlib.php

MDL-27523 Scorm Reporting - Database Table structure pushed
	new file:   mod/scorm/db/subplugins.php

MDL-27523 Scorm Reporting - Plugin container codes
	modified:   mod/scorm/report.php
	modified:   mod/scorm/tabs.php

MDL-27523 Scorm Reporting - Capability update
	modified:   mod/scorm/report/reportlib.php

MDL-27523 Scorm Reporting - commenting files
	modified:   mod/scorm/report/basic/db/install.php
	modified:   mod/scorm/report/basic/lang/en/scorm_basic.php
	modified:   mod/scorm/report/basic/version.php

MDL-27523 Scorm Reporting - Formating codes
	modified:   mod/scorm/report/basic/db/install.php
	modified:   mod/scorm/report/basic/report.php
	modified:   mod/scorm/report/basic/version.php
	modified:   mod/scorm/report/default.php
	modified:   mod/scorm/report/reportlib.php

MDL-27523 Scorm Reporting - fixing small bugs
	modified:   mod/scorm/report/basic/report.php

MDL-27523 Scorm Reporting - added databse upgrade code to scorm/db/upgrade.php

MDL-27523 Scorm Reporting - small optimisations

MDL-27523 SCorm Reporting - Removing Mod.php

MDL-27523 Scorm Reporting - Minor Fixes

	new file:   mod/scorm/db/subplugins.php
	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/report.php
	new file:   mod/scorm/report/basic/db/install.php
	new file:   mod/scorm/report/basic/lang/en/scorm_basic.php
	new file:   mod/scorm/report/basic/report.php
	new file:   mod/scorm/report/basic/version.php
	new file:   mod/scorm/report/default.php
	new file:   mod/scorm/report/reportlib.php
	modified:   mod/scorm/tabs.php
	modified:   mod/scorm/userreport.php

	modified:   mod/scorm/db/install.xml
	new file:   mod/scorm/db/subplugins.php
	modified:   mod/scorm/db/upgrade.php
	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/report.php
	new file:   mod/scorm/report/basic/db/install.php
	new file:   mod/scorm/report/basic/lang/en/scorm_basic.php
	new file:   mod/scorm/report/basic/report.php
	new file:   mod/scorm/report/basic/version.php
	new file:   mod/scorm/report/default.php
	new file:   mod/scorm/report/reportlib.php
	modified:   mod/scorm/tabs.php
	modified:   mod/scorm/userreport.php
	modified:   mod/scorm/version.php

MDL-27523 Scorm Reporting - Removing Database Refereneces

MDL-27523 Scorm Reporting - Updating structure to remove DB usage
	modified:   mod/scorm/db/upgrade.php
	modified:   mod/scorm/report.php
	modified:   mod/scorm/report/basic/report.php
	modified:   mod/scorm/report/default.php
	modified:   mod/scorm/report/reportlib.php

MDL-27523 Scorm Reporting - Minor fixes

MDL-27523 Scorm Reporting - Formating codes

MDL-27523 Scorm Reporting - Foramting Codes
	modified:   mod/scorm/report/basic/lang/en/scorm_basic.php
	modified:   mod/scorm/report/basic/report.php
	modified:   mod/scorm/report/default.php
	modified:   mod/scorm/report/reportlib.php

	new file:   mod/scorm/db/subplugins.php
	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/report.php
	new file:   mod/scorm/report/basic/lang/en/scorm_basic.php
	new file:   mod/scorm/report/basic/report.php
	new file:   mod/scorm/report/basic/version.php
	new file:   mod/scorm/report/default.php
	new file:   mod/scorm/report/reportlib.php
	modified:   mod/scorm/tabs.php
	modified:   mod/scorm/userreport.php
	modified:   mod/scorm/version.php
2011-11-03 07:45:43 +05:30
Eloy Lafuente (stronk7) 8778398293 MDL-30057 plugins - glossary/data new filters made 1st-class citizens 2011-11-03 02:51:17 +01:00
AMOS bot 5b82b2d827 Automatically generated installer lang files 2011-11-03 00:55:24 +00:00
David Mudrak dd736a87ee Replaced deprecated get_system_context() with the new context_system::instance() 2011-11-02 23:35:05 +01:00
David Mudrak d6d341d09b Merge remote branch 'origin/master' into rubric
Conflicts:
	lib/db/upgrade.php
	version.php
2011-11-02 23:17:08 +01:00
David Mudrak 9e3d352dee Improved handling of occupied target issue
If the target area already contains a form, we can't pick anything to
use there. If the user works in two windows or there are several
teachers modifying the same course, it can happen that the form suddenly
appears in the target area while we have the form picker still open. In
such case, we simply redirects the user to the target area instead of
displaying the pooky exception.
2011-11-02 22:29:47 +01:00
David Mudrak 9e4eb676e4 MDL-29483 The list of gradable areas is now obtained from the module
At the moment, only activity modules are supported.
2011-11-02 22:25:32 +01:00
David Mudrak 967d346f72 MDL-29794 It is now possible to re-use a form without sharing it as a template
The patch also improves displaying tags-like status information next to
the grading form titles.
2011-11-02 21:57:24 +01:00
Eloy Lafuente (stronk7) 735de1c276 weekly release 2.2dev 2011-11-02 19:52:31 +01:00
Eloy Lafuente (stronk7) 77c5a59017 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-11-02 19:48:26 +01:00
Eloy Lafuente (stronk7) 799be36820 MDL-29213 - add clarification note + todo once MDL-30039 arrives 2011-11-02 19:07:52 +01:00
David Mudrak ce7f5c8d3b Merge pull request #20 from marinaglancy/wip-nov02-rubric 2011-11-02 03:41:12 -07:00
Marina Glancy 63b9a6d07d MDL-29920: grade.php in assignment now can show submission/feedback for a particular user (also when submission did not exist yet) 2011-11-02 11:13:14 +01:00
Marina Glancy 6184b84393 MDL-30037: fixed bug with grade calculation 2011-11-02 11:38:00 +08:00
Marina Glancy 0e2a1d755a MDL-29482: error message is displayed to graders if grading form is unavailable 2011-11-02 11:12:02 +08:00
Marina Glancy 3599b113a6 MDL-29482, MDL-29794, MDL-30037: supporting form status in rubriceditor and forms sharing; fixed bug with grade calculation 2011-11-02 10:45:32 +08:00
Jerome Mouneyrac 2b8fe35b65 MDL-30043 token.php should not return a mix of EXTERNAL_TOKEN_PERMANENT and EXTERNAL_TOKEN_EMBEDDED 2011-11-02 09:38:02 +08:00
Marina Glancy 2ae7faf128 MDL-29482: added validation to rubric editor and the 'work in progress' status 2011-11-02 09:12:58 +08:00
Marina Glancy 37f391f00a MDL-29481: added css border around selected rubric level 2011-11-02 09:04:14 +08:00
Marina Glancy 156d6f4876 MDL-29920: now complete report properly calls view_feedback in assignment 2011-11-02 09:04:01 +08:00
Dan Marsden 2f717fcc20 SCORM MDL-30041 fix case of string 2011-11-02 09:42:29 +13:00
David Mudrak bb17ac1e32 MDL-29920 Gradebook grader report now supports grade analysis link
When grade analysis link is enabled, an icon is displayed next to each
grade of a module that supports grade.php file. The parameters needed to
identify the particular user and grade are passed to the grade.php
script.
2011-11-01 20:53:48 +01:00
Eloy Lafuente (stronk7) 5fbf87c802 Merge branch 'MDL-29879' of git://github.com/timhunt/moodle 2011-11-01 20:12:45 +01:00
Eloy Lafuente (stronk7) 313e048981 MDL-29283 import TCPDF to 5.9.133 - clean whitespace 2011-11-01 20:09:10 +01:00
Dan Marsden a5ba44f93c MDL-29213 - fix for bug with flash player and IE 9
(cherry-picked and amended with 1-line whitespace)
2011-11-01 19:59:05 +01:00
David Mudrak 25ab1d50e2 MDL-29920 The link from gradebook back to the activity contains itemnumber
The activity module must have a chance to display appropriate grades
report per itemnumber. Most activity modules have just one grade items
si they can ignore the param. Complex modules like the Workshop need this.
2011-11-01 18:18:45 +01:00
David Mudrak 49a537b356 MDL-29482 The rubric editor is now able to save the status of the form definition 2011-11-01 18:04:31 +01:00
Eloy Lafuente (stronk7) e785b0f3ca MDL-29283 import TCPDF to 5.9.133 - fix permissions 2011-11-01 17:27:26 +01:00
Eloy Lafuente (stronk7) e686d11257 Merge branch 'w43_MDL-29283_m22_tcpdf' of git://github.com/skodak/moodle 2011-11-01 17:23:20 +01:00
David Mudrak 4d064218fb MDL-29794 Rename templates.php back to pick.php
We will need the general management page implemented in a separate
script. This one will be used for picking an existing form only.
2011-11-01 16:30:17 +01:00
David Mudrak 3f3ee7114e MDL-29794 Do not offer re-sharing of unmodified forms
The patch introduces a new field 'timecopied' that holds the timestamp
of when the given form was cloned last time. Using this field, we can
decide whether the form can be actually re-shared or not.

Note that the logic just hides the icon. It is meant as a usability
feature, not any real protection from sharing.
2011-11-01 16:10:12 +01:00
David Mudrak 86e9ccfd92 MDL-29794 Shared grading form templates can be deleted now
There is a new capability to manage all shared templates. Without this
capability, the user is allowed to delete just templates they previously
shared.

In the future, an option to edit the template directly might be added.
At the moment, the workaround is to pick the template into a temporary
assignment, edit it there and re-save it as a new template.
2011-11-01 14:05:11 +01:00
David Mudrak 7622ae95dc MDL-29108 Improved support for form definition status
Every grading form can be basically in either DRAFT state (currently
being edited) or READY state (available for usage). For shared
templates, the status is not relevant at the moment and they are
automatically in the READY state.
2011-11-01 12:32:06 +01:00
Eloy Lafuente (stronk7) 302f45e8de Merge branch 'w43_MDL-29982_m22_canaccess' of git://github.com/skodak/moodle 2011-11-01 12:26:31 +01:00
Tim Hunt 78f8261f6e MDL-29879 qbehaviour missing. Fix bad lang string. 2011-11-01 10:37:48 +00:00
Jerome Mouneyrac f4a75854b7 MDL-30027 support no options + fix wrong param validation call 2011-11-01 15:22:28 +08:00
Aparup Banerjee ddba89cc2a Merge branch 'w43_MDL-30005_m22_uri' of git://github.com/skodak/moodle 2011-11-01 15:18:44 +08:00
Petr Skoda 0775152ff0 MDL-30005 regression fix for non http/ftp urls 2011-11-01 07:56:33 +01:00
Aparup Banerjee 203683e415 Merge branch 'MDL-29983' of git://github.com/timhunt/moodle 2011-11-01 13:23:03 +08:00
Sam Hemelryk 21e7d4c5fc MDL-28720 calendar: Quick fix of a regression in set.php 2011-11-01 17:50:01 +13:00
Sam Hemelryk f94d606f1f Merge branch 'w43_MDL-29964_m22_fixenrolevents' of git://github.com/skodak/moodle 2011-11-01 17:36:50 +13:00
Aparup Banerjee d29f4e055d Merge branch 'w43_MDL-29990_m22_navcontinue' of git://github.com/skodak/moodle 2011-11-01 12:15:40 +08:00
Aparup Banerjee b68c077632 Merge branch 'MDL-29787' of git://github.com/lazydaisy/moodle 2011-11-01 12:00:57 +08:00
Sam Hemelryk 5f3abf0a42 Merge branch 'w43_MDL-29980_m22_flowcss' of git://github.com/skodak/moodle 2011-11-01 16:52:02 +13:00
Sam Hemelryk 6ab6630b87 Merge branch 'MDL-29164' of git://github.com/timhunt/moodle 2011-11-01 16:47:16 +13:00
Gerwood Stewart 2388e7ca7d MDL-27521 Updates the can_finalize and can_unfinalize methods to deal with passing a submission object that isn't one (in this case is a Boolean value). This will result in both methods now returning false. Kick on effect is that it corrects the bug described in MDL-27521 by removing the button if it isn't possible to finalize the submission. 2011-11-01 11:35:39 +08:00
Sam Hemelryk bc454be746 Merge branch 'MDL-29197' of git://github.com/lazydaisy/moodle 2011-11-01 16:11:58 +13:00
Sam Hemelryk c189b664ae Merge branch 'MDL-25760' of git://github.com/lazydaisy/moodle 2011-11-01 15:56:55 +13:00
David Mudrak 20836db999 MDL-29794 Initial support for re-using a shared grading form
The patch introduces a new script templates.php that allows to search
for a previously shared form (template) and re-use it.

The patch also modifies the preview rendering of grading forms. Now
plugins are responsible for rendering the form itselft, without any
headers, descriptions etc (we need to embed the form preview into
various places so the caller looks after the frame).
2011-11-01 03:16:54 +01:00
AMOS bot 98ab317bc7 Automatically generated installer lang files 2011-11-01 00:55:16 +00:00
Sam Hemelryk 5a866c3634 Merge branch 'w43_MDL-29925_m22_calendar' of git://github.com/skodak/moodle 2011-11-01 09:38:24 +13:00
Tim Hunt a49e92a4e9 MDL-29164 question import, missing lang string.
AMOS BEGIN
 MOV [noquestionsinfile,mod_quiz],[noquestionsinfile,question]
AMOS END
2011-10-31 15:35:07 +00:00
Aparup Banerjee d1e82ba966 Merge branch 'w43_MDL-29922_m22_smarty' of git://github.com/skodak/moodle 2011-10-31 17:19:14 +08:00
Aparup Banerjee c84f4700ec Merge branch 'w43_MDL-29921_m22_qti2' of git://github.com/skodak/moodle 2011-10-31 17:08:32 +08:00
Aparup Banerjee ae44df3c43 Merge branch 'w43_MDL-29972_m22_langreset' of git://github.com/skodak/moodle 2011-10-31 16:10:00 +08:00
Aparup Banerjee c2c7d8715d Merge branch 'w43_MDL-29966_m22_grouploading' of git://github.com/skodak/moodle 2011-10-31 16:05:12 +08:00
Rossiani Wijaya 51803fd113 MDL-29955: filestorage/file_types: add support for .f4v, .m4v and .webm 2011-10-31 15:26:25 +08:00
Aparup Banerjee b6d2f5b266 Merge branch 'w43_MDL-29984_m22_enroltoday' of git://github.com/skodak/moodle 2011-10-31 15:25:55 +08:00
Aparup Banerjee b2851c8ded MDL-30005 URL : fixed typos 2011-10-31 15:12:45 +08:00
Aparup Banerjee 2636126f89 Merge branch 'w43_MDL-30005_m22_uri' of git://github.com/skodak/moodle 2011-10-31 14:13:46 +08:00
Sam Hemelryk 703912cd5e Merge branch 'w43_MDL-29883_m22_mp3player' of git://github.com/skodak/moodle 2011-10-31 18:02:03 +13:00
Sam Hemelryk d0464f3875 Merge branch 'w43_MDL-29824_m22_enrolmax' of git://github.com/skodak/moodle 2011-10-31 17:59:11 +13:00
Sam Hemelryk 0b49b6daa7 Merge branch 'w43_MDL-28720_m22_calendarreturn' of git://github.com/skodak/moodle 2011-10-31 17:28:57 +13:00
Sam Hemelryk 5e255d5ad8 Merge branch 'MDL-27919' of git://github.com/jamiepratt/moodle 2011-10-31 17:18:13 +13:00
Sam Hemelryk 243e3dd130 Merge branch 'MDL-29810' of git://github.com/bostelm/moodle 2011-10-31 17:11:08 +13:00
Sam Hemelryk 1fe368530f Merge branch 'MDL-29994' of git://github.com/stronk7/moodle 2011-10-31 16:53:24 +13:00
Jerome Mouneyrac dab3977a54 MDL-29931 remove unneeded join and selects 2011-10-31 10:57:06 +08:00
Aparup Banerjee 046391ea11 Merge branch 'w43_MDL-29923_m22_removesearch' of git://github.com/skodak/moodle 2011-10-31 10:23:59 +08:00
Sam Hemelryk 70f43a4789 Merge branch 'MDL-29993' of git://github.com/stronk7/moodle 2011-10-31 15:19:31 +13:00
Sam Hemelryk 01dc193786 Merge branch 'MDL-29992' of git://github.com/stronk7/moodle 2011-10-31 14:56:06 +13:00
Mary Evans ab9d5899b8 MDL-29197 FIX for content displacment when clicking anchor elements in course page 2011-10-31 01:43:17 +00:00
Sam Hemelryk a6d832f022 Merge branch 'MDL-29978' of git://github.com/stronk7/moodle 2011-10-31 13:51:07 +13:00
Sam Hemelryk cdf30a11a8 Merge branch 'MDL-30006-workshop-grades' of git://github.com/mudrd8mz/moodle 2011-10-31 13:06:10 +13:00
Sam Hemelryk 81ad059658 Merge branch 'master_MDL-28559' of git://github.com/danmarsden/moodle 2011-10-31 12:59:35 +13:00
Sam Hemelryk 75dab90e3d Merge branch 'master_MDL-29965' of git://github.com/danmarsden/moodle 2011-10-31 12:55:57 +13:00
Sam Hemelryk ad7592f32b Merge branch 'master_MDL-30009' of git://github.com/danmarsden/moodle 2011-10-31 12:47:21 +13:00
Sam Hemelryk 385f30f7a7 Merge branch 'MDL-29898-master-1' of git://git.luns.net.uk/moodle 2011-10-31 12:44:05 +13:00
Petr Skoda b615a0bf9a MDL-30005 bump up version after lang string change 2011-10-30 23:53:26 +01:00
Petr Skoda 48f69e418c MDL-30005 fix general URI support in URL module
The recent change completely removed support for general URIs and enforced strict URL validation which was breaking backwards compatibility and was not user friendly at all.

This patch finally adds full URI support with basic validation and fixes some older xhtml strict issues.

Please note we do not try to explain the difference between URL and URI to our users. Also keep in mind that mod/url has XSS risk and does not do any security validation of the data.
2011-10-30 23:53:17 +01:00
Dan Marsden 503dfba895 SCORM MDL-30009 fix issue with started on/last accessed when iterating through users. 2011-10-31 11:04:20 +13:00
David Mudrak 8df95cf7f4 MDL-30006 Workshop / Number of errors grading: force graders to actually answer the form
QuickForms do not distinguish non-checked radio from the checked radio
with the value "0". So we map the database grade value "0" to a value
"-1" when displaying the form and vice versa when saving the form. This
allowed us to have none radios checked by default and force the grader
to actually answer the form themselves, using the 'required' rule.
2011-10-30 20:17:54 +01:00
David Mudrak 60a3e801f3 MDL-30006 Workshop / Accumulative grading: force graders to actually pick a grade
This patch introduces a new hidden field with the value "-1". The grade
selectors are compared with this values and must be greater than it.
This should fit well for numerical grades with the range 0..x and scale
items with the range 1..x.
2011-10-30 20:17:50 +01:00
Petr Skoda 9ccb37ad8b MDL-29824 bump up version after new lang string 2011-10-30 13:35:12 +01:00
Petr Skoda 78c5042e06 MDL-29824 improve notification of max number of enrolled users 2011-10-30 13:34:23 +01:00
Petr Skoda 0f14c8273e MDL-29982 fixed missing $userid
Thanks Eloy!
2011-10-30 10:53:42 +01:00
Eloy Lafuente (stronk7) 775051a3e9 MDL-29994 filters - prevent mod/data and mod/glossary to be re-added 2011-10-30 02:35:59 +01:00
Eloy Lafuente (stronk7) 350f973d38 MDL-29993 filters - new filter/data filter replacement for legacy mod/data/filter. 2011-10-30 02:33:11 +02:00
Eloy Lafuente (stronk7) 9ff8c803be MDL-29992 filters - move related css from mod/glossary to filter/glossary 2011-10-29 19:02:22 +02:00
Eloy Lafuente (stronk7) d307a1a70d MDL-29992 filters - move js popup from mod/glossary to filter/glossary
This commit moves the js popup to the new location of the filter. Also
it fixes one bug, with the js processing also glossary category links
leading to error, so now the categories are working again.
2011-10-29 19:02:07 +02:00
Eloy Lafuente (stronk7) 85a69ce123 MDL-29992 filters - new filter/glossary filter replacement for legacy mod/glossary/filter. 2011-10-29 17:50:58 +02:00
Petr Skoda 563329e84c MDL-29990 fix syntax error 2011-10-29 09:59:49 +02:00
Petr Skoda 1344b0ca7f MDL-29982 improve can_access_course()
Hopefully faster and more accurate.
2011-10-29 09:45:54 +02:00
Petr Skoda d0a0db4275 MDL-29283 import TCPDF to 5.9.133
There seem to be some problems with unicode chars unfortunately, hopefully real life documents will not hit them...
2011-10-29 08:56:26 +02:00
Dan Marsden 61c347cc73 SCORM MDL-29965 improve display of SCORM package - decrease unecessary padding 2011-10-29 15:28:09 +13:00
Petr Skoda eb59a448f7 MDL-28720 fix set.php return url handling 2011-10-28 19:35:04 +02:00
Petr Skoda 581e8dba38 MDL-29925 improve redirect url cleanup 2011-10-28 19:32:07 +02:00
Petr Skoda 44ac4f62de MDL-29972 make sure lang dir exists before writing into it 2011-10-28 16:05:52 +02:00
Petr Skoda 96bf0b3af4 MDL-29966 fix invalid group loading image
Credit goes to Alexander Bias.
2011-10-28 15:49:13 +02:00
Petr Skoda 18382a85fe MDL-29980 fix rules typo
Credit goes to Paul Nicholls.
2011-10-28 15:21:02 +02:00
Petr Skoda 4f500c259c MDL-29984 fix undefined $today when no course start date 2011-10-28 15:11:42 +02:00
Petr Skoda 0c2701fd6d MDL-29964 fix order of events triggered by enrolment 2011-10-28 14:57:42 +02:00
Tim Hunt d68f4d8b9f MDL-29983 fix question_type::local_name 2011-10-28 13:38:33 +01:00
Petr Skoda 63017358c5 MDL-29922 remove outdated unused Smarty lib 2011-10-28 10:38:30 +02:00
Petr Skoda 2dc54611f2 MDL-29921 remove unmaintained qti_two export question type
It can be easily included in official distribution again if somebody fixes it because there are no stored data, capabilities or versions. This will finally allow us to drop the outdate Smarty library form distribution package.
2011-10-28 10:32:24 +02:00
Petr Skoda f68cef22b9 MDL-29923 remove all traces of experimental global search
Hopefully it will be replaced by something fully functional soon, see http://moodle.org/mod/forum/discuss.php?d=189023
2011-10-28 10:20:00 +02:00
Petr Skoda 8d588844e9 MDL-29883 remove unused mp3player 2011-10-28 09:17:31 +02:00
AMOS bot d818b933a3 Automatically generated installer lang files 2011-10-28 00:55:37 +00:00
Mary Evans 1bc21356fc MDL-25760 FIX for highlighted current topic section 2011-10-28 01:30:26 +01:00
Eloy Lafuente (stronk7) 3f123d9227 MDL-29978 install - dependencies must be checked against disk (target) versions 2011-10-28 01:41:04 +02:00
Mary Evans aa1639680f MDL-29787 FIX to remove sprite hover image from single menu item 2011-10-28 00:21:23 +01:00
Andreas Grabs 9c5bc7a580 MDL-29804 - Clean up Feedback modules coding style 2011-10-28 00:30:42 +02:00
Henning Bostelmann 4ac9f47051 MDL-29810 Assignment grading: don't include teachers in list of students 2011-10-27 22:16:03 +01:00
David Mudrak 18dd4a69d0 Merge remote branch 'origin/master' into rubric
Conflicts:
	lib/db/upgrade.php
2011-10-27 21:58:45 +02:00
Eloy Lafuente (stronk7) 38e9a1cc79 weekly release 2.2dev 2011-10-27 18:51:29 +02:00
Eloy Lafuente (stronk7) d2822153b0 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-10-27 18:48:55 +02:00
Petr Skoda 8d1da74863 MDL-29474 fix undefined release, phpdocs and one TODO 2011-10-27 15:07:34 +02:00
Petr Skoda 2dfef18842 MDL-29474 tell AMOS we have a new install string 2011-10-27 14:36:20 +02:00
Petr Skoda c1f55426ee MDL-29474 fix cli upgrade regression 2011-10-27 14:04:19 +02:00
Petr Skoda 72081a6f75 MDL-29474 add env and plugin test to cli db install 2011-10-27 13:56:22 +02:00
Petr Skoda f433088d5a MDL-29474 fix regressions in CLI install 2011-10-27 13:55:41 +02:00
David Mudrak 72e48ad28f Merge pull request #17 from marinaglancy/wip-rubricrenderer-rubric
Better rendering of the rubrics, rubric display options
2011-10-26 23:47:29 -07:00
AMOS bot 4ca17ac303 Automatically generated installer lang files 2011-10-27 00:55:29 +00:00
Sam Hemelryk 7b27861217 Merge branch 'MDL-29912' of git://github.com/stronk7/moodle 2011-10-27 12:57:21 +13:00
Eloy Lafuente (stronk7) 86e00f970b MDL-29912 course search - oracle inabilities with concats, empties, nulls and type-restrictions 2011-10-26 19:04:31 +02:00
Eloy Lafuente (stronk7) 85819105a6 Merge branch 'w42_MDL-29688_m22_enrol' of git://github.com/skodak/moodle 2011-10-26 11:40:01 +02:00
Petr Skoda dcb9a0c1f1 MDL-29688 rewrite complex joins to be compatible with MySQL
Unfortunately MySQL does not handle complex EXISTS queries properly…
2011-10-26 11:35:42 +02:00
Eloy Lafuente (stronk7) 75d9479f8b MDL-29474 plugin dependencies: version minibump 2011-10-26 10:34:28 +02:00
Eloy Lafuente (stronk7) 10dd4995da Merge branch 'MDL-29474' of git://github.com/timhunt/moodle 2011-10-26 10:33:37 +02:00
Marina Glancy 39c6f4b625 MDL-29482, MDL-29481: better rendering, options for rubric display 2011-10-26 11:36:29 +08:00
Aparup Banerjee a0b10b271f Merge branch 'MDL-29854_b' of git://github.com/timhunt/moodle 2011-10-26 11:23:09 +08:00
Dan Marsden da69510f2a MDL-28559 - hide send for marking button from people that are enrolled but don't have capability to submit files - displays the same way as teachers/admins - keeps ability to display previously submitted files if they exist 2011-10-26 10:59:13 +13:00
Eloy Lafuente (stronk7) 036f27a420 Merge branch 'w42_MDL-29670_m22_croncleanup' of git://github.com/skodak/moodle 2011-10-25 23:51:10 +02:00
Sam Hemelryk e6369d951c Merge branch 'MDL-29569' of git://github.com/rwijaya/moodle 2011-10-26 10:44:41 +13:00
Dan Poltawski 10aeaf0f74 MDL-26568 block_online_users - reporting incorrect number of users
When over 50 users were online the count used in the listing was incorrect
2011-10-25 23:34:46 +02:00
Sam Hemelryk 462a064cf0 Merge branch 'MDL-29716' of git://github.com/mouneyrac/moodle 2011-10-26 10:21:35 +13:00
Petr Skoda 4332cc468c MDL-29670 add more timeout resets 2011-10-25 22:07:04 +02:00
Stephen Bourget d31a1ad808 MDL-29368 Assignment: Fixed a fatal error caused by a missing include 2011-10-25 19:19:02 +02:00
Eloy Lafuente (stronk7) f65cd7f46c Merge branch 'w42_MDL-29918_m22_accesslibdocs' of git://github.com/skodak/moodle 2011-10-25 17:47:09 +02:00
Eloy Lafuente (stronk7) 35454bd55d Merge branch 'MDL-29815' of git://github.com/timhunt/moodle 2011-10-25 17:43:51 +02:00
Eloy Lafuente (stronk7) 44a9630623 MDL-29815 dbtest - added one test_get_records_sql_complicated related test 2011-10-25 17:37:34 +02:00
Eloy Lafuente (stronk7) 94da1daf40 Merge branch 'w42_MDL-29866_m22_setupinit' of git://github.com/skodak/moodle 2011-10-25 16:41:11 +02:00
Eloy Lafuente (stronk7) a7fc769154 Merge branch 'w42_MDL-29914_m22_codesniffer' of git://github.com/skodak/moodle 2011-10-25 16:34:04 +02:00
Eloy Lafuente (stronk7) bad48c0cbc MDL-29881 pear/console/getopt - deleting one more occurrence 2011-10-25 16:21:35 +02:00
Eloy Lafuente (stronk7) 980dfc5720 Merge branch 'w42_MDL-29881_m22_profiling' of git://github.com/skodak/moodle 2011-10-25 16:17:40 +02:00
Tim Hunt bed495578f MDL-29854 questions: display better message and more useful continue
when an error occurs in the middle of processing responeses.
2011-10-25 14:49:57 +01:00
Petr Skoda 99ddfdf4c4 MDL-29918 improve accesslib inline docs 2011-10-25 14:20:22 +02:00
Eloy Lafuente (stronk7) 1bf0076e83 Merge branch 'w42_MDL-29882_m22_overlib' of git://github.com/skodak/moodle 2011-10-25 13:27:09 +02:00
Petr Skoda 9845bd201f MDL-29914 remove unused CodeSniffer lib 2011-10-25 09:14:29 +02:00
Petr Skoda 41701ffd2d MDL-29866 fix p tags and more docs 2011-10-25 08:54:30 +02:00
Rossiani Wijaya b43251b846 MDL-29569: lesson_mod: in matching type questions, fixed and set default value for scoring and fixed jump page setting when response text is set to empty 2011-10-25 12:22:02 +08:00
Sam Hemelryk 1c3bd9b3ff Merge branch 'MDL-28718' of git://github.com/timhunt/moodle 2011-10-25 16:47:20 +13:00
Jerome Mouneyrac 5b9735b949 MDL-29716 Make token more flexible to support third party client - also fix issue with some code not matching the way the server authenticate/authorize token, missing iprestriction/validuntil for restricted users (there are iprestriction/validiuntil on token and on restricted user). Also add missing check when the user is not listed in the authorised list. 2011-10-25 11:17:18 +08:00
Sam Hemelryk e6acc5518b MDL-29106 white space clean up 2011-10-25 15:28:52 +13:00
Sam Hemelryk d040ea8893 Merge branch 'wip-MDL-29231-master' of git://github.com/phalacee/moodle 2011-10-25 15:19:45 +13:00
Marina Glancy 8722a322db MDL-29794: fixed bug with description cloning 2011-10-25 09:49:10 +08:00
Sam Hemelryk 6327bf8f2b Merge branch 'w42_MDL-29444_m22_iframe' of git://github.com/skodak/moodle 2011-10-25 14:28:53 +13:00
Sam Hemelryk 44d10ad002 Merge branch 'w42_MDL-29688_m22_enrol' of git://github.com/skodak/moodle 2011-10-25 14:02:20 +13:00
Marina Glancy 8df55bbe6a MDL-29481: rubric renderer now uses tables for smoother layout 2011-10-25 08:57:56 +08:00
Marina Glancy fc5adc3b5d MDL-29481: phpdocs in renderer, renamed the main CSS class for rubric 2011-10-25 08:57:56 +08:00
Sam Hemelryk 9d9d8e17eb Merge branch 'MDL-29902' of git://git.luns.net.uk/moodle 2011-10-25 13:10:43 +13:00
Eloy Lafuente (stronk7) 9bfe68bff8 Merge branch 'MDL-29339_b' of git://github.com/timhunt/moodle 2011-10-25 01:53:51 +02:00
Eloy Lafuente (stronk7) dc83f5b006 Merge branch 'w42_MDL-28627_m22_kses' of git://github.com/skodak/moodle 2011-10-25 01:42:48 +02:00
Sam Hemelryk 6f59dd1a8b Merge branch 'MDL-29906' of git://github.com/timhunt/moodle 2011-10-25 12:25:28 +13:00
Eloy Lafuente (stronk7) 4ecbf079b5 Merge branch 'w42_MDL-29671_m22_odbc' of git://github.com/skodak/moodle
Conflicts:
	lib/thirdpartylibs.xml
2011-10-25 01:21:09 +02:00
Eloy Lafuente (stronk7) e1595b32dc Merge branch 'w42_MDL-29863_m22_extendsorder' of git://github.com/skodak/moodle 2011-10-25 01:01:10 +02:00
Sam Hemelryk 9c99c3df46 Merge branch 'w42_MDL-29862_m22_fullmeinit' of git://github.com/skodak/moodle 2011-10-25 11:49:25 +13:00
Sam Hemelryk 2d94084463 Merge branch 'MDL-29825' of git://github.com/mouneyrac/moodle 2011-10-25 11:46:51 +13:00
Sam Hemelryk c486d7f2d8 Merge branch 'MDL-29459' of git://github.com/mouneyrac/moodle 2011-10-25 11:45:58 +13:00
Sam Hemelryk 2336a84333 MDL-29106 webservices: Minor whitespace cleanup 2011-10-25 11:43:53 +13:00
Sam Hemelryk b8b594843c Merge branch 'MDL-29106' of git://github.com/mouneyrac/moodle 2011-10-25 11:42:40 +13:00
Eloy Lafuente (stronk7) e4950b6cf0 Merge branch 'w42_MDL-29867_m22_author' of git://github.com/skodak/moodle 2011-10-24 23:14:31 +02:00
Eloy Lafuente (stronk7) 1272091a6c Merge branch 'w42_MDL-29878_m22_typo3' of git://github.com/skodak/moodle 2011-10-24 23:04:54 +02:00
Eloy Lafuente (stronk7) 918ecf1754 Merge branch 'w42_MDL-29880_m22_geoip' of git://github.com/skodak/moodle 2011-10-24 23:03:11 +02:00
David Mudrak 01609c9ad9 Merge remote branch 'origin/master' into rubric
Conflicts:
	lib/db/upgrade.php
	version.php
2011-10-24 22:13:01 +02:00
David Mudrak 8b9ada5e19 Merge remote branch 'github/rubric' into rubric 2011-10-24 21:02:56 +02:00
David Mudrak 9c9cee4e33 Simplified manage.php initialization
For now, we support activity modules only anyway.
2011-10-24 21:02:05 +02:00
David Mudrak d1bc817832 Merge pull request #16 from marinaglancy/wip-MDL-29483-rubric
MDL-29483: advanced grading methods support on assignment module, grading
2011-10-24 11:59:08 -07:00
Eloy Lafuente (stronk7) a4f6cc2fc7 Merge branch 'w42_MDL-29887_m22_swfobject' of git://github.com/skodak/moodle 2011-10-24 18:25:52 +02:00
Eloy Lafuente (stronk7) b64188cd97 Merge branch 'w42_MDL-29884_m22_base32' of git://github.com/skodak/moodle 2011-10-24 18:03:42 +02:00
Eloy Lafuente (stronk7) e9296e6177 Merge branch 'w42_MDL-29885_m22_csshover' of git://github.com/skodak/moodle 2011-10-24 17:50:27 +02:00
Petr Skoda 22d7cede55 MDL-29887 add forgotten flashvars
Thanks Eloy!
2011-10-24 17:43:05 +02:00
Tim Hunt 442a3c0b62 MDL-29906 quiz statistics report: replace use of deprectaed helpbutton. 2011-10-24 16:19:46 +01:00
Dan Poltawski e52a8ebdd2 MDL-29902: Course contacts display cleanup
This fixes warnings in course description when searching courses with
users assigned multiple display roles. It cleans up inconsistent behaviour
which I noticed whilst fixing the bug. Now course search and course listing
use the same logic to display users.
2011-10-24 15:52:35 +01:00
Eloy Lafuente (stronk7) f3b6463506 Merge branch 'w42_MDL-29886_m22_md5js' of git://github.com/skodak/moodle 2011-10-24 16:51:53 +02:00
Andrew Robert Nicols 3b3b8c6b0b MDL-29898: Fix documentation for CLI DB only installer 2011-10-24 12:31:16 +01:00
Tim Hunt deef04a44e MDL-29339 Manually cast objects to string before calling dmllib. 2011-10-24 11:08:10 +01:00
Andrew Robert Nicols ffd5e66e0e MDL-29864: Port a patch from upstream minify project to handle spaces in font-family names
No upstream release of minify with this patch included is available yet, so
I've ported just the relevant part of the fixing commit.
2011-10-24 10:48:05 +01:00
Aparup Banerjee 0e03740fc8 Merge branch 'MDL-29542' of git://github.com/rwijaya/moodle 2011-10-24 17:05:17 +08:00
Aparup Banerjee 64fcc674f9 Merge branch 'MDL-29828' of git://github.com/timhunt/moodle 2011-10-24 16:39:17 +08:00
Aparup Banerjee ef0aa7ba5c MDL-29527 RSS : improved language string. 2011-10-24 15:50:58 +08:00
Aparup Banerjee 9809413bba Merge branch 'MDL-29527' of git://git.luns.net.uk/moodle 2011-10-24 15:37:14 +08:00
Aparup Banerjee 5117a3d789 Merge branch 'MDL-29619-master' of git://github.com/ankitagarwal/moodle 2011-10-24 14:21:39 +08:00
Marina Glancy fc05f22204 MDL-29483: allow the grading instance to exist without itemid until submitting (submission in assignment might not yet existed) 2011-10-24 13:36:51 +08:00
Marina Glancy ed709412c2 MDL-29108: support for returnurl in rubriceditor 2011-10-24 13:36:42 +08:00
Marina Glancy 5060997ba5 MDL-29481: added support for remarks in rubric feedback 2011-10-24 13:36:33 +08:00
Aparup Banerjee b077de82f9 Merge branch 'MDL-29646-master' of git://github.com/ankitagarwal/moodle 2011-10-24 13:26:28 +08:00
Aparup Banerjee c11ccbfd8b Merge branch 'MDL-29818-master' of git://git.luns.net.uk/moodle 2011-10-24 11:36:07 +08:00
Jerome Mouneyrac 5d1017e11d MDL-29106 new web service naming convention 2011-10-24 11:06:00 +08:00
Petr Skoda 3df93d6d88 MDL-29444 use iframe embedding in IE
iframe is back in HTML 5, we can safely use it in IE for all text documents because object embedding has multiple problems
2011-10-23 21:14:04 +02:00
Petr Skoda 379434e440 MDL-29688 add support for status sync in enrol meta plugin 2011-10-23 20:52:10 +02:00
Petr Skoda 804796138a MDL-29688 properly reactivate ext db enrolment 2011-10-23 20:51:39 +02:00
Petr Skoda 358fb4dc06 MDL-29688 fix user enrolment modification event
Fixed invalid event name and usage.
2011-10-23 20:30:33 +02:00
Petr Skoda 2020594f13 MDL-29863 fix order of context and context_helper class definitions
The switched order may create problems in older PHP versions or opt caches. In any case it is more logical to define the classes in this order. Sorry for the trouble.
2011-10-23 12:50:56 +02:00
Petr Skoda 13ae464c0f MDL-29887 remove outdated swfobject
Contrib code can use YUI flash embedding, manual embedding or better switch to JS/HTML 5.
2011-10-23 12:05:44 +02:00
Petr Skoda ae8b7d530f MDL-29886 remove unused md5 js lib 2011-10-23 11:46:50 +02:00
Petr Skoda 60812c3c8b MDL-29885 remove unused csshover 2011-10-23 11:41:36 +02:00
Petr Skoda 8b0f478842 MDL-29884 remove unused base32 lib 2011-10-23 11:35:46 +02:00
Petr Skoda 2dae747629 MDL-29882 finally removing overlib 2011-10-23 10:51:51 +02:00
Petr Skoda c34724de75 MDL-29881 remove old apd profiling
Profiling is now handled via xhprof extension and new profiling UI.
2011-10-23 10:45:35 +02:00
Petr Skoda 5113e342d7 MDL-29880 bump up geoip version
The RC was the same as the final 1.0.0 version.
2011-10-23 10:14:36 +02:00
Petr Skoda 29329a2519 MDL-29878 reapply our typo3 fixes 2011-10-22 21:10:20 +02:00
Petr Skoda 2c5b848872 MDL-29878 import latest Typo3 4.5.0 2011-10-22 21:07:24 +02:00
Petr Skoda 210b9b68d2 MDL-29671 remove unused odbc lib 2011-10-22 20:48:39 +02:00
Petr Skoda 31cd5fe8ef MDL-29867 fix invalid file author 2011-10-22 20:18:11 +02:00
Petr Skoda 50ed196e51 MDL-29670 cron cleanup and minor fixing
Auth and enrol is moved to the top because other plugin types depend on accurate user list and enrolments. Passwords and failed login messages are generated during every cron execution.  Contexts are build properly in each execution. Fixed deleting of unconfirmed users. And minor phpdocs and comments improvements.
2011-10-22 14:31:18 +02:00
Petr Skoda 73b309e6a3 MDL-28627 remove buggy and obsolete KSES cleaning 2011-10-22 09:25:06 +02:00
Andreas Grabs 7e4b0986c8 MDL-29806 - When a Feedback activity is restore the "Site after submit" URL is not updated and shows "$@PAGEVIEWBYID*15463@$" 2011-10-21 23:08:59 +02:00
Petr Skoda f0f8f9a796 MDL-29866 page setup improvements
incorrect PAGE init - it should be done at the very end; redirect() should not use OUTPUT before PAGE init; SITEID should be deprecated in favour of $SITE->id (this is going to cause troubles in tenant switching in CLI, cron and tests); missing "global $SITE"'; minor coding style issues; PHPDocs; it also helps with merging/testing of multitenant patch
2011-10-21 16:35:19 +02:00
Ankit Kumar Agarwal 8077c81f47 MDL-29619 Validate urls before generating output 2011-10-21 14:00:38 +05:30
Petr Skoda d21149699c MDL-29862 incorrect wwwroot must be detected before session start 2011-10-21 09:52:18 +02:00
Jerome Mouneyrac 729ca37388 MDL-29825 better debug info when a ws client user misses a protocol capability 2011-10-21 15:11:38 +08:00
Marina Glancy 9e2eca0fde MDL-29483, MDL-29482 advanced grading in assignment, rubrics editor
- advanced grading plugins now return the grade in the specified range
- prohibited quick grading when advanced grading method is used
- fixed bug in processing description in rubric editor
- some improvements to rubric editor JS
2011-10-21 13:58:52 +08:00
Rossiani Wijaya 05db3cc7e5 MDL-29542 lesson module: changing qtype param type to INT 2011-10-21 12:38:29 +08:00
Tim Hunt 987541952f MDL-29828 quiz review: fix display of overdue time. 2011-10-20 23:16:58 +01:00
Tim Hunt 304f0d850f MDL-29815 question engine DB: bad group-by clause detected by Oracle.
Thanks to Yanfei Lu for finding this and suggesting the fix.
2011-10-20 11:14:14 +01:00
Tim Hunt 777781d16e MDL-29474 plugin dependencies: fix misspelling dependancies. 2011-10-20 11:13:45 +01:00
Tim Hunt 3ba2858853 MDL-29474 admin/index.php consistent use of die(); 2011-10-20 11:13:43 +01:00
Tim Hunt faadd32696 MDL-29474 prevent install/upgrade if plugin dependancies not met. 2011-10-20 11:13:41 +01:00
Tim Hunt cc359566fe MDL-29474 admin index/plugins/environment pages: all ouptut code -> renderer. 2011-10-20 11:13:39 +01:00
Tim Hunt 99e1a8d21b MDL-29474 admin envrionment page: fix boilerplate and indent. 2011-10-20 11:13:37 +01:00
Tim Hunt da2fdc3f34 MDL-29474 update more of the admin code to use the admin renderer. 2011-10-20 11:13:35 +01:00
Tim Hunt 36ca62cab7 MDL-29474 display the dependancy information on the upgrade screen. 2011-10-20 11:13:33 +01:00
Tim Hunt e61aaece64 MDL-29474 pluginlib: rename plugintype_interface to plugin_information.
So that the type acutally tells you what the thing is.
2011-10-20 11:13:31 +01:00
Tim Hunt 0242bdc759 MDL-29474 pluginlib.php: Code to load the dependancy information and make it available. 2011-10-20 11:13:29 +01:00
Tim Hunt 44a7f3840d MDL-29474 fix qtype and qbehaviour plugins to use proper pluginname strings.
But maintain backwards-compatibility for now.
2011-10-20 11:13:27 +01:00
Tim Hunt 6740c6058e MDL-29474 pluginlib.php: fix get_settings_url implimentation. 2011-10-20 11:13:25 +01:00
Tim Hunt 473289a097 MDL-29474 pluginlib.php: refactor the code to eliminate some duplication. 2011-10-20 11:13:23 +01:00
Tim Hunt b8343e68f0 MDL-29474 lib/pluginlib.php improve method names.
I discussed this change with David Mudrak who originally wrote this code, and he agreed.
2011-10-20 11:13:21 +01:00
Tim Hunt c6ba8f28bc MDL-28718 block_quiz_results - add missing require_once. 2011-10-20 11:12:19 +01:00
Tim Hunt 0d46102837 MDL-28718 block_quiz_results - add copyright headers. 2011-10-20 11:12:18 +01:00
Marina Glancy 36937f0264 MDL-29483: advanced grading methods support on assignment module, grading form element, rubrics
- gradingform API now has not only controller class but also instance class with functions and data related to the particular grading instance
- assignment grading form and grading form element deal with elements of gradingform_instance class instead of gradingform_controller
- implemented the class gradingform_rubric_instance
- added more phpdocs
2011-10-20 12:15:51 +08:00
Jerome Mouneyrac 6d4aa25892 MDL-29459 REST-XML server validate return values and throw exception if the returned values are bad (missing, not expected, wrong type). Remove from the REST serialize function previous error checking (missing key error, bypassing not expected keys). It now matches other servers that do validate the return values and throw exception 2011-10-20 11:22:36 +08:00
Ankit Kumar Agarwal e5e6c961c4 MDL-29464 Scorm Fixing regressions on userreport.php 2011-10-20 08:14:41 +05:30
Eloy Lafuente (stronk7) 3a81b37617 emergency release 2.2dev 2011-10-20 00:53:26 +02:00
Eloy Lafuente (stronk7) 3cb206f575 MDL-29496 course search - emergency regression fix 2011-10-20 00:49:02 +02:00
Eloy Lafuente (stronk7) 401d480d81 weekly release 2.2dev 2011-10-19 18:44:16 +02:00
Eloy Lafuente (stronk7) 4b8a3a7b41 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-10-19 18:41:14 +02:00
Dan Poltawski 636b4f9d2c MDL-29527 - RSS: Add a description to the reset keys page
Thanks to Alexander Bias for the suggestion
2011-10-19 13:48:25 +01:00
David Mudrak 671ec8f50e Form definitions can be removed now 2011-10-19 13:25:47 +02:00
Andrew Robert Nicols 5a6084cf61 MDL-29818: Improve error message when a grade has no answer 2011-10-19 09:34:59 +01:00
Sam Hemelryk 7229f239f3 MDL-28945 course_reports: Fixed up pagination issue 2011-10-19 16:50:23 +13:00
Sam Hemelryk 9a23f94bd9 MDL-26953 theme_nonzero: Quick fix to incorrect left position 2011-10-19 16:26:31 +13:00
Eloy Lafuente (stronk7) 2c6da73106 MDL-29602 unittest - fixing other tests to work with new accesslib 2011-10-19 01:37:30 +02:00
David Mudrak fde3380443 Saving a form as a public template
There is a new API method get_definition_copy() that is expected to
return the definition structure as if the form was written from scratch
via the editor. Such a prepared structure is passed to
a controller's update_definition() method in the new target area.

The same mechanism will be used for copying definitions from a shared
area to a normal gradable area.
2011-10-19 01:17:43 +02:00
David Mudrak 71bd9d2066 Trivial rename of the active method selector param 2011-10-18 16:39:54 +02:00
David Mudrak ac16cedf00 Fixed registering new form definition 2011-10-18 16:27:22 +02:00
David Mudrak a990240b31 Fixed form cancellation handling
Previously, a cancelled form was processed as if all rubric definition
was removed.
2011-10-18 16:26:06 +02:00
David Mudrak 98a73bb7ac Improved management page's integration into the settings block (again) 2011-10-18 16:25:30 +02:00
David Mudrak 553af5fd6a New capability to share and publish a form as a template 2011-10-18 14:55:25 +02:00
Eloy Lafuente (stronk7) c2551ed593 Merge branch 'w41_MDL-29602_m22_accesslib' of git://github.com/skodak/moodle 2011-10-18 13:15:13 +02:00
sam marshall f2b1537bd3 MDL-29719 Category page typo fix 2011-10-18 11:43:01 +02:00
Eloy Lafuente (stronk7) 92e0466957 Merge branch 'MDL-29627' of git://github.com/timhunt/moodle 2011-10-18 11:22:15 +02:00
Eloy Lafuente (stronk7) bca8b79e2a Merge branch 'MDL-28491' of git://github.com/timhunt/moodle 2011-10-18 11:08:15 +02:00
Eloy Lafuente (stronk7) 36903cece3 Merge branch 'wip-MDL-29496-master' of git://github.com/phalacee/moodle 2011-10-18 11:00:04 +02:00
Eloy Lafuente (stronk7) fc0aebb595 MDL-29496 unittests - verify COALESCE() cross-db compatibility 2011-10-18 15:58:56 +08:00
Tim Hunt 0e2274c382 MDL-28491 fix notice because $page was undefined. 2011-10-18 08:40:02 +01:00
Tim Hunt e4df79dd9c MDL-29627 quiz access rules: quiz edit settings was broken with no custom rules installed.
Thanks to Apu for reporting this.
2011-10-18 08:22:05 +01:00
Jason Fowler 1d559a1eb0 MDL-26712 Themes - Correcting text dimming for hidden labels 2011-10-18 13:54:51 +08:00
Aparup Banerjee 77c3e9d0c6 MDL-29768 Language : fixed installation undefined debugstringids notice 2011-10-18 11:19:43 +08:00
Sam Hemelryk f856216cb1 Merged branch 'MDL-28491' of git://github.com/timhunt/moodle.git with conflict resolution 2011-10-18 14:31:34 +13:00
Eloy Lafuente (stronk7) 065d6d80a2 Merge branch 'MDL-29627' of git://github.com/timhunt/moodle 2011-10-18 01:44:58 +02:00
Tim Hunt 613002ced4 MDL-29627 quiz access rules: fix two little problems found during integration.
Missing include was breaking unit tests if they were run separately.

Missing breaks in one switch.
2011-10-18 00:39:22 +01:00
Eloy Lafuente (stronk7) b0ef6d0420 NOBUG: Minibump to get css/js pruned everywhere 2011-10-18 01:37:09 +02:00
Eloy Lafuente (stronk7) c6015af280 Merge branch 'MDL-28613' of git://github.com/timhunt/moodle 2011-10-18 01:35:34 +02:00
David Mudrak 6832a10264 Initial support for the grading management screen
The user is sent to the new grade/grading/manage.php screen when an
advanced grading method is set in the activity mod form or via the
settings block.

The screen is supposed to (1) let the user change the currently active
grading method, (2) open the editor for the selected method, (3) create
new form from a template (4) display a preview of the form.
2011-10-18 01:05:07 +02:00
Eloy Lafuente (stronk7) c78238f151 Merge branch 'MDL-28614' of git://github.com/timhunt/moodle 2011-10-18 00:58:09 +02:00
Tim Hunt 6fd1995d3b MDL-28614 questions: remove another obsolete editing_head_contributions fn. 2011-10-17 23:53:53 +01:00
Sam Hemelryk 4f50a62635 Merge branch 'MDL-29501-master' of git://github.com/sammarshallou/moodle 2011-10-18 11:38:26 +13:00
Sam Hemelryk e797476fd2 MDL-29695 enrol-cohort: Minor code improvement 2011-10-18 11:02:00 +13:00
Ruslan Kabalin 543009cba4 MDL-29695 cohorts: Add pagination and search to cohorts adminstartion page 2011-10-18 10:54:59 +13:00
Ruslan Kabalin 22a811be2d MDL-29695 enrol: cohort: Add pagination and search to quickenrolment interface 2011-10-18 10:54:51 +13:00
Eloy Lafuente (stronk7) ebb9cd230b Merge branch 'MDL-28614' of git://github.com/timhunt/moodle 2011-10-17 23:09:03 +02:00
David Mudrak d80bb9bccd Initial version of a couple of big icons from Tango Desktop project 2011-10-17 21:42:04 +02:00
Eloy Lafuente (stronk7) cb284e953c Merge branch 'w41_MDL-29785_m22_tinymce' of git://github.com/skodak/moodle 2011-10-17 21:24:39 +02:00
Tim Hunt 1b796a2700 MDL-28491 diplay the quiz navigation on the summary page.
This makes the UI more consistent as you work through the quiz. The improvement is more noticable in some themes than others.
2011-10-17 12:06:44 +01:00
Tim Hunt 46e40567fa MDL-28614 qtypes: get_editing_head_contributions not used any more. Remove from base class. 2011-10-17 11:42:41 +01:00
Tim Hunt 891df4a949 MDL-28613 question CSS. Some text in the grey info box is the wrong size.
Note that according to http://www.quirksmode.org/css/contents.html, the > CSS selector works in IE 7+, so is probably now safe to use.
2011-10-17 11:28:49 +01:00
Eloy Lafuente (stronk7) a598a8d4b1 Merge branch 'MDL-29719-master' of git://github.com/sammarshallou/moodle 2011-10-17 12:05:05 +02:00
David Mudrak 6477706e9c Merge pull request #15 from marinaglancy/wip-renderer-rubric
MDL-29481: implemented rubrics renderer, improved rubrics UI
2011-10-17 02:54:53 -07:00
sam marshall 7fb4699266 MDL-29719 Option to display course shortname alongside fullname on course lists 2011-10-17 10:50:59 +01:00
Marina Glancy ab156741fc MDL-29481: implemented rubrics renderer, improved rubrics UI 2011-10-17 17:03:25 +08:00
Eloy Lafuente (stronk7) 22ca3e49e0 NOBUG - whitespace fixes (MDL-19488, MDL-27242, MDL-29435) 2011-10-17 10:19:59 +02:00
Sam Hemelryk ff90023b00 Merge branch 'MDL-28170' of git://github.com/stronk7/moodle 2011-10-17 18:52:23 +13:00
Sam Hemelryk 22ca670f88 Merge branch 'MDL-26953' of git://github.com/lazydaisy/moodle 2011-10-17 17:37:49 +13:00
Sam Hemelryk 5f6de5dc6b Merge branch 'MDL-29435' of git://github.com/mouneyrac/moodle 2011-10-17 17:31:52 +13:00
Sam Hemelryk d97505d2a3 Merge branch 'MDL-27242-master' of git://github.com/sammarshallou/moodle 2011-10-17 17:28:32 +13:00
Sam Hemelryk a6ec1940c8 Merge branch 'MDL-28945-master' of git://github.com/sammarshallou/moodle 2011-10-17 16:25:33 +13:00
Sam Hemelryk f7e8e43f2d Merge branch 'MDL-29781' of git://github.com/lazydaisy/moodle 2011-10-17 15:21:45 +13:00
Sam Hemelryk b55853ff63 Merge branch 'MDL-26893' of git://github.com/lazydaisy/moodle 2011-10-17 13:54:03 +13:00
Sam Hemelryk 92fe97f922 Merged branch 'MDL-29277' of git://github.com/mouneyrac/moodle.git with improvements 2011-10-17 13:18:30 +13:00
Eloy Lafuente (stronk7) 77c36d4ce8 MDL-28170 environment - add new 2.2 section
nothing changes from 2.1 as far as it was agreed that this will be
the last version supporting 1.9 upgrade. See issue for details.
2011-10-17 02:09:46 +02:00
Sam Hemelryk f35c45006a MDL-19488 mod_feedback: Coding style improvement 2011-10-17 11:12:33 +13:00
Sam Hemelryk 629aa44873 Merge branch 'MDL-19488_master_wip' of git://github.com/grabs/moodle 2011-10-17 11:07:25 +13:00
Eloy Lafuente (stronk7) e02ddb9be8 Merge branch 'MDL-28219d' of git://github.com/bostelm/moodle 2011-10-16 21:16:38 +02:00
David Mudrak 8168299d7e Improved integration into the settings block 2011-10-16 19:40:47 +02:00
David Mudrak 03d448e5ff Activity module's settings form redirects to the management screen when advanced grading method was selected to use 2011-10-16 19:40:47 +02:00
David Mudrak 3bd217aaa4 Grading manager's set_active_method() returns bool now 2011-10-16 19:40:46 +02:00
David Mudrak 6b5b05dc3b Fixing the nullability of levelid field in the gradingform_rubric_fillings table
Credit goes to Marina Glency for spotting this.
2011-10-16 19:40:46 +02:00
David Mudrak 44354f9e32 Adding a unique key to the gradingform_rubric_fillings table
Credit goes to Marina Glency for the suggestion.
2011-10-16 19:40:45 +02:00
David Mudrak 998085c9f7 Dropping the uq_rater_per_item from the table grading_instances
It was realized that we may need multiple instances per one rater/item
to be able to 1) implement a draft instance and 2) eventually keep the
history of advanced grading.
2011-10-16 19:40:34 +02:00
Eloy Lafuente (stronk7) 6966fea5f8 Merge branch 'MDL-27351' of git://github.com/nebgor/moodle 2011-10-16 19:21:57 +02:00
Eloy Lafuente (stronk7) 3452a2db90 Merge branch 'MDL-28436' of git://github.com/nebgor/moodle 2011-10-16 19:13:00 +02:00
Eloy Lafuente (stronk7) 140af2a0f0 MDL-29191 wiki - avoid one more username leak 2011-10-16 19:03:19 +02:00
Sun Zhigang 6b3e5ab959 MDL-29191 - Show creator's fullname instead of username 2011-10-16 18:52:35 +02:00
Stephen Bourget e4784b616a MDL-29698 Assignment: Fix broken logentry 2011-10-16 18:26:38 +02:00
Eloy Lafuente (stronk7) 39b3ee70c4 MDL-29768 debugstringids new help lang string now used 2011-10-16 17:51:59 +02:00
Eloy Lafuente (stronk7) f3c34143f9 Merge branch 'MDL-29768-master' of git://github.com/sammarshallou/moodle 2011-10-16 17:46:18 +02:00
Petr Skoda 626509d478 MDL-29785 enable TinyMCE on iOS 5 devices 2011-10-16 17:37:12 +02:00
Eloy Lafuente (stronk7) 28a01625f0 Merge branch 'MDL-28483-master' of git://github.com/ankitagarwal/moodle 2011-10-16 17:30:45 +02:00
Eloy Lafuente (stronk7) 29fb2bcc39 Merge branch 'MDL-29788-langpack_version' of git://github.com/mudrd8mz/moodle 2011-10-16 17:23:35 +02:00
Petr Skoda 9ef8d17ab2 MDL-29785 import latest TinyMCE 3.4.6
using https://github.com/moodle/custom-tinymce/tree/MOODLE_22_3.4.6 and https://github.com/moodle/custom-tinymce_spellchecker_php/tree/MOODLE_22_2.0.6 customised branches
2011-10-16 17:14:33 +02:00
Petr Skoda e922fe23b6 MDL-29602 accesslib improvements
Refactoring and improvements of the accesslib.php library including prevention of access for not-logged-in users when forcelogin enabled, improved context caching, OOP refactoring of contexts, fixed context loading, deduplication of role definitions in user sessions, installation improvements, decoupling of enrolment checking from capability loading, added detection of deleted and non-existent users in has_capability(), new function accesslib test, auth and enrol upgrade notes.

More details are available in tracker subtasks.
2011-10-16 14:05:18 +02:00
David Mudrak f3a99ef8f7 MDL-29788 Fixed the version of installed language packs 2011-10-15 00:01:44 +02:00
Mary Evans 7846a85bc1 MDL-29781 FIX for side-post-only layout 2011-10-14 20:39:36 +01:00
Petr Skoda 260c4a5b09 MDL-29773 prevent negative unix timestamps in the files table 2011-10-14 15:52:49 +02:00
Petr Skoda 694f3b74c7 MDL-29773 use db debuginfo when file record insertion fails 2011-10-14 15:30:54 +02:00
Mary Evans d4bb762643 MDL-26953 FIX for side-post-only layout 2011-10-14 02:28:03 +01:00
AMOS bot 49bfc8be29 Automatically generated installer lang files 2011-10-14 00:55:22 +00:00
David Mudrak 7ece4a0798 Merge branch 'rubric' of github.com:mudrd8mz/moodle into rubric 2011-10-13 22:45:30 +02:00
David Mudrak 20c207ab21 Merge branch 'master' into rubric
Conflicts:
	lib/db/upgrade.php
2011-10-13 22:42:47 +02:00
David Mudrak ba2a25a816 Merge pull request #14 from marinaglancy/wip-MDL-29481-rubric
MDL-29481: Filling rubric by teacher (first steps)
2011-10-13 13:24:37 -07:00
Tony Levi 1f186372ea MDL-28945: Fix course/activity completion reports initial selection broken 2011-10-13 17:00:52 +01:00
sam marshall 2e98ae02ec MDL-29768 debugstringids option did not do anything 2011-10-13 12:57:55 +01:00
Tim Hunt c999d841b4 MDL-29627 add quizaccess plugins to standard_plugins_list. 2011-10-13 11:13:26 +01:00
Tim Hunt 5adace99f8 MDL-29627 quiz access rules: backup and restore of data. 2011-10-13 11:13:24 +01:00
Tim Hunt ffe162d44d MDL-29627 quiz access move strings only used in one subplugin into that plugin.
AMOS BEGIN
 MOV [youcannotwait,mod_quiz],[youcannotwait,quizaccess_delaybetweenattempts]
 MOV [youmustwait,mod_quiz],[youmustwait,quizaccess_delaybetweenattempts]
 MOV [subnetwrong,mod_quiz],[subnetwrong,quizaccess_ipaddress]
 MOV [attemptsallowedn,mod_quiz],[attemptsallowedn,quizaccess_numattempts]
 MOV [notavailable,mod_quiz],[notavailable,quizaccess_openclosedate]
 MOV [quiznotavailable,mod_quiz],[quiznotavailable,quizaccess_openclosedate]
 MOV [passworderror,mod_quiz],[passworderror,quizaccess_password]
 MOV [requirepasswordmessage,mod_quiz],[requirepasswordmessage,quizaccess_password]
 MOV [requiresafeexambrowser,mod_quiz],[requiresafeexambrowser,quizaccess_safebrowser]
 MOV [safebrowsererror,mod_quiz],[safebrowsererror,quizaccess_safebrowser]
 MOV [safebrowsernotice,mod_quiz],[safebrowsernotice,quizaccess_safebrowser]
 MOV [popupwithjavascriptsupport,mod_quiz],[popupwithjavascriptsupport,quizaccess_securewindow]
 MOV [quiztimelimit,mod_quiz],[quiztimelimit,quizaccess_timelimit]
AMOS END
2011-10-13 11:13:22 +01:00
Tim Hunt 987c2d491e MDL-29627 quiz access refactor password check into a generic check page. 2011-10-13 11:13:20 +01:00
Tim Hunt 4344c5d5d9 MDL-29627 quiz old popup int column => new browsersecurity column.
The new column store more meaningful string constants.
2011-10-13 11:13:18 +01:00
Tim Hunt 0eafc98852 MDL-29627 fix code-checker issues throughout the quiz code. 2011-10-13 11:13:16 +01:00
Tim Hunt 1d9e1a3c06 MDL-29627 refactor the way the rules are constructed from the quiz. 2011-10-13 11:13:14 +01:00
Tim Hunt d755b0f577 MDL-29627 quiz_access_manager move all output code to the renderer.
This achieves a massive clean-up. It simplifies comples code in a number
of places. It allows some methods and functions to be moved to a more
appropriate home (for example cannot_review_message to the quiz class).
It moves more logic out of the renderer.
2011-10-13 11:13:12 +01:00
Tim Hunt dd70d561ef MDL-29627 quiz load access settings when a quiz is being attempted. 2011-10-13 11:13:10 +01:00
Tim Hunt c18ba64c3e MDL-29627 load the existing settings when the quiz settings are re-edited. 2011-10-13 11:13:08 +01:00
Tim Hunt b83c32d39f MDL-29627 quiz access plugins can add fields to mod_form and save the data. 2011-10-13 11:13:06 +01:00
Tim Hunt ea38245cfb MDL-29627 quiz access: move the unit tests into the relevant plugins. 2011-10-13 11:13:04 +01:00
Tim Hunt e5844040a0 MDL-29627 quiz access: fix variable names that don't match the coding style. 2011-10-13 11:13:02 +01:00
Tim Hunt a28a5d74af MDL-29627 refactor quiz access rules into separate subplugins. 2011-10-13 11:13:00 +01:00
sam marshall 73ca5f01c5 MDL-29501 Gradebook should not show links to activities that aren't available to user 2011-10-13 10:29:45 +01:00
sam marshall 6282381d05 MDL-27242 Conditional availability dates should support time as well as day
Change also adds minor feature to date-time selector so you can specify the time it uses as default when the value is 0 (disabled).

Credit: This feature was developed collaboratively by Charles Fulton, Neill Magill, and me.
2011-10-13 10:23:23 +01:00
Andreas Grabs 7b1126fd20 MDL-19488 - allow the creation of a "Public" feedback 2011-10-13 11:10:15 +02:00
Andreas Grabs e70dab0646 MDL-19488 - allow the creation of a "Public" feedback 2011-10-13 11:10:15 +02:00
Andreas Grabs 485ec5941e MDL-19488 - allow the creation of a "Public" feedback 2011-10-13 11:10:14 +02:00
Marina Glancy 3bf7ef29a5 MDL-29481: filling rubric by teacher, first steps 2011-10-13 16:27:33 +08:00
Aparup Banerjee 774118e960 MDL-27351 Quiz : updated string to reflect validation looking for embedded questions. 2011-10-13 15:27:30 +08:00
Jason Fowler 020088d695 MDL-29231 - Course, Resource - Fix so that the correct icon is displayed for courses that have had two or more files uploaded to them - Thanks Michael D for the patch 2011-10-13 11:50:23 +08:00
Ankit Kumar Agarwal 4373200f88 MDL-28483 URL adding validation checks and changing field externalurl to not-null 2011-10-13 08:57:27 +05:30
Adrian ec3c9dad7b MDL-28483 URL making url field required 2011-10-13 08:57:20 +05:30
Aparup Banerjee f6f2bebd0c MDL-28436 webservice : fixed missing field in query 2011-10-13 09:54:25 +08:00
Mary Evans 4146e4352b MDL-26983 FIX for side-post-only layout 2011-10-13 02:43:04 +01:00
Henning Bostelmann cc9fc649a1 MDL-28219 QE2 adaptive behaviour: fix scores and penalties 2011-10-12 23:27:10 +01:00
Eloy Lafuente (stronk7) 6731a04d93 weekly release 2.2dev 2011-10-12 23:46:36 +02:00
David Mudrak a5c4c99b24 Merge pull request #13 from marinaglancy/wip-formvalidation-rubric
Initial prototype of integrating advanced grading methods into current forms

There is a new form element called 'grading', which receives grading_controller as an argument and uses it's functions to produce html and validate the value.

The biggest change in grading form is that I included call to new function validate_and_preprocess_feedback, which validates and also fills the xgrade field with value, calculated by controller

Another issue: when the teacher grades the student on offline assignment for the first time, there may be no entry in submission table (and therefore no id). So I create a submission if there is advanced grading otherwise we won't be able to save via AJAX the process of filling rubric, because normal grading will create an entry only on submit.

And as an example I created text field in rubric, that is saved as grade. There is validation that value can not be more than 100.
2011-10-12 01:06:27 -07:00
Marina Glancy 6798c63e20 Added form element grading and integrated it with grading_controller 2011-10-12 15:01:53 +08:00
Marina Glancy 18e6298c7b Added validation to grading form, implemented methods in advanced grading to return form contents and process and return the final grade 2011-10-12 11:48:06 +08:00
David Mudrak 6abcb0c21f Merge remote branch 'origin/master' into rubric 2011-10-12 03:13:55 +02:00
David Mudrak fe817d8799 Various modifications and tweaks of the rubric editing page 2011-10-12 03:10:08 +02:00
David Mudrak 2824c44aec Merged Marina's recent work on rubric plugin
Conflicts:
	grade/grading/form/lib.php
	grade/grading/form/rubric/lib.php
	grade/grading/lib.php
2011-10-11 21:37:14 +02:00
Eloy Lafuente (stronk7) f6e1809608 Merge branch 'MDL-29625' of git://github.com/timhunt/moodle 2011-10-11 12:10:51 +02:00
Tim Hunt e4e0020ed6 MDL-29625 new helper function get_plugin_list_with_class.
Based on the existing get_plugin_list_with_function. As part
of implementing this, I refactored out a
get_plugin_list_with_file function, which may also be useful.
2011-10-11 10:46:23 +01:00
Aparup Banerjee fc09870e0e Merge branch 'wip-MDL-27058-master' of git://github.com/samhemelryk/moodle.git (solved conflict) 2011-10-11 13:37:34 +08:00
Aparup Banerjee 44d872b87e Merge branch 'wip-MDL-27278-master' of git://github.com/samhemelryk/moodle 2011-10-11 11:19:14 +08:00
Aparup Banerjee bdfb2b71b7 Merge branch 'wip-MDL-28549-master' of git://github.com/samhemelryk/moodle 2011-10-11 09:46:16 +08:00
Aparup Banerjee e6d80c1d3e Merge branch 'wip-MDL-28582-master' of git://github.com/samhemelryk/moodle 2011-10-11 09:26:30 +08:00
Eloy Lafuente (stronk7) 71e1a1f820 MDL-20306 Add course_category idnumber field: version bump and fix missing add_field() call 2011-10-10 23:54:40 +02:00
Andrew Robert Nicols 83cd9b163a MDL-20306 Add course_category idnumber field 2011-10-10 23:54:30 +02:00
Sam Hemelryk d87ef08598 Merge branch 'MDL-29447' of git://github.com/timhunt/moodle 2011-10-11 10:25:33 +13:00
Sam Hemelryk 811cbdcfbf Merge branch 'MDL-29640_master' of git://github.com/kordan/moodle 2011-10-11 10:15:46 +13:00
Aparup Banerjee aabf13c240 Merge branch 'wip-MDL-29224-master' of git://github.com/samhemelryk/moodle 2011-10-10 23:14:05 +08:00
Aparup Banerjee f717586091 Merge branch 'wip-MDL-29672-master' of git://github.com/samhemelryk/moodle 2011-10-10 22:45:01 +08:00
Kordan 2106024854 MDL-29640 fix for master 2011-10-10 13:19:15 +02:00
Eloy Lafuente (stronk7) c676af9f72 MDL-29564 Assignment: whitespace fix 2011-10-10 13:08:48 +02:00
Marina Glancy c586d2bfd6 MDL-29481: start implementing rubric editor 2011-10-10 15:27:15 +08:00
Sam Hemelryk 1216ab39d1 Merge branch 'MDL-16553' of git://github.com/bostelm/moodle 2011-10-10 17:56:14 +13:00
Jason Fowler b438bce949 MDL-29496 Search, Course - Code applied from patch to allow courses with a blank summary to be found in searchs - Thanks to Andrew Nicols for the patch 2011-10-10 11:35:42 +08:00
Dan Poltawski e0daa8499a MDL-29661 - lib/googleapi.php - Switch to SSL urls
I am not sure why I did not use these in the first instance, I don't
think Google supported SSL in the first versions of their API.

They do now, and it seems that this week they stopped supporting non-ssl
requests.
2011-10-10 16:27:53 +13:00
Ruslan Kabalin 7757237cdd MDL-29692 enrol: cohort: Fix default role issue in Chrome
This is related to MDL-24280, the issue still persists in Chrome. The patch
fixes it for Chrome and works fine for the most major browsers.
2011-10-10 14:57:42 +13:00
Sam Hemelryk 3070626a74 Merge branch 'w40_MDL-29686_m2_yuicaching' of git://github.com/skodak/moodle 2011-10-10 12:20:38 +13:00
Sam Hemelryk 77b93da537 Merge branch 'MDL-29668' of git://github.com/stronk7/moodle 2011-10-10 12:09:34 +13:00
Sam Hemelryk 36a42c57d1 Merge branch 'MDL-29677' of git://github.com/stronk7/moodle 2011-10-10 12:03:39 +13:00
Stephen Bourget 19f7391c50 MDL-29564 Assignment: Fixed a fatal error caused by a missing include 2011-10-10 11:54:53 +13:00
Sam Hemelryk f915430855 Merge branch 'master_MDL-29690' of git://github.com/danmarsden/moodle 2011-10-10 11:24:44 +13:00
Sam Hemelryk 356a6de351 MDL-27058 navigation: Added a setting to control whether user forum links are added 2011-10-10 10:57:02 +13:00
Sam Hemelryk 5a1b6297c9 MDL-28582 course-report: Added a nothing to display notification to the outline and complete activity reports 2011-10-10 10:35:05 +13:00
Sam Hemelryk e7f9b7abc8 MDL-28549 navigation: Added a missing login check when adding the calendar link to the navigation 2011-10-10 10:30:22 +13:00
Sam Hemelryk 01ec550b0f MDL-29672 user: Fixed user edit page for non-admin users 2011-10-10 10:27:18 +13:00
Sam Hemelryk 32b9e80b15 MDL-27278 navigation: Admin users can now set the home page preference like normal users 2011-10-10 10:17:00 +13:00
Eloy Lafuente (stronk7) b77088cd04 emergency release 2.2dev 2011-10-09 22:40:35 +02:00
Eloy Lafuente (stronk7) 033d656617 MDL-29520 - mysql multitable delete, outer join some tables 2011-10-09 22:15:27 +02:00
Eloy Lafuente (stronk7) 617a9bb4c3 MDL-29668 xmldb editor - fix PHP generation for foreign-unique keys 2011-10-08 21:49:56 +02:00
David Mudrak fba356f375 MDL-29483 Initial draft of advanced grading support in the Assignment module 2011-10-08 01:02:31 +02:00
David Mudrak 21d37aa623 MDL-29479 The draft of embedding the UI widgets into the page
The patch makes more sense when reviewed together with the parallel work
on gradingform_random (see MDL-29631) where the developed API is
actually tested.
2011-10-08 00:59:01 +02:00
Henning Bostelmann db3543428f MDL-16553 Assignment, student view: show response files when no grade available 2011-10-07 23:22:31 +01:00
David Mudrak b7a6bb9ba8 MDL-29480 Adding new fields into grading_definitions 2011-10-07 22:43:02 +02:00
David Mudrak 2c86d85daf MDL-29480 Making the upgrade.php in sync with recent install.xml 2011-10-07 22:07:55 +02:00
David Mudrak e8004aadc8 Merge remote branch 'origin/master' into rubric
Conflicts:
	lib/db/install.xml
	lib/db/upgrade.php
	version.php
2011-10-07 22:01:38 +02:00
Dan Marsden c9b8a78951 MDL-29690 fix usage of select all/deselect all in choice reports 2011-10-07 21:41:35 +13:00
Jerome Mouneyrac 9360256937 MDL-29277 when validate externallib function parameters or return values, build the path to the error into the debuginfo. This patch also revert the exception to the original invalid_parameter_exception and invalid_response_exception 2011-10-07 16:06:19 +08:00
Petr Skoda 14b1579aa0 MDL-29686 obey caching setting for moodle yui modules 2011-10-07 08:41:15 +02:00
Jerome Mouneyrac 2c28fa7643 MDL-29435 SOAP/XMLRPC server return debuginfo into the exception message when DEBUG >= NORMAL 2011-10-07 14:21:41 +08:00
Eloy Lafuente (stronk7) a7f99cf02e MDL-29677 unit tests - missing global was causing tons of incorrect debugging info 2011-10-07 01:24:18 +02:00
Eloy Lafuente (stronk7) 9086337415 weekly release 2.2dev 2011-10-07 00:09:23 +02:00
Eloy Lafuente (stronk7) 943c662d62 fix permissions 2011-10-07 00:07:15 +02:00
Eloy Lafuente (stronk7) 897015a0eb Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-10-07 00:04:52 +02:00
Stephen Bourget 7a66fb6dec mdl-23003 XMLDB missing strings
Fix notices generated by editing a table name using the XMLDB editor
2011-10-06 14:10:28 -04:00
Sam Hemelryk dee1a0fd7a MDL-29224 navigation: Navigation now respects a modules onclick event when preparing navigation nodes 2011-10-06 19:32:27 +13:00
AMOS bot 3529863465 Automatically generated installer lang files 2011-10-06 00:55:31 +00:00
David Mudrak afc766a238 MDL-29480 Allow null values for format fields
When inserting a record without the associated text, it does not make
sense to force format to be set. And using any hard-coded default is
tricky.
2011-10-05 18:29:21 +02:00
Aparup Banerjee 80f01595af MDL-29089 gradebook: fixed incorrect precision 2011-10-05 15:14:27 +08:00
Aparup Banerjee 73f5ebea0c Merge branch 'wip-MDL-28615-master-squashed' of git://github.com/samhemelryk/moodle 2011-10-05 10:54:05 +08:00
David Mudrak 3e43eff5dc MDL-29479 Improved gradingform_controller base class 2011-10-05 03:51:41 +02:00
David Mudrak 8cd65f1657 MDL-29479 It is now possible to set the active method to null (simple direct grading) 2011-10-05 03:50:12 +02:00
David Mudrak fb13a1484d MDL-29479 Improved grading manager factory function 2011-10-05 03:49:21 +02:00
Eloy Lafuente (stronk7) 202c2032fa Merge branch 'MDL-28469' of git://github.com/timhunt/moodle 2011-10-05 01:13:57 +02:00
Eloy Lafuente (stronk7) 7eaca44932 Merge branch 'wip-MDL-25697-master' of git://github.com/samhemelryk/moodle 2011-10-05 01:10:03 +02:00
Sam Hemelryk a161d96f3a MDL-28615 forum: Fixed up a couple of minor regressions 2011-10-05 11:08:50 +13:00
Tim Hunt 8dd9ccf475 MDL-29447 quiz course reset does not reset the quiz_grades table.
Thank to Jean-Michel Vedrine for working out the basic idea of the fix.
2011-10-04 22:47:44 +01:00
Eloy Lafuente (stronk7) cec6a15b99 Merge branch 'MDL-29644' of git://github.com/timhunt/moodle 2011-10-04 23:34:15 +02:00
Tim Hunt 77d0f5f07b MDL-29644 qtype multianswer, hints lost doing Moodle XML export.
This commit also includes a lot of useful tidying up of some of the unit
test helper code. I turned out that I could not use all the helper code
in my new tests, but despite that it will be useful in the future, so I
am committing it here.
2011-10-04 22:23:58 +01:00
Aparup Banerjee 2fbc708186 Merge branch 'MDL-29089_grade_history_missing_columns2' of git://github.com/andyjdavis/moodle.git (resolved version.php conflicts) 2011-10-05 02:46:38 +08:00
Eloy Lafuente (stronk7) a361676b22 Merge branch 'MDL-27857-assignment-portfolio' of git://github.com/mudrd8mz/moodle 2011-10-04 12:42:32 +02:00
Eloy Lafuente (stronk7) 66f7705daa Merge branch 'MDL-29548' of git://github.com/timhunt/moodle 2011-10-04 12:31:34 +02:00
Tim Hunt 7529f9e944 MDL-29548 allow message plugins to control message
defaults.

At the moment, each message_provider can specify defaults for
each message output, to say whether that message output should be
used for this type of message:
http://docs.moodle.org/dev/Messaging_2.0#Adding_new_message_type.

If the message provider does not set a default, this change allows
the message output to set the default.
2011-10-04 11:23:52 +01:00
Eloy Lafuente (stronk7) cdee9bd4f6 Merge branch 'MDL-19575-master' of git://github.com/ankitagarwal/moodle 2011-10-04 12:12:08 +02:00
Tim Hunt f0bfd964ba MDL-29520 question engine: work-around bad MySQL delete performance.
This is a temporary fix, until the new API from MDL-29589 is available.

(amended to fix comments)
2011-10-04 12:03:41 +02:00
Tim Hunt 7042a252c5 MDL-29571 questions: improve class=accesshide screen-reader hints.
This changes the hint that comes before the question text. There are
unit tests to verify the new behaviour.

(amended to fix comments)
2011-10-04 11:50:56 +02:00
Tim Hunt 9d1658a07e MDL-29571 qtype description refactor unit test code a bit. 2011-10-04 11:50:12 +02:00
Sam Hemelryk 0870a06899 Merge branch 'MDL-29621_master_wip' of git://github.com/grabs/moodle 2011-10-04 17:54:00 +13:00
Sam Hemelryk 6fdcc0d44f MDL-28615 forum: Fixed missing context regression 2011-10-04 16:37:16 +13:00
Sam Hemelryk 2bbe5979cb Merge branch 'MDL-28725_wiki_section2' of git://github.com/andyjdavis/moodle 2011-10-04 16:21:16 +13:00
Sam Hemelryk 66d216c574 Merge branch 'wip-mdl-25937-disableif' of git://github.com/rajeshtaneja/moodle 2011-10-04 15:52:57 +13:00
Eloy Lafuente (stronk7) c72cf85f17 Merge branch 'MDL-29511' of git://github.com/timhunt/moodle 2011-10-04 01:11:20 +02:00
Eloy Lafuente (stronk7) 38697ad4aa Merge branch 'MDL-29216' of git://github.com/timhunt/moodle 2011-10-03 22:52:55 +02:00
Eloy Lafuente (stronk7) 92c9bc6127 Merge branch 'MDL-29341' of git://github.com/timhunt/moodle 2011-10-03 22:50:18 +02:00
David Mudrak 9b8550f8d9 MDL-29479 Grading method plugins can extend module settings block
As a part of this, new class grading_controller is introduced and bunch
of smaller changes was done here and there.
2011-10-03 22:26:53 +02:00
David Mudrak f25a5a32b8 MDL-29479 Introducing a new capability moodle/grade:managegradingforms 2011-10-03 22:26:52 +02:00
David Mudrak 6440286719 MDL-29479 Active grading method can be set for the given area 2011-10-03 22:26:52 +02:00
David Mudrak 8a4acb3aca MDL-29479 Cosmetic rename of some methods in grading manager API 2011-10-03 22:26:52 +02:00
David Mudrak 6c9e506ca5 MDL-29479 List of available grading methods returned properly 2011-10-03 22:26:52 +02:00
David Mudrak f59f488a36 MDL-29480 Introducing new rubric plugin 2011-10-03 22:26:51 +02:00
Eloy Lafuente (stronk7) eefebc2edb Merge branch 'MDL-29570' of git://github.com/timhunt/moodle 2011-10-03 21:42:28 +02:00
Andreas Grabs af26e3453a MDL-29621 - XHTML not welformed when creating Feedback questions 2011-10-03 18:40:16 +02:00
Tim Hunt e07cccfc25 MDL-28469 quiz settings pages should be pagelayout admin. 2011-10-03 16:38:34 +01:00
Rajesh Taneja 63d5c4ac85 MDL-25937 Forms Library: Filepicker will respect disable if 2011-10-03 16:26:21 +08:00
David Mudrak fd04c5bd87 MDL-27857 Export to portfolio support in the assignment module improved
Portfolio API code in the assignment module expected that the current
user is the author of the submission. Therefore the "Export to
portfolio" button did not work when the submission was viewed by a
teacher (eg at the page with the list of all submissions in the Advanced
upload assignment).

This patch introduces a new callback argument 'submissionid' that holds
explicit ID of the submission the export deals with. With it available,
we do not need to expect the current user is the author of the
submission.

The patch also cleans some strings used for portfolio callback
exceptions.
2011-10-03 10:15:39 +02:00
David Mudrak d3996e0705 MDL-27857 Typo in the phpDocs fixed 2011-10-03 10:15:38 +02:00
David Mudrak b777c798b0 MDL-27857 Assignment does not use form tag to render portfolio export control widget
When this code was used as a part of the grading screen, the default
PORTFOLIO_ADD_FULL_FORM widget led to nested form elements. This patch replaces
the form widget with a plain text link that can be embedded safely.
2011-10-03 10:15:38 +02:00
Aparup Banerjee 6d3ae9103c MDL-26486 Lesson : fixed whitespace 2011-10-03 16:00:24 +08:00
Aparup Banerjee b735bd19cc Merge branch 'MDL-26486' of git://github.com/rwijaya/moodle 2011-10-03 15:37:50 +08:00
Andrew Davis (andyjdavis) c04b01f46f MDL-27640 rating: altered the return url provided by mod_data to ratings 2011-10-03 15:17:27 +08:00
Aparup Banerjee 9928cc8aa2 MDL-29541 Administration : fixed whitespace 2011-10-03 14:01:17 +08:00
Aparup Banerjee c1b723e5f1 Merge branch 'wip-mdl-29244' of git://github.com/rajeshtaneja/moodle 2011-10-03 13:57:48 +08:00
Rajesh Taneja 542cde9977 MDL-29244 users: Fixed comments for checkbox.php 2011-10-03 13:42:27 +08:00
Sam Hemelryk 1bbe222d53 Merge branch 'MDL-29296' of git://github.com/rwijaya/moodle 2011-10-03 17:08:21 +13:00
Sam Hemelryk 324e620474 Merge branch 'MDL-29605' of git://github.com/lazydaisy/moodle 2011-10-03 16:41:12 +13:00
Sam Hemelryk 006debe5e4 Merge branch 'wip-mdl-29539' of git://github.com/rajeshtaneja/moodle 2011-10-03 15:09:17 +13:00
Sam Hemelryk 36e966b005 MDL-28566 theme_base: removed MDL comment 2011-10-03 15:02:33 +13:00
Sam Hemelryk 2c66ceeaef Merge branch 'MDL-28566' of git://github.com/lazydaisy/moodle 2011-10-03 14:37:35 +13:00
Sam Hemelryk 3a2abe2e6e Merge branch 'MDL-29323' of git://github.com/lazydaisy/moodle 2011-10-03 14:29:49 +13:00
Sam Hemelryk 49ebdaf1da Merge branch 'wip-MDL-25454-master' of git://github.com/marinaglancy/moodle 2011-10-03 14:24:38 +13:00
Sam Hemelryk 9ea1b97fa4 Merge branch 'MDL-29558' of git://github.com/jamiepratt/moodle 2011-10-03 14:01:48 +13:00
AMOS bot 3551164776 Automatically generated installer lang files 2011-10-03 00:55:23 +00:00
Sam Hemelryk ef6380f042 Merge commit 'FETCH_HEAd' 2011-10-03 13:29:26 +13:00
Sam Hemelryk 1efd3fc8e7 Merge branch 'MDL-29567' of git://github.com/stronk7/moodle 2011-10-03 13:23:01 +13:00
Sam Hemelryk dcde0e9389 Merge branch 'MDL-29566' of git://github.com/stronk7/moodle 2011-10-03 12:49:39 +13:00
Sam Hemelryk 9209bcfbb1 Merge branch 'MDL-29618' of git://github.com/stronk7/moodle 2011-10-03 12:27:11 +13:00
Sam Hemelryk e06ae159ff Merge branch 'MDL-29612' of git://github.com/stronk7/moodle.git with typo cleanup 2011-10-03 12:24:40 +13:00
Eloy Lafuente (stronk7) 35aa80d166 Merge branch 'w39_MDL-29555_m22_yui341' of git://github.com/skodak/moodle 2011-10-03 01:06:15 +02:00
Sam Hemelryk dc39771b01 Merge branch 'MDL-29611' of git://github.com/stronk7/moodle 2011-10-03 12:02:58 +13:00
Sam Hemelryk 9afd0b3e2e Merge branch 'MDL-27295' of git://git.luns.net.uk/moodle 2011-10-03 11:51:30 +13:00
Eloy Lafuente (stronk7) f253e791ed MDL-29618 backup - back to handling enrolments properly. Regession of MDL-26841, my fault, grrr 2011-10-03 00:45:18 +02:00
Sam Hemelryk 61ab8f0749 MDL-28615 forum: Revised enrol_sharing_course to use the new enrol_get_shared_courses and fixed permission checking in forum_user_can_see_post 2011-10-03 11:23:30 +13:00
Eloy Lafuente (stronk7) 428da49383 MDL-29612 xmldb editor - fix recent regression + prevent unsigned floats and numbers 2011-10-02 01:18:32 +02:00
Eloy Lafuente (stronk7) 35c4f1e26f MDL-29611 xmldb editor - comments and whitespace cleanup 2011-10-02 00:41:55 +02:00
Mary Evans 39d59f934f MDL-29605-modify Afterburner menu to allow auto format 2011-10-01 23:13:12 +01:00
Tim Hunt a44995325e MDL-29216 multianswer qtype needs intereactive elements on the form. 2011-10-01 00:09:04 +01:00
Tim Hunt 522d9fcb2a MDL-29341 qtype numerical/calc: display of mc units badly laid out. 2011-09-30 23:32:57 +01:00
Dan Poltawski eea78ebc03 MDL-27295 Course Category View - Only display count when more than 0 courses 2011-09-30 11:59:58 +01:00
Kordan bbf28a466c MDL-29403 fix for master 2011-09-30 11:10:11 +02:00
Jamie Pratt 76e6cf5d84 MDL-29558 question preview: limit variants drop-down to the first 100
In situations when question has many variants.
2011-09-30 09:33:28 +07:00
Mary Evans db25d9b768 MDL-29323-FIX invalid border style 2011-09-30 03:04:17 +01:00
AMOS bot 7f674801fa Automatically generated installer lang files 2011-09-30 00:55:16 +00:00
Tim Hunt f123d67f60 MDL-29511 cannot review previous steps of a question attempt since MDL-28679. 2011-09-29 21:48:23 +01:00
Tim Hunt c3584ad683 MDL-29511 Fix problems on the quiz review questions page found while investigating this bug. 2011-09-29 21:46:39 +01:00
David Mudrak 091222581d MDL-29479 Registered new plugin type "gradingform" 2011-09-29 18:36:00 +02:00
David Mudrak 3da9e0a3cb MDL-29480 Database tables for the new advanced grading subsystem 2011-09-29 18:36:00 +02:00
Marina Glancy a6c124f5e3 MDL-25454: using the faster way to check if record exists in db 2011-09-29 17:00:04 +08:00
Tim Hunt 72bbb091a4 MDL-29570 Quiz editing page displays the wrong time in the status line sometimes. 2011-09-29 09:06:11 +01:00
Petr Skoda 9e44f79f57 MDL-29555 import YUI 3.4.1
To be backported to 2.1 stable soon.
2011-09-29 09:38:40 +02:00
Andrew Davis (andyjdavis) 1323bf5597 MDL-28725 wiki: added urlencode around the section variable when it is being used to construct URLs 2011-09-29 14:57:28 +08:00
Andrew Davis (andyjdavis) 41017112cf MDL-28725 wiki: added missing string
AMOS BEGIN
 CPY [invalidsection,core_admin],[invalidsection,mod_wiki]
AMOS END
2011-09-29 14:57:28 +08:00
Ankit Kumar Agarwal 5eb1cec34f MDL-19575 Global Search Adding capability checks to the search and stat pages 2011-09-29 08:52:29 +05:30
Andrew Davis (andyjdavis) 70e61f7071 MDL-29089 gradebook: added missing columns to the history tables 2011-09-29 09:53:18 +08:00
Rajesh Taneja c6aa3670d0 MDL-25937 Froms Library: Added server side validation for filepicker and filemanager 2011-09-29 09:39:44 +08:00
Rajesh Taneja 856484f92f MDL-29539 HTML Editor: Fixed XHTML formatting for editor 2011-09-29 09:36:57 +08:00
Sam Hemelryk 4b71542394 MDL-28615 mod_forum: Fixed the users page that shows all of the users posts 2011-09-29 14:20:58 +13:00
Sam Hemelryk 6598f57e90 MDL-25697 theme_base: Improved the alignment of the activity editing icons on the course frontpage 2011-09-29 14:15:38 +13:00
Marina Glancy e2558cd3ab MDL-25454 before skipping course backup make sure that there are no change entries in it's log during the last month. Store the nextstarttime even for courses that were not backed up 2011-09-29 08:56:48 +08:00
Eloy Lafuente (stronk7) 69857fa06e MDL-29567 postgresql - handle negative defaults in numerical cols properly 2011-09-29 01:20:10 +02:00
Eloy Lafuente (stronk7) c75d9b6700 MDL-29567 unit tests - add some tests to cover negative defaults in numerical cols 2011-09-29 01:15:37 +02:00
Eloy Lafuente (stronk7) 61e55061a6 MDL-29566 mysql - length / decimal specs in float columns are optional 2011-09-29 00:24:54 +02:00
Eloy Lafuente (stronk7) 12e89a0a69 MDL-29566 unit tests - add some tests to cover get_columns() with number/float columns 2011-09-29 00:13:44 +02:00
David Mudrak b11f9da65e MDL-29479 New feature FEATURE_ADVANCED_GRADING
Plugins will use this feature to claim their support for the new
advanced grading methods machinery.
2011-09-29 00:09:59 +02:00
David Mudrak 4333580e80 MDL-29479 Added new core subsystem "grading" 2011-09-29 00:09:58 +02:00
Mary Evans 16c0dd2b1a MDL-28566 - Fix for participants user details 2011-09-28 15:26:22 +01:00
Eloy Lafuente (stronk7) 43c741b9b4 MDL-29552 themes - show the name of the picked theme when working with device detection enabled 2011-09-28 13:39:18 +02:00
Eloy Lafuente (stronk7) 228d24fd97 weekly release 2.2dev 2011-09-28 11:07:04 +02:00
Eloy Lafuente (stronk7) 3babb0f5ba Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-09-28 11:04:07 +02:00
Rossiani Wijaya c90ba16f51 MDL-26486 lesson mod: fixed grade report error on matching and shortanswers questions 2011-09-28 11:34:14 +08:00
AMOS bot f0990dd4dc Automatically generated installer lang files 2011-09-28 00:55:17 +00:00
Eloy Lafuente (stronk7) ce05a13d83 Merge branch 'w38_MDL-29533_m22_yui341pr1' of git://github.com/skodak/moodle 2011-09-27 12:12:57 +02:00
Petr Skoda 4bb2ac5a7f MDL-29533 add skins 2011-09-27 12:08:02 +02:00
Petr Skoda a4e0591dba MDL-29533 fresh build fetched from cdn 2011-09-27 11:55:16 +02:00
Petr Skoda 3340dae60a MDL-29504 plugin_callback() - undelete global $CFG that was supposed to be unused 2011-09-27 10:12:57 +02:00
Aparup Banerjee 260316ce48 Merge branch 'MDL-29230' of git://github.com/rwijaya/moodle 2011-09-27 14:52:00 +08:00
Aparup Banerjee 59e2fd4523 Merge branch 'wip-mdl-29244' of git://github.com/rajeshtaneja/moodle 2011-09-27 13:22:14 +08:00
Rajesh Taneja 8295d44434 MDL-29244 Users: Fixed filter for selecting users who never logged in and course roles dropdown show all revelent roles 2011-09-27 12:30:16 +08:00
Aparup Banerjee df1ed7d435 Merge branch 'MDL-25241_forum_search_ratings' of git://github.com/andyjdavis/moodle 2011-09-27 11:18:17 +08:00
Aparup Banerjee b11bf8b841 Merge branch 'w38_MDL-29510_m22_orglang' of git://github.com/skodak/moodle 2011-09-27 10:19:06 +08:00
Sam Hemelryk f08d258cd4 Merge branch 'master_MDL-29519' of git://github.com/danmarsden/moodle 2011-09-27 14:09:18 +13:00
Eloy Lafuente (stronk7) 432e182654 MDL-29504 plugin_callback() - delete some unused code 2011-09-27 02:03:50 +02:00
Eloy Lafuente (stronk7) 01b4e00161 Merge branch 'w38_MDL-29509_m22_admintool2' of git://github.com/skodak/moodle 2011-09-27 01:52:23 +02:00
Eloy Lafuente (stronk7) a068812635 Merge branch 'w38_MDL-29504_m22_plugincallback' of git://github.com/skodak/moodle 2011-09-27 01:02:51 +02:00
Eloy Lafuente (stronk7) bde5c82a20 Merge branch 'MDL-28686' of git://github.com/bostelm/moodle 2011-09-27 00:45:45 +02:00
Petr Skoda 5e8cc8462b MDL-29509 fix maturity flag 2011-09-27 00:39:23 +02:00
Petr Skoda dd51f9b1c5 MDL-29509 fix customlang upgrade script 2011-09-27 00:39:23 +02:00
Petr Skoda be746aabfd MDL-29509 fix small docs typos 2011-09-27 00:39:22 +02:00
Petr Skoda d11a27bffb MDL-29509 use appropriate requires and consistent versions for all admin tools 2011-09-27 00:39:22 +02:00
Petr Skoda fab6f7b78e MDL-29509 migrate DB replace to admin tools 2011-09-27 00:39:21 +02:00
Petr Skoda 3cdfaeeff9 MDL-29509 new admin tool manager UI 2011-09-27 00:39:21 +02:00
Petr Skoda 62f97dfc8c MDL-29509 remove dangerous and obsolete dataroot purge script
The problem is that we would have to purge files table too, but in any case this is absolutely forbidden for production sites. People have to use command line deleting on dev sites, sorry.
2011-09-27 00:39:21 +02:00
Petr Skoda 26e629c19b MDL-29509 new dbperf tool will have to be implemented from scratch 2011-09-27 00:39:21 +02:00
Petr Skoda 9597e00b79 MDL-29509 move timezoneimport to admin tools
AMOS BEGIN
 MOV [configintrotimezones,core_admin],[configintrotimezones,tool_timezoneimport]
 MOV [importtimezones,core_admin],[importtimezones,tool_timezoneimport]
 MOV [importtimezonescount,core_admin],[importtimezonescount,tool_timezoneimport]
 MOV [importtimezonesfailed,core_admin],[importtimezonesfailed,tool_timezoneimport]
 MOV [updatetimezones,core_admin],[updatetimezones,tool_timezoneimport]
AMOS END
2011-09-27 00:39:20 +02:00
Petr Skoda 17a14fbd01 MDL-29509 move spamcleaner to admin tools
Why? Because this tool does not support contexts, allows data modifications and is intended only for admins. It is still linked from admin reports for now, we will move it elsewhere once we know where to add general new reports.

AMOS BEGIN
 MOV [pluginname,report_spamcleaner],[pluginname,tool_spamcleaner]
 MOV [spamauto,report_spamcleaner],[spamauto,tool_spamcleaner]
 MOV [spamcannotdelete,report_spamcleaner],[spamcannotdelete,tool_spamcleaner]
 MOV [spamcannotfinduser,report_spamcleaner],[spamcannotfinduser,tool_spamcleaner]
 MOV [spamcleanerintro,report_spamcleaner],[spamcleanerintro,tool_spamcleaner]
 MOV [spamdeleteall,report_spamcleaner],[spamdeleteall,tool_spamcleaner]
 MOV [spamdeleteallconfirm,report_spamcleaner],[spamdeleteallconfirm,tool_spamcleaner]
 MOV [spamdeleteconfirm,report_spamcleaner],[spamdeleteconfirm,tool_spamcleaner]
 MOV [spamdesc,report_spamcleaner],[spamdesc,tool_spamcleaner]
 MOV [spameg,report_spamcleaner],[spameg,tool_spamcleaner]
 MOV [spamfromblog,report_spamcleaner],[spamfromblog,tool_spamcleaner]
 MOV [spaminvalidresult,report_spamcleaner],[spaminvalidresult,tool_spamcleaner]
 MOV [spamoperation,report_spamcleaner],[spamoperation,tool_spamcleaner]
 MOV [spamresult,report_spamcleaner],[spamresult,tool_spamcleaner]
 MOV [spamsearch,report_spamcleaner],[spamsearch,tool_spamcleaner]
AMOS END
2011-09-27 00:39:20 +02:00
Petr Skoda cff8fc8d5b MDL-29509 move qeupgradehelper to admin tools
AMOS BEGIN
 MOV [action,local_qeupgradehelper],[action,tool_qeupgradehelper]
 MOV [alreadydone,local_qeupgradehelper],[alreadydone,tool_qeupgradehelper]
 MOV [areyousure,local_qeupgradehelper],[areyousure,tool_qeupgradehelper]
 MOV [areyousuremessage,local_qeupgradehelper],[areyousuremessage,tool_qeupgradehelper]
 MOV [areyousureresetmessage,local_qeupgradehelper],[areyousureresetmessage,tool_qeupgradehelper]
 MOV [attemptstoconvert,local_qeupgradehelper],[attemptstoconvert,tool_qeupgradehelper]
 MOV [backtoindex,local_qeupgradehelper],[backtoindex,tool_qeupgradehelper]
 MOV [conversioncomplete,local_qeupgradehelper],[conversioncomplete,tool_qeupgradehelper]
 MOV [convertattempts,local_qeupgradehelper],[convertattempts,tool_qeupgradehelper]
 MOV [convertquiz,local_qeupgradehelper],[convertquiz,tool_qeupgradehelper]
 MOV [convertedattempts,local_qeupgradehelper],[convertedattempts,tool_qeupgradehelper]
 MOV [cronenabled,local_qeupgradehelper],[cronenabled,tool_qeupgradehelper]
 MOV [croninstructions,local_qeupgradehelper],[croninstructions,tool_qeupgradehelper]
 MOV [cronprocesingtime,local_qeupgradehelper],[cronprocesingtime,tool_qeupgradehelper]
 MOV [cronsetup,local_qeupgradehelper],[cronsetup,tool_qeupgradehelper]
 MOV [cronsetup_desc,local_qeupgradehelper],[cronsetup_desc,tool_qeupgradehelper]
 MOV [cronstarthour,local_qeupgradehelper],[cronstarthour,tool_qeupgradehelper]
 MOV [cronstophour,local_qeupgradehelper],[cronstophour,tool_qeupgradehelper]
 MOV [extracttestcase,local_qeupgradehelper],[extracttestcase,tool_qeupgradehelper]
 MOV [extracttestcase_desc,local_qeupgradehelper],[extracttestcase_desc,tool_qeupgradehelper]
 MOV [gotoindex,local_qeupgradehelper],[gotoindex,tool_qeupgradehelper]
 MOV [gotoquizreport,local_qeupgradehelper],[gotoquizreport,tool_qeupgradehelper]
 MOV [gotoresetlink,local_qeupgradehelper],[gotoresetlink,tool_qeupgradehelper]
 MOV [includedintheupgrade,local_qeupgradehelper],[includedintheupgrade,tool_qeupgradehelper]
 MOV [invalidquizid,local_qeupgradehelper],[invalidquizid,tool_qeupgradehelper]
 MOV [listpreupgrade,local_qeupgradehelper],[listpreupgrade,tool_qeupgradehelper]
 MOV [listpreupgrade_desc,local_qeupgradehelper],[listpreupgrade_desc,tool_qeupgradehelper]
 MOV [listpreupgradeintro,local_qeupgradehelper],[listpreupgradeintro,tool_qeupgradehelper]
 MOV [listtodo,local_qeupgradehelper],[listtodo,tool_qeupgradehelper]
 MOV [listtodo_desc,local_qeupgradehelper],[listtodo_desc,tool_qeupgradehelper]
 MOV [listtodointro,local_qeupgradehelper],[listtodointro,tool_qeupgradehelper]
 MOV [listupgraded,local_qeupgradehelper],[listupgraded,tool_qeupgradehelper]
 MOV [listupgraded_desc,local_qeupgradehelper],[listupgraded_desc,tool_qeupgradehelper]
 MOV [listupgradedintro,local_qeupgradehelper],[listupgradedintro,tool_qeupgradehelper]
 MOV [noquizattempts,local_qeupgradehelper],[noquizattempts,tool_qeupgradehelper]
 MOV [nothingupgradedyet,local_qeupgradehelper],[nothingupgradedyet,tool_qeupgradehelper]
 MOV [notupgradedsiterequired,local_qeupgradehelper],[notupgradedsiterequired,tool_qeupgradehelper]
 MOV [numberofattempts,local_qeupgradehelper],[numberofattempts,tool_qeupgradehelper]
 MOV [oldsitedetected,local_qeupgradehelper],[oldsitedetected,tool_qeupgradehelper]
 MOV [outof,local_qeupgradehelper],[outof,tool_qeupgradehelper]
 MOV [pluginname,local_qeupgradehelper],[pluginname,tool_qeupgradehelper]
 MOV [pretendupgrade,local_qeupgradehelper],[pretendupgrade,tool_qeupgradehelper]
 MOV [pretendupgrade_desc,local_qeupgradehelper],[pretendupgrade_desc,tool_qeupgradehelper]
 MOV [questionsessions,local_qeupgradehelper],[questionsessions,tool_qeupgradehelper]
 MOV [quizid,local_qeupgradehelper],[quizid,tool_qeupgradehelper]
 MOV [quizupgrade,local_qeupgradehelper],[quizupgrade,tool_qeupgradehelper]
 MOV [quizzesthatcanbereset,local_qeupgradehelper],[quizzesthatcanbereset,tool_qeupgradehelper]
 MOV [quizzestobeupgraded,local_qeupgradehelper],[quizzestobeupgraded,tool_qeupgradehelper]
 MOV [quizzeswithunconverted,local_qeupgradehelper],[quizzeswithunconverted,tool_qeupgradehelper]
 MOV [resetquiz,local_qeupgradehelper],[resetquiz,tool_qeupgradehelper]
 MOV [resetcomplete,local_qeupgradehelper],[resetcomplete,tool_qeupgradehelper]
 MOV [resettingquizattempts,local_qeupgradehelper],[resettingquizattempts,tool_qeupgradehelper]
 MOV [resettingquizattemptsprogress,local_qeupgradehelper],[resettingquizattemptsprogress,tool_qeupgradehelper]
 MOV [upgradingquizattempts,local_qeupgradehelper],[upgradingquizattempts,tool_qeupgradehelper]
 MOV [upgradedsitedetected,local_qeupgradehelper],[upgradedsitedetected,tool_qeupgradehelper]
 MOV [upgradedsiterequired,local_qeupgradehelper],[upgradedsiterequired,tool_qeupgradehelper]
 MOV [veryoldattemtps,local_qeupgradehelper],[veryoldattemtps,tool_qeupgradehelper]
AMOS END
2011-09-27 00:39:20 +02:00
Petr Skoda b703861f49 MDL-29509 move customlang to admin tools
AMOS BEGIN
 MOV [checkin,report_customlang],[checkin,tool_customlang]
 MOV [checkout,report_customlang],[checkout,tool_customlang]
 MOV [checkoutdone,report_customlang],[checkoutdone,tool_customlang]
 MOV [checkoutinprogress,report_customlang],[checkoutinprogress,tool_customlang]
 MOV [confirmcheckin,report_customlang],[confirmcheckin,tool_customlang]
 MOV [customlang:edit,report_customlang],[customlang:edit,tool_customlang]
 MOV [customlang:view,report_customlang],[customlang:view,tool_customlang]
 MOV [filter,report_customlang],[filter,tool_customlang]
 MOV [filtercomponent,report_customlang],[filtercomponent,tool_customlang]
 MOV [filtercustomized,report_customlang],[filtercustomized,tool_customlang]
 MOV [filtermodified,report_customlang],[filtermodified,tool_customlang]
 MOV [filteronlyhelps,report_customlang],[filteronlyhelps,tool_customlang]
 MOV [filtershowstrings,report_customlang],[filtershowstrings,tool_customlang]
 MOV [filterstringid,report_customlang],[filterstringid,tool_customlang]
 MOV [filtersubstring,report_customlang],[filtersubstring,tool_customlang]
 MOV [headingcomponent,report_customlang],[headingcomponent,tool_customlang]
 MOV [headinglocal,report_customlang],[headinglocal,tool_customlang]
 MOV [headingstandard,report_customlang],[headingstandard,tool_customlang]
 MOV [headingstringid,report_customlang],[headingstringid,tool_customlang]
 MOV [markinguptodate,report_customlang],[markinguptodate,tool_customlang]
 MOV [markinguptodate_help,report_customlang],[markinguptodate_help,tool_customlang]
 MOV [markuptodate,report_customlang],[markuptodate,tool_customlang]
 MOV [modifiedno,report_customlang],[modifiedno,tool_customlang]
 MOV [modifiednum,report_customlang],[modifiednum,tool_customlang]
 MOV [nostringsfound,report_customlang],[nostringsfound,tool_customlang]
 MOV [placeholder,report_customlang],[placeholder,tool_customlang]
 MOV [placeholder_help,report_customlang],[placeholder_help,tool_customlang]
 MOV [placeholderwarning,report_customlang],[placeholderwarning,tool_customlang]
 MOV [pluginname,report_customlang],[pluginname,tool_customlang]
 MOV [savecheckin,report_customlang],[savecheckin,tool_customlang]
 MOV [savecontinue,report_customlang],[savecontinue,tool_customlang]
AMOS END
2011-09-27 00:39:19 +02:00
Petr Skoda 58415fa0aa MDL-29509 explain registration url trouble
The problem is that the registration does not pass the confirmation url together with the registration request, this means we can not move the admin/registration to admin/tool/registration, but also sites with custom $CFG->admin can not be registered either.
2011-09-27 00:39:19 +02:00
Petr Skoda 67a6243ad4 MDL-29509 add cron support for admin tools 2011-09-27 00:39:19 +02:00
Petr Skoda 60c452b4a2 MDL-29504 fix invalid plugin callback names
Only modules are allow to use old style non-frankenstyle callback names, all other plugins must use full component prefix.
2011-09-27 00:37:18 +02:00
Sam Hemelryk 87eca3192f Merge branch 'MDL-28424' of git://github.com/timhunt/moodle.git with changes 2011-09-27 11:24:02 +13:00
Eloy Lafuente (stronk7) e135797586 Merge branch 'w38_MDL-29401_m22_frankenstyle' of git://github.com/skodak/moodle 2011-09-27 00:00:20 +02:00
Petr Skoda a5bb3a70aa MDL-29401 few more tests for Eloy 2011-09-26 23:26:09 +02:00
Petr Skoda 5a2bd48665 MDL-29401 fix previous regression
The problem was introduced when / was removed from PARAM_ALPHAEXT.
2011-09-26 23:21:39 +02:00
Eloy Lafuente (stronk7) c430009676 Merge branch 'MDL-29462' of git://github.com/timhunt/moodle 2011-09-26 22:40:32 +02:00
Eloy Lafuente (stronk7) e75f06d9ec Merge branch 'MDL-28202' of git://github.com/timhunt/moodle 2011-09-26 22:27:00 +02:00
Eloy Lafuente (stronk7) 8374ca3c5f Merge branch 'w38_MDL-29533_m22_yui341pr1' of git://github.com/skodak/moodle 2011-09-26 22:10:52 +02:00
Petr Skoda 363e0389ec MDL-29533 import new YUI 3.4.1pr1
We need to test this in master because we need to backport it into Moodle 2.1.x in order to resolve issues with latest browsers.
2011-09-26 21:54:31 +02:00
Eloy Lafuente (stronk7) 1a8ab39b3c Merge branch 'MDL-29427' of git://github.com/timhunt/moodle 2011-09-26 21:47:40 +02:00
Eloy Lafuente (stronk7) 789e95ddde Merge branch 'MDL-29528' of git://github.com/timhunt/moodle 2011-09-26 21:43:57 +02:00
Tim Hunt 288633ebbe MDL-29528 qtype multichoice and caclulated combined feedback format overwritten during upgrade. 2011-09-26 13:37:12 +01:00
Aparup Banerjee 976624ad5e Merge branch 'MDL-29270-question-grade' of git://github.com/mudrd8mz/moodle 2011-09-26 16:57:01 +08:00
Rossiani Wijaya 0343553fbc MDL-29296 lesson mod: fixed regression for continue button on last lesson page. 2011-09-26 16:41:49 +08:00
Aparup Banerjee 2ba08e4ba2 Merge branch 'wip-MDL-29487-master' of git://github.com/samhemelryk/moodle 2011-09-26 16:00:04 +08:00
Aparup Banerjee 94f59561ad Merge branch 'MDL-29464' of git://github.com/timhunt/moodle 2011-09-26 14:32:52 +08:00
Aparup Banerjee 2a8702c158 Merge branch 'MDL-29333_rating_ajax' of git://github.com/andyjdavis/moodle 2011-09-26 13:47:20 +08:00
Sam Hemelryk 32da08a2e2 Merge branch 'MDL-29428' of git://github.com/timhunt/moodle 2011-09-26 14:03:54 +13:00
AMOS bot 15218d8183 Merge branch 'master' into install_master 2011-09-26 00:55:27 +00:00
Sam Hemelryk aa856c7999 Merge branch 'MDL-29484' of git://github.com/timhunt/moodle 2011-09-26 13:53:17 +13:00
Sam Hemelryk 98182d2bb6 Merge branch 'MDL-29492' of git://github.com/timhunt/moodle 2011-09-26 13:50:36 +13:00
Sam Hemelryk 663a12c32e Merge branch 'MDL-29493' of git://github.com/timhunt/moodle 2011-09-26 13:47:41 +13:00
Petr Skoda 65e9eac0d1 MDL-29401 fix forgotten area
Thanks Eloy!
2011-09-26 02:16:31 +02:00
Dan Marsden 8cf1862ccc MDL-29519 move plagiarism cron to after event queue 2011-09-26 13:15:15 +13:00
Sam Hemelryk 6ef900d20b Merge branch 'MDL-29416' of git://github.com/stronk7/moodle 2011-09-26 12:55:19 +13:00
Sam Hemelryk 809dae3461 Merge branch 'MDL-29336-numerrors-mapping' of git://github.com/mudrd8mz/moodle 2011-09-26 12:37:12 +13:00
Eloy Lafuente (stronk7) 1c08c1fa32 MDL-29416 oracle - xmldb report to change all BYTE semantics to CHAR 2011-09-26 00:54:25 +02:00
Sam Hemelryk 0ebe6764e9 Merge branch 'MDL-29478' of git://github.com/stronk7/moodle 2011-09-26 10:52:48 +13:00
Sam Hemelryk fea98bd4c3 Merge branch 'MDL-29139' of git://github.com/nebgor/moodle 2011-09-26 10:46:39 +13:00
Sam Hemelryk 9d0fc907e8 Merge branch 'MDL-29190_master_wip' of git://github.com/grabs/moodle 2011-09-26 10:38:54 +13:00
Jean-Michel Vedrine 9107daa0f5 MDL-29270 Fixed question bank backup converter (field rename) 2011-09-25 23:33:00 +02:00
Eloy Lafuente (stronk7) e63ae067f4 weekly release 2.2dev (emergency) 2011-09-25 17:25:04 +02:00
Eloy Lafuente (stronk7) ac4a2a8c08 MDL-29512 Revert "MDL-25937 Froms Library: Added server side validation for filepicker and filemanager"
This reverts commit f03a17bb09.
2011-09-25 17:13:40 +02:00
Eloy Lafuente (stronk7) f0e2317087 MDL-29512 Revert "MDL-25937 Forms Library: Added Javascript validation for filepicker and filemanager. Also fixed disbledif rule check for both"
This reverts commit 7dfe3c517b.
2011-09-25 17:10:27 +02:00
Petr Skoda aff24313be MDL-29401 introduce new frankenstyle PARAM types
New PARAM_COMPONENT, PARAM_AREA and PARAM_PLUGIN + fixing of hopefully all current incorrect parameter types. This should help with diagnosing of incorrectly named 3rd party plugins too.
2011-09-25 09:59:55 +02:00
Petr Skoda 228ec7bba4 MDL-29510 remove moodle.org lang file
It is now maintained in a separate local plugin. Translators have to use AMOS already.
2011-09-25 09:32:49 +02:00
AMOS bot bf4771b438 Automatically generated installer lang files 2011-09-25 00:55:16 +00:00
AMOS bot 58fad12668 Automatically generated installer lang files 2011-09-24 00:55:18 +00:00
Andreas Grabs 2497d0273d MDL-29190 - XHTML not well formed in show_nonrespondents.php 2011-09-23 18:56:47 +02:00
Tim Hunt 7664182d7f MDL-29493 questions should be createable with defaultmark a float. 2011-09-23 12:55:01 +01:00
Tim Hunt b84dca8cb8 MDL-29492 restore unit test prettiness. 2011-09-23 12:15:13 +01:00
Tim Hunt e9735a1f31 MDL-29484 qformat xml tests failing. 2011-09-23 12:06:45 +01:00
Sam Hemelryk 9d796fba6c MDL-29487 enrol: Fixed typo in enrol_sharing_course 2011-09-23 18:17:35 +12:00
Rossiani Wijaya 6d84e82f3a MDL-29230 lesson_module: fixed question's answer to have 0 value. 2011-09-23 14:02:46 +08:00
Eloy Lafuente (stronk7) e437d9f1d9 MDL-29478 unittest - fix rating tests so they can be executed with accesslib caches cleaned 2011-09-23 01:46:38 +02:00
Eloy Lafuente (stronk7) 5169a039c7 MDL-29478 unittest - explicity include blog/lib.php. Was causing "random" errors 2011-09-23 01:36:41 +02:00
Eloy Lafuente (stronk7) 40a8974915 MDL-29478 unittest - we aren't a report anymore but one admin/tool 2011-09-23 00:11:50 +02:00
Eloy Lafuente (stronk7) 635c65bbd5 MDL-29478 blog - fixed some recent regressions introduced by MDL-29186 2011-09-23 00:03:56 +02:00
Tim Hunt 79a46626d3 MDL-29427 quiz nav: information items should should have a state tooltip 2011-09-22 18:12:43 +01:00
Tim Hunt 572a96edb0 MDL-29428 quiz navigation panel should use 'This page' (accessibility improvement) 2011-09-22 17:56:02 +01:00
Kyle Temkin aecb339307 MDL-28202 qtype_calculated fix edge case in the rounding code. 2011-09-22 12:13:08 +01:00
Aparup Banerjee bfc60f5d1b MDL-29139 Forms Library : fixed missing require_once 2011-09-22 14:57:11 +08:00
David Mudrak c8f1b818ff MDL-29336 Saving grade mapping table in the Workshop
The Workshop module using the "Number of errors" grading strategy did
not save all items in the grade mapping table. If some assessment form
fields have weight > 1, the number of possible errors is greater that
the number of the assessment form fields. The previous code deleted all
mappings where the number of errors was greater than the number of
fields.

In this patch, the maximum number of possible errors is calculated as a
sum of weights of all fields. Only mappings over this maximum are
deleted now.
2011-09-22 05:33:01 +02:00
AMOS bot 406719af1a Automatically generated installer lang files 2011-09-22 00:55:27 +00:00
Tim Hunt fabface827 MDL-29464 quiz add random question popup does not update sumgrades. 2011-09-21 16:39:31 +01:00
Tim Hunt 1f347cb71d MDL-29462 html_to_text('0') gives '', not '0'. 2011-09-21 16:38:58 +01:00
Tim Hunt babfb615c9 MDL-28424 Reviewing a quiz in 'secure mode' gives a fatal error.
The problem was when output was being started in relation to when the fake block was added.

Took the opportunity to clean up the quiz renderer API a bit.
2011-09-21 16:37:21 +01:00
Eloy Lafuente (stronk7) dab8148fde weekly release 2.2dev 2011-09-21 17:11:02 +02:00
Andrew Davis (andyjdavis) 5e36e1045a MDL-29333 rating: prevent the ratings JS from being intialized multiple times 2011-09-21 15:49:24 +08:00
Andrew Davis (andyjdavis) 5c0452c6f8 MDL-29333 rating: refactored the ratings ajax 2011-09-21 14:54:32 +08:00
Jamie Pratt 1ae299f5f3 MDL-27919 Fixed a regression where I was seeing that after choosing "Overwrite"
in a filemanager form component when subsequently trying to add another file the
file picker would then immediately close upon opening.
2011-09-21 13:15:23 +07:00
Sam Hemelryk 609ad0da5b Merge branch 'MDL-26635' of git://github.com/mouneyrac/moodle 2011-09-21 17:52:53 +12:00
Jerome Mouneyrac ccda013458 MDL-26635 Return a more explicit debuginfo message when the user can not access the web service function 2011-09-21 13:03:18 +08:00
Eloy Lafuente (stronk7) 0e89333992 Merge branch 'MDL-26567' of git://github.com/timhunt/moodle 2011-09-21 00:10:30 +02:00
Eloy Lafuente (stronk7) ed9e0cb6ec MDL-21676 user: minor gravatar fixes 2011-09-20 12:43:00 +02:00
Sam Hemelryk 4125bdc139 MDL-21676 user: Implemented support for Gravatar profile pictures
Big thanks to the developers who put effort into this improvement:
* Jonathan Robson <jonathan.robson@remote-learner.net>
* Jonathan Harker <jonathan@catalyst.net.nz>
2011-09-20 12:41:48 +02:00
Tim Hunt 71c4154a98 MDL-26567 no grade category option on the quiz settings form.
Also, refine the standard_grading_coursemodule_elements method to add a
help string.

AMOS BEGIN
 CPY [gradecategory,grades],[gradecategoryonmodform,grades]
AMOS END
2011-09-20 11:10:34 +01:00
Andrew Davis (andyjdavis) 667f63fefa MDL-25241 forum: reimplemented the display of ratings on the forum search page 2011-09-20 16:17:00 +08:00
Eloy Lafuente (stronk7) 8974d17a8f Merge branch 'wip-mdl-29079' of git://github.com/rajeshtaneja/moodle 2011-09-20 09:50:46 +02:00
Aparup Banerjee c9f7b5e20b Merge branch 'MDL-26890-master' of git://github.com/ankitagarwal/moodle 2011-09-20 13:15:52 +08:00
Ankit Kumar Agarwal c0d60b3a3f MDL-26890 Forums check on filesize if the file is added to the forum from private area 2011-09-20 10:01:42 +05:30
Rajesh Taneja 94b38ab1c1 MDL-29079 Administration: Added space on both sides of locked checkbox and for rtl language space will be applied accordingly 2011-09-20 11:49:24 +08:00
Aparup Banerjee 48a7eed587 Merge branch 'wip-mdl-28726' of git://github.com/rajeshtaneja/moodle 2011-09-20 10:19:17 +08:00
Sam Hemelryk 436cfb8bb7 Merge branch 'MDL-26841' of git://github.com/stronk7/moodle 2011-09-20 12:14:13 +12:00
Sam Hemelryk 7d6e26b49b Merge branch 'MDL-29392' of git://github.com/timhunt/moodle 2011-09-20 11:58:04 +12:00
Colin Chambers 5a1a7112cd MDL-29394 form editor - Use hidden field when only 1 format option is available #947 2011-09-20 00:35:01 +02:00
Eloy Lafuente (stronk7) 3eabe0ccd5 Merge branch 'wip-mdl-29079' of git://github.com/rajeshtaneja/moodle 2011-09-20 00:17:20 +02:00
Eloy Lafuente (stronk7) 3ff38c0e9c Merge branch 'MDL-28679' of git://github.com/timhunt/moodle 2011-09-20 00:03:46 +02:00
Eloy Lafuente (stronk7) f1ac51ac60 Merge branch 'MDL-29279' of git://github.com/mouneyrac/moodle 2011-09-19 23:56:41 +02:00
Eloy Lafuente (stronk7) 93eb27d4c0 Merge branch 'MDL-29126_export_separator' of git://github.com/andyjdavis/moodle 2011-09-19 23:38:07 +02:00
Eloy Lafuente (stronk7) 4ac92d2ac1 MDL-29029 admin_tool - fixed 2 ocurrences pointing to old paths 2011-09-19 18:54:30 +02:00
Eloy Lafuente (stronk7) 9d8d55a00e Merge branch 'w37_MDL-29029_m22_admintools' of git://github.com/skodak/moodle 2011-09-19 18:26:55 +02:00
Eloy Lafuente (stronk7) 3d5bb9115d Merge branch 'w37_MDL-29081_m22_googlespellproxy' of git://github.com/skodak/moodle 2011-09-19 18:09:47 +02:00
M Kassaei 5cd7869883 MDL-29392 grade/report/index.php should use $CFG->grade_profilereport 2011-09-19 11:30:49 +01:00
Eloy Lafuente (stronk7) ab545ab55e Merge branch 'wip-MDL-29185-master' of git://github.com/samhemelryk/moodle 2011-09-19 11:58:37 +02:00
Eloy Lafuente (stronk7) 9ab5df6b8b MDL-26841 backup - prevent any enrolments info to be handled in IMPORT/HUB operations 2011-09-19 11:21:43 +02:00
Aparup Banerjee aa601cca0a Merge branch 's13_MDL-29036_ws_upload_master' of git://github.com/dongsheng/moodle 2011-09-19 16:02:45 +08:00
Dongsheng Cai 7515e1bac4 MDL-29036 WEBSERVICE : webservice upload script should respect maxbytes and userquota settings 2011-09-19 15:31:34 +08:00
Sam Hemelryk 4cc14ab11e Merge branch 'MDL-29366' of git://github.com/timhunt/moodle 2011-09-19 19:19:42 +12:00
Sam Hemelryk 0910764ff3 Merge branch 'MDL-28329' of git://github.com/timhunt/moodle 2011-09-19 18:36:38 +12:00
Jerome Mouneyrac a08b4cc8eb MDL-29279 REST server can return json format 2011-09-19 13:54:09 +08:00
Rajesh Taneja 48a614d97e MDL-29079 Administration: Added space between checkboxes on general backup setting page 2011-09-19 13:32:38 +08:00
Sam Hemelryk 931f89cc13 Merge branch 'wip-mdl-25937' of git://github.com/rajeshtaneja/moodle 2011-09-19 17:01:00 +12:00
Aparup Banerjee 9fee890b57 Merge branch 's13_MDL-28509_youtube_master' of github.com:dongsheng/moodle 2011-09-19 12:10:23 +08:00
Dongsheng Cai 4a54e75848 MDL-28509 repository : fixed youtube repository search keyword 2011-09-19 11:57:46 +08:00
Mark Johnson 79ba96f75c MDL-28509 repository_youtube Enable selection of sort order 2011-09-19 11:57:35 +08:00
Sam Hemelryk 668dae632a Merge branch 'MDL-29276' of git://github.com/mouneyrac/moodle 2011-09-19 14:26:58 +12:00
Sam Hemelryk cb2c93c8db Merge branch 'w37_MDL-29406_m22_configdelete' of git://github.com/skodak/moodle 2011-09-19 13:32:37 +12:00
Sam Hemelryk 7e0b7fe7cf Merge branch 'MDL-29360' of git://github.com/timhunt/moodle 2011-09-19 11:56:34 +12:00
Sam Hemelryk 76ecaa1074 Merge branch 'MDL-28259' of git://github.com/timhunt/moodle 2011-09-19 11:40:48 +12:00
Eloy Lafuente (stronk7) 37b5d8b0c4 MDL-29321 syntax - fix switch() statement 2011-09-19 01:24:51 +02:00
Eloy Lafuente (stronk7) b1c1eeaec9 MDL-29314 syntax - fix switch() statement 2011-09-19 01:21:57 +02:00
Sam Hemelryk 2b834a1d06 Merge branch 'MDL-29415' of git://github.com/stronk7/moodle 2011-09-19 11:15:04 +12:00
Eloy Lafuente (stronk7) 018213bed2 MDL-29415 xmldb - fix get_columns() in oracle to get char based lengths + test 2011-09-19 00:34:10 +02:00
Petr Skoda 8f9f70fba2 MDL-29081 add proxy support to googlespell 2011-09-18 13:00:28 +02:00
Petr Skoda ce15d56ddb MDL-29029 move user upload to admin tools
AMOS BEGIN
 MOV [uploadpictures,core_admin],[uploadpictures,tool_uploaduser]
 MOV [uploadpictures_help,core_admin],[uploadpictures_help,tool_uploaduser]
 MOV [uploadusers,core_admin],[uploadusers,tool_uploaduser]
 MOV [uploadusers_help,core_admin],[uploadusers_help,tool_uploaduser]
 MOV [uploaduserspreview,core_admin],[uploaduserspreview,tool_uploaduser]
 MOV [uploadusersresult,core_admin],[uploadusersresult,tool_uploaduser]
 MOV [uucsvline,core_admin],[uucsvline,tool_uploaduser]
 MOV [userrenamed,core_admin],[userrenamed,tool_uploaduser]
 MOV [useraccountupdated,core_admin],[useraccountupdated,tool_uploaduser]
 MOV [useraccountuptodate,core_admin],[useraccountuptodate,tool_uploaduser]
 MOV [userdeleted,core_admin],[userdeleted,tool_uploaduser]
 MOV [uupasswordcron,core_admin],[uupasswordcron,tool_uploaduser]
 MOV [userscreated,core_admin],[userscreated,tool_uploaduser]
 MOV [usersupdated,core_admin],[usersupdated,tool_uploaduser]
 MOV [usersdeleted,core_admin],[usersdeleted,tool_uploaduser]
 MOV [deleteerrors,core_admin],[deleteerrors,tool_uploaduser]
 MOV [usersrenamed,core_admin],[usersrenamed,tool_uploaduser]
 MOV [renameerrors,core_admin],[renameerrors,tool_uploaduser]
 MOV [usersskipped,core_admin],[usersskipped,tool_uploaduser]
 MOV [usersweakpassword,core_admin],[usersweakpassword,tool_uploaduser]
 MOV [errors,core_admin],[errors,tool_uploaduser]
 MOV [csvdelimiter,core_admin],[csvdelimiter,tool_uploaduser]
 MOV [encoding,core_admin],[encoding,tool_uploaduser]
 MOV [rowpreviewnum,core_admin],[rowpreviewnum,tool_uploaduser]
 MOV [uuoptype_addinc,core_admin],[uuoptype_addinc,tool_uploaduser]
 MOV [uuoptype_addnew,core_admin],[uuoptype_addnew,tool_uploaduser]
 MOV [uuoptype_addupdate,core_admin],[uuoptype_addupdate,tool_uploaduser]
 MOV [uuoptype_update,core_admin],[uuoptype_update,tool_uploaduser]
 MOV [uuoptype,core_admin],[uuoptype,tool_uploaduser]
 MOV [uupasswordnew,core_admin],[uupasswordnew,tool_uploaduser]
 MOV [uupasswordold,core_admin],[uupasswordold,tool_uploaduser]
 MOV [nochanges,core_admin],[nochanges,tool_uploaduser]
 MOV [uuupdateall,core_admin],[uuupdateall,tool_uploaduser]
 MOV [uuupdatefromfile,core_admin],[uuupdatefromfile,tool_uploaduser]
 MOV [uuupdatemissing,core_admin],[uuupdatemissing,tool_uploaduser]
 MOV [uuupdatetype,core_admin],[uuupdatetype,tool_uploaduser]
 MOV [allowrenames,core_admin],[allowrenames,tool_uploaduser]
 MOV [allowdeletes,core_admin],[allowdeletes,tool_uploaduser]
 MOV [uunoemailduplicates,core_admin],[uunoemailduplicates,tool_uploaduser]
 MOV [uustandardusernames,core_admin],[uustandardusernames,tool_uploaduser]
 MOV [uubulk,core_admin],[uubulk,tool_uploaduser]
 MOV [uubulkall,core_admin],[uubulkall,tool_uploaduser]
 MOV [uubulknew,core_admin],[uubulknew,tool_uploaduser]
 MOV [uubulkupdated,core_admin],[uubulkupdated,tool_uploaduser]
 MOV [uulegacy1role,core_admin],[uulegacy1role,tool_uploaduser]
 MOV [uulegacy2role,core_admin],[uulegacy2role,tool_uploaduser]
 MOV [uulegacy3role,core_admin],[uulegacy3role,tool_uploaduser]
 MOV [defaultvalues,core_admin],[defaultvalues,tool_uploaduser]
 MOV [uuusernametemplate,core_admin],[uuusernametemplate,tool_uploaduser]
 MOV [requiredtemplate,core_admin],[requiredtemplate,tool_uploaduser]
 MOV [uploadpicture_baduserfield,core_admin],[uploadpicture_baduserfield,tool_uploaduser]
 MOV [uploadpicture_cannotmovezip,core_admin],[uploadpicture_cannotmovezip,tool_uploaduser]
 MOV [uploadpicture_cannotprocessdir,core_admin],[uploadpicture_cannotprocessdir,tool_uploaduser]
 MOV [uploadpicture_cannotsave,core_admin],[uploadpicture_cannotsave,tool_uploaduser]
 MOV [uploadpicture_cannotunzip,core_admin],[uploadpicture_cannotunzip,tool_uploaduser]
 MOV [uploadpicture_invalidfilename,core_admin],[uploadpicture_invalidfilename,tool_uploaduser]
 MOV [uploadpicture_overwrite,core_admin],[uploadpicture_overwrite,tool_uploaduser]
 MOV [uploadpicture_userfield,core_admin],[uploadpicture_userfield,tool_uploaduser]
 MOV [uploadpicture_usernotfound,core_admin],[uploadpicture_usernotfound,tool_uploaduser]
 MOV [uploadpicture_userskipped,core_admin],[uploadpicture_userskipped,tool_uploaduser]
 MOV [uploadpicture_userupdated,core_admin],[uploadpicture_userupdated,tool_uploaduser]
AMOS END
2011-09-18 11:00:39 +02:00
Petr Skoda 0715e3d938 MDL-29029 move multilang upgrade to admin tools
AMOS BEGIN
 MOV [multilangupgrade,core_admin],[pluginname,tool_ multilangupgrade]
 MOV [multilangupgradeinfo,core_admin],[multilangupgradeinfo,tool_ multilangupgrade]
AMOS END
2011-09-18 09:44:39 +02:00
Jamie Pratt 913b3cb30c MDL-27919 also adding a callback to the filepicker when a file is overwritten
but a file with the same name. This is not necessary in most cases but is
instant and some code may expect a call to the function whether the url and / or
file name has changed or not so it can update itself when the file changes.
2011-09-18 13:57:09 +07:00
Jamie Pratt 794cc7e1cf MDL-27919 Fixes 'undefined' message and similar problems when selecting a
recent file, server file or when renaming a file being uploaded with the same
name as a previous one.
2011-09-18 13:22:35 +07:00
Petr Skoda b007a5d041 MDL-29029 move xmldb-editor to admin tools
AMOS BEGIN
 MOV [xmldbeditor,moodle],[pluginname,tool_xmldb]
 MOV [actual,core_xmldb],[actual,tool_xmldb]
 MOV [aftertable,core_xmldb],[aftertable,tool_xmldb]
 MOV [back,core_xmldb],[back,tool_xmldb]
 MOV [backtomainview,core_xmldb],[backtomainview,tool_xmldb]
 MOV [binaryincorrectlength,core_xmldb],[binaryincorrectlength,tool_xmldb]
 MOV [cannotuseidfield,core_xmldb],[cannotuseidfield,tool_xmldb]
 MOV [completelogbelow,core_xmldb],[completelogbelow,tool_xmldb]
 MOV [confirmdeletefield,core_xmldb],[confirmdeletefield,tool_xmldb]
 MOV [confirmdeleteindex,core_xmldb],[confirmdeleteindex,tool_xmldb]
 MOV [confirmdeletekey,core_xmldb],[confirmdeletekey,tool_xmldb]
 MOV [confirmdeletetable,core_xmldb],[confirmdeletetable,tool_xmldb]
 MOV [confirmdeletexmlfile,core_xmldb],[confirmdeletexmlfile,tool_xmldb]
 MOV [confirmcheckbigints,core_xmldb],[confirmcheckbigints,tool_xmldb]
 MOV [confirmcheckdefaults,core_xmldb],[confirmcheckdefaults,tool_xmldb]
 MOV [confirmcheckforeignkeys,core_xmldb],[confirmcheckforeignkeys,tool_xmldb]
 MOV [confirmcheckindexes,core_xmldb],[confirmcheckindexes,tool_xmldb]
 MOV [confirmrevertchanges,core_xmldb],[confirmrevertchanges,tool_xmldb]
 MOV [create,core_xmldb],[create,tool_xmldb]
 MOV [createtable,core_xmldb],[createtable,tool_xmldb]
 MOV [defaultincorrect,core_xmldb],[defaultincorrect,tool_xmldb]
 MOV [delete,core_xmldb],[delete,tool_xmldb]
 MOV [delete_field,core_xmldb],[delete_field,tool_xmldb]
 MOV [delete_index,core_xmldb],[delete_index,tool_xmldb]
 MOV [delete_key,core_xmldb],[delete_key,tool_xmldb]
 MOV [delete_table,core_xmldb],[delete_table,tool_xmldb]
 MOV [delete_xml_file,core_xmldb],[delete_xml_file,tool_xmldb]
 MOV [doc,core_xmldb],[doc,tool_xmldb]
 MOV [docindex,core_xmldb],[docindex,tool_xmldb]
 MOV [documentationintro,core_xmldb],[documentationintro,tool_xmldb]
 MOV [down,core_xmldb],[down,tool_xmldb]
 MOV [duplicate,core_xmldb],[duplicate,tool_xmldb]
 MOV [duplicatefieldname,core_xmldb],[duplicatefieldname,tool_xmldb]
 MOV [duplicatekeyname,core_xmldb],[duplicatekeyname,tool_xmldb]
 MOV [edit,core_xmldb],[edit,tool_xmldb]
 MOV [edit_field,core_xmldb],[edit_field,tool_xmldb]
 MOV [edit_field_save,core_xmldb],[edit_field_save,tool_xmldb]
 MOV [edit_index,core_xmldb],[edit_index,tool_xmldb]
 MOV [edit_index_save,core_xmldb],[edit_index_save,tool_xmldb]
 MOV [edit_key,core_xmldb],[edit_key,tool_xmldb]
 MOV [edit_key_save,core_xmldb],[edit_key_save,tool_xmldb]
 MOV [edit_table,core_xmldb],[edit_table,tool_xmldb]
 MOV [edit_table_save,core_xmldb],[edit_table_save,tool_xmldb]
 MOV [edit_xml_file,core_xmldb],[edit_xml_file,tool_xmldb]
 MOV [enumvaluesincorrect,core_xmldb],[enumvaluesincorrect,tool_xmldb]
 MOV [expected,core_xmldb],[expected,tool_xmldb]
 MOV [extensionrequired,core_xmldb],[extensionrequired,tool_xmldb]
 MOV [field,core_xmldb],[field,tool_xmldb]
 MOV [fieldnameempty,core_xmldb],[fieldnameempty,tool_xmldb]
 MOV [fields,core_xmldb],[fields,tool_xmldb]
 MOV [fieldsnotintable,core_xmldb],[fieldsnotintable,tool_xmldb]
 MOV [fieldsusedinkey,core_xmldb],[fieldsusedinkey,tool_xmldb]
 MOV [filenotwriteable,core_xmldb],[filenotwriteable,tool_xmldb]
 MOV [fkviolationdetails,core_xmldb],[fkviolationdetails,tool_xmldb]
 MOV [floatincorrectdecimals,core_xmldb],[floatincorrectdecimals,tool_xmldb]
 MOV [floatincorrectlength,core_xmldb],[floatincorrectlength,tool_xmldb]
 MOV [float2numbernote,core_xmldb],[float2numbernote,tool_xmldb]
 MOV [generate_all_documentation,core_xmldb],[generate_all_documentation,tool_xmldb]
 MOV [generate_documentation,core_xmldb],[generate_documentation,tool_xmldb]
 MOV [gotolastused,core_xmldb],[gotolastused,tool_xmldb]
 MOV [change,core_xmldb],[change,tool_xmldb]
 MOV [charincorrectlength,core_xmldb],[charincorrectlength,tool_xmldb]
 MOV [checkbigints,core_xmldb],[checkbigints,tool_xmldb]
 MOV [check_bigints,core_xmldb],[check_bigints,tool_xmldb]
 MOV [checkdefaults,core_xmldb],[checkdefaults,tool_xmldb]
 MOV [check_defaults,core_xmldb],[check_defaults,tool_xmldb]
 MOV [checkforeignkeys,core_xmldb],[checkforeignkeys,tool_xmldb]
 MOV [check_foreign_keys,core_xmldb],[check_foreign_keys,tool_xmldb]
 MOV [checkindexes,core_xmldb],[checkindexes,tool_xmldb]
 MOV [check_indexes,core_xmldb],[check_indexes,tool_xmldb]
 MOV [incorrectfieldname,core_xmldb],[incorrectfieldname,tool_xmldb]
 MOV [index,core_xmldb],[index,tool_xmldb]
 MOV [indexes,core_xmldb],[indexes,tool_xmldb]
 MOV [integerincorrectlength,core_xmldb],[integerincorrectlength,tool_xmldb]
 MOV [key,core_xmldb],[key,tool_xmldb]
 MOV [keys,core_xmldb],[keys,tool_xmldb]
 MOV [listreservedwords,core_xmldb],[listreservedwords,tool_xmldb]
 MOV [load,core_xmldb],[load,tool_xmldb]
 MOV [main_view,core_xmldb],[main_view,tool_xmldb]
 MOV [masterprimaryuniqueordernomatch,core_xmldb],[masterprimaryuniqueordernomatch,tool_xmldb]
 MOV [missing,core_xmldb],[missing,tool_xmldb]
 MOV [missingindexes,core_xmldb],[missingindexes,tool_xmldb]
 MOV [mustselectonefield,core_xmldb],[mustselectonefield,tool_xmldb]
 MOV [mustselectoneindex,core_xmldb],[mustselectoneindex,tool_xmldb]
 MOV [mustselectonekey,core_xmldb],[mustselectonekey,tool_xmldb]
 MOV [mysqlextracheckbigints,core_xmldb],[mysqlextracheckbigints,tool_xmldb]
 MOV [newfield,core_xmldb],[newfield,tool_xmldb]
 MOV [newindex,core_xmldb],[newindex,tool_xmldb]
 MOV [newkey,core_xmldb],[newkey,tool_xmldb]
 MOV [newtable,core_xmldb],[newtable,tool_xmldb]
 MOV [newtablefrommysql,core_xmldb],[newtablefrommysql,tool_xmldb]
 MOV [new_table_from_mysql,core_xmldb],[new_table_from_mysql,tool_xmldb]
 MOV [nomasterprimaryuniquefound,core_xmldb],[nomasterprimaryuniquefound,tool_xmldb]
 MOV [nomissingindexesfound,core_xmldb],[nomissingindexesfound,tool_xmldb]
 MOV [noviolatedforeignkeysfound,core_xmldb],[noviolatedforeignkeysfound,tool_xmldb]
 MOV [nowrongdefaultsfound,core_xmldb],[nowrongdefaultsfound,tool_xmldb]
 MOV [nowrongintsfound,core_xmldb],[nowrongintsfound,tool_xmldb]
 MOV [numberincorrectdecimals,core_xmldb],[numberincorrectdecimals,tool_xmldb]
 MOV [numberincorrectlength,core_xmldb],[numberincorrectlength,tool_xmldb]
 MOV [pendingchanges,core_xmldb],[pendingchanges,tool_xmldb]
 MOV [pendingchangescannotbesaved,core_xmldb],[pendingchangescannotbesaved,tool_xmldb]
 MOV [pendingchangescannotbesavedreload,core_xmldb],[pendingchangescannotbesavedreload,tool_xmldb]
 MOV [reserved,core_xmldb],[reserved,tool_xmldb]
 MOV [reservedwords,core_xmldb],[reservedwords,tool_xmldb]
 MOV [revert,core_xmldb],[revert,tool_xmldb]
 MOV [revert_changes,core_xmldb],[revert_changes,tool_xmldb]
 MOV [save,core_xmldb],[save,tool_xmldb]
 MOV [searchresults,core_xmldb],[searchresults,tool_xmldb]
 MOV [selectaction,core_xmldb],[selectaction,tool_xmldb]
 MOV [selectdb,core_xmldb],[selectdb,tool_xmldb]
 MOV [selectfieldkeyindex,core_xmldb],[selectfieldkeyindex,tool_xmldb]
 MOV [selectonecommand,core_xmldb],[selectonecommand,tool_xmldb]
 MOV [selectonefieldkeyindex,core_xmldb],[selectonefieldkeyindex,tool_xmldb]
 MOV [selecttable,core_xmldb],[selecttable,tool_xmldb]
 MOV [table,core_xmldb],[table,tool_xmldb]
 MOV [tables,core_xmldb],[tables,tool_xmldb]
 MOV [textincorrectlength,core_xmldb],[textincorrectlength,tool_xmldb]
 MOV [unload,core_xmldb],[unload,tool_xmldb]
 MOV [up,core_xmldb],[up,tool_xmldb]
 MOV [view,core_xmldb],[view,tool_xmldb]
 MOV [viewedited,core_xmldb],[viewedited,tool_xmldb]
 MOV [vieworiginal,core_xmldb],[vieworiginal,tool_xmldb]
 MOV [viewphpcode,core_xmldb],[viewphpcode,tool_xmldb]
 MOV [view_reserved_words,core_xmldb],[view_reserved_words,tool_xmldb]
 MOV [viewsqlcode,core_xmldb],[viewsqlcode,tool_xmldb]
 MOV [view_structure_php,core_xmldb],[view_structure_php,tool_xmldb]
 MOV [view_structure_sql,core_xmldb],[view_structure_sql,tool_xmldb]
 MOV [view_table_php,core_xmldb],[view_table_php,tool_xmldb]
 MOV [view_table_sql,core_xmldb],[view_table_sql,tool_xmldb]
 MOV [viewxml,core_xmldb],[viewxml,tool_xmldb]
 MOV [violatedforeignkeys,core_xmldb],[violatedforeignkeys,tool_xmldb]
 MOV [violatedforeignkeysfound,core_xmldb],[violatedforeignkeysfound,tool_xmldb]
 MOV [violations,core_xmldb],[violations,tool_xmldb]
 MOV [wrong,core_xmldb],[wrong,tool_xmldb]
 MOV [wrongdefaults,core_xmldb],[wrongdefaults,tool_xmldb]
 MOV [wrongints,core_xmldb],[wrongints,tool_xmldb]
 MOV [wronglengthforenum,core_xmldb],[wronglengthforenum,tool_xmldb]
 MOV [wrongreservedwords,core_xmldb],[wrongreservedwords,tool_xmldb]
 MOV [yesmissingindexesfound,core_xmldb],[yesmissingindexesfound,tool_xmldb]
 MOV [yeswrongdefaultsfound,core_xmldb],[yeswrongdefaultsfound,tool_xmldb]
 MOV [yeswrongintsfound,core_xmldb],[yeswrongintsfound,tool_xmldb]
AMOS END
2011-09-17 23:05:55 +02:00
Petr Skoda cfe070b292 MDL-29029 move dbtransfer to admin tools
AMOS BEGIN
 CPY [dbexport,core_dbtransfer],[pluginname,tool_dbtransfer]
 MOV [dbexport,core_dbtransfer],[dbexport,tool_dbtransfer]
 MOV [dbtransfer,core_dbtransfer],[dbtransfer,tool_dbtransfer]
 MOV [exportdata,core_dbtransfer],[exportdata,tool_dbtransfer]
 MOV [notargetconectexception,core_dbtransfer],[notargetconectexception,tool_dbtransfer]
 MOV [pluginname,core_dbtransfer],[pluginname,tool_dbtransfer]
 MOV [transferdata,core_dbtransfer],[transferdata,tool_dbtransfer]
 MOV [transferdbintro,core_dbtransfer],[transferdbintro,tool_dbtransfer]
 MOV [transferdbtoserver,core_dbtransfer],[transferdbtoserver,tool_dbtransfer]
 MOV [transferringdbto,core_dbtransfer],[transferringdbto,tool_dbtransfer]
AMOS END
2011-09-17 22:24:12 +02:00
Petr Skoda 72941d564a MDL-29029 move innodb conversion to admin tools 2011-09-17 21:19:31 +02:00
Petr Skoda bd41bdd922 MDL-29029 move lang pack import to admin tools
Includes lang related language pack cleanup.

AMOS BEGIN
 MOV [langpacks,core_admin],[pluginname,tool_langimport]
 MOV [install,core_admin],[install,tool_langimport]
 MOV [installedlangs,core_admin],[installedlangs,tool_langimport]
 MOV [langimport,core_admin],[langimport,tool_langimport]
 MOV [langimportdisabled,core_admin],[langimportdisabled,tool_langimport]
 MOV [langpackinstalled,core_admin],[langpackinstalled,tool_langimport]
 MOV [langpackremoved,core_admin],[langpackremoved,tool_langimport]
 MOV [langpackupdateskipped,core_admin],[langpackupdateskipped,tool_langimport]
 MOV [langpackuptodate,core_admin],[langpackuptodate,tool_langimport]
 MOV [langupdatecomplete,core_admin],[langupdatecomplete,tool_langimport]
 MOV [missinglangparent,core_admin],[missinglangparent,tool_langimport]
 MOV [nolangupdateneeded,core_admin],[nolangupdateneeded,tool_langimport]
 MOV [remotelangnotavailable,core_admin],[remotelangnotavailable,tool_langimport]
 MOV [uninstall,core_admin],[uninstall,tool_langimport]
 MOV [uninstallconfirm,core_admin],[uninstallconfirm,tool_langimport]
 MOV [updatelangs,core_admin],[updatelangs,tool_langimport]
AMOS END
2011-09-17 20:58:26 +02:00
Petr Skoda 7f1d34f0eb MDL-29029 move health center to admin tools
AMOS BEGIN
 MOV [healthcenter,moodle],[pluginname,tool_health]
 MOV [healthnoproblemsfound,moodle],[healthnoproblemsfound,tool_health]
 MOV [healthproblemsdetected,moodle],[healthproblemsdetected,tool_health]
 MOV [healthproblemsolution,moodle],[healthproblemsolution,tool_health]
 MOV [healthreturntomain,moodle],[healthreturntomain,tool_health]
 MOV [healthsolution,moodle],[healthsolution,tool_health]
AMOS END
2011-09-17 19:43:18 +02:00
Petr Skoda 8e4c1a80b4 MDL-29029 move blog upgrade to admin tools
AMOS BEGIN
 MOV [bloglevelupgrade,core_admin],[pluginname,tool_bloglevelupgrade]
 MOV [bloglevelupgradedescription,core_admin],[bloglevelupgradedescription,tool_bloglevelupgrade]
 MOV [bloglevelupgradeinfo,core_admin],[bloglevelupgradeinfo,tool_bloglevelupgrade]
 MOV [bloglevelupgradeprogress,core_admin],[bloglevelupgradeprogress,tool_bloglevelupgrade]
AMOS END
2011-09-17 19:43:18 +02:00
Petr Skoda 6c7365d98d MDL-29029 move unmaintained generator to admin tools
Do NOT add link into settings tree, this is extremely dangerous and buggy. It is now usable only in DEBUG_DEVELOPER mode!
2011-09-17 19:43:17 +02:00
Petr Skoda b412f9c4c9 MDL-29029 move all the simpletest bits into new tool unittest
AMOS BEGIN
 MOV [pluginname,report_unittest],[pluginname,tool_unittest]
 MOV [unittest:view,report_unittest],[unittest:execute,tool_unittest]
 MOV [dbtest,core_admin],[dbtest,tool_unittest]
 MOV [addconfigprefix,core_simpletest],[addconfigprefix,tool_unittest]
 MOV [all,core_simpletest],[all,tool_unittest]
 MOV [codecoverageanalysis,core_simpletest],[codecoverageanalysis,tool_unittest]
 MOV [codecoveragecompletereport,core_simpletest],[codecoveragecompletereport,tool_unittest]
 MOV [codecoveragedisabled,core_simpletest],[codecoveragedisabled,tool_unittest]
 MOV [codecoveragelatestdetails,core_simpletest],[codecoveragelatestdetails,tool_unittest]
 MOV [codecoveragelatestreport,core_simpletest],[codecoveragelatestreport,tool_unittest]
 MOV [confignonwritable,core_simpletest],[confignonwritable,tool_unittest]
 MOV [coveredlines,core_simpletest],[coveredlines,tool_unittest]
 MOV [coveredpercentage,core_simpletest],[coveredpercentage,tool_unittest]
 MOV [deletingnoninsertedrecord,core_simpletest],[deletingnoninsertedrecord,tool_unittest]
 MOV [deletingnoninsertedrecords,core_simpletest],[deletingnoninsertedrecords,tool_unittest]
 MOV [droptesttables,core_simpletest],[droptesttables,tool_unittest]
 MOV [exception,core_simpletest],[exception,tool_unittest]
 MOV [executablelines,core_simpletest],[executablelines,tool_unittest]
 MOV [fail,core_simpletest],[fail,tool_unittest]
 MOV [ignorefile,core_simpletest],[ignorefile,tool_unittest]
 MOV [ignorethisfile,core_simpletest],[ignorethisfile,tool_unittest]
 MOV [installtesttables,core_simpletest],[installtesttables,tool_unittest]
 MOV [moodleunittests,core_simpletest],[moodleunittests,tool_unittest]
 MOV [notice,core_simpletest],[notice,tool_unittest]
 MOV [onlytest,core_simpletest],[onlytest,tool_unittest]
 MOV [pass,core_simpletest],[pass,tool_unittest]
 MOV [pathdoesnotexist,core_simpletest],[pathdoesnotexist,tool_unittest]
 MOV [prefix,core_simpletest],[prefix,tool_unittest]
 MOV [prefixnotset,core_simpletest],[prefixnotset,tool_unittest]
 MOV [reinstalltesttables,core_simpletest],[reinstalltesttables,tool_unittest]
 MOV [retest,core_simpletest],[retest,tool_unittest]
 MOV [retestonlythisfile,core_simpletest],[retestonlythisfile,tool_unittest]
 MOV [runall,core_simpletest],[runall,tool_unittest]
 MOV [runat,core_simpletest],[runat,tool_unittest]
 MOV [runonlyfile,core_simpletest],[runonlyfile,tool_unittest]
 MOV [runonlyfolder,core_simpletest],[runonlyfolder,tool_unittest]
 MOV [runtests,core_simpletest],[runtests,tool_unittest]
 MOV [rununittests,core_simpletest],[rununittests,tool_unittest]
 MOV [showpasses,core_simpletest],[showpasses,tool_unittest]
 MOV [showsearch,core_simpletest],[showsearch,tool_unittest]
 MOV [skip,core_simpletest],[skip,tool_unittest]
 MOV [stacktrace,core_simpletest],[stacktrace,tool_unittest]
 MOV [summary,core_simpletest],[summary,tool_unittest]
 MOV [tablesnotsetup,core_simpletest],[tablesnotsetup,tool_unittest]
 MOV [testdboperations,core_simpletest],[testdboperations,tool_unittest]
 MOV [testtablescsvfileunwritable,core_simpletest],[testtablescsvfileunwritable,tool_unittest]
 MOV [testtablesneedupgrade,core_simpletest],[testtablesneedupgrade,tool_unittest]
 MOV [testtablesok,core_simpletest],[testtablesok,tool_unittest]
 MOV [thorough,core_simpletest],[thorough,tool_unittest]
 MOV [timetakes,core_simpletest],[timetakes,tool_unittest]
 MOV [totallines,core_simpletest],[totallines,tool_unittest]
 MOV [uncaughtexception,core_simpletest],[uncaughtexception,tool_unittest]
 MOV [uncoveredlines,core_simpletest],[uncoveredlines,tool_unittest]
 MOV [unittestprefixsetting,core_simpletest],[unittestprefixsetting,tool_unittest]
 MOV [unittests,core_simpletest],[unittests,tool_unittest]
 MOV [updatingnoninsertedrecord,core_simpletest],[updatingnoninsertedrecord,tool_unittest]
 MOV [version,core_simpletest],[version,tool_unittest]
AMOS END
2011-09-17 19:43:00 +02:00
Petr Skoda a419316622 MDL-29406 fix greedy config settings cleanup 2011-09-17 13:36:22 +02:00
Petr Skoda 187536f6c4 MDL-29029 move profiling to admin tools
AMOS BEGIN
 MOV [calls,report_profiling],[calls,tool_profiling]
 MOV [cannotfindanyrunforurl,report_profiling],[cannotfindanyrunforurl,tool_profiling]
 MOV [cannotfindanyrunforrunid,report_profiling],[cannotfindanyrunforrunid,tool_profiling]
 MOV [comment,report_profiling],[comment,tool_profiling]
 MOV [differencesbetween2runsof,report_profiling],[differencesbetween2runsof,tool_profiling]
 MOV [executiontime,report_profiling],[executiontime,tool_profiling]
 MOV [cputime,report_profiling],[cputime,tool_profiling]
 MOV [lastrunof,report_profiling],[lastrunof,tool_profiling]
 MOV [markreferencerun,report_profiling],[markreferencerun,tool_profiling]
 MOV [memory,report_profiling],[memory,tool_profiling]
 MOV [pluginname,report_profiling],[pluginname,tool_profiling]
 MOV [profilingfocusscript,report_profiling],[profilingfocusscript,tool_profiling]
 MOV [profilingruns,report_profiling],[profilingruns,tool_profiling]
 MOV [profilingrunsfor,report_profiling],[profilingrunsfor,tool_profiling]
 MOV [referencerun,report_profiling],[referencerun,tool_profiling]
 MOV [runid,report_profiling],[runid,tool_profiling]
 MOV [summaryof,report_profiling],[summaryof,tool_profiling]
 MOV [viewdetails,report_profiling],[viewdetails,tool_profiling]
 MOV [viewdiff,report_profiling],[viewdiff,tool_profiling]
 MOV [viewdiffdetails,report_profiling],[viewdiffdetails,tool_profiling]
AMOS END
2011-09-17 10:20:51 +02:00
Petr Skoda a3c0e9bbb0 MDL-29029 move unsuproles to admin tools
AMOS BEGIN
 MOV [contextlevel,report_unsuproles],[contextlevel,tool_unsuproles]
 MOV [count,report_unsuproles],[count,tool_unsuproles]
 MOV [confirmdelete,report_unsuproles],[confirmdelete,tool_unsuproles]
 MOV [noprolbems,report_unsuproles],[noprolbems,tool_unsuproles]
 MOV [pluginname,report_unsuproles],[pluginname,tool_unsuproles]
AMOS END
2011-09-17 10:20:29 +02:00
Petr Skoda 4211dfa4b4 MDL-29029 move capability overview to tools
AMOS BEGIN
 MOV [capabilitylabel,report_capability],[capabilitylabel,tool_capability]
 MOV [capabilityreport,report_capability],[capabilityreport,tool_capability]
 MOV [forroles,report_capability],[forroles,tool_capability]
 MOV [getreport,report_capability],[getreport,tool_capability]
 MOV [changeoverrides,report_capability],[changeoverrides,tool_capability]
 MOV [changeroles,report_capability],[changeroles,tool_capability]
 MOV [intro,report_capability],[intro,tool_capability]
 MOV [pluginname,report_capability],[pluginname,tool_capability]
 MOV [reportforcapability,report_capability],[reportforcapability,tool_capability]
 MOV [reportsettings,report_capability],[reportsettings,tool_capability]
 MOV [roleslabel,report_capability],[roleslabel,tool_capability]
AMOS END
2011-09-17 09:32:39 +02:00
Petr Skoda 11b24ce7b2 MDL-29029 add new "Admin tool" plugin type 2011-09-17 08:49:24 +02:00
KNDeepa 545299f471 MDL-28329 local_qeupgradehelper make cron work. 2011-09-16 18:42:52 +01:00
Tim Hunt d47d12d0d4 MDL-28679 question response history displays states incorrectly. 2011-09-16 16:05:12 +01:00
Tim Hunt 73a7a0c90d MDL-29360 quiz comment.php has broken JS for the Cancel button.
This swtichest it to more modern YUI3 approach.
2011-09-16 12:03:46 +01:00
Tim Hunt bca8065844 MDL-28259 Individual answers Feedback not shown in Cloze questions 2011-09-16 12:02:08 +01:00
Petr Skoda b610f1d4d7 MDL-29313 allow larger char fields 2011-09-16 08:55:23 +02:00
Petr Skoda aa6dba5538 MDL-29321 tweak large varchar unit tests for oracle 2011-09-16 08:53:11 +02:00
Petr Skoda 2ba8f87a89 MDL-29322 instruct oracle to use current NLS char size when creating VARCHAR2 fields
This solves problems on servers with default configuration where VARCHAR2 sizes are specified in bytes. Also add more reserved words.
2011-09-16 08:51:09 +02:00
Petr Skoda 257ad88f89 MDL-29313 enforce varchar size limit 2011-09-16 08:49:42 +02:00
Petr Skoda b2cfdcf697 MDL-29314 enforce index size limits 2011-09-16 08:45:06 +02:00
Sam Hemelryk 89eda3eeaf MDL-29185 backup: Removed backup_log table and fixed the backup admin report 2011-09-16 15:51:23 +12:00
Rajesh Taneja a459fd9062 MDL-28726 wiki-2.0: Fixed XSS in wiki comments 2011-09-16 11:07:11 +08:00
Rajesh Taneja 7dfe3c517b MDL-25937 Forms Library: Added Javascript validation for filepicker and filemanager. Also fixed disbledif rule check for both 2011-09-16 09:17:20 +08:00
Rajesh Taneja f03a17bb09 MDL-25937 Froms Library: Added server side validation for filepicker and filemanager 2011-09-16 09:17:19 +08:00
Eloy Lafuente (stronk7) 9cfaebbd0e weekly release 2.2dev 2011-09-16 01:37:34 +02:00
Eloy Lafuente (stronk7) 6c4319d46a Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-09-16 01:34:18 +02:00
Petr Skoda eb7d00a69a Revert "MDL-29081 add support for proxy in TinyMCE GoogleSpell plugin"
This reverts commit 57638f2c05.
2011-09-15 10:10:27 +02:00
Petr Skoda c6bba40392 MDL-29025 fix missing $ espacing 2011-09-15 09:25:30 +02:00
Jerome Mouneyrac b02578db42 MDL-29276 fix missing global jerome in generate_simple_struct_class() - it breaks normal PHP-SOAP call 2011-09-15 15:03:03 +08:00
Tim Hunt 474abf1221 MDL-29366 qtype_essay import/export as Moodle XML loses files from graderinfo 2011-09-14 19:01:18 +01:00
Eloy Lafuente (stronk7) 3ae79749f1 MDL-29093 auth - help string now specifies MNet exception. Thanks Helen! 2011-09-14 11:36:42 +02:00
Eloy Lafuente (stronk7) b7aefc8de5 Merge branch 'w36_MDL-29081_m22_googlespellproxy' of git://github.com/skodak/moodle 2011-09-14 11:23:44 +02:00
Eloy Lafuente (stronk7) 847c66f5fc Merge branch 'w36_MDL-28455_m22_tinymce' of git://github.com/skodak/moodle 2011-09-14 11:20:19 +02:00
Eloy Lafuente (stronk7) 53d2fe2ac1 MDL-29093 auth - help string changed to VBFET suggestion
(very best favourite english translator, aka. Helen :-P)
2011-09-14 10:10:49 +02:00
Petr Skoda f22cd93999 MDL-28455 bump up editor version file 2011-09-14 09:07:47 +02:00
Sam Hemelryk 113b970e62 MDL-29188 course_formats Fixed up formatting of section name within navigation 2011-09-14 11:39:48 +12:00
Eloy Lafuente (stronk7) cdcb1b9ea1 Merge branch 'wip-MDL-29093-master' of git://github.com/samhemelryk/moodle 2011-09-14 00:28:56 +02:00
Petr Skoda 148c65bfc8 MDL-29295 do not use strtok in dml and ddl layers
This prevents clobbering of internal pointer when code calling DML
uses strtok too. Unit test added to prevent future uses.
2011-09-14 00:19:55 +02:00
Eloy Lafuente (stronk7) 3afd493065 Merge branch 'w36_MDL-29326_m22_sqlsrv' of git://github.com/skodak/moodle 2011-09-13 17:33:42 +02:00
Eloy Lafuente (stronk7) 7cf7471100 Merge branch 'w36_MDL-29328_m22_adodb' of github.com:skodak/moodle 2011-09-13 17:28:43 +02:00
Eloy Lafuente (stronk7) 60bf24f024 Merge branch 'w36_MDL-29351_m22_tempregr' of git://github.com/skodak/moodle 2011-09-13 17:24:48 +02:00
Petr Skoda f848c0f6e6 MDL-29351 add missing temp and cache dirs to installers 2011-09-13 13:33:06 +02:00
Aparup Banerjee af4f1cc722 MDL-26257 Authentication : whitespace/style fixes 2011-09-13 19:10:54 +08:00
Aparup Banerjee 631c9c02ab Merge branch 'MDL-26257' of git://github.com/bostelm/moodle 2011-09-13 19:07:22 +08:00
Aparup Banerjee d1e362405e Merge branch MDL-29186-master of git://github.com/samhemelryk/moodle
- resolved conflicts, minor whitespace and fixed quote.
- note: textlib_get_instance() is already deprecated
2011-09-13 16:06:21 +08:00
Aparup Banerjee 7eae2c5ae2 Merge branch MDL-29187-master of git://github.com/samhemelryk/moodle
- resolved conflict.
2011-09-13 13:52:31 +08:00
Aparup Banerjee f7dd6bda31 Merge branch 'wip-MDL-29188-master' of git://github.com/samhemelryk/moodle 2011-09-13 11:58:21 +08:00
Aparup Banerjee 9568a4e87b Merge branch 'master' of git.moodle.org:/git/integration 2011-09-13 11:42:18 +08:00
Aparup Banerjee 5433da6064 Merge branch MDL-29189-master of git://github.com/samhemelryk/moodle
- resolved conflicts.
2011-09-13 11:39:06 +08:00
Sam Hemelryk 4bc844f770 Merged branch '28595_m22_installcontinue' of git://github.com/skodak/moodle with changes 2011-09-13 15:34:03 +12:00
Sam Hemelryk 2c7a91475f MDL-29093 - Authentication improved new setting name and strings 2011-09-13 15:10:22 +12:00
Iñaki Arenaza 4f6aa35eb8 MDL-29093 - Authentication for authentication only, not for user creation
There are cases when a moodle installation needs to only deal
user authentication and not user creation (this is especially
interesting when using external authentication sources such as LDAP,
CAS, etc.)

Add an option to prevent automatic user creation if the administrator
does't want users to be automatically created.

Signed-off-by: Iñaki Arenaza <iarenaza@mondragon.edu>
2011-09-13 15:08:57 +12:00
Sam Hemelryk 62b214d9a6 Merge branch 'w36_MDL-29014_m22_str' of git://github.com/skodak/moodle 2011-09-13 12:45:34 +12:00
Sam Hemelryk eb38d45b4e MDL-29189 course Minor fixups after code review 2011-09-13 11:17:18 +12:00
Eloy Lafuente (stronk7) 452b166526 Merge branch 'wip-MDL-23534-master' of git://github.com/samhemelryk/moodle 2011-09-12 21:59:38 +02:00
Eloy Lafuente (stronk7) ce9d0673d0 Merge branch 'MDL-29236-master' of git://github.com/sammarshallou/moodle 2011-09-12 20:37:24 +02:00
Eloy Lafuente (stronk7) f8fa11e1af MDL-15377 filterlib - whitespace fixes 2011-09-12 16:30:10 +02:00
Sam Hemelryk 32ec60d142 Merged branch 'MDL-22232_easier_turn_off_notifications' from git://github.com/andyjdavis/moodle.git with conflict resolution 2011-09-12 20:18:27 +12:00
Sam Hemelryk 9f768d6e5f Merge branch 'MDL-29211_master' of git://github.com/kordan/moodle 2011-09-12 19:48:33 +12:00
kordan 712dee7a59 MDL-29211 fix for master 2011-09-12 09:42:18 +02:00
Petr Skoda 5cc6b84731 MDL-29326 add support for auth and enrol using mssqlnative adodb driver 2011-09-12 09:23:47 +02:00
Petr Skoda 3a67b21769 MDL-29328 update 3rd party library list with new adodb version 2011-09-12 09:13:39 +02:00
Petr Skoda 7911fccafc MDL-29328 import latest adodb 2011-09-12 09:12:46 +02:00
Sam Hemelryk f8adfe6cc0 Merge branch 'w36_MDL-28701_m22_tempcachedir' of git://github.com/skodak/moodle 2011-09-12 18:26:09 +12:00
Andrew Davis (andyjdavis) bb3546f3c2 MDL-22232 messaging: added the ability to temporarily disable notifications to a particular user 2011-09-12 14:05:14 +08:00
Sam Hemelryk eb3d2faaa1 Merge branch 'w36_MDL-29025_m22_verboseauthdb' of git://github.com/skodak/moodle 2011-09-12 17:48:09 +12:00
Sun Zhigang c5234aa1d9 MDL-29112 trigger event mod_deleted after deleting mod through AJAX 2011-09-12 17:36:02 +12:00
Sam Hemelryk 16ff2aee7d Merge branch 'MDL-28724' of git://github.com/nebgor/moodle 2011-09-12 17:24:49 +12:00
Sam Hemelryk 5da0e7fc03 Merge branch 'w36_MDL-29131_m22_recentsep' of git://github.com/skodak/moodle 2011-09-12 17:08:27 +12:00
Sam Hemelryk 5b4404f615 Merge branch 'w36_MDL-29175_m22_clozearray' of git://github.com/skodak/moodle 2011-09-12 16:52:36 +12:00
Sam Hemelryk 8d6540ffd1 Merge branch 'w36_MDL-29257_m22_uniqid' of git://github.com/skodak/moodle 2011-09-12 16:30:44 +12:00
Aparup Banerjee 48346fb11f MDL-28724 wiki : Fixed bugs in wiki forms 2011-09-12 12:28:54 +08:00
Sam Hemelryk b13dbc43d7 Merge branch 'w36_MDL-29306_m22_dbenrolroles' of git://github.com/skodak/moodle 2011-09-12 15:30:15 +12:00
Sam Hemelryk 8b5bab6f91 Merge branch 'w36_MDL-29292_m22_featuretypo' of git://github.com/skodak/moodle 2011-09-12 15:17:08 +12:00
Sam Hemelryk 633a5edd51 Merge branch 'MDL-27635' of git://github.com/rwijaya/moodle 2011-09-12 14:38:45 +12:00
Rossiani Wijaya ca896fdfcf MDL-27635 hub component: fixed default value for 'secret' field in 'registration_hubs' table 2011-09-12 10:25:46 +08:00
Sam Hemelryk 016ba63816 MDL-23534 Added setting to set the site pages node to the sites shortname if desired 2011-09-12 13:46:04 +12:00
Sam Hemelryk 342e97ee9c Merge branch 'MDL-15377-master' of git://github.com/raymanuk/moodle 2011-09-12 13:42:28 +12:00
Sam Hemelryk 0eac94dfc7 Merge branch 'MDL-28488' of git://github.com/stronk7/moodle 2011-09-12 13:19:12 +12:00
Sam Hemelryk 014d3c1f8d Merge branch 'MDL-29269' of git://github.com/stronk7/moodle 2011-09-12 13:09:30 +12:00
kordan c6926ff064 MDL-29056 theme-formal_white fix for the report pagelayout that was preventing horizontal scroll 2011-09-12 13:01:49 +12:00
Eloy Lafuente (stronk7) 59fc0cbdb7 MDL-28488 backup - conditionaly apply defaults based on mode
Some modes of backup cannot be preloaded with general backup
settings because they may conflict with the definitions required/set
by the mode (for example, import backups are, by definition, without
users always, so we cannot apply one default in the opposite direction).

So, after the patch, current general_backup setting will be only applied
to general backups, import/hub modes won't be using any default and
automated backup defaults should be loaded here (TODO)
2011-09-11 19:35:56 +02:00
Eloy Lafuente (stronk7) 2a4ba40f31 MDL-28488 backup - '[backup|restore]:configure cap does not control import mode anymore 2011-09-11 19:09:59 +02:00
Petr Skoda 1d16e92700 MDL-29292 fix feature typo
Credit goes to Raminder Singh.
2011-09-11 12:50:16 +02:00
Petr Skoda ab6e0848c1 MDL-29025 standardise cli verbose output and general cleanup 2011-09-11 12:43:43 +02:00
Eloy Lafuente (stronk7) 9530e1ed68 MDL-28488 backup - fixup some strings and delete legacy ones 2011-09-11 12:03:11 +02:00
AMOS bot d06a1e485e Automatically generated installer lang files 2011-09-11 00:55:34 +00:00
Petr Skoda 1ad8143a30 MDL-28595 explain the need to install into new db if something fails during the initial install 2011-09-11 00:07:28 +02:00
Petr Skoda 3efe6bbb88 MDL-28595 do not print continue link if install fails 2011-09-10 23:57:11 +02:00
Petr Skoda 05e60bd206 MDL-29306 support multiple roles in ext enrol db 2011-09-10 23:30:58 +02:00
Petr Skoda 57638f2c05 MDL-29081 add support for proxy in TinyMCE GoogleSpell plugin 2011-09-10 22:56:57 +02:00
Petr Skoda 3e48e0b009 MDL-28455 fix versions in readmes 2011-09-10 21:53:58 +02:00
Petr Skoda ceef298f39 MDL-28455 remove previous TinyMCE version 2011-09-10 21:53:51 +02:00
Petr Skoda 2c2fc4ad75 MDL-28455 switch to new TinyMCE 3.4.5 2011-09-10 21:53:45 +02:00
Petr Skoda fb916bf046 MDL-28455 import customised TinyMCE 3.4.5 2011-09-10 21:53:36 +02:00
Petr Skoda e7dd4ff575 MDL-29131 fix multiple groups issues on the recent activity report 2011-09-10 13:52:42 +02:00
Petr Skoda af08a48b2d MDL-29257 use more entropy in ws upload 2011-09-10 12:06:59 +02:00
Petr Skoda cedc3d338c MDL-29257 use more entropy in repo upload 2011-09-10 12:05:29 +02:00
Petr Skoda 2c479c8fe6 MDL-29257 use counter for unique element ids 2011-09-10 12:02:51 +02:00
Petr Skoda 3e6e4d001f MDL-28701 temp and cache upgrade notes 2011-09-10 11:36:41 +02:00
Petr Skoda 32db0f0d83 MDL-28701 add old cache and temp creation debug message and improve docs a bit 2011-09-10 11:24:46 +02:00
Petr Skoda b6b5023144 MDL-28701 some more tempdirs updated 2011-09-10 10:55:32 +02:00
Petr Skoda 8f6e5a8d19 MDL-28701 one more make_cache_directory 2011-09-10 10:49:04 +02:00
Tom Lanyon 5a87c912a2 MDL-28701 Change uses of make_upload_directory(cache) to make_cache_directory(). 2011-09-10 10:44:43 +02:00
Tom Lanyon af9b14446d MDL-28701 Change uses of make_upload_directory(temp) to make_temp_directory(). 2011-09-10 10:43:49 +02:00
Tom Lanyon e695890739 MDL-28701 Add make_temp_directory() and make_cache_directory(). 2011-09-10 10:35:48 +02:00
Tom Lanyon 365bec4c06 MDL-28701 Change all uses of $CFG->dataroot/cache to $CFG->cachedir 2011-09-10 10:35:46 +02:00
Tom Lanyon 383d388411 MDL-28701 Fixed broken $CFG->tempdir default and added $CFG->cachedir 2011-09-10 10:35:41 +02:00
Tom Lanyon 7aa06e6ded MDL-28701 Change all uses of $CFG->dataroot/temp to $CFG->tempdir 2011-09-10 10:35:39 +02:00
Tom Lanyon 3e93987142 MDL-28701 Added $CFG->tempdir setting 2011-09-10 10:35:37 +02:00
Petr Skoda 138c76789b MDL-29014 fix a few incorrect uses of strlen and substr 2011-09-10 10:21:31 +02:00
Eloy Lafuente (stronk7) 77c2ca69af MDL-28488 backup - make backup and import capabilities independent
Before this change, in order to perform one course import it was
necessary to have both the backupcourse and the backuptargetimport
capabilities. After agreement now each one will control its own
backup mode. Same applies for restore.
2011-09-09 17:46:21 +02:00
Eloy Lafuente (stronk7) 8645a28f3e MDL-28488 backup - activity duplication requires 2 capabilities in ctx 2011-09-09 15:53:02 +02:00
Petr Skoda b8cc71e724 MDL-29175 use new optinal_param_array in cloze question verification 2011-09-09 15:50:27 +02:00
Sam Hemelryk efd9c8e5b6 MDl-29189 course Increased the shortname field length so that it is more usable now that it is consistently formatted 2011-09-09 14:47:37 +12:00
Henning Bostelmann f4831673b6 MDL-26257 Shibboleth auth: run logout handler only if logged in via Shibboleth 2011-09-08 12:13:07 +01:00
Eloy Lafuente (stronk7) 7aacd75be4 MDL-29269 textlib - better handling of collation warnings and errors 2011-09-08 13:00:30 +02:00
Sam Hemelryk 91d284c145 MDL-29186 multilang Reviewed the uses of course fullname and ensured things were being formatted consistently 2011-09-08 09:38:46 +12:00
Sam Hemelryk 63390481c4 MDL-29187 multilang Reviewed the uses of category name and ensured things are being formatted correctly 2011-09-08 09:37:07 +12:00
Sam Hemelryk 8ebbb06adf MDL-29189 mutlilang Reviewed the uses of course shortname and ensured things are being formatted consistently 2011-09-08 09:30:27 +12:00
Sam Hemelryk 71e0b3b5c7 MDL-29188 multilang Reviewed the uses of section name and ensured things were being formatted consistently 2011-09-08 09:27:38 +12:00
sam marshall 371fbe1cc1 MDL-29236 Labels (and other content from modules) on course page should use module filter settings
E.g. if you disable smileys for a label, this ought to work (it doesn't previously, as everything is filtered using the course context).
2011-09-07 17:57:12 +01:00
Eloy Lafuente (stronk7) 5d2db8acc8 weekly release 2.2dev 2011-09-07 17:56:05 +02:00
Eloy Lafuente (stronk7) a1b888384e MDL-27001 Integration bump needed (we were already @ 2011083100.01) 2011-09-06 15:57:49 +02:00
Eloy Lafuente (stronk7) 4a94d2c61f Merge branch 'MDL-27001-master' of git://github.com/sammarshallou/moodle 2011-09-06 15:50:26 +02:00
Eloy Lafuente (stronk7) d09ca89642 Merge branch 'wip-MDL-28043-master' of git://github.com/samhemelryk/moodle 2011-09-06 13:53:34 +02:00
Eloy Lafuente (stronk7) 20079ee7bc MDL-28599 textlib Capture error message earlier to avoid mixing 2011-09-06 13:45:25 +02:00
Eloy Lafuente (stronk7) 0fde6cb8b4 MDL-28599 textlib Document collatorlib switch for asort() 2011-09-06 13:03:01 +02:00
Eloy Lafuente (stronk7) b49c28aab3 Merge branch 'wip-MDL-28599-master-r4' of git://github.com/samhemelryk/moodle 2011-09-06 13:02:33 +02:00
sam marshall 3e4c243500 MDL-27001 'Show description' feature part 3: Implementation for all modules
For modules that still used the 'old' generic object return from _get_coursemodule_info instead of returning a cached_cm_info object, I changed them to use the new format as part of this. This made a few areas of code regarding onclick links slightly nicer.
2011-09-06 11:03:06 +01:00
sam marshall b3a89232d9 MDL-27001 'Show description' feature part 2 - Automatic support for modules that don't have a get_coursemodule_info function
If a module doesn't have module_get_coursemodule_info function, but it does have 'intro' and 'introformat' fields in its main table, then all it needs to do is return true for FEATURE_SHOW_DESCRIPTIONS and everything is handled automatically.
2011-09-06 11:03:03 +01:00
sam marshall 8c40662e22 MDL-27001 'Show description' feature part 1: infrastructure that allows modules to support feature
The 'Show description' feature is about optionally including module description on the course page. This change include the necessary infrastructure - new database field, new FEATURE constant, changes to forms to display it, new language strings for it, backup and restore, and old course conversion. (I found the places to change by searching for an existing field in course_modules).

Documentation for the field is included in install.xml and in modinfolib.
2011-09-06 11:03:00 +01:00
Sam Hemelryk d609d96261 MDL-28599 textlib Separated collator to collatorlib with static methods, and added support for locale aware sorting of objects 2011-09-06 15:39:00 +12:00
Eloy Lafuente (stronk7) dfdb0051e7 Merge branch 'wip-mdl-28987' of git://github.com/rajeshtaneja/moodle 2011-09-06 01:59:20 +02:00
Sam Hemelryk 871a3ec5fb MDL-28043 user Fixed context hack in pluginfile for user pics leading to init of page, theme and output for redirect 2011-09-06 11:29:05 +12:00
Eloy Lafuente (stronk7) c35fba98da Merge branch 'wip-mdl-23520' of git://github.com/rajeshtaneja/moodle 2011-09-06 01:25:05 +02:00
Eloy Lafuente (stronk7) 4df93d22be Merge branch 'wip-MDL-29006-master' of git://github.com/samhemelryk/moodle 2011-09-06 00:38:10 +02:00
Eloy Lafuente (stronk7) 49873b7e43 Merge branch 'w35_MDL-29145_m22_imscpregression' of git://github.com/skodak/moodle 2011-09-05 21:51:44 +02:00
Ray Guo 34d37f7514 MDL-15377 Filter: Fixed glossary keyword autolinked when appearing in
Javascript
2011-09-05 17:12:42 +01:00
Eloy Lafuente (stronk7) 01d6182fa8 MDL-29072 Import course - whitespace fixes 2011-09-05 10:41:57 +02:00
Petr Skoda 986eb4cfbb MDL-29145 fix regression caused by MDL-27448 2011-09-05 09:44:41 +02:00
Sam Hemelryk e824388a1c Merge branch 'w35_MDL-29233_m22_usersel' of git://github.com/skodak/moodle 2011-09-05 19:23:07 +12:00
Petr Skoda 409ac82413 MDL-29233 revert the optional_param workaround and use this->multiselect to decide when we expect arrays 2011-09-05 09:02:47 +02:00
Rajesh Taneja a82e9ada37 MDL-28987 Forms Library: Removed onBlur validation. Now the validation will occur on form submit only 2011-09-05 14:25:13 +08:00
Aparup Banerjee 660a6aae02 Merge branch 'wip_MDL-27689_Vague_README-LDAP_master' of git://github.com/iarenaza/moodle 2011-09-05 13:29:14 +08:00
Aparup Banerjee 57ef9c14cb Merge branch 'wip-MDL-26811-master' of git://github.com/samhemelryk/moodle 2011-09-05 13:01:23 +08:00
Rajesh Taneja ab978b38c4 MDL-28987 Forms Library: Added tinyMCE onblur event callback for required tinymce fields 2011-09-05 12:19:40 +08:00
Aparup Banerjee e2e1cf53db Merge branch 'MDL-29198' of git://github.com/stronk7/moodle 2011-09-05 12:10:32 +08:00
Sam Hemelryk ae4d8567b4 Merge branch 'MDL-29018' of git://github.com/rwijaya/moodle 2011-09-05 16:08:03 +12:00
Sam Hemelryk 0d966d5bfe Merge branch 'MDL-28689' of git://github.com/rwijaya/moodle 2011-09-05 16:03:04 +12:00
Rossiani Wijaya 5951d333e5 MDL-29018 lesson module statistics: fixed statistics diplay for whole the class 2011-09-05 11:18:15 +08:00
Sam Hemelryk 15f3ba7e78 Merge branch 'MDL-29072' of git://github.com/bostelm/moodle 2011-09-05 13:41:04 +12:00
Sam Hemelryk 3dc1b595ef Merge branch 'MDL-27975' of git://github.com/rwijaya/moodle 2011-09-05 13:36:35 +12:00
Sam Hemelryk 057c2f8d06 Merge branch 's13_MDL-29170_risklevel_master' of git://github.com/dongsheng/moodle 2011-09-05 11:12:10 +12:00
Eloy Lafuente (stronk7) ee91760321 MDL-28080 DML unit tests - cover tweak_param_names() and the new 30 chars limit exception 2011-09-01 19:46:30 +02:00
Eloy Lafuente (stronk7) 07ee317d2a MDL-28080 oracle - avoid tweak_param_names() tweaking too much :-P
Sometimes the (oracle only) tweak_param_names() method was causing
placeholders having > 28 chars length to exceed the 30 chars limit
imposed by Oracle. With this commit the tweak is performed by
replacement for such long placeholders and, at the same time, the
tweak has been commented out from insert/update because it is not
necessary there (placeholders are safe column name always)
2011-09-01 19:42:29 +02:00
Iñaki Arenaza 7edcbecad6 MDL-27689 Vague README-LDAP file in auth/ldap
README-LDAP referes to a file that was renamed (to auth.php) in Moodle
1.8 and no longer exists. Make clear what file we are referring to.
2011-09-01 12:43:58 +02:00
Tim Hunt 8de7858fb9 MDL-28080 coding_exception for over-long placeholder names. 2011-09-01 11:47:40 +02:00
Eloy Lafuente (stronk7) 4b5c84ae30 MDL-29198 DB - make delete_records transactional safe when needed 2011-09-01 11:05:21 +02:00
Rossiani Wijaya fb0a425d35 MDL-27975 community block: fixed string typo 2011-09-01 17:01:13 +08:00
Rossiani Wijaya 5163bf8bb3 MDL-28689 chat module: add input.png file. This is a simple fix by copying the file from bubbles themes. Proper fix should be done in the future 2011-09-01 16:19:57 +08:00
Andrew Davis (andyjdavis) a485083171 MDL-29126 gradebook: made text export with tabs as separator work 2011-09-01 15:21:04 +08:00
Dongsheng Cai f2eac75624 WEBSERVICE MDL-29170 reduce createmobiletoken capability risk level 2011-09-01 11:02:03 +08:00
Rajesh Taneja cbe20ec362 MDL-28987 Forms Library: Added tinyMCE save for tinymce editor validation 2011-08-31 14:13:35 +08:00
Adam Olley 567282021a MDL-28987: Affix [text] to editor element in JS validation and add blur event 2011-08-31 14:09:12 +08:00
Rajesh Taneja ac0a82cf92 MDL-23520 mod-wiki-2.0: Added delete page and version feature as it was in 1.9 2011-08-31 13:54:05 +08:00
Sam Hemelryk 3485687660 MDL-29006 block_html Added formatted to title printed on editing form when a hard freeze is in effect 2011-08-31 11:45:57 +12:00
Sam Hemelryk 14d4c6603e MDL-26811 upgrade Fixed up default handling causing exception on upgrade of used site in MSSQL 2011-08-31 11:34:21 +12:00
Eloy Lafuente (stronk7) 9805fb9f17 weekly release 2.2dev 2011-08-31 01:32:26 +02:00
Eloy Lafuente (stronk7) 2c1f86678c Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-08-31 01:29:22 +02:00
Aparup Banerjee dd0c9fb142 MDL-29005 blocks : clarified comment 2011-08-30 11:17:50 +08:00
Aparup Banerjee d9d76da933 Merge branch 'MDL-29005' of git://github.com/mouneyrac/moodle 2011-08-30 11:07:38 +08:00
Sam Hemelryk 239ed133f1 Merge branch 'MDL-28489_master' of git://github.com/stronk7/moodle 2011-08-30 11:03:38 +12:00
Eloy Lafuente (stronk7) c3b825e1b8 MDL-28489 site news forum - support multilang filter 2011-08-29 22:03:04 +02:00
Eloy Lafuente (stronk7) 0c4a35b2f4 Merge branch 'wip-mdl-29104' of git://github.com/rajeshtaneja/moodle 2011-08-29 13:29:58 +02:00
Eloy Lafuente (stronk7) bae0925b4d Merge branch 'MDL-29141' of git://github.com/timhunt/moodle 2011-08-29 13:00:21 +02:00
Rajesh Taneja c600761b15 MDL-29104 course: Fixed optional_param_array usage for load_selected_users 2011-08-29 17:30:40 +08:00
Eloy Lafuente (stronk7) 1d6d2c91d2 Merge branch 'wip-MDL-24202-master' of git://github.com/samhemelryk/moodle 2011-08-29 10:23:22 +02:00
Aparup Banerjee a1b744594c Merge branch 'MDL-29144' of git://github.com/timhunt/moodle 2011-08-29 12:10:30 +08:00
Sam Hemelryk 1e31393dba Merge branch 'MDL-28564' of git://github.com/timhunt/moodle 2011-08-29 13:58:05 +12:00
Sam Hemelryk 9bf5af2181 MDL-24202 navigation Fixed bug caused by navigation overriding a CFG setting 2011-08-29 13:45:04 +12:00
Eloy Lafuente (stronk7) c01a24bdef Merge branch 'MDL-28943_manage_message_name' of git://github.com/andyjdavis/moodle 2011-08-29 03:25:41 +02:00
Eloy Lafuente (stronk7) c45eca3f06 Merge branch 'MDL-26302' of git://github.com/timhunt/moodle 2011-08-29 03:22:02 +02:00
Eloy Lafuente (stronk7) 0312bf641c Merge branch 'wip-MDL-28596-master' of git://github.com/samhemelryk/moodle 2011-08-29 03:15:25 +02:00
Sam Hemelryk e57bbf55ab Merge branch 'MDL-26819' of git://github.com/stronk7/moodle 2011-08-29 13:05:00 +12:00
Sam Hemelryk c4b06ddd75 Merge branch 'dev_MDL-27289_boxnet_master' of git://github.com/dongsheng/moodle 2011-08-29 12:53:51 +12:00
Eloy Lafuente (stronk7) 18c8de5806 Merge branch 'MDL-29064' of git://github.com/timhunt/moodle 2011-08-29 02:52:35 +02:00
Eloy Lafuente (stronk7) 52d935de27 Merge branch 'MDL-29062' of git://github.com/timhunt/moodle 2011-08-29 02:39:42 +02:00
Sam Hemelryk c873eb4a90 Merge branch 'MDL-29135-mnet-login' of git://github.com/mudrd8mz/moodle 2011-08-29 12:23:27 +12:00
Sam Hemelryk 1924a86afa Merged branch 'MDL-28460_master' of git://github.com/kordan/moodle.git with conflict resolution 2011-08-29 12:13:40 +12:00
Eloy Lafuente (stronk7) 6843dea2e9 Merge branch 'master' of git.moodle.org:/git/integration 2011-08-29 02:04:46 +02:00
Eloy Lafuente (stronk7) 1343d181ae Merge branch 'MDL-29111' of git://github.com/timhunt/moodle 2011-08-29 02:01:37 +02:00
Kordan ec140757f7 MDL-28459 theme-formal_white Added option to specify a special logo for use on the frontpage 2011-08-29 11:53:55 +12:00
David Mudrak 54941685e3 MDL-29148 MNet - improved handling of a verification function return code 2011-08-29 01:48:55 +02:00
Eloy Lafuente (stronk7) 1f03315b18 Merge branch 'wip_MDL-16168_HEAD_CAS_crash_if_no_LDAP' of https://github.com/iarenaza/moodle 2011-08-29 01:30:37 +02:00
Eloy Lafuente (stronk7) 7795ad41b3 Merge branch 'MDL-25872' of git://github.com/bostelm/moodle 2011-08-29 01:22:22 +02:00
Sam Hemelryk 95d0c74474 Merge branch 'MDL-6397_database_rss_label' of git://github.com/andyjdavis/moodle 2011-08-29 11:11:10 +12:00
Iñaki Arenaza fa5f5c206f MDL-28402 LDAP configuration values being stored in lower case, causing misconfiguration
It looks like array_change_key_case() does not work recursively, so we
were not actually lowercasing the expiration attribute key. As the
configuration setting is always lowercase they didn't match.
2011-08-29 01:07:30 +02:00
Eloy Lafuente (stronk7) 1ccfd8dcbf MDL-26819 quiz statistics - use cross-db GROUP BY expression 2011-08-28 22:12:40 +02:00
Iñaki Arenaza ab8b1d15a5 MDL-16168 auth/cas CAS crashes if no LDAP is set up
Fix was pending for master. Credit goes to Ivan Dackiewicz.
2011-08-28 15:31:14 +02:00
David Mudrak a014e3bcd8 MDL-27107 auth_mnet - consider all incoming roaming users as confirmed
The 'confirmed' field can't be optional. If the identity provider did
not export it, the new remote user would be created with 'confirmed' set
to default zero and as such could be a subject of scheduled deletion.
2011-08-28 02:44:45 +02:00
David Mudrak 190bbc1603 MDL-29135 Reworded login prompt with SSO over MNet enabled 2011-08-27 18:25:31 +02:00
Tom Cubanski 14bf45747d MDL-26302 quiz editing: top move button on the order and paging tab does not work.
It is strange that processes the submission already handles the submitted data from this change to the HTML.
2011-08-27 08:20:46 +01:00
Tim Hunt ff82d7fd0a MDL-29064 qtype multianswer, question text should be a required field. 2011-08-27 08:20:08 +01:00
Tim Hunt 3908a52310 MDL-29062 qtype multianswer refers to old name for the question_delete_questions function. 2011-08-27 08:19:17 +01:00
Tim Hunt 1b343d5241 MDL-28564 question type importing, improve Jamie's fix. 2011-08-27 08:16:47 +01:00
Jamie Pratt 05cef658dd MDL-28564 "implement support for extra answer fields in question export and
import" implemented support for extra answer fields in questiontype base
export and import functions.
2011-08-27 08:16:47 +01:00
AMOS bot 3059883dad Automatically generated installer lang files 2011-08-27 00:55:36 +00:00
M Kassaei f28ef47e8f MDL-29144 quiz navigation: Screen-readers speak question state twice 2011-08-26 19:10:08 +01:00
Tim Hunt 918776f47d MDL-29111 quiz was passing 0 to ->review_url when it should have been null. 2011-08-26 18:21:43 +01:00
Henning Bostelmann 7d8b217bca MDL-25872 View assignment submissions: show only students, not teachers
Fixing incorrect capability reference mod/assignment:view to ...:submit
2011-08-26 17:33:46 +01:00
Tim Hunt e20ad67d7b MDL-29141 question bank show question text checkbox does not match state. 2011-08-26 17:01:06 +01:00
Henning Bostelmann 987e0e915c MDL-28686 QE2 upgrade: recognize manually graded, deleted questions 2011-08-26 14:38:50 +01:00
Eloy Lafuente (stronk7) 4ad6128920 weekly release 2.2dev 2011-08-26 15:10:15 +02:00
Eloy Lafuente (stronk7) ab2da3f679 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-08-26 14:56:34 +02:00
Eloy Lafuente (stronk7) 6459abdc9e MDL-28684 QE2 upgrade: fix undefined $a regression. Thanks Henning! 2011-08-25 15:56:39 +02:00
Petr Skoda 89631804a4 Merge branch 'w33_MDL-28554_m22_yui' of github.com:skodak/moodle 2011-08-25 11:40:07 +02:00
Petr Skoda 0958759dc2 MDL-28554 workaround for http://yuilibrary.com/projects/yui3/ticket/2530999
Do not load io-xdr and io-upload-iframe on the same page.
2011-08-25 11:38:34 +02:00
Eloy Lafuente (stronk7) 50dabefeef Merge branch 'MDL-27823_bulk_messaging_2' of git://github.com/andyjdavis/moodle 2011-08-25 10:45:43 +02:00
Sam Hemelryk 7749e187cc MDL-28596 course Improved and modernised the production of module editing icons and added support for renderable content when rendering action_link components 2011-08-25 18:02:35 +12:00
Andrew Davis (andyjdavis) c87d90be14 MDL-6397 database: removed an unused string 2011-08-25 08:29:32 +08:00
Eloy Lafuente (stronk7) 7b4537561f MDL-29012 custom profile fields - replace some &quot; by ' 2011-08-25 01:40:51 +02:00
Eloy Lafuente (stronk7) dc7ed03214 Merge branch 'MDL-29012-show_deleted_field' of git://github.com/tmuras/moodle 2011-08-25 01:30:41 +02:00
Eloy Lafuente (stronk7) 85dca0996e Merge branch 'MDL-MDL-28650' of https://github.com/mouneyrac/moodle 2011-08-25 01:11:15 +02:00
Eloy Lafuente (stronk7) 4f7c38660a Merge branch 'w33_MDL-29027_m22_textlib' of git://github.com/skodak/moodle 2011-08-24 18:49:05 +02:00
Petr Skoda 17ddbd050a MDL-29027 yet more tests 2011-08-24 18:47:05 +02:00
Petr Skoda b25a17142c MDL-29027 support for mail charsets 2011-08-24 18:37:13 +02:00
Petr Skoda 2e0ecae45e MDL-29027 fallback to typo and more tests
Hopefully we now get the same results on all systems.
2011-08-24 17:14:47 +02:00
Eloy Lafuente (stronk7) f04da0f051 Merge branch 'MDL-28684' of git://github.com/timhunt/moodle 2011-08-24 17:08:31 +02:00
Tim Hunt 4ca3f2d167 MDL-28684 fix failing unit test - which means fix the acutal code.
Sorry for the noise.
2011-08-24 16:00:37 +01:00
Eloy Lafuente (stronk7) a3f2ad4e80 Merge branch 'w33_MDL-28929_m22_themeplaceholders' of git://github.com/skodak/moodle 2011-08-24 16:24:21 +02:00
Eloy Lafuente (stronk7) 07ad6c600c Merge branch 'w33_MDL-26796_m22_arrayparams' of git://github.com/skodak/moodle 2011-08-24 16:12:19 +02:00
Petr Skoda c16c1be700 MDL-26796 accept objects that can be converted to string in clean_param() 2011-08-24 16:09:25 +02:00
Petr Skoda 0f70414078 MDL-28929 document themes api changes 2011-08-24 15:11:25 +02:00
Petr Skoda 7339273895 Merge branch 'w33_MDL-28554_m22_yui' of github.com:skodak/moodle 2011-08-24 15:01:50 +02:00
Petr Skoda 9d753c38d7 MDL-28554 fix problematic loading of io-upload-frame
This is a bit of a mystery, somehow 'io' module dependency is not enough to load everything, this might be caused by a regression in yui.
2011-08-24 15:00:10 +02:00
Eloy Lafuente (stronk7) 0a4ca115b2 Merge branch 'w33_MDL-26796_m22_arrayparams' of git://github.com/skodak/moodle 2011-08-24 14:06:22 +02:00
Eloy Lafuente (stronk7) 6408c7d9f0 NOBUG: Minibump needed here for some automated tests to happen 2011-08-24 13:35:24 +02:00
Eloy Lafuente (stronk7) ca5c3667cd Merge branch 'w33_MDL-28929_m22_themeplaceholders' of git://github.com/skodak/moodle 2011-08-24 13:31:54 +02:00
Eloy Lafuente (stronk7) 2ed28439f6 Merge branch 'MDL-28976' of git://github.com/timhunt/moodle 2011-08-24 12:57:16 +02:00
Petr Skoda b5ae095d91 MDL-28929 add version.php with requirements and copyrights
The data for missing copyrights was taken from other files in the same theme, git history or plugins database.
2011-08-24 10:50:22 +02:00
Jerome Mouneyrac 4962df40a9 MDL-29005 display enrollable courses total and downloadable courses total instead of courses/sites total 2011-08-24 14:40:15 +08:00
Aparup Banerjee efdbbafdba Revert "MDL-28509 repository_youtube Enable selection of sort order"
This reverts commit 88bf951aa7.
2011-08-24 14:39:46 +08:00
Eloy Lafuente (stronk7) a2e87acfc5 Merge branch 'w33_MDL-29020_m22_clidbenrol' of git://github.com/skodak/moodle 2011-08-24 03:50:41 +02:00
Eloy Lafuente (stronk7) a7493463d1 Merge branch 'MDL-28248b' of https://github.com/totara/moodle 2011-08-24 03:39:23 +02:00
Aaron Barnes b58f4df6ea MDL-28248 completion: Incorrect SQL for finding enrol start date 2011-08-24 12:05:34 +12:00
Eloy Lafuente (stronk7) 55cbc63882 Merge branch 'MDL-28979' of git://github.com/timhunt/moodle 2011-08-24 01:55:45 +02:00
Tim Hunt a980739fd4 MDL-28942 qtype multichoice, multi-response. Avoid computing the wrong random guess score.
It is effectively impossible to compute the right random guess score, so we should not compute anything, rather than computing a number that we know is wrong.

This patch also fixes a multianswer unit test error that was shown up by this fix.
2011-08-24 01:52:28 +02:00
Eloy Lafuente (stronk7) 64ce7fb6c5 Merge branch 'MDL-28975' of git://github.com/timhunt/moodle 2011-08-24 01:44:02 +02:00
Sun Zhigang c03ae03383 MDL-29019 enrol - fix a typo 2011-08-24 01:30:57 +02:00
Eloy Lafuente (stronk7) f622fbef7f Merge branch 'w33_MDL-19380_m22_repoclamav' of git://github.com/skodak/moodle 2011-08-24 01:17:28 +02:00
Eloy Lafuente (stronk7) 5f37fcf861 Merge branch 'w33_MDL-29000_m22_forgetcase' of git://github.com/skodak/moodle 2011-08-24 00:56:46 +02:00
Eloy Lafuente (stronk7) c8f74cc628 Merge branch 'w33_MDL-28981_m22_canpost' of git://github.com/skodak/moodle 2011-08-24 00:52:56 +02:00
Eloy Lafuente (stronk7) de1c2d8322 Merge branch 'w33_MDL-27228_m22_labelhide' of git://github.com/skodak/moodle 2011-08-23 23:35:41 +02:00
Eloy Lafuente (stronk7) df12713415 Merge branch 'w33_MDL-28708_m22_f304' of git://github.com/skodak/moodle 2011-08-23 23:26:06 +02:00
Eloy Lafuente (stronk7) 94fd5ebc06 Merge branch 'w33_MDL-28709_m22_h304' of git://github.com/skodak/moodle 2011-08-23 23:16:29 +02:00
Eloy Lafuente (stronk7) 3a6cd081e4 Merge branch 'w33_MDL-29011_m22_nomanualenrol' of git://github.com/skodak/moodle 2011-08-23 23:12:34 +02:00
Eloy Lafuente (stronk7) d12d4d59a6 MDL-28684 QE2 upgrade: whitespace fix 2011-08-23 22:52:16 +02:00
Eloy Lafuente (stronk7) a4a6279a61 Merge branch 'MDL-28684b' of git://github.com/bostelm/moodle 2011-08-23 22:50:03 +02:00
Eloy Lafuente (stronk7) 53ef01d00b Merge branch 'MDL-28444' of git://github.com/timhunt/moodle 2011-08-23 22:46:17 +02:00
Aparup Banerjee 553d343bf2 Merge branch 'w33_MDL-28982_m22_sqlfullname' of git://github.com/skodak/moodle 2011-08-24 03:03:50 +08:00
Aparup Banerjee 5ad0103d9d Merge branch 'MDL-28687' of git://github.com/timhunt/moodle 2011-08-24 02:24:08 +08:00
Henning Bostelmann 96576a2ac1 MDL-29072 Import course: Use correct capability for course selection 2011-08-23 19:07:54 +01:00
Eloy Lafuente (stronk7) 379771a723 Merge branch 'master_MDL-27624' of git://github.com/danmarsden/moodle 2011-08-23 19:04:44 +02:00
Eloy Lafuente (stronk7) fb57247ed2 MDL-28962 enrol imsenterprise - whitespace fix 2011-08-23 18:39:48 +02:00
Eloy Lafuente (stronk7) 4a88ad2f2a Merge branch 'master_MDL-28962' of git://github.com/danmarsden/moodle 2011-08-23 18:31:01 +02:00
Eloy Lafuente (stronk7) 8d30b1a97e Merge branch 'MDL-28957' of git://github.com/colchambers/moodle 2011-08-23 18:00:51 +02:00
Eloy Lafuente (stronk7) 01fc285579 Merge branch 'MDL-28397' of https://github.com/totara/moodle 2011-08-23 17:17:16 +02:00
Petr Skoda a7a20faf8f MDL-29027 fallback to mb_string on errors if available and simplify charset parsing
This may solve problems with encodings unsupported in iconv and random borked chars are ignored.
2011-08-23 15:21:15 +02:00
Aparup Banerjee 31d13687c9 Merge branch 'wip-MDL-25636-master' of git://github.com/samhemelryk/moodle 2011-08-23 18:17:26 +08:00
Eloy Lafuente (stronk7) 065399a11f Merge branch 'w33_MDL-28381_m22_cliphpver' of git://github.com/skodak/moodle 2011-08-23 11:03:19 +02:00
Eloy Lafuente (stronk7) 4abd7a07e1 Merge branch 'MDL-28996' of git://github.com/timhunt/moodle 2011-08-23 10:41:17 +02:00
Eloy Lafuente (stronk7) 6c29e785eb Merge branch 'w33_MDL-28554_m22_yui' of git://github.com/skodak/moodle 2011-08-23 10:11:41 +02:00
Eloy Lafuente (stronk7) f1bb5b2ec7 Merge branch 'w33_MDL-28935_m22_calendardays' of git://github.com/skodak/moodle 2011-08-23 09:59:27 +02:00
Petr Skoda ebdeccca4e MDL-26796 remove unused param 2011-08-23 08:18:03 +02:00
Aparup Banerjee f3d8c8a9a3 Merge branch 'MDL-28509_master' of git://github.com/marxjohnson/moodle 2011-08-23 14:07:08 +08:00
Eloy Lafuente (stronk7) c946644435 Merge branch 'master_MDL-28999' of git://github.com/danmarsden/moodle 2011-08-23 02:49:40 +02:00
Eloy Lafuente (stronk7) 906f11ef3b Merge branch 'w33_MDL-29016_m22_distropermissions' of git://github.com/skodak/moodle 2011-08-23 02:42:40 +02:00
Eloy Lafuente (stronk7) 1a3c27d0b6 Merge branch 'MDL-28990' of git://github.com/mouneyrac/moodle 2011-08-23 02:35:05 +02:00
Eloy Lafuente (stronk7) 865b0b1437 Merge branch 'w33_MDL-29031_m22_oldblock' of git://github.com/skodak/moodle 2011-08-23 02:03:19 +02:00
Eloy Lafuente (stronk7) c04b098343 Merge branch 'MDL-28226' of git://github.com/timhunt/moodle 2011-08-23 01:42:05 +02:00
Eloy Lafuente (stronk7) 47cd63bcd8 Merge branch 'MDL-28481' of git://github.com/aolley/moodle 2011-08-23 01:36:25 +02:00
Eloy Lafuente (stronk7) f342cd715a Merge branch 'w33_MDL-28936_m22_msgstrlen' of git://github.com/skodak/moodle 2011-08-23 01:19:52 +02:00
Eloy Lafuente (stronk7) 16302db3a4 Merge branch 'MDL-28241' of git://github.com/timhunt/moodle 2011-08-23 01:16:34 +02:00
Tim Hunt c1f15d3539 MDL-28241 editing multianswer questions broken since the fix for MDL-24594. 2011-08-22 22:35:05 +01:00
Aparup Banerjee c6f94ea2fa Merge branch 'wip-mdl-28580' of git://github.com/rajeshtaneja/moodle 2011-08-23 00:51:28 +08:00
Aaron Barnes 4756710889 MDL-28397 completion: Activity completion criteria not showing grading
requirement

Credit goes to Evan Irving-Pease for the patch
2011-08-22 14:54:41 +12:00
Adam Olley 936cabd6f0 MDL-28481: Send headers before any possible output 2011-08-22 09:11:42 +09:30
Petr Skoda 3b3f302855 MDL-28929 update all themes to use the new placeholders 2011-08-21 21:01:53 +02:00
Petr Skoda 72009b8777 MDL-28929 fix incorrect use if static placeholders in theme layouts 2011-08-21 21:01:31 +02:00
Petr Skoda 1e3c41c0cf MDL-29011 do not require manual enrol cap on the enrolled users page 2011-08-21 18:17:43 +02:00
Petr Skoda 925c5efd3e MDL-29031 drop unused block tables 2011-08-21 17:56:06 +02:00
Petr Skoda fe8682fd41 MDL-27248 remove forgotten unique sortorder index from the course table 2011-08-21 17:32:02 +02:00
Petr Skoda 11ec4ed51d MDL-28981 fix forum_user_can_post() call params 2011-08-21 15:50:23 +02:00
Petr Skoda 1c8c6c34fd MDL-28982 fix DML use 2011-08-21 15:38:46 +02:00
Tony Levi d9b49c23da MDL-27228: Fix label 'eye' does not match show/hide setting 2011-08-21 14:54:00 +02:00
Petr Skoda 8de5d7b987 MDL-28381 always verify PHP version in CLI scripts
The problem is that people may use different php binary for web and CLI.
2011-08-21 12:21:29 +02:00
Petr Skoda ff72b8d1b0 MDL-29000 multiple password reset issues
* stop abusing get_complete_user_data()
* fix case-sensitiveness in password reset for PG
* do not allow reset of disabled accounts
* propose a solution for non-unique emails
2011-08-20 19:22:04 +02:00
Tomasz Muras 192a8aef34 MDL-29012 Show which user profile field is being deleted
Improve usability by showing the name of the profile field
being deleted.
2011-08-20 16:29:21 +01:00
Petr Skoda 5a7e4c1158 MDL-29027 improve textlib api and add missing unittests 2011-08-20 17:00:53 +02:00
Tim Hunt e8b8073d3c MDL-28444 unit test to verify the fix. 2011-08-20 13:14:07 +01:00
Petr Skoda 043c7cb863 MDL-28935 use weekdays as calendar table headings 2011-08-20 13:45:37 +02:00
Jason Ilicic 2953ad13bb MDL-28935 Add days of week to monthly calendar view 2011-08-20 13:38:19 +02:00
Petr Skoda 6650f3dedf MDL-29020 add CLI verbose mode and stop requiring course idnumber when external column specified 2011-08-20 12:59:23 +02:00
Henning Bostelmann 409199d660 MDL-28444 synchronized datasets: fix typo in get_variants_selection_seed() 2011-08-20 11:49:26 +01:00
Petr Skoda 70801baf0b MDL-29016 allow distributions to set dataroot permissions 2011-08-20 12:48:44 +02:00
Petr Skoda 0b92cdce1f MDL-28936 fix invalid >200 comparison and utf-8 incompatibility
Credit for discovery goes to Jason Ilicic.
2011-08-19 18:42:49 +02:00
Petr Skoda ffa5e3ddae MDL-28708 minor unrelated cleanup and elimination of dead code 2011-08-19 17:26:28 +02:00
Tony Levi f73c6bad2c MDL-28708: Send 304 Not Modified response when browser If-Modified-Since header is after file mtime 2011-08-19 17:14:54 +02:00
Petr Skoda 21aa9d48e3 MDL-26796 document array parameter changes 2011-08-19 17:04:34 +02:00
Petr Skoda aa603b14c7 MDL-28709 adding HTTP_IF_MODIFIED_SINCE and minor style tweaks 2011-08-19 16:32:30 +02:00
Tony Levi ccc0fff941 MDL-28709: Performance: Send cache/contenttype headers with 304 responses 2011-08-19 16:23:08 +02:00
Henning Bostelmann fbf51a480a MDL-28684 QE2 upgrade: recognize empty answer in multichoice questions 2011-08-19 10:33:35 +01:00
Andrew Davis (andyjdavis) 2a4d3c98d5 MDL-27823 messaging: preventing html tags from being output to the UI 2011-08-19 16:53:32 +08:00
Petr Skoda ef7329dce0 MDL-28544 workaround for missing YUI 3.4.0 loader info 2011-08-19 10:21:30 +02:00
Petr Skoda b13425c810 MDL-28554 import YUI 3.4.0 2011-08-19 10:20:21 +02:00
Rajesh Taneja bb44ef990f MDL-28580 Administration: Added sanity check to grab wrong usage of upgrade_main_savepoint 2011-08-19 07:37:48 +00:00
Petr Skoda 6fc17ca906 MDL-28554 import YUI 2.9.0 2011-08-19 07:49:06 +02:00
Jerome Mouneyrac fa698a15a8 MDL-28990 add web service mobile overview 2011-08-19 11:45:18 +08:00
Ankit Kumar Agarwal 784967eab8 MDL-27624 SCORM formating codes 2011-08-19 11:17:19 +12:00
Ankit Kumar Agarwal 266a129c14 MDL-27624 Small structural changes
MDL-27624 SCORM adding definition to scrom elements
	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/userreport.php
2011-08-19 11:17:19 +12:00
Dan Marsden 3b71ce6a5c MDL-28999 SCORM add missing yui2 require 2011-08-19 10:23:46 +12:00
Tim Hunt a47a46f136 MDL-28996 Quiz view page list of attempts table is sometimes missing a cell. 2011-08-18 19:26:30 +01:00
Tim Hunt 5e86cb87de MDL-28979 qtype match: correct answer formatted badly. 2011-08-18 14:00:57 +01:00
Tim Hunt 45e5fbe11e MDL-28976 quiz was passing 0 to ->attempt_url when it should have been null.
There was also one other incorrect call that is fixed in this commit.
2011-08-18 14:00:30 +01:00
Tim Hunt a40d411e74 MDL-28975 question engine, JavaScript error in IE. 2011-08-18 14:00:05 +01:00
Tim Hunt 2a73f863ff MDL-28687 questions avoid fatal errors when reviewing attempts at deleted questions. 2011-08-18 13:59:07 +01:00
Tim Hunt 13bbfebc75 MDL-28226 quiz locallib. Fix PHPdoc comment and code to make the API clearer. 2011-08-18 13:58:14 +01:00
Petr Skoda 84641adc3b MDL-19380 fix redirect when virus found in JS-less mode 2011-08-18 09:01:53 +02:00
Petr Skoda 18bd7573d6 MDL-26796 convert array parameter cleaning to new functions 2011-08-18 08:40:33 +02:00
Petr Skoda 923aff64fa MDL-26796 add unit tests for parameter cleanup 2011-08-18 08:40:32 +02:00
Petr Skoda 2ca3bffa95 MDL-26796 do not accept arrays in optional_param() and required_param(), add new functions 2011-08-18 08:40:32 +02:00
Petr Skoda 23bfe0a448 MDL-19380 reimplement antivir scanning in repositories 2011-08-18 08:37:40 +02:00
Jerome Mouneyrac cde291ed73 MDL-28650 add a page in the administration to the full web service API (API documentation). 2011-08-18 11:51:02 +08:00
Dan Marsden 5375c60ad4 MDL-28962 enrol imsenterprise - incorrect conversion of new dml syntax - thanks to Patrick Gagnon for report and fix. 2011-08-18 13:39:22 +12:00
AMOS bot 5823344462 Automatically generated installer lang files 2011-08-18 00:55:20 +00:00
Eloy Lafuente (stronk7) 4f3632441a weekly release 2.2dev 2011-08-18 02:41:22 +02:00
Eloy Lafuente (stronk7) 29092038d8 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-08-18 02:38:24 +02:00
Colin Chambers 9ec3e43867 #MDL-28957 outputrequirementslib reduced excessive js console logging 2011-08-17 15:00:44 +01:00
Eloy Lafuente (stronk7) 1d1982c5a2 Merge branch 'MDL-28349' of git://github.com/timhunt/moodle 2011-08-17 15:28:55 +02:00
Dongsheng Cai 3deff6c9d2 MDL-27289, upgrade box.net repository plugin to use new box.net authentication process 2011-08-17 11:42:23 +08:00
Eloy Lafuente (stronk7) f5cf69047d Merge branch 'MDL27951' of git://github.com/ankitagarwal/moodle 2011-08-17 03:09:15 +02:00
Eloy Lafuente (stronk7) 2bdd5cf6ec Merge branch 'wip_MDL-20804_wsdl' of git://github.com/timhunt/moodle 2011-08-17 03:04:34 +02:00
Eloy Lafuente (stronk7) c2f4948cab Merge branch 'wip-mdl-27219' of git://github.com/rajeshtaneja/moodle 2011-08-17 02:58:40 +02:00
Eloy Lafuente (stronk7) c4904bdab5 Merge branch 'MDL-28737' of git://github.com/timhunt/moodle 2011-08-17 02:51:09 +02:00
Eloy Lafuente (stronk7) eed08a1c25 Revert "MDL-25757 SCORM fix issue with duplicate cmi values being saved"
This reverts commit 7441c53cc1.
2011-08-17 02:27:50 +02:00
Eloy Lafuente (stronk7) e1314fe345 Merge branch 'MDL-21934' of git://github.com/timhunt/moodle 2011-08-17 01:28:41 +02:00
Eloy Lafuente (stronk7) 682309687d Merge branch 'MDL-27752' of git://github.com/rwijaya/moodle 2011-08-17 01:01:59 +02:00
Eloy Lafuente (stronk7) 8b321291e2 Merge branch 'MDL-28301-master' of git://github.com/sammarshallou/moodle 2011-08-17 00:56:28 +02:00
Eloy Lafuente (stronk7) a50fe03ebe Merge branch 'MDL-28643-master' of git://github.com/sammarshallou/moodle 2011-08-17 00:44:44 +02:00
Eloy Lafuente (stronk7) b59545e6e5 Merge branch 'master_MDL-28649' of git://github.com/danmarsden/moodle 2011-08-17 00:32:23 +02:00
Eloy Lafuente (stronk7) 11092aeb16 Merge branch 'MDL-28652' of git://github.com/timhunt/moodle 2011-08-17 00:28:43 +02:00
Eloy Lafuente (stronk7) ca00985a79 Merge branch 'MDL-28653' of git://github.com/timhunt/moodle 2011-08-17 00:17:14 +02:00
Eloy Lafuente (stronk7) e2c65492c8 Merge branch 'MDL-28654' of git://github.com/timhunt/moodle 2011-08-17 00:08:59 +02:00
Eloy Lafuente (stronk7) ff61183f43 Merge branch 'MDL-28655' of git://github.com/bostelm/moodle 2011-08-17 00:07:19 +02:00
Eloy Lafuente (stronk7) 6d4f437640 Merge branch 'master_MDL-28721' of git://github.com/danmarsden/moodle 2011-08-16 23:42:59 +02:00
Eloy Lafuente (stronk7) 50c89706a7 Merge branch 'wip-MDL-26754-master' of github.com:marinaglancy/moodle 2011-08-16 13:07:54 +02:00
Eloy Lafuente (stronk7) 78fe1bad47 Merge branch 'MDL-28365' of git://github.com/timhunt/moodle 2011-08-16 13:03:02 +02:00
Eloy Lafuente (stronk7) 515380a992 Merge branch 'MDL-23872_M' of git://github.com/nebgor/moodle 2011-08-16 11:51:24 +02:00
Rajesh Taneja d0157d827b MDL-27219 chat: Beep will not display user fullname if user is not in chat 2011-08-16 16:34:16 +08:00
Andrew Davis (andyjdavis) 2fd7c451ad MDL-28943 messaging: made messaging admin page use a string instead of the plugin name 2011-08-16 14:30:34 +08:00
Eloy Lafuente (stronk7) 2345ab864d Merge branch 'MDL-28931_master' of git://github.com/stronk7/moodle 2011-08-16 03:03:26 +02:00
Eloy Lafuente (stronk7) 6ae8a01edb Merge branch 'master_MDL-28739' of git://github.com/danmarsden/moodle 2011-08-16 03:02:29 +02:00
Eloy Lafuente (stronk7) c4e560099c Merge branch 'wip-mdl-27728' of git://github.com/rajeshtaneja/moodle 2011-08-16 02:14:26 +02:00
Eloy Lafuente (stronk7) f716839a3f Merge branch 'MDL-27030' of git://github.com/timhunt/moodle 2011-08-16 02:06:07 +02:00
Eloy Lafuente (stronk7) 32dc8ecd16 MDL-27896 filters/editor - fix whitespace 2011-08-16 01:57:51 +02:00
Eloy Lafuente (stronk7) f50675809f Merge branch 'wip-mdl-27896' of git://github.com/rajeshtaneja/moodle 2011-08-16 01:55:30 +02:00
Eloy Lafuente (stronk7) 70fc3fb919 Merge branch 'master_MDL-28937' of git://github.com/danmarsden/moodle 2011-08-16 01:52:59 +02:00
Eloy Lafuente (stronk7) 485b56ee87 Merge branch 'master_MDL-28933' of git://github.com/danmarsden/moodle
Conflicts:
	mod/scorm/api.php
2011-08-16 01:40:06 +02:00
Eloy Lafuente (stronk7) 21507599b1 Merge branch 'master_MDL-28541' of git://github.com/danmarsden/moodle 2011-08-16 01:26:34 +02:00
Eloy Lafuente (stronk7) c380fbf4c9 Merge branch 'master_MDL-25757' of git://github.com/danmarsden/moodle 2011-08-16 00:37:23 +02:00
Eloy Lafuente (stronk7) 8f85249a96 MDL-26979 css - clean whitespace introduced by previous commit 2011-08-16 00:31:08 +02:00
Eloy Lafuente (stronk7) eed36bbbd9 Merge branch 'wip-MDL-26979-master' of git://github.com/samhemelryk/moodle 2011-08-15 22:46:01 +02:00
Petr Skoda ace24aaa7d Merge branch 'wip-MDL-25602-master' of git://github.com/samhemelryk/moodle 2011-08-15 20:45:43 +02:00
Petr Skoda 49989aa47d Merge branch 'MDL-27845_rating_aggregation' 2011-08-15 20:33:33 +02:00
Eloy Lafuente (stronk7) 04a332d740 Merge branch 'master_MDL-28603' of git://github.com/danmarsden/moodle 2011-08-15 20:00:53 +02:00
Dan Poltawski 22fb538603 MDL-28605 repsitory/local - Prevent server running out of memory
Removing useless code..
2011-08-15 19:57:46 +02:00
Tim Hunt effc982b1e MDL-21934 Removing all questions from the quiz should not delet overall feedback.
Overall feedback was being wiped because the quiz max grade was being set to zero when sumgrades was set to 0. The correct logic is to only set maxgrade to 0 if there are questions in the quiz and sumgrades is 0.
2011-08-15 18:47:03 +01:00
Eloy Lafuente (stronk7) c97cc5c72f Merge branch 'MDL-28939' of git://github.com/timhunt/moodle 2011-08-15 19:34:31 +02:00
Tim Hunt 0519420f59 MDL-28349 error when GIFT-importing essay questions. 2011-08-15 16:17:16 +01:00
Tim Hunt a41c441c05 MDL-28365 Move question lang string to the right file
All the references to this sring were already referring to it in the new
place.

AMOS BEGIN
 MOV [cannotread,mod_quiz],[cannotread,question]
AMOS END
2011-08-15 15:18:21 +01:00
Tim Hunt 9d555b4456 MDL-28939 Bad lang string reference in grade/import/csv. 2011-08-15 15:11:51 +01:00
Tim Hunt 08f5328659 MDL-28639 question import should set timemodified and modified by.
Thanks to Jean-Michel Vedrine for the fix.
2011-08-15 14:55:50 +01:00
Tim Hunt 45bdcf1134 MDL-28438 Aiken question import broken since MDL-24594. 2011-08-15 14:44:57 +01:00
Dan Marsden 6917eee804 MDL-28937 SCORM 2004 ADL TEST CM-01 MDL-28740 first part of check for hidecontinue param in SCO - prevent next item in TOC from being selectable and disable buttons in navbar if links don't exist in TOC 2011-08-15 18:33:33 +12:00
Dan Marsden e6402b54ad MDL-28933 SCORM use a global function to check SCORM version to make sure all methods of storing SCORM version are checked. 2011-08-15 14:05:59 +12:00
Mayank Gupa 05c2b851c0 MDL-28541 SCORM ADL TEST CM-01 MDL-28740 fixing cmi.scaled_passing_score returning null 2011-08-15 13:47:40 +12:00
Mayank Gupa 6faea458ba MDL-28541 SCORM ADL TEST CM-01 MDL-28740 fixing cmi.scaled_passing_score returning null 2011-08-15 10:26:18 +12:00
Eloy Lafuente (stronk7) 03625387e2 MDL-28931 timezone - update to 2011h (2200 rules) 2011-08-14 18:04:59 +02:00
Dan Marsden 45999e7895 MDL-28739 SCORM trim minnormalizedmeasure before saving it 2011-08-13 19:03:53 +12:00
Dan Marsden 7441c53cc1 MDL-25757 SCORM fix issue with duplicate cmi values being saved 2011-08-13 13:22:58 +12:00
Tim Hunt 775fd4f145 MDL-28737 advcheckboxes toggle state every submit if checkbox_controller present. 2011-08-12 19:11:45 +01:00
Rajesh Taneja cec1d81461 MDL-27896 course - Rectified wrong use of itemid for preparing draft file area 2011-08-12 16:41:29 +08:00
Ankit Kumar Agarwal 59666dae0e MDL-27951 Balancing Div tags 2011-08-12 10:59:35 +05:30
Dan Marsden f35b5884be MDL-28603 - fix regression for SCORM 1.2 test 2011-08-12 17:15:18 +12:00
Rajesh Taneja dedb69a2a1 MDL-27896 editor - parent context will be respected by editor in case context is not created. 2011-08-12 11:33:21 +08:00
Rajesh Taneja f9157eb798 MDL-27896 editor - added sanity check to pick wrong context passed to editor creation 2011-08-12 11:33:21 +08:00
Rajesh Taneja e9de1cf49c MDL-27896 context - Fixed editor context to observe filter status 2011-08-12 11:33:21 +08:00
Sam Hemelryk 6c95e46a15 MDL-26979 custommenu Improved the custom menu CSS in base and all other core themes
* The custom menu now requires the YUI module directly rather than in its initialisation
* Improved the CSS in base so that it was more precise and more easily overrideable
* Reviewed the CSS for all core themes improving and removing !important from rules
2011-08-12 11:10:06 +08:00
Sam Hemelryk 6919b90f05 MDL-25602 blocks Altered order of block editing icons and added CSS to better control the size of block editing icons 2011-08-12 10:26:20 +08:00
Rajesh Taneja b29c9b05e6 MDL-27728 Moodleforms: Added validation for element before checking element values 2011-08-12 10:22:40 +08:00
AMOS bot 7b83d6291c Automatically generated installer lang files 2011-08-12 00:55:26 +00:00
Dan Marsden 666efc149a MDL-28649 SCORM fix force new attempt when skipview is used 2011-08-12 12:44:16 +12:00
Dan Marsden 93e46331fc MDL-28721 SCORM - respect hide navigation buttons setting. 2011-08-12 11:06:58 +12:00
Eloy Lafuente (stronk7) 7969f1ecf5 weekly release 2.2dev 2011-08-12 00:18:07 +02:00
Marina Glancy 03909d79e4 MDL-26754: Removed unnecessary include 2011-08-11 13:39:30 +08:00
Sam Hemelryk bd4624765e MDL-25636 block_html Fixed up missing format config if block restored from early 2.0 backup 2011-08-11 11:17:37 +08:00
Eloy Lafuente (stronk7) 76f063fa5d Merge branch 'MDL-27491-master' of git://github.com/sammarshallou/moodle 2011-08-10 23:03:06 +02:00
Eloy Lafuente (stronk7) 89c6def316 Merge branch 'master_MDL-28295' of git://github.com/danmarsden/moodle 2011-08-10 22:46:42 +02:00
sam marshall ad275cb4ad MDL-28643 Fix debugging message when deleting activity with grade completion 2011-08-10 11:02:56 +01:00
sam marshall 26848c48f9 MDL-28301 Completion: Replaced completion tickbox icons with nicer ones 2011-08-10 11:02:05 +01:00
sam marshall 05b7cd7ae9 MDL-27491 Add 'complete on view' support to wiki, survey 2011-08-10 10:56:14 +01:00
Daren Chandisingh f1f70bd4dd MDL-23872 Forms Library : Updated MoodleQuickForm to honour setConstant(), prevents injection. 2011-08-10 15:17:53 +08:00
Sam Hemelryk 92636dfb5a Merge branch 'MDL-20501' of git://github.com/rwijaya/moodle 2011-08-10 14:04:22 +08:00
Sam Hemelryk 751a6d3c29 Merge branch 'MDL_25417' of git://git.luns.net.uk/moodle 2011-08-10 13:39:32 +08:00
Eloy Lafuente (stronk7) 09e35896d4 Merge branch 'MDL-27631' of git://github.com/mkassaei/moodle 2011-08-10 03:00:17 +02:00
Eloy Lafuente (stronk7) 7e988ed160 Merge branch 'MDL-27550-workshop-feedback' of git://github.com/mudrd8mz/moodle 2011-08-10 02:47:57 +02:00
Eloy Lafuente (stronk7) 628e2396af Merge branch 'w31_MDL-27597_m22_catlike' of git://github.com/skodak/moodle 2011-08-10 02:34:51 +02:00
Dan Marsden 6d954dd372 MDL-28295 SCORM change mangement of pop-up windows, load full SCORM API in existing window - this fixes an issue with IE 7 and httpreq communication 2011-08-10 12:19:49 +12:00
Eloy Lafuente (stronk7) 1ddecae7c7 Merge branch 'MDL-23967' of git://git.luns.net.uk/moodle 2011-08-10 02:04:55 +02:00
Eloy Lafuente (stronk7) 6d067fec6f Merge branch 'MDL-28059' of git://git.luns.net.uk/moodle 2011-08-10 01:58:03 +02:00
Eloy Lafuente (stronk7) b16d8f59ab Merge branch 'wip-MDL-28407-master' of git://github.com/samhemelryk/moodle 2011-08-10 01:10:27 +02:00
Eloy Lafuente (stronk7) 43c88235c5 Merge branch 'w31_MDL-28533_m22_columnperf' of git://github.com/skodak/moodle 2011-08-09 19:30:54 +02:00
Tim Hunt 25d9a6a664 MDL-28653 question output. Add a class to the main div based on question state.
This makes it possible themes do cool things. For example change more of the display depending on whether the answer was correct or not.
2011-08-09 11:31:37 +01:00
Eloy Lafuente (stronk7) 8a015bdb84 Merge branch 'MDL-28565_M' of git://github.com/nebgor/moodle 2011-08-09 10:13:18 +02:00
Henning Bostelmann 35ee6e333d MDL-28655 qtype_calculated question engine upgrade: fix return value 2011-08-09 09:13:09 +01:00
Eloy Lafuente (stronk7) 1c001177ea Merge branch 'MDL-28604' of git://github.com/timhunt/moodle 2011-08-09 09:41:53 +02:00
Tony Levi 88b3eb8bb5 MDL-27030: Fix quiz overview report showing incorrect grades on regraded attempts
Conflicts:

	mod/quiz/report/overview/report.php
2011-08-08 23:34:54 +01:00
Eloy Lafuente (stronk7) 1cdb96319d MDL-28493 scorm - fix whitespace 2011-08-08 18:15:42 +02:00
Tim Hunt d572f4497f MDL-28654 fix path for TinyMCE in lib/thirdpartylibs.xml. 2011-08-08 16:39:58 +01:00
Petr Skoda ca39e6d2fd Merge branch 'master_MDL-28601' 2011-08-08 16:18:08 +02:00
Petr Skoda 260cf4c2fd Merge branch 'MDL-28620' of git://github.com/jbrisland/moodle 2011-08-08 15:32:29 +02:00
Tim Hunt 6ef90fdef9 MDL-28652 qtype calculated, bad display of placeholder names on the editing form. 2011-08-08 13:13:37 +01:00
Aparup Banerjee e637e76a25 MDL-28565 General - updated lang files License link to docs.moodle.org/dev/License 2011-08-08 17:16:07 +08:00
Aparup Banerjee 9fdab2fe73 MDL-28565 General - updated License and Credits links
to docs.moodle.org/dev/License and docs.moodle.org/dev/Credits
2011-08-08 17:15:57 +08:00
Sagie Maoz 0d5e5644b8 MDL-26721 automated backups - Fix typo
Causing the 'role assignment' backup inclusion to be tied to the users

Signed-off-by: Dan Poltawski <dan.poltawski@luns.net.uk>
2011-08-08 15:40:55 +08:00
Sam Hemelryk 01352e33cc Merge branch 'master_MDL-28311' of git://github.com/danmarsden/moodle 2011-08-08 15:05:56 +08:00
Sam Hemelryk e97584bcf1 Merge branch 'mdl-28517' of git://github.com/colchambers/moodle 2011-08-08 14:22:51 +08:00
Dan Poltawski d8d1f9e35e MDL-28569 blocks/rss_client - RSS feed autodiscovery fails with ampersands
Simpliepie is quoting urls and we need the url to be unescaped
2011-08-08 14:11:13 +08:00
Sam Hemelryk 0d38abcf38 Merged branch 'MDL-28575_master' of git://github.com/kordan/moodle.git with conflict resolution 2011-08-08 13:58:10 +08:00
Sam Hemelryk 9e4b5b45a4 Merge branch 'MDL-28587_master' of git://github.com/kordan/moodle 2011-08-08 13:43:42 +08:00
Rossiani Wijaya 03929beaa1 MDL-27752 Calendar export: fixed typo in url parameter 2011-08-08 13:01:09 +08:00
Sam Hemelryk a3ff929807 Merge branch 'MDL-28406_block_duplicate' of git://github.com/andyjdavis/moodle 2011-08-08 11:18:14 +08:00
Sam Hemelryk 16c009c5bf Merge branch 'MDL-28602' of git://github.com/timhunt/moodle 2011-08-08 11:06:54 +08:00
Sam Hemelryk 067b8a5556 Merge branch 'MDL-28593' of git://github.com/timhunt/moodle 2011-08-08 11:04:19 +08:00
Sam Hemelryk 9d85b62c42 Merge branch 'MDL-28612' of git://github.com/timhunt/moodle 2011-08-08 11:00:38 +08:00
Sam Hemelryk 2f86bcfffa Merge branch 'MDL-28618' of git://github.com/timhunt/moodle 2011-08-08 10:57:11 +08:00
Sam Hemelryk b1251c9008 Merge branch 'w31_MDL-27586_m22_browser' of git://github.com/skodak/moodle 2011-08-08 10:46:41 +08:00
Sam Hemelryk cb09753feb Merge branch 'w31_MDL-27685_m22_pglike' of git://github.com/skodak/moodle 2011-08-08 10:26:20 +08:00
Sam Hemelryk 9be161c678 Merge branch 'w31_MDL-28382_m22_iis' of git://github.com/skodak/moodle 2011-08-08 10:20:15 +08:00
Sam Hemelryk 7d85a4e226 Merged branch 'w31-MDL-28412_m22_iconv' of git://github.com/skodak/moodle.git with english string improvements 2011-08-08 10:16:23 +08:00
Sam Hemelryk 3b8502658f Merge branch 'w31_MDL-28450_m22_defgroup' of git://github.com/skodak/moodle 2011-08-08 10:09:31 +08:00
Sam Hemelryk 406bf830cd Merge branch 'w31_MDL-28468_m22_cohortassign' of git://github.com/skodak/moodle 2011-08-08 10:06:06 +08:00
Sam Hemelryk 7d405fe7c8 Merge branch 'w31_MDL-28473_m22_blocksupgrade' of git://github.com/skodak/moodle 2011-08-08 09:59:42 +08:00
Sam Hemelryk 639ab4d5c5 Merge branch 'w31_MDL-28622_m22_userdel' of git://github.com/skodak/moodle 2011-08-08 09:57:11 +08:00
Sam Hemelryk c357b5c6e0 Merge branch 'w31_MDL-28630_m22_cookie' of git://github.com/skodak/moodle 2011-08-08 09:50:33 +08:00
Petr Skoda 37c8259280 MDL-28382 work around or detect REQUEST_URI IIS bug 2011-08-07 14:39:45 +02:00
Petr Skoda d5b3deecba MDL-27685 fix pg LIKE escape trouble 2011-08-07 13:19:02 +02:00
Petr Skoda c160da9cb8 MDL-28450 prefer member group for default 2011-08-07 13:06:45 +02:00
Dan Poltawski 6e513b6fde MDL-23967 admin/cron.php - warn about use on CLI
Admins now need to use the explicit CLI script
2011-08-06 23:38:49 +01:00
Petr Skoda 695940df3b MDL-28412 detect broken iconv 2011-08-06 23:04:31 +02:00
Petr Skoda eab044a083 MDL-28634 fix forgotten references to Moodle 2.0 and old PHP version requirements 2011-08-06 23:00:02 +02:00
Petr Skoda 988fc20eef MDL-28630 prevent session breakage caused by incorrect cookie settings 2011-08-06 22:22:52 +02:00
Dan Poltawski a276778aea MDL-28059 weblib - don't strip mailto: anchors 2011-08-06 21:14:01 +01:00
Petr Skoda f6b07c4da5 MDL-27586 fix file_browser access control 2011-08-06 15:45:18 +02:00
Petr Skoda 79cfcd3f7d MDL-28473 fix $instanceids troubles in blocks upgrade
Credit goes to Mateusz Wójcik.
2011-08-05 22:08:58 +02:00
Petr Skoda 50584dd3cc MDL-28468 fix cohort assign check 2011-08-05 21:43:29 +02:00
Petr Skoda bce595034c verify where_clause() only in debug mode 2011-08-05 21:33:16 +02:00
Petr Skoda 618a7f91ec MDL-27597 fix invalid results of get_categories when shallow is false 2011-08-05 20:13:12 +02:00
Petr Skoda f9fd10e0be MDL-17477 improve session purging when deleting users 2011-08-05 19:47:54 +02:00
Tim Hunt a23bda41e4 MDL-28618 question combined feedback: inconsistency in file areas.
The (partially|in)?correct feedback fields acutally store their files in a file area with component 'question'. Some code, however, was written as if they were stored in the qtype_whatever area.
2011-08-05 16:45:17 +01:00
James Brisland a8b2690bff MDL-28620 - Removed admin/generator.php include as it causes issues if this script is included from any other script that is running in the command line 2011-08-05 16:09:30 +01:00
Dan Poltawski f40bbf7dce MDL-25417 - remove redunant code 2011-08-05 12:06:57 +01:00
M Kassaei 92e6e128ff MDL-27631 question bank Show question text in the question list when top level category is used 2011-08-05 10:40:06 +01:00
Tim Hunt 609c0d6b9a MDL-28593 Missing include breaks editing quiz grade item. 2011-08-05 08:50:08 +01:00
Andrew Davis (andyjdavis) 02f40510e6 MDL-27845 rating: altered the get_ratings() query to avoid possible future duplicate key problems 2011-08-05 11:12:44 +08:00
Sam Hemelryk 683eb07144 MDL-28407 Fixed up calendar preferences form handling 2011-08-05 09:34:27 +08:00
Tim Hunt e5b0920e48 MDL-28612 Quiz statistics report does not always show the 'Actual response' column when it should 2011-08-04 18:14:31 +01:00
Colin Chambers 43e607ca79 MDL-28517 question editing fixed duplicate id in hint header field 2011-08-04 14:49:31 +01:00
Tim Hunt b2817f8057 MDL-28602 Quiz review reports the wrong duration. 2011-08-04 14:11:32 +01:00
Tim Hunt b72b413759 MDL-28604 Question bank display forgets sort order 2011-08-04 13:53:02 +01:00
Dan Marsden 02c1f7e253 MDL-28601 SCORM remove old js not used since MDL-22951 2011-08-05 00:41:09 +12:00
Marina Glancy 50c71e0af6 MDL-26754 Display blocks in 'manage blocks' alphabetically sorted 2011-08-04 14:05:41 +08:00
Andrew Davis (andyjdavis) 8d0845d30a MDL-28406 blocks: added JS to prevent the addition of duplicate blocks 2011-08-04 12:01:52 +08:00
Dan Marsden 03c3488957 MDL-28311 SCORM tidy up php warnings and display warning message to teacher that their manifest is invalid 2011-08-04 11:08:42 +12:00
Petr Skoda 3fdc622697 weekly release 2.2dev 2011-08-03 18:07:11 +02:00
kordan 3f52353016 MDL-28587 fix for master 2011-08-03 15:27:18 +02:00
Sam Hemelryk 984915afe5 Revert "MDL-28284 don't load filepicker module for every page"
This reverts commit 9b0843c121.
2011-08-03 18:20:01 +08:00
Sam Hemelryk 948ef5d07a Merge branch 'MDL-28520' of git://git.luns.net.uk/moodle 2011-08-03 15:03:30 +08:00
Petr Skoda 92f97e8253 Merge branch 'master_MDL-28493' 2011-08-03 08:27:52 +02:00
Dan Marsden 894dbd0420 MDL-28493 - fix version in upgrade - thanks Andrew 2011-08-03 15:36:52 +12:00
kordan 34497bd33e MDL-28575 fix for master 2011-08-02 23:39:18 +02:00
David Mudrak 6403358838 MDL-27550 workshop: fixed XHTML strictness of H3 and A combo
H3 is block level element while A is in-line element in XHTML.
Credit goes to Sam Hemelryk for spotting this during the peer-review.
2011-08-02 23:34:04 +02:00
David Mudrak 2c75324ee6 MDL-27550 workshop: rendering links to the submission and the assessment page
This usability improvement helps to provide feedback quickly during the
grading evaluation phase.
2011-08-02 23:33:33 +02:00
David Mudrak 3779dcae98 MDL-27550 workshop: students do not see peer-assessment that are not graded yet 2011-08-02 23:33:32 +02:00
David Mudrak f68648e982 MDL-27550 workshop: display the feedback for the submission reviewer when the workshop is closed 2011-08-02 23:33:32 +02:00
David Mudrak 38504a4490 MDL-27550 workshop: assessments are now displayed via proper rendering subsystem
AMOS BEGIN
 MOV [assessmentbyknown,mod_workshop],[assessmentbyfullname,mod_workshop]
AMOS END
2011-08-02 23:33:32 +02:00
David Mudrak 0dfb4bad56 MDL-27550 workshop: display the feedback for the submission author when the workshop is closed
The method user_picture::fields() was not available when these SQL
statements were originally written. Now instead of hard-coding the list
of returned fields, the user_picture is asked for the list.

Together with this change, methods workshop::get_submission_by_id()
and workshop::get_submission_by_author() now return the information
about the user who provided the feedback and overwrote the grade.
2011-08-02 23:33:32 +02:00
Petr Skoda affce0d744 Merge branch 'MDL-28471' of git://github.com/timhunt/moodle 2011-08-02 16:35:09 +02:00
Tim Hunt e6541b37e4 MDL-28471 better question flag icons.
Transparent background, and higher contrast for better accessibility.
2011-08-02 15:29:39 +01:00
Petr Skoda 1f5be6fbcd Merge branch 'master_MDL-10707' 2011-08-02 15:59:42 +02:00
Petr Skoda 6179c38af5 Merge branch 'wip-MDL-23626-master' of git://github.com/samhemelryk/moodle 2011-08-02 15:48:20 +02:00
Sam Hemelryk ad4700977a MDL-26477 Added a setting to display course sections as links within the navigation 2011-08-02 15:24:59 +02:00
Petr Skoda 4a47631fb4 Merge branch 'wip-mdl-27658' of git://github.com/rajeshtaneja/moodle 2011-08-02 15:11:42 +02:00
Petr Skoda 58f9006970 Merge branch 'MDL-28338' of git://github.com/timhunt/moodle 2011-08-02 15:08:05 +02:00
Petr Skoda 411b2e1d8d Merge branch 'master_MDL-28410' 2011-08-02 15:01:15 +02:00
Petr Skoda 74b0ad6a4d Merge branch 'MDL-28471' of git://github.com/timhunt/moodle 2011-08-02 14:55:18 +02:00
Petr Skoda 48fa0c75b5 Merge branch 'MDL-28507' of git://github.com/timhunt/moodle 2011-08-02 14:50:41 +02:00
Petr Skoda 82b8e88418 Merge branch 'master_MDL-28535' 2011-08-02 14:35:21 +02:00
Petr Skoda c03b42f521 Merge branch 'master_MDL-28542' 2011-08-02 14:30:20 +02:00
Tim Hunt 35ddcfb854 MDL-28507 fix bad lang string uses, and remove two obsolete strings. 2011-08-02 13:13:01 +01:00
Sam Hemelryk 44506b87dc Merge branch 'MDL-28490' of git://github.com/timhunt/moodle 2011-08-02 17:55:21 +08:00
Sam Hemelryk 58e67f7f1a Merge branch 'MDL-28508' of git://github.com/timhunt/moodle 2011-08-02 17:48:02 +08:00
Sam Hemelryk 87573744e6 Merge branch 'MDL-28051' of git://github.com/timhunt/moodle 2011-08-02 17:14:04 +08:00
Sam Hemelryk 1eaeb5d89e Merge branch 'MDL-28515' of git://git.luns.net.uk/moodle 2011-08-02 17:06:56 +08:00
Sam Hemelryk 6b50af32d6 Merge branch 'MDL-28340_advanced_search_other_users' of git://github.com/andyjdavis/moodle 2011-08-02 16:59:55 +08:00
Sam Hemelryk a338b06243 Merge branch 'wip-mdl-28504' of git://github.com/rajeshtaneja/moodle 2011-08-02 16:50:58 +08:00
Sam Hemelryk fef0f0e793 Merge branch 'wip-MDL-19907-master' of git://github.com/marinaglancy/moodle 2011-08-02 16:46:39 +08:00
Sam Hemelryk dcaec029ec MDL-27122 admin Improved block protection help string 2011-08-02 16:23:45 +08:00
Sam Hemelryk 8a5d0e95b3 Merge branch 'wip-MDL-27122-master' of git://github.com/marinaglancy/moodle 2011-08-02 16:19:08 +08:00
Sam Hemelryk 5867cf5047 Merge branch 'wip-MDL-27754-master' of git://github.com/marinaglancy/moodle 2011-08-02 14:08:31 +08:00
Sam Hemelryk 223b96e0fd Merge branch 's11_MDL-28284_filepicker_module_master' of git://github.com/dongsheng/moodle 2011-08-02 13:42:44 +08:00
Mark Johnson b1fc521ff2 MDL-28510 repository_youtube Use smaller thumbnails in search results 2011-08-02 13:36:45 +08:00
unknown 16321a2bef Merge branch 'master_MDL-27876' of git://github.com/danmarsden/moodle 2011-08-02 13:25:44 +08:00
Piers Harding 9597f85d44 MDL-27876 SCORM auto-adjust the stage height 2011-08-02 17:12:39 +12:00
Dan Marsden 4201a7464a MDL-28542 SCORM tidy up code. 2011-08-02 17:00:01 +12:00
Sam Hemelryk dee43df740 Merge branch 'MDL-28487-typo' of git://github.com/mudrd8mz/moodle 2011-08-02 12:22:29 +08:00
Sam Hemelryk 2f783d93d5 Merge branch 'master_MDL-28493' of git://github.com/danmarsden/moodle 2011-08-02 12:02:52 +08:00
Sam Hemelryk 3d738ce735 MDL-28548 Fixed up misleading comments 2011-08-02 11:42:40 +08:00
Jamie Pratt 0ea7fc2587 MDL-28562 "automatic naming of file in convert_image not working"
there is an obvious typo in the code causing the problem. The use of 
an equality check instead of the intended assignment.
2011-08-01 22:43:37 +07:00
Rossiani Wijaya 63d25e414f MDL-20501 survey module: fix text alignment for right to left language. Change undefined string to 2011-08-01 17:42:23 +08:00
Rajesh Taneja 4d99adbb32 MDL-27658 javascript: Typo fixed for toUpperCase 2011-08-01 12:50:11 +08:00
Rajesh Taneja 251af6a5b9 MDL-28504 filter: Typo in css fixed 2011-08-01 10:18:47 +08:00
Mayank Gupa 07dbbdde39 MDL-10707 SCORM Fixing cmi.max_time_allowed returned null 2011-08-01 11:08:24 +12:00
Dan Marsden 040aa0880b MDL-28548 allow backup to contain info from multiple plagiarism plugins. 2011-08-01 10:27:39 +12:00
Dan Marsden aab23f98cd MDL-28542 SCORM Course format should use skipview setting. 2011-07-31 18:51:39 +12:00
Mayank Gupa 45075df124 MDL-28493 SCORM Changed objectiveid field to char 2011-07-31 17:13:03 +12:00
Dan Marsden 04c99f8cdf MDL-28535 SCORM remove old IE 6 related warning about zlib 2011-07-30 10:38:55 +12:00
Dan Marsden aa20227e9f MDL-28410 Choice - allow single answer choice to be created 2011-07-30 10:20:51 +12:00
Marina Glancy f3cf94f70d MDL-27754 fixed typo in language string 2011-07-29 15:52:08 +08:00
Marina Glancy 28e63a9d8c MDL-27122 Allow admin to change CFG->undeletableblocktypes on 'Manage blocks' settings page. Instances of protected block types will be undeletable only from site context 2011-07-29 13:51:40 +08:00
Marina Glancy 7b5702b681 MDL-19907 rewrote validation for required fields in forms, including support for editor field. Added parameter to use strict (no spaces) required fields validation 2011-07-29 13:51:26 +08:00
Sam Hemelryk ca3e8e98a4 weekly release 2.2dev (emergency) 2011-07-29 12:21:02 +08:00
Sam Hemelryk e832dfec60 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-07-29 10:13:57 +08:00
Sam Hemelryk b3da2877a7 MDL-28503 comment-caps Slight improvement to allow frontpage and guest users to view comments by default 2011-07-29 09:32:48 +08:00
Wale Olujide 8418e5b77c MDL-28051 Question numbers on the question edit page shoud be the same as during the quiz attempt. 2011-07-28 18:02:53 +01:00
Ruslan Kabalin 84ee73ee3b MDL-28520: repositories: validation method to repository_type_form class 2011-07-28 17:11:58 +01:00
Andrew Robert Nicols 1a698e0090 MDL-28515 Add cli install options for fullname and shortname 2011-07-28 15:15:52 +01:00
Mark Johnson 88bf951aa7 MDL-28509 repository_youtube Enable selection of sort order 2011-07-28 13:16:47 +01:00
Mark Johnson 84553f6150 Merge branch 'master', remote-tracking branch 'upstream/master' 2011-07-28 12:48:01 +01:00
Tim Hunt 1e20dea9b2 MDL-28508 bad string trunction in Aiken format. 2011-07-28 11:51:07 +01:00
Sam Hemelryk 5167f4c9b1 MDL-28503 Removed the ability for plugins to override comment capabilities and the defaults associated with it 2011-07-28 13:39:21 +08:00
AMOS bot abf0ca745b Automatically generated installer lang files 2011-07-28 00:55:13 +00:00
Tim Hunt 2f1ba2aed7 MDL-28490 Better class names in the statistics report to help themes. 2011-07-27 19:23:21 +01:00
Tim Hunt 4e5b9e498e MDL-28338 fix stupid '\n's in the quiz renderer 2011-07-27 19:22:24 +01:00
David Mudrak df62f42013 MDL-28487 Fixed typo in media filter help string 2011-07-27 14:44:02 +02:00
Andrew Davis (andyjdavis) dd6d83c16b MDL-28340 messaging: fixed a display issue when you search for and tried to view a conversation between two other users 2011-07-27 14:13:47 +08:00
Sam Hemelryk e96bc3f9e5 MDL-23626 Fixed bug causing course and general user activity reports to be marked active at the same time 2011-07-27 10:16:48 +08:00
kordan e0523b9729 MDL-28460 fix for master 2011-07-26 23:00:55 +02:00
Tim Hunt 22c97c6446 MDL-28471 Further tweaks to the question flag code. 2011-07-26 17:43:55 +01:00
Wale Olujide 474ee9389a MDL-28471 make the question flag smaller, and give it a label. 2011-07-26 16:38:07 +01:00
Petr Skoda 6f05796919 weekly release 2.2dev 2011-07-26 11:13:59 +02:00
Petr Skoda 5ed2d500b1 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-07-26 11:12:47 +02:00
AMOS bot b13aba99bd Automatically generated installer lang files 2011-07-26 00:55:20 +00:00
Tim Hunt 048f3d32d6 MDL-28218 allow testclient.php to find the necessary form for services defined in plugins. 2011-07-25 20:04:19 +02:00
Petr Skoda 3e6f62e3d7 Merge branch 'MDL-28437' of git://github.com/timhunt/moodle 2011-07-25 19:53:37 +02:00
Petr Skoda 14c94235d8 Merge branch 'MDL-28369' of git://github.com/timhunt/moodle 2011-07-25 19:51:48 +02:00
Petr Skoda d98b0fe9d2 Merge branch 'MDL-28377' of git://github.com/timhunt/moodle 2011-07-25 19:48:55 +02:00
Petr Skoda e58d77a259 Merge branch 'wip-MDL-28421-master' of https://github.com/Beedell/moodle 2011-07-25 16:51:04 +02:00
Petr Skoda d39afd96ff Merge branch 'wip-MDL-28191-master' 2011-07-25 16:45:40 +02:00
Petr Skoda 95a1cb245c Merge branch 'MDL-28453' 2011-07-25 16:23:01 +02:00
Tim Hunt ad858cd428 MDL-28369 Question hints not being restored. 2011-07-25 10:05:13 +01:00
John Beedell 51f2d42f4f MDL-28421 Improve admin config class
admin_settings_configmultiselect_modules to include default value
2011-07-25 10:02:04 +01:00
Aparup Banerjee ed6a14eb03 MDL-28453 backup - made temporary restoration courses hidden by default. 2011-07-25 16:34:11 +08:00
Tim Hunt 8c4deb8003 MDL-28377 Call to mod_quiz_renderer is screwed up. 2011-07-25 09:14:44 +01:00
Tim Hunt 4bf1be3596 MDL-28437 Question bank pages should all use General type: admin. 2011-07-25 08:50:06 +01:00
Sam Hemelryk 9e4d53c7e8 Merge branch 'w29_MDL-28441_m22_scromreport' of git://github.com/skodak/moodle 2011-07-25 15:37:05 +08:00
Sam Hemelryk 39c621f63b Merge branch 'MDL-28107' of git://github.com/rwijaya/moodle 2011-07-25 15:14:12 +08:00
Andrew Davis (andyjdavis) 675c2f5341 MDL-27845 rating: split the get_ratings() query into two to reduce query complexity 2011-07-25 13:46:49 +08:00
Dan Poltawski 831b73773e MDL-28228 pagelib - incorrect DEBUG constant used 2011-07-25 13:04:46 +08:00
Dan Poltawski d0cdf8ec72 MDL-28232 - Course log text export is missing a new line 2011-07-25 12:57:39 +08:00
Michael Aherne 50e3c7d8ef MDL-27538 Added deprecation details to functions now in $DB 2011-07-25 11:30:21 +08:00
Sam Hemelryk 6c193bff68 Merge branch 'w29_MDL-22584_m22_monsterpaths' of git://github.com/skodak/moodle 2011-07-25 11:18:21 +08:00
Sam Hemelryk 00d8d33cdc Merge branch 'w29_MDL-25699_m22_installcss' of git://github.com/skodak/moodle 2011-07-25 11:08:26 +08:00
Sam Hemelryk 9192b4537c Merge branch 'w29_MDL-27464_m22_continue' of git://github.com/skodak/moodle 2011-07-25 11:03:34 +08:00
Sam Hemelryk 7fe0effd00 Merge branch 'w29_MDL-27653_m22_usercasting' of git://github.com/skodak/moodle 2011-07-25 10:59:08 +08:00
Sam Hemelryk b039eeb82b Merge branch 'w29_MDL-27796_m22_httphost' of git://github.com/skodak/moodle 2011-07-25 10:54:25 +08:00
Sam Hemelryk 0e7f782eb4 Merge branch 'w29_MDL-27994_m22_creatorcaps' of git://github.com/skodak/moodle 2011-07-25 10:45:20 +08:00
Sam Hemelryk 1092bd6db4 Merge branch 'w29_MDL-28145_m22_renderer' of git://github.com/skodak/moodle 2011-07-25 10:39:11 +08:00
Sam Hemelryk e826ef51b2 Merge branch 'w29_MDL-28182_m22_userdel' of git://github.com/skodak/moodle 2011-07-25 10:36:36 +08:00
Sam Hemelryk 7443fae6a5 Merge branch 'w29_MDL-28337_m22_urlparams' of git://github.com/skodak/moodle 2011-07-25 10:29:42 +08:00
Sam Hemelryk 1f70ee662e Merge branch 'w29_MDL-28384_m22_nullurl' of git://github.com/skodak/moodle 2011-07-25 10:14:29 +08:00
Sam Hemelryk 94ffa4a183 Merge branch 'w29_MDL-28392_m22_capnames' of git://github.com/skodak/moodle 2011-07-25 10:02:16 +08:00
Sam Hemelryk 8306a3799e Merge branch 'w29_MDL-28432_m22_cohortconfig' of git://github.com/skodak/moodle 2011-07-25 09:52:33 +08:00
Sam Hemelryk 08ad288d6f Merge branch 'w29_MDL-28440_m22_jssemicol' of git://github.com/skodak/moodle 2011-07-25 09:44:25 +08:00
Sam Hemelryk 310758d655 Merge branch 'MDL-27768' of git://github.com/lazydaisy/moodle 2011-07-25 09:39:31 +08:00
Petr Skoda 2b55aca7b7 MDL-27653 fix incorrect int | object detection 2011-07-24 15:04:17 +02:00
Petr Skoda 88d823c1f4 MDL-27994 course creator role is for creating courses only!
The course creator role is designed to be used to create courses, nothing else - that is create new course, create new course from backup + view hidden courses and categories.
2011-07-24 14:18:13 +02:00
Petr Skoda 43b9db45da MDL-28384 convert empty log urls to ''
The problem is that the log table does not allow nulls, credit goes to Troy Williams.
2011-07-24 14:07:30 +02:00
Petr Skoda c8d3345cd3 MDL-27464 continuation link sometimes links off-site
This code was manually merged from MOODLE_19_STABLE, credit goes to Matt Meisberger.
2011-07-23 13:28:43 +02:00
Petr Skoda 99e8656170 MDL-28441 add scormreport_basic to the list of standard plugins 2011-07-23 13:04:23 +02:00
Petr Skoda 1a7cb87e46 MDL-28440 add missing semicolon causing JS issues
Credit goes to Mark Nielsen.
2011-07-23 11:48:53 +02:00
Petr Skoda 980a952c34 MDL-22584 deal with oversized dir and file names during upgrade 2011-07-23 11:34:30 +02:00
AMOS bot c820934e62 Automatically generated installer lang files 2011-07-23 00:55:14 +00:00
Petr Skoda e5d2c5779f MDL-25699 decode URLs in installer CSS 2011-07-23 00:45:17 +02:00
Petr Skoda b7d7aafada MDL-28392 validate capability names 2011-07-23 00:09:08 +02:00
Petr Skoda 92372aba01 MDL-28145 fix renderer typo in comments 2011-07-22 23:42:26 +02:00
Petr Skoda e0f2718fb2 MDL-27796 ignore missing HTTP_HOST header 2011-07-22 23:17:09 +02:00
Petr Skoda f91f3f63a7 MDL-28182 always use full user object when deleting users 2011-07-22 22:46:32 +02:00
Petr Skoda f08e5e984a MDL-28337 add parameters explanation in URL resource configuration 2011-07-22 22:16:52 +02:00
Andrew Davis (andyjdavis) a924c53e4a MDL-27845 rating: updated rating unit tests 2011-07-22 16:09:56 +08:00
Petr Skoda 6df9761774 MDL-28432 use enrol/cohort and enrol/manual capabilities correctly in cohort enrol UI and fix input validation in ajax 2011-07-22 09:52:12 +02:00
Sam Hemelryk 0e01784c44 MDL-28191 Continue button after selecting a theme now redirects back to the theme selector 2011-07-22 14:57:26 +08:00
Rossiani Wijaya e877160d46 MDL-28107 course enrolment icon: Fixed logged in user enrolment icons 2011-07-22 13:23:57 +08:00
Dongsheng Cai 9b0843c121 MDL-28284 don't load filepicker module for every page 2011-07-21 17:26:38 +08:00
Eloy Lafuente (stronk7) d8c713885f rating/lib.php unit tests 1st cut 2011-07-21 15:58:53 +08:00
Petr Skoda 6884b598f3 weekly release 2.2dev 2011-07-19 15:25:11 +02:00
Petr Skoda 8057e4d85e Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-07-19 15:15:32 +02:00
Petr Skoda 8aa74f821d MDL-27696 initialise arrays
Credit goes to David Mudrak.
2011-07-19 15:03:58 +02:00
Petr Skoda 51c3e855d0 MDL-27696 do not use placeholders in GROUP BY because pg does no like that 2011-07-19 10:53:20 +02:00
Petr Skoda 0881cb5135 MDL-27889 use new recaptcha google urls in lang packs 2011-07-19 10:27:20 +02:00
Mary Evans 080fbe680d fix for MDL-27768 removed reference to gradient-sb image 2011-07-18 23:37:33 +01:00
Petr Skoda 5e85f7b50b MDL-27523 fix phpdocs packages 2011-07-18 16:03:15 +02:00
Petr Skoda d6a1c91bee Merge branch 'master_MDL-27523' of git://github.com/danmarsden/moodle 2011-07-18 15:58:59 +02:00
Petr Skoda 696ddfe671 Merge branch 'wip-MDL-28040-master' of git://github.com/samhemelryk/moodle 2011-07-18 15:33:42 +02:00
Petr Skoda fa9264b55b Merge branch 'wip-MDL-28184-master' of git://github.com/samhemelryk/moodle 2011-07-18 15:28:16 +02:00
Petr Skoda 215f2c36d5 Merge branch 'wip-MDL-28205-master' of git://github.com/samhemelryk/moodle 2011-07-18 15:25:02 +02:00
Petr Skoda 6857b0db47 Merge branch 'wip-MDL-28137-master' of git://github.com/samhemelryk/moodle 2011-07-18 15:22:29 +02:00
Petr Skoda c051470207 Merge branch 'wip-MDL-27771-master' of git://github.com/samhemelryk/moodle 2011-07-18 15:19:35 +02:00
Petr Skoda a1d27703fe Merge branch 'wip-MDL-27696-master' of git://github.com/samhemelryk/moodle 2011-07-18 15:17:05 +02:00
Petr Skoda 7856cd8b8c Merge branch 'wip-MDL-27305-master' of git://github.com/samhemelryk/moodle 2011-07-18 15:13:44 +02:00
Petr Skoda b0d6fa17a4 Merge branch 'wip-MDL-25870-master' of git://github.com/samhemelryk/moodle 2011-07-18 14:57:02 +02:00
Sam Hemelryk c1d251e890 Merge branch 'wip-MDL-27756-master' of github.com:marinaglancy/moodle 2011-07-18 22:15:55 +10:00
Sam Hemelryk a4c3145984 Merge branch 'MDL-27555' of git://github.com/rwijaya/moodle 2011-07-18 21:50:50 +10:00
Sam Hemelryk 0704038e41 Merge branch 'w28_MDL-28345_m22_utf8' of git://github.com/skodak/moodle 2011-07-18 21:16:43 +10:00
Sam Hemelryk cc4db9d3c1 Merge branch 'wip-mdl-27837' of git://github.com/rajeshtaneja/moodle 2011-07-18 21:03:22 +10:00
Sam Hemelryk c5fe313c06 Merge branch 'w28_MDL-23344_m22_loginfocus2' of git://github.com/skodak/moodle 2011-07-18 20:25:43 +10:00
Sam Hemelryk ce4a587308 Merge branch 'w28_MDL-27804_m22_csvauth' of git://github.com/skodak/moodle 2011-07-18 20:17:51 +10:00
Sam Hemelryk b96fa1c265 Merge branch 'w28_MDL-28253_m22_managerupgrade' of git://github.com/skodak/moodle 2011-07-18 20:08:36 +10:00
Sam Hemelryk 50a3053e62 Merge branch 'w28_MDL-28313_m22_enroldb' of git://github.com/skodak/moodle 2011-07-18 20:01:08 +10:00
Sam Hemelryk 47fa86b306 Merge branch 'w28_MDL-28344_m22_clickjacking' of git://github.com/skodak/moodle 2011-07-18 19:47:59 +10:00
Sam Hemelryk 5576c64139 Merge branch 'w28_MDL-28348_m22_meta' of git://github.com/skodak/moodle 2011-07-18 19:37:49 +10:00
Sam Hemelryk 1eff23084e Merge branch 'w28_MDL-28350_m22_wsra' of git://github.com/skodak/moodle 2011-07-18 19:27:57 +10:00
Petr Skoda 83162b2612 Merge branch 'wip-MDL-25125-master' of github.com:marinaglancy/moodle 2011-07-18 09:18:31 +02:00
Sam Hemelryk 610cc5c383 Merge branch 'w28_MDL-28363_m22_dimmed' of git://github.com/skodak/moodle 2011-07-19 00:45:13 +10:00
Sam Hemelryk 761a000f73 Merge branch 'MDL-28298-workshop-constant' of git://github.com/mudrd8mz/moodle 2011-07-19 00:39:02 +10:00
Sam Hemelryk 508a5bd402 Merge branch 'MDL-28325-enrol-help' of git://github.com/mudrd8mz/moodle 2011-07-19 00:34:37 +10:00
Sam Hemelryk 5f65d37cd2 Merged branch 'master_MDL-26482' of git://github.com/danmarsden/moodle.git 2011-07-19 00:25:13 +10:00
Petr Skoda 0a0b535e27 MDL-28348 fix spelling and some whitespace issues 2011-07-17 20:39:20 +02:00
Petr Skoda c2f53f015b MDL-28348 fix fatal error caused by unenrolling of incorrect enrol instance 2011-07-17 20:37:02 +02:00
Petr Skoda fc7cd35c81 MDL-28348 prevent circular references in meta handler for enrolments 2011-07-17 20:36:12 +02:00
Petr Skoda 5b2904c8f8 MDL-28348 fix meta sync when unassigning roles 2011-07-17 20:35:15 +02:00
Petr Skoda 656749c18a MDL-28363 make dimmed selectors more specific to prevent overriding from other themes 2011-07-16 21:03:06 +02:00
Petr Skoda 78fcdb5fdb MDL-28345 make sure input parameters do not contain invalid utf-8 chars 2011-07-15 15:00:49 +02:00
Petr Skoda d20f655d59 MDL-28350 prevent bogus role assignment via externallib 2011-07-15 12:23:34 +02:00
Petr Skoda df83301630 MDL-27804 allow changing of only auth in csv user uploads 2011-07-15 11:07:33 +02:00
David Mudrak 94f630e33f MDL-28325 Enrolment: added help to the duration, start date and end date setting
The patch also fixes one typo in enrol_manual detected while working on
this.
2011-07-15 08:59:55 +02:00
Ankit Kumar Agarwal 4942a84bd6 MDL-27523 Fixing get_string issues 2011-07-15 09:27:02 +12:00
Petr Skoda 43c5c08cf7 MDL-28313 fix incorrect enrol database settings upgrade 2011-07-14 22:31:40 +02:00
Petr Skoda 5c754932e7 MDL-28344 new option to prevent clickjacking via frame embedding 2011-07-14 22:01:23 +02:00
Petr Skoda b9b639b30e MDL-28344 remove unused CFG->framename 2011-07-14 22:00:41 +02:00
Petr Skoda 595646d15b MDL-28344 remove the unused $CFG->framename 2011-07-14 21:40:50 +02:00
Petr Skoda 2d16dad0e1 MDL-23344 new option to autofocus username or password on the login form
Nearly everybody else does this login page autofocus. Once we switch to HMTL 5 we should use the new autofocus input option. I believe the admin setting should be enabled by default but it would not be possible to get it through the reviews.
2011-07-14 15:58:01 +02:00
Petr Skoda dfe42f0a15 MDL-28253 use unique name for new manager role 2011-07-14 13:38:36 +02:00
Marina Glancy 77bf97e300 MDL-27756 Improving move_course() performance 2011-07-14 11:00:09 +08:00
Rajesh Taneja 3a70ccb8ac MDL-27837 enrol - Fixed checkboxes for multiple self enrolment 2011-07-14 09:55:13 +08:00
Marina Glancy 4173ef4a04 MDL-25125 fix YUI bug with overriding styles 2011-07-14 09:40:00 +08:00
AMOS bot 955a47b358 Automatically generated installer lang files 2011-07-14 00:55:15 +00:00
Dan Marsden 99da7a9523 MDL-26482 SCORM add option to disable TOC completely - thanks to Clark Burns for some help! 2011-07-14 11:06:49 +12:00
Dan Marsden 7b6f5c8d1e MDL-28300 SCORM Fix check for SCORM 2004 thanks to Silvia Bastos for report/patch 2011-07-14 11:01:16 +12:00
Ankit Kumar Agarwal 219f919c24 MDL-27523 Small Fixes 2011-07-14 10:57:29 +12:00
Ankit Kumar Agarwal f8f34f823d MDL-27523 Minor Edits 2011-07-14 10:57:29 +12:00
Dan Marsden 5e3014df9e MDL-27523 tidy up links to download files, shift logic for set_page to allow mode to be set correctly 2011-07-14 10:57:29 +12:00
Dan Marsden b2614417a5 MDL-27523 SCORM move plugin links to tabs page and only show if more than one plugin is installed, move delete attempts code into plugin as it may not be supported in all plugins, general tidy up - good work Ankit! 2011-07-14 10:57:29 +12:00
Ankit Kumar Agarwal 62b82cbcff MDL27522 First version Push
modified:   mod/scorm/report.php
	new file:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports-remove users report to seperate files for better re-use

	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports validated reportuser.php

	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM REPORT - updating reportuser.php to use MUST_EXIST parameter

	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports- Cleaning of codes
	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports- update formating

	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reports removed unwanted codes from reportuser.php

	modified:   mod/scorm/reportuser.php

MDL-27522 Scorm Reports - optimising codes

	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 Scorm Reports-Formating report.php
	modified:   mod/scorm/report.php

MDL-27522 Scorm Reporting - removing unsed variables

	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/report.php
	modified:   mod/scorm/reportuser.php

MDL-27522 SCORM Reporting - Renaming reportuser.php to userreport.php
	new file:   mod/scorm/userreport.php

MDL-27522 SCORM Reporting - deleting old reportuser.php

	deleted:    mod/scorm/reportuser.php

MDL-27522 Scorm Reporting - updated version number

MDL-27522 Scorm Reporting - Discarding version changes

MDL-27523 Scorm Reporting - Basic reporting plugin
	new file:   mod/scorm/report/basic/lang/en/scorm_basic.php
	new file:   mod/scorm/report/basic/report.php
	new file:   mod/scorm/report/default.php
	new file:   mod/scorm/report/reportlib.php

MDL-27523 Scorm Reporting - Database Table structure pushed
	new file:   mod/scorm/db/subplugins.php

MDL-27523 Scorm Reporting - Plugin container codes
	modified:   mod/scorm/report.php
	modified:   mod/scorm/tabs.php

MDL-27523 Scorm Reporting - Capability update
	modified:   mod/scorm/report/reportlib.php

MDL-27523 Scorm Reporting - commenting files
	modified:   mod/scorm/report/basic/db/install.php
	modified:   mod/scorm/report/basic/lang/en/scorm_basic.php
	modified:   mod/scorm/report/basic/version.php

MDL-27523 Scorm Reporting - Formating codes
	modified:   mod/scorm/report/basic/db/install.php
	modified:   mod/scorm/report/basic/report.php
	modified:   mod/scorm/report/basic/version.php
	modified:   mod/scorm/report/default.php
	modified:   mod/scorm/report/reportlib.php

MDL-27523 Scorm Reporting - fixing small bugs
	modified:   mod/scorm/report/basic/report.php

MDL-27523 Scorm Reporting - added databse upgrade code to scorm/db/upgrade.php

MDL-27523 Scorm Reporting - small optimisations

MDL-27523 SCorm Reporting - Removing Mod.php

MDL-27523 Scorm Reporting - Minor Fixes

	new file:   mod/scorm/db/subplugins.php
	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/report.php
	new file:   mod/scorm/report/basic/db/install.php
	new file:   mod/scorm/report/basic/lang/en/scorm_basic.php
	new file:   mod/scorm/report/basic/report.php
	new file:   mod/scorm/report/basic/version.php
	new file:   mod/scorm/report/default.php
	new file:   mod/scorm/report/reportlib.php
	modified:   mod/scorm/tabs.php
	modified:   mod/scorm/userreport.php

	modified:   mod/scorm/db/install.xml
	new file:   mod/scorm/db/subplugins.php
	modified:   mod/scorm/db/upgrade.php
	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/report.php
	new file:   mod/scorm/report/basic/db/install.php
	new file:   mod/scorm/report/basic/lang/en/scorm_basic.php
	new file:   mod/scorm/report/basic/report.php
	new file:   mod/scorm/report/basic/version.php
	new file:   mod/scorm/report/default.php
	new file:   mod/scorm/report/reportlib.php
	modified:   mod/scorm/tabs.php
	modified:   mod/scorm/userreport.php
	modified:   mod/scorm/version.php

MDL-27523 Scorm Reporting - Removing Database Refereneces

MDL-27523 Scorm Reporting - Updating structure to remove DB usage
	modified:   mod/scorm/db/upgrade.php
	modified:   mod/scorm/report.php
	modified:   mod/scorm/report/basic/report.php
	modified:   mod/scorm/report/default.php
	modified:   mod/scorm/report/reportlib.php

MDL-27523 Scorm Reporting - Minor fixes

MDL-27523 Scorm Reporting - Formating codes

MDL-27523 Scorm Reporting - Foramting Codes
	modified:   mod/scorm/report/basic/lang/en/scorm_basic.php
	modified:   mod/scorm/report/basic/report.php
	modified:   mod/scorm/report/default.php
	modified:   mod/scorm/report/reportlib.php

	new file:   mod/scorm/db/subplugins.php
	modified:   mod/scorm/lang/en/scorm.php
	modified:   mod/scorm/report.php
	new file:   mod/scorm/report/basic/lang/en/scorm_basic.php
	new file:   mod/scorm/report/basic/report.php
	new file:   mod/scorm/report/basic/version.php
	new file:   mod/scorm/report/default.php
	new file:   mod/scorm/report/reportlib.php
	modified:   mod/scorm/tabs.php
	modified:   mod/scorm/userreport.php
	modified:   mod/scorm/version.php
2011-07-14 10:57:29 +12:00
Sam Hemelryk ecb8829273 weekly release 2.2dev 2011-07-13 20:21:48 +08:00
Sam Hemelryk 59c8535226 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-07-13 20:06:16 +08:00
Sam Hemelryk 4d4e6d6bfc Revert "MDL-23344 fix login form focus"
This reverts commit 70b02b12d3.
2011-07-13 20:02:58 +08:00
David Mudrak c8ea2c4572 MDL-28298 workshop: do not use a constant without explicit inclusion of the library
Instead of including whole formslib just to get the constant defined, I
decided to hard-code the value and put the reference to the comment so
that eventual grep would spot it. Of course that is is not nice at all
but it's lesser of two evils imho.
2011-07-13 10:28:28 +02:00
Sam Hemelryk 2027c10ec4 MDL-28184 navigation: Tidied up handling of coursenode when adding course essentials 2011-07-13 14:58:57 +08:00
Sam Hemelryk 962360fa21 MDL-27771 filter-text: Fixed typo contninue 2011-07-13 14:52:44 +08:00
Chris Follin 84b2b9aa77 MDL-27305 forum: Added missing item to forum_get_view_actions 2011-07-13 14:22:18 +08:00
Sam Hemelryk b874637025 MDL-25870 enrol-manual: Fixed pagination of AJAX search results for users when changing search 2011-07-13 14:02:30 +08:00
Sam Hemelryk f50243edef MDL-28137 unit tests: Fixed up problem with block manager tests when running unit tests after turning editing on 2011-07-13 13:44:45 +08:00
Sam Hemelryk 112c7f05b5 MDL-28205 RSS: Fixed up notice and set better pagelayout type on manage feeds page 2011-07-13 10:32:38 +08:00
Sam Hemelryk c103eba85f MDL-27696 datalib Fixed up misused params in get_logs_usercourse 2011-07-13 10:30:35 +08:00
Sam Hemelryk c4afcf84d9 MDL-28040 navigation: Fixed up error with navigation when dealing with categories that have a lower sort order than the parent. 2011-07-13 09:58:42 +08:00
Eloy Lafuente (stronk7) e62a947eec Merge branch 'MDL-28221-resource-conversion' of git://github.com/mudrd8mz/moodle 2011-07-12 16:57:54 +02:00
Eloy Lafuente (stronk7) dd8f2538b6 Merge branch 'master_MDL-28017' of git://github.com/danmarsden/moodle
Conflicts:
	mod/scorm/version.php
2011-07-12 16:28:36 +02:00
Eloy Lafuente (stronk7) d703e3816f MDL-28210 messaging: all includes but config.php must use $CFG-based abosolute paths 2011-07-12 12:17:34 +02:00
Eloy Lafuente (stronk7) 8654b65619 Merge branch 'MDL-28210_messaging_constants2' of git://github.com/andyjdavis/moodle 2011-07-12 12:16:16 +02:00
Andrew Davis (andyjdavis) 6366fdcc6c MDL-28210 messaging: Fixed requires problems in /message/discussion.php 2011-07-12 10:46:59 +08:00
AMOS bot 84a4374683 Automatically generated installer lang files 2011-07-12 00:55:19 +00:00
Dan Marsden 59cdcb9770 MDL-28017 - SCORM unset old config var 2011-07-12 09:46:23 +12:00
David Mudrak 47f5964381 MDL-28221 Legacy resource URL pointing to the course itself are migrated as File module
This patch replays the logic of resource_20_migrate() function. If a
file is referred via URL to the course files of the course being
backed up, then such a resource is converted to the File module
(mod/resource) rather than URL module.
2011-07-11 23:30:28 +02:00
David Mudrak 498c722d0f MDL-28221 resource: improved file not found handling
When the referenced file is not found, do not rely on the record in
resource_old as the resource can be actually restored from a 1.9 backup.
2011-07-11 23:30:28 +02:00
David Mudrak c6c9a3bcdb MDL-28221 resource: fixed a typo in variable names 2011-07-11 23:30:28 +02:00
Eloy Lafuente (stronk7) d253e3cc90 Merge branch 'w27_MDL-28270_m22_cohortfilter' of git://github.com/skodak/moodle 2011-07-11 20:22:42 +02:00
Eloy Lafuente (stronk7) 701570b5e4 Merge branch 'master_MDL-26942' of git://github.com/danmarsden/moodle 2011-07-11 19:47:14 +02:00
Eloy Lafuente (stronk7) 8746aab856 Merge branch 'MDL-27755' of git://github.com/rwijaya/moodle 2011-07-11 19:41:00 +02:00
Eloy Lafuente (stronk7) 7660f09ee6 Merge branch 'MDL-27741' of git://github.com/rwijaya/moodle 2011-07-11 19:35:41 +02:00
Eloy Lafuente (stronk7) fc75965b63 Merge branch 'w27_MDL-23344_m22_loginfocus' of git://github.com/skodak/moodle 2011-07-11 17:01:58 +02:00
Eloy Lafuente (stronk7) 2af4d0a27f Merge branch 'MDL-23580' of git://git.luns.net.uk/moodle 2011-07-11 16:46:35 +02:00
Eloy Lafuente (stronk7) 3fe120a6c6 Merge branch 'MDL-26165' of git://github.com/timhunt/moodle 2011-07-11 16:32:17 +02:00
Eloy Lafuente (stronk7) cf5b3dad05 Merge branch 'MDL-27483' of git://github.com/timhunt/moodle 2011-07-11 16:25:42 +02:00
Eloy Lafuente (stronk7) 97c5f85f37 Merge branch 'MDL-27931' of git://github.com/rwijaya/moodle 2011-07-11 15:56:22 +02:00
Eloy Lafuente (stronk7) d5497dcc86 MDL-28109 scorm - new settings => version bump 2011-07-11 15:54:11 +02:00
Eloy Lafuente (stronk7) 2abfc1c630 Merge branch 'master_MDL-28109' of git://github.com/danmarsden/moodle 2011-07-11 15:42:21 +02:00
Eloy Lafuente (stronk7) 21ba26e814 Merge branch 'w27_MDL-28158_m22_cookies' of git://github.com/skodak/moodle 2011-07-11 15:33:03 +02:00
Eloy Lafuente (stronk7) f046f96f05 Merge branch 'MDL-28186' of git://git.luns.net.uk/moodle 2011-07-11 15:20:56 +02:00
Eloy Lafuente (stronk7) 75853bc5a5 Merge branch 'w27_MDL-28279_m22_flash' of git://github.com/skodak/moodle 2011-07-11 12:06:22 +02:00
Eloy Lafuente (stronk7) 23e90aa5b8 Merge branch 'w27_MDL-28280_m22_usesid' of git://github.com/skodak/moodle 2011-07-11 12:01:34 +02:00
Rossiani Wijaya 0d3780a1e8 MDL-27741 forum subscribe link: Removed 'no' string in social course format to display a subscribe link if user is not enrolled 2011-07-11 17:07:55 +08:00
Sam Hemelryk 9c52c8a4b0 Merge branch 'w27_MDL-25954_m22_cohortnav' of git://github.com/skodak/moodle 2011-07-11 16:20:03 +08:00
Sam Hemelryk e2d1b25a5a Merge branch 'w27_MDL-26965_m22_cohortuploaduser' of git://github.com/skodak/moodle 2011-07-11 16:11:50 +08:00
Sam Hemelryk 59772e4749 Merge branch 'wip-mdl-27954' of git://github.com/rajeshtaneja/moodle 2011-07-11 16:01:26 +08:00
Sam Hemelryk 9dae5179cb Merge branch 'w27_MDL-22404_m22_cohortbulk' of git://github.com/skodak/moodle 2011-07-11 15:40:12 +08:00
Petr Skoda 56284322ea MDL-22404 bulk user add to cohort 2011-07-11 09:20:45 +02:00
Sam Hemelryk c430467ca8 Merge branch 'MDL-28195' of git://github.com/timhunt/moodle 2011-07-11 15:02:03 +08:00
Sam Hemelryk 48ae99cbaf Merge branch 'w27_MDL-28273_m22_cohortremove' of git://github.com/skodak/moodle 2011-07-11 14:50:56 +08:00
Sam Hemelryk 3bbc7a0fc5 Merge branch 'w27_MDL-28278_m22_cohorticons' of git://github.com/skodak/moodle 2011-07-11 14:18:54 +08:00
Sam Hemelryk 42afcc172a Merge branch 'wip-MDL-27429-master' of git://github.com/Beedell/moodle 2011-07-11 13:54:49 +08:00
Sam Hemelryk c9d0d33174 Merge branch 'MDL-28268' of git://github.com/timhunt/moodle 2011-07-11 13:25:44 +08:00
Sam Hemelryk ed21851b3c Merge branch 'MDL-28192' of git://github.com/timhunt/moodle 2011-07-11 13:17:52 +08:00
Dan Marsden 6eca9e1c63 MDL-28017 SCORM - remove admin setting incorrectly added as it was never used. 2011-07-11 15:42:53 +12:00
Sam Hemelryk 7a5c6b98e1 Merge branch 'master_MDL-27947' of git://github.com/danmarsden/moodle 2011-07-11 11:31:13 +08:00
Sam Hemelryk 08d29fb18d Merge branch 'MDL-27890_master' of git://github.com/stronk7/moodle 2011-07-11 11:25:21 +08:00
Sam Hemelryk f7776c0fc8 Merge branch 'glossary_multilang_master' of git://github.com/stronk7/moodle 2011-07-11 11:14:44 +08:00
Sam Hemelryk c75d584dcc Merge branch 'mod_url_decode_master' of git://github.com/stronk7/moodle 2011-07-11 11:02:41 +08:00
Sam Hemelryk 8b6c283f94 Merge branch 'backup_groups_master' of git://github.com/stronk7/moodle 2011-07-11 10:53:38 +08:00
Rajesh Taneja ea2052ab8e MDL-27954 mod_database - fixed search navigation link 2011-07-11 10:09:44 +08:00
Eloy Lafuente (stronk7) b86f930647 MDL-28048 glossary - fix double ampersand & missing string 2011-07-11 01:36:30 +02:00
Eloy Lafuente (stronk7) bce3e3dca5 MDL-28048 glossary - add multilang support to categories 2011-07-11 01:02:06 +02:00
Dan Marsden 3c0b04c440 MDL-28109 - allow admin to decide which scorm settings are advanced, tidy up order of settings 2011-07-11 10:18:16 +12:00
Petr Skoda 70b02b12d3 MDL-23344 fix login form focus 2011-07-10 16:40:56 +02:00
Petr Skoda 98eaf27e3c MDL-28280 remove obsolete unmaintained $CFG->usesid 2011-07-10 13:44:41 +02:00
Petr Skoda 0342fc3609 MDL-28158 add optional "Remember username" checkbox in login forms 2011-07-10 13:22:55 +02:00
Eloy Lafuente (stronk7) 438606fca3 MDL-28156 restore - fix some notices restoring empty courses 2011-07-10 13:13:23 +02:00
Petr Skoda e115bdc51a MDL-28279 remove unused admin setting 2011-07-10 11:06:06 +02:00
Petr Skoda cdbd37126d MDL-28279 remove flash client version blocking
Everybody is responsible for upgrades of Flash, there is no excuse any more.
2011-07-10 11:03:02 +02:00
Petr Skoda 9aa14ff4b2 MDL-28278 use icons in cohort UI 2011-07-10 10:03:42 +02:00
Dan Marsden 0ffaa76be3 MDL-28109 - allow adming to decide which scorm settings are advanced, tidy up order of settings 2011-07-10 11:10:56 +12:00
Eloy Lafuente (stronk7) c8fbcaab1d MDL-28156 restore - support restoring files without grade items 2011-07-10 00:52:45 +02:00
Eloy Lafuente (stronk7) f70676a782 MDL-27438 backup - on course backups add course gropus and groupings 2011-07-09 19:27:23 +02:00
Petr Skoda 21c8d60dac MDL-25954 fix cohort navigation issues 2011-07-09 17:18:06 +02:00
Petr Skoda 92b59a56d1 MDL-26965 add support for uploading of users to cohorts via csv 2011-07-09 16:32:52 +02:00
Petr Skoda 5121a95da2 MDL-28273 waring that removing user from cohorts may unenrol from courses 2011-07-09 16:23:36 +02:00
Petr Skoda 85c199aede MDL-22404 add cohort ID to user filters
We are using only ID because there might be hundreds of cohorts in the system at different contexts. There is no special access control because filtering is supposed to be used by admins only.
2011-07-09 15:42:40 +02:00
Eloy Lafuente (stronk7) aef91ddfa7 MDL-27018 restore - decode links missing url->externalurl support 2011-07-09 13:33:50 +02:00
Jamie Pratt da8cd9f4b3 MDL-28268 Missing ORDER BY when using extra answer table.
From OU bug #921 "Order of answer fields in Variable numeric keeps changing" Cannot
reproduce this bug on my system but hopefully this will fix the problem. I added
an ORDER BY clause to the sql for fetching answers with extra answer fields.
2011-07-09 07:26:08 +01:00
Dan Marsden c5803aaa7f MDL-27947 - fix TOC display on skipview - use correct org in TOC title 2011-07-09 11:40:32 +12:00
Dan Marsden 8a4561accc SCORM MDL-26942 - get first scoid if not set 2011-07-09 11:06:36 +12:00
Dan Marsden 8cb7096bc5 SCORM MDL-26942 - fix ending of lists. 2011-07-09 11:06:35 +12:00
Dan Marsden b6c88d755b SCORM MDL-26942 - initial fix for list in toc 2011-07-09 11:06:35 +12:00
Dan Marsden 0797000aa9 SCORM MDL-26942 - move scorm_get_toc to locallib.php 2011-07-09 11:06:35 +12:00
Dan Marsden 27a9658f97 SCORM MDL-26942 remove empty file and add todo 2011-07-09 11:06:35 +12:00
Dan Marsden db0a77cc1a SCORM MDL-26942 merge scorm_get_toc to decrease duplicated code and simplify toc display 2011-07-09 11:05:54 +12:00
AMOS bot 169b544d7c Automatically generated installer lang files 2011-07-08 12:34:39 +02:00
John Beedell 7cf83f47cc MDL-27429 Adding tabindex and on keypress to the blocks show/hide icon. 2011-07-08 10:56:17 +01:00
Eloy Lafuente (stronk7) f6f6138379 weekly release 2.2dev 2011-07-08 11:15:49 +02:00
Eloy Lafuente (stronk7) 7e1fa4f019 fix permissions 2011-07-08 11:13:19 +02:00
Eloy Lafuente (stronk7) 1f767468ac Merge branch 'MDL-28015-workshop-sql' of git://github.com/mudrd8mz/moodle 2011-07-08 01:11:13 +02:00
Eloy Lafuente (stronk7) 4b02f9d2e9 Merge branch 'MDL-28168-custommenu' of git://github.com/mudrd8mz/moodle 2011-07-08 00:41:19 +02:00
Tim Hunt 0f83538e7e MDL-27890 tinymce - enable 30 as min height within moodle 2011-07-07 20:01:20 +02:00
Eloy Lafuente (stronk7) d614e55c69 MDL-NOBUG tinymce - updated instructions to cover local modifications and other minor changes 2011-07-07 18:23:01 +02:00
Eloy Lafuente (stronk7) 1fa6eab70b MDL-27890 tinymce - allow it to be smaller 2011-07-07 17:38:44 +02:00
David Mudrak 20e7fd839a MDL-28015 workshop - fixed unique list of columns in ORDER BY clause
MSSQL requires that the columns in the ORDER BY clause list must be
unique. The patch populates the list of fields by combining an array of
explicit sort definition with an array of implicit (default) sort
definition.
2011-07-07 15:17:27 +02:00
Tim Hunt 7bf53cf233 MDL-27483 make quiz repagination more robust. 2011-07-07 12:38:06 +01:00
Tim Hunt d0cfa81312 MDL-28192 local_qeupgradehelper fix typo. 2011-07-07 11:25:39 +01:00
David Mudrak 4564d58f9e MDL-28168 Multi-language support for custom_menu reimplemented
This is a reimplementation of the multi-language support for the
custom_menu class. The menu items now accept the forth optional
parameter with the explicit list of languages the item is valid for. If
no languages are listed, the item is valid for any language. The caller
of the custom_menu constructor must provide the user's current language
or null if the multi-language should not be supported (all items are
valid for any language then, regardless the definition).

See the attached unit tests for the examples of usage.
2011-07-07 11:30:04 +02:00
David Mudrak 155fffe6a4 MDL-28168 Improved custom_menu constructor
This improves custom_menu constructor by dropping support for useless
$text parameter and replacing it with the menu definition. This makes
custom_menu instance independent on the place where the menu is defined
($CFG->custommenuitems) and can be unit-tested. Also, multiple instances
of custom_menu can be instantiated now which can be interesting in the
future.
2011-07-07 11:30:03 +02:00
David Mudrak 153a13226e MDL-28168 Revert "MDL-27073 Support multi-language content in custom menu"
This reverts commit 87e0230d0a.
2011-07-07 11:30:03 +02:00
Sun Zhigang 858d100fa3 MDL-27833 Backup - Fix can't search courses with non-latin characters during importing
PARAM_ALPHANUMEXT filter out all non-latin characters, including
Chinese, Japanese and etc. Use PARAM_NOTAGS instead.
2011-07-07 10:39:47 +02:00
Eloy Lafuente (stronk7) 26635fd7f9 Merge branch 'MDL-28169' of git://github.com/nebgor/moodle 2011-07-07 10:21:32 +02:00
Eloy Lafuente (stronk7) d9aa768139 Merge branch 'w26_MDL-28163_m22_customfront' of git://github.com/skodak/moodle 2011-07-07 10:11:17 +02:00
Rossiani Wijaya c65f0b6fb5 MDL-27755 course search: Add course id and shortname to search fields 2011-07-07 15:02:11 +08:00
Aparup Banerjee c5a8abfedd MDL-28169 Installation Added 2.1 upgrade (idiot proof) lines to upgrade scripts. 2011-07-07 11:40:38 +08:00
Eloy Lafuente (stronk7) 907cc4ceb7 Merge branch 'master_MDL-28110' of git://github.com/danmarsden/moodle 2011-07-07 03:00:42 +02:00
Eloy Lafuente (stronk7) 627e4bd4a7 Merge branch 'master_MDL-28111' of git://github.com/danmarsden/moodle 2011-07-07 02:36:28 +02:00
Eloy Lafuente (stronk7) 6eb2cf62bd MDL-27989 whitespace fix 2011-07-07 02:21:44 +02:00
Eloy Lafuente (stronk7) 5b77684af7 Merge branch 'MDL-27989_master' of git://github.com/kordan/moodle 2011-07-07 02:19:15 +02:00
Eloy Lafuente (stronk7) dfef3028ae Merge branch 'MDL-26285' of git://git.luns.net.uk/moodle 2011-07-07 02:10:13 +02:00
Eloy Lafuente (stronk7) 25e2bb1b83 Merge branch 'w26_MDL-27375_m22_enrolcase' of git://github.com/skodak/moodle 2011-07-07 01:39:38 +02:00
Eloy Lafuente (stronk7) 535a635afc Merge branch 'w26_MDL-28117_m22_dataurlhack' of git://github.com/skodak/moodle 2011-07-07 01:32:30 +02:00
Eloy Lafuente (stronk7) 482b1ea121 Merge branch 'MDL-27329' of git://git.luns.net.uk/moodle 2011-07-07 00:24:19 +02:00
Eloy Lafuente (stronk7) 4357214a49 Merge branch 'MDL-28100' of git://git.luns.net.uk/moodle 2011-07-07 00:12:19 +02:00
Eloy Lafuente (stronk7) b274bc55d0 Merge branch 'MDL-27279' of git://git.luns.net.uk/moodle 2011-07-07 00:01:08 +02:00
Dan Poltawski ac9695e5d8 MDL-26285 block_rss_client - do not disable with enablerssfeeds
This setting was used in 1.9 and below to control feed generation only, not
for RSS consumption.
2011-07-06 21:10:43 +01:00
Eloy Lafuente (stronk7) 83ca5bef34 Merge branch 'MDL-28222' of git://github.com/timhunt/moodle 2011-07-06 20:27:52 +02:00
Tim Hunt 82c07ea4f4 MDL-28222 quiz reports missing context in call to quiz_report_feedback_for_grade. 2011-07-06 19:08:52 +01:00
Tim Hunt cc7fb382d7 MDL-20804 Improve the automatically generated WSDL.
Note that this is currently very much a proof-of-concept implementation. It should receive a lot of careful testing and review before we think about integrating it.
2011-07-06 18:53:57 +01:00
Eloy Lafuente (stronk7) babbab1449 Merge branch 'MDL-27040' of git://github.com/timhunt/moodle 2011-07-06 19:25:47 +02:00
Eloy Lafuente (stronk7) cb600c4606 Merge branch 'MDL-28166' of git://github.com/timhunt/moodle 2011-07-06 19:03:59 +02:00
Tim Hunt 6c7da46108 MDL-26165 quiz submit are-you-sure is potentially confusing. 2011-07-06 14:49:38 +01:00
Tim Hunt 8f78cd5abc MDL-28195 confirm_action should allow the button labels to be customised 2011-07-06 14:47:30 +01:00
Tim Hunt 81522abd63 MDL-28166 fix some more instances of my favourite becuase typo. 2011-07-06 14:19:25 +01:00
Tim Hunt cbb8b55c33 MDL-28166 send quiz event notifications asynchronously.
This avoids the problem that you cannot send messages in transactions.

It also means that the quiz submission will not be prevented, and the
message will still be sent eventually, if any part of the messaging
system is giving intermittent errors when the student wants to submit
their quiz.
2011-07-06 14:16:30 +01:00
Rossiani Wijaya fd9672ac65 MDL-27931 admin bulk user upload: convert city as required field. Credit goes to Charles Fulton for supplying the patch. 2011-07-06 15:13:16 +08:00
Sam Hemelryk 8f49f9ce8e Merge branch 'MDL-27934' of git://git.luns.net.uk/moodle 2011-07-06 13:24:47 +08:00
Sam Hemelryk 50c1cb0394 Merge branch 'MDL-27855' of git://git.luns.net.uk/moodle 2011-07-06 13:17:54 +08:00
Sam Hemelryk 024ad4bd82 Merge branch 'MDL-27168' of git://git.luns.net.uk/moodle 2011-07-06 12:03:33 +08:00
Sam Hemelryk 1a3c5d2366 Merge branch 'MDL-26626' of git://git.luns.net.uk/moodle 2011-07-06 11:19:27 +08:00
Sam Hemelryk 8323432992 Merge branch 'MDL-26611-take2' of git://git.luns.net.uk/moodle 2011-07-06 11:06:20 +08:00
Sam Hemelryk 5b966cbb3b Merge branch 'MDL-28135' of git://github.com/nebgor/moodle 2011-07-06 10:53:48 +08:00
Eloy Lafuente (stronk7) ea9ad8f175 Merge branch 'w26_MDL-28147_m22_minify' of git://github.com/skodak/moodle 2011-07-06 03:13:11 +02:00
Eloy Lafuente (stronk7) 7edcd093b6 Merge branch 'MDL-28160' of git://github.com/timhunt/moodle 2011-07-06 03:06:34 +02:00
Eloy Lafuente (stronk7) 87cc19de07 Merge branch 'w26_MDL-28161_m22_caches' of git://github.com/skodak/moodle 2011-07-06 02:54:12 +02:00
Eloy Lafuente (stronk7) b2dfa10d5a Merge branch 'w26_MDL-28167_m22_exconstructor' of git://github.com/skodak/moodle 2011-07-06 02:05:20 +02:00
Eloy Lafuente (stronk7) 34d5507ab8 Merge branch 'wip-MDL-28172-master' of git://github.com/samhemelryk/moodle 2011-07-06 01:52:32 +02:00
Eloy Lafuente (stronk7) ed436add99 Merge branch 'MDL-28179' of git://github.com/timhunt/moodle 2011-07-06 01:45:15 +02:00
Eloy Lafuente (stronk7) 60ee61147d Merge branch 'MDL-28193' of git://git.luns.net.uk/moodle 2011-07-06 01:29:27 +02:00
Eloy Lafuente (stronk7) 9a160c7c46 MDL-28196 quiz calls get_in_or_equal (fixing missing $DB) 2011-07-05 22:02:30 +02:00
Eloy Lafuente (stronk7) 476ea4f8ce Merge branch 'MDL-28196' of git://github.com/timhunt/moodle 2011-07-05 19:55:31 +02:00
Dan Poltawski fe50898ebc MDL-23580 course overview - remove debugging junk 2011-07-05 18:46:08 +01:00
Eloy Lafuente (stronk7) 6ce986e54c Merge branch 'MDL-27821' of git://github.com/timhunt/moodle 2011-07-05 19:41:32 +02:00
Eloy Lafuente (stronk7) dd927fcefb Merge branch 'MDL-28185_master' of git://github.com/stronk7/moodle 2011-07-05 17:58:55 +02:00
Eloy Lafuente (stronk7) 555ac02985 Merge branch 'MDL-26618' of git://github.com/timhunt/moodle 2011-07-05 17:46:46 +02:00
Ruslan Kabalin 9f05a1a640 MDL-28186 messaging: Fix "Enable messagning setting" infuence on the menus
"Enable messaging system" (Site administration > Advanced features) is
supposed to control messaging between site users only, thus it should not
remove user messging preferences menu item. However, it may remove instant
messging preferences from providers list for the user.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-07-05 15:35:52 +01:00
Eloy Lafuente (stronk7) 89526681cb MDL-28185 upgrade - fix oracle problem upgrading blocks 2011-07-05 15:37:16 +02:00
Tim Hunt b149b78859 MDL-28196 quiz calls get_in_or_equal (not DB->get_in_or_equal) in two places
Also, another minor error in one method call.
2011-07-05 14:29:30 +01:00
Andrew Robert Nicols b7eceef75f MDL-28193 Add $external arg to get_driver_instance
Signed-off-by: Andrew Robert Nicols <andrew.nicols@luns.net.uk>
2011-07-05 12:22:41 +01:00
Kordan c5b7c9357f addition to previous fix for MDL-27989 in master 2011-07-05 11:32:20 +02:00
Dan Poltawski f2ad165538 MDL-26611 Roles Language - remove reference to 'legacy role type' 2011-07-05 10:23:00 +01:00
Sam Hemelryk ee992c6c66 Merge branch 'MDL-25357_wip' of git://github.com/timhunt/moodle 2011-07-05 16:51:49 +08:00
Kordan 7843d2d609 MDL-27989 fix for master 2011-07-05 10:26:01 +02:00
Rossiani Wijaya 54c37fbd88 MDL-27555 assignment module: remove 'submitted' option from optional setting for offline assignment type. 2011-07-05 15:33:33 +08:00
Aparup Banerjee 3b1b5018f7 MDL-28135 general Updated broken and typo docs links 2011-07-05 14:41:29 +08:00
Aparup Banerjee 19b4d9d831 MDL-28135 general Updated the Copyright notice to point to docs.moodle.org/dev/Releases instead of en/Release 2011-07-05 14:30:24 +08:00
Aparup Banerjee 43d26e6d73 MDL-28135 general Updated doc links related to Release notes to docs.moodle.org/dev/Releases now 2011-07-05 14:29:47 +08:00
Aparup Banerjee 728ebac7f2 MDL-28135 general Updating all hardcoded "docs.moodle.org/en/Development:" type doc links to "docs.moodle.org/dev/" 2011-07-05 14:27:31 +08:00
Iñaki Arenaza 971db6a110 MDL-24666 sync_users.php can throw db exception on sites upgraded from 1.x
From 2.0 on we lowercase all the settings related to LDAP attributes
to cope with differences in LDAP servers when returning attribute
names as array indices (some lowercase them, some leave them as
specified in the query, some normalize them, etc.).

But we only lowercase them when saving the settings page. So on sites
that have been migrated from 1.x, it may happen that we still have
mixed-case attribute names. And this is fatal for the user_attribute
setting, as we might not detect it in the returned array from LDAP and
it will be empty (and the db layer throws and exception).

So we just make sure the attribute name is lowercased (and trimmed,
in case it's got some white space around it).

Signed-off-by: Iñaki Arenaza <iarenaza@mondragon.edu>
2011-07-04 21:47:43 +02:00
Tim Hunt 99fa9745c4 MDL-28179 make failed event hander error message much more useful. 2011-07-04 18:55:45 +01:00
Tim Hunt abc2575493 MDL-27040 get_users_by_capability generates u.id IN () when no uesrs have accessallgroups 2011-07-04 18:50:21 +01:00
Petr Skoda 3f8465ca4b MDL-28117 include repo lib when hacking file_picker renderer 2011-07-04 17:09:28 +02:00
Petr Skoda 5607036a55 MDL-28167 fix missing new
And sloppy whitespace.
2011-07-04 16:42:55 +02:00
Tim Hunt fd3932fe54 MDL-26618 Moving sticky blocks on other pages does not work in Oracle.
This was due to some missing $DB->sql_empty() in a query affecting the
block_positions table.
2011-07-04 15:36:16 +01:00
Tim Hunt 6b92faa47f MDL-27821 backup_exception should not throw away debug info. 2011-07-04 15:35:30 +01:00
Tim Hunt c141b05f7d MDL-25357 Allow maximum number of sections to be set by the admin. Also allow 0 sections at an choice.
Also fix one bad <br/> in another lang string.
2011-07-04 15:35:03 +01:00
Petr Skoda e1c2a211f2 MDL-28147 do not double cache theme css/js 2011-07-04 11:29:23 +02:00
Petr Skoda b216a820a1 MDL-28161 precreate htmlpurifier dir when resetting caches
Includes sloppy whitespace fix.
2011-07-04 09:48:03 +02:00
Sam Hemelryk b8d3c3f76e MDL-28172 forum: Fixed up overzealous check for portfolio enabled. 2011-07-04 15:04:16 +08:00
Dan Poltawski a58f4d5595 MDL-26626 course competion block - fix hardcoded string 2011-07-03 22:51:58 +01:00
Dan Poltawski af27c69e1f MDL-27329 course report - correct use of wrong fullname
We are refering to users in this column of the course report not
course full name.
2011-07-03 22:12:05 +01:00
Dan Poltawski dc9c9c45ec MDL-27168 completionstatus block - Use localized strings 2011-07-03 20:51:15 +01:00
Petr Skoda 8275eab842 MDL-28163 custom site frontpage support 2011-07-03 15:02:46 +02:00
Tim Hunt 56920c36f9 MDL-28160 question preview window uses wrong pagelayout in activity contexts 2011-07-03 12:53:56 +01:00
Dan Poltawski 8b0614d9ea MDL-27855 navigation - only display participants link with permissions 2011-07-03 10:52:32 +01:00
Dan Marsden d9306a9c1f SCORM MDL-28110 fix string name 2011-07-03 12:51:56 +12:00
Dan Marsden 0ab985f918 SCORM MDL-28110 set default for forcejavascript to yes - add string explaining what it does. 2011-07-03 12:51:56 +12:00
Dan Marsden ca4eda13b5 SCORM MDL-28111 tidy up formatting of code 2011-07-03 12:49:29 +12:00
Dan Marsden f7b5c6aae6 SCORM MDL-28111 tidy up formatting of code 2011-07-03 12:49:29 +12:00
Petr Skoda 6c6b8ad2f0 MDL-27375 add missing lowercasing of external column names
Credit goes to Gail Preuninger.
2011-07-02 15:16:02 +02:00
Dan Poltawski 2207a21bfe MDL-28100 - page resource was not using context for text filtering 2011-07-02 13:34:05 +01:00
Dan Poltawski e9aa24736a MDL-27279 lang/en/xmldb - Fix Typo in confirmcheckforeignkeys 2011-07-02 12:56:09 +01:00
Sun Zhigang 0e30d4c7c7 MDL-27934 Upload Assignment - Remove useless code 2011-07-02 09:52:28 +01:00
Eloy Lafuente (stronk7) 81f8e0f8a0 weekly release 2.2dev 2011-07-01 23:58:02 +02:00
Eloy Lafuente (stronk7) d64baeceb2 release 2.1 2011-07-01 23:47:23 +02:00
Eloy Lafuente (stronk7) f4f835b739 fix permissions 2011-07-01 23:39:00 +02:00
Eloy Lafuente (stronk7) c5b0344b62 Merge branch 'MDL-28152-course-grade-category' of git://github.com/mudrd8mz/moodle 2011-07-01 22:33:04 +02:00
Eloy Lafuente (stronk7) 0e2901443c Merge branch 'MDL-28103' of git://github.com/timhunt/moodle 2011-07-01 22:17:16 +02:00
Tim Hunt aa5257ce7e MDL-28103 one more problem. 2011-07-01 21:17:06 +01:00
David Mudrak 41f21f92cf MDL-28152 Improved detection of the course grade_category on course restore 2011-07-01 22:12:30 +02:00
Tim Hunt 1645ad22d8 MDL-28103 code to deal with missing question_attempts was buggy. 2011-07-01 21:07:49 +01:00
Tim Hunt e7933796a8 MDL-28103 make the upgrade more robust in the presence of old garbage data in the DB. 2011-07-01 20:54:42 +01:00
Eloy Lafuente (stronk7) 715a5bb732 MDL-27829 blocks - lang string fixes. Credit goes to Helen! 2011-07-01 20:38:06 +02:00
Eloy Lafuente (stronk7) 3e16a2ca66 MDL-27829 blocks - clean dupe comments 2011-07-01 20:38:06 +02:00
Eloy Lafuente (stronk7) ddaa914789 MDL-27829 block creation - ensure correct pagetypepattern in mod/ pages 2011-07-01 20:38:06 +02:00
Eloy Lafuente (stronk7) e5a863e55c MDL-27829 course report - fix name of "Course completion report". Credit goes to Helen! 2011-07-01 20:38:06 +02:00
Tim Hunt dfcbecd487 MDL-28103 when handling questions that have been deleted from the question bank, find the right updater class. 2011-07-01 17:13:47 +01:00
Tim Hunt 4a6ac0ceb1 MDL-28103 fix silly error in quiz_upgrade_very_old_question_sessions. 2011-07-01 17:13:45 +01:00
Eloy Lafuente (stronk7) ec48e283b0 Merge branch 'MDL-27960' of git://github.com/nebgor/moodle 2011-07-01 16:13:51 +02:00
Eloy Lafuente (stronk7) 264d81eee3 Merge branch 's11_MDL-27976_undefined_variable_master' of github.com:dongsheng/moodle 2011-07-01 13:43:05 +02:00
Aparup Banerjee b74b347aba MDL-27960 assignment subplugin moodle1 conversion handling and handlers added 2011-07-01 19:11:29 +08:00
Eloy Lafuente (stronk7) 67fcc9989a Merge branch 'MDL-27829_block_pagetype_master' of git://github.com/andyjdavis/moodle 2011-07-01 11:51:26 +02:00
Andrew Davis (andyjdavis) 2f9bdadfd2 MDL-27829 blocks: made the ability to add a block to all site administration pages work 2011-07-01 17:11:10 +08:00
Eloy Lafuente (stronk7) 3bd43d3d5c Merge branch 'MDL-27418' of git://github.com/timhunt/moodle 2011-07-01 11:05:17 +02:00
Sam Hemelryk 90e9d09b5f Merge branch 'MDL-28138' of git://github.com/timhunt/moodle 2011-07-01 17:01:57 +08:00
Tim Hunt e42646b167 MDL-27418 fix minor regression found by Rajesh. 2011-07-01 09:44:31 +01:00
Eloy Lafuente (stronk7) 49752ecb59 Merge branch 'MDL-28022-glossary-export' of git://github.com/mudrd8mz/moodle 2011-07-01 10:40:15 +02:00
Tim Hunt 01533e9cce MDL-28138 fix calculated-specific format float function
Sadly this has to be done in question.php and in two places in the ugprade code :-(.
2011-07-01 09:14:56 +01:00
Andrew Davis (andyjdavis) 346a32a75b MDL-27829 blocks: added some more page types to some _page_type_list() functions 2011-07-01 15:43:26 +08:00
Sam Hemelryk 4c9e9e09ea Merge branch 's11_MDL-28121_split_master' of github.com:dongsheng/moodle 2011-07-01 15:07:21 +08:00
Andrew Davis (andyjdavis) 1fe0ecabf1 MDL-27829 blocks: altered some strings so page type strings match the names of the course reports in the UI 2011-07-01 10:01:38 +08:00
David Mudrak c9b3efd20c MDL-28022 glossary entry without attachment can be exported to Mahara as Leap2A content
The problem here was that the manifest file was written into the
'./files/leap2a.xml' instead of the './leap2a.xml' in the ZIP package.
I believe there was a bug in the write_new_file() using the 3rd parameter
incorrectly. A detailed review of all other modules using the same
method must happen soon.
2011-07-01 02:34:00 +02:00
Eloy Lafuente (stronk7) a80d6ab536 Merge branch 'MDL-28128' of git://github.com/timhunt/moodle 2011-07-01 01:49:59 +02:00
Eloy Lafuente (stronk7) 70debd7391 Merge branch 'MDL-28129' of git://github.com/timhunt/moodle 2011-07-01 01:41:38 +02:00
Eloy Lafuente (stronk7) 4411596c27 Merge branch 'MDL-28132' of git://github.com/timhunt/moodle 2011-07-01 01:37:43 +02:00
Eloy Lafuente (stronk7) d72129829f Merge branch 'MDL-28133' of git://github.com/timhunt/moodle 2011-07-01 01:10:06 +02:00
Eloy Lafuente (stronk7) f9d2eb4f20 Merge branch 'MDL-28099_wip' of git://github.com/jamiepratt/moodle 2011-07-01 00:54:35 +02:00
Eloy Lafuente (stronk7) 7ace3a2199 Merge branch 'MDL-28006-convert-gradebook' of git://github.com/mudrd8mz/moodle 2011-07-01 00:09:50 +02:00
Eloy Lafuente (stronk7) b1273d09dd Merge branch 'MDL-28116-master' of git://github.com/sammarshallou/moodle 2011-06-30 23:56:53 +02:00
David Mudrak d46badb176 MDL-28006 restore - improved handling of gradebook 1.9 backups
On contrary from a backup created in 2.0, the file gradebook.xml in the
converted MBZ can contain the course grade_item without the
corresponding grade_category record which is something restore_stepslib
did not expect. This patch fixes two places:

1) the gradebook restore does not use mapped itemid but calls
grade_category::fetch_course_category() to get the actual category to
link the course_item with

2) after_execute makes sure that the mapping actually exists before
trying to move the activities from the default root category
2011-06-30 22:40:54 +02:00
Tim Hunt baf706b503 MDL-28132 truncate very long category names before using them in random question names. 2011-06-30 19:35:35 +01:00
Jamie Pratt 1e257a3a54 NOBUG if we are going to reuse the functions used within the evalmath code then
the calling api should not be weird with reversed parameters etc.
2011-06-30 17:50:05 +01:00
Jamie Pratt 9085134ed7 MDL-27659 "have evalmath accept numbers expressed with scientific
notation"
2011-06-30 17:49:49 +01:00
Jamie Pratt 4733133533 NOBUG fixed some coding style deviations in unit test code. Mostly
white space changes and added scope declarations to unit test
functions.
2011-06-30 17:49:31 +01:00
jamiepratt e2beee5880 NOBUG move pattern for func and var names into a static var and make a function to test a string to see if it is a valid func or var name. 2011-06-30 17:49:01 +01:00
sam marshall c02b60bccc MDL-28116 Fix issue restoring old backups with duplicate completion rows 2011-06-30 17:33:12 +01:00
Jamie Pratt e5060e2209 MDL-28129 two issues with loading and saving questions
1. Missing order by could randomise the order of the hints.

2. the extraanswerfields big had some SQL errros.
2011-06-30 17:21:37 +01:00
Eloy Lafuente (stronk7) 0bd8f4c665 Merge branch 'MDL-28115' of git://github.com/rwijaya/moodle 2011-06-30 17:09:42 +02:00
Tim Hunt ceb4d2ed0b MDL-28128 finish the fix for MDL-28035.
There was one place where I had only fixed the backup code to work-around bad data from Moodle 2.0. I needed to make the equivalent change in the upgrade code.

The bad data is that the seq_number fields can be wrong (not unique). Se already have data ordered by (seq_number, id) and the array keys of the array we are building are not used for anything, so this fix deals with the problem.
2011-06-30 16:00:15 +01:00
Eloy Lafuente (stronk7) 91dc377b74 Merge branch 'MDL-27829_block_pagetype_master' of git://github.com/andyjdavis/moodle 2011-06-30 16:39:45 +02:00
Eloy Lafuente (stronk7) db0fe3b295 Merge branch 'MDL-28061' of git://github.com/rwijaya/moodle 2011-06-30 16:22:20 +02:00
Tim Hunt 69384c1939 MDL-28127 incorrect lang string placeholder in question engine upgrade. 2011-06-30 15:20:42 +01:00
David Mudrak 3343677e0a MDL-28006 Fixed grades subpath handling
Registering the grades subpath even if we do not process the grades yet.
This is to prevent from incorrect considering the wrapper as an empty tag.
2011-06-30 15:17:03 +02:00
Rossiani Wijaya 0c8d3939bc MDL-28061 mediaplugins filter: add aac audio node to filetypes.mm, fixed string mistype within the admin setting page (acc -> aac) and add mediaplugin_html5audio css class to align the player/link like the rest. 2011-06-30 19:29:07 +08:00
Rossiani Wijaya 54fd7cd9ee MDL-28115 lesson module: fixed undefined variable for multiple answer, disabled numberical input text during review and fixed bug for essay answer during review process. 2011-06-30 18:43:25 +08:00
Dongsheng Cai 1e539f647d MDL-27976, Fixed undefined variable 2011-06-30 17:46:44 +08:00
Andrew Davis (andyjdavis) d097ad564d MDL-27829 blocks: added a warning to the block settings page that displays when the block was using a block type we dont let users select anymore 2011-06-30 17:44:50 +08:00
Dongsheng Cai 8819c47b64 MDL-28121, fixed deprecated split() function 2011-06-30 17:34:36 +08:00
Andrew Davis (andyjdavis) 096928c79e MDL-27829 blocks: improved backwards compatibility for blocks set to display on page types we dont allow the user to select anymore 2011-06-30 16:42:28 +08:00
Jamie Pratt 5b5206e1cb MDL-28099 Fixed regression as outlined in tracker. 2011-06-30 14:34:10 +07:00
Andrew Davis (andyjdavis) 800688bd1e MDL-27829 blocks: added code to make the page type restrictions for blocks on admin setting pages make sense 2011-06-30 15:32:34 +08:00
Sam Hemelryk 54ae8ed032 Merge branch 'MDL-24684_master' of git://github.com/stronk7/moodle 2011-06-30 10:49:29 +08:00
Eloy Lafuente (stronk7) b7a45fa782 MDL-24684 backup - basic protection against time/memory limits 2011-06-30 03:37:30 +02:00
Eloy Lafuente (stronk7) 4ea6ce7e39 Merge branch 'MDL-28044' of git://github.com/nebgor/moodle 2011-06-30 01:59:49 +02:00
Eloy Lafuente (stronk7) 9829fa8261 Merge branch 'MDL-15587-head' of git://github.com/grabs/moodle 2011-06-30 01:54:19 +02:00
Eloy Lafuente (stronk7) 06a7f952cb Merge branch 'MDL-19864_database_excel_export' of git://github.com/andyjdavis/moodle 2011-06-30 01:16:57 +02:00
Eloy Lafuente (stronk7) 0bde123fa8 Merge branch 'wip-MDL-27431-master' of git://github.com/Beedell/moodle 2011-06-30 01:13:34 +02:00
Eloy Lafuente (stronk7) ca2b89d5df Merge branch 'master_MDL-28016' of git://github.com/danmarsden/moodle 2011-06-30 01:10:51 +02:00
Eloy Lafuente (stronk7) a092e9bc42 Merge branch 'wip-MDL-25249-master-r1' of git://github.com/samhemelryk/moodle 2011-06-30 00:55:20 +02:00
Eloy Lafuente (stronk7) 586fecb80b Merge branch 'MDL-27149' of git://github.com/timhunt/moodle 2011-06-30 00:20:43 +02:00
Eloy Lafuente (stronk7) 497ad94adb Merge branch 'MDL-28055' of git://github.com/timhunt/moodle 2011-06-30 00:02:51 +02:00
Eloy Lafuente (stronk7) f684dce013 Merge branch 'MDL-28108' of git://github.com/timhunt/moodle 2011-06-30 00:00:12 +02:00
Eloy Lafuente (stronk7) 6e344148c1 MDL-27418 qtype numerical - minor whitespace fix 2011-06-29 23:57:08 +02:00
Eloy Lafuente (stronk7) 88933f08cb Merge branch 'MDL-27418' of git://github.com/timhunt/moodle 2011-06-29 23:51:33 +02:00
Eloy Lafuente (stronk7) 0f744d2ca4 Merge branch 'MDL-27430' of git://github.com/timhunt/moodle 2011-06-29 23:33:01 +02:00
Eloy Lafuente (stronk7) be13d37a02 Merge branch 'MDL-28074' of git://github.com/timhunt/moodle 2011-06-29 23:09:13 +02:00
Tim Hunt 05a5c2f9a2 MDL-28108 oops! I got the cut-off percentage wrong. 2011-06-29 22:02:59 +01:00
Tim Hunt 56a4ae4673 MDL-28074 question preview should set context/course/cm properly.
1. We need this so that, for example, when previewing a question from
the quiz editing page, the preview uses the filter settings, theme and
language set for that quiz and course.
2011-06-29 21:25:56 +01:00
Eloy Lafuente (stronk7) f4eeee5bd5 Merge branch 'pagelib_single' of git://github.com/marxjohnson/moodle 2011-06-29 21:00:06 +02:00
Eloy Lafuente (stronk7) 76feb947b6 Merge branch 'MDL-28028' of git://github.com/timhunt/moodle 2011-06-29 20:58:27 +02:00
Eloy Lafuente (stronk7) f0548d18bf Merge branch 'MDL-28035' of git://github.com/timhunt/moodle 2011-06-29 20:47:16 +02:00
Eloy Lafuente (stronk7) fae9cd077c Merge branch 'MDL-28037' of git://github.com/timhunt/moodle 2011-06-29 20:44:49 +02:00
Eloy Lafuente (stronk7) 282a0a713e Merge branch 'MDL-28087_friendly_jabber' of git://github.com/andyjdavis/moodle 2011-06-29 20:11:17 +02:00
Eloy Lafuente (stronk7) 1333c05ebe Merge branch 's11_MDL-27936_send_message_master' of github.com:dongsheng/moodle
Conflicts:
	lib/db/services.php
	version.php
2011-06-29 20:00:49 +02:00
Eloy Lafuente (stronk7) 3a4c390c53 Merge branch 's11_MDL-27976_get_users_by_courseid_master' of github.com:dongsheng/moodle 2011-06-29 19:50:39 +02:00
Eloy Lafuente (stronk7) 9cdff2b2a5 Merge branch 'wip-MDL-27988-master' of git://github.com/samhemelryk/moodle 2011-06-29 18:12:18 +02:00
Tim Hunt 3a6eb8efdf MDL-27418 qtype numerical correct grading of 'right value, wrong unit' reponses.
Probably easiest to explain by example: If the right answer is 1.23 m with alternate
unit 100 cm = 1m then the completely right answers are 1.23 m and 123 cm.
Right answer, wrong unit responses include 1.23, 1.23 frogs and 1.23 cm.
123 m is not considered to have the correct numerical value.

We may well re-consider the way this works in a future version of Moodle.

Unit grading was not implemented before Moodle 2.0. In Moodle 2.0, the unit grading
was more permissive than here, for example 123 m would have been graded correctly in
2.0. However, I'm not sure I follow the rationale for that.
2011-06-29 15:41:56 +01:00
Eloy Lafuente (stronk7) ae5b0cde4d Merge branch 'MDL-27955_HEAD' of git://github.com/rwijaya/moodle 2011-06-29 15:42:26 +02:00
Eloy Lafuente (stronk7) 0822174adc Merge branch 'MDL-27812_front_page_blocks' of git://github.com/andyjdavis/moodle 2011-06-29 15:29:14 +02:00
Eloy Lafuente (stronk7) b28c4c22f3 Merge branch 'wip-mdl-27964-master' of git://github.com/rajeshtaneja/moodle 2011-06-29 15:07:07 +02:00
Eloy Lafuente (stronk7) c5401e743d Merge branch 'MDL-28072_coursereport_undefined_function' of git://github.com/andyjdavis/moodle 2011-06-29 15:01:50 +02:00
Jamie Pratt b1eca34453 MDL-28099 fixes issue with filepicker and element names with index not passing
value for draftitemid.
2011-06-29 18:39:15 +07:00
Rossiani Wijaya abd5c24e28 MDL-27955 lesson module: fixed error for reviewing lesson and update string to continue or finish reviewing 2011-06-29 18:18:52 +08:00
Sam Hemelryk f86e19b1ee Merge branch 'MDL-27829_block_pagetype_master' of git://github.com/andyjdavis/moodle 2011-06-29 17:04:13 +08:00
Dan Marsden 444ff001a1 SCORM MDL-28016 - fix redirect call to use proper moodle_url 2011-06-29 20:31:19 +12:00
Dongsheng Cai 014792901d MDL-27976 webservice moodle_user_get_users_by_courseid webservice 2011-06-29 15:41:31 +08:00
Sam Hemelryk 7bbf41661b MDL-27988 backup grade: Calculated grade items calculation references now corrected and idnumber restore improved 2011-06-29 15:26:48 +08:00
Sam Hemelryk 364f43b0b4 MDL-25249 calendar: Fixed regression in set.php 2011-06-29 15:08:27 +08:00
David Mudrak af66e7fea3 MDL-28006 code cleanup - there is nothing to do for grade_settings 2011-06-29 09:08:25 +02:00
David Mudrak ddefec8d14 MDL-28006 moodle1 converter supports outcomes 2011-06-29 08:55:43 +02:00
Sam Hemelryk 797cedc7cf MDL-25249 Tidied up calendar variable passing and removed session abuse 2011-06-29 14:50:38 +08:00
Tim Hunt c5aaf41739 MDL-27418 add unit tests for the problem case identified by Pierre. 2011-06-29 06:55:45 +01:00
Rajesh Taneja 912ea4bc84 MDL-27964 lesson - Quick fix added for importing question files in lesson module 2011-06-29 13:52:52 +08:00
Andrew Davis (andyjdavis) 26a0af08e0 MDL-28072 coursereport: added a missing require_once() 2011-06-29 12:59:44 +08:00
Andrew Davis (andyjdavis) 5daa7279d4 MDL-28087 assignment: made the jabber notification of assignment grading better 2011-06-29 11:29:11 +08:00
Dongsheng Cai 4de00da791 MDL-27936, send_message webservice should respect contact settings, improve readability, rename it to moodle_message_send_instantmessages 2011-06-29 11:26:16 +08:00
Aparup Banerjee eea3341dfc MDL-28044 general - updated print_error() link to point to new versioned docs link. 2011-06-29 10:55:02 +08:00
Andrew Davis (andyjdavis) 3d942d5054 MDL-19864 database: temporarily commenting out the excel export option as its broken and cannot be quickly fixed. Use Open Office option for the time being. 2011-06-29 10:35:31 +08:00
David Mudrak d98100e407 MDL-28006 moodle1 converter supports grade letters 2011-06-29 01:06:59 +02:00
David Mudrak cfab209904 MDL-28006 moodle1 converter supports grade categories and non-module grade items 2011-06-29 01:06:10 +02:00
David Mudrak 544e0d5972 MDL-28006 moodle1 converter supports activity module grade items 2011-06-29 00:11:05 +02:00
David Mudrak acc9a7b9e2 MDL-28006 moodle1 converter provides new get_stash_or_default() method 2011-06-29 00:11:05 +02:00
David Mudrak 477f1d2b78 MDLQA-1147 Fixed a typo in the exception class name
Thanks Steve Turley for spotting and reporting this during the QA.
2011-06-29 00:10:59 +02:00
Eloy Lafuente (stronk7) cddb428722 Merge branch 'MDL-27990_assignment_notifications' of git://github.com/andyjdavis/moodle 2011-06-28 22:14:54 +02:00
Tim Hunt f040d4b046 MDL-27418 add validation to stop students intering a thosands sep.
If it might be confused by a decimal point from another locale.
2011-06-28 18:26:34 +01:00
Tim Hunt 1a1353a5ce MDL-27418 qtype numeric go back to the very permissive number parsing from Moodle 2.0.
I hope my unit tests are good enough to make this change safe.
2011-06-28 18:13:44 +01:00
Tim Hunt eef75d4b31 MDL-27418 qtype_numeric correct output of numbers in locales that use , for decimal point. 2011-06-28 17:37:09 +01:00
Tim Hunt 9048940701 MDL-27418 correct validation of numerical answers in qtype numeric.
This mostly affects locales that use , as decimal point.
2011-06-28 17:36:24 +01:00
Tim Hunt 3aa159706c MDL-27418 fix typo
I really should refactor to eliminate this duplicated code.
2011-06-28 17:34:24 +01:00
Tim Hunt 8566369f63 MDL-27430 qtype numerical put multiple-choice units back to radio buttons
It seems that people want to be able to use <sup> and <sub> here, which
makes sense, so we need to keep radio buttons for questions upgraded
from 2.0. The dropdown menu, however, is also nice, so keep that option
too for new questions.
2011-06-28 16:33:01 +01:00
John Beedell cab2c7ea6e MDL-27431 adjust help icon alt to be same as title for accessibility 2011-06-28 15:54:14 +01:00
Andrew Davis (andyjdavis) d863aecb92 MDL-27812 blocks: fixed the ability to add a block and have it display on all pages 2011-06-28 18:50:03 +08:00
Tim Hunt 8818c826ea MDL-28055 quiz_upgrade_very_old_question_sessions bit does not work because of missing includes. 2011-06-28 10:57:50 +01:00
Sam Hemelryk 5163ac94b0 Merge branch 'MDL-28023_assignment_jabber' of git://github.com/andyjdavis/moodle 2011-06-28 17:04:55 +08:00
Rajesh Taneja b89bf55f84 MDL-27964 lesson - Old file picker is replaced with new filepicker, currently all imported questions will be saved in /temp/questionimport/ where questionbank files are saved. 2011-06-28 12:10:56 +08:00
Andrew Davis (andyjdavis) 83dfca3fa3 MDL-27990 assignment: removed a redundant retrieval of a user preference 2011-06-28 11:08:59 +08:00
Sam Hemelryk e2542e1faf Merge branch 's11_MDL-27866_pix_url_master' of git://github.com/dongsheng/moodle 2011-06-28 10:16:57 +08:00
Rossiani Wijaya 57a4bd032b MDL-27955 lesson module: fixed error for reviewing lesson and update string to continue or finish reviewing 2011-06-28 10:14:55 +08:00
Sam Hemelryk 256383c07d Merge branch 'MDL-28014_head' of git://github.com/grabs/moodle 2011-06-28 10:12:39 +08:00
Tim Hunt 50de6ad083 MDL-28037 Make restoring quiz_attempts more robust.
Don't assume that 0 is unique (even temporarily).
2011-06-27 18:27:12 +01:00
Tim Hunt f997f0fc46 MDL-28028 prevent orphaned question_attempt data from breaking upgrade. 2011-06-27 17:27:40 +01:00
Tim Hunt 0366ef262a MDL-28035 problems with upgrade/restore of ataptive quizzes from 2.0
There were two main problems:

1. The unit tests for upgrading adaptive quiz attempts had slighly the
wrong $expectedqa, and so matching that the upgrade was doing the wrong
thing in certain situations. The main issue was that it was setting
-_try = 1 on the first step, which broke the penalty calculation when
the quiz was regraded. There were also some other subtleties with
incrementing -_try that were not right before.

2. It was possible in 2.0 and earlier for two question_states to get the
same seq_number, and restoring 2.0 backups was rashly assuming that that
was unique.
2011-06-27 17:10:02 +01:00
Eloy Lafuente (stronk7) 7fde489dae on-demand release 2.1beta 2011-06-27 17:32:54 +02:00
Eloy Lafuente (stronk7) 34ff02bff0 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-06-27 17:31:42 +02:00
Eloy Lafuente (stronk7) 32038aaccc Merge branch 'MDL-28033' of git://github.com/timhunt/moodle 2011-06-27 17:12:40 +02:00
Eloy Lafuente (stronk7) 3bdc10150c Merge branch 'MDL-28049' of git://github.com/timhunt/moodle 2011-06-27 15:56:03 +02:00
sam marshall a854bca3cf MDL-28021 Completion system can create inconsistent database rows
This change includes:

(1) update deletes older versions of inconsistent rows
(2) update drops one index and replaces it with a new unique index
(3) fixed to ensure that when it decides whether to insert or update
    it uses current database state and not cached info
(4) unit tests updated to test #3

Conflicts:

	lib/db/upgrade.php
	version.php
2011-06-27 15:25:13 +02:00
Tim Hunt 19f7bb5b7e MDL-28049 conditional include so xml question format can work for both lesson and 3rd party qtypes.
This is a regression caused by MDL-27956.
2011-06-27 13:59:57 +01:00
Tim Hunt 2779cc7d89 MDL-28033 Fatal error upgrading form 1.9 to 2.1 due to missing include. 2011-06-27 13:43:16 +01:00
Eloy Lafuente (stronk7) 8e0733f4d8 Merge branch 'unsigned_fixes' of git://github.com/stronk7/moodle 2011-06-27 14:06:13 +02:00
Eloy Lafuente (stronk7) f4fd96a848 MDL-28032 database - finally question->defaultmark goes signed. Changing prev commit. 2011-06-27 11:37:34 +02:00
Eloy Lafuente (stronk7) f83776f2ec Merge branch 'wip-MDL-27809-master-r7' of git://github.com/samhemelryk/moodle 2011-06-27 10:11:02 +02:00
Sam Hemelryk 29e2d0a820 Merge branch 'MDL-26199' of git://github.com/timhunt/moodle 2011-06-27 16:03:48 +08:00
Sam Hemelryk 35d4d85dc4 Merge branch 'unsigned_fixes' of git://github.com/stronk7/moodle 2011-06-27 15:45:41 +08:00
Sam Hemelryk a3f8860d6c Merge branch 'quizreport_langstrings' of git://github.com/stronk7/moodle 2011-06-27 15:30:11 +08:00
Sam Hemelryk da17baf76a Merge branch 'backup_bump' of git://github.com/stronk7/moodle 2011-06-27 15:28:49 +08:00
Mark Johnson c78f8443e6 MDL-28025 pagelib improve error message when $PAGE->context isn't set 2011-06-27 08:22:43 +01:00
Sam Hemelryk 3992a46e89 MDL-27809 navigation: Fixed up a couple of minor issues after peer-review 2011-06-27 15:11:28 +08:00
Andrew Davis (andyjdavis) b38e2e28a1 MDL-27829 blocks: altered the algorithm used to find plugin page types 2011-06-27 12:27:41 +08:00
Andrew Davis (andyjdavis) 0f1751b01b MDL-28023_assignment_jabber assignment: added context url to improve the jabber notifications 2011-06-27 11:08:21 +08:00
AMOS bot c31745211a Automatically generated installer lang files 2011-06-27 00:55:10 +00:00
Eloy Lafuente (stronk7) a8e6c39e9f Merge branch 'MDL-28024' of git://github.com/timhunt/moodle 2011-06-27 01:44:40 +02:00
Eloy Lafuente (stronk7) f1231efec4 MDL-28038 backup - bump 2011-06-26 19:15:06 +02:00
Eloy Lafuente (stronk7) 8b95f430b5 MDL-28036 quiz - add some missing (reports) lang strings 2011-06-26 18:22:23 +02:00
Eloy Lafuente (stronk7) a0628c68de MDL-28032 database - fix some sign inconsistencies 2011-06-26 13:12:42 +02:00
Eloy Lafuente (stronk7) d466e23c38 MDL-28032 database - retrofit signed info for decimal/float (improves diffs detection) 2011-06-26 12:54:16 +02:00
Andrew Davis (andyjdavis) fa09b5a9a3 MDL-28023 assignment: assignment wasnt supplying all the data necessary to produce a meaningful jabber notification 2011-06-25 13:12:48 +08:00
Andreas Grabs da457a944d MDL-15587 - Course Participation report for a feedback activity 2011-06-24 23:13:00 +02:00
Tim Hunt 5cc532e8e9 MDL-28024 adaptive qbehaviour. Displayed penalties not rounded correctly. 2011-06-24 14:26:49 +01:00
Rossiani Wijaya 560f549593 MDL-27922 lesson mod: fixed string for activity link 2011-06-24 16:50:31 +08:00
Sam Hemelryk e26507b361 MDL-27809 navigation: Reworked the caching within navigation and improved the ordering of events in order to reduce the use of session without serious impact on serverload 2011-06-24 16:42:41 +08:00
Andrew Davis (andyjdavis) be34802d23 MDL-27990 assignment: Some small modifications to the assignment notification code
AMOS BEGIN
 MOV [enableemailnotification,mod_assignment],[enablenotification,mod_assignment]
 MOV [enableemailnotification_help,mod_assignment],[enablenotification_help,mod_assignment]
AMOS END
2011-06-24 14:19:40 +08:00
Eloy Lafuente (stronk7) 50d32a2baf on-demand release 2.1beta 2011-06-24 00:48:51 +02:00
Eloy Lafuente (stronk7) 2e27e2d64a Merge branch 'MDL-28012' of git://github.com/timhunt/moodle 2011-06-24 00:31:53 +02:00
Eloy Lafuente (stronk7) 89ad7c078e Merge branch 'MDL-27827_head' of git://github.com/grabs/moodle 2011-06-24 00:21:58 +02:00
Eloy Lafuente (stronk7) 4965f02087 Merge branch 's11_MDL-27999_wiki_preview_master' of github.com:dongsheng/moodle 2011-06-24 00:13:48 +02:00
Eloy Lafuente (stronk7) 06c8cef4c2 Merge branch 'wip-MDL-27962-master' of git://github.com/samhemelryk/moodle 2011-06-24 00:02:20 +02:00
Eloy Lafuente (stronk7) fcb36b65ec Merge branch 'wip-MDL-27958-master' of git://github.com/samhemelryk/moodle 2011-06-23 23:57:55 +02:00
Eloy Lafuente (stronk7) adecb9de9a Merge branch 'wip-MDL-27940-master' of git://github.com/samhemelryk/moodle 2011-06-23 23:54:32 +02:00
Andreas Grabs b7030c3def MDL-28014 - unpropitious use of bcmod() 2011-06-23 21:22:38 +02:00
Andreas Grabs 65ee5d7dad MDL-27827 - Missing messageprovider:message language string 2011-06-23 20:33:12 +02:00
Tim Hunt c5da295b85 MDL-28012 Quiz editing status line can display screwy dates. 2011-06-23 18:53:07 +01:00
Eloy Lafuente (stronk7) 9867711fd7 on-demand release 2.1beta 2011-06-23 18:24:57 +02:00
stabijoh 5fc36f559f MDL-27998 canvas theme - fix font sizes 2011-06-23 17:28:29 +02:00
Jamie Pratt f271a66776 NOBUG added floor, ceil and round to evalmath.class.php and added
tests.
2011-06-23 12:33:40 +01:00
Jamie Pratt 950dc9145b NOBUG implemented seeding of 'random' functions. 2011-06-23 12:33:38 +01:00
jamiepratt 6efaec1e15 NOBUG move function definition is_valid_var_or_func_name above 'HERE
BE INTERNAL METHODS' line.
2011-06-23 12:33:36 +01:00
jamiepratt 06329db453 NOBUG updated readme file with changes made to code 2011-06-23 12:33:34 +01:00
jamiepratt 13264f3505 MDL-27162 "localize strings in mathslib" needed to add mathslib file
to list of core language files in moodlelib.
2011-06-23 12:33:32 +01:00
jamiepratt 94a67b3992 Make changes in functionality, originally implemented by Petr to make
maths class suitable for use in grade book, dependent on boolean
switches in constructor which default to having the changes 'on'.
2011-06-23 12:33:30 +01:00
jamiepratt c4f7eecfc5 MDL-27139 "mathslib used by gradebook incorrectly evaluating
expressions" simple fix needed to prevent problem with operator
following expression with no operands such as pi().
2011-06-23 12:33:28 +01:00
Eloy Lafuente (stronk7) b4bb80b7d6 weekly release 2.1beta 2011-06-23 11:25:48 +02:00
Eloy Lafuente (stronk7) 916cbea67f Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-06-23 11:24:03 +02:00
Eloy Lafuente (stronk7) 5088275347 Merge branch 's10_MDL-27341_flickr_plugin_master' of git://github.com/dongsheng/moodle 2011-06-23 11:16:00 +02:00
Dongsheng Cai 14b2d8d865 MDL-26677 flickr repo - fix undefined index usewatermarks 2011-06-23 17:13:46 +08:00
Eloy Lafuente (stronk7) 618d2ecf48 Merge branch 'MDL-27920_grade_export' of git://github.com/andyjdavis/moodle 2011-06-23 10:15:07 +02:00
Andrew Davis (andyjdavis) 8de7c8a7ff MDL-27920 gradebook: fixes following integration review 2011-06-23 15:58:44 +08:00
Tim Hunt f19ed874ee MDL-26199 further changes needed to make the question bank navigation behave. 2011-06-23 07:18:49 +01:00
Tim Hunt 8356e6cff8 MDL-26199 keep track of the current category when switching pages in the question bank. 2011-06-23 07:18:49 +01:00
Dongsheng Cai 7cacd29fac MDL-27999 mod wiki, fixed broken image in preview 2011-06-23 13:52:14 +08:00
Sam Hemelryk 8b05c5e2bd MDL-27962 Fixed typo in tablelib preventing columns from being collapsed 2011-06-23 13:33:28 +08:00
Sam Hemelryk 7313ac6c7a MDL-27958 Added missing set_context call which would cause errors for all contexts below course 2011-06-23 12:16:09 +08:00
Sam Hemelryk d38a4849b7 MDL-27940 navigaiton: Fixed an ordering problem so that when a parent was set for a node the nodes activity was accounted for 2011-06-23 11:29:26 +08:00
Sam Hemelryk 58c724a613 Merge branch 'MDL-27169_master' of git://github.com/stronk7/moodle 2011-06-23 10:43:57 +08:00
AMOS bot 99774e998c Automatically generated installer lang files 2011-06-23 00:55:12 +00:00
Eloy Lafuente (stronk7) 5973f0b53d MDL-26677 repositories - clean one debugging var_dump() 2011-06-23 02:04:30 +02:00
Eloy Lafuente (stronk7) 39354db055 Merge branch 's10_MDL-27341_flickr_plugin_master' of git://github.com/dongsheng/moodle 2011-06-23 02:02:24 +02:00
Eloy Lafuente (stronk7) 4c15bde8f1 Merge branch 'MDL-27948' of git://github.com/timhunt/moodle 2011-06-23 01:14:19 +02:00
Eloy Lafuente (stronk7) daf4cf26f7 Merge branch 'MDL-27929' of git://github.com/timhunt/moodle 2011-06-23 00:51:16 +02:00
Eloy Lafuente (stronk7) e345969ae2 Merge branch 'MDL-27937' of git://github.com/timhunt/moodle 2011-06-23 00:46:29 +02:00
Eloy Lafuente (stronk7) e059fa90b1 Merge branch 'MDL-27973' of git://github.com/timhunt/moodle 2011-06-23 00:43:11 +02:00
Eloy Lafuente (stronk7) 4d05c972ea Merge branch 'MDL-27974' of git://github.com/timhunt/moodle 2011-06-23 00:37:13 +02:00
Eloy Lafuente (stronk7) a2854474ce Merge branch 'MDL-27979' of git://github.com/timhunt/moodle 2011-06-23 00:34:03 +02:00
Eloy Lafuente (stronk7) 63c4530f0f Merge branch 'MDL-27991' of git://github.com/timhunt/moodle 2011-06-23 00:29:28 +02:00
Eloy Lafuente (stronk7) aad4048bd7 Merge branch 'MDL-27196-hardcodedstrings' of git://github.com/mudrd8mz/moodle 2011-06-23 00:25:27 +02:00
Tim Hunt da72991636 MDL-27979 Should be an edit link for each question when previewing or reviewing a quiz. 2011-06-22 21:07:40 +01:00
Tim Hunt eb624cf7e0 MDL-27937 Calculated tolerance field should have the label Tolerance +- 2011-06-22 19:49:39 +01:00
Tim Hunt 87af936b22 MDL-27991 End test... should be Finish attempt... to be more Moodly 2011-06-22 19:24:45 +01:00
Tim Hunt 35d5f1c28d MDL-27948 The question engine should use recordsets to load attempt data
This should be good for performance (memory usage). It also avoids having to construct a meaningless, unique, first column, which is a pain on MyQSL.
2011-06-22 18:53:15 +01:00
Tim Hunt 2fa66bdf71 MDL-27929 question_attempts.minfraction should be signed! 2011-06-22 18:48:05 +01:00
Eloy Lafuente (stronk7) a8f3f4ccf1 MDL-27169 filepicker - add explicit enctype to the js upload form. Credit goes to J Ross Nicoll, thanks! 2011-06-22 19:30:57 +02:00
David Mudrak e4394d00c4 MDL-27196 workshop - hardcoded strings in the random allocator 2011-06-22 17:58:48 +02:00
David Mudrak 069de416af MDL-27196 workshop - hardcoded string in the number of errors strategy form 2011-06-22 17:40:40 +02:00
Tim Hunt ef01d2c8f5 MDL-27973 hopefully fix QTI2 question export.
Well, at least fix the most obvious notices.
2011-06-22 15:56:05 +01:00
Tim Hunt 3c78184552 MDL-27974 problems with gift question import/export.
Double-escapeing in match export and not initialising combined feedback on import.

Also remove a lot of redundant breaks.
2011-06-22 15:26:34 +01:00
Eloy Lafuente (stronk7) d2a5e2278c Merge branch 'wip-mdl-26281-master' of git://github.com/rajeshtaneja/moodle 2011-06-22 14:27:46 +02:00
Eloy Lafuente (stronk7) f96147c291 Merge branch 'wip-mdl-27956-master' of git://github.com/rajeshtaneja/moodle 2011-06-22 14:21:01 +02:00
Eloy Lafuente (stronk7) fc57ca6a54 Merge branch 'MDL-27969-randomallocator' of git://github.com/mudrd8mz/moodle 2011-06-22 14:15:52 +02:00
Eloy Lafuente (stronk7) 01acbc42e1 Merge branch 'MDL-27073_multilang-custommenu' of git://github.com/mudrd8mz/moodle 2011-06-22 14:11:18 +02:00
David Mudrak 9153248d22 MDL-27969 workshop - prevent PHP notices in the random allocator
When generating the output of the allocation results, the names of
reviewers and authors are obtained based on the current state of assigned
roles and the 'musthavesubmission' setting. Therefore, when we want to
display information about a re-used allocation, the name of the author
or the name of the author may not be available.

In case of reviewers, we first try to reload the list including the
users without own submission. If it does not help, we just display the
id of the user instead of the name. In case of authors, we just display
the id the user. I can't see much point of eventual fetching the user
record from the database just to populate the list that almost no-one
reads anyway.
2011-06-22 12:03:56 +02:00
Sam Hemelryk a0977339b0 Merge branch 'MDL-27952' of git://github.com/stronk7/moodle 2011-06-22 17:20:49 +08:00
Rajesh Taneja 92c93432bd MDL-26281 Lesson - Fixed short answer with apostrophe and other html formats 2011-06-22 17:17:55 +08:00
Sam Hemelryk 115910dccd Merge branch 'MDL-27966_master' of git://github.com/stronk7/moodle 2011-06-22 17:15:10 +08:00
Sam Hemelryk df839f28dc Merge branch 'MDL-25811_master' of git://github.com/stronk7/moodle 2011-06-22 17:06:12 +08:00
Andrew Davis (andyjdavis) b822fc8511 MDL-27829 blocks: added some brains to generate_page_type_patterns() so that it can handle special cases like course reports 2011-06-22 17:01:21 +08:00
Rajesh Taneja ba15c346b1 MDL-27956 Lesson - Fixed strings and readquestions scope 2011-06-22 09:11:32 +08:00
Eloy Lafuente (stronk7) 1e3ddd6bc4 Merge branch 's10_MDL-27341_flickr_json_error_master' of git://github.com/dongsheng/moodle 2011-06-22 03:06:14 +02:00
Eloy Lafuente (stronk7) 92f753eb99 Merge branch 'MDL-27860' of git://github.com/timhunt/moodle 2011-06-22 02:57:50 +02:00
Eloy Lafuente (stronk7) 96dc283b53 Merge branch 'MDL-27914' of git://github.com/nebgor/moodle 2011-06-22 02:52:50 +02:00
Eloy Lafuente (stronk7) 8032990022 Merge branch 'MDL-26948' of git://github.com/timhunt/moodle 2011-06-22 02:35:25 +02:00
Eloy Lafuente (stronk7) 6057bf5b05 MDL-27810 portfolio: Added ->portfolioenabled check to one more place 2011-06-22 02:10:11 +02:00
Eloy Lafuente (stronk7) 555cc4b4a0 Merge branch 'wip-MDL-27810-master' of git://github.com/samhemelryk/moodle 2011-06-22 01:56:30 +02:00
Eloy Lafuente (stronk7) 2fc832a1ae Merge branch 'MDL-27906_HEAD' of git://github.com/rwijaya/moodle 2011-06-22 01:52:57 +02:00
Eloy Lafuente (stronk7) f5a6bf5e35 Merge branch 'master_MDL-27959' of git://github.com/danmarsden/moodle 2011-06-22 01:35:15 +02:00
David Mudrak c1ab2b109e MDL-27970 workshop submission can't be edited after the deadline even if late submissions are allowed 2011-06-22 00:34:45 +02:00
Eloy Lafuente (stronk7) ea1e73843b MDL-27966 timezones - updated to 2011g version + fix minor notice 2011-06-21 16:23:24 +02:00
Aparup Banerjee 38adb0def9 MDL-27914 data fixed image gallery template CSS selector for #singleimage to include img tag and set height to auto 2011-06-21 14:22:00 +08:00
Dan Marsden b447192e8f Choice MDL-27959 invalid strings 2011-06-21 16:39:46 +12:00
Andrew Davis (andyjdavis) 7ce5df8620 MDL-27920 gradebook: export was always excluding course totals and xml export was failing 2011-06-21 11:13:34 +08:00
Sam Hemelryk 6708a1f525 MDL-27810 portfolio: Added ->portfolioenabled checks before creating portfolio buttons to avoid initialising portfolio requirements 2011-06-21 10:35:53 +08:00
Eloy Lafuente (stronk7) beae4a6684 MDL-25811 automated backups - clean running status after 90 mins of inactivity 2011-06-21 02:41:12 +02:00
Eloy Lafuente (stronk7) 1b8655ab0f MDL-27952 quiz - fix navigation for users having 0 nodes in module nav 2011-06-21 02:38:04 +02:00
Eloy Lafuente (stronk7) 3552484b91 on-demand release 2.1beta 2011-06-21 02:31:40 +02:00
Eloy Lafuente (stronk7) b3c1b5f1a6 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-06-21 02:30:37 +02:00
Eloy Lafuente (stronk7) 9192e9fe45 Merge branch 'master_MDL-27366' of git://github.com/danmarsden/moodle 2011-06-20 23:38:47 +02:00
Eloy Lafuente (stronk7) 5e811bb000 Merge branch 's11_MDL-27941_partipants_page_master' of github.com:dongsheng/moodle 2011-06-20 18:44:08 +02:00
Eloy Lafuente (stronk7) ca31e935e6 Merge branch 'wip-MDL-27899-master' of git://github.com/samhemelryk/moodle 2011-06-20 18:38:42 +02:00
Eloy Lafuente (stronk7) aed0dbe70a Merge branch 'MDL-27942' of git://github.com/timhunt/moodle 2011-06-20 17:05:54 +02:00
Eloy Lafuente (stronk7) 8edbfba909 Merge branch 'MDL-24594_wip' of git://github.com/timhunt/moodle 2011-06-20 12:48:55 +02:00
Eloy Lafuente (stronk7) 6f9297b48b Merge branch 'MDL-27915' of git://github.com/timhunt/moodle 2011-06-20 12:39:19 +02:00
Eloy Lafuente (stronk7) ee37607188 Merge branch 'MDL-27925' of git://github.com/timhunt/moodle 2011-06-20 11:56:34 +02:00
Sam Hemelryk 0ebb526f85 MDL-27899 Moved initialise_fullme during setup to after sam has been initialised 2011-06-20 17:40:03 +08:00
Tim Hunt e28bbd8919 MDL-27942 Use picture not displayed during quiz attempts. 2011-06-20 10:26:01 +01:00
Dongsheng Cai 3712f7aaca MDL-27941 Fixed a bug introduced by block setting improvement, the
context should be course context
2011-06-20 16:30:16 +08:00
Sam Hemelryk 8a322fc19b Merge branch 'MDL-24255' of git://github.com/timhunt/moodle 2011-06-20 15:51:59 +08:00
Rossiani Wijaya 18d63ffb67 MDL-27906 calendar event: fixed retrieving coursemodule by replacing get_coursemodule_from_id() to get_coursemodule_from_instance() 2011-06-20 14:32:47 +08:00
Sam Hemelryk fe70d8814b Merge branch 's11_MDL-27880_get_course_participants_ws' of git://github.com/dongsheng/moodle 2011-06-20 14:31:23 +08:00
Sam Hemelryk 8e307054d3 Merge branch 'MDL-27907' of git://github.com/timhunt/moodle 2011-06-20 14:10:41 +08:00
Dongsheng Cai 4be8a7d55c MDL-27866, set page context for $OUTPUT->pix_url 2011-06-20 13:52:03 +08:00
Dongsheng Cai ea4e96c248 MDL-27880
1. moodle_user_get_course_participants_by_id web service to get user details in course context
2. Fixed the proformance issues of get_users_by_id web service
2011-06-20 13:46:47 +08:00
Sam Hemelryk 70e35c4d1d Merge branch 'MDL-27916' of git://github.com/timhunt/moodle 2011-06-20 13:45:12 +08:00
Sam Hemelryk 1533a25e51 Merge branch 'MDL-27927' of git://github.com/timhunt/moodle 2011-06-20 13:15:37 +08:00
Sam Hemelryk 8ffaf7b4dd Merge branch 'MDL-27928' of git://github.com/timhunt/moodle 2011-06-20 13:06:10 +08:00
Sam Hemelryk 3fc7c06b99 Merge branch 'quiz_feedback_for_grade' of git://github.com/stronk7/moodle 2011-06-20 13:02:02 +08:00
AMOS bot e0dd2857ea Automatically generated installer lang files 2011-06-20 00:55:10 +00:00
Eloy Lafuente (stronk7) 1b327dec8a MDL-27932 quiz - fix some calls to quiz_feedback_for_grade() 2011-06-20 01:46:29 +02:00
Eloy Lafuente (stronk7) f2113d66cd Merge branch 'MDL-27910' of git://github.com/timhunt/moodle 2011-06-20 01:26:03 +02:00
Eloy Lafuente (stronk7) b9412668c4 Merge branch 'MDL-27902' of git://github.com/timhunt/moodle 2011-06-20 01:21:18 +02:00
Tim Hunt 460797abbd MDL-27928 missing string in the question bank UI.
AMOS BEGIN
 MOV [categorymove,mod_quiz],[categorymove,question]
AMOS END
2011-06-19 10:44:44 +01:00
Tim Hunt 635971c750 MDL-27927 qtype_multianswer remove hard-coded string. 2011-06-19 10:34:39 +01:00
Tim Hunt 928e7d2a33 MDL-27927 Fix invalid HTML in the multianswer editing form. 2011-06-19 10:27:24 +01:00
AMOS bot e97eaa907e Automatically generated installer lang files 2011-06-19 00:55:21 +00:00
Tim Hunt 2d6829727d MDL-24255 Use the proper editor element for manual grading comments.
It would be nice if someone imporoved the API for using the HTML editor outside formslib.
2011-06-18 21:15:40 +01:00
Tim Hunt 3461dbad9e MDL-27860 count quiz attempts properly when checking if a new attempt is allowed. 2011-06-18 18:23:49 +01:00
Tim Hunt bc502c166c MDL-27908 quiz settings menu, make the order more logical. 2011-06-18 16:27:21 +01:00
Tim Hunt 01d203566f MDL-27925 Give meaningful keys to all the standard navigation mod settings nodes. 2011-06-18 16:24:31 +01:00
Tim Hunt 0c2f94e081 MDL-27925 A way to get the all the keys of the child nodes of a node. 2011-06-18 16:23:53 +01:00
Tim Hunt 88ef9d0b2b MDL-27916 Question state was described wrongly in adaptive and immediate feedback behaviours. 2011-06-18 13:29:39 +01:00
Tim Hunt fb17f129a3 MDL-27907 calculated* editing form inheritance mix up.
Lead to duplicate fields appearing on the editing forms.
2011-06-18 12:53:32 +01:00
Tim Hunt e50a5813b7 MDL-27910 quiz stupid typo in a DB query 2011-06-18 11:37:08 +01:00
AMOS bot 9ba87c6c8c Automatically generated installer lang files 2011-06-18 00:55:15 +00:00
Tim Hunt d610cb8980 MDL-27915 improved debuginfo for some file exceptions. 2011-06-17 19:46:09 +01:00
Tim Hunt f263d4935f MDL-27913 Stray whitespace in backup. 2011-06-17 19:37:20 +01:00
Tim Hunt 35c9b65274 MDL-24594 Fix some issues with the display of HTML choices.
The most significant issue is that the HTML editor alwasy wraps <p> tags round the input, but that is not appropriate for the choices. It is especially not appropriate because we want to display the choices in a <lable> for accessibility and usability reasons. In valid HTML label can only contain inline elemnts. Therefore, I introduced a make_html_inline method, with a minimal implementation. (It could be improved in future.)

Long term, I think the best option would be a new form field type, editorinline, or something like that. That would be a smaller version of TinyMCE that only lets you enter inline elements.
2011-06-17 18:41:15 +01:00
ppichet 2a6c5c52ee MDL-24594 qtype_multichoice should allow images in the choices.
This change was massively re-worked by Tim Hunt to update Pierre Pichet's original patch for Moodle 2.0 to work in Moodle 2.1.
2011-06-17 18:41:13 +01:00
Eloy Lafuente (stronk7) 7a7d34febb on-demand release 2.1beta 2011-06-17 19:25:39 +02:00
Eloy Lafuente (stronk7) fd8f24dba8 Merge branch 'MDL-27869' of git://github.com/timhunt/moodle 2011-06-17 18:32:00 +02:00
Tim Hunt 83f93ec41f MDL-26948 quiz navigation fake block should have an id to allow styling. 2011-06-17 17:26:28 +01:00
Eloy Lafuente (stronk7) faf1f957ac Merge branch 'MDL-27490' of git://github.com/timhunt/moodle 2011-06-17 17:24:51 +02:00
Tim Hunt fde4560dae MDL-27490 Implement a manage question behaviours admin page
While doing this, I found various bugs in the manages question types admin page, and so fixed them, and updated the code
there to use $OUTPUT and html_writer.

AMOS BEGIN
 MOV [cannotdeletemissingqtype,admin],[cannotdeletemissingqtype,question]
 MOV [cannotdeleteqtypeinuse,admin],[cannotdeleteqtypeinuse,question]
 MOV [cannotdeleteqtypeneeded,admin],[cannotdeleteqtypeneeded,question]
 MOV [deleteqtypeareyousure,admin],[deleteqtypeareyousure,question]
 MOV [deleteqtypeareyousuremessage,admin],[deleteqtypeareyousuremessage,question]
 MOV [deletingqtype,admin],[deletingqtype,question]
 MOV [numquestions,admin],[numquestions,question]
 MOV [numquestionsandhidden,admin],[numquestionsandhidden,question]
 MOV [qtypedeletefiles,admin],[qtypedeletefiles,question]
 MOV [uninstallqtype,admin],[uninstallqtype,question]
AMOS END
2011-06-17 16:21:32 +01:00
David Mudrak 87e0230d0a MDL-27073 Support multi-language content in custom menu 2011-06-17 17:08:33 +02:00
Eloy Lafuente (stronk7) 3c158ff95e Merge branch 'MDL-27868' of git://github.com/timhunt/moodle 2011-06-17 16:45:30 +02:00
Tim Hunt 5cf69d7ff5 MDL-27868 Hints (and some other things) lost when re-editing calculated* questions. 2011-06-17 15:42:03 +01:00
Tim Hunt 3a5da40b4c MDL-27902 quiz reviewquestion.php page needs to be converted to use the renderer. 2011-06-17 15:27:41 +01:00
Eloy Lafuente (stronk7) ff30976ad5 Merge branch 'MDL-27887' of git://github.com/timhunt/moodle 2011-06-17 16:16:58 +02:00
Eloy Lafuente (stronk7) 5df6b3c87e Merge branch 'MDL-27877' of git://github.com/timhunt/moodle 2011-06-17 15:32:10 +02:00
Eloy Lafuente (stronk7) 5017d4dc7d Merge branch 'MDL-27878' of git://github.com/timhunt/moodle 2011-06-17 15:30:16 +02:00
Tim Hunt 5f79a9bcb6 MDL-27898 fix question/engine/simpletest/testdatalib.php unit tests.
Now that MDL-27897 is fixed.
2011-06-17 11:28:05 +01:00
Tim Hunt cfcf9bb4e3 MDL-27897 moodle_database::get_in_or_equal must not use a static variable.
It makes unit testing impossible. Switch to a field.
2011-06-17 11:26:51 +01:00
Eloy Lafuente (stronk7) d037c6bc3c on-demand release 2.1beta 2011-06-17 11:18:33 +02:00
Aparup Banerjee cec76330fe MDL-27500 editor - updated plugin version references, thirdparty version reference and tinymce upgrade readme 2011-06-17 16:52:57 +08:00
Dongsheng Cai da78b10ce0 MDL-27341, fixed flickr public plugin should check
search text, tag and nsid before searching photos
2011-06-17 12:14:05 +08:00
Dongsheng Cai d55846d8bd MDL-26677 fixed undefined index usewatermarks in flickr plugin 2011-06-17 12:11:54 +08:00
Eloy Lafuente (stronk7) 16fd82d8ef MDL-27500 HTML Editor - bump version 2011-06-17 01:11:34 +02:00
Eloy Lafuente (stronk7) 33865a7812 MDL-27500 HTML Editor - deleted 3.3.9.2 build 2011-06-17 01:10:15 +02:00
Eloy Lafuente (stronk7) 7035b80ad9 Merge branch 'MDL-27500' of git://github.com/nebgor/moodle 2011-06-17 01:06:07 +02:00
Dan Marsden 1a70a6470c SCORM MDL-27366 - show content if attemptstatus is set even if closed. 2011-06-17 09:08:26 +12:00
Dan Marsden 6257f66455 SCORM MDL-27366 add attempt status to My home 2011-06-17 09:08:26 +12:00
Tim Hunt a8c8641802 MDL-27887 In developer debug, use uncompressed TinyMCE code. 2011-06-16 18:59:41 +01:00
Tim Hunt 03b2b8fa29 MDL-27869 Fix images in numerical and calculated questions.
Also fix an embarassing TODO in multianswer quetsions.
2011-06-16 18:56:37 +01:00
Tim Hunt 6481b28fe5 MDL-27878 make progress bars fail explicity if you forget to call create(). 2011-06-16 18:55:29 +01:00
Tim Hunt 08c458d10f MDL-27877 question engine progress bars not working. 2011-06-16 18:55:10 +01:00
Eloy Lafuente (stronk7) c3f85e22d9 weekly release 2.1beta 2011-06-16 19:08:04 +02:00
Eloy Lafuente (stronk7) 28e23ea737 fix permissions 2011-06-16 19:06:07 +02:00
Eloy Lafuente (stronk7) 868ca72707 Merge branch 'install_master' of git://github.com/amosbot/moodle 2011-06-16 19:03:16 +02:00
Andrew Davis (andyjdavis) 0f63f2714f MDL-26105 blocks: made the block settings help icons work 2011-06-16 12:05:53 +02:00
Andrew Davis (andyjdavis) 84a1bea972 MDL-26105 blocks: readded the my moodle page's page type list generator function 2011-06-16 12:05:48 +02:00
Aparup Banerjee da4772a276 Backup - mod lesson conversion: apply jumpto fix only to matching question types. 2011-06-16 10:52:55 +02:00
Aparup Banerjee 914bfea245 MDL-27819 Backup - fixed extra answers/jump data.
- fixed unset causing missing property
	- fixed answers empty notice, allowed for page with no answers.
2011-06-16 10:52:45 +02:00
Eloy Lafuente (stronk7) 5c5f71172a Merge branch 'wip-MDL-24355-master' of git://github.com/andyjdavis/moodle 2011-06-16 10:38:49 +02:00
Eloy Lafuente (stronk7) a31a6ce32d MDL-27171 take rid of 2 wrong strings moved to forum/lang/xx/forum.php 2011-06-16 00:43:58 +02:00
Eloy Lafuente (stronk7) 192026f6e5 Merge branch 'MDL-27797_fixup' of git://github.com/timhunt/moodle 2011-06-15 18:18:26 +02:00
Tim Hunt 1f1c60c6a7 MDL-27797 supplimental. Fix two minor issues found by Sam H during testing. 2011-06-15 15:38:46 +01:00
Eloy Lafuente (stronk7) 3420de9f97 Merge branch 'MDL-27865' of git://github.com/timhunt/moodle 2011-06-15 14:37:23 +02:00
Tim Hunt e6d7658337 MDL-27865 fix editing of calculated* questions. 2011-06-15 12:20:26 +01:00
Aparup Banerjee 6df63e4f9b MDL-27819 Backup - mod_lesson conversion: optimized page buffering from all pages to 3 pages 2011-06-15 12:09:33 +02:00
Aparup Banerjee 496a576aa9 MDL-27819 backup - added nextpageid and prevpageid elements to lesson moodle1 backup conversion to 2.x 2011-06-15 12:09:24 +02:00
Eloy Lafuente (stronk7) 84a5f2d26e Merge branch 'MDL-27820' of git://github.com/stronk7/moodle 2011-06-15 11:59:52 +02:00
Eloy Lafuente (stronk7) 07c4c12b80 Merge branch 'wip-mdl-27863-master' of git://github.com/rajeshtaneja/moodle 2011-06-15 11:25:09 +02:00
Eloy Lafuente (stronk7) 5edac71d16 MDL-27820 backup - fix backup of ratings 2011-06-15 11:01:41 +02:00
Rajesh Taneja 42ab2b70a4 MDL-27863 moodlelib - fixed testcase faliure in MDL-27577 2011-06-15 16:34:52 +08:00
Andrew Davis (andyjdavis) 638cf6157a MDL-24355 tag: minor clean up of tags changes 2011-06-15 14:25:38 +08:00
Sam Hemelryk e2a64d832e MDL-24355 Fixed up deletion of tag correlations when deleting tags 2011-06-15 08:36:17 +08:00
Sam Hemelryk 2650c54734 MDL-24355 Added code to delete any tag correlations that wern't just identified 2011-06-15 08:36:17 +08:00
Eloy Lafuente (stronk7) 17073fb53a Merge branch 'MDL-27852' of git://github.com/timhunt/moodle 2011-06-15 02:04:50 +02:00
Eloy Lafuente (stronk7) 31c7fbafa6 Merge branch 'MDL-27797' of git://github.com/timhunt/moodle 2011-06-15 02:00:23 +02:00
Eloy Lafuente (stronk7) a16e137f21 Merge branch 'MDL-27639_wip' of git://github.com/timhunt/moodle 2011-06-15 01:30:59 +02:00
Eloy Lafuente (stronk7) 5800c0fde1 Merge branch 'master_MDL-27858' of git://github.com/danmarsden/moodle 2011-06-15 01:18:05 +02:00
Eloy Lafuente (stronk7) d55ecccb9b Merge branch 'MDL-27848_for_master' of git://github.com/kordan/moodle 2011-06-15 00:48:56 +02:00
Dan Marsden bdea587be2 SCORM MDL-27858 - fix typo 2011-06-15 10:31:52 +12:00
Eloy Lafuente (stronk7) ee1235e7af Merge branch 'backup-convert' of git://github.com/mudrd8mz/moodle 2011-06-14 22:38:27 +02:00
Tim Hunt 8a5d05eea8 MDL-27854 qformat_xml fix import/export of essay questions to include the new options. 2011-06-14 17:36:11 +01:00
AMOS bot 037b313215 Automatically generated installer lang files 2011-06-14 18:25:54 +02:00
Tim Hunt 79e25fb456 MDL-27797 fix all the codechecker issues in format_xml
After this change, I can still export my test course with one of each question type, and all the unit tests still pass.
2011-06-14 17:06:55 +01:00
Tim Hunt 67b8b40cfa MDL-27797 fix bugs with Moodle XML export. 2011-06-14 16:34:14 +01:00
Eloy Lafuente (stronk7) 4a9e5fbe91 MDL-27759 fix whitespace 2011-06-14 17:01:20 +02:00
Tim Hunt ba5a29f528 MDL-27852 local_qeupgradehelper convertquiz.php script was broken. 2011-06-14 15:59:25 +01:00
Eloy Lafuente (stronk7) 90333a972e Merge branch 'wip-mdl-27759-integration-master' of git://github.com/rajeshtaneja/moodle 2011-06-14 16:57:36 +02:00
Eloy Lafuente (stronk7) b0635db229 Merge branch 'MDL-25461-lang-install-link' of git://github.com/mudrd8mz/moodle 2011-06-14 16:43:07 +02:00
Tim Hunt 98a3898efc MDL-27849 fix qtype_multianswer attempt data restore (2.1 -> 2.1).
Also, refactor calculatedmulti restore to avoid duplication.
2011-06-14 15:17:50 +01:00
David Mudrak 07ec4f650b MDL-27708 Fixed the version of language packs to install in 2.1 2011-06-14 13:55:27 +02:00
David Mudrak da84821329 MDL-25461 Installing a language pack is recorded in moodle.org statistics
This patch fixes the URLs for fetching data from download.moodle.org so
that the requests are recorded in statistics collector download.php.
Note that we do not record fetching languages.md5 as we want to
record the real .zip downloads only.
2011-06-14 13:49:09 +02:00
Tim Hunt 5b64e32645 MDL-27585 implement restore of qtype_calculatedmulti 2.1 attempt data 2011-06-14 12:11:23 +01:00
Tim Hunt 18ab06bac5 MDL-27639 restore of attempt data from 2.0 - first attempt.
This is now at the stage where it mostly appears to work, at lease on
one backup file.
2011-06-14 12:11:19 +01:00
Tim Hunt b8882c1334 MDL-27639 add two missing language strings.
Without these strings, important information for debugging is not displayed.
2011-06-14 12:10:27 +01:00
Tim Hunt cee74600fa MDL-27839 supply default qtype_essay_options if they are not present in the XML. 2011-06-14 12:10:25 +01:00
Tim Hunt d7ad6ac4ef MDL-27787 Fix restore of matching quetsions backed up from Moodle 2.0. 2011-06-14 12:10:23 +01:00
Eloy Lafuente (stronk7) 7a5f3a3cc7 MDL-27844 files support added to get_users_by_id() 2011-06-14 12:41:51 +02:00
Eloy Lafuente (stronk7) 260dd13064 Merge branch 'wip-MDL-27825-master' of git://github.com/samhemelryk/moodle 2011-06-14 12:32:47 +02:00
Eloy Lafuente (stronk7) e298ec5162 Merge branch 'MDL-27525' of git://github.com/rwijaya/moodle 2011-06-14 12:11:54 +02:00
Kordan db3b8953ce MDL-27835_for_master fix 2011-06-14 11:04:39 +02:00
Sam Hemelryk e625feaf0b MDL-27825 Improved check of themedesignermode to prevent errors if it isn't set 2011-06-14 15:48:10 +08:00
Eloy Lafuente (stronk7) 9b9d7a6039 MDL-27552 whitespace fixes 2011-06-14 08:55:06 +02:00
Rajesh Taneja b4e29077d3 MDL-27759 Fixed conflicts for integration 2011-06-14 10:45:03 +08:00
Rajesh Taneja ccc77f9152 MDL-27759 user webservice - added new PARAM for timezone PARAM_TIMEZONE, to validate timezone input in webservice while deling with user information 2011-06-14 10:15:00 +08:00
Sam Hemelryk 0e36d0cdf5 Merge branch 'MDL-27834' of git://github.com/kordan/moodle 2011-06-14 09:52:39 +08:00
Sam Hemelryk f74415b926 Merge branch 'MDL-27286_master' of git://github.com/stronk7/moodle 2011-06-14 09:47:52 +08:00
Sam Hemelryk 650142bb9b Merge branch 's11_MDL-27497_upload_master' of github.com:dongsheng/moodle 2011-06-14 09:43:24 +08:00
Sam Hemelryk d8f85b6e8b Merged branch 's11_MDL-27552_token_master' of git@github.com:dongsheng/moodle.git with changes 2011-06-14 09:32:44 +08:00
Eloy Lafuente (stronk7) 25b4558c40 MDL-27822 rename new methods 2011-06-14 00:33:16 +02:00
Tim Hunt be7b29eff6 MDL-27822 old module version should be available in restore_activity_structure_step::define_structure() 2011-06-14 00:30:30 +02:00
Eloy Lafuente (stronk7) a0be4a1fcb Merge branch 'MDL-27065-workshop-categories' of git://github.com/mudrd8mz/moodle 2011-06-13 19:52:49 +02:00
Eloy Lafuente (stronk7) ad08c5632e MDL-27286 recent files repo - fix for oracle and cleanup 2011-06-13 18:52:39 +02:00
Kordan b2d606a4e3 MDL-27834 fix 2011-06-13 14:49:26 +02:00
Eloy Lafuente (stronk7) 269c173e81 whitespace fixes 2011-06-13 12:21:48 +02:00
Dongsheng Cai 13ea96c40b MDL-27552 get webservice token by providing username and password 2011-06-13 17:41:56 +08:00
David Mudrak 85fbe3fdcf MDL-27811 Fixed incorrect qtype_essay conversion 2011-06-13 11:11:31 +02:00
Sam Hemelryk 46d3b9be73 Merged branch 's7_MDL-26105_block_settings_master' git://github.com/andyjdavis/moodle.git with changes 2011-06-13 16:54:52 +08:00
Eloy Lafuente (stronk7) 379f39eb9f Merge branch 'MDL-27789-qe2plugins' of git://github.com/mudrd8mz/moodle 2011-06-13 10:12:03 +02:00
Dongsheng Cai 42b2809ff3 MDL-27497, using webservice token to upload files 2011-06-13 16:06:18 +08:00
Aparup Banerjee 486e889262 MDL-27446 Backup - added answers 'jumpto' conversion to moodle1 converter for
lesson
2011-06-13 10:02:28 +02:00
Sam Hemelryk 12aafa8769 Merge branch 'master_MDL-272522' of git://github.com/danmarsden/moodle 2011-06-13 15:49:24 +08:00
Sam Hemelryk f44c912bd0 Merge branch 'MDL-26147-workshop-ignore-deadlines' of git://github.com/mudrd8mz/moodle 2011-06-13 15:32:44 +08:00
Sam Hemelryk 0723dcab40 Merged branch 'MDL-26960' of git://git.luns.net.uk/moodle with changes 2011-06-13 15:06:19 +08:00
Sam Hemelryk aa8ec18b52 Merge branch 'master_MDL-27404' of git://github.com/danmarsden/moodle 2011-06-13 14:53:37 +08:00
Sam Hemelryk 16c2d2c1b4 Merge branch 'MDL-26774-wip' of git://github.com/mouneyrac/moodle 2011-06-13 14:11:58 +08:00
Sam Hemelryk fcc871181f Merge branch 'MDL-27399' of git://github.com/mouneyrac/moodle 2011-06-13 14:04:28 +08:00
Sam Hemelryk a7b7c2d3db Merge branch 'MDL-20538' of git://github.com/timhunt/moodle 2011-06-13 11:22:51 +08:00
Sam Hemelryk 355871acd5 Merge branch 'MDL-27757-HEAD' of git://github.com/srynot4sale/moodle 2011-06-13 11:17:59 +08:00
Sam Hemelryk 89b2cdb28a Merge branch 'MDL-27783' of git://github.com/mouneyrac/moodle 2011-06-13 11:13:29 +08:00
Sam Hemelryk 178ac9033b Merged branch 'MDL-27781' of git://github.com/mouneyrac/moodle.git with changes 2011-06-13 10:54:24 +08:00
Rossiani Wijaya 6ff768a67f MDL-27525 mod_wiki: Fixed typing error for the variable and assign the value contextid to use mod context id 2011-06-13 10:54:07 +08:00
Sam Hemelryk 85ee4e350c Merge branch 'MDL-27792-plugin-subsystem' of git://github.com/mudrd8mz/moodle 2011-06-13 10:39:32 +08:00
Sam Hemelryk 954adfc923 Merged branch 'MDL-27801' of git://github.com/kordan/moodle.git with changes 2011-06-13 10:33:39 +08:00
Dan Marsden d1e3b5c2d3 MDL-27404 SCORM fix for IE 6 - thanks to Howard Miller 2011-06-13 11:32:26 +12:00
Dan Marsden 2875714e4a MDL-27522 SCORM tidy up commit 2011-06-13 11:00:43 +12:00
Ankit Kumar Agarwal b4baa7faa3 MDL-27522 SCORM - seperate user report from main report page to allow better re-use in preparation for MDL-27256 2011-06-13 10:21:40 +12:00
David Mudrak 9ddff589df MDL-26147 workshop - added capability to ignore time restrictions 2011-06-10 19:01:27 +02:00
David Mudrak a74cadfa77 MDL-27065 workshop grades categories can be defined in mod_form
Because the Workshop module creates two grade items in the gradebook, we
can't use standard modedit features to set the corresponding category in
the gradebook (it supports single grade item only).

The patch also cleans the mod_form.php so that it does not use the
global $COURSE (just because I do not like this global variable).

And for the record - QuickForms must die.
2011-06-10 16:48:09 +02:00
David Mudrak b7119f4f3f MDL-22414 Exclude unsupported modules from the course contents 2011-06-10 09:01:41 +02:00
Andrew Davis (andyjdavis) 35d725627c MDL-26105 blocks: added use of user friendly block settings to messaging 2011-06-10 13:52:53 +08:00
Marina Glancy 13b3f4d4af MDL-26430 fixed appearance of one html form within another 2011-06-10 12:55:12 +08:00
Aaron Barnes 7075e37e0c MDL-27757 lib/completionlib.php: Load "enablecompletion" property if required 2011-06-10 13:58:41 +12:00
kordan b0f37206c6 fix MDL-27801 2011-06-09 21:47:09 +02:00
Tim Hunt 55190d7e2c MDL-20538 get rid of badly name-spaced constants from lib/questionlib.php.
Unfortunately, they are used all over the import/export code, so I cannot eliminate them completely. However, I was able to move them out of the core library.
2011-06-09 19:27:36 +01:00
David Mudrak a0166f5507 MDL-27792 Fixed missing core subsystem 2011-06-09 16:19:51 +02:00
Dan Poltawski a8134ff68b messaging: MDL-26960 Check correct users permissions
When on message profile page, the incorrect capability was checked
2011-06-09 15:18:43 +01:00
David Mudrak d1c77ac372 MDL-27789 The new question plugins reported as standard ones 2011-06-09 14:29:27 +02:00
David Mudrak b61cf3ff8a MDL-22414 Merge branch 'master' into backup-convert
Conflicts:
	theme/base/style/core.css
2011-06-09 13:04:49 +02:00
David Mudrak fad0f24499 MDL-22414 Removing obj_to_readable helper 2011-06-09 11:38:15 +02:00
Andrew Davis (andyjdavis) fb794ab73c MDL-26105 blocks: fixed some php errors and made a help string better 2011-06-09 17:03:27 +08:00
Jerome Mouneyrac 02ae44cf4e MDL-27783 enabled status of a built-in service should never been updated on upgrade. It is only used during the installation. If a dev really needs to change the status, he can do it in lib/db/upgrade.php 2011-06-09 16:50:14 +08:00
Jerome Mouneyrac f2806b9a65 MDL-27399 Add all the new mobile ws functions to the built-in mobile service 2011-06-09 15:19:58 +08:00
Jerome Mouneyrac 565e477184 MDL-27781 remove Undefined property: stdClass:: during installation with cli script 2011-06-09 15:08:03 +08:00
Sam Hemelryk 32a510de4e MDL-26105 block setting, improvement, replace switch-case with get_core_subsystems + get_plugin_types 2011-06-09 13:51:14 +08:00
Dongsheng Cai b1627a92e5 MDL-26105 Block settings should contains less options, and be more user friendly
AMOS BEGIN
    MOV [page-blog-index, pagetype], [page-blog-index, blog]
    MOV [page-blog-x, pagetype], [page-blog-x, blog]
    MOV [page-tag-x, pagetype], [page-tag-x, tag]
    MOV [page-course-view-weeks, pagetype], [page-course-view-weeks, format_weeks]
    MOV [page-course-view-weeks-x, pagetype], [page-course-view-weeks-x, format_weeks]
    MOV [page-course-view-topics, pagetype], [page-course-view-topics, format_topics]
    MOV [page-course-view-topics-x, pagetype], [page-course-view-topics-x, format_topics]
AMOS END
2011-06-09 13:51:14 +08:00
Eloy Lafuente (stronk7) 6911fa130b weekly release 2.1dev 2011-06-09 03:41:42 +02:00
David Mudrak 4ece48dc36 MDL-22414 Fixed the order of course modules in the restored course
During the restore, the section's sequence field is ignored and the
order of modules is controlled by the order of the <contents> activity
elements. This patch makes sure that the modules are listed in that
section in the right order.

Also, the patch removes the obsolete stash sectionidslist which was
introduced when the method get_stash_itemids() had not existed yet.
2011-06-09 02:41:27 +02:00
Eloy Lafuente (stronk7) c7dbcc9452 Merge branch 'MDL-27770' of git://github.com/timhunt/moodle 2011-06-09 01:41:24 +02:00
Eloy Lafuente (stronk7) d92858291a Merge branch 'wip-MDL-27638-master' of git://github.com/samhemelryk/moodle 2011-06-09 01:20:54 +02:00
Eloy Lafuente (stronk7) 2cb791ebc5 Merge branch 'wip-mdl-27577-master' of git://github.com/rajeshtaneja/moodle 2011-06-09 00:59:11 +02:00
Eloy Lafuente (stronk7) 112c26e9dd Merge branch 'wip-MDL-27676-master' of git://github.com/samhemelryk/moodle 2011-06-09 00:36:00 +02:00
David Mudrak 30d5190a9b MDL-27452 Workshop 1.9 backups conversion support 2011-06-09 00:00:03 +02:00
David Mudrak a5f2b97b7f MDL-22414 Fixed debugging information when a particular exception is thrown 2011-06-08 19:15:40 +02:00
Tim Hunt 810c5b9e5a MDL-27770 unnecessary upgrade step copied into quiz upgrade script. 2011-06-08 17:48:43 +01:00
Sam Hemelryk 82ee5a1f41 MDL-27676 Requests for a users profile pic that doesnt exist now redirect to the requested f1/f2 rather than just f1 2011-06-08 18:05:23 +08:00
Sam Hemelryk 32825ebd3d MDL-27566 Fixed up typo with user prefs 2011-06-08 17:54:25 +08:00
Sam Hemelryk 00a33dcbac Merged branch 'MDL-26777-wip' of git://github.com/mouneyrac/moodle.git 2011-06-08 17:52:59 +08:00
Sam Hemelryk 96e0194c05 Merged branch 'MLD-27551' of git://github.com/mouneyrac/moodle.git with changes 2011-06-08 17:34:17 +08:00
Sam Hemelryk 0b8dea80dc Merge branch 'MDL-27747' of git://github.com/timhunt/moodle 2011-06-08 17:09:05 +08:00
Sam Hemelryk f6bd0b9e39 Merged branch 'MDL-27695' of git://github.com/nebgor/moodle.git with changes 2011-06-08 16:25:57 +08:00
David Mudrak 33560f50fb MDL-22414 Added new inforef manager
This helper class keeps the referenced ids to be dumped into the
inforef.xml files. For now, it uses a in-memory storage structures but
in the future we may refactor it so that it can use some persistent
storage (like converter's stashes).
2011-06-08 10:18:56 +02:00
David Mudrak e29746c25f MDL-22414 Added scales conversion handler 2011-06-08 10:18:44 +02:00
Jerome Mouneyrac b4c74367a3 MDL-26774 fix web service function moodle_user_get_users_by_id. It now matches viewing profile / editing profile. It suppose to work for current user / other user / admin. It is not returning the information of course profile. 2011-06-08 16:07:12 +08:00
Jerome Mouneyrac c1b658832d MDL-27551 add enable mobile feature (enable web services + mobile service - add mobile builtin service - add unique shortname for service) 2011-06-08 15:10:26 +08:00
Sam Hemelryk 287d1c0c2c Merged branch 'MDL-25775_head' of git://github.com/grabs/moodle.git 2011-06-08 13:49:36 +08:00
Aparup Banerjee 3b6711d5ce MDL-27695 Documentation : updated the moodle docs link at the footer of pages to point to new docs url 2011-06-08 13:44:35 +08:00
Sam Hemelryk 131a9071d6 Merged branch 'MDL-27118' of git://github.com/epsd/moodle.git 2011-06-08 13:42:33 +08:00
Sam Hemelryk de133aa87f Merge branch 'MDL-27294' of git://github.com/epsd/moodle 2011-06-08 13:38:35 +08:00
Sam Hemelryk 405f69eb7b Merge branch 'MDL-27704_master' of git://github.com/MaryE/moodle.git 2011-06-08 13:33:42 +08:00
kordan b396e1678b MDL-27588 Fixed up several bugs with the formal_white theme
-> MDL-26934 has been fixed
-> MDL-27474 has been fixed
-> one more option to have blocks column with different background colours
-> one more option to use custom font size
-> version.php, and b/install.php to handle upgrades
-> increased the font size in the table with plugin list shown at upgrade time
-> minor fixes in IE7 when images from remote web sites are shown in the header
-> conformed the dock background colour to the block background colour to avoid unpleasant color combinations
-> conformed a.link, a.visited and a.active colours in tabs
-> conformed a.link, a.visited and a.active colours in the navigation block
-> deleted an awful box border from enrolment page
-> right aligned commands for resources and activities in the course page
-> increased the width of field item title column in mform
-> increased the padding-top to the help popup box messages
-> user menu restyled to fix some minor tweaks in IE7
-> minor repair to tabs to improve its look
-> restyling of the docked item panel header to look like all the other blocks
-> reduced the distance between elements in headermenu to look better even when only headings are shown in the header
-> links wherever and always black
-> the "search courses" field in the navigation bar does not force extra height
-> some unpleasant generalbox border duplicating some other border have been removed
-> some unpleasant margin/padding in notices and mtables has been removed
2011-06-08 13:17:06 +08:00
Sam Hemelryk d1c96f6604 Merged branch 'MDL-27692_master' of git://github.com/MaryE/moodle.git 2011-06-08 13:03:11 +08:00
Sam Hemelryk 38a466084d Merge branch 'MDL-25477' of git://github.com/epsd/moodle 2011-06-08 11:30:28 +08:00
Aparup Banerjee ca7d5f8bbc MDL-27500 HTML Editor - updating tinymce version used by moodle to 3.4.2 2011-06-08 11:19:26 +08:00
Aparup Banerjee abd7557e79 MDL-27500 HTML Editor - added build 3.4.2 of tinymce 2011-06-08 11:16:37 +08:00
Sam Hemelryk 9186cb7e98 Merged branch 'ou-messaging-release' of git://git.luns.net.uk/moodle with conflict resolution for MDL-27171 2011-06-08 11:07:22 +08:00
Sam Hemelryk 7bff5441c8 Merged changes for MDL-25394 2011-06-08 10:58:42 +08:00
Sam Hemelryk 9bf5d894de Merge branch 'MDL-27564-wip' of git://github.com/mouneyrac/moodle with changes for MDL-27564 2011-06-08 10:38:29 +08:00
Sam Hemelryk 0373264c20 Merge branch 'MLD-27565-wip' of 'git://github.com/mouneyrac/moodle.git' with changes and conflict resolution for MDL-27565 2011-06-08 10:11:51 +08:00
Sam Hemelryk 78736e5d64 Merged branch 'MDL-27566-wip' of git://github.com/mouneyrac/moodle.git with changes and conflict resolution for MDL-27566 2011-06-08 10:02:59 +08:00
Sam Hemelryk da1bf0e82a MDL-27721 Fixed up typo in upgrade comments 2011-06-08 09:49:43 +08:00
Tim Hunt e84dacffeb MDL-27747 don't truncate essay responses in the reports. #601 2011-06-07 17:01:11 +01:00
Tim Hunt 47678d60f8 MDL-27747 quiz_statistics fix edit question icons. #737 2011-06-07 16:46:30 +01:00
Tim Hunt 0f1c59c552 MDL-27747 quiz locallib remove unnecessary try/catch. #475
delegated_transaction just does the right thing. Thanks to Justin Wyllie for spotting this.
2011-06-07 16:27:49 +01:00
Tim Hunt 3b049b7626 MDL-27747 question engine stupid typo in DB query broke regrading. #472 2011-06-07 16:22:10 +01:00
Tim Hunt adf7fe2148 MDL-27747 Missing information and errors on the quiz view page. #720 2011-06-07 16:05:17 +01:00
Tim Hunt f57d75bdf8 MDL-27747 quiz review, time taken and overtime were formatted incorrectly #598 2011-06-07 15:33:31 +01:00
Tim Hunt 97cdc1de72 MDL-27747 quiz summary, add a CSS class to the table rows based on question state.
The standard themes do not use this for anything, but it makes it easier for themers to do cool stuff.
Also improve the API for getting the question state class.
2011-06-07 15:11:04 +01:00
Tim Hunt 4464734bb6 MDL-27747 qtype_truefalse, false feedback went missing whenre-editing a question. #465 2011-06-07 14:38:05 +01:00
Tim Hunt c9272e87f9 MDL-27747 quiz End test... link was not working. #387
I don't know why this was ever changed from class to id. That was done in commit a1eb3a4466.
2011-06-07 14:29:11 +01:00
Tim Hunt e198992b20 MDL-27747 Fix a lot of coding style issues in question/format.php 2011-06-07 14:04:24 +01:00
Tim Hunt 92111e8d2c MDL-27747 questions remove all references to the recently deprecated get_grade_options() 2011-06-07 14:00:07 +01:00
Tim Hunt af2f98ee39 MDL-27747 Imporove API for getting the standard fraction choices.
This includes moving the None option to the top, which is slightly better for usability.
2011-06-07 13:53:29 +01:00
Eloy Lafuente (stronk7) 2b64de2008 MDL-27721 ratings - drop interim 'unknown' defaults 2011-06-07 12:58:59 +02:00
Jerome Mouneyrac 0e5fd1299a MDL-27564 most parameter should have been optional - return more common information so no extra web service required - note that it could be good to return role and group for each user in each course (it would make sens and save some web service call) 2011-06-07 18:20:07 +08:00
Jerome Mouneyrac 8d46dabb6e MDL-27565 implement moodle_notes_create_note 2011-06-07 17:28:51 +08:00
Jerome Mouneyrac a623b6b892 MDL-27566-wip implement moodle_message_send_messages function (matching front end logic - TODO: 2 core functions to change to support bulk operations) 2011-06-07 16:40:55 +08:00
Sam Hemelryk c464a23873 Merged branch 's9_MDL-26392_wiki_files_master' from git://github.com/dongsheng/moodle.git with fixes 2011-06-07 16:29:44 +08:00
Sam Hemelryk e0f18a37c9 Merge branch 'MDL-27734-workshop-example-weight' of git://github.com/mudrd8mz/moodle 2011-06-07 16:24:17 +08:00
Sam Hemelryk 656bb6725b Merge branch 'MDL-27733-workshop-deadlines' of git://github.com/mudrd8mz/moodle 2011-06-07 16:23:34 +08:00
Sam Hemelryk ac6668198b Merge branch 'MDL-27732-glossary-introformat' of git://github.com/mudrd8mz/moodle 2011-06-07 16:13:52 +08:00
Sam Hemelryk f5936345cd Merge branch 'admin_whitespace_cleanup_master' of git://github.com/stronk7/moodle 2011-06-07 16:09:55 +08:00
Sam Hemelryk 6e76848427 Merge branch 'todo_wiki_upgrade_master' of git://github.com/stronk7/moodle 2011-06-07 16:01:49 +08:00
Jerome Mouneyrac 0bf486a619 MDL-26777 moodle_webservice_mobile_get_siteinfo TODO: add this service name into the service of MDL-27551 2011-06-07 15:19:53 +08:00
Eloy Lafuente (stronk7) 82b25e8e71 MDL-20636 fix local/qeupgradehelper perms 2011-06-06 23:28:50 +02:00
Tim Hunt d9eb95433f MDL-20636 fix notice on qtypes admin page. (Eloy review comment I2) 2011-06-06 18:26:32 +01:00
Tim Hunt aadad31a6e MDL-27737 numerical qtype upgrade bug 2.0dev -> 2.0. 2011-06-06 18:06:57 +01:00
Tim Hunt 70d248181c MDL-20636 remove QTYPE from some comments. 2011-06-06 17:48:29 +01:00
Tim Hunt 030fba85f1 MDL-20636 qe restor make method protected (Eloy review comment B1). 2011-06-06 17:26:33 +01:00
Tim Hunt 6e56da8347 MDL-20636 Fix quiz_statistics upgrade (Eloy review comment A3). 2011-06-06 17:22:49 +01:00
Eloy Lafuente (stronk7) cc5937f4c0 MDL-20636 changes to report statistics DB layer 2011-06-06 17:16:41 +01:00
Eloy Lafuente (stronk7) 44c280c63e MDL-20636 changes to mod/quiz DB layer 2011-06-06 17:16:35 +01:00
Eloy Lafuente (stronk7) cdda538128 MDL-20636 changes to core & questions DB layer 2011-06-06 17:16:28 +01:00
Eloy Lafuente (stronk7) 5abfa6a930 MDL-20636 changes to quiz and quiz reports upgrade code 2011-06-06 17:16:22 +01:00
Eloy Lafuente (stronk7) 1db15c2718 MDL-20636 changes to core & questions upgrade code
Changes include:

    - fixing versions and requires to current weekly (2011060313)
    - fix essay wrong upgrade step. Review & test!
    - fix numerical missing savepoint.
2011-06-06 17:16:11 +01:00
Andreas Grabs a9e9549911 MDL-25775 - Site policy page blank 2011-06-06 18:15:12 +02:00
Tim Hunt 54771d89d1 Merge remote-tracking branch 'moodle/master' into MDL-20636_master_new_question_engine
Conflicts:
	lib/db/upgrade.php
	mod/quiz/lib.php
2011-06-06 17:14:59 +01:00
Tim Hunt 4c5743343f MDL-20636 make qe upgrade tests independent of html2text details.
Based on Eloy's change, but refactored to be slightly nicer.
2011-06-06 17:05:54 +01:00
Tim Hunt 0370e3ab0d MDL-27736 html2text add unit test for Eloy's new code. 2011-06-06 16:54:13 +01:00
Eloy Lafuente (stronk7) 3709ecb929 MDL-27736 improve a bit html2text to avoid some ugly & unnecessary trailing spaces 2011-06-06 16:42:55 +01:00
Eloy Lafuente (stronk7) 36e91f1de1 MDL-20636 Whitespace fixes 2011-06-06 16:38:46 +01:00
Eloy Lafuente (stronk7) 4561302dec MDL-20636 Prepare stuff for cleaner merging 2011-06-06 16:38:23 +01:00
David Mudrak b34b969103 MDL-27734 Fixed weights of the example submission assessments 2011-06-06 17:37:59 +02:00
David Mudrak ce8157ed91 MDL-27733 workshop: keep the phase deadlines during the 1.9 => 2.0 upgrade 2011-06-06 17:36:32 +02:00
David Mudrak 7e1450977e MDL-27732 Include the introformat field in the glossary module backups 2011-06-06 15:19:41 +02:00
David Mudrak fe50f530fd MDL-27379 Backup conversion logging facilities 2011-06-06 13:56:06 +02:00
David Mudrak 1b85912abb MDL-27729 Glossary module 1.9 backup converts to 2.0 format 2011-06-06 10:11:58 +02:00
Eloy Lafuente (stronk7) b04aa92544 MDL-27724 wiki - update commented upgrade step to avoid future problems 2011-06-05 19:47:38 +02:00
Eloy Lafuente (stronk7) 6e9cd6698e MDL-27723 whitespace cleanup of admin directory 2011-06-05 19:35:42 +02:00
David Mudrak c5c315e2a7 MDL-27718 Migrate files embedded in the activity intro fields
Contains various fixed spotted through the way, too.
2011-06-05 17:37:58 +02:00
David Mudrak fa30779b70 MDL-22414 Fixed the convert_path data handling 2011-06-05 16:17:23 +02:00
David Mudrak 718f781690 MDL-27718 Files embedded into the course summary and section summaries are migrated during the conversion 2011-06-04 23:34:26 +02:00
David Mudrak 02e9095677 MDL-27448 IMS content package module conversion improved
The files embedded into the intro field and the backup of the original
content package are migrated now, too.
2011-06-04 22:12:47 +02:00
David Mudrak 85d91b6a1b MDL-27448 Do not stop conversion because of missing course files 2011-06-04 22:11:03 +02:00
David Mudrak baa44e3d3d MDL-27448 Simplified migration of the files embedded in the resources HTML texts 2011-06-04 21:13:56 +02:00
David Mudrak afb4494bd0 MDL-27448 URL resource module backup conversion improved
The patch also fixes invalid 'course' field in moodle2 backup code.
2011-06-04 21:04:02 +02:00
David Mudrak c39226d9b2 MDL-22414 Added a helper method to migrate all files referenced from a hypertext 2011-06-04 21:03:11 +02:00
David Mudrak 351bf4826c MDL-27448 Improved resource module converter 2011-06-04 20:03:28 +02:00
David Mudrak aa97e0dd52 MDL-22414 File manager allows to set explicit sortorder and accepts filepaths not ending with a slash
We want to set migrated content file in the File module as a main file.
Main files are files with sortorder set to 1. Therefore the file manager
must provide a way to set the sortorder property of the new file record.

The second change allowing filepaths not ending with slash is a helper
as we can easily use dirname() as a value (see the usage in the next
commits). Not providing the dirname() was a bug as the reference to a
file in the HTML text did not respect the migrated file path.
2011-06-04 20:02:03 +02:00
David Mudrak 93dd33b405 MDL-27448 Folder module conversion improved 2011-06-04 18:28:58 +02:00
David Mudrak 9b2ab50d27 MDL-27448 Page module conversion improved 2011-06-04 18:28:35 +02:00
David Mudrak 9e3e8c8004 MDL-27448 Changed the interface of resource module successors to make it clear they are a special case 2011-06-04 16:11:59 +02:00
David Mudrak 48fcecffb6 MDL-27448 Page module conversion fixed and improved
The embedded files are now converted into the proper file area on the
conversion. The previous usage of $CFG->wwwroot/file.php was wrong for two
reasons: (1) the moodle.xml does not (should not) contain these links but
$@FILEPHP@$ placeholder and (2) even if it did, we could not compare to
our wwwroot but to the original wwwroot.

Also fixed the actual list of fields being written into page.xml - the
previous version included legacy fields (like type, reference and
friends).
2011-06-04 14:43:04 +02:00
David Mudrak b2e905102a MDL-27448 Pretty pedantic fix of using spaces in the code 2011-06-04 14:42:07 +02:00
David Mudrak 9b5f831803 MDL-27448 Added common base class for all resource module successors 2011-06-04 14:38:41 +02:00
David Mudrak d61ed0afdc MDL-22414 Added possibility to explicitly reset the list of migrated files by a file manager instance 2011-06-04 14:29:39 +02:00
David Mudrak 904888daee MDL-27448 Resource intro (legacy summary) field converted consistently by the resource handler 2011-06-04 13:24:03 +02:00
David Mudrak 069b5b80c4 MDL-27448 Fixed copyright and phpdoc info 2011-06-04 13:24:03 +02:00
David Mudrak 56bd82cceb MDL-27448 IMS content package converter checks that the manifest file exists 2011-06-04 13:24:03 +02:00
Andrew Davis 5da3af58a0 MDL-27448 resource conversion support to restore 1.9 backup to 2.1 2011-06-04 13:24:03 +02:00
David Mudrak c818e2df49 MDL-22414 Added helper methods to migrate files referenced by $@FILEPHP@$ 2011-06-04 13:22:27 +02:00
David Mudrak d73c82e791 MDL-22414 Getting rid of a relict method copied from restore subsystem 2011-06-04 11:46:31 +02:00
David Mudrak a78b139ce6 Merge branch 'master' into backup-convert 2011-06-03 23:22:23 +02:00
David Mudrak db6491bf9e Merge pull request #10 from nebgor/MDL-27451
MDL-27451 Backup - added 1.9 backup conversion handler for wiki
2011-06-03 14:15:26 -07:00
David Mudrak c15649fbd2 MDL-27626 random question conversion support 2011-06-03 22:59:13 +02:00
David Mudrak 0e3a69b0e5 MDL-22414 Provided a work around MDL-27713
Currently the underlying backup/restore code does not differentiate null
and empty array data. So we have to explicitly check that we got array,
even though the correct set_stash() was called.
2011-06-03 22:45:46 +02:00
David Mudrak c0e3796e1b MDL-27626 calculated qtype conversion support
uff...
2011-06-03 21:57:00 +02:00
David Mudrak aaf88d2cb2 MDL-27626 numerical_options are written only if there are some numerical_units available
This reflects the logic of the backup 2.0. Previously, the new
numerical_options structure was written always, even if there were no
numerical_units.
2011-06-03 21:56:59 +02:00
David Mudrak 0a562bafd1 MDL-27626 matching question type conversion handler 2011-06-03 21:56:59 +02:00
David Mudrak 23007e5d27 MDL-22414 Fixed wrong usage of static caches
These static caches were bad idea of mine. Multiple conversion jobs
executed from a single PHP script share such variables, of course, which
is wrong. This patch removes one static cache completely and
reimplements the other two static caches as normal member variables.
2011-06-03 21:54:13 +02:00
David Mudrak 38bce21a9e MDL-22414 Fixed the id generation entropy 2011-06-03 18:54:57 +02:00
David Mudrak cd92d83bf2 MDL-22414 Added new method to get the list of existing stashes 2011-06-03 18:54:57 +02:00
David Mudrak a4158f8d93 MDL-27626 Make sure that the <answers> structure is present before converting it
This corresponds the logic of question_backup_answers()
2011-06-03 18:54:57 +02:00
David Mudrak 7cfff0ccfb MDL-27626 multianswer (embedded, cloze) question type conversion handler 2011-06-03 18:54:57 +02:00
David Mudrak 589475665e MDL-27626 numerical question type conversion handler 2011-06-03 18:54:56 +02:00
David Mudrak f75ad8d776 MDL-27626 moodle1_qtype_handler now provides helper methods for numerical_units and numerical_options 2011-06-03 18:54:56 +02:00
David Mudrak 1056c9b914 MDL-22414 Fixed moodle1_xml_handler::write_xml() attributes handling
The attributes did not work for nested elements because of the missing
slash.
2011-06-03 18:54:51 +02:00
Mary Evans 5d224075ae MDL-27704_master Fix for Overlapping problems in Fusion theme 2011-06-03 17:41:39 +01:00
David Mudrak 513e2215c6 MDL-27626 The test file with questions now contains numerical units in numerical qtype 2011-06-03 18:06:35 +02:00
David Mudrak afa08aeb15 MDL-27626 essay question type conversion handler 2011-06-03 18:06:34 +02:00
David Mudrak 2b129b4cb6 MDL-27626 truefalse question type conversion handler 2011-06-03 18:06:29 +02:00
David Mudrak 2554f389d4 MDL-27626 shortanswer question type conversion handler 2011-06-03 18:06:28 +02:00
David Mudrak 7ffc82df8b MDL-27626 multichoice question type conversion handler 2011-06-03 18:06:28 +02:00
David Mudrak 22b8486fe6 MDL-27626 moodle1_qtype_handler now provides a helper method for answers structure conversion 2011-06-03 18:06:27 +02:00
David Mudrak 1ff4b8dec0 MDL-27626 moodle1_qtype_handler::process_question() is not supposed to return anything
Returning the converted array has no benefit here and makes the things
more complicated. From now on, the method is supposed to write what it
needs directly into the opened file, without returning anything.
2011-06-03 18:06:27 +02:00
David Mudrak e19d0c109c MDL-27626 The initial support for the question bank backups conversion
This patch introduces a framework for the question bank conversion. It
deals with the common question data (that are not qtype-specific) and
the way how to make sure that the qtype plugins have access to the paths
they are interested in.
2011-06-03 18:06:27 +02:00
Mary Evans 3ae75b44c7 MDL-27692_master Fixes issue - bullets not numbers in ordered list... 2011-06-03 12:11:09 +01:00
Aparup Banerjee 61ff1fecc3 MDL-27451 Backup - added 1.9 backup conversion handler for wiki 2011-06-03 15:09:15 +08:00
David Mudrak 0f5860f707 Merge pull request #11 from nebgor/MDL-27447
MDL-27447 mod_quiz backup conversion
2011-06-02 23:08:12 -07:00
Dongsheng Cai 12c9bbbdd2 MDL-26392 WIKI added file managment support to wiki editor 2011-06-03 11:22:18 +08:00
Rajesh Taneja 6a0bf5c4b0 MDL-27577 moodlelib - fixed dst offset in userdate, usergetdate and make_timestamp functions 2011-06-03 09:50:38 +08:00
Eloy Lafuente (stronk7) a56c68e3f4 weekly release 2.1dev 2011-06-02 23:35:35 +02:00
Ruslan Kabalin 8e26531519 MDL-27171 messages: add processor uninstall function
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-06-02 09:27:05 +01:00
David Mudrak 78d22af957 Fixed error/required_not_stashed_data when the backup does not contain course_files 2011-06-02 09:05:59 +02:00
Aparup Banerjee 4b2da7cee0 MDL-27447 Backup - improvements to 1.9 quiz backup converter 2011-06-02 10:35:08 +08:00
Aparup Banerjee 63e9bb60e6 MDL-27447 Backup - added quiz module 1.9 backup converter 2011-06-02 10:35:08 +08:00
David Mudrak 034b0e4a30 Fixed applying convert_path recipes on sub-paths of grouped elements
Grouped elements contain arrays with the sub-paths. This patch makes
sure that the sub-paths are pre-cooked recursively. However because the
recipes do not distinguish the full path to the element, only the
implicit recipe (making the tags lowecase) is applied. To avoid
potential data loss (for example dropfields recipe would delete all
fields from the whole grouped tree, not only the direct descendants of
the path where the recipe is declared), explicit recipes are forbidden
for grouped elements. The developer has to convert the $data manually as
needed.
2011-06-02 03:26:52 +02:00
Ruslan Kabalin d004c4b20a MDL-27171 messages: fix bug in upgrade_populate_default_messaging_prefs
isset check assumed that $defaultpreferences is the object

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-06-01 12:30:28 +01:00
Ruslan Kabalin afed8d0f17 MDL-27652 messages: introduce message_update_processors
This function populates default message preferences for all existing providers
when the new message processor is added.

The change also includes update of message_set_default_message_preference to
make possible using it for particular message processor update.

install_populate_default_messaging_prefs() is no longer needed and depricted.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-06-01 12:02:37 +01:00
Ruslan Kabalin 67147c2550 MDL-27171 messages: populate messaging defaults after the installation
This makes the order of plugins returned by get_plugin_types not important as
all messaging defaults population is done at the end.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-31 16:00:32 +01:00
Ruslan Kabalin 60bbe7684a MDL-27171 messages: meet require_once usage gudelines
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-31 15:16:17 +01:00
Ruslan Kabalin a4de1d8f0e MDL-27171 messages: remove excessive include_once
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-31 14:02:37 +01:00
Ruslan Kabalin 838075147b MDL-27171 messages: some minor fixes in translate_message_default_setting function
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-31 13:55:57 +01:00
Ruslan Kabalin bf0fb77293 MDL-27171 messages: avoid using depricated notification method.
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-31 12:26:15 +01:00
Ruslan Kabalin 72e6af0344 MDL-27171 messages: fix static variable filtering bug in get_message_processors
Static $processors should contain the full list of processors only, when
filtering is required, the $processors variable should not be updated.

Lambda function refactoring is made as well.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-31 11:18:11 +01:00
Ruslan Kabalin 298925d4d1 MDL-27171 messages: clean up pereferences on message provider removal
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-31 10:55:30 +01:00
Ruslan Kabalin 31afb0a437 MDL-27171 messages: recover message_update_providers backward compatibility
'return true' was removed by mistake

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-31 10:05:39 +01:00
Sam Hemelryk e455bdb3d7 MDL-27638 Removed buggy status line from query as it is being calculated in php anyway 2011-05-31 17:02:17 +08:00
Ruslan Kabalin e8fc7940a8 MDL-27171 messages: $defaultpreferences is an object, use isset instead.
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-31 09:46:22 +01:00
Dan Poltawski b46ca3d7ae messaging: MDL-27171 - change variable with underscores 2011-05-31 09:07:38 +01:00
David Mudrák 193407a096 Merge pull request #9 from nebgor/MDL-27449
MDL-27449 SCORM module 1.9 converter
2011-05-30 23:35:26 -07:00
Sam Hemelryk e5824bb9c6 MDL-25394 Tidied up several things in order to get this integrated 2011-05-31 14:28:03 +08:00
Anthony Forth 37959dd471 MDL-25394 Improved support for mobile and device themes 2011-05-31 14:25:52 +08:00
Aparup Banerjee a1cac902ec MDL-27449 Backup - migrating scorm file within scorm module 1.9 backup converter 2011-05-31 11:29:48 +08:00
David Mudrák ba1e221a0d Merge pull request #7 from rwijaya/MDL-27441b
MDL-27441 mod_feedback 1.9 backup conversion
2011-05-30 16:26:18 -07:00
Eloy Lafuente (stronk7) a6b2f0faf2 Merge branch 'MDL-25191-master' of git://github.com/sammarshallou/moodle 2011-05-31 00:58:34 +02:00
Sam Hemelryk 52a3c2c703 Merge branch 'wip-mdl-27603-master' of git://github.com/rajeshtaneja/moodle 2011-05-30 17:21:29 +08:00
Aparup Banerjee 0e7269d11d MDL-27449 Backup - added scorm module 1.9 backup converter 2011-05-30 14:20:35 +08:00
David Mudrák 071f617c52 Merge pull request #6 from rwijaya/MDL-27446b
MDL-27446 mod_lesson
2011-05-29 22:46:31 -07:00
Sam Hemelryk 8dc13ee7b0 Merge branch 'MDL-25512_master' of git://github.com/MaryE/moodle.git 2011-05-30 13:03:07 +08:00
Rossiani Wijaya a6486a827f MDL-27441 mod_feedback: added conversion code to restore 1.9 backup to 2.1 site 2011-05-30 11:29:13 +08:00
Rossiani Wijaya b44739c868 MDL-27446 mod_lesson: added conversion code to restore 1.9 backup to 2.1 site 2011-05-30 10:56:31 +08:00
Rajesh Taneja 6006774cf7 MDL-27603 enrol_user - changed modifier to modifierid which is used in database 2011-05-30 10:10:03 +08:00
Sam Hemelryk 5436561c7c Merge branch 'MDL-27600-master' of git://github.com/sammarshallou/moodle 2011-05-30 10:05:59 +08:00
Sam Hemelryk 59023e7799 Merge branch 'MDL-27636_master' of git://github.com/stronk7/moodle 2011-05-30 09:18:02 +08:00
Adam Olley 9b01f68597 MDL-27009: Fix role group by statement for statistics 2011-05-30 09:05:53 +08:00
Sam Hemelryk 9efd421e0e Merge branch 'navigationlib_userreports' of git://github.com/stronk7/moodle 2011-05-30 08:56:15 +08:00
Sam Hemelryk 91bad7adc1 Merge branch 'MDL-27627-master' of git://github.com/sammarshallou/moodle 2011-05-30 08:54:15 +08:00
Mary Evans df7962f977 wip-MDL-25512 Correct CSS rules in Canvas theme to align with YUI3 CSS Fonts 2011-05-30 00:41:06 +01:00
David Mudrak 93264625f2 The source passed to the migrate_directory() may not exist
In case the source $rootpath passed to the migrate_directory() does not
exist, an empty array is returned by the method. Note that if the
directory exists and is empty, the directory itself is converter so
there would be a new record created. However, the restore process
ignores these records anyway, as the directory records are created
automatically by certain file api methods.
2011-05-29 00:38:23 +02:00
David Mudrak 214c492447 Converter file manager's methods take relative path within the backup instead of the absolute path 2011-05-29 00:18:19 +02:00
Tim Hunt b360806d5c MDL-20636 update local/qeupgradehelper/README.txt. 2011-05-27 20:58:18 +01:00
Tim Hunt 85714b36c2 MDL-20636 implement the shell of the system for completing the upgrade using cron. 2011-05-27 20:46:37 +01:00
Tim Hunt 60006d2971 MDL-20636 remove bogus include that breaks cron. 2011-05-27 20:43:20 +01:00
Tim Hunt 1027301215 MDL-20636 Implement the ability to only upgrade some of the quiz attempts during the main upgrade. 2011-05-27 19:44:53 +01:00
Tim Hunt 61eca136c1 MDL-20636 remove the pretendupgrade script that does not work. 2011-05-27 18:10:15 +01:00
David Mudrák 64f7da2402 Merge pull request #2 from rwijaya/MDL-27450
MDL-27450 mod_survey: added conversion code to restore 1.9 backup to 2.1
2011-05-27 06:44:30 -07:00
Tim Hunt a4c982917e MDL-20636 truefalse qtype clean up other unit tests to use the new way of making test tf questions. 2011-05-27 14:43:28 +01:00
Tim Hunt 188e174457 MDL-20636 truefalse qtype was showing the false feedback even when no response was given. #386 2011-05-27 14:41:48 +01:00
David Mudrák 455fc30367 Merge pull request #1 from nebgor/MDL-27440_chunkyfix
MDL-27440 Backup - added database module 1.9 backup converter
2011-05-27 06:34:38 -07:00
Ruslan Kabalin 65c941a698 MDL-27171 messages: use moodle_url in admin_page_ messaging classes
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 14:07:06 +01:00
Ruslan Kabalin ebe0c008ca MDL-27171 messages: commenting style changes and extra comments
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
Signed-off-by: Dan Poltawski <dan.poltawski@luns.net.uk>
2011-05-27 14:07:06 +01:00
Ruslan Kabalin b53b2b0ee9 MDL-27171 messages: ensure message preferences for the core message providers are set
upgrade_core also attempts to populate the preferences, but since during the
first installation it is called before message outputs are set, we need to
force preferences setting at the end.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 14:07:06 +01:00
Ruslan Kabalin ae2a213e1e MDL-27171 lib/moodlelib: change the order of plugins returned by get_plugin_types function
We need to ensure that message/output is installed first so that default
messaging settings are set correctly afterwards.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 14:07:05 +01:00
Ruslan Kabalin 7a04c476a2 MDL-27171 messages: implement new syntax in messages.php and update processing
The new messaging default settings can be set in messages.php and deployed
during installation. This also ensures the removing of settings on plugin
uninstallation and contains the update script to populate current default
settings on the existing system when the new feature is introduced.

For security reason we have to avoid using library functions in upgrade
function, so we set defaults the blind way. At this point we do not expect
plugins to have individual messaging defaults presets anyway. The site
defaults are the same as were set for each user using
message_set_default_message_preferences function.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 14:06:56 +01:00
Ruslan Kabalin 3bcbd80ebe MDL-27642 messages: ensure message processors are removed when plugin is being uninstalled
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin f15097b5a3 MDL-27171 messages: remove excessive check from jabber send_message function
the parent send_message in messagelib.php does user/system configuration
checks before calling this method using the plugin instance.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin 2e075f41b9 MDL-27171 messages: change send_message to accomodate changes in messaging
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin 76a8aef9a1 MDL-27171 messages: allow using user IDs instead of objects in message_send function
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin 2af2210c4e MDL-27652 messages: fix varaibles names in message_send function
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin f8351d0927 MDL-27171 messages: do not keep empty messging configuration strings in user preferences
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin 814e373576 MDL-27171 messages: upgrade user profile messaging preferences interface
Existing user messaging preferences should accomodate default settings and
permissions.  This also includes some changes to default outputs preferences.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin 1d72e9d441 MDL-27171 messages: add default message outputs management interface
This introduces the new page where admin may change the permissions and
defaults for particular combination of message processors and providers.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin e710658d89 MDL-27171 forum: refactor forum settings
Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin 2f2137fca4 MDL-27171 messages: admin settings reordering
This includes:
 * most email settings go from general admin setings to email plugin settings
 * digestmailtime goes to mod/forum/settings.php
 * supportname, supportemail and supportpage go to Support contact page
 * all jabber settings go from general admin setings to jabber plugin settings

AMOS BEGIN
 MOV [jabberhost,admin],[jabberhost,message_jabber]
 MOV [configjabberhost,admin],[configjabberhost,message_jabber]
 MOV [jabberserver,admin],[jabberserver,message_jabber]
 MOV [configjabberserver,admin],[configjabberserver,message_jabber]
 MOV [jabberusername,admin],[jabberusername,message_jabber]
 MOV [configjabberusername,admin],[configjabberusername,message_jabber]
 MOV [jabberpassword,admin],[jabberpassword,message_jabber]
 MOV [configjabberpassword,admin],[configjabberpassword,message_jabber]
 MOV [jabberport,admin],[jabberport,message_jabber]
 MOV [configjabberport,admin],[configjabberport,message_jabber]
 MOV [digestmailtime,admin],[digestmailtime,forum]
 MOV [configdigestmailtime,admin],[configdigestmailtime,forum]
 MOV [allowusermailcharset,admin],[allowusermailcharset,message_email]
 MOV [configallowusermailcharset,admin],[configallowusermailcharset,message_email]
 MOV [mailnewline,admin],[mailnewline,message_email]
 MOV [configmailnewline,admin],[configmailnewline,message_email]
 MOV [noreplyaddress,admin],[noreplyaddress,message_email]
 MOV [confignoreplyaddress,admin],[confignoreplyaddress,message_email]
 MOV [sitemailcharset,admin],[sitemailcharset,message_email]
 MOV [configsitemailcharset,admin],[configsitemailcharset,message_email]
 MOV [smtphosts,admin],[smtphosts,message_email]
 MOV [configsmtphosts,admin],[configsmtphosts,message_email]
 MOV [smtpmaxbulk,admin],[smtpmaxbulk,message_email]
 MOV [configsmtpmaxbulk,admin],[configsmtpmaxbulk,message_email]
 MOV [smtpuser,admin],[smtpuser,message_email]
 MOV [configsmtpuser,admin],[configsmtpuser,message_email]
 MOV [smtppass,admin],[smtppass,message_email]
AMOS END

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:49:28 +01:00
Ruslan Kabalin 75c34c23a4 MDL-27171 messages: add message outputs management interface page
This introduces the page for management message outputs (processors) where
admin may enable/disable them and jump to configuration pages.
2011-05-27 13:49:28 +01:00
Ruslan Kabalin 21e6c82282 MDL-27643 messages: message_output_jabber should not send messges to emails
Jabber message should only be send if destination user has Jabber ID specified
in the profile. It should not use email if jabber id is not provided as it is
a performance breach.

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:44:49 +01:00
Ruslan Kabalin cd8f78c88f MDL-27171 messages: add new methods on the message_output class
This introduces the new methods to the abstract class: is_system_configured
and is_user_configured that are supposed to return boolean depending whether
required configuration has been made on both system or user level
respectively. These methods return true by default and and be overriden by
being declared in the plugin class itself

Signed-off-by: Ruslan Kabalin <ruslan.kabalin@luns.net.uk>
2011-05-27 13:44:49 +01:00
sam marshall 3fbe0e8a0f MDL-27627 Headers in moodleform_mod should have IDs 2011-05-27 13:40:02 +01:00
Adam Olley 0420f8dca0 MDL-25191: Properly destroy all elements of the modinfo cache 2011-05-27 13:28:55 +01:00
sam marshall 188a812794 MDL-27600 Navigation: Should be able to add nodes at other places than end of list 2011-05-27 13:18:03 +01:00
Tim Hunt 9199e7a569 MDL-20636 fix styling of essay questions. #371 2011-05-27 12:11:54 +01:00
Tim Hunt 612106b3a4 MDL-20636 fix URL handling for previews to always use Moodle URL.
Also, make the preview window big enough. #367
2011-05-27 11:49:23 +01:00
Wale Olujide dc0373c852 MDL-20636 Make more space for the qusetion name in the question bank view #580. 2011-05-27 10:31:37 +01:00
David Mudrak 66f79e50a3 Files conversion support improved
The new file manager class is introduced. Once its public properties are
set, one can use it to migrate either a single file or a whole
directory. The course_files conversion reworked so that it uses the new
manager now. The files.xml written at the very end of the conversion,
giving all handlers a chance to migrate the files they need.
2011-05-27 04:13:34 +02:00
Tim Hunt c014b989ba MDL-27649 Convert the calculated question types to use the new variants mechanism. 2011-05-26 21:53:47 +01:00
Tim Hunt 1da821bbde MDL-27649 support question variants as a first-class concept in the question engine. 2011-05-26 21:23:56 +01:00
David Mudrak bef9ad9540 MDL-27647 Added the afterburner theme to the whitelist of standard plugins 2011-05-26 21:51:01 +02:00
Tim Hunt f55192bf08 MDL-20636 improve the fomatting of the generated code. 2011-05-26 19:31:24 +01:00
Tim Hunt 61e2c3fb3f MDL-20636 fix question flag icons on the review page. 2011-05-26 19:27:38 +01:00
Tim Hunt 0500a3a92d MDL-27413 qtype_multianswer upgrade should be complete. 2011-05-26 19:19:45 +01:00
Tim Hunt b3e146268f MDL-27413 qtype_multianswer two more upgrade tests. 2011-05-26 18:35:52 +01:00
Tim Hunt 1cacb05989 MDL-27413 qtype_multianswer upgrade. First passing test. 2011-05-26 18:25:19 +01:00
David Mudrak 826d17f274 MDL-27444 The choice module backup converter now uses on-start and on-end handlers to write <options> wrapper
This is mainly for the demonstration purposes, the previous form works
as well.
2011-05-26 18:37:15 +02:00
Tim Hunt dcedbb0e25 MDL-27413 qtype_multianswer now works for all embedded types, I think. 2011-05-26 16:44:09 +01:00
David Mudrak f6f7a7266c Merge branch 'master' into backup-convert
Conflicts:
	backup/util/xml/parser/processors/simplified_parser_processor.class.php
	backup/util/xml/parser/simpletest/testparser.php
2011-05-26 17:30:27 +02:00
David Mudrak 6cfa5a3220 Added support for the on_xxx_start() event handler for MOD and BLOCK sub-paths 2011-05-26 16:59:59 +02:00
David Mudrak 4ddf9ac6b5 Added base class for the activity module subplugins 2011-05-26 16:59:51 +02:00
Tim Hunt 7ac7977cbe MDL-27413 qtype_multianswer embedded inline multichoice now work. 2011-05-26 15:03:47 +01:00
Tim Hunt c83d6cc1eb MDL-27413 qtype_multianswer add missing module.js 2011-05-26 11:25:48 +01:00
Tim Hunt 12c6e0087e MDL-27413 qtype_multianswer more coding style cleanup. 2011-05-26 11:25:26 +01:00
Tim Hunt df4be1222e MDL-27410 Fix broken calculated qytpe install. #670 2011-05-26 11:00:17 +01:00
Rossiani Wijaya 39a35cc589 MDL-27450 mod_survey: added conversion code to restore 1.9 backup to 2.1 site 2011-05-26 13:25:18 +08:00
Aparup Banerjee 4c9c90fbe2 MDL-27440 Backup - added database module 1.9 backup converter 2011-05-26 11:32:05 +08:00
Eloy Lafuente (stronk7) c44299c172 MDL-27636 restore - add support for after_restore() to plugins. Credit goes to Mark Nielsen. Thanks! 2011-05-26 02:37:16 +02:00
Eloy Lafuente (stronk7) 5fba6731d3 MDL-27541 course reports - allow teachers to view individual reports 2011-05-26 01:29:41 +02:00
Eloy Lafuente (stronk7) 16b5541dd2 weekly release 2.1dev 2011-05-26 00:26:54 +02:00
Eloy Lafuente (stronk7) c4cee99c7b MDL-27625 rating - fix one merging problem 2011-05-25 22:34:51 +02:00
Tim Hunt 42a5b055b7 MDL-27413 qtype_multianswer start work on rendering.
Embedded shortanswer questions now work.

Note that overlib is no longer required by the JS.
2011-05-25 19:31:07 +01:00
Tim Hunt df55047ee4 MDL-20636 Fix potential bug with qtype_shortanswer correct answer display. 2011-05-25 19:29:01 +01:00
Eloy Lafuente (stronk7) f2e725930b MDL-27471 rating - whitespace cleanup 2011-05-25 16:54:51 +02:00
Eloy Lafuente (stronk7) 5b52ce19c5 Merge branch 'MDL-27625_master' of git://github.com/stronk7/moodle
Conflicts:
	mod/forum/lib.php
2011-05-25 16:37:43 +02:00
David Mudrak d777f26837 MDL-27445 Fixed the deprecated call 2011-05-25 12:13:26 +02:00
Aparup Banerjee d1711071f4 MDL-27445 added moodle1 backup converter for label 2011-05-25 12:08:00 +02:00
Eloy Lafuente (stronk7) 5693d56cd8 MDL-27625 rating - consider RATING_UNSET_RATING a valid rating value 2011-05-25 12:00:16 +02:00
Eloy Lafuente (stronk7) 28e2b08582 Merge branch 'MDL-27594' of git://github.com/stronk7/moodle 2011-05-25 10:16:10 +02:00
David Mudrak ad28527828 MDL-27445 Fixed the deprecated call 2011-05-24 16:31:28 +02:00
Aparup Banerjee b391176a0b MDL-27445 added moodle1 backup converter for chat 2011-05-24 16:17:51 +02:00
David Mudrak 2fe7d14a04 The generation of module.xml and friends moved to a later phase
This is needed to give the modules a chance to actually rewrite course
modules related information. Resource module needs this so it is able to
split its own information into its successors (url, folder, page etc).
2011-05-24 16:01:04 +02:00
David Mudrak 8bcefb3254 Activity module handler get_moduleid() replaced with get_cminfo() 2011-05-24 16:01:00 +02:00
David Mudrak 6357693c8b Extended debugging information thrown by an exception 2011-05-24 16:00:55 +02:00
Eloy Lafuente (stronk7) d4dd06591b MDL-27594 backup - out unused (and incorrect) condition + stronger tests 2011-05-24 11:55:39 +02:00
Eloy Lafuente (stronk7) eb78f0632d MDL-27594 backup - fix start/end notifications on empty chunks 2011-05-24 11:01:00 +02:00
Sam Hemelryk 85d0c7f6b2 MDL-22833 Cleaned up afterburner footer 2011-05-24 15:54:49 +08:00
Sam Hemelryk 12b3d58286 Merge branch 'MDL-22833' of git://github.com/MaryE/moodle.git 2011-05-24 15:32:27 +08:00
David Mudrak 8b866ce4b1 Merge branch 'MDL-27439' of git://github.com/nebgor/moodle into backup-convert 2011-05-24 09:21:38 +02:00
Tim Hunt fa6c862065 MDL-27413 unit tests for some of the new multianswer code. 2011-05-23 20:00:05 +01:00
Tim Hunt ab50232b7e MDL-27413 start conversion of the multianswer qtype to the new question engine. 2011-05-23 16:45:12 +01:00
Tim Hunt 0c3fa8209e MDL-20636 a bit of clode clean-up in calculated*. 2011-05-23 16:44:21 +01:00
Eloy Lafuente (stronk7) b47dcdf0de MDL-27471 minor fixups 2011-05-23 12:42:15 +02:00
Sam Hemelryk 2b04c41c58 MDL-27471 Adding mandatory component & ratingarea to the ratings API + other fixes
* Added the component and ratingarea fields and implemented it throughout
  the rating API as mandatory fields
* Cleanup rating indexes
* Upgrade forum/data/glossary ratings
* Moved the logic in the render_rating method to methods of the rating object.
* Added new callback for checking ratingareas
* Cleaned comments here and there
* Mark the xxx_get_participants methods as deprecated
* Refactor rate_ajax and ratingsuser_can_view_aggregate methods
* Cleaned up rating/index.php to use html_table object and moved inline styles to CSS.
* Added missing properties of the rating object that were being set throughout the rating
  API.
2011-05-23 12:35:39 +02:00
Eloy Lafuente (stronk7) 7a01a2d0ca Merge branch 'MDL-27532-master' of git://github.com/sammarshallou/moodle 2011-05-23 10:29:33 +02:00
Sam Hemelryk 2c2034c9c3 Merge branch 'master_MDL-25177_choice_windowfix' of git://github.com/danmarsden/moodle 2011-05-23 11:32:23 +08:00
Sam Hemelryk 34997cf89e Merge branch 'MDL-27530_head' of git://github.com/grabs/moodle 2011-05-23 11:24:39 +08:00
Aparup Banerjee 0193d9dfe7 MDL-27428 accessibility : added a fourth argument to event's subscription and delegation methods to specify selector actions.
- selected actions will fire the event through to the relevant handling functions.
2011-05-23 11:13:52 +08:00
Aparup Banerjee f93844f3d7 MDL-27428 accessibility : added keyboard support to navigational menus loaded via ajax. 2011-05-23 11:13:36 +08:00
Aparup Banerjee eb25449ae6 MDL-27428 accessibility : added keyboard navigation to dock arrow keys expand and collapse. enter and space will toggle actions. 2011-05-23 11:13:20 +08:00
Aparup Banerjee 32561cafd4 MDL-27428 accessibility : made navigation and settings menu category span nodes navigable using tabs with tabindex=0 2011-05-23 11:12:53 +08:00
Aparup Banerjee 1e22cd351f MDL-27428 accessibility : allowed enter/space/left_arrow/right_arrow to expand/collapse navigation & settings menu branches
- note: a menu node branch that is a link will be followed instead of toggling the branch.
2011-05-23 11:12:35 +08:00
Eloy Lafuente (stronk7) 54b8f33421 MDL-27594 backup - fix start/end notifications on empty chunks 2011-05-23 00:58:45 +02:00
Tim Hunt 59a3fcd3eb MDL-20636 Fix a lot more coding style issues. 2011-05-20 20:18:04 +01:00
Tim Hunt e0736817f0 MDL-20636 fix some more coding style issues in the question code. 2011-05-20 18:50:41 +01:00
Tim Hunt 449bfe90c6 MDL-20636 quiz let users with capability mod/quiz:grade, but not mod/quiz:viewreports see the manual grading report in the navigation. OU bug #412. 2011-05-20 18:25:07 +01:00
Tim Hunt 667cdde361 MDL-20636 Implement upgrade of calculated* question type attempts. 2011-05-20 18:22:35 +01:00
David Mudrak 8312ab674a Course files conversion 2011-05-20 11:59:41 +02:00
David Mudrak f3b0b1e552 The write_xml() does not put 'id' into attributes implicitly
In some situations - like in inforef.xml - we need id to be proper
nested citizen.
2011-05-20 11:29:00 +02:00
David Mudrak 716a9616e3 The handlers now throw moodle1_convert_exception instead of convert_exception 2011-05-20 10:19:28 +02:00
David Mudrak 26cac34a6c Improved get_contextid()
For system and course levels, we do not need itemid as we work with
single system context and single course context only. Thanks to this, we
can generate contextid for the restored course even we do not know its
original id yet.
2011-05-20 10:19:28 +02:00
David Mudrak 6700d288b3 New get_nextid() method
This is useful for generating artificial database records ids.
2011-05-20 10:19:27 +02:00
David Mudrak dbf6843a72 Include a course file in the unit test 2011-05-20 10:19:27 +02:00
David Mudrak 6d73f18573 New method get_stash_itemids()
This will be useful to build inforef.xml files.
2011-05-20 10:19:22 +02:00
David Mudrak 01b922fe70 Trivial improvement of member variables doc 2011-05-20 09:39:22 +02:00
Aparup Banerjee be53cf4e4c MDL-27439 added moodle1 backup converter for assignment
- only recreates assignment module, not user data or submissions yet.
2011-05-20 11:59:20 +08:00
Tim Hunt c35bf0e6b1 MDL-20636 local_qeupgradehelper use a textarea in extracttestcase for easier copy/paste. 2011-05-19 20:32:44 +01:00
Tim Hunt 2db6fbad97 MDL-20636 make upgradehelper able to reset badly upgraded attempts
Obviously, these are the ones where it most important to be able to redo the upgrade.
2011-05-19 20:27:12 +01:00
Tim Hunt ffe4d23abd MDL-20636 make question upgrade more robust for incompatible question types. 2011-05-19 20:27:09 +01:00
Tim Hunt e35ba43c91 MDL-20636 make syncronised datasets work for calculated* questions. 2011-05-19 19:06:07 +01:00
Tim Hunt 0eb253f7f6 MDL-20636 quiz restart preview button was missing since the renderer refactor. 2011-05-19 19:05:25 +01:00
Tim Hunt d1770e4258 MDL-27410, MDL-27412 make the calculated* qtypes work in the statistics report. 2011-05-19 18:12:38 +01:00
Tim Hunt 39153237f5 MDL-20636 fix broken links in the statistics report. 2011-05-19 18:11:52 +01:00
Tim Hunt 2178cd3a12 MDL-20636 Dean's refactoring had broken the quiz summary page. 2011-05-19 17:52:52 +01:00
Tim Hunt b130270d2d MDL-20636 Add support for hints to the calculated* questions. 2011-05-19 17:38:38 +01:00
Tim Hunt cdece95ea4 MDL-27412 Upgrade the calculatedmulti question type to the new question engine. 2011-05-19 17:14:09 +01:00
David Mudrak 2304cbaacd Do not try to convert activity modules that do not have the converter implemented yet
This checks for the presence of moodle1 library in the module directory.
If there is no such file, the converter does not include the module in
the list of included modules.

Note that some files (like module.xml) are created for such skipped
modules anyway. But restore process seems to use the information from
moodle_backup.xml so it does not try to restore them.
2011-05-19 14:25:37 +02:00
David Mudrak 317f1c6f61 Generate fake XML files to make the restore process happy
With these changes I was able to restore the very first 1.9 course
containing a forum and a choice.
2011-05-19 13:56:43 +02:00
Andrew Davis (andyjdavis) ab1da2675d MDL-27442 forum: allow forum to be restored into 2.1 from a 1.9 backup 2011-05-19 13:41:01 +02:00
Tim Hunt efe3e87b61 MDL-27411 upgrade the calculatedsimple qtype to the new question engine. 2011-05-19 12:20:49 +01:00
David Mudrak 46ff8b0ecf The handler's process_xxx() method is not mandatory any more
It was realized that it is pretty common to register a convert_path just
to be able to attach on-start or on-end listeners to it, without actual
processing data. So now, the handler must provide at least one of these
three methods and the process_xxx() does not need to be there if it is
not needed.
2011-05-19 03:17:18 +02:00
Dan Marsden 6fa51b70a5 MDL-25177 Choice - fix typo for form creation causing pop-up window - thanks to Jason Hardin for fix 2011-05-19 13:01:21 +12:00
Tim Hunt 18f9b2d2cf MDL-27410 qtype_calculated fix basic question editing and preview.
At least, after these changes, I was able to create a calculated question through the Moodle UI and then preview it. I am sure more testing and fixing is needed to make sure everything works.
2011-05-18 21:15:25 +01:00
Tim Hunt 1da4060f65 MDL-27410 qtype_calculated works in my unit tests.
Probably does not work through the Moodle UI yet.
2011-05-18 17:21:26 +01:00
Tim Hunt f580e0e4b0 MDL-20636 Fix some minor problems with the question unit tests. 2011-05-18 17:07:16 +01:00
David Mudrak ae80f68f31 Improvements in moodle1_xml_handler external API
The methods are protected now as they are supposed to be used by
subclasses only. Added a new method to check if the output writer has
been opened.
2011-05-18 16:32:51 +02:00
David Mudrak c18f90f22f Merge remote branch 'github/master' into backup-convert 2011-05-18 16:08:15 +02:00
sam marshall 5e0dae125d MDL-27532 Add backup support for course report per-course data 2011-05-18 14:56:11 +01:00
Tim Hunt 19e911a251 MDL-27410 qtype_calculated better errorhandling for invalid expressions.
Better method names.
2011-05-18 14:12:34 +01:00
David Mudrak c171d28ebc The basic wrapper for question categories conversion
The QUESTION_CATEGORIES tag is optional in moodle.xml but the file
questions.xml is required by the moodle2 restore process. So here we
make sure that at least an empty file is created.
2011-05-18 14:33:05 +02:00
David Mudrak ba66847b71 Roles definition conversion 2011-05-18 14:12:52 +02:00
David Mudrak 96f7c7ad72 Implemented new XML transformer for the files being written during the conversion 2011-05-18 14:10:04 +02:00
David Mudrak 71d1751c53 Improved the information display about a non-standard backup file 2011-05-18 12:19:57 +02:00
Sam Hemelryk d04f7fb4a8 weekly release 2.1dev 2011-05-18 18:11:10 +08:00
Sam Hemelryk f138b7c13b MDL-27161 Improved the 2 new strings in assignment 2011-05-18 17:29:39 +08:00
Sam Hemelryk 74cf2d0015 MDL-26704 Fixed up variable typo 2011-05-18 15:32:40 +08:00
David Mudrak f666f14930 The first attempt to include backup conversion in the restore process
With this initial implementation, we do not display any information
about the backup contents yet. The non-standard backup file is just
silently converted at the beginning of the settings stage, as soon as
the restore controller is available.

In the future we will probably want to display the information about the
contents of the converted file as if we were restoring from standard
MBZ format. However this includes more work in the restore UI machinery
and I leave it open for now.
2011-05-18 01:55:27 +02:00
David Mudrak 3a0767218a The core_backup_renderer does not need the full backup information any more
In the previous implementation, the renderer needed full backup
information just to see if its type is TYPE_1COURSE or not. For
non-standard backups, we do not have the full backup information
available but we can easily decide if we are restoring the whole course
or just its part.
2011-05-18 01:14:24 +02:00
David Mudrak d51345c7c6 Fixed the class name in the calling code after a recent change 2011-05-18 00:55:24 +02:00
David Mudrak 179982a400 Added missing description of the moodle1 converter 2011-05-18 00:54:00 +02:00
David Mudrak 4eb2a097c5 The display() method in backup/restore UI returns the HTML rather then echoing it
This implementation uses a hacky trick with the output buffer unless
someone finds a time to add support for returning the HTML from
quickforms.
2011-05-18 00:50:26 +02:00
Tim Hunt 0652547685 MDL-27410 qtype_calculated start working on the new code for the question type.
This is an attempt to start thinking about how to handle the dataset values.
2011-05-17 18:28:16 +01:00
Eloy Lafuente (stronk7) faf0e91a4b MDL-27192 Global scope does not need global usage 2011-05-17 18:48:20 +02:00
Eloy Lafuente (stronk7) 79da959b55 Merge branch 'wip-MDL-27192_MASTER' of git://github.com/jason-platts/moodle 2011-05-17 18:44:16 +02:00
Tim Hunt afe24f850b MDL-20636 Rename questiontype.php to questiontypebase.php. Also some conde-checker issues. 2011-05-17 16:46:57 +01:00
Jason Platts 8acd718118 MDL-27192 Page context error on calendar export with custom user
profile fields
2011-05-17 16:12:26 +01:00
Tim Hunt 8200ccd66f MDL-27411 qtype_calculatedsimple Fix lots of coding style issues. 2011-05-17 16:01:51 +01:00
Tim Hunt 29b689142f MDL-27412 qtype_calculatedmulti Fix lots of coding style issues. 2011-05-17 16:01:16 +01:00
Eloy Lafuente (stronk7) 4d7e02616b Merge branch 'MDL-27386_HEAD2' of git://github.com/rwijaya/moodle 2011-05-17 14:19:23 +02:00
stabijoh f63e0bb61f MDL-27294 Fix for fusion and overlay themes on zooming text 2011-05-17 07:28:13 -04:00
Eloy Lafuente (stronk7) 94a74f549a MDL-26704 gradebook: adding TODO comment to avoid forgetting 2011-05-17 11:58:22 +02:00
Eloy Lafuente (stronk7) dcc26efb70 Merge branch 'MDL-26704_user_outline_report_master' of git://github.com/andyjdavis/moodle 2011-05-17 11:55:04 +02:00
Tim Hunt f184c65cda MDL-27410 Big cleanup of the coding style in qtype_calculated. 2011-05-16 18:48:50 +01:00
David Mudrak 383f6f63c7 Fixed wrong class name 2011-05-16 19:05:34 +02:00
David Mudrak 99a82518eb The main moodle_backup.xml file is now being generated by the converter 2011-05-16 19:02:13 +02:00
Andreas Grabs a193a0cfa1 MDL-27530 The webdav-repository loads empty files 2011-05-16 15:35:16 +02:00
Tim Hunt 8f9145bb52 MDL-27505 Remove the ou-specific question types from the main branch.
The OU question types are now available from https://github.com/timhunt.
2011-05-16 08:30:44 +01:00
Eloy Lafuente (stronk7) 14c3fd5f83 Merge branch 'MDL-26436_close_recordsets_master' of git://github.com/andyjdavis/moodle 2011-05-16 09:23:42 +02:00
Sam Hemelryk 870b8b0402 Merge branch 'MDL-27161_head' of git://github.com/rwijaya/moodle.git 2011-05-16 12:28:18 +08:00
Sam Hemelryk 731d1b89ad Merge branch 'MDL-27387_rating_scale_validation_master2' of git://github.com/andyjdavis/moodle 2011-05-16 12:14:11 +08:00
Sam Hemelryk c23ee732c2 Merge branch 'MDL-26075_head' of git://github.com/grabs/moodle 2011-05-16 11:51:41 +08:00
Sam Hemelryk d5a99a030c Merge branch 'start_end_notifications' of git://github.com/stronk7/moodle 2011-05-16 10:06:49 +08:00
Sam Hemelryk 62ff4fe30b Merge branch 'prevent_profiling_before_install' of git://github.com/stronk7/moodle 2011-05-16 09:56:42 +08:00
Glenn Ansley 3efd551351 MDL-27494 choice - fixing incorrectly named column in backup 2011-05-16 03:24:30 +02:00
Eloy Lafuente (stronk7) bed4c52c67 Merge branch 'MDL-26436_close_recordsets2_master' of git://github.com/andyjdavis/moodle 2011-05-16 02:45:51 +02:00
Tim Hunt 9c197f4445 MDL-20636 Fix some more codechecker issues. 2011-05-14 22:53:25 +01:00
Tim Hunt bee82469d4 MDL-27408 Database upgrade for adaptive mode.
Could really do with more unit tests.
2011-05-13 16:55:14 +01:00
Tim Hunt 0c404c4211 MDL-20636 QE upgrade helper: Make resetting quiz attempts work. 2011-05-13 16:46:47 +01:00
Tim Hunt d02ac70862 MDL-20636 Add warning about very old attempts to listpreupgrade.php. 2011-05-13 11:57:26 +01:00
Tim Hunt 1ab31a1b92 MDL-20636 Make extracttestcase.php work after the upgrade too. 2011-05-13 11:42:37 +01:00
Tim Hunt 2d43a02323 MDL-20636 Make extracttestcase work. 2011-05-13 11:34:18 +01:00
David Mudrak 17d2e210b7 Renamed converter factory method to more self-descriptive get_converter() 2011-05-13 12:06:10 +02:00
Tim Hunt c468ce5922 MDL-20636 Fix upgrade of numerical questions. 2011-05-13 11:04:23 +01:00
David Mudrak 1cc0e42a86 The current element's data are passed to the on_element_end() event handler 2011-05-13 10:16:25 +02:00
Rossiani Wijaya 4bb7783ef1 MDL-27386: fixed mform for lesson essay grading (head) 2011-05-13 14:14:19 +08:00
Sam Hemelryk 5b239d6e8e MDL-27456 Fixed typo in comment/lib.php after last refatoring 2011-05-13 11:18:19 +08:00
David Mudrak eb3dc80bc3 Merge branch 'master' into backup-convert 2011-05-13 03:16:13 +02:00
David Mudrak a5ea28b32d Removing relics of the previous plan/tasks/steps based implementation
Kudos to Mark Nielsen for his initial work on this project. In his code,
Mark described the valuable logic of the conversion using a framework
mirroring plan/tasks/steps based architecture of the backup and restore.
My attempt to simplify it led to the current handlers-based
architecture.
2011-05-13 03:09:26 +02:00
David Mudrak 5f3185feb8 MDL-27444 Choice module 1.9 backup converts to 2.0 format
So far, user related data are not supported by the project.
2011-05-13 02:42:44 +02:00
David Mudrak baa6f6a848 Improved course module info conversion 2011-05-13 02:41:47 +02:00
Tim Hunt aac80ff319 MDL-20636 fix most of the remaining codechecker issues in mod/quiz and lib/questionlib.php. 2011-05-13 00:33:44 +01:00
Tim Hunt d3bab68c78 MDL-27408 update all question and quiz plugin version.php files. 2011-05-12 23:18:47 +01:00
Tim Hunt ab6cb45b7b MDL-27408 fix question engine upgrade issues on MySQL. 2011-05-12 23:17:58 +01:00
Tim Hunt 39759ac468 MDL-27408 fix a few minor bugs with the upgrade from 2.0.
More testing, and adaptive mode, still to come.
2011-05-12 21:03:24 +01:00
Tim Hunt bb28e3bc5e MDL-27408 Moved the question engine install/upgrade code into the proper place.
I have tested upgrade from the previous development version, and a clean install. Upgrade from 2.0 still needs more work.
2011-05-12 18:58:50 +01:00
David Mudrak d5d02635d7 Refactored get_contextid() and unit tests for it 2011-05-12 18:36:03 +02:00
David Mudrak 9b5f1ad5fb Improved the moodle1_convert stashing subsystem 2011-05-12 18:18:29 +02:00
Andreas Grabs 74e3f2c67e MDL-26075 Sending Message through Feedback Component throws an error 2011-05-12 17:12:11 +02:00
David Mudrak beb7de3736 More backup-converter API improvements
Added write_xml() helper that writes the given tree-ish structure into
the current xml writer. Improved get_contextid() so that it can use
indices for searching data. Added set_stash() and get_stash() helper
methods.
2011-05-12 15:36:09 +02:00
Rossiani Wijaya e512715b89 MDL-27161: fixed optional setting for 'require grading' to prevent page lock out (head) 2011-05-12 17:32:00 +08:00
Tim Hunt dcd03928ab MDL-20636 split question/engine/lib.php into several smaller files. 2011-05-12 10:28:09 +01:00
Aparup Banerjee b38f0baad4 MDL-27386 lesson fix mform->score not saving (wip) 2011-05-12 16:00:18 +08:00
Eloy Lafuente (stronk7) 68fabb5c7e MDL-27481 profiling - prevent data to be sent to DB before it is available 2011-05-12 02:04:13 +02:00
Tim Hunt 25a03faaca MDL-20636 fix many code-checker issues in mod/quiz. 2011-05-12 00:30:25 +01:00
Tim Hunt cfd811c8eb MDL-20636 fix upgrade issue. 2011-05-11 22:29:55 +01:00
Tim Hunt a2ac234956 MDL-20636 Merge remote-tracking branch 'moodle/master' into upgrade
Conflicts:
	lib/filestorage/file_storage.php
	mod/quiz/attemptlib.php
	mod/quiz/lib.php
	mod/quiz/mod_form.php
	mod/quiz/report/overview/overview_table.php
	mod/quiz/report/overview/report.php
	mod/quiz/report/responses/report.php
	mod/quiz/report/responses/responses_table.php
	mod/quiz/report/statistics/db/install.xml
	mod/quiz/report/statistics/qstats.php
	mod/quiz/report/statistics/report.php
	mod/quiz/report/statistics/statistics_question_table.php
	mod/quiz/report/statistics/statistics_table.php
	mod/quiz/report/statistics/version.php
	mod/quiz/review.php
	mod/quiz/reviewquestion.php
	mod/quiz/startattempt.php
	mod/quiz/styles.css
	mod/quiz/view.php
	question/type/essay/questiontype.php
	question/type/match/backup/moodle2/backup_qtype_match_plugin.class.php
	question/type/match/backup/moodle2/restore_qtype_match_plugin.class.php
	question/type/numerical/display.html
	question/type/numerical/questiontype.php
	question/type/questiontype.php
	question/type/random/questiontype.php
	question/type/shortanswer/questiontype.php
	theme/base/style/question.css
2011-05-11 20:29:49 +01:00
Eloy Lafuente (stronk7) 8298bedab7 MDL-27475 backup - fix start/end notifications order + tests 2011-05-11 20:01:13 +02:00
Tim Hunt fca599a683 MDL-20636 Question engine upgrade unit tests for description, essay, match and numerical. 2011-05-11 18:17:11 +01:00
Tim Hunt d04626e4cd MDL-20636 Question engine upgrade unit tests for shortanswer, random and multichoice. 2011-05-11 17:19:12 +01:00
Tim Hunt 38d42fc476 MDL-27408 question engine upgrade, change to update the quiz settings in config_plugins.
Also start creating the unit tests for the upgrade.
2011-05-11 15:32:29 +01:00
Tim Hunt cd300cf34c MDL-20636 Initial pass at converting this code to Moodle 2.0 style. 2011-05-11 15:32:26 +01:00
Tim Hunt cca6d63252 MDL-20636 Refactor the various list pages a bit. 2011-05-11 15:32:24 +01:00
Tim Hunt 5ab62d9d3d MDL-20636 listpreupgrade done. 2011-05-11 15:32:22 +01:00
Tim Hunt 22cd62caa9 MDL-20636 Cleanup in the upgradehelper plugin. 2011-05-11 15:32:20 +01:00
Tim Hunt 92dcdc88df MDL-20636 Implement lots of the post-upgrade functionality for the upgrade helper plugin. 2011-05-11 15:32:18 +01:00
Tim Hunt d98389ffed MDL-20636 Start of work on a local plugin to help with the question engine upgrade on large sites. 2011-05-11 15:32:16 +01:00
Tim Hunt 0859ff6503 MDL-20636 Re-organise all the old upgrade code, before I start work on it for real. 2011-05-11 15:32:14 +01:00
Dean Lennard 0de4393945 MDL-20636 moved header creation into seperate funciton 2011-05-11 15:04:19 +01:00
Dean Lennard 8e8bd3f967 MDL-20636 Changed renderer function scopes so they can be overridden. 2011-05-11 15:04:13 +01:00
Dean Lennard 2c3e2b53e6 MDL-20636 Added phpDoc comments 2011-05-11 15:04:07 +01:00
Eloy Lafuente (stronk7) de584990c6 weekly release 2.1dev 2011-05-11 15:12:20 +02:00
Andrew Davis (andyjdavis) 6ac149dce3 MDL-27387 rating: prevent the submission of ratings outside of the range allowed by the current scale 2011-05-11 11:29:31 +08:00
David Mudrak a5fe591280 MDL-27376 MDL-27377 MDL-27378 Backup converters refactoring - still work in progress
This patch mainly adds support for dispatching path-start and path-end events,
defines API to access backup_ids_temp table. Some ideas emailed by Mark
after his first review of the code are incorporated already.
2011-05-11 03:28:39 +02:00
David Mudrak 1e2c735111 MDL-27376 MDL-27377 MDL-27378 Backup converters refactoring - work in progress
These are David's changes of Mark's code that replace the
plan/tasks/steps infrastructure with a bit simpler one. The changes will
be described in the next commit that will actually finish the
conversion.

TODO: refactor backup/converter/moodle1/stepslib.php into conversion
handlers.
2011-05-10 17:58:00 +02:00
David Mudrak 0164592b8c MDL-27376 MDL-27377 Backup converters API refactored
* Several base_converter methods made protected when there was no obvious
reason why they should be public (subject of eventual change still).
* The conversion chain now constructed in advance before any converter
class is instantiated, using Dijkstra's algorithm.
2011-05-10 17:57:59 +02:00
David Mudrak e48477d94f MDL-22414 Fixed standard copyright file headers (R0417) 2011-05-10 17:57:59 +02:00
Eloy Lafuente (stronk7) 5b01180aed Apply parser processor new methods + observe $CFG->keeptempdirectoriesonbackup 2011-05-10 17:57:58 +02:00
Mark Nielsen be85390109 Adding moodle_backup.xml generation and updating course structure step 2011-05-10 17:57:58 +02:00
Mark Nielsen 8e2c53665e Adding basic block instance conversion 2011-05-10 17:57:58 +02:00
Mark Nielsen 5aee1af3f1 Adding plugin abstract class and adding a step to activities to generate their module.xml 2011-05-10 17:57:57 +02:00
Mark Nielsen 7c9d2927b8 Cleanup from last commit, just wanted prototype code to be saved to VCS 2011-05-10 17:57:57 +02:00
Mark Nielsen 72c089f117 Adding in activity support and adding base forum classes as proof of concept 2011-05-10 17:57:57 +02:00
Mark Nielsen 534d4294a4 Section conversion 2011-05-10 17:57:57 +02:00
Mark Nielsen 30a4a49421 Figured out how to get the final task to work properly 2011-05-10 17:57:56 +02:00
Mark Nielsen 7125544864 Adding to moodle1 abstract structured step 2011-05-10 17:57:56 +02:00
Mark Nielsen d2c32ec8a1 A start at a moodle1 abstract structured step 2011-05-10 17:57:56 +02:00
Mark Nielsen be145927c5 Creating stepslib.php and taskslib.php 2011-05-10 17:57:55 +02:00
Mark Nielsen 56bd1ab0e1 Added use of get_contextid and fixed some problems 2011-05-10 17:57:55 +02:00
Philip Cali a656fcb387 Adding the convert_file function to the file manager. 2011-05-10 17:57:55 +02:00
Mark Nielsen 62c5daf122 Adding doc block todos 2011-05-10 17:57:55 +02:00
Mark Nielsen 6c0235b375 Adding doc block 2011-05-10 17:57:54 +02:00
Mark Nielsen e10e887905 Might make it faster... 2011-05-10 17:57:54 +02:00
Mark Nielsen eba6af755c Re-arranging function definition 2011-05-10 17:57:53 +02:00
Philip Cali 142ec51fcd Added contextid generation... I think. 2011-05-10 17:57:53 +02:00
Mark Nielsen 970bc1f3e0 Adding root and final tasks 2011-05-10 17:57:53 +02:00
Mark Nielsen bb2e1609c5 Full example implementation of the convert course step 2011-05-10 17:57:53 +02:00
Philip Cali 5c10f37b8a Adding vanilla 1.9 moodle.xml for unit testing. 2011-05-10 17:57:52 +02:00
Mark Nielsen dda19810e0 Starting to unit test - fixed bugs, things are... working!?! 2011-05-10 17:57:52 +02:00
Mark Nielsen 653bc98b0e Fixing several bugs while actually trying to execute some of the code 2011-05-10 17:57:52 +02:00
Mark Nielsen 5af8804415 Moving converters into sub-directories so they can have other files and simpletest directories specific to them 2011-05-10 17:57:51 +02:00
Mark Nielsen 8450e2c41f Attempting to write up processing of the moodle.xml file - the converter collects all of the element paths to watch and then dispatches them to the convert_structure_step classes. 2011-05-10 17:57:51 +02:00
Mark Nielsen c5c8b3503a Making the conversion process more re-usable 2011-05-10 17:57:51 +02:00
Mark Nielsen 1e8c265c2b Added converter format detection and added conversion logic to restore controller 2011-05-10 17:57:50 +02:00
Mark Nielsen 7336701ff1 Minor fixes and added more methods 2011-05-10 17:57:50 +02:00
Mark Nielsen 17252e2d8a Adding some of the base classes and starting to fill out their methods/properties 2011-05-10 17:57:50 +02:00
Wale Olujide 3546187e63 MDL-20636 Fix for minor css issue for wip#372 2011-05-10 11:45:08 +01:00
Andrew Davis (andyjdavis) 017c440bb4 MDL-27460 roles: now closing a record set that wasnt being closed 2011-05-10 17:01:08 +08:00
Andrew Davis (andyjdavis) 19c5532b5d MDL-26436 message: reviewed use of recordsets in messaging 2011-05-10 16:37:06 +08:00
Andrew Davis (andyjdavis) 4433f871f2 MDL-26704 gradebook: added some intelligence to the dates displayed on the user outline activity report 2011-05-10 11:14:16 +08:00
Sam Hemelryk a0fcf81265 Merge branch 'MDL-27140_master' of git://github.com/stronk7/moodle 2011-05-10 09:45:40 +08:00
Eloy Lafuente (stronk7) 162bbbe2f4 MDL-27140 weeks course format - incorrect roll of dates on hidden sections
Credit goes to Nikhil Gupta, big thanks!
2011-05-09 18:15:10 +02:00
Eloy Lafuente (stronk7) 36da956322 Merge branch 'MDL-27401-master' of git://github.com/sammarshallou/moodle 2011-05-09 17:46:22 +02:00
Tim Hunt 78a61cd6d0 MDL-20636 quiz renderers. Some final clean-ups. 2011-05-09 14:22:20 +01:00
Dean Lennard 7933ab8c67 MDL-20636 Code Checked 2011-05-09 12:31:13 +01:00
Dean Lennard 37015e0cd1 MDL-20636 Convverted html to html::writer and code checked 2011-05-09 12:31:11 +01:00
Dean Lennard 88c7e2a9b6 MDL-20636 Changed guest access and enrollment code checking 2011-05-09 12:31:09 +01:00
Dean Lennard 56cef201da MDL-20636 Created view object in renderer file 2011-05-09 12:31:07 +01:00
Dean Lennard 3b7efd6d8f MDL-20636 Added viuew object as class 2011-05-09 12:31:05 +01:00
Dean Lennard fcd5e24506 MDL-20636 Code checked 2011-05-09 12:31:03 +01:00
Dean Lennard da59992eda MDL-20636 Made changes to view and renderer sections 2011-05-09 12:31:01 +01:00
Dean Lennard 8d47043fee MDL-20636 updates to code 2011-05-09 12:30:59 +01:00
Dean Lennard cbe8754358 MDL-20636 code checked 2011-05-09 12:30:57 +01:00
Dean Lennard 7886376a12 MDL-20636 changed accessrules to return the button instead of eco it and applied this change to render file 2011-05-09 12:30:55 +01:00
Dean Lennard 213d4cff9c MDL-20636 updates to view/renderer code 2011-05-09 12:30:53 +01:00
Dean Lennard 06eb64b8ba MDL-20636 added view page to the renderer file 2011-05-09 12:30:51 +01:00
Dean Lennard 13040e1452 MDL-20636 changes made to renderers, attempt and view 2011-05-09 12:30:49 +01:00
Dean Lennard 63be47d932 MDL-20636 Made changes to the three files and code checked 2011-05-09 12:30:47 +01:00
Dean Lennard bcd42560e3 MDL-20636 Updated code to include html writer 2011-05-09 12:30:45 +01:00
Dean Lennard 9f335e76fa MDL-20636 Fixed issues raised 2011-05-09 12:30:43 +01:00
Dean Lennard 606e07d574 MDL-20636 Attempt as converting attempt.php over to renderer 2011-05-09 12:30:41 +01:00
Tim Hunt b3782c71bf MDL-20636 My go and creating a renderer for mod/quiz/review.php.
Note that this breaks the attempt.php page; there are a lot of methods that are missing PHPdoc comment; there are probably now some unused methods that could be deleted; and there are a couple of places which could be handled a bit better.

But, overall, I think this way makes sense.
2011-05-09 12:30:39 +01:00
sam marshall 0367953eaf MDL-27401 Unit test errors in lib/simpletest/testpagelib_moodlepage.php 2011-05-09 11:15:55 +01:00
Andreas Grabs 439ae873af MDL-27422 The excel export fails in some conditions. 2011-05-09 17:27:06 +08:00
Sam Hemelryk 8f25ae26db Merge branch 'MDL-27325_master' of git://github.com/stronk7/moodle 2011-05-09 10:35:31 +08:00
Sam Hemelryk 644b14c552 Merge branch 'MDL-27367-HEAD' of git://github.com/srynot4sale/moodle 2011-05-09 10:20:15 +08:00
Eloy Lafuente (stronk7) 91a7cd842d Merge branch 'wip-MDL-27400-master' of git://github.com/samhemelryk/moodle 2011-05-09 02:04:34 +02:00
Eloy Lafuente (stronk7) a8f60a4d58 Merge branch 'MDL-27317-variable-name-typos' of git://github.com/mudrd8mz/moodle 2011-05-09 01:58:38 +02:00
Eloy Lafuente (stronk7) d1380a3c9a Merge branch 'MDL-27372' of git://github.com/nebgor/moodle 2011-05-09 01:54:46 +02:00
Eloy Lafuente (stronk7) 3c1ee10423 Merge branch 'MDL-27391-master' of git://github.com/sammarshallou/moodle 2011-05-09 00:58:55 +02:00
David Mudrak 52deafc143 MDL-27317 Fixed incorrect variable names in the language pack update
This was introduced by copying & pasting the code during 74a4c9.
2011-05-06 23:38:02 +02:00
Eloy Lafuente (stronk7) 86f456d8f0 MDL-27325 Adding some extreme, but 32bits safe, float tests 2011-05-06 16:07:17 +02:00
Eloy Lafuente (stronk7) 0c4c6d468a MDL-27325 Now also testing update_record and set_field 2011-05-06 16:07:17 +02:00
Eloy Lafuente (stronk7) 7aa9e45f56 MDL-27325 mysql: Avoid some implicit casting from float to varchar/text 2011-05-06 16:07:17 +02:00
Tim Hunt 6531aff715 MDL-27325 New DB unit tests to demonstrate the problem. 2011-05-06 16:07:17 +02:00
Eloy Lafuente (stronk7) 804ebc77b8 weekly release 2.1dev (emergency) 2011-05-06 14:44:46 +02:00
Sam Hemelryk faca4f2f29 MDL-27400 Fixed up typo in blocklib.php 2011-05-06 16:27:15 +08:00
Tim Hunt c749527bec MDL-20636 Finished backup and restore of attempt data. Yay 2011-05-05 21:26:25 +01:00
Tim Hunt 3b3d5e799d MDL-20636 Fix 2 essay issues. Wrong file area name and broken backup/restore. 2011-05-05 21:23:41 +01:00
Eloy Lafuente (stronk7) 327c24beea Merge branch 'MDL-27394_master' of git://github.com/timhunt/moodle 2011-05-05 22:00:58 +02:00
Tim Hunt 7bbe96dc16 MDL-27394 Moodle 2.0 backup and restore may randomise the order of multichoice/numerical/shortanswer answers 2011-05-05 19:17:41 +01:00
Tim Hunt 9e06daf251 MDL-27394 Moodle 2.0 backup and restore may randomise the order of multichoice/numerical/shortanswer answers 2011-05-05 18:53:43 +01:00
sam marshall 1cec45f1c0 MDL-26778 Completion unit tests broken by earlier change 2011-05-05 12:10:27 +01:00
Aparup Banerjee fce7424beb MDL-27372 moved blog comments to end of body of blog entry. we now see the entire blog entry without comments in the way. 2011-05-05 15:27:38 +08:00
Sam Hemelryk a02f87a838 Merge branch 's9_MDL-27382_dropbox_get_file_fix_master' of github.com:dongsheng/moodle 2011-05-05 13:25:36 +08:00
Sam Hemelryk 74704aab26 Merge branch 's9_MDL-27381_overwrite_dialog_safari_master' of github.com:dongsheng/moodle 2011-05-05 13:22:15 +08:00
Sam Hemelryk d6e0313e86 Merge branch 's9_MDL-26854_spam_comments_master_2' of git://github.com/dongsheng/moodle 2011-05-05 11:44:49 +08:00
Dongsheng Cai 480fe33538 MDL-26854 Added comments block lib.php, it contains comments callbacks 2011-05-05 11:22:39 +08:00
Sam Hemelryk d045b479f4 Merge branch 's9_MDL-26854_spam_comments_master_2' of git://github.com/dongsheng/moodle 2011-05-05 10:41:53 +08:00
Dongsheng Cai 1448c5952f MDL-27381 fixed 'overwrite files' dialog zindex in safari 2011-05-05 10:41:02 +08:00
Sam Hemelryk 2c82d0eeb0 Merge branch 'MDL-26838_ratings_bad_data_master4' of git://github.com/andyjdavis/moodle 2011-05-05 10:18:39 +08:00
Dongsheng Cai 991aa8ab57 MDL-27382 repository dropbox plugin, fixed bug of
file downloading path
2011-05-05 09:58:49 +08:00
Eloy Lafuente (stronk7) 156816d0b5 weekly release 2.1dev 2011-05-05 00:35:40 +02:00
Eloy Lafuente (stronk7) dd0ac53d7a Merge branch 'MDL-25594-HEAD' of git://github.com/srynot4sale/moodle 2011-05-04 16:08:59 +02:00
Sam Hemelryk 280b1b21c0 Merge branch 'MDL-26250-final6' of github.com:mouneyrac/moodle 2011-05-04 18:04:10 +08:00
Dongsheng Cai c1951ea953 MDL-26854 COMMENT
1. added pluginname_comment_validate callback to comments api
2. change permission callback defaults to false
3. Tidied up serveal areas of comments and implemented callback to
ignore system permissions for view (credits to Sam Hemelryk)

AMOS BEGIN
    MOV [modulerejectcomment,error],[callbackrejectcomment,error]
AMOS END
2011-05-04 17:23:46 +08:00
Eloy Lafuente (stronk7) 5f0ac7652b Merge branch 'MDL-26788_head' of git://github.com/rwijaya/moodle 2011-05-04 11:18:22 +02:00
Dongsheng Cai 99b15d4438 MDL-26388 Recent repository plugin should return draft url 2011-05-04 17:03:19 +08:00
Dongsheng Cai 6e7b113da9 MDL-26388 Recent repository plugin should return draft url 2011-05-04 15:46:15 +08:00
Andrew Davis (andyjdavis) 778361c330 MDL-26838 rating: multiple fixes after a review of rating validation code 2011-05-04 15:43:30 +08:00
Sam Hemelryk f4c7c735f5 Merge branch 's10_MDL-27330_dropbox_authorization_url_master' of github.com:dongsheng/moodle 2011-05-04 13:53:47 +08:00
Jerome Mouneyrac 543967a9e8 MDL-26250 Create a web service function that enrols users to a certain course 2011-05-04 12:23:18 +08:00
Aaron Barnes e874292134 MDL-25594 completion: Remove unused column from query
Which is also a reserved word.
2011-05-04 13:02:28 +12:00
Aaron Barnes 0e5e1daaee MDL-26190 completion blocks: Completion blocks shouldn't ever be blank 2011-05-04 12:55:26 +12:00
Tim Hunt d6522c33a1 MDL-20636 Fix qtype backup issues. 2011-05-03 17:53:12 +01:00
stabijoh f26500d477 MDL-25477 fix for Anomoly theme doesn't display bullets for unordered lists in descriptions or labels 2011-05-03 07:03:06 -04:00
Dongsheng Cai 810aea11df MDL-27330 repository dropbox plugin
Dropbox changed authorization URL, and added a few error check code
2011-05-03 17:41:03 +08:00
Sam Hemelryk c8ad2c12ba Merged MDL-26388 Fixed whitespace 2011-05-03 16:27:31 +08:00
Sam Hemelryk 870815faed Merged MDL-25805 Renamed property and function to be a little more descriptive 2011-05-03 15:41:34 +08:00
Aaron Barnes 5227344a07 MDL-26628 completion report: Fix hard coded strings in Completion report 2011-05-03 11:24:41 +08:00
Sam Hemelryk 5f1c825dfa Merged MDL-27251 Fixed up whitespace, Fixed broken string, reworded new strings 2011-05-03 10:51:06 +08:00
Eloy Lafuente (stronk7) bff0e85d37 Merge branch 'MDL-25840' of git://github.com/nebgor/moodle 2011-05-03 01:08:00 +02:00
Eloy Lafuente (stronk7) 069e955519 Merge branch 'MDL-27293-customlang-timeout' of git://github.com/mudrd8mz/moodle 2011-05-02 16:14:05 +02:00
Aparup Banerjee b9bcad24db MDL-25805 Roles propagated ugly hack for parent seeing child activities into navigation lib to display nav node. 2011-05-02 20:08:08 +08:00
Eloy Lafuente (stronk7) c0977cccd1 Merge branch 'MDL-26714_master' of git://github.com/timhunt/moodle 2011-05-02 11:46:10 +02:00
Sam Hemelryk fa49d24312 Merged changes and fixed whitespace issues for MDL-23188 2011-05-02 14:43:24 +08:00
Sam Hemelryk c0ceb0bab3 Merge branch 'MDL-26955-themedir-plugindirectory' of git://github.com/mudrd8mz/moodle 2011-05-02 14:21:16 +08:00
Sam Hemelryk 0af90dca01 Merge branch 'MDL-27116-themedir-config' of git://github.com/mudrd8mz/moodle 2011-05-02 14:16:13 +08:00
Sam Hemelryk 598a9f7726 Merge branch 'MDL-27155_master' of git://github.com/timhunt/moodle 2011-05-02 14:03:36 +08:00
Sam Hemelryk 290a5db67e Merge branch 'MDL-27246-cutomlang-version' of git://github.com/mudrd8mz/moodle 2011-05-02 12:11:23 +08:00
Dongsheng Cai f392caba15 MDL-26388, pop up a dialog when attaching a file already being used in draft area. 2011-05-02 10:11:19 +08:00
Tim Hunt d8a3b87c0e MDL-27340 tablelib.php fix a notice when is false. 2011-05-01 17:36:19 +01:00
Andrew Davis (andyjdavis) 2c2ff8d5fc MDL-26838 rating: remove logged in users ability to sidestep rating validity checks 2011-05-01 18:50:13 +08:00
Mary Evans 041cfef9f7 MDL-22833 adding Afterburner theme to Moodle CORE 2011-05-01 03:10:11 +01:00
Tim Hunt 64d5c1c376 MDL-27155 qtype_numerical problem with GIFT import. 2011-04-29 14:14:55 +01:00
stabijoh 5fe87e7d44 MDL-27118 Text in a highlighted topic box is white on white in the Leatherbound theme. 2011-04-29 07:40:53 -04:00
Rossiani Wijaya f672e3e920 MDL-26788 - grading in lesson containing essays (head) 2011-04-29 18:20:19 +08:00
Tim Hunt 4c51e56d98 MDL-26714 qtype_multianswer regression from the previous commit for numerical subquestions. 2011-04-28 23:31:07 +01:00
Tim Hunt bea1a6a73a MDL-20636 Work-in-progress on quiz attempt backup and restore. 2011-04-28 21:21:43 +01:00
Tim Hunt d1de533164 MDL-20636 qtype_numerical oops, I deleted a function from the wrong place. Fix. 2011-04-28 20:22:45 +01:00
Tim Hunt 5073fb743f MDL-20636 qtype_numerical multi-choice units now work, I think. 2011-04-28 20:06:51 +01:00
Tim Hunt ae3e2e6e7f MDL-20636 qtype_numerical Fix a bunch of minor issues found by Pierre. 2011-04-28 20:06:49 +01:00
Tim Hunt 5d2465c3f4 MDL-20636 numerical qtype: assorted changes
1. database upgrade to merge instructions into the questiontext field,
and remove the UNITDISPLAY option.

2. Changes to the validation in deferred feedback mode, so students
are warned about incomplete answers.

3. Using this to wark students if they enter an answer that is not
recognised as a number.
2011-04-28 20:06:47 +01:00
Tim Hunt 52ad7e0c1b MDL-20636 Tidy-up of numerical questiontype.php. 2011-04-28 20:06:45 +01:00
Tim Hunt d7d8cee279 MDL-20636 Finish implementing answer processing. 2011-04-28 20:06:43 +01:00
Tim Hunt b3c9da2f0a MDL-20636 I think I have now find a reliable way to parse responses. 2011-04-28 20:06:41 +01:00
Tim Hunt 544de1c035 MDL-20636 Lots of work on numerical answer matching.
Still more to do. Not all the unit tests pass at the moment.
2011-04-28 20:06:39 +01:00
Tim Hunt 91d431240f MDL-20636 Better way of handling the creation of test questions for different question types. 2011-04-28 20:06:37 +01:00
Tim Hunt fdd015b779 MDL-20636 Fix some minor editing problems, and a bunch of coding style. 2011-04-28 20:06:35 +01:00
Tim Hunt 1fa3936440 MDL-20636 Fix the numerical qtype editing form. 2011-04-28 20:06:33 +01:00
Tim Hunt 397bd29549 MDL-20636 Fix qtype_numerical get_question_options. 2011-04-28 20:06:31 +01:00
Tim Hunt 0ff173d3f2 MDL-20636 Fix numerical unit tests. 2011-04-28 20:06:29 +01:00
Tim Hunt 50c0296698 MDL-26724 notice from numerical qtype when no answer is given. 2011-04-28 20:06:27 +01:00
ppichet 062f7e95c9 MDL-26445 question -fix numerical unit grade
fix unit penalty grading and display

Signed-off-by: ppichet <pichet.pierre@uqam.ca>
2011-04-28 20:06:25 +01:00
Tim Hunt f77f47ec56 MDL-20636 Start converting the numerical question type. 2011-04-28 20:06:24 +01:00
stabijoh b00982db34 MDL-23188 Implement custom menu where possible in core themes, serenity and anomaly 2011-04-27 08:38:15 -04:00
David Mudrak 3dd1d7e701 MDL-27116 theme_config::find_theme_location() respects $CFG->themedir
Credit goes to Jai Gupta for the idea of the patch.
2011-04-27 14:09:08 +02:00
David Mudrak 546b4bf59d MDL-26955 get_plugin_directory() respects $CFG->themedir
If $CFG->themedir is set (it is not usually) and the given theme is not
found in the standard location, then it is expected to be in the custom
$CFG->themedir directory.

Credit goes to Urs Hunkler for the idea of the patch.
2011-04-27 14:09:02 +02:00
David Mudrak 8ae076ae26 MDL-27293 report customlang has extra execution time and displays a progress bar during the checkout
Initial checkout of strings into the translator table may take a long time. The
maximum execution time is increased to one hour and a progress bar is
displayed so the user is informed on what is going on.
2011-04-27 14:08:48 +02:00
David Mudrak c2c9bc3b7a MDL-27246 customlang report stores the versions in a char field rather than integer 2011-04-27 14:08:22 +02:00
Petr Skoda b8df9414bd weekly release 2.1dev 2011-04-27 12:09:15 +02:00
Petr Skoda e0dd7cb005 MDL-23532 fix missing include 2011-04-27 08:56:12 +02:00
Aparup Banerjee 20b503841b MDL-25840 blog - fixed broken image file image attachment display 2011-04-27 11:39:01 +08:00
Aparup Banerjee 60b5a2fec7 MDL-27251 Files API - added timeout re-calculation as an optional argument. added setting for minimum Kbps for large files fetched from internet where the passed in timeout maybe too low.
allowed turning off the http HEAD request timeout calculation with zero (or negative) bitrate

	This was added in to allow servers that have a problem with
	HEAD requests to carry on with the given timeout without re-calculations.
	See PULL-651 for the discussion.

	the optional argument to force recalculation of timeout has been forced within scorm/locallib.php

	timeout re-calculation only increments timeout.
2011-04-27 10:49:40 +08:00
Eloy Lafuente (stronk7) b90b28e2cb Merge branch 'w17_MDL-26249_m21_usercourses' of git://github.com/skodak/moodle 2011-04-26 11:33:46 +02:00
Eloy Lafuente (stronk7) 0cd053b40b Merge branch 'w17_MDL-27253_m21_swfsize' of git://github.com/skodak/moodle 2011-04-26 11:08:05 +02:00
Eloy Lafuente (stronk7) 0540e39af9 Merge branch 'w17_MDL-27263_m21_loggedintypo' of git://github.com/skodak/moodle 2011-04-26 11:04:39 +02:00
Petr Skoda 039d221e49 Merge branch 'wip-MDL-26770-master' of git://github.com/samhemelryk/moodle 2011-04-25 17:51:41 +02:00
Petr Skoda 6bc62c4486 Merge branch 'wip-MDL-23532-master' of git://github.com/samhemelryk/moodle 2011-04-25 17:50:01 +02:00
Petr Skoda 3364dbb5a4 MDL-26249 external enrol functions: get list of courses user is enrolled in 2011-04-25 10:53:29 +02:00
Tim Hunt f902a54e5a MDL-20636 Fix method scope. 2011-04-23 12:57:02 +01:00
Tim Hunt d2c69d9373 MDL-20636 Fix query so that it works on MySQL. 2011-04-23 12:56:47 +01:00
Petr Skoda 7774aca0fb MDL-27253 add default swf size and allow #d=100x50 URL resizing in mod/url 2011-04-21 20:35:48 +02:00
Petr Skoda 3c2fffbaa7 MDL-27263 fix already logged in error message typo 2011-04-21 20:35:16 +02:00
Sam Hemelryk 75ee207b81 MDL-26770 enrol - Added support for bulk operations by enrol plugins 2011-04-21 10:13:13 +08:00
Sam Hemelryk 884faffda3 MDL-23532 enrol - fixed up SQL indenting and added missing sesskey calls that were removed after refactoring 2011-04-21 10:02:55 +08:00
Sam Hemelryk d4c98cffa8 MDL-23532 enrol - rebased after latest weekly and split new UI components out to the manual plugin 2011-04-21 10:02:55 +08:00
Sam Hemelryk 12a52d7c6e MDL-23532 enrol - removed general handling of user enrolment editing/unenrolment plugins are now responsible for this 2011-04-21 10:02:55 +08:00
Sam Hemelryk 8c6e0ebebb MDL-23532 enrol-self - Self enrolments now manages its own enrolment editing and unenrolment 2011-04-21 10:02:55 +08:00
Sam Hemelryk 24a0c1ea66 MDL-23532 enrol-manual - manual enrolments now manages its own enrolment editing and unenrolment 2011-04-21 10:02:55 +08:00
Sam Hemelryk 291215f441 MDL-23532 enrol - abstracted user enrolment action icons to the enrolment plugin class 2011-04-21 10:02:54 +08:00
Sam Hemelryk 410135aa10 MDL-23532 theme-base - added base styles for the changes to tne enrolment UI 2011-04-21 10:02:54 +08:00
Sam Hemelryk 076995bf91 MDL-23532 enrol - fixed regressions after latest weekly and improved moodle_page handling 2011-04-21 10:02:54 +08:00
Sam Hemelryk cf855c0b7a MDL-23532 enrol - separated AJAX functions from enrol/ajax.php to their respective enrol plugins 2011-04-21 10:02:54 +08:00
Sam Hemelryk b69ca6bee4 MDL-23532 enrol - moved UI enrolment components from core enrol to their respective enrolment plugins 2011-04-21 10:02:54 +08:00
stabijoh 6e405dafde MDL-27252 themes - fix for nonzero current section highlighting 2011-04-20 12:54:45 -04:00
Eloy Lafuente (stronk7) 4452ed6f17 weekly release 2.1dev 2011-04-20 13:35:08 +02:00
Eloy Lafuente (stronk7) 329b79139e Fix permissions 2011-04-20 11:08:21 +02:00
Aparup Banerjee eb183fe469 MDL-26580 adding precautionary upgrade_set_timeout() calls to some loops which may timeout in very edge cases 2011-04-19 17:52:35 +08:00
Aparup Banerjee f5fa4c0e02 MDL-26580 adding some upgrade_set_timeout() calls to 2010080901 upgrade block, upgrades on questions were timing out 2011-04-19 17:38:54 +08:00
Sam Hemelryk 4d8bd3f570 Merged with small fix branch MDL-26516_head from git://github.com/rwijaya/moodle.git 2011-04-19 16:25:40 +08:00
John Stabinger 572427d2f8 Fixes for MDL-27138, add correct page headers and footer 2011-04-19 11:06:54 +08:00
Sam Hemelryk d1d087991f MDL-26835 Fixed up styles being used for suspended users in the grader report. 2011-04-19 10:42:49 +08:00
Sam Hemelryk 9146566c65 Merged with conflict resolution branch MDL-26835_MASTER_grader_highlight_suspended_users from git://github.com/andyjdavis/moodle.git 2011-04-19 10:35:50 +08:00
Sam Hemelryk fc3e922e65 MDL-25999 Fixed URL bug with admin bookmark changes 2011-04-19 10:22:46 +08:00
Sam Hemelryk d0542700f5 Merge branch 'MDL-25999_head' of git://github.com/rwijaya/moodle 2011-04-19 10:16:39 +08:00
Rossiani Wijaya f4700b91c1 MDL-26516: fix calendar event type (user overides)- master 2011-04-18 18:27:10 +08:00
Eloy Lafuente (stronk7) f50a61fb47 MDL-26167 lib/form: minor coding tweaks 2011-04-18 11:42:27 +02:00
Rossiani Wijaya 53758125dc MDL-25999: update Admin Bookmarks block to work properly in head 2011-04-18 17:31:35 +08:00
Eloy Lafuente (stronk7) ff6b4cdb6d Merge branch 'MDL-26167-master' of git://github.com/agwells/moodle 2011-04-18 11:09:38 +02:00
Eloy Lafuente (stronk7) e62ea95dfc Merge branch 'w16_MDL-17344_m21_uploadprof' of git://github.com/skodak/moodle 2011-04-18 11:02:09 +02:00
Andrew Davis (andyjdavis) 3aafffc043 MDL-26835 gradebook: grader report now marks suspended students 2011-04-18 14:29:13 +08:00
Sam Hemelryk 5d53a674b7 MDL-26958 theme-base Removed border color CSS 2011-04-18 10:54:12 +08:00
Mary Evans 1559583ce3 MDL-26958 Core Themes:adding css patch to base theme so hidden elements are dimmed
This patch also fixes MDL-27160 - the same bug which affects many CORE themes like Binarus and Nonzeo. This patch also a small element of a patch supplied by Thomas Lake in Tracker MDL-26958 (most of which already exists in Base theme).
2011-04-18 10:49:07 +08:00
Andrew Davis (andyjdavis) 4f82032a16 MDL-27153 gradebook - fixed an SQL error in grade export 2011-04-18 02:04:57 +02:00
Eloy Lafuente (stronk7) 20d8d5c799 MDL-27148 whitespace fix 2011-04-18 01:38:41 +02:00
Eloy Lafuente (stronk7) 97fefd2386 Merge branch 'w16_MDL-27148_m21_stringinc' of git://github.com/skodak/moodle 2011-04-18 01:15:56 +02:00
Eloy Lafuente (stronk7) dd92611ec5 Merge branch 'w16_MDL-27217_m21_tinyset' of git://github.com/skodak/moodle 2011-04-18 01:10:29 +02:00
Eloy Lafuente (stronk7) 47f89dc8a6 Merge branch 'w16_MDL-27220_m21_tagprofile' of git://github.com/skodak/moodle 2011-04-18 01:02:23 +02:00
Petr Skoda af4378aee9 Merge branch 'master_MDL-26880_SCORM2004_tracking_fix' of git://github.com/danmarsden/moodle 2011-04-17 17:16:03 +02:00
Petr Skoda 13516b7c1f Merge branch 'master_MDL-24734_gradefix' of git://github.com/danmarsden/moodle 2011-04-17 17:09:05 +02:00
Petr Skoda 6b7fb33661 Merge branch 'master_MDL-18392_slash_cleanup' of git://github.com/danmarsden/moodle 2011-04-17 17:02:15 +02:00
Petr Skoda e87ca54256 Merge branch 'MDL-27198-master' of git://github.com/sammarshallou/moodle 2011-04-17 16:37:54 +02:00
Petr Skoda c001225250 Merge branch 'MDL-22308_20' of git://git.catalyst.net.nz/moodle-r2 2011-04-17 16:30:41 +02:00
Petr Skoda c6423ea2de Merge branch 'wip-MDL-26013-master' of git://github.com/samhemelryk/moodle 2011-04-17 16:21:51 +02:00
Petr Skoda bdc782470b Merge branch 'wip-MDL-27145-master' of git://github.com/samhemelryk/moodle 2011-04-17 16:11:49 +02:00
Petr Skoda 3867494381 MDL-27123 fix coding style and add missing parameters in phpdocs 2011-04-17 16:06:19 +02:00
Petr Skoda 2b8747799e MDL-27217 use correct editor name in editor settings page
Credit goes to Franck Bellemain.
2011-04-17 11:18:49 +02:00
Petr Skoda da84c1491f MDL-27220 add missing tag lib include 2011-04-17 11:08:24 +02:00
Dan Marsden 4f4a8acf3b SCORM MDL-24734 - fix display of grade information on view.php page - also fixes some XHTML in the same function. 2011-04-16 19:34:04 +12:00
Aaron Wells 4b72f9eb78 MDL-26167 lib/form: Altering Javascript so that "disabledIf" will disable the "Choose" button for a filepicker 2011-04-15 09:59:46 +12:00
sam marshall 611684a8ec MDL-27198 Accessibility: For labels, completion/editing icons must appear after content 2011-04-14 17:31:14 +01:00
Petr Skoda cf717dc26b MDL-27148 use new get_in_or_equal() param prefix instead of start 2011-04-14 15:15:01 +02:00
Petr Skoda c49bec382c MDL-27148 fix unit tests to accept arbitrary named params format from get_in_or_equal 2011-04-14 15:12:33 +02:00
Petr Skoda 906c957b63 MDL-27148 use static counter instead of incrementing parameter name 2011-04-14 14:50:35 +02:00
John Beedell 7351b54e86 MDL-27123 adds a new admin_setting_configmultiselect_modules class
and uses it on the module security page. This saves one DB query per
page for users who can see the admin tree in the settings nav.
2011-04-14 12:25:41 +01:00
Petr Skoda 623966a396 MDL-17344 fix case and unicode related profile field issues in user upload
This fixes issue with uppercase and non-ascii profile fields and closes the iterator properly when field not found. Please note that profile fields with upper case letters must be specified exactly in CSV file headers. includes improved docs and parameter typo fix (credit for the parameter typo discovery goes to Aparup Banerjee)
2011-04-14 13:19:52 +02:00
Nadav Kavalerchik b41fc49c26 CSS MDL-26013 Fixed several display bugs when using right to left languages 2011-04-14 15:56:10 +08:00
Matteo Scaramuccia 74ef6bd82d PULL-498 - Fixed potential issues about UTF-8 and multilang filter by adopting pure ASCII chars, the SCO primary key 2011-04-14 10:28:36 +12:00
Matteo Scaramuccia 0ec0224b9a MDL-26880 - Fixed missing of activity id
Moved errorCode as global, to allow GetLastError() to work
Applied MDL-17891 mechanism against AJAX failures, "true if true, false otherwise"
Limited what added to log when in debug, to be compliant with mdl_log.action as VARCHAR(40)
2011-04-14 10:28:31 +12:00
Dan Marsden 4f6e39db5e Merge remote branch 'moodle/master' into master_MDL-18392_slash_cleanup 2011-04-14 09:15:48 +12:00
Petr Skoda 91787c37e1 weekly release 2.1dev 2011-04-13 22:09:33 +02:00
Petr Skoda 2c55034844 Merge branch 'MDL-24355_emergency_21' of git://github.com/stronk7/moodle 2011-04-13 16:48:38 +02:00
Eloy Lafuente (stronk7) 1c2cfff051 MDL-24355 tags - fix correlation sql to be cross-db 2011-04-13 16:31:09 +02:00
Petr Skoda fe0ccf0c79 Merge branch 'MDL-27053-dev-code-warning' of git://github.com/mudrd8mz/moodle 2011-04-13 15:23:33 +02:00
Petr Skoda 9015609696 Revert "MDL-25840 fixed image files link not rendered correctly when attached as file (instead of inline)."
The reason is failed testing. This reverts commit c9b0e31ff2.
2011-04-13 15:06:39 +02:00
David Mudrak a95682b2b3 MDL-27053 Code maturity info added to admin notifications page
The patch introduces a new string to be displayed at admin notifications
page. The maturity level message for upgrade/install reworded as
requested in the tracker.

The patch also adds a new core call to purge all caches at the beginning
of the upgrade. This must be done before the upgrade starts so that the
strings are re-fetched from the updated source and not from the on-disk
cache.
2011-04-13 15:03:25 +02:00
David Mudrak 1c5ab635b6 MDL-27053 Revert "MDL-26985 make sure admins do not upgrade to 2.1dev accidentally"
This reverts commit 9778dae374.
2011-04-13 14:08:32 +02:00
Dan Marsden 3825bed0e8 SCORM MDL-18392 - remove old call to stripslashes 2011-04-13 20:05:30 +12:00
Matteo Scaramuccia 454f5aeef6 SCORM MDL-18392 MDL-26282 - Fixed calls to add/strip slashes 2011-04-13 20:05:19 +12:00
Tim Hunt 6160bdb1f3 MDL-20636 Move question lang strings to the right place. 2011-04-12 15:20:29 +01:00
Petr Skoda 2293a504eb MDL-25718 fix incorrect 'no grade' test and improve coding style 2011-04-12 10:06:13 +02:00
Petr Skoda d2e360a95b Merge branch 'MDL-25718_recover_grades_master' of git://github.com/andyjdavis/moodle 2011-04-12 09:50:20 +02:00
Sam Hemelryk fec617dee5 form-dateselector MDL-27145 Fixed up error resulting from incorrectly required 'optional' argument on create event 2011-04-12 14:14:34 +08:00
Eloy Lafuente (stronk7) 9ff913b716 Merge branch 'MDL-26778-master' of git://github.com/sammarshallou/moodle 2011-04-11 17:48:29 +02:00
Eloy Lafuente (stronk7) 72e97b5880 Merge branch 'w15_MDL-26577_m21_groupscleanup' of git://github.com/skodak/moodle 2011-04-11 15:55:33 +02:00
Tim Hunt d0e25622bd MDL-20636 Two gradeboundary 0%s on the quiz editing form. One shoudl be a HTML editor. #392
This was a weird variable aliasing issue.
2011-04-11 14:40:04 +01:00
Eloy Lafuente (stronk7) af58cf7d40 Merge branch 'w15_MDL-26805_m21_userpol' of git://github.com/skodak/moodle 2011-04-11 15:15:40 +02:00
Petr Skoda 39de30aac2 Merge branch 'wip-MDL-27024' of git://github.com/samhemelryk/moodle 2011-04-11 14:14:02 +02:00
Petr Skoda 337d8b1489 Merge branch 'wip-MDL-26599' of git://github.com/samhemelryk/moodle 2011-04-11 14:09:15 +02:00
sam marshall 6553cda7c9 MDL-26778 Change to completion should immediately affect nav block
Includes change so that updating completion resets the cache, and a debugging
warning if any module calls the completion viewed thing after it's already
printed navigation (which will mean navigation obviously doesn't update right
away). All existing modules that currently update after printing navigation
were updated.
2011-04-11 12:40:13 +01:00
Petr Skoda de57ec3926 Merge branch 'MDL-25840' of git://github.com/nebgor/moodle 2011-04-11 13:31:45 +02:00
Petr Skoda 82053cb192 MDL-26805 cleanup default role selections
Frontpage role selection now allows only guest and frontpage roles. Default forntpage role is selected duuring install. Unused nodefaultuserrolelists option was removed completely. Coding style improvements.
2011-04-11 13:10:50 +02:00
Eloy Lafuente (stronk7) 920234498e Merge branch 's9_MDL-27098_filemanager_strings_master' of git://github.com/dongsheng/moodle 2011-04-11 11:18:23 +02:00
Dongsheng Cai 6d30723e41 MDL-27098
1. Fixed add file language string
2. Fixed hard-coded 'moving' string
3. Fixed hard-coded 'Files' string
2011-04-11 17:09:15 +08:00
Eloy Lafuente (stronk7) 43f8192a65 Merge branch 'w15_MDL-25826_m21_htmlpurifier' of git://github.com/skodak/moodle 2011-04-11 11:06:30 +02:00
Sam Hemelryk 2e79cd117a Merge branch 'MDL-25746' of git://github.com/nebgor/moodle 2011-04-11 15:35:03 +08:00
Aparup Banerjee 16265f06d1 MDL-25746 fixed db tempate page layout to prevent hidden content layers 2011-04-11 15:15:58 +08:00
Sam Hemelryk e1ce7c7e7b Merge branch 'MDL-26896' of git://github.com/stronk7/moodle 2011-04-11 14:48:01 +08:00
Sam Hemelryk 08c2633f12 Merge branch 'MDL-27034_xhprof_table_sql_master' of git://github.com/stronk7/moodle 2011-04-11 14:28:57 +08:00
Aparup Banerjee c9b0e31ff2 MDL-25840 fixed image files link not rendered correctly when attached as file (instead of inline). 2011-04-11 14:14:03 +08:00
Sam Hemelryk cf0050f92a Merge branch 'MDL-26185_master' of git://github.com/andyjdavis/moodle 2011-04-11 11:48:18 +08:00
Sam Hemelryk d59d34e9a7 Merge branch 'w15_MDL-27056_m21_maxmind' of git://github.com/skodak/moodle 2011-04-11 11:42:53 +08:00
Mary Evans c8b728139e MDL-27063 tt styled incorrectly in canvas theme 2011-04-11 11:39:30 +08:00
Sam Hemelryk 99f2cd5435 comment MDL-27024 Removed last check within comment.js for block_comment env 2011-04-11 10:31:13 +08:00
Sam Hemelryk 1c64a9cd58 comment MDL-27024 Fixed bug that arose when a comment section didnt require pagination but the JS still looked for pageination HTML in the page 2011-04-11 10:31:13 +08:00
Sam Hemelryk 93b86f6239 comment MDL-27024 Removed last reference to the comment block within the comment API and used the options properly 2011-04-11 10:31:13 +08:00
Sam Hemelryk d664d673a7 comment MDL-27024 Fixed up whitespace issues 2011-04-11 10:31:13 +08:00
Sam Hemelryk 116a48b133 comment MDL-27024 made notoggle and autoload into proper options to remove comment block conditions from comment API 2011-04-11 10:31:13 +08:00
Sam Hemelryk 8aab32297d comment MDL-27024 Cleaned up HTML output in comment class 2011-04-11 10:31:13 +08:00
Sam Hemelryk 2f181b8c83 comment MDL-27024 Cleaned up use of undefined property $this->link 2011-04-11 10:31:13 +08:00
Sam Hemelryk 65f2fad9a0 mod-lesson MDL-26599 Fixed echo causing incorrect nesting. 2011-04-11 10:16:35 +08:00
Eloy Lafuente (stronk7) 14e6710d99 MDL-26896 parser - add start/end path notifications 2011-04-11 02:16:58 +02:00
Eloy Lafuente (stronk7) b34324a73e Merge branch 'w15_MDL-27094_m21_assval' of git://github.com/skodak/moodle 2011-04-11 01:33:17 +02:00
Eloy Lafuente (stronk7) 11ea5b96a8 Merge branch 'w15_MDL-27007_m21_userupload' of git://github.com/skodak/moodle 2011-04-11 01:20:41 +02:00
Eloy Lafuente (stronk7) 90bf8b535b Merge branch 'w15_MDL-26910_m21_httpd' of git://github.com/skodak/moodle 2011-04-11 00:14:05 +02:00
Eloy Lafuente (stronk7) 12257f2c39 Merge branch 'w15_MDL-27121_m21_phpreq' of git://github.com/skodak/moodle 2011-04-10 23:54:21 +02:00
Eloy Lafuente (stronk7) fa81a03257 Merge branch 'MDL-26319' of git://github.com/nebgor/moodle 2011-04-10 23:51:26 +02:00
Eloy Lafuente (stronk7) b5f9a6d302 Merge branch 'mdl27084' of git://github.com/tlevi/moodle 2011-04-10 23:41:01 +02:00
Petr Skoda aa25e42ba2 MDL-27094 fix incorrect assignment form validation method name
Credit goes to H. Hanna
2011-04-10 21:03:02 +02:00
Petr Skoda b7e96b0ac0 MDL-27056 update location of GeoLite City file 2011-04-10 15:28:44 +02:00
Petr Skoda 4e3e8464b6 MDL-26910 add HTTPD server name whitelisting 2011-04-10 14:00:42 +02:00
Petr Skoda 998ced0805 MDL-26577 fix several groups and groupings issues
The current group in verified on each page which prevents problems when group settings are changed. The default group for course level is now using correct grouping id which solves problems when activity and course are using different grouping. The grouping is now displayed in group selector if user has access to all groups.
2011-04-10 13:31:17 +02:00
Petr Skoda 1c71748dd1 MDL-27121 fix incorrect check_moodle_environment() version parameter
This prevents Moodle 2.0 from using environment info for 2.1 in the installer and CLI upgrade.
2011-04-09 17:43:52 +02:00
Petr Skoda 02c97e653d MDL-27007 fix incorrectly suspended user enrolment when uploading users
This bug surfaced after the recent change in enrol API, credit goes to Chaim Schendowich and Micky Fokken.
2011-04-09 12:09:23 +02:00
Petr Skoda a32b68475a MDL-25826 add more HTMLPurifier integration tests 2011-04-09 11:46:13 +02:00
Petr Skoda 7df50029b4 MDL-25826 integrate HTMLPurifier 4.3.0 and improve performance
The new HTMLPurifier finally caches the schema properly eliminating both extra CPU cycles and disk writes. The repeated dir exists tests might cause problems on NFS shares.
2011-04-09 11:45:24 +02:00
Petr Skoda 88efb586b4 MDL-25826 import HTMLPurifier 4.3.0 2011-04-09 10:05:27 +02:00
Tim Hunt 3f469e808b MDL-20636 Notice when editing shortanswer questions. #339 2011-04-08 18:21:53 +01:00
Tim Hunt 330c1148a4 MDL-20636 Quiz report graph not showing up due to an SQL error. #426 2011-04-08 18:09:24 +01:00
Tim Hunt a056778d8a MDL-20636 Fix unit test that the recent code change broke. #382 2011-04-08 17:46:15 +01:00
tjh238 7c85d7c871 MDL-20636 Bug 11493 can't show marks available for deferred feedback summative iCMAs 2011-04-08 17:16:55 +01:00
Tim Hunt 33dae771db MDL-20636 Fix bare in language string in OU code. #427, #429 2011-04-08 16:58:43 +01:00
Colin Chambers 7ee214ff89 MDL-20636 lib/Questionlib fixed calls to question_delete_question() #381 2011-04-08 16:21:47 +01:00
Colin Chambers 058f658ed1 MDL-20636 remove tests for obsolete functions #436 2011-04-08 16:21:36 +01:00
Andrew Davis (andyjdavis) 13ba903634 enrol MDL-25718 added ability to recover user grades from grade history 2011-04-08 15:06:27 +08:00
Tim Hunt 1631ceeaec MDL-20636 Fix codechecker issues in the question behaviours. 2011-04-08 07:24:24 +01:00
Tim Hunt 9447399c11 MDL-20636 Fix codechecker issues in qtype_oumultiresponse. 2011-04-08 06:26:47 +01:00
Tim Hunt 553b8ee5e4 MDL-20636 Fix codechecker issues in qtype_opaque. 2011-04-08 06:06:46 +01:00
Tim Hunt eaeb6b513a MDL-20636 Fix codechecker issues in the question type base classes. 2011-04-08 05:39:16 +01:00
Tim Hunt dcd69f8d97 MDL-20636 Fix codechecker issues in qtype_truefalse. 2011-04-08 05:08:24 +01:00
Tim Hunt 8cfc4fbd72 MDL-20636 Fix codechecker issues in qtype_shortanswer. 2011-04-08 05:08:11 +01:00
Tim Hunt 59f26004cd MDL-20636 Fix codechecker issues in qtype_random. 2011-04-08 05:07:57 +01:00
Tim Hunt 12039f2e7a MDL-20636 Fix codechecker issues in qtype_multichoice. 2011-04-08 05:07:42 +01:00
Tim Hunt 2b7c9bd235 MDL-20636 Fix codechecker issues in qtype_missingtype. 2011-04-08 05:07:24 +01:00
Tim Hunt 9afa71af83 MDL-20636 Fix codechecker issues in qtype_gapselect. 2011-04-08 05:05:22 +01:00
Tim Hunt b3ae5457c4 MDL-20636 Fix type respones -> response. Thanks Colin. #415 2011-04-07 11:53:00 +01:00
Andrew Davis (andyjdavis) d3a8184239 message MDL-26185 fixed the logic around email addy in user profile Vs in messaging preferences 2011-04-07 15:58:33 +08:00
Aparup Banerjee ca3617c513 MDL-26319 moved cancel_backup() from backup_ui to cancel_process() in base_ui and renamed callers. fix for method inheritance in restore_ui. 2011-04-07 10:39:34 +08:00
Eloy Lafuente (stronk7) 54fb7e80fc MDL-27034 profiling - xhprof_table_sql improvement 2011-04-07 00:46:54 +02:00
Petr Skoda 6b14adf210 weekly release 2.1dev 2011-04-06 14:56:45 +02:00
Petr Skoda a32ab0254c Merge branch 'MDL-26784-plugin-manager' of git://github.com/mudrd8mz/moodle 2011-04-06 11:26:20 +02:00
David Mudrak 7c9b837ea9 MDL-26784 Plugin manager: make sure that filter_active already exists
In case of upgrade from 1.9, the table filter_active does not exist yet.
There already was this checked at another place but it is needed to test
the table existence here as well.
2011-04-06 11:24:59 +02:00
Eloy Lafuente (stronk7) 11a6763546 MDL-26425 tablelib - fix tr class typo (detected @ MDL-27034) 2011-04-06 10:58:39 +02:00
Petr Skoda 5f27855ea4 MDL-26914 fix undefined CFG langcache property during install 2011-04-06 10:50:19 +02:00
Sam Hemelryk 62f7ce7989 PULL-574 MDL-26185 Reverted changes due failed testing + review 2011-04-06 16:33:47 +08:00
Tim Hunt 3758786f6d MDL-20636 Fix codechecker problems in match, description and ddwtos qtypes. 2011-04-05 17:54:39 +01:00
Petr Skoda 1d57f8622c revert MDL-26577 added session cleaning to groups_get_activity_group() that fixes an issue with dirty session data. refactored session cleaning into one function, added caching to reduce queries.
(reverse-merged from commit 0d1e49d468) This change was causing fatal errors on the course level, I am going to fix it myself.
2011-04-05 18:33:35 +02:00
Tim Hunt 121fd4c12d MDL-20636 Fix code-checker issues in qtype_essay. 2011-04-05 11:29:26 +01:00
Sam Hemelryk bbb79f47a7 messaging MDL-26185 Last minute fix of bug during integration, empty user preference causing error 2011-04-05 16:52:07 +08:00
Petr Skoda 773e3c5031 Merge branch 'MDL-26577_groups_api_refactor_take2' of git://github.com/nebgor/moodle 2011-04-05 10:19:16 +02:00
Aparup Banerjee 0d1e49d468 MDL-26577 added session cleaning to groups_get_activity_group() that fixes an issue with dirty session data. refactored session cleaning into one function, added caching to reduce queries. 2011-04-05 12:22:27 +08:00
Jonathan Harker 6e9ce8e766 MDL-22308 Update lib/bennu to latest upstream. 2011-04-05 16:00:21 +12:00
Tony Levi 05edae9f89 MDL-27084: mod/feedback fix bad syntax in database query 2011-04-05 12:14:16 +09:30
Eloy Lafuente (stronk7) 21473e6cd7 Merge branch 'wip-MDL-26560-master' of git://github.com/samhemelryk/moodle 2011-04-04 23:21:49 +02:00
Eloy Lafuente (stronk7) b76070db70 Merge branch 'wip-MDL-26858' of git://github.com/samhemelryk/moodle 2011-04-04 21:53:17 +02:00
Tim Hunt 55ca80edde MDL-20636 Fix lots of problems found by the new improved codechecker. 2011-04-04 20:11:29 +01:00
Eloy Lafuente (stronk7) a7174151db Merge branch 'MDL-11288-course-module-cloning' of git://github.com/mudrd8mz/moodle 2011-04-04 12:35:04 +02:00
Eloy Lafuente (stronk7) 4102345add Merge branch 'master' of git.moodle.org:/git/integration 2011-04-04 12:00:30 +02:00
Eloy Lafuente (stronk7) a70ba1b069 Merge branch 'MDL-26931-blog-post-order_master' of git://github.com/mudrd8mz/moodle 2011-04-04 11:56:44 +02:00
Petr Skoda 33620e1772 Merge branch 'MDL-26784-plugin-manager' of git://github.com/mudrd8mz/moodle 2011-04-04 11:55:39 +02:00
Andrew Davis (andyjdavis) 656d17c2c6 gradebook MDL-20946 fixed average calculation where users have multiple gradeable roles 2011-04-04 11:35:47 +02:00
Petr Skoda 3d3ead8e35 Merge branch 'MDL-26914-lang-grand-parents' of git://github.com/mudrd8mz/moodle 2011-04-04 11:19:51 +02:00
Petr Skoda 1f67888540 Merge branch 'wip-MDL-25651' of git://github.com/jennymgray/moodle 2011-04-04 09:55:41 +02:00
Petr Skoda 7974c4ec03 Merge branch 'MDL-26542_empty_array' of git://github.com/stronk7/moodle 2011-04-04 09:49:12 +02:00
Sam Hemelryk a1ead9a478 enrolments MDL-26560 Fixed panel.user bug with role assignments dialogue 2011-04-04 14:49:28 +08:00
Sam Hemelryk af8851282e enrolments MDL-26858 Added finish user enrolments button to JS dialogue 2011-04-04 14:37:35 +08:00
Sam Hemelryk 637a8daf76 Merge branch 'MDL-26185_ms' of git://github.com/rwijaya/moodle 2011-04-04 13:30:55 +08:00
Sam Hemelryk adb24226bf Merge branch 'MDL-27016' of git://github.com/MaryE/moodle 2011-04-04 13:08:37 +08:00
Sam Hemelryk 4632bb9668 Merge branch 'earlier_profiling' of git://github.com/stronk7/moodle 2011-04-04 11:16:33 +08:00
Tim Hunt f45a12d28e MDL-20636 tinyMCE boxes for each sub-question are enormous. #355 2011-04-01 14:39:51 +01:00
Tim Hunt 1322daba08 MDL-20636 Fix visibility of quiz_attempt_report_table::get_row_class. #357 2011-04-01 14:39:31 +01:00
Rossiani Wijaya 9d61d9ac6d MDL-26185: simplify the logic of email message output and removing email address cache 2011-04-01 16:55:37 +08:00
Mary Evans 5deabe4338 Fix for MDL-27016 added min-width 2011-04-01 02:43:23 +01:00
Tim Hunt 825908a0d6 MDL-20636 Fix missing include in oumultiresponse qtype. #346 2011-03-31 16:30:46 +01:00
Tim Hunt dbf76faf52 MDL-20636 Fix two HTML validation issues. 2011-03-31 15:24:37 +01:00
Jenny Gray 52d1a8043c MDL-25651 add capability check to my private files navigation link 2011-03-31 14:44:35 +01:00
David Mudrak 91dedc324f MDL-26784 Strings for the new plugin manager
The new strings file core_plugin defines names of all plugin types
supported by Moodle. Some strings have already been defined elsewhere
and we use AMOS script here to copy their translation, if it is
available.

AMOS BEGIN
 CPY [settings,core],[settings,core_plugin]
 CPY [status,core],[status,core_plugin]
 CPY [missingfromdisk,core],[status_missing,core_plugin]
 CPY [nodatabase,core_admin],[status_nodb,core_plugin]
 CPY [authenticationplugins,core],[type_auth_plural,core_plugin]
 CPY [block,core],[type_block,core_plugin]
 CPY [blocks,core],[type_block_plural,core_plugin]
 CPY [coursereport,core],[type_coursereport,core_plugin]
 CPY [coursereports,core],[type_coursereport_plural,core_plugin]
 CPY [filter,core],[type_filter,core_plugin]
 CPY [courseformats,core],[type_format_plural,core_plugin]
 CPY [activitymodule,core],[type_mod,core_plugin]
 CPY [activitymodules,core],[type_mod_plural,core_plugin]
 CPY [plagiarism,core_plagiarism],[type_plagiarism,core_plugin]
 CPY [portfolio,core_portfolio],[type_portfolio,core_plugin]
 CPY [portfolios,core_portfolio],[type_portfolio_plural,core_plugin]
 CPY [questiontype,core_admin],[type_qtype,core_plugin]
 CPY [questiontypes,core_admin],[type_qtype_plural,core_plugin]
 CPY [repository,core_repository],[type_repository,core_plugin]
 CPY [theme,core],[type_theme,core_plugin]
 CPY [themes,core],[type_theme_plural,core_plugin]
 CPY [uninstallplugin,core_admin],[uninstall,core_plugin]
 CPY [version,core],[version,core_plugin]
 CPY [assignmenttype,mod_assignment],[subplugintype_assignment,mod_assignment]
 CPY [presets,mod_data],[subplugintype_datapreset_plural,mod_data]
 CPY [evaluationmethod,mod_workshop],[subplugintype_workshopeval,mod_workshop]
 CPY [strategy,mod_workshop],[subplugintype_workshopform,mod_workshop]
AMOS END
2011-03-31 13:59:05 +02:00
David Mudrak b9934a173a MDL-26784 Improved plugins check screen and the new plugins management screen
This patch introduces new lib/pluginlib.php library that provides
unified access meta-information about all present plugin types. The
library defines plugin_manager singleton that in turn gathers
information about all present plugins and their status. The list of
plugins can be rendered either as plugins check table or plugins control
panel.

This makes print_plugins_table() function obsolete and because it is not
expected to be called by any contrib plugin, the function is removed.
CSS for the legacy table generated by print_plugins_table() is cleaned
up.
2011-03-31 13:59:05 +02:00
Tim Hunt 48d9c17db3 MDL-20636 Essay questions can now handle files in the HTML editor. #216 2011-03-31 12:45:36 +01:00
Tim Hunt 7a3e1f7d51 MDL-26887 Refactor file_save_draft_area_files to separate out
the file_rewrite_urls_to_pluginfile bit.
2011-03-31 12:45:31 +01:00
Tim Hunt a54ecbbb10 MDL-20636 Essay qtype now uses proper HTML editor and has format field. #216 2011-03-31 12:45:26 +01:00
Tim Hunt d42dbe87a7 MDL-20636 Essay questions allowing multiple attachments now work. #216 2011-03-31 12:45:22 +01:00
Tim Hunt 6b5f24d376 MDL-20636 Handle deleting response files when the usage is deleted. #216 2011-03-31 12:45:17 +01:00
Tim Hunt cd6fc47e8d MDL-26847 new method file_storage::delete_area_files_select for efficient bulk file deletion. 2011-03-31 12:45:12 +01:00
Tim Hunt cd3557e64c MDL-20636 Essay question type, make is_same_response consider files. #216 2011-03-31 12:45:07 +01:00
Tim Hunt 217f9a618c MDL-20636 Essay submission now handles attachments. #216 2011-03-31 12:45:02 +01:00
Tim Hunt 783af2523e MDL-20636 Implement display of grader instructions. #216 2011-03-31 12:44:57 +01:00
Tim Hunt 8026d4aa0a MDL-20636 Can now display the file picker in essay questions with attachments #216 2011-03-31 12:44:52 +01:00
Tim Hunt caeeff0726 MDL-20636 Can now display the attachments to an essay question that has attachments. 2011-03-31 12:44:47 +01:00
Tim Hunt b36d2d0643 MDL-20636 Start supporting different response formats in essay. #216 2011-03-31 12:44:43 +01:00
Tim Hunt 894e8b4e93 MDL-6535 new features for the essay qtype. Part I DB tables and editing form.
Also MDL-8229, MDL-10861, MDL-11080

The features are attachements with repsonses, control over whether the respons can contain images, letting the question author set the size for the input box, and allowing the author to input some text that is shown to the grader.
2011-03-31 12:44:38 +01:00
David Mudrak fa82056328 MDL-11288 Added ability to duplicate module in the course
Internally, the new script modduplicate.php performs a single activity
backup and restore and then moves the newly created copy right below the
original.
2011-03-31 13:39:05 +02:00
David Mudrak 74a4c9a9ee MDL-26914 When installing a lang pack, install all the grandparents too
All places where a language pack is installed now use the new language
package installer that takes case of the parental dependencies.
2011-03-31 12:21:05 +02:00
David Mudrak 15e16f0e93 MDL-26914 Added new language pack installer class and unit tests for it
The new class wraps some common coding patterns to install a language
pack via component_installer. Most notably it deals with the parental
dependency of the language packs.

The new class should also be the only place holding the information
about the location of language packs for the given Moodle version.
2011-03-31 12:20:54 +02:00
Ankit Agarwal 899d5e2d50 MDL-26931 Order blog entries by the creation date 2011-03-31 11:50:57 +02:00
Tim Hunt 71811083ba MDL-27035 table_sql forgets to set countparams. 2011-03-30 20:25:43 +01:00
Eloy Lafuente (stronk7) c7ce62f9c8 MDL-26542 get_in_or_equal - adding $onemptyitems + tests 2011-03-30 18:22:53 +02:00
Eloy Lafuente (stronk7) c646dd26ea MDL-26891 profiling - earlier runs
This allows profiling to be started earlier in the
setup.php execution, by configuring everything in
the config.php file. That way some interesting code
is also profiled, like DB connections, load of config records...

100% compatible with normal profiling and enabled via
special setting $CFG->earlyprofilingenabled

Example (to be put on config.php):

$CFG->earlyprofilingenabled = true;
$CFG->profilingautofrec = 3;
$CFG->profilingincluded = '/*';
$CFG->profilingallowme = true;

(to enable early profiling for 1/3 of any requests while also
allowing to use the PROFILEME PGC)
2011-03-30 18:08:38 +02:00
Petr Skoda dae6b38c51 sync version with stable 2011-03-30 18:01:39 +02:00
Tim Hunt 8d13ea834c MDL-20636 Another little bug found by Jamie. 2011-03-30 14:30:40 +01:00
Petr Skoda 0947b90b98 weekly release 2011-03-30 14:32:49 +02:00
Tim Hunt e65f89b914 MDL-20636 Fix typo. Thanks Jamie. 2011-03-30 11:00:33 +01:00
Petr Skoda 3b6d215b91 Merge branch 'MDL-26964-moodle_url-anchor_master' of git://github.com/mudrd8mz/moodle 2011-03-29 09:57:20 +02:00
Helen Foster 4b59f327cd MDL-26744 enrol meta lang string improvement thanks to Ray Lawrence 2011-03-28 23:58:27 +02:00
Eloy Lafuente (stronk7) a5743e866e Merge branch 'w13_MDL-22733_21_youtubeiframe' of git://github.com/skodak/moodle 2011-03-28 23:33:23 +02:00
Eloy Lafuente (stronk7) 5e44c5c998 Merge branch 'w13_MDL-26909_21_mediatests' of git://github.com/skodak/moodle 2011-03-28 22:08:15 +02:00
Eloy Lafuente (stronk7) 12abf305f8 Merge branch 'w13_MDL-26987_21_sclean' of git://github.com/skodak/moodle 2011-03-28 21:56:25 +02:00
Eloy Lafuente (stronk7) 63d6da51fe Merge branch 'w13_MDL-26913_20_sitecreated' of git://github.com/skodak/moodle 2011-03-28 19:58:49 +02:00
Eloy Lafuente (stronk7) 2326b8d301 Merge branch 'w13_MDL-26951_21_archetypes' of git://github.com/skodak/moodle 2011-03-28 19:38:48 +02:00
Eloy Lafuente (stronk7) 18318237d7 Merge branch 'w13_MDL-26991_21_legacy' of git://github.com/skodak/moodle 2011-03-28 19:25:03 +02:00
Petr Skoda e1ce68c2f9 MDL-26991 use archetypes instead of deprecated 'legacy' when defining roles in enrol plugins 2011-03-28 19:19:54 +02:00
Eloy Lafuente (stronk7) 0a284930cf Merge branch 'w13_MDL-26966_21_urlparsing' of git://github.com/skodak/moodle 2011-03-28 19:05:07 +02:00
Eloy Lafuente (stronk7) 58937f7e57 Merge branch 'w13_MDL-26985_21_branching' of git://github.com/skodak/moodle 2011-03-28 18:09:29 +02:00
Petr Skoda b2b9320570 Merge branch 'MDL-26425' of git://github.com/timhunt/moodle 2011-03-28 16:49:49 +02:00
Eloy Lafuente (stronk7) 37c2a8a035 Merge branch 'master' of git.moodle.org:/git/integration 2011-03-28 16:21:11 +02:00
Eloy Lafuente (stronk7) a226727238 Merge branch 'w13_MDL-26990_21_missingrebuild' of git://github.com/skodak/moodle 2011-03-28 16:07:20 +02:00
Petr Skoda ce14a7644e Merge branch 'MDL-26335' of github.com:mouneyrac/moodle 2011-03-28 15:15:23 +02:00
Eloy Lafuente (stronk7) df8248b035 Merge branch 'MDL-26804-langlistcache_master' of git://github.com/mudrd8mz/moodle 2011-03-28 14:48:38 +02:00
Tim Hunt 06cd11a989 MDL-20636 Fix scope of quiz edit form data_preprocessing. 2011-03-28 11:40:15 +01:00
Eloy Lafuente (stronk7) e1feb94cd1 Merge branch 's8_MDL-26213_wiki_rewrite_file_url' of git://github.com/dongsheng/moodle 2011-03-28 11:48:58 +02:00
Dongsheng Cai cfdac90f2b MOD-WIKI MDL-26213
1. Rewrite the image urls in diff.php and viewdiff.php
2. Fxied image urls in search.php
3. Add modcontext variable to avoid using duplicated
get_context_instance calls
2011-03-28 17:31:01 +08:00
Eloy Lafuente (stronk7) b431645c89 Merge branch 'MDL-26932' of git://github.com/jennymgray/moodle 2011-03-28 11:03:44 +02:00
Eloy Lafuente (stronk7) 12c6a556b2 Merge branch 'm20_MDL-26939_plagiarism_restore' of git://github.com/danmarsden/moodle 2011-03-28 10:48:45 +02:00
Sam Hemelryk 223680f562 Merge branch 's8_MDL-26916_filepicker_paging' of git://github.com/dongsheng/moodle 2011-03-28 16:12:55 +08:00
Sam Hemelryk 628c600cd9 Merge branch 'm20_MDL-26957_forum_overview' of git://github.com/danmarsden/moodle 2011-03-28 16:10:39 +08:00
Sam Hemelryk 6db981b2ee Merge branch 'MDL-26906-2' of git://github.com/epsd/moodle 2011-03-28 16:03:15 +08:00
Sam Hemelryk e1a7281ab2 Merge branch 'MDL-26077_message_strip_brackets2' of git://github.com/andyjdavis/moodle 2011-03-28 15:59:25 +08:00
Sam Hemelryk e1339a6dda Merge branch 's8_MDL-26798_dropbox_repo' of git://github.com/dongsheng/moodle 2011-03-28 15:52:21 +08:00
Sam Hemelryk bc071c7580 Merge branch 'w13_MDL-26992_21_uploadtemplates' of git://github.com/skodak/moodle 2011-03-28 14:29:50 +08:00
Sam Hemelryk 982e619d2a Merge branch 'w13_MDL-26989_21_enrolroles' of git://github.com/skodak/moodle 2011-03-28 14:10:44 +08:00
Sam Hemelryk d2c4a97a70 Merge branch 'w13_MDL-26795_21_emailchange' of git://github.com/skodak/moodle 2011-03-28 13:54:39 +08:00
Petr Skoda 43070e6193 MDL-26992 fix broken upload users templates 2011-03-27 23:48:41 +02:00
Tim Hunt a208aefbc4 MDL-26425 change all table subclasses to use parent::__construct 2011-03-27 20:06:45 +01:00
Tim Hunt ba9164e575 MDL-26425 tablelib more cleanup, mostly to PHPdocs, following sam's comments. 2011-03-27 20:06:45 +01:00
Tim Hunt 76dc1e2527 MDL-26425 tablelib use html_writer when outputting rows and headers.
This includes refactoring to extract methods like sort_icon and show_hide_link which I think makes the code easier to read.

Note also the change to make_styles_string that makes it usable with html_writer. (Perhpas we need a css_writer classe ;-))
2011-03-27 20:06:44 +01:00
Tim Hunt 6f0d3480c7 MDL-26425 tablelib change print_initials_bar to remove duplication, and to use html_writer. 2011-03-27 20:06:44 +01:00
Tim Hunt b08fb128c8 MDL-26425 tablelib ability for table_sql to add a class to the row based on the data. 2011-03-27 20:06:43 +01:00
Tim Hunt abf72969a4 MDL-26425 tablelib change col_username to use html_writer and moodle_url. 2011-03-27 20:06:43 +01:00
Tim Hunt e81eed542c MDL-26425 tablelib better validation of the sort code, also some cleanup.
You may think that the extra validation is unnecessary, since the sort fields are already validated when the URL parameters are parsed, however that overlooks an important point. There may be other options that affect which columns are in the SQL, for example the quiz show individual question grades setting. These other options can cause a column that was in the table, and being sorted on, to disappear. Therefore, it is necessary to re-validate the sort columns when they are used, to make sure they are still present, otherwise you can get ORDER BY sql that refers to non-existant columns, which then causes DB errors.
2011-03-27 20:06:42 +01:00
Tim Hunt 59f392b3f0 MDL-26425 tablelib clean up setup and URL handling code.
Note that this change removes ->reseturl, This was supposed to be a way to reset all the session stuff relating to a table automatically in some situations, but from using Moodle and reading the code, I don't beleive it was working. The code was horrible and not easily fixible, and has been broken for years, so I just removed it.
2011-03-27 20:06:42 +01:00
Tim Hunt a49c17b424 MDL-26425 tablelib rename constructors to PHP5 __construct
and add depreacted functions with the old name so that legacy code does not break.
2011-03-27 20:05:55 +01:00
Tim Hunt 4b7079c100 MDL-26425 tablelib clean up constant definitions. 2011-03-27 19:55:10 +01:00
Tim Hunt 9683db71c9 MDL-26425 tablelib mass whitespace clean-up. 2011-03-27 19:55:10 +01:00
Nikhil Gupta d099348e32 MDL-26989 fix incorrect disabling of assignable roles 2011-03-27 20:34:15 +02:00
Petr Skoda c4dd3bb86f MDL-26913 set timecreated in fortpage of a newly installed site 2011-03-27 18:22:11 +02:00
Petr Skoda c6a074f867 MDL-26795 fix incorrect location of email change strings
AMOS BEGIN
 MOV [auth_emailchangecancel,auth_email],[emailchangecancel,core_auth]
 MOV [auth_emailchangepending,auth_email],[emailchangepending,core_auth]
 MOV [auth_emailupdate,auth_email],[emailupdate,core_auth]
 MOV [auth_emailnowexists,auth_email],[emailnowexists,core_auth]
 MOV [auth_emailupdatemessage,auth_email],[emailupdatemessage,core_auth]
 MOV [auth_emailupdatesuccess,auth_email],[emailupdatesuccess,core_auth]
 MOV [auth_emailupdatetitle,auth_email],[emailupdatetitle,core_auth]
 CPY [auth_emailnoemail,auth_email],[noemail,auth_ldap]
AMOS END
2011-03-27 17:19:23 +02:00
Petr Skoda ce8b66c67f MDL-26881 work around the block context setting problems 2011-03-27 16:39:27 +02:00
Petr Skoda d38f419d5c MDL-26987 fix invalid DML syntax in spam cleaner tool 2011-03-27 16:14:22 +02:00
Petr Skoda c102060deb MDL-26951 fix removing of archetype from role 2011-03-27 16:04:33 +02:00
Petr Skoda 0ae36f6638 MDL-26966 improve self URL validation 2011-03-27 12:29:36 +02:00
Petr Skoda 3c3d544700 MDL-26909 fix outdated mediaplugin filter unittests 2011-03-26 23:54:45 +01:00
Petr Skoda c4b491a417 MDL-22733 enable youtube iframe embedding 2011-03-26 23:38:40 +01:00
Petr Skoda 112d3b4962 MDL-26990 fix undefined rebuild_course_cache() regression 2011-03-26 22:49:04 +01:00
Petr Skoda 9778dae374 MDL-26985 make sure admins do not upgrade to 2.1dev accidentally
We already have the new maturity warning in the upgrade page but we are not changing versions yet, we should better give admins one extra chance to go back to latest 2.0.2+ stable.
2011-03-26 22:28:32 +01:00
Petr Skoda aca9888fa0 MDL-26985 add 2.1 release info
We keep the $CFG->version unchanged for now so that admins that upgrade accidentally can go back to the latest stable 2.0.2+.
2011-03-26 22:08:56 +01:00
Petr Skoda c904cbbdd2 MDL-26985 new Moodle 2.1 requirements
For now only extra PHP 5.3.2 requirement compared to 2.0.
2011-03-26 22:02:42 +01:00
Jenny Gray d5842f7a35 MDL-26932 full url path for toggle completion form POST 2011-03-25 11:57:41 +00:00
David Mudrak a9cbd19bff MDL-26804 core_string_manager::get_list_of_translations() can use a cache again
This patch reimplements the internal cache that was used to store the
list of available translations in Moodle 1.x. By default, the method
get_list_of_translations() still uses the file
moodledata/cache/languages to store the list of available translations.
The location of that file can be redefined in config.php. The internal
format of the cache file is JSON now (used to be a plain text list).

The patch also fixes a usage of the global $CFG in translation_exists()
methods where the internal property should be used instead.
2011-03-24 21:51:30 +01:00
David Mudrak a12cd69c9e MDL-26964 URL anchor support for single_button and single_select
If the single_button or single_select use HTTP method 'get' then the
eventual anchor part of the URL is used.
2011-03-24 14:51:39 +01:00
David Mudrak 5c6ee6ec36 MDL-26964 URL returned by moodle_url::out_omit_querystring() may contain the anchor part 2011-03-24 14:51:39 +01:00
Dongsheng Cai 60a4bf98eb MDL-26916, MDL-26917
1. Fix filepicker paging issue MDL-26916
2. Highlight view as icon button by default MDL-26917
2011-03-24 13:55:33 +08:00
Myles Carrick ab603b243c MDL-26798 encode file path in dropbox repository plugin, credits to Myles Carrick 2011-03-24 13:54:10 +08:00
Andrew Davis (andyjdavis) 7e98f60bfb message MDL-26077 fixed up a problem with html tags being stripped out 2011-03-24 11:30:12 +08:00
Dan Marsden 7fd4730805 Plagiarism MDL-26939 - missing return 2011-03-24 14:46:35 +13:00
Dan Marsden 6d64106306 Forum Overview MDL-26957 add classes to allow better control by theme 2011-03-24 14:42:57 +13:00
Tim Hunt 7348402f33 MDL-20636 A few more publics. 2011-03-23 16:40:19 +00:00
Tim Hunt c7df5006b9 MDL-20636 Add lots of missing public/protected/private. 2011-03-23 16:22:25 +00:00
Tim Hunt c73c98365b MDL-20636 Question import, support for files in hints.
Also fix some minor bugs and unit tests.
2011-03-23 14:27:22 +00:00
stabijoh 110e6876e5 Revised fix for MDL-26906, magazine and formal white secure browser quiz window 2011-03-23 07:29:01 -04:00
Petr Skoda 92a387b467 weekly release 2011-03-23 11:33:20 +01:00
Jerome Mouneyrac ac3e0b3c8c MDL-26335 fix capability name typo in the description of the web service function moodle_user_get_users_by_id 2011-03-23 11:35:46 +08:00
Eloy Lafuente (stronk7) 34c0b5bd86 MDL-26848 I left one remaining "xxx" there, grrr 2011-03-22 12:28:57 +01:00
Petr Skoda a93bd90b97 bump version to detect integration reset problems 2011-03-22 11:16:16 +01:00
Eloy Lafuente (stronk7) 18e3cba749 MDL-26848 fixing some "stupid" comments and specs of 1 field 2011-03-21 22:20:17 +01:00
Eloy Lafuente (stronk7) c6f7c3e7f3 Merge branch 'MDL-26848' of git://github.com/timhunt/moodle 2011-03-21 21:56:46 +01:00
Eloy Lafuente (stronk7) bc35885cb4 Merge branch 'MDL-25834' of git://github.com/samhemelryk/moodle 2011-03-21 21:54:57 +01:00
Eloy Lafuente (stronk7) b9c6ce2d19 Merge branch 'm20_MDL-26905_AICC_API_missing_currentorg_init' of git://github.com/scara/moodle 2011-03-21 21:38:23 +01:00
Eloy Lafuente (stronk7) bf1a4d75e0 Merge branch 'MDL-26570' of git://github.com/samhemelryk/moodle 2011-03-21 21:34:17 +01:00
Eloy Lafuente (stronk7) 8c2e4c90d7 Merge branch 'MDL-25621' of git://github.com/samhemelryk/moodle 2011-03-21 21:32:50 +01:00
Eloy Lafuente (stronk7) be5eb0013e Merge branch 'MDL-26863_wrong_appendtolog_statement' of git://github.com/scara/moodle 2011-03-21 21:15:54 +01:00
Eloy Lafuente (stronk7) c031f2c1e7 Merge branch 'MDL-26875' of git://github.com/samhemelryk/moodle 2011-03-21 21:10:55 +01:00
Eloy Lafuente (stronk7) 63187a6887 Merge branch 'm20_MDL-26894_SCORM13_PHP_notice_undefined_prop_id' of git://github.com/scara/moodle 2011-03-21 21:03:15 +01:00
Eloy Lafuente (stronk7) 1595b8120f Merge branch 'MDL-26861' of git://github.com/timhunt/moodle 2011-03-21 20:59:32 +01:00
Eloy Lafuente (stronk7) 4c2ce98b42 Merge branch 'master' of git.moodle.org:/git/integration 2011-03-21 20:55:20 +01:00
Petr Skoda c20d07074c Merge branch 'MDL-23022' of git://github.com/samhemelryk/moodle 2011-03-21 19:16:37 +01:00
Petr Skoda 3bfb75a9ed Merge branch 'wip-MDL-26781' of git://github.com/sammarshallou/moodle 2011-03-21 19:10:15 +01:00
Eloy Lafuente (stronk7) 83ee4693c5 Merge branch 'MDL-26908' of git://github.com/samhemelryk/moodle 2011-03-21 19:08:46 +01:00
Petr Skoda 7b2dde5a80 Merge branch 'wip-MDL-26747' of git://github.com/sammarshallou/moodle 2011-03-21 19:06:28 +01:00
Petr Skoda 94ff0f08f3 Merge branch 'MDL-26922' of git://github.com/stronk7/moodle 2011-03-21 19:02:16 +01:00
Eloy Lafuente (stronk7) f80de2f25c MDL-26922 dml - avoid PHP_INT_MAX overflow on limit queries 2011-03-21 18:49:08 +01:00
Petr Skoda 25bd4d9a37 Merge branch 'MDL-26847_amended' of git://github.com/timhunt/moodle 2011-03-21 18:10:35 +01:00
Eloy Lafuente (stronk7) 4386e0d101 Merge branch 'master' of git.moodle.org:/git/integration 2011-03-21 18:04:25 +01:00
Petr Skoda 2c23734a7f Merge branch 'MDL-25975' of git://github.com/samhemelryk/moodle 2011-03-21 18:02:46 +01:00
Petr Skoda 61baea5d22 Merge branch 'MDL-26903' of git://github.com/samhemelryk/moodle 2011-03-21 18:00:07 +01:00
Eloy Lafuente (stronk7) 1f95c9a4af Merge branch 'w12_MDL-26842_20_ociparams' of git://github.com/skodak/moodle 2011-03-21 17:55:40 +01:00
Petr Skoda cd278cd454 MDL-26842 fix invalid parameter mix discovered by the new test 2011-03-21 17:19:36 +01:00
Eloy Lafuente (stronk7) 1997d9dc1d Merge branch 'w12_MDL-26842_20_ociparams' of git://github.com/skodak/moodle 2011-03-21 16:38:19 +01:00
Petr Skoda 4c1638c10f MDL-26842 fix o_ prefix regression 2011-03-21 16:32:09 +01:00
Eloy Lafuente (stronk7) c0c232ab63 Merge branch 'master' of git.moodle.org:/git/integration 2011-03-21 16:31:27 +01:00
Tim Hunt af7b3673d7 MDL-26847 new method file_storage::delete_area_files_select for efficient bulk file deletion. 2011-03-21 15:21:02 +00:00
Petr Skoda 10464ffb33 Merge branch 'MDL-26887' of git://github.com/timhunt/moodle 2011-03-21 15:39:31 +01:00
Eloy Lafuente (stronk7) 7a5852c857 Merge branch 'w12_MDL-26844_20_limittests' of git://github.com/skodak/moodle 2011-03-21 15:35:17 +01:00
Eloy Lafuente (stronk7) 9c3865c81c MDL-25565 - fix borked merge. The power of one curly bracket! 2011-03-21 15:32:24 +01:00
Petr Skoda dca072aedc Merge branch 'MDL-26571_lesson_scale' of git://github.com/andyjdavis/moodle 2011-03-21 14:52:11 +01:00
Petr Skoda e5be555c27 Merge branch 'MDL-26768_0_grade' of git://github.com/andyjdavis/moodle 2011-03-21 14:49:18 +01:00
Petr Skoda 949fe7154c Merge branch 's8_MDL-26919_search_dialog_event' of git://github.com/dongsheng/moodle 2011-03-21 14:46:59 +01:00
Petr Skoda d96b0a969b Merge branch 'wip-MDL-26822' 2011-03-21 14:03:33 +01:00
Petr Skoda ae8c1f3d06 MDL-26822 fix whitespace 2011-03-21 14:02:50 +01:00
Dongsheng Cai e4e9e853d2 Fix three minor filepicker bugs: 1. use language string in search dialog instead of hard code filepicker MDL-26915 2. search dialog now response to enter key MDL-26919 3. search dialog should be modal mode MDL-26918 2011-03-21 20:56:36 +08:00
Tim Hunt 92d04f0b4c MDL-20636 Problem processing submissions if slots is not given explicitly.
James found this during load testing.
2011-03-21 12:43:00 +00:00
Tim Hunt ff58648f8a MDL-20636 Fix problem editing truefalse questions. #298
Also, fix a notice on the quiz editing form.
2011-03-21 12:42:54 +00:00
Sam Hemelryk 8196e3c08d Merge branch 'MDL-26557' of git://git.luns.net.uk/moodle 2011-03-21 17:32:06 +08:00
Sam Hemelryk 587a4ee42c Merge branch 'MDL-26827' of git://git.luns.net.uk/moodle 2011-03-21 17:23:13 +08:00
Sam Hemelryk c889fb8372 Merge branch 'w12_MDL-26904_20_PHPLOL' of git://github.com/skodak/moodle 2011-03-21 17:19:06 +08:00
Sam Hemelryk beb81f4947 Merged PULL-496/MDL-26859 and fixed incorrect defines 2011-03-21 17:13:20 +08:00
Sam Hemelryk ee780aeeaf Merge branch 'w12_MDL-26876_20_blogformat' of git://github.com/skodak/moodle 2011-03-21 16:50:07 +08:00
Sam Hemelryk d9738e84d6 Merged PULL-480/MDL-24877 and bumped version number to fix conflict 2011-03-21 15:58:19 +08:00
Sam Hemelryk 161ba40d03 Merge branch 'w12_MDL-26808_20_enrolpageurl' of git://github.com/skodak/moodle 2011-03-21 15:47:36 +08:00
Sam Hemelryk ca3fce634f Merge branch 'w12_MDL-26826_20_youtubedim' of git://github.com/skodak/moodle 2011-03-21 14:27:45 +08:00
Sam Hemelryk 909fc3ff2e Merge branch 'w12_MDL-26726_20_typocat' of git://github.com/skodak/moodle 2011-03-21 14:16:51 +08:00
Sam Hemelryk e460480080 Merge branch 'w12_MDL-26825_20_cancelform' of git://github.com/skodak/moodle 2011-03-21 14:10:44 +08:00
Sam Hemelryk d1f5425171 Merge branch 'w12_MDL-26837_20_algebra' of git://github.com/skodak/moodle 2011-03-21 13:37:36 +08:00
Sam Hemelryk 1698268db1 Merge branch 'w12_MDL-26834_20_inactiveparticipants' of git://github.com/skodak/moodle 2011-03-21 13:30:59 +08:00
Sam Hemelryk 885e86b108 Merge branch 'w12_MDL-26833_20_inactiveforum' of git://github.com/skodak/moodle 2011-03-21 12:36:47 +08:00
Sam Hemelryk 37fff87398 Merge branch 'w12_MDL-26803_20_userupload' of git://github.com/skodak/moodle 2011-03-21 12:28:45 +08:00
Sam Hemelryk b89d39bfcb Merge branch 'w12_MDL-26842_20_ociparams' of git://github.com/skodak/moodle 2011-03-21 12:22:23 +08:00
Sam Hemelryk 9d61397181 Merge branch 'MDL-26607_search_error' of git://github.com/andyjdavis/moodle 2011-03-21 11:54:20 +08:00
Sam Hemelryk 0235bd8706 Merged MDL-25565 PULL-451 and fixed conflicts 2011-03-21 11:16:50 +08:00
Sam Hemelryk 553669ae17 navigation MDL-26908 Fixed up positioning of icons for items that are both expandable and have an icon 2011-03-21 10:45:23 +08:00
Sam Hemelryk c78262b542 navigation MDL-26903 Fixed regression to navigation ajax after CM changes 2011-03-21 10:22:28 +08:00
Matteo Scaramuccia c6e46d37bc MDL-26905 - Fixed missing of currentorg initialization in AICC API 2011-03-20 23:54:39 +01:00
Petr Skoda 7119e1a0a7 MDL-26904 fix funny constant typo 2011-03-20 19:25:47 +01:00
Petr Skoda 8f6c1f3488 MDL-26859 improve blog access control and prevent unnecessary blog includes 2011-03-20 13:34:51 +01:00
Petr Skoda 5b183f51a8 MDL-26859 do not show "my blog" link to guests and not-logged-in users 2011-03-20 12:34:41 +01:00
Petr Skoda fd85ceac57 MDL-26859 improve coding style in blog related blocks 2011-03-20 12:29:22 +01:00
Petr Skoda d9e0b80ffb MDL-26859 automatically enable and disable blog related blocks when bloglevel changed 2011-03-20 12:28:34 +01:00
Petr Skoda 61c32b7b27 MDL-26808 solve chicken-egg problem with moodle url on the user enrolments page 2011-03-20 11:03:16 +01:00
Petr Skoda d6614d667d MDL-26876 use correct blog post format when migrating to forum posts 2011-03-20 08:28:46 +01:00
Matteo Scaramuccia 36c0108a2f MDL-26894: merged from SCORM 1.2 (scorm_12lib.php) after an XDebug audit session 2011-03-19 11:15:10 +01:00
Tim Hunt 8c448e1c83 MDL-26861 quiz view align Summary of your previous attempts table consistenty
Fix thanks to Joseph Rézeau.
2011-03-19 09:31:27 +00:00
Tim Hunt c08643da97 MDL-26887 Refactor file_save_draft_area_files to separate out the file_rewrite_urls_to_pluginfile bit. 2011-03-18 16:41:29 +00:00
Eloy Lafuente (stronk7) 00570de599 MDL-26883 ddl - fix some function declarations 2011-03-18 14:40:20 +01:00
Sam Hemelryk ced9fc4453 theme-anomaly MDL-25621 Added support for the langmenu to the config.php file 2011-03-18 16:53:03 +08:00
Sam Hemelryk 34b9d4d4a5 portfolio MDL-23022 Fixed navigation when cancelling a portfolio export 2011-03-18 16:19:59 +08:00
Adam Olley 9bf6815753 user-selector MDL-25975 Fixed timeout bug in user selector that was affecting IE8 2011-03-18 15:02:55 +08:00
Sam Hemelryk 4c2820fbd8 navigation MDL-26875 Moved course type check into object check and moved JS string call to navigation block where the navigation JS is initialised. 2011-03-18 14:45:10 +08:00
Sam Hemelryk dd18964703 navigation MDL-26570 Removed test from navigation simpletests which is no longer possible due to new cm_info object implementation 2011-03-18 13:51:35 +08:00
Sam Hemelryk c755c87437 navigation MDL-26570 branchid was renamed to key in previous fixes, unit tests updated to reflect this 2011-03-18 13:35:46 +08:00
Jonathon Fowler c683165a4a insert a 'View all courses' link when loading category navigation entries from AJAX 2011-03-18 15:00:14 +10:00
Sam Hemelryk d30d67aad5 theme-overlay MDL-25834 Added images to replace the standard dropdown arrows (new images are white) 2011-03-18 11:26:33 +08:00
Sam Hemelryk 53b1445eeb theme-overlay MDL-25834 Added CSS to better display the custom menu in the overlay theme 2011-03-18 11:23:58 +08:00
Petr Skoda a3516c4908 MDL-26826 add resizing of youtube and vimeo and remove non-functional % embedding sizes, only pixel sizes work in object tags 2011-03-17 22:13:07 +01:00
Petr Skoda 3e7069e70b MDL-26726 fix whitespace and a few debug and comment typos 2011-03-17 21:34:34 +01:00
Petr Skoda d2b322ae3c MDL-26825 do not return any form data if form cancelled 2011-03-17 20:43:35 +01:00
Matteo Scaramuccia 77e889a0ef MDL-26863: fixed regression by an appropriate Merging From Branch using 1.9 2011-03-17 18:15:42 +01:00
Petr Skoda 10793e570c MDL-26837 remove blacklisted markup from algebra conversion 2011-03-17 15:36:21 +01:00
Tim Hunt ea003cd59a MDL-26848 get rid of stupid unsigned columns in the quiz statistics report. 2011-03-17 12:48:01 +00:00
Petr Skoda 72650054f4 MDL-26833 send forum notifications to active enrolled users only 2011-03-16 23:26:00 +01:00
Petr Skoda 505c641a52 MDL-26834 remove suspended users from the participants list 2011-03-16 22:10:12 +01:00
Petr Skoda 22a7796343 MDL-26803 fix switched values of autosubscribe defaults in user upload 2011-03-16 20:00:06 +01:00
Petr Skoda bc61aa4085 MDL-26803 add missing forcing of password reset when new password created in cron 2011-03-16 19:59:33 +01:00
Petr Skoda 4335aa296e MDL-26844 ugly workaround for PHP int size limitation in query limits
It looks like the pg driver or database is internally overflowing at least on my 64bit test setup, I think we can safely return all results when from + num is over our max PHP integer.
2011-03-16 16:15:43 +01:00
Petr Skoda 3d24c50144 MDL-26844 fix use of invalid integers in dml tests 2011-03-16 16:08:55 +01:00
sam marshall adaeccb66d MDL-26781 Ensure get_fast_modinfo $cm is compatible with get_record $cm 2011-03-16 15:03:01 +00:00
Tim Hunt b6eb984a45 MDL-26747 Allow course reports to have settings.php 2011-03-16 14:45:02 +00:00
Tim Hunt 6d03fd9830 MDL-20636 Fix for Bug 11593 merged from our 1.9 version. #268 2011-03-16 14:34:19 +00:00
Petr Skoda 200b4556d7 MDL-26842 make sure query parameter names are not reserved words in oracle driver 2011-03-16 15:20:32 +01:00
Andrew Robert Nicols d8e7d1a085 formslib: MDL-26557 Use correct variable name and specify defaults in function declaration
Signed-off-by: Andrew Robert Nicols <andrew.nicols@luns.net.uk>
2011-03-16 10:50:07 +00:00
Andrew Davis (andyjdavis) f51cda3d09 lesson MDL-26571 made lesson accept a custom scale 2011-03-16 17:27:59 +08:00
Dan Poltawski f723bd3df5 blocks admin MDL-26827- allow blocks settings to be an admin externalpage
This borrows from Tim's technique for qtypes in 1650a33cb
2011-03-16 09:12:22 +00:00
Petr Skoda 56babbcb76 weekly release 2011-03-16 09:35:33 +01:00
Andrew Davis (andyjdavis) b6e526585a message MDL-26607 fixed sql error when searching for users and limiting search to your courses 2011-03-16 10:58:07 +08:00
Andrew Davis (andyjdavis) 76027a9f65 lesson MDL-26768 lesson was inserting a grade of 0 when a user id and a null raw grade were supplied 2011-03-16 10:26:12 +08:00
Eloy Lafuente (stronk7) 93d8fdc201 MDL-26697 take out unused vars from formal white 2011-03-15 15:33:36 +01:00
Eloy Lafuente (stronk7) e5e64a4886 Merge branch 'w11_MDL-26697_20_media' of git://github.com/skodak/moodle
Conflicts:
	theme/formal_white/config.php
2011-03-15 15:21:02 +01:00
Jerome Mouneyrac d587f077ef MDL-26822 enrol_user now save the status + trivial typo change in a (bit) related file 2011-03-15 17:27:27 +08:00
Mary Evans 1bb4846249 Fix for MDL-25565 2011-03-15 01:34:40 +00:00
Petr Skoda b0b4ab1aff Merge branch 'MDL-26464_m20_v2' of github.com:skodak/moodle 2011-03-14 20:55:04 +01:00
Petr Skoda 0393a8b706 MDL-26464 improve coding style and fix phpdocs 2011-03-14 20:54:00 +01:00
Petr Skoda cd3d2823af Merge branch 'MDL-26228_grade_full_view2' of git://github.com/andyjdavis/moodle 2011-03-14 18:21:33 +01:00
Petr Skoda 65361ab836 Merge branch 'MDL-24724_course_profile' of git://github.com/andyjdavis/moodle 2011-03-14 18:18:24 +01:00
Petr Skoda e7104d2dba PULL-400 fix incorrect format_white theme file permissions from recent commits 2011-03-14 18:11:09 +01:00
Petr Skoda 3908f7ca1a Merge branch 'MDL-4633_m20' of git://github.com/rwijaya/moodle 2011-03-14 18:01:19 +01:00
Eloy Lafuente (stronk7) 6326817e0f Merge branch 'MDL-26767' of git://github.com/timhunt/moodle 2011-03-14 12:07:41 +01:00
Eloy Lafuente (stronk7) 3d63eb08f6 Merge branch 'MDL-22478-alternative-langcacheroot' of git://github.com/mudrd8mz/moodle 2011-03-14 12:03:36 +01:00
Dan Marsden 571ae25286 MDL-21432 backup - add plagiarism plugin hooks for course and module 2011-03-14 11:44:14 +01:00
Sam Hemelryk f786f01115 Merge rebased branch 'formal_white_2011030507' of git://github.com/kordan/moodle.git 2011-03-14 18:02:18 +08:00
Sam Hemelryk e1f517fcc7 theme-formal_white MDL-26300, MDL-25628 , MDL-25520 Fixed whitespace and nesting issues 2011-03-14 17:59:57 +08:00
kordan 8b759a9a48 theme-formal_white MDL-26789 Fixed up vertical centering in navbar 2011-03-14 17:33:58 +08:00
kordan 5e911b2ea5 theme-formal_white MDL-26300, MDL-25628 , MDL-25520 fixed problems in admin report section pages 2011-03-14 17:33:38 +08:00
kordan 0e412e87a4 theme-formal_white MDL-26300, MDL-25628 , MDL-25520 one more setting and logos with transparent background to allow custom header background color 2011-03-14 17:33:03 +08:00
kordan 4afb01dbb4 formal white from scratch fixing MDL-26300, MDL-25628 , MDL-25520 2011-03-14 17:33:02 +08:00
Kordan 3718dfc771 theme-formal_white MDL-26300, MDL-25628 , MDL-25520 FW last version 2011-03-14 17:32:14 +08:00
Dongsheng Cai 2848b97948 MDL-24877, do not display all courses in course category tree if there are too many courses in moodle 2011-03-14 17:04:06 +08:00
Sam Hemelryk e96aa1a669 Merge branch 's7_MDL-26583_filepicker_lang' of git://github.com/dongsheng/moodle 2011-03-14 16:05:37 +08:00
Sam Hemelryk 4bbe460316 Merge branch 'w11_MDL-26480_20_redirect' of git://github.com/skodak/moodle 2011-03-14 15:41:51 +08:00
Sam Hemelryk 85f1abe304 Merge branch 'MDL-13983' of git://github.com/timhunt/moodle 2011-03-14 15:33:49 +08:00
Sam Hemelryk 9fed82de9c Merge branch 'MDL-26785' of git://github.com/stronk7/moodle 2011-03-14 11:22:05 +08:00
Sam Hemelryk 2012d82a96 Fixed merge conflicts in nonzero theme 2011-03-14 10:59:58 +08:00
Sam Hemelryk 66c6e870ef Merge branch 'MDL-25304' of git://github.com/epsd/moodle 2011-03-14 10:54:24 +08:00
Sam Hemelryk b146486613 Merge branch 'MDL-25786-2' of git://github.com/epsd/moodle 2011-03-14 10:43:42 +08:00
Sam Hemelryk e9fda1c945 Merge branch 'MDL-25212' of git://github.com/epsd/moodle 2011-03-14 10:36:17 +08:00
Sam Hemelryk af99e7286b Merge branch 'MDL-25939-3' of git://github.com/epsd/moodle 2011-03-14 10:33:17 +08:00
Sam Hemelryk 77a5af1f12 Merge branch 'MDL-26084' of git://github.com/epsd/moodle 2011-03-14 10:19:52 +08:00
Sam Hemelryk df94dbd825 Merge branch 'MDL-24743' of git://github.com/epsd/moodle 2011-03-14 09:57:55 +08:00
Sam Hemelryk e2d50a6a00 Merge branch 'MDL-26711' of git://github.com/epsd/moodle 2011-03-14 09:51:27 +08:00
Eloy Lafuente (stronk7) 64f3208b7c Merge branch 'w11_MDL-26698_20_helphttps' of git://github.com/skodak/moodle 2011-03-14 02:12:46 +01:00
Eloy Lafuente (stronk7) 3c38ad5d79 Merge branch 'MDL-26643' of git://github.com/nebgor/moodle 2011-03-14 01:57:08 +01:00
Eloy Lafuente (stronk7) 98fd7dcb72 Merge branch 'w11_MDL-24071_20_tex' of git://github.com/skodak/moodle 2011-03-14 01:53:29 +01:00
Eloy Lafuente (stronk7) b8f249b43a Merge branch 'w11_MDL-26634_20_ldapsep' of git://github.com/skodak/moodle 2011-03-14 01:26:22 +01:00
Eloy Lafuente (stronk7) 9f091bcd45 Merge branch 's7_MDL-9376_qaforum' of git://github.com/dongsheng/moodle 2011-03-14 01:22:10 +01:00
Eloy Lafuente (stronk7) 008011875c MDL-25352 fix tiny typo 2011-03-14 01:12:38 +01:00
Eloy Lafuente (stronk7) 5869d05bb7 Merge branch 'w11_MDL-25352_20_replace' of git://github.com/skodak/moodle 2011-03-14 01:10:35 +01:00
Eloy Lafuente (stronk7) 2b1a23a6aa Merge branch 'MDL-26594' of git://github.com/nebgor/moodle 2011-03-14 00:54:36 +01:00
Eloy Lafuente (stronk7) d47070248f Merge branch 'MDL-26748' of git://github.com/timhunt/moodle 2011-03-14 00:53:28 +01:00
Petr Skoda c3b5e8290b MDL-25352 fix multiple issues in admin/replace.php
Make sure admins know things can go wrong, MSSQL and Oracle were never working, fix block_html config saving issue, skip a lot more tables because the data there is serialised() or can not be changed in case of config tables, more warnings and checkbox confirmation.
2011-03-14 00:51:42 +01:00
Eloy Lafuente (stronk7) 6bfddc2e38 Merge branch 'MDL-26773' of git://github.com/timhunt/moodle 2011-03-14 00:49:11 +01:00
Eloy Lafuente (stronk7) 7e0579cb8c Merge branch 'MDL-26714' of git://github.com/timhunt/moodle 2011-03-14 00:43:58 +01:00
Eloy Lafuente (stronk7) 9929445926 Merge branch 'MDL-19555_m20' of git://github.com/rwijaya/moodle 2011-03-14 00:35:03 +01:00
Eloy Lafuente (stronk7) f934143c6c Merge branch 'AMOS-install-strings' of git://github.com/mudrd8mz/moodle 2011-03-14 00:32:01 +01:00
Eloy Lafuente (stronk7) e9579e548d Merge branch 'w11_MDL-26621_20_profilemail' of git://github.com/skodak/moodle 2011-03-14 00:25:04 +01:00
Eloy Lafuente (stronk7) 5cd0d27089 Merge branch 'MDL-26730' of git://github.com/timhunt/moodle 2011-03-13 23:50:20 +01:00
Eloy Lafuente (stronk7) b5686d021b Merge branch 'MDL-26735' of git://github.com/timhunt/moodle 2011-03-13 23:41:48 +01:00
Eloy Lafuente (stronk7) d93c27ec95 Merge branch 'MDL-26734' of git://github.com/timhunt/moodle 2011-03-13 23:33:09 +01:00
Eloy Lafuente (stronk7) 908b892d9c Merge branch 'MDL-21446' of git://github.com/timhunt/moodle 2011-03-13 23:31:05 +01:00
Eloy Lafuente (stronk7) 22acfde076 Merge branch 'MDL-26733' of git://github.com/timhunt/moodle 2011-03-13 23:28:07 +01:00
Eloy Lafuente (stronk7) 40b204b863 Merge branch 'wip-MDL-26606' of git://github.com/sammarshallou/moodle 2011-03-13 23:22:04 +01:00
Eloy Lafuente (stronk7) 4f7fd61a7a Merge branch 'MDL-26724' of git://github.com/timhunt/moodle 2011-03-13 22:57:06 +01:00
AMOS bot 8dc0b786d0 Automatic installer lang files (20110313) 2011-03-13 19:45:51 +01:00
Petr Skoda 69542fb3af MDL-26698 use https for help ajax loginhttps pages 2011-03-13 17:08:50 +01:00
Petr Skoda f7f0909ce5 PULL-442 multiple TeX related fixes
Prevent moodle_url error, cleanup entity encoding and decoding, disable tex source view when TeX and Algebra plugins disabled, localise TeX source popup and prevent phishing attempts, fix executable permission of Algebra pearl script, prevent image error in tex debug when Tex/Ghostscript not configured properly, fix copyright blocks and phpdocs, improve coding style, fix wrong source display link in Algebra filter.
2011-03-13 15:18:07 +01:00
Petr Skoda b399e43592 MDL-26480 IIS redirect bug workaround
Credit goes to Zenger Sergey
2011-03-13 10:47:47 +01:00
Petr Skoda ee69d85a1f MDL-26634 LDAP NTLM SSO Multiple subnet separator is not specified and people use a wrong one
Credit goes to Inaki Arenaza.
2011-03-13 10:14:20 +01:00
Petr Skoda 181991e791 MDL-26621 respect email privacy settings on the main user profile and fix missing context 2011-03-12 19:04:26 +01:00
Petr Skoda fcd2cbaf1f MDL-26697 multiple media filtering fixes and improvements
Bug fixes:
    * fixed broken flash resizing via URL
    * upgraded Flowplayer
    * fixed invalid context in format_text()
    * all media related CSS moved from themes to filter and resources
    * fixed automatic pdf resizing in resources

Changes:
    * reworked filter_mediaplugin system settings - grouped by player type instead of individual extensions, added more information
    * improved regex url matching
    * removed old unused players, Eolas fix and UFO embedding
    * image embedding moved to filter_urltolink
    * new Flowplayer embedding API
    * accessibility and compatibility tweaks in Flowplayer
    * SWF embedding now works only in trusted texts, it is now enabled by default (works everywhere if "Allow EMBED and OBJECT tags" enabled)
    * new default video width and height

New features:
    * automatic Flash video resizing using information from video metadata
    * Flash HD video support (*.f4v)
    * Flash video embedding with HTML5 fallback - compatible with iOS and other mobile devices
    * Vimeo embedding
    * no-cookie YouTube site supported
    * HTML 5 audio and video with multiple source URLs and QuickTime fallback
    * more video and audio extensions in filelib.php
    * MP3 player colours customisable via CSS in themes
    * nomediaplugin class in a tag prevents media embedding
2011-03-12 17:42:52 +01:00
Eloy Lafuente (stronk7) e140197481 MDL-26785 module edit - icon in heading missing sometimes 2011-03-12 01:39:58 +01:00
Tim Hunt 9f622ce7d8 MDL-20636 Fix syntax error in question/format/xhtml/format.php 2011-03-11 18:28:40 +00:00
Tim Hunt 56b0df7eac MDL-20636 Kill Left over addslashes in the question engine code. #223 2011-03-11 13:45:38 +00:00
Tim Hunt c8b3ad7c46 MDL-20636 quiz_attempts.sumgrades should be nullable. #224 2011-03-11 13:45:03 +00:00
stabijoh fab058e5d5 Added custom menu to nonzero theme, MDL-26711 2011-03-11 07:22:56 -05:00
David Mudrak c198593b0e MDL-22478 Allow alternative location of strings disk cache
Administrators can now specify $CFG->langcacheroot in their config.php for
alternative location of strings disk cache. If the alternative location is
not set, Moodle uses default $CFG->dataroot/cache/lang
2011-03-11 12:34:52 +01:00
Tim Hunt 74a43c7487 MDL-26773 PHP error notice when editing multianswer question
$course was removed from the save question methods in 2.0, but this occurrence was missed.
Thanks to Joseph Rezeau for the fix
2011-03-11 08:51:47 +00:00
Tim Hunt c159b07046 MDL-26767 responses report has the same unsigned subtract issue as overview (MDL-26416) 2011-03-11 07:37:29 +00:00
Aparup Banerjee 2a5302b62d MDL-26643 added missing message property to discussion object used to upgrade blog 2011-03-11 14:28:45 +08:00
Dongsheng Cai 67fc4f0025 MDL-9376, disallow student to see the other users posts in max editing time, credits to Vlas Voloshin and Charles Fulton 2011-03-11 11:22:13 +08:00
Rossiani Wijaya 6e571603c0 MDL-19555: add NULL string test to format_test(). Credit goes to Matej Vela. Thanks 2011-03-11 11:16:18 +08:00
Rossiani Wijaya e4e9611570 MDL-26464: remove 'add entry' link on setting block when it reachs the max number of records. Link removal does not apply to user who has data:manageentries capability (eg: teacher). 2011-03-11 10:03:14 +08:00
Tim Hunt c5169f4e78 MDL-26748 file links in qtype essay feedback broken.
Fix thanks to Respondus Inc.
2011-03-10 21:40:00 +00:00
Tim Hunt 42e6506ebe MDL-20636 Minor fixes to the truefalse and match editing forms. 2011-03-10 19:09:42 +00:00
stabijoh 66e937a44b MDL-25304 minor fix to Fusion theme forum post style 2011-03-10 13:52:26 -05:00
stabijoh d60cc8dbec Added custom menu support to Leatherbound theme, MDL-25212 2011-03-10 09:54:59 -05:00
sam marshall 69ae86ea5f MDL-26606 Theme backup: Minor improvement to make it more consistent with other backup 2011-03-10 12:57:27 +00:00
stabijoh ec5ced0d9d Additional work for MDL-25939, fix splash orange blog titles 2011-03-10 07:33:55 -05:00
stabijoh 2ef9c4eb67 MDL-26084 fix in Canvas theme for hide section icon 2011-03-10 07:15:03 -05:00
Rossiani Wijaya 91c2b0f068 MDL-4633: remove 'required' rule for user's profile description 2011-03-10 15:45:49 +08:00
Tim Hunt 9316d66121 MDL-26714 qtype_multianswer needs an implementation of compare_responses.
The main problem lack of this was causing is if you click through a quiz without answering any questions, mulitanswer questions would get marked as answered.
2011-03-09 18:08:18 +00:00
Rod Norfor 1e668c4d85 MDL-13983 show frozen radio buttons in a more accessible way. 2011-03-09 16:26:37 +00:00
Tim Hunt b053dcab0f MDL-26730 when going back from modedit.php to the course, go to the right section. 2011-03-09 15:51:15 +00:00
Tim Hunt f11672d84a MDL-26735 Questions file links broken when quiz_attempts.id and .uniqueid differ. 2011-03-09 15:46:59 +00:00
Tim Hunt 5f36713765 MDL-26734 fatal error on the quiz review page when reviews are not allowed.
Sorry silly error by me, merging code from my 2.1 work.
2011-03-09 15:22:15 +00:00
Tim Hunt 0484f1ef01 MDL-21446 truncate >31 char worksheet names that otherwise break Excel export. 2011-03-09 14:43:44 +00:00
stabijoh cea5d97b4c Additional fix for MDL-25786, use of #header in theme Magazine 2011-03-09 09:35:42 -05:00
stabijoh ca8f828cb5 MDL-24743 fix for Magazine theme forced font size 2011-03-09 08:01:27 -05:00
Aparup Banerjee c4a88609fe MDL-26594 renamed named param causing oracle reserved word error. - thanks to Luca Mazzola 2011-03-09 17:04:09 +08:00
Dongsheng Cai a6b53a7cbe FILEPICKER MDL-26583 filepicker should use core language string not string from modules 2011-03-09 17:00:01 +08:00
Petr Skoda c09604234a weekly release 2011-03-09 09:07:01 +01:00
Andrew Davis (andyjdavis) 48c235941f gradebook MDL-26228 moved scrollbar css from standard theme into base 2011-03-09 15:55:25 +08:00
Andrew Davis (andyjdavis) 8d22e342a9 user MDL-24724 added email to user course profile 2011-03-09 13:29:55 +08:00
Tim Hunt d93cafeaa1 MDL-26733 avoid possible notice in admin/user.php. 2011-03-08 17:48:05 +00:00
Tim Hunt 7e0218e79f MDL-26724 notice from numerical qtype when no answer is given. 2011-03-08 10:43:48 +00:00
Petr Skoda ed66022935 MDL-26625 do not look for session size if session not started 2011-03-08 10:31:16 +01:00
Petr Skoda 23c799459d Revert "MDL-26392, nwiki and creole format wiki pages should support file attachments"
This reverts commit 0c5e812ba7  because UI is going to be reimplemented.
2011-03-08 10:11:07 +01:00
Mary Evans 2150d1580f Added Custom CSS Settings - Fix for MDL-26700 2011-03-07 15:01:21 -08:00
Mary Evans 2fb0b3bd3b Edited theme/nonzero/style/core.css via GitHub 2011-03-07 09:27:30 -08:00
Tim Hunt 07f8858406 MDL-20636 Cannot really delete questions that were only used in previews #196 2011-03-07 16:23:11 +00:00
Eloy Lafuente (stronk7) 97b4297e13 Merge branch 'MDL-26517' of git://github.com/timhunt/moodle 2011-03-07 14:49:17 +01:00
Tim Hunt 71575a152c MDL-26517 display responses in reports by converting to plain text.
Following Eloy's testing, that seems to be the only safe way. It is also consistent with what has been done in Moodle 2.1.
2011-03-07 11:57:38 +00:00
Petr Skoda 4eca364392 Merge branch 'MDL-26458_PULL' of git://github.com/nebgor/moodle 2011-03-07 12:52:51 +01:00
Petr Skoda 8eade3d773 Merge branch 'MDL-26392_wiki_images' of git://github.com/dongsheng/moodle 2011-03-07 12:40:04 +01:00
Petr Skoda 25ca24d59f Merge branch 'MDL-25388_restore_activities_target' of git://github.com/stronk7/moodle 2011-03-07 12:32:46 +01:00
Petr Skoda 2c10c5f4e5 Merge branch 'wip-MDL-26423' of git://github.com/sammarshallou/moodle 2011-03-07 12:28:27 +01:00
Eloy Lafuente (stronk7) 5f9f0717fe Merge branch 'MDL-26609-version-maturity' of git://github.com/mudrd8mz/moodle 2011-03-07 11:49:28 +01:00
Petr Skoda 29c852088a Merge branch 'wip-MDL-26625' of git://github.com/sammarshallou/moodle 2011-03-07 10:25:28 +01:00
Petr Skoda 7a2f4c12b6 Merge branch 'MDL-26433_message_constants' of git://github.com/andyjdavis/moodle 2011-03-07 10:18:31 +01:00
Eloy Lafuente (stronk7) 9f3813016c Merge branch 'MDL-26190' of git://github.com/srynot4sale/moodle 2011-03-07 02:58:09 +01:00
Eloy Lafuente (stronk7) 34700d60f2 Merge branch 'MDL-20562-report-link-string' of git://github.com/mudrd8mz/moodle 2011-03-07 02:48:42 +01:00
Eloy Lafuente (stronk7) 51ecc3255b Merge branch 'm20_MDL-26672_aiccfix' of git://github.com/danmarsden/moodle 2011-03-07 02:37:28 +01:00
Eloy Lafuente (stronk7) 500422e6d0 Merge branch 'workshop-submissions-anonymity-and-availability' of git://github.com/mudrd8mz/moodle 2011-03-07 01:56:28 +01:00
Eloy Lafuente (stronk7) 5ff33ba14b Merge branch 'MDL-26324' of git://github.com/timhunt/moodle 2011-03-07 01:22:43 +01:00
Eloy Lafuente (stronk7) 34e30d9bce Merge branch 'MDL-26445' of git://github.com/timhunt/moodle 2011-03-07 01:12:55 +01:00
Eloy Lafuente (stronk7) 7d754148c4 Merge branch 'MDL-26685' of git://github.com/timhunt/moodle 2011-03-07 01:06:51 +01:00
Eloy Lafuente (stronk7) 2875c1507f Merge branch 'MDL-26520' of git://github.com/timhunt/moodle 2011-03-07 00:29:14 +01:00
Eloy Lafuente (stronk7) 5878504958 Merge branch 'MDL-26636' of git://github.com/timhunt/moodle 2011-03-07 00:25:54 +01:00
Eloy Lafuente (stronk7) 4b43b1074f backup MDL-26572 add new param to plugin and subplugin functions 2011-03-07 00:16:25 +01:00
Eloy Lafuente (stronk7) 07a36633f9 Merge branch 'MDL-26572_backup_sum' of git://github.com/andyjdavis/moodle 2011-03-07 00:10:16 +01:00
David Mudrak d67c20b873 MDL-26535 workshop: fixed availability of published and assessed submissions
While working on the new capability to view authors of published
submissions, I realized that published submissions are correctly listed
(implemented in 00bc77ee) but they can't be viewed by submission.php.
This patch fixes submission.php so that it allows to view published
submissions.

Also, I noticed that when the workshop is closed, the submissions that
were assessed by the user are not listed (as they were in the previous
phases) but submission.php provides access to them correctly. So I added
a code that lists assessed submissions in the closed phase.
2011-03-06 23:49:49 +01:00
Dan Marsden 69c3d39a9c AICC MDL-26672 fix for handling of value = 0 2011-03-07 09:54:33 +13:00
andyjdavis 25bd5c75ab message MDL-26433 refactored the constants in messaging 2011-03-06 22:03:49 +08:00
ppichet 8f63ab1f44 MDL-26445 question -fix numerical unit grade
fix unit penalty grading and display


Signed-off-by: ppichet <pichet.pierre@uqam.ca>
2011-03-05 20:13:50 +00:00
Tim Hunt 209442ce24 MDL-26517 HTML tags visible in the response history table and quiz reports. 2011-03-05 19:51:38 +00:00
Tim Hunt 4a6f461830 MDL-26685 each attempt builds on last did not work when quiz_attemts.id and question_attempts.id were not equal. 2011-03-05 19:27:32 +00:00
Tim Hunt 231ec77323 MDL-26520 random tf questions that had not been answered were shown as answered on the summary page.
This was a regression from MDL-26236 thanks to some brain-dead PHP behaviour.
2011-03-05 16:33:42 +00:00
Tim Hunt b302591de8 MDL-26636 fix typo in language string.
Thanks to Luis de Vasconcelos.
2011-03-05 15:19:49 +00:00
Eloy Lafuente (stronk7) 165b7bd987 MDL-25388 restore - confusing options restoring 1-activity 2011-03-04 19:45:43 +01:00
Tim Hunt c5c16a2c81 MDL-26324 Existing overall feedback on non-graded quizzes prevents editing 2011-03-04 17:50:31 +00:00
Tim Hunt 0357171e68 MDL-26324 overall feedback problem when quiz changed to being graded out of 0 2011-03-04 17:20:12 +00:00
Aparup Banerjee 7fedc2c25e lib MDL-26458 adding unit tests to test cursors.
-added test with limits and order by with table aliases to test_get_records_sql()
 -added test_recordset_locks_delete() and test_recordset_locks_update()
 - added out of range limits test to test_get_records_sql()
2011-03-05 01:18:36 +08:00
sam marshall 89213d0041 backup MDL-26606 Backup should allow themes to have course data; also fix course theme restore 2011-03-04 15:53:48 +00:00
sam marshall b031caf858 lib MDL-26423 Added support for ->allowid option in format_text 2011-03-04 15:53:10 +00:00
sam marshall f07704d2a2 lib MDL-26625 Add session size info to perfdebug block 2011-03-04 15:52:19 +00:00
David Mudrak e13d02f544 MDL-26535 workshop: new capability to control the anonymity of published submissions
Re-using 'mod/workshop:viewauthornames' would not be a happy option here
because teacher would have to change local overrides every time when
they were closing or re-opening the workshop (if they wanted anonymous
assessment but non-anonymous hall of fame).
2011-03-04 14:08:00 +01:00
David Mudrak 757bade1f6 MDL-26684 workshop: fixed missing href attribute in the link to the own submission
This was caused by incorrect construction of workshop_submission_summary.
Instead of direct initiation, the helper method should be used. The
helper adds a property 'url' needed to render 'href' later.
2011-03-04 14:07:50 +01:00
David Mudrak de6aaa7295 MDL-26683 workshop: fixed typos in code comments 2011-03-04 13:03:49 +01:00
Eloy Lafuente (stronk7) 3479ba4d48 MDL-26458 sqlsrv - limit impl using scrollable sets 2011-03-04 16:12:37 +08:00
Dongsheng Cai 0c5e812ba7 MDL-26392, nwiki and creole format wiki pages should support file attachments 2011-03-04 15:44:20 +08:00
David Mudrak ea118bed0c MDL-20562 Do not use a capability name as a navigation node title
Ideally all reports should use their pluginname in the navigation tree.
In this particular case, the patch fixes two issues: using the
capability name as the report title in the navigation and incorrect
pluginname defined for coursereport_log.
2011-03-04 06:03:39 +01:00
David Mudrak 1a4d6a5b60 MDL-26609 Display information about the current version during the upgrade
As Eloy Lafuente noticed in the tracker discussion, we display the
information about the current version in the browser window title but
not at the screen itself. The patch fixes that by displaying the
information in the page heading instead of the page title.

Eloy's original idea to put the information into the grey message box
would require a change of [upgradesure,core_admin] string because
unfortunately it does not expect $a as an object but as a plain string.
2011-03-04 05:59:08 +01:00
David Mudrak dc41abd808 MDL-26609 Provide a link to a docs page for more help with Moodle versions and their maturity
Thanks Martin Dougiamas for this suggestion.
2011-03-04 05:59:08 +01:00
David Mudrak 3d673fc474 MDL-26609 Admins are warned if they try to install or upgrade to unstable version
The commit introduces four new constants that can be used to declare a
maturity level of Moodle core and, in the future, of extension plugins.
If the administrator is about to install or upgrade Moodle to a version
that is not considered as production-ready yet, a warning is displayed
before any change in the database.
2011-03-04 05:59:08 +01:00
Andrew Davis (andyjdavis) 98529b009b backup MDL-26572 made restore store null instead of 0 2011-03-04 12:14:00 +08:00
Petr Skoda 48fe5c6cf9 weekly release 2011-03-03 18:26:24 +01:00
Tim Hunt e2661fa8bc MDL-20636 Fix GIFT unit test 2011-03-02 17:47:12 +00:00
Tim Hunt cd4b6c1932 MDL-20636 Backup and restore of Opaque questions. 2011-03-02 17:43:04 +00:00
Tim Hunt 515e6b97b5 MDL-20636 Restore of question hints, and some other minor clean-up. 2011-03-02 17:43:02 +00:00
Tim Hunt b662532752 MDL-20636 Minor theme tweaks. 2011-03-02 17:43:00 +00:00
Tim Hunt c26b7f0cfb MDL-20636 Fix upgrade problems. Thanks to James Brisland for his help. 2011-03-02 17:42:58 +00:00
Tim Hunt 7916ea127e MDL-20636 Fix install breakage. 2011-03-02 17:42:56 +00:00
Tim Hunt beca0d8daf MDL-20636 Fix backup and restore issues found during testing. 2011-03-02 17:42:54 +00:00
Tim Hunt 42663bb78e MDL-20636 Fix a bunch of missing strings caused by separating question from quiz. 2011-03-02 17:42:53 +00:00
Tim Hunt f3ca24e418 MDL-20636 Update quiz and questions backup and restore.
This does not include user data yet, and it needs more testing.
2011-03-02 17:42:51 +00:00
Tim Hunt e2cba246b7 MDL-20636 Merge vle/master into ouqe2
Conflicts:
	mod/quiz/locallib.php
	mod/quiz/report/overview/overview_table.php
	mod/quiz/report/overview/report.php
	mod/quiz/report/responses/report.php
	question/type/random/questiontype.php
2011-03-02 17:34:18 +00:00
Petr Skoda 84fed015d8 Revert "gradebook MDL-26228 moved scroll bar css from standard theme into base"
This reverts commit 54c3b90ec6.
2011-03-02 09:09:06 +01:00
Aaron Barnes 0b15b43b3e MDL-26190 completion blocks: Show messages rather than hiding the block 2011-03-02 16:34:19 +13:00
Eloy Lafuente (stronk7) 5eb1e14aa4 Merge branch 'w09_MDL-26564_20_uploadusers' of git://github.com/skodak/moodle 2011-03-01 19:02:04 +01:00
Petr Skoda 2197b642b3 MDL-26564 print password when changed 2011-03-01 17:29:52 +01:00
Petr Skoda faceca9176 MDL-26564 fix reversed password policy check 2011-03-01 17:22:00 +01:00
Petr Skoda 431ac39634 MDL-26623 fix file permissions
The permissions are now going to be verified as part of the weekly release process.
2011-03-01 12:26:49 +01:00
Petr Skoda 2a921ee985 MDL-26047 fix string letter case and whitespace 2011-03-01 12:11:31 +01:00
Eloy Lafuente (stronk7) 8cf42d248e Merge branch 'w09_MDL-26564_20_uploadusers' of git://github.com/skodak/moodle 2011-03-01 12:05:52 +01:00
Eloy Lafuente (stronk7) 847753d497 Merge branch 'w09_MDL-26616_20_resourcelinks' of git://github.com/skodak/moodle 2011-02-28 18:41:03 +01:00
Eloy Lafuente (stronk7) 8ef8ec689e MDL-26047 nimble theme - changing 2 "fusion" ocurrences 2011-02-28 12:28:44 +01:00
Eloy Lafuente (stronk7) c2a975e68d Merge branch 'MDL-26047' of git://github.com/ptrkmkl/moodle 2011-02-28 12:27:46 +01:00
Eloy Lafuente (stronk7) a8ccca5325 MDL-26404 messages - move textlib instance out from loop 2011-02-28 10:35:21 +01:00
Eloy Lafuente (stronk7) 77e4bb774b Merge branch 'MDL-26404_nav_too_wide' of git://github.com/andyjdavis/moodle 2011-02-28 10:17:51 +01:00
Petr Skoda 70e6628ea3 Merge branch 'MDL-26576' of git://github.com/timhunt/moodle 2011-02-28 10:06:03 +01:00
Petr Skoda 589028b203 Merge branch 'MDL-25760' of git://github.com/ptrkmkl/moodle 2011-02-28 10:03:57 +01:00
Petr Skoda bca4fa81a8 Merge branch 'MDL-26451_alfresco_repo' of git://github.com/dongsheng/moodle 2011-02-28 10:01:03 +01:00
Petr Skoda ed9fd13fd6 Merge branch 'MDL-26228_grade_full_view' of git://github.com/andyjdavis/moodle 2011-02-28 09:59:13 +01:00
Petr Skoda 7c4c754a89 Merge branch 'MDL-26442_qtype_match' of git://github.com/stronk7/moodle 2011-02-28 09:56:36 +01:00
Petr Skoda 16fd74a3a5 Merge branch 'm20_MDL-26545_userpicfix' of git://github.com/danmarsden/moodle 2011-02-28 09:48:38 +01:00
David Mudrak 29cbe43189 MDL-13481 Strings fullname and shortname are now deprecated
This is a final cleanup commit of fullname and shortname issue. All
places where these strings were detected yet have been replaced with
proper fullnamecourse or fullnameuser or some other context specific
string.

AMOS BEGIN
 CPY [fullname,core],[outcomefullname,core_grades]
 CPY [shortname,core],[outcomeshortname,core_grades]
 CPY [name,core],[rolefullname,core_role]
 CPY [shortname,core],[roleshortname,core_role]
AMOS END
2011-02-28 09:42:50 +01:00
Petr Skoda 8bdb31ed54 MDL-26564 fix regressions and other problems in csv user upload
This patch fixes incorrect password creating, updating and resetting, updating of user fields, unsupported auth plugins are correctly identified, modification of mnethostid is prevented, fixed problem with email duplicates, new password is generated for users without email, etc. It also includes coding style improvements, more inline docs, future TODOs and license information.
2011-02-28 08:27:31 +01:00
Dan Marsden 629f5021b3 SCORM MDL-26545 - fix user object passed to user_picture renderer 2011-02-28 12:33:29 +13:00
Petr Skoda 3d8f1d3abc MDL-26616 fix broken resource modinfo caused by invalid sortorder upgrade 2011-02-27 22:54:41 +01:00
Andrew 54c3b90ec6 gradebook MDL-26228 moved scroll bar css from standard theme into base 2011-02-27 21:49:00 +08:00
Tim Hunt 404da23812 MDL-20636 Fix question flag javascript. 2011-02-25 15:36:07 +00:00
Tim Hunt f39cf78c02 MDL-20636 Only show the full summary of attempt table on the first page of the review. 2011-02-25 12:24:55 +00:00
Tim Hunt 3c6185e979 MDL-20636 Move restart preview button into the quiz nav block & remove unnecessary titles.
Also, remove automatic redirects to the quiz edit page. Show a message and a button instead.
2011-02-25 12:12:09 +00:00
Tim Hunt 22cebed503 MDL-20636 Review and fix the format parameter to all calls to format_text. 2011-02-24 20:18:16 +00:00
Tim Hunt a18fda20c4 MDL-20636 Split question-type specific styles into the separate plugins. 2011-02-24 19:34:08 +00:00
Tim Hunt ef31a28343 MDL-20636 Split question_definition::init_first_step into start_attempt and apply_attempt_state. 2011-02-24 19:12:42 +00:00
Tim Hunt 2daffca554 MDL-20636 Fix 30 TODOs 2011-02-24 17:47:51 +00:00
Tim Hunt d649fb0221 MDL-20636 Remove all references to global $QTYPES.
Except in the question types that have not yet been converted to the new question engine.
2011-02-24 15:29:07 +00:00
Tim Hunt 446166a628 MDL-20636 Minor bug-fixes 2011-02-24 12:01:37 +00:00
Dongsheng Cai b9825e8e29 REPOSITORY MDL-23951 alfresco repository plugin supports returning external links 2011-02-24 10:56:30 +08:00
Eloy Lafuente (stronk7) 303c04f7d0 MDL-26442 restore - missing new in qtype match exception 2011-02-24 02:24:18 +01:00
Eloy Lafuente (stronk7) 2b37004c28 weekly release 2011-02-23 20:03:30 +01:00
Tim Hunt 5e8a85aa64 MDL-20636 Massively reduce the number of references to quiz in the question code.
This mostly involves moving lang strings around, but I don't have time to do an AMOS script now.
2011-02-23 18:53:50 +00:00
Tim Hunt 88f0eb1546 MDL-20636 Reveiw all throw statements. 2011-02-23 16:50:09 +00:00
Tim Hunt f7970e3ca7 MDL-20636 Eliminate integer and boolean in PHPdoc comments. should be int and bool. 2011-02-23 16:25:25 +00:00
Tim Hunt a17b297d60 MDL-20636 Add missing defined('MOODLE_INTERNAL') || die(); 2011-02-23 16:00:20 +00:00
Tim Hunt 7764183a4a MDL-20636 Fix @package names and PHPdoc layout. 2011-02-23 13:38:16 +00:00
Tim Hunt 92c4354ff9 MDL-26576 avoid notices one quizzes with no overall feedback. 2011-02-23 11:42:37 +00:00
Andrew b2bce32ff0 message MDL-26404 trimming course short to prevent long names messing up the UI 2011-02-23 11:00:41 +08:00
Eloy Lafuente (stronk7) fa188aa0a2 Merge branch 'MDL-26546-workshop-restore' of git://github.com/mudrd8mz/moodle 2011-02-22 23:00:46 +01:00
David Mudrak 1dade8b185 MDL-26546 Workshop: fixed embedded images in Number of errors grading form
Because of this typo, embedded images were not loaded when the
assessment form was re-edited. Thanks Helen Foster for spotting this.
2011-02-22 22:19:16 +01:00
Tim Hunt 017bc1d9f3 MDL-20636 Fix @package names in question/behaviour, question/engine and question top level. 2011-02-22 20:50:18 +00:00
Tim Hunt d3603157bf MDL-20636 Add @package and GPL boiler-plate to files in /question. 2011-02-22 19:59:12 +00:00
Eloy Lafuente (stronk7) d6211dce9a Merge branch 'MDL-25816_jabber_preference' of git://github.com/andyjdavis/moodle 2011-02-22 16:51:49 +01:00
Eloy Lafuente (stronk7) ec58c9ddf0 Merge branch 'MDL-26537-flickr-callback-url' of git://github.com/mudrd8mz/moodle 2011-02-22 16:23:08 +01:00
Eloy Lafuente (stronk7) 5df4d6ccab Merge branch 'MDL-26513_restrict_modules' of git://github.com/stronk7/moodle 2011-02-22 16:12:43 +01:00
Eloy Lafuente (stronk7) 9da0fc11ac Merge branch 'MDL-26532' of git://github.com/nebgor/moodle 2011-02-22 15:40:30 +01:00
Eloy Lafuente (stronk7) 0783533066 Merge branch 'AMOS-install-strings' of git://github.com/mudrd8mz/moodle 2011-02-22 15:37:24 +01:00
Eloy Lafuente (stronk7) a8f690e4e6 Merge branch 'MDL-21250-capitalized-strings' of git://github.com/mudrd8mz/moodle 2011-02-22 15:35:50 +01:00
Helen Foster 6cb66ae00e MDL-21250 Get rid of capitalized words in titles 2011-02-22 14:15:58 +01:00
Eloy Lafuente (stronk7) 908053e21d Merge branch 'MDL-25122' of git://github.com/timhunt/moodle 2011-02-22 12:41:28 +01:00
Eloy Lafuente (stronk7) 915a20f5a5 Merge branch 'MDL-26546-workshop-restore' of git://github.com/mudrd8mz/moodle 2011-02-22 12:24:48 +01:00
Eloy Lafuente (stronk7) 0797530336 Merge branch 'MDL-26416' of git://github.com/timhunt/moodle 2011-02-22 12:18:52 +01:00
Eloy Lafuente (stronk7) c5530f4151 Merge branch 'fix-symbian' of git://github.com/darenc/moodle 2011-02-22 11:45:57 +01:00
Eloy Lafuente (stronk7) f7edca80b0 Merge branch 'MDL-26524' of git://github.com/grabs/moodle 2011-02-22 11:35:29 +01:00
Eloy Lafuente (stronk7) 3521e87f06 Merge branch 'MDL-26060' of git://github.com/grabs/moodle 2011-02-22 11:30:33 +01:00
Eloy Lafuente (stronk7) f44872427f Merge branch 'MDL-26435_rem_commented_out_code' of git://github.com/andyjdavis/moodle 2011-02-22 11:26:56 +01:00
Eloy Lafuente (stronk7) d33d813d91 Merge branch 'lesson-rendering' of git://github.com/mudrd8mz/moodle 2011-02-22 11:25:03 +01:00
Eloy Lafuente (stronk7) e49c60345e Merge branch 'wip-MDL-26507' of git://github.com/sammarshallou/moodle 2011-02-22 11:17:16 +01:00
Eloy Lafuente (stronk7) 29336fb13c Merge branch 'MDL-26461_change_rating_scale' of git://github.com/andyjdavis/moodle 2011-02-22 11:06:23 +01:00
Eloy Lafuente (stronk7) cc31313c4b Merge branch 'MDL-26440_uid' of git://github.com/andyjdavis/moodle 2011-02-22 10:27:38 +01:00
Andrew Davis (andyjdavis) 6c0f13a5bc message MDL-25816 added safety checks in form processing 2011-02-22 16:05:01 +08:00
David Mudrak 7c26c3f875 MDL-26546 Workshop: fixed incorrect mapping name in the restore of assessment forms
There was a regression of 8fa86f and ac0f8f where I changed the mapping
names but did not use the new names in add_related_files() call.

All credit goes to Eloy Lafuente for spotting the problem and giving me
a hint on how to fix it.
2011-02-22 00:54:13 +01:00
AMOS bot d5a1cca1af Automatic installer lang files (20110222) 2011-02-22 00:27:05 +01:00
Tim Hunt 0ff4bd0877 MDL-20636 Fix new stdClass -> stdClass(), and trailing whitespace. 2011-02-21 18:10:19 +00:00
Tim Hunt aa9bdbe31c MDL-20636 Boilerplate and other cleanup in the question core code.
This includes converting behaviours to pluginname strings.
2011-02-21 18:00:15 +00:00
Tim Hunt f7c1dfaf79 MDL-20636 Finish off converting question import. 2011-02-21 17:29:18 +00:00
Tim Hunt ba6438471b MDL-20636 Fix top of file boilerplate in mod/quiz. 2011-02-21 16:13:25 +00:00
David Mudrak dd2645d304 MDL-26537 Portfolio: Flickr setup instruction contains correct callback URL
There was a bug due to the code copied from portfolio_boxnet plugin.
2011-02-21 16:00:12 +01:00
Eloy Lafuente (stronk7) e4f72d1428 MDL-26513 restore - observe target site restrictmodulesfor setting 2011-02-21 15:58:20 +01:00
Tim Hunt b04a4319d6 MDL-20636 Remove &copy; from all PHPdoc comments, and tidy them up a bit. 2011-02-21 14:51:02 +00:00
Charles Fulton fdef13e692 MDL-26507: improper use of assignment operater causes grade checks to fail 2011-02-21 12:54:37 +00:00
Aparup Banerjee d042ff06b3 assignment MDL-26532 fixed regression in assignment_cron() while processing messaging. 2011-02-21 15:43:30 +08:00
Andrew Davis (andyjdavis) aafa4f324a rating MDL-26461 fixed an off by 1 bug that made the safeguard against too high ratings not work 2011-02-21 10:48:38 +08:00
Andreas Grabs 5cf4fa4684 MDL-26524 - Group Filtering Errors 2011-02-20 18:18:44 +01:00
Andreas Grabs 7cc5cec6e1 MDL-26060 - Sorting by date on user list for responses list throws an error 2011-02-20 17:45:10 +01:00
Tim Hunt 79c6e3a096 MDL-25122 Quiz review page does not check and enforce separate groups mode. 2011-02-18 18:53:37 +00:00
Tim Hunt 8032cd792c MDL-25122 Quiz review page does not check and enforce separate groups mode. 2011-02-18 17:36:18 +00:00
Tim Hunt 05d2a8b7f1 MDL-26416 avoid subtracting two unsigned ints, which breaks MySQL since 5.5.5. 2011-02-18 16:27:49 +00:00
Tim Hunt 19a9f1124d MDL-26416 avoid subtracting two unsigned ints, which breaks MySQL since 5.5.5. 2011-02-18 14:10:06 +00:00
Tim Hunt bbc2d0ba31 MDL-26416 quiz overview report, clean up the code before making the real bug fix.
Cleaning up the code like this will make the real bug-fix easier to understand.
2011-02-18 14:10:04 +00:00
Daren Chandisingh cb6b733232 Change 'Simbian' to 'Symbian' 2011-02-18 12:28:26 +00:00
David Mudrak ffdf7f8a24 MDL-25899 Lesson: fixed page content rendering
Form element 'header' used to be used for rendering the page contents.
This led to layout problems in non-gecko browsers. This patch fixes the
issue by using raw 'html' element to render the page contents.
2011-02-18 11:43:24 +01:00
Joseph Rezeau c76cd2ede1 MDL-26113 Lesson: temporary fix of page content alignment
That rendering method should not use cell style attribute at all.
Instead, the alignment should be controlled by CSS. However, this will
require more massive changes in the Lesson code to be done by the module
maintainer. As a temporary fix, left alignment is set as it usually
matches the layout that students see.
2011-02-18 10:43:25 +01:00
andyjdavis 7bbe971548 general MDL-26440 removed references to uid in SQL queries as its a reserved word in Oracle 2011-02-18 15:51:50 +08:00
andyjdavis 731f8516bc message MDL-26435 removed commented out code 2011-02-17 11:03:18 +08:00
Tim Hunt e24ee794b2 MDL-20636 Convert the overview report. 2011-02-16 17:33:51 +00:00
Tim Hunt 2a3bdbf98e MDL-20636 Fix some minor bugs. 2011-02-16 14:06:12 +00:00
Tim Hunt 0f33deafaa MDL-20636 Fix question/enigne/datalib.php unit tests. 2011-02-15 18:19:55 +00:00
Tim Hunt 04853f273a MDL-20636 Convert quiz statistics report. 2011-02-15 17:22:31 +00:00
Tim Hunt 9b40c540ee MDL-20636 Responses report mostly working. 2011-02-14 17:57:47 +00:00
Tim Hunt cf3b65686a MDL-20636 Finished conversion of the manual grading report. 2011-02-14 17:57:44 +00:00
Tim Hunt adaad5f224 MDL-20636 Fix install 2011-02-13 07:34:32 +00:00
Tim Hunt a8a8ec51fc MDL-20636 Fix bug with starting an attempt. Now uses exceptions, so should not check return values. 2011-02-12 00:40:43 +00:00
Tim Hunt 2709ee45d3 MDL-20636 Working on converting the reports, starting with the manual grading report. Very much a work-in-progress.
Also, some random bug-fixing.
2011-02-11 18:47:08 +00:00
Tim Hunt a13d4fbd20 MDL-20636 Fix lots of minor quiz editing glitches. 2011-02-11 17:36:30 +00:00
Tim Hunt fd214b596d MDL-20636 Preserve scroll position when doing action on the quiz edit page. 2011-02-11 17:36:02 +00:00
Tim Hunt f9b0500f7f MDL-20636 Quiz editing now works, as does the random question type.
However, all this needs more testing.

Also, a bit of a purge of training whitespace and global .
2011-02-10 20:50:18 +00:00
Tim Hunt 1493619923 MDL-20636 Review option defaults in the admin settings. 2011-02-10 18:35:42 +00:00
Tim Hunt 55b81c131f MDL-20636 todo list clean-up. 2011-02-10 12:50:50 +00:00
Tim Hunt 56e82d993d MDL-20636 Images in questions now work in quiz attempts. 2011-02-09 20:33:51 +00:00
Tim Hunt 7ee80cab53 MDL-20636 Manual comment popup comment.php now works. 2011-02-09 20:29:59 +00:00
Tim Hunt 37cfb5f163 MDL-26337 Improve close_window. Fix bug when $reloadopener is false, and
better usability when it is true.
2011-02-09 20:18:31 +00:00
Tim Hunt 729c372b1b MDL-20636 Quiz index and reviewquestion pages work. 2011-02-09 20:18:28 +00:00
Tim Hunt b2607ccc19 MDL-20636 Now the quiz review page works. 2011-02-09 20:18:24 +00:00
Tim Hunt 167f1562f8 MDL-20636 Merge and fix quiz unit tests. 2011-02-09 20:18:21 +00:00
Tim Hunt 8f37f7fb7a MDL-20636 It is now possible to submit a page of the quiz, and view the summary page. 2011-02-09 20:18:18 +00:00
Tim Hunt a1eb3a4466 MDL-20636 It is now possible to start a quiz attempt.
This includes merging the CSS.
2011-02-09 20:18:15 +00:00
Tim Hunt 7c5bd5bfab MDL-20636 Working towards being able to attempt a quiz. 2011-02-09 20:18:12 +00:00
Tim Hunt 48f1784a16 MDL-20636 Quiz view page now works. 2011-02-09 20:18:09 +00:00
Tim Hunt f255782339 MDL-20636 You can now create a quiz, and edit the settings.
Little else works, but this is just the first step.
2011-02-09 20:18:06 +00:00
Tim Hunt 25302dee78 MDL-20636 Started work converting the quiz. 2011-02-09 20:18:03 +00:00
Tim Hunt 3d0b815cb1 MDL-20636 Try to allow Opaque questions to work in deferred feedback mode, if they want. 2011-02-09 20:18:00 +00:00
Tim Hunt a31689a4eb MDL-20636 Recent bug fix. 2011-02-09 20:17:35 +00:00
Tim Hunt 74c479f212 MDL-20636 Merge branch 'master' into qe2_wip
Conflicts:
	lib/questionlib.php
	question/type/calculated/lang/en/qtype_calculated.php
	question/type/questiontype.php
2011-02-03 11:18:40 +00:00
Tim Hunt 0fafed0f09 MDL-20636 Finish making ddwtos work, mostly. Also various other JS fixes.
This JavaScript really needs to be rewritten to use YUI3.
2011-02-02 19:03:38 +00:00
Tim Hunt 706d06e29b MDL-20636 ddwtos and gapselect qtypes now very nearly work.
Todo rendering questions with files, and ddwtos javascript.
2011-02-01 23:44:40 +00:00
Tim Hunt 9a9e776c55 MDL-20636 Now all the unit tests for the the ddwtos and gapselect qtypes pass. 2011-02-01 11:40:29 +00:00
Tim Hunt 5258903e7f MDL-20636 More work on the ddwtos and gapselect qtypes.
Now there are no longer fatal errors that break other qtypes, but these two qtypes still not work completely. More to come.
2011-01-31 18:07:38 +00:00
Tim Hunt c3e6bd18f5 MDL-20636 work-in-progress converting the ddwtos and gapselect qtypes. 2011-01-28 19:07:33 +00:00
Tim Hunt 6e34cd2924 MDL-20636 Rename the question type editing forms to start with qtype_... 2011-01-28 18:50:20 +00:00
Tim Hunt 14ed1aa2d8 MDL-20636 Clean up. 2011-01-27 19:11:17 +00:00
Tim Hunt 46cf70cc8c MDL-20636 Bug 11408 JME and applet components don't work in IE. 2011-01-27 18:03:35 +00:00
Tim Hunt 26a03a6112 MDL-20636 Fix bad line endings. 2011-01-27 18:02:10 +00:00
Tim Hunt f86390dc94 MDL-20636 Bug 11396 better handle manually graded questions that are graded out of 0.
The key point is that 0 * Ungraded should equal 0, rather than Ungraded.
2011-01-27 17:43:50 +00:00
Tim Hunt d4d64ee3f1 MDL-20636 Bug 11406 Opaque gives radio groups name _rg by default, which QE cannot handle.
As a work around, we specifically look for this variable, and if it is present, include it in the sumbitted data.
2011-01-24 14:54:21 +00:00
Tim Hunt 1c2ed7c501 MDL-20636 Conversion of the OU multi-response question type. 2011-01-18 19:23:26 +00:00
Tim Hunt 2eeb76f845 MDL-20636 Finish conversion of the Opaque qtype/behaviour. 2011-01-18 17:35:03 +00:00
Tim Hunt fe0412432f MDL-20636 And fix XML import unit tests too. 2011-01-18 16:06:05 +00:00
Tim Hunt 5f7cfba7fa MDL-20636 Question XML export unit tests now all pass. 2011-01-18 14:36:40 +00:00
ptrkmkl ee3b46d8bf MDL-26047 - added new theme called Nimble 2011-01-18 08:42:48 -05:00
Tim Hunt 49e2bba7cc MDL-20636 Merge import/export formats. XML is not finished (unit test failures). 2011-01-17 18:01:49 +00:00
Tim Hunt 3404cc149d MDL-20636 More work on the opaque question type. You can now set up question engines.
More work still needed on the actual question type.
2011-01-17 17:53:49 +00:00
Tim Hunt c32256af45 MDL-20636 unit tests MDL-26029 fix notices from CheckSpecifie
dFieldsExpectation.
2011-01-17 16:30:09 +00:00
Tim Hunt 04bbc70631 MDL-20636 qtype admin MDL-25987 also allow question type settings to be on an admin_externalpage. 2011-01-14 19:13:45 +00:00
Tim Hunt 2086d94077 MDL-20636 work-in-progress on converting the Opaque question type. 2011-01-14 19:06:52 +00:00
Tim Hunt 24ef491d8f MDL-20636 qtype admin MDL-25987 use get_plugin_list, rather than including questionlib.php.
This should be a small be significant performance win for people who are logged in as admin.
2011-01-14 17:38:11 +00:00
Tim Hunt 2ac0843f4b MDL-20636 Fix behaviour unit tests. (all but opaque) 2011-01-14 16:30:27 +00:00
Tim Hunt 93cadb1ede MDL-20636 Conversion of the match question type. 2011-01-13 20:24:33 +00:00
Tim Hunt 22f24ca87c MDL-20636 html_writer MDL-25971 Support disabled => boolean, as well as disabled => disabled in html_writer::select. 2011-01-13 19:36:30 +00:00
Tim Hunt 8b9dfc2bf6 MDL-20636 Fix editing of multichoice questions. 2011-01-13 18:36:13 +00:00
Tim Hunt ce5e4fb620 MDL-20636 Better icon for missing qtype. 2011-01-13 18:36:11 +00:00
Tim Hunt c9c989a09a MDL-20636 Mostly working conversion of the multichoice question type.
Currently, you get an error on saving the editing form.
2011-01-13 18:36:08 +00:00
Tim Hunt 9481434019 MDL-20636 Conversion of the missingtype question type. 2011-01-13 18:36:05 +00:00
Tim Hunt ec3d4ef543 MDL-20636 Actually, passing to get_question summary is silly. Revert. 2011-01-13 18:36:03 +00:00
Tim Hunt 6d03299dec MDL-20636 Conversion of the essay question type. 2011-01-13 18:36:00 +00:00
Tim Hunt 7a7197482d MDL-20636 Fix if the use of the File API so images work in questions. 2011-01-13 18:35:57 +00:00
Tim Hunt 32d8935c8d MDL-20636 Conversion of the description question type. 2011-01-13 18:35:54 +00:00
Tim Hunt 481dc639b3 MDL-20636 Add all the new styles to the base theme.
Later, some of these should be moved to canvas, or something, but this is good enough for now.
2011-01-13 18:35:52 +00:00
Tim Hunt 068b4594ba MDL-20636 Conversion of the shortanswer question type to the new question engine.
This commit includes minor bug fixes elsewhere in the system.
2011-01-13 18:35:49 +00:00
Tim Hunt cce1b6556c MDL-20636 Fix a bunch of minor errors in the truefalse preview.
Most significantly, all behaviours now work.
2011-01-13 18:35:46 +00:00
Tim Hunt c76145d3e4 MDL-20636 Previewing a truefalse question in deferred feedback mode now works. 2011-01-13 18:35:43 +00:00
Tim Hunt 2b7da64586 MDL-20636 It is now possible to save a truefalse question you have created.
This includes all the necessary DB upgrades.

Also all unit tests in question/type/simpletest and question/type/truefalse now pass.
2011-01-13 18:35:41 +00:00
Tim Hunt f29aeb5afd MDL-20636 converstion of questionlib.php and base questiontype.php, plus other cheanges required to get the question editing page to display. 2011-01-13 18:35:37 +00:00
Tim Hunt 06f8ed54fd MDL-20636 More progress. 2011-01-13 18:35:34 +00:00
Tim Hunt b691dc8510 MDL-20636 todo list 2011-01-13 18:35:32 +00:00
Tim Hunt d1b7e03d5d MDL-20636 Current work-in-progress converting the question engine to Moodle 2.0 2011-01-13 18:35:29 +00:00
ptrkmkl 6f2257ae0d Removed white color from course section content and added white color to section content left side for topic number styling 2011-01-08 12:39:05 -05:00
7450 changed files with 778154 additions and 536645 deletions
+1 -1
View File
@@ -19,7 +19,7 @@ $returnurl = new moodle_url('/admin/settings.php', array('section'=>'manageauths
$PAGE->set_url($returnurl);
$action = optional_param('action', '', PARAM_ACTION);
$auth = optional_param('auth', '', PARAM_SAFEDIR);
$auth = optional_param('auth', '', PARAM_PLUGIN);
get_enabled_auth_plugins(true); // fix the list of enabled auths
if (empty($CFG->auth)) {
+1 -1
View File
@@ -6,7 +6,7 @@
require_once '../config.php';
require_once $CFG->libdir.'/adminlib.php';
$auth = required_param('auth', PARAM_SAFEDIR);
$auth = required_param('auth', PARAM_PLUGIN);
$PAGE->set_pagetype('admin-auth-' . $auth);
admin_externalpage_setup('authsetting'.$auth);
+63 -32
View File
@@ -12,6 +12,8 @@
$hide = optional_param('hide', 0, PARAM_INT);
$show = optional_param('show', 0, PARAM_INT);
$delete = optional_param('delete', 0, PARAM_INT);
$unprotect = optional_param('unprotect', 0, PARAM_INT);
$protect = optional_param('protect', 0, PARAM_INT);
/// Print headings
@@ -24,6 +26,9 @@
$strcourses = get_string('blockinstances', 'admin');
$strname = get_string('name');
$strshowblockcourse = get_string('showblockcourse');
$strprotecthdr = get_string('blockprotect', 'admin'). $OUTPUT->help_icon('blockprotect','admin');
$strprotect = get_string('blockprotect', 'admin');
$strunprotect = get_string('blockunprotect', 'admin');
/// If data submitted, then process and store.
@@ -43,6 +48,36 @@
admin_get_root(true, false); // settings not required - only pages
}
if (!isset($CFG->undeletableblocktypes) || (!is_array($CFG->undeletableblocktypes) && !is_string($CFG->undeletableblocktypes))) {
$undeletableblocktypes = array('navigation', 'settings');
} else if (is_string($CFG->undeletableblocktypes)) {
$undeletableblocktypes = explode(',', $CFG->undeletableblocktypes);
} else {
$undeletableblocktypes = $CFG->undeletableblocktypes;
}
if (!empty($protect) && confirm_sesskey()) {
if (!$block = $DB->get_record('block', array('id'=>$protect))) {
print_error('blockdoesnotexist', 'error');
}
if (!in_array($block->name, $undeletableblocktypes)) {
$undeletableblocktypes[] = $block->name;
set_config('undeletableblocktypes', implode(',', $undeletableblocktypes));
}
admin_get_root(true, false); // settings not required - only pages
}
if (!empty($unprotect) && confirm_sesskey()) {
if (!$block = $DB->get_record('block', array('id'=>$unprotect))) {
print_error('blockdoesnotexist', 'error');
}
if (in_array($block->name, $undeletableblocktypes)) {
$undeletableblocktypes = array_diff($undeletableblocktypes, array($block->name));
set_config('undeletableblocktypes', implode(',', $undeletableblocktypes));
}
admin_get_root(true, false); // settings not required - only pages
}
if (!empty($delete) && confirm_sesskey()) {
echo $OUTPUT->header();
echo $OUTPUT->heading($strmanageblocks);
@@ -63,33 +98,7 @@
exit;
} else {
// Inform block it's about to be deleted
if (file_exists("$CFG->dirroot/blocks/$block->name/block_$block->name.php")) {
$blockobject = block_instance($block->name);
if ($blockobject) {
$blockobject->before_delete(); //only if we can create instance, block might have been already removed
}
}
// First delete instances and then block
$instances = $DB->get_records('block_instances', array('blockname' => $block->name));
if(!empty($instances)) {
foreach($instances as $instance) {
blocks_delete_instance($instance);
}
}
// Delete block
$DB->delete_records('block', array('id'=>$block->id));
drop_plugin_tables($block->name, "$CFG->dirroot/blocks/$block->name/db/install.xml", false); // old obsoleted table names
drop_plugin_tables('block_'.$block->name, "$CFG->dirroot/blocks/$block->name/db/install.xml", false);
// Delete the capabilities that were defined by this block
capabilities_cleanup('block/'.$block->name);
// Remove event handlers and dequeue pending events
events_uninstall('block/'.$block->name);
uninstall_plugin('block', $block->name);
$a->block = $strblockname;
$a->directory = $CFG->dirroot.'/blocks/'.$block->name;
@@ -114,11 +123,12 @@
$table = new flexible_table('admin-blocks-compatible');
$table->define_columns(array('name', 'instances', 'version', 'hideshow', 'delete', 'settings'));
$table->define_headers(array($strname, $strcourses, $strversion, $strhide.'/'.$strshow, $strdelete, $strsettings));
$table->define_columns(array('name', 'instances', 'version', 'hideshow', 'undeletable', 'delete', 'settings'));
$table->define_headers(array($strname, $strcourses, $strversion, $strhide.'/'.$strshow, $strprotecthdr, $strdelete, $strsettings));
$table->define_baseurl($CFG->wwwroot.'/'.$CFG->admin.'/blocks.php');
$table->set_attribute('class', 'compatibleblockstable blockstable generaltable');
$table->setup();
$tablerows = array();
foreach ($blocks as $blockid=>$block) {
$blockname = $block->name;
@@ -147,7 +157,11 @@
$settings = ''; // By default, no configuration
if ($blockobject and $blockobject->has_config()) {
if (file_exists($CFG->dirroot.'/blocks/'.$block->name.'/settings.php')) {
$blocksettings = admin_get_root()->locate('blocksetting' . $block->name);
if ($blocksettings instanceof admin_externalpage) {
$settings = '<a href="' . $blocksettings->url . '">' . get_string('settings') . '</a>';
} else if ($blocksettings instanceof admin_settingpage) {
$settings = '<a href="'.$CFG->wwwroot.'/'.$CFG->admin.'/settings.php?section=blocksetting'.$block->name.'">'.$strsettings.'</a>';
} else {
$settings = '<a href="block.php?block='.$blockid.'">'.$strsettings.'</a>';
@@ -187,15 +201,32 @@
$version = "$block->version ($plugin->version)";
}
if (!$blockobject) {
// ignore
$undeletable = '';
} else if (in_array($blockname, $undeletableblocktypes)) {
$undeletable = '<a href="blocks.php?unprotect='.$blockid.'&amp;sesskey='.sesskey().'" title="'.$strunprotect.'">'.
'<img src="'.$OUTPUT->pix_url('t/unlock') . '" class="icon" alt="'.$strunprotect.'" /></a>';
} else {
$undeletable = '<a href="blocks.php?protect='.$blockid.'&amp;sesskey='.sesskey().'" title="'.$strprotect.'">'.
'<img src="'.$OUTPUT->pix_url('t/unlock_gray') . '" class="icon" alt="'.$strprotect.'" /></a>';
}
$table->add_data(array(
$row = array(
'<span'.$class.'>'.$strblockname.'</span>',
$blocklist,
'<span'.$class.'>'.$version.'</span>',
$visible,
$undeletable,
$delete,
$settings
));
);
$tablerows[] = array(strip_tags($strblockname), $row); // first element will be used for sorting
}
collatorlib::asort($tablerows);
foreach ($tablerows as $row) {
$table->add_data($row[1]);
}
$table->print_html();
-152
View File
@@ -1,152 +0,0 @@
<?php
/// Create "blog" forums in each course and copy blog entries from these courses' participants in these forums
define('NO_OUTPUT_BUFFERING', true);
require_once('../config.php');
require_once($CFG->dirroot.'/course/lib.php');
require_once($CFG->dirroot.'/blog/lib.php');
require_once($CFG->dirroot.'/mod/forum/lib.php');
require_once($CFG->libdir.'/adminlib.php');
admin_externalpage_setup('bloglevelupgrade');
$PAGE->set_pagelayout('maintenance');
$go = optional_param('go', 0, PARAM_BOOL);
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('bloglevelupgrade', 'admin'));
$strbloglevelupgrade = get_string('bloglevelupgradeinfo', 'admin');
if (!$go or !data_submitted() or !confirm_sesskey()) { /// Print a form
$optionsyes = array('go'=>1, 'sesskey'=>sesskey());
echo $OUTPUT->confirm($strbloglevelupgrade, new moodle_url('bloglevelupgrade.php', $optionsyes), 'index.php');
echo $OUTPUT->footer();
die;
}
echo $OUTPUT->box_start();
/// Turn off time limits, sometimes upgrades can be slow.
set_time_limit(0);
$i = 0;
// If $CFG->bloglevel is set to BLOG_GROUP_LEVEL or BLOG_COURSE_LEVEL, create a new "blog" forum in each course
// whose enrolled students have written blog entries, copy these entries in that forum and switch off blogs at site level
if ($CFG->bloglevel == BLOG_COURSE_LEVEL || $CFG->bloglevel == BLOG_GROUP_LEVEL) {
$pbar = new progress_bar('bloglevelupgrade', 500, true);
$bloggers = $DB->get_records_sql("SELECT userid FROM {post} WHERE module = 'blog' GROUP BY userid");
require_once($CFG->dirroot.'/mod/forum/lib.php');
$a = new stdClass();
$a->userscount = 0;
$a->blogcount = 0;
foreach ($bloggers as $blogger) {
$courses = enrol_get_users_courses($blogger->userid, true, 'groupmode,groupmodeforce');
$blogentries = $DB->get_records('post', array('module' => 'blog', 'userid' => $blogger->userid));
foreach ($courses as $course) {
$forum = forum_get_course_forum($course->id, 'blog');
$cm = get_coursemodule_from_instance('forum', $forum->id);
if ($CFG->bloglevel == BLOG_GROUP_LEVEL && $course->groupmode != NOGROUPS) {
// Unless the course is set to separate groups forced, force the forum to Separate groups
if (!($course->groupmode == SEPARATEGROUPS && $course->groupmodeforce)) {
$cm->groupmode = SEPARATEGROUPS;
$DB->update_record('course_modules', $cm);
}
$groups = groups_get_user_groups($course->id, $blogger->userid);
foreach ($groups[0] as $groupid) { // [0] is for all groupings combined
$a->blogcount += bloglevelupgrade_entries($blogentries, $forum, $cm, $groupid);
}
} else {
$a->blogcount += bloglevelupgrade_entries($blogentries, $forum, $cm);
}
}
$a->userscount = $i . '/' . count($bloggers);
$pbar->update($i, count($bloggers), get_string('bloglevelupgradeprogress', 'admin', $a));
$i++;
}
}
function bloglevelupgrade_entries($blogentries, $forum, $cm, $groupid=-1) {
$count = 0;
$forumcontext = get_context_instance(CONTEXT_MODULE, $cm->id);
$sitecontext = get_context_instance(CONTEXT_SYSTEM);
foreach ($blogentries as $blogentry) {
$discussion = new stdClass();
$discussion->course = $forum->course;
$discussion->forum = $forum->id;
$discussion->name = $blogentry->subject;
$discussion->intro = $blogentry->summary;
$discussion->assessed = $forum->assessed;
$discussion->messageformat = $forum->introformat;
$discussion->messagetrust = 0;
$discussion->attachments = 0;
$discussion->mailnow = false;
$discussion->timemodified = $blogentry->created;
$discussion->itemid = null;
$discussion->groupid = $groupid;
$message = '';
$discussionid = forum_add_discussion($discussion, null, $message);
// Copy file attachment records
$fs = get_file_storage();
$files = $fs->get_area_files($sitecontext->id, 'blog', 'attachment', $blogentry->id);
if (!empty($files)) {
foreach ($files as $storedfile) {
$newfile = new stdClass();
$newfile->component = 'mod_forum';
$newfile->filearea = 'attachment';
$newfile->itemid = $discussion->firstpost;
$newfile->contextid = $forumcontext->id;
$fs->create_file_from_storedfile($newfile, $storedfile->get_id());
}
}
$files = $fs->get_area_files($sitecontext->id, 'blog', 'post', $blogentry->id);
if (!empty($files)) {
foreach ($files as $storedfile) {
$newfile = new stdClass();
$newfile->component = 'mod_forum';
$newfile->filearea = 'post';
$newfile->itemid = $discussion->firstpost;
$newfile->contextid = $forumcontext->id;
$fs->create_file_from_storedfile($newfile, $storedfile->get_id());
}
}
$count++;
}
return $count;
}
// END OF LOOP
// set conversion flag - switches to new plugin automatically
set_config('bloglevel_upgrade_complete', 1);
// Finally switch bloglevel to 0 (disabled)
set_config('bloglevel', 0);
echo $OUTPUT->box_end();
/// Rebuild course cache which might be incorrect now
echo $OUTPUT->notification('Rebuilding course cache...', 'notifysuccess');
rebuild_course_cache();
echo $OUTPUT->notification('...finished', 'notifysuccess');
echo $OUTPUT->continue_button('index.php');
echo $OUTPUT->footer();
die;
+77 -33
View File
@@ -20,7 +20,6 @@
*
* This script is not intended for beginners!
* Potential problems:
* - environment check is not present yet
* - su to apache account or sudo before execution
* - not compatible with Windows platform
*
@@ -70,6 +69,8 @@ Options:
problem encountered.
--agree-license Indicates agreement with software license,
required in non-interactive mode.
--allow-unstable Install even if the version is not marked as stable yet,
required in non-interactive mode.
-h, --help Print out this help
Example:
@@ -89,7 +90,11 @@ if (file_exists($configfile)) {
echo "\n\n";
}
cli_error(get_string('clialreadyinstalled', 'install'));
if ($DB->get_manager()->table_exists('config')) {
cli_error(get_string('clialreadyinstalled', 'install'));
} else {
cli_error(get_string('clialreadyconfigured', 'install'));
}
}
$olddir = getcwd();
@@ -113,12 +118,12 @@ if (function_exists('date_default_timezone_set') and function_exists('date_defau
define('MOODLE_INTERNAL', true);
// Check that PHP is of a sufficient version
if (version_compare(phpversion(), "5.2.8") < 0) {
if (version_compare(phpversion(), "5.3.2") < 0) {
$phpversion = phpversion();
// do NOT localise - lang strings would not work here and we CAN NOT move it after installib
echo "Sorry, Moodle 2.0 requires PHP 5.2.8 or later (currently using version $phpversion).\n";
echo "Please upgrade your server software or install latest Moodle 1.9.x instead.";
die;
fwrite(STDERR, "Moodle 2.1 or later requires at least PHP 5.3.2 (currently using version $phpversion).\n");
fwrite(STDERR, "Please upgrade your server software or install older Moodle version.\n");
exit(1);
}
// set up configuration
@@ -128,7 +133,6 @@ $CFG->dirroot = dirname(dirname(dirname(__FILE__)));
$CFG->libdir = "$CFG->dirroot/lib";
$CFG->wwwroot = "http://localhost";
$CFG->httpswwwroot = $CFG->wwwroot;
$CFG->dataroot = str_replace('\\', '/', dirname(dirname(dirname(dirname(__FILE__)))).'/moodledata');
$CFG->docroot = 'http://docs.moodle.org';
$CFG->running_installer = true;
$CFG->early_install_lang = true;
@@ -136,9 +140,6 @@ $CFG->early_install_lang = true;
$parts = explode('/', str_replace('\\', '/', dirname(dirname(__FILE__))));
$CFG->admin = array_pop($parts);
require($CFG->dirroot.'/version.php');
$CFG->target_release = $release;
//point pear include path to moodles lib/pear so that includes and requires will search there for files before anywhere else
//the problem is that we need specific version of quickforms and hacked excel files :-(
ini_set('include_path', $CFG->libdir.'/pear' . PATH_SEPARATOR . ini_get('include_path'));
@@ -154,6 +155,9 @@ require_once($CFG->libdir.'/deprecatedlib.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/componentlib.class.php');
require($CFG->dirroot.'/version.php');
$CFG->target_release = $release;
//Database types
$databases = array('mysqli' => moodle_database::get_driver_instance('mysqli', 'native'),
'pgsql' => moodle_database::get_driver_instance('pgsql', 'native'),
@@ -179,7 +183,7 @@ list($options, $unrecognized) = cli_get_params(
'chmod' => '2777',
'lang' => $CFG->lang,
'wwwroot' => '',
'dataroot' => $CFG->dataroot,
'dataroot' => str_replace('\\', '/', dirname(dirname(dirname(dirname(__FILE__)))).'/moodledata'),
'dbtype' => $defaultdb,
'dbhost' => 'localhost',
'dbname' => 'moodle',
@@ -193,6 +197,7 @@ list($options, $unrecognized) = cli_get_params(
'adminpass' => '',
'non-interactive' => false,
'agree-license' => false,
'allow-unstable' => false,
'help' => false
),
array(
@@ -262,7 +267,7 @@ if ($interactive) {
$chmod = octdec(clean_param($options['chmod'], PARAM_INT));
if ($interactive) {
cli_separator();
cli_heading('Data directories permission'); // todo localize
cli_heading(get_string('datarootpermission', 'install'));
$prompt = get_string('clitypevaluedefault', 'admin', decoct($chmod));
$error = '';
do {
@@ -322,9 +327,12 @@ $CFG->httpswwwroot = $CFG->wwwroot;
//We need dataroot before lang download
if (!empty($options['dataroot'])) {
$CFG->dataroot = $options['dataroot'];
$dataroot = clean_param($options['dataroot'], PARAM_PATH);
if ($dataroot !== $options['dataroot']) {
$a = (object)array('option' => 'dataroot', 'value' => $options['dataroot']);
cli_error(get_string('cliincorrectvalueerror', 'admin', $a));
}
$CFG->dataroot = $dataroot;
if ($interactive) {
cli_separator();
$i=0;
@@ -372,26 +380,19 @@ if ($interactive) {
cli_error(get_string('pathserrcreatedataroot', 'install', $a));
}
}
$CFG->tempdir = $CFG->dataroot.'/temp';
$CFG->cachedir = $CFG->dataroot.'/cache';
//download lang pack with optional notification
if ($CFG->lang != 'en') {
if ($cd = new component_installer('http://download.moodle.org', 'langpack/2.0', $CFG->lang.'.zip', 'languages.md5', 'lang')) {
if ($cd->install() == COMPONENT_ERROR) {
if ($cd->get_error() == 'remotedownloaderror') {
$a = new stdClass();
$a->url = 'http://download.moodle.org/langpack/2.0/'.$CFG->lang.'.zip';
$a->dest = $CFG->dataroot.'/lang';
cli_problem(get_string($cd->get_error(), 'error', $a));
} else {
cli_problem(get_string($cd->get_error(), 'error'));
}
} else {
// install parent lang if defined
if ($parentlang = get_parent_language()) {
if ($cd = new component_installer('http://download.moodle.org', 'langpack/2.0', $parentlang.'.zip', 'languages.md5', 'lang')) {
$cd->install();
}
}
// download required lang packs
if ($CFG->lang !== 'en') {
$installer = new lang_installer($CFG->lang);
$results = $installer->run();
foreach ($results as $langcode => $langstatus) {
if ($langstatus === lang_installer::RESULT_DOWNLOADERROR) {
$a = new stdClass();
$a->url = $installer->lang_pack_url($langcode);
$a->dest = $CFG->dataroot.'/lang';
cli_problem(get_string('remotedownloaderror', 'error', $a));
}
}
}
@@ -402,6 +403,28 @@ $CFG->langotherroot = $CFG->dataroot.'/lang';
$CFG->langlocalroot = $CFG->dataroot.'/lang';
get_string_manager(true);
// make sure we are installing stable release or require a confirmation
if (isset($maturity)) {
if (($maturity < MATURITY_STABLE) and !$options['allow-unstable']) {
$maturitylevel = get_string('maturity'.$maturity, 'admin');
if ($interactive) {
cli_separator();
cli_heading(get_string('notice'));
echo get_string('maturitycorewarning', 'admin', $maturitylevel) . PHP_EOL;
echo get_string('morehelp') . ': ' . get_docs_url('admin/versions') . PHP_EOL;
echo get_string('continue') . PHP_EOL;
$prompt = get_string('cliyesnoprompt', 'admin');
$input = cli_input($prompt, '', array(get_string('clianswerno', 'admin'), get_string('cliansweryes', 'admin')));
if ($input == get_string('clianswerno', 'admin')) {
exit(1);
}
} else {
cli_error(get_string('maturitycorewarning', 'admin'));
}
}
}
// ask for db type - show only drivers available
if ($interactive) {
$options['dbtype'] = strtolower($options['dbtype']);
@@ -629,6 +652,27 @@ require($configfile);
$CFG->lang = $installlang;
$SESSION->lang = $CFG->lang;
require("$CFG->dirroot/version.php");
// Test environment first.
require_once($CFG->libdir . '/environmentlib.php');
list($envstatus, $environment_results) = check_moodle_environment(normalize_version($release), ENV_SELECT_RELEASE);
if (!$envstatus) {
$errors = environment_get_errors($environment_results);
cli_heading(get_string('environment', 'admin'));
foreach ($errors as $error) {
list($info, $report) = $error;
echo "!! $info !!\n$report\n\n";
}
exit(1);
}
// Test plugin dependencies.
require_once($CFG->libdir . '/pluginlib.php');
if (!plugin_manager::instance()->all_plugins_ok($version)) {
cli_error(get_string('pluginschecktodo', 'admin'));
}
install_cli_database($options, $interactive);
echo get_string('cliinstallfinished', 'install')."\n";
+39 -24
View File
@@ -46,6 +46,8 @@ Options:
--adminuser=USERNAME Username for the moodle admin account. Default is admin.
--adminpass=PASSWORD Password for the moodle admin account.
--agree-license Indicates agreement with software license.
--fullname=STRING Name of the site
--shortname=STRING Name of the site
-h, --help Print out this help
Example:
@@ -53,12 +55,12 @@ Example:
";
// Check that PHP is of a sufficient version
if (version_compare(phpversion(), "5.2.8") < 0) {
if (version_compare(phpversion(), "5.3.2") < 0) {
$phpversion = phpversion();
// do NOT localise - lang strings would not work here and we CAN NOT move it after installib
fwrite(STDERR, "Sorry, Moodle 2.0 requires PHP 5.2.8 or later (currently using version $phpversion).\n");
fwrite(STDERR, "Please upgrade your server software or install latest Moodle 1.9.x instead.\n");
die(1);
fwrite(STDERR, "Moodle 2.1 or later requires at least PHP 5.3.2 (currently using version $phpversion).\n");
fwrite(STDERR, "Please upgrade your server software or install older Moodle version.\n");
exit(1);
}
// Nothing to do if config.php does not exist
@@ -66,7 +68,7 @@ $configfile = dirname(dirname(dirname(__FILE__))).'/config.php';
if (!file_exists($configfile)) {
fwrite(STDERR, 'config.php does not exist, can not continue'); // do not localize
fwrite(STDERR, "\n");
die(1);
exit(1);
}
// Include necessary libs
@@ -93,6 +95,8 @@ list($options, $unrecognized) = cli_get_params(
'lang' => 'en',
'adminuser' => 'admin',
'adminpass' => '',
'fullname' => '',
'shortname' => '',
'agree-license' => false,
'help' => false
),
@@ -121,26 +125,17 @@ if (!file_exists($CFG->dirroot.'/install/lang/'.$options['lang'])) {
}
$CFG->lang = $options['lang'];
//download lang pack with optional notification
if ($CFG->lang != 'en') {
// download required lang packs
if ($CFG->lang !== 'en') {
make_upload_directory('lang');
if ($cd = new component_installer('http://download.moodle.org', 'langpack/2.0', $CFG->lang.'.zip', 'languages.md5', 'lang')) {
if ($cd->install() == COMPONENT_ERROR) {
if ($cd->get_error() == 'remotedownloaderror') {
$a = new stdClass();
$a->url = 'http://download.moodle.org/langpack/2.0/'.$CFG->lang.'.zip';
$a->dest = $CFG->dataroot.'/lang';
cli_problem(get_string($cd->get_error(), 'error', $a));
} else {
cli_problem(get_string($cd->get_error(), 'error'));
}
} else {
// install parent lang if defined
if ($parentlang = get_parent_language()) {
if ($cd = new component_installer('http://download.moodle.org', 'langpack/2.0', $parentlang.'.zip', 'languages.md5', 'lang')) {
$cd->install();
}
}
$installer = new lang_installer($CFG->lang);
$results = $installer->run();
foreach ($results as $langcode => $langstatus) {
if ($langstatus === lang_installer::RESULT_DOWNLOADERROR) {
$a = new stdClass();
$a->url = $installer->lang_pack_url($langcode);
$a->dest = $CFG->dataroot.'/lang';
cli_problem(get_string('remotedownloaderror', 'error', $a));
}
}
}
@@ -149,6 +144,26 @@ if ($CFG->lang != 'en') {
$CFG->early_install_lang = false;
get_string_manager(true);
require("$CFG->dirroot/version.php");
// Test environment first.
require_once($CFG->libdir . '/environmentlib.php');
list($envstatus, $environment_results) = check_moodle_environment(normalize_version($release), ENV_SELECT_RELEASE);
if (!$envstatus) {
$errors = environment_get_errors($environment_results);
cli_heading(get_string('environment', 'admin'));
foreach ($errors as $error) {
list($info, $report) = $error;
echo "!! $info !!\n$report\n\n";
}
exit(1);
}
// Test plugin dependencies.
require_once($CFG->libdir . '/pluginlib.php');
if (!plugin_manager::instance()->all_plugins_ok($version)) {
cli_error(get_string('pluginschecktodo', 'admin'));
}
install_cli_database($options, true);
+53
View File
@@ -0,0 +1,53 @@
<?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 core
* @subpackage cli
* @copyright 2011 David Mudrak <david@moodle.com>
* @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');
list($options, $unrecognized) = cli_get_params(array('help' => false), array('h' => 'help'));
if ($unrecognized) {
$unrecognized = implode("\n ", $unrecognized);
cli_error(get_string('cliunknowoption', 'admin', $unrecognized), 2);
}
if ($options['help']) {
$help =
"Invalidates all Moodle internal caches
Options:
-h, --help Print out this help
Example:
\$sudo -u www-data /usr/bin/php admin/cli/purge_caches.php
";
echo $help;
exit(0);
}
purge_all_caches();
exit(0);
+47 -7
View File
@@ -20,7 +20,6 @@
*
* This script is not intended for beginners!
* Potential problems:
* - environment check is not present yet
* - su to apache account or sudo before execution
* - not compatible with Windows platform
*
@@ -37,11 +36,19 @@ require_once($CFG->libdir.'/adminlib.php'); // various admin-only function
require_once($CFG->libdir.'/upgradelib.php'); // general upgrade/install related functions
require_once($CFG->libdir.'/clilib.php'); // cli only functions
require_once($CFG->libdir.'/environmentlib.php');
require_once($CFG->libdir.'/pluginlib.php');
// now get cli options
list($options, $unrecognized) = cli_get_params(array('non-interactive'=>false, 'help'=>false),
array('h'=>'help'));
list($options, $unrecognized) = cli_get_params(
array(
'non-interactive' => false,
'allow-unstable' => false,
'help' => false
),
array(
'h' => 'help'
)
);
$interactive = empty($options['non-interactive']);
@@ -59,6 +66,8 @@ Site defaults may be changed via local/defaults.php.
Options:
--non-interactive No interactive questions or confirmations
--allow-unstable Upgrade even if the version is not marked as stable yet,
required in non-interactive mode.
-h, --help Print out this help
Example:
@@ -73,17 +82,19 @@ if (empty($CFG->version)) {
cli_error(get_string('missingconfigversion', 'debug'));
}
require("$CFG->dirroot/version.php"); // defines $version and $release
require("$CFG->dirroot/version.php"); // defines $version, $release and $maturity
$CFG->target_release = $release; // used during installation and upgrades
if ($version < $CFG->version) {
cli_error(get_string('downgradedcore', 'error'));
}
$oldversion = "$CFG->release ($CFG->version)";
$newversion = "$release ($version)";
// test environment first
if (!check_moodle_environment($version, $environment_results, false, ENV_SELECT_RELEASE)) {
// Test environment first.
list($envstatus, $environment_results) = check_moodle_environment(normalize_version($release), ENV_SELECT_RELEASE);
if (!$envstatus) {
$errors = environment_get_errors($environment_results);
cli_heading(get_string('environment', 'admin'));
foreach ($errors as $error) {
@@ -93,6 +104,35 @@ if (!check_moodle_environment($version, $environment_results, false, ENV_SELECT_
exit(1);
}
// Test plugin dependencies.
if (!plugin_manager::instance()->all_plugins_ok($version)) {
cli_error(get_string('pluginschecktodo', 'admin'));
}
if ($interactive) {
$a = new stdClass();
$a->oldversion = $oldversion;
$a->newversion = $newversion;
echo cli_heading(get_string('databasechecking', '', $a)) . PHP_EOL;
}
// make sure we are upgrading to a stable release or display a warning
if (isset($maturity)) {
if (($maturity < MATURITY_STABLE) and !$options['allow-unstable']) {
$maturitylevel = get_string('maturity'.$maturity, 'admin');
if ($interactive) {
cli_separator();
cli_heading(get_string('notice'));
echo get_string('maturitycorewarning', 'admin', $maturitylevel) . PHP_EOL;
echo get_string('morehelp') . ': ' . get_docs_url('admin/versions') . PHP_EOL;
cli_separator();
} else {
cli_error(get_string('maturitycorewarning', 'admin', $maturitylevel));
}
}
}
if ($interactive) {
echo html_to_text(get_string('upgradesure', 'admin', $newversion))."\n";
$prompt = get_string('cliyesnoprompt', 'admin');
+6
View File
@@ -36,6 +36,12 @@
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
if (defined('STDIN')) {
fwrite(STDERR, "ERROR: This script no longer supports CLI, please use admin/cli/cron.php instead\n");
exit(1);
}
// This is a fake CLI script, it is a really ugly hack which emulates
// CLI via web interface, please do not use this hack elsewhere
define('CLI_SCRIPT', true);
-32
View File
@@ -1,32 +0,0 @@
<?PHP
// dbperformance.php - shows latest ADOdb stats for the current server
// disable moodle specific debug messages and any errors in output
define('NO_DEBUG_DISPLAY', true);
require_once('../config.php');
error('TODO: rewrite db perf code'); // TODO: rewrite
$topframe = optional_param('topframe', 0, PARAM_BOOL);
$bottomframe = optional_param('bottomframe', 0, PARAM_BOOL);
$do = optional_param('do', '', PARAM_ALPHA);
require_login();
require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
$strdatabaseperformance = get_string("databaseperformance");
$stradministration = get_string("administration");
$site = get_site();
if (!empty($topframe)) {
$PAGE->set_url('/admin/dbperformance.php');
$PAGE->navbar->add($stradministration, new moodle_url('/admin/index.php'));
$PAGE->navbar->add($strdatabaseperformance);
$PAGE->set_title("$site->shortname: $strdatabaseperformance");
$PAGE->set_heading($site->fullname);
echo $OUTPUT->header();
exit;
}
-19
View File
@@ -1,19 +0,0 @@
<?php
if (!defined('MOODLE_INTERNAL')) {
die('Direct access to this script is forbidden.'); /// It must be included from a Moodle page
}
require_once $CFG->libdir.'/formslib.php';
class database_export_form extends moodleform {
function definition() {
$mform = $this->_form;
$mform->addElement('header', 'database', get_string('dbexport', 'dbtransfer'));
$mform->addElement('textarea', 'description', get_string('description'), array('rows'=>5, 'cols'=>60));
$this->add_action_buttons(false, get_string('exportdata', 'dbtransfer'));
}
}
@@ -1,48 +0,0 @@
<?php
if (!defined('MOODLE_INTERNAL')) {
die('Direct access to this script is forbidden.'); /// It must be included from a Moodle page
}
require_once $CFG->libdir.'/formslib.php';
class database_transfer_form extends moodleform {
function definition() {
$mform = $this->_form;
$mform->addElement('header', 'database', get_string('dbtransfer', 'dbtransfer'));
$supported = array (
'mysqli/native',
'pgsql/native',
'mssql/native',
'oci/native',
'sqlite3/pdo',
);
$drivers = array();
foreach($supported as $driver) {
list($dbtype, $dblibrary) = explode('/', $driver);
$targetdb = moodle_database::get_driver_instance($dbtype, $dblibrary);
if ($targetdb->driver_installed() !== true) {
continue;
}
$drivers[$driver] = $driver;
}
$mform->addElement('select', 'driver', get_string('dbtype', 'install'), $drivers);
$mform->addElement('text', 'dbhost', get_string('dbhost', 'install'));
$mform->addElement('text', 'dbname', get_string('database', 'install'));
$mform->addElement('text', 'dbuser', get_string('user'));
$mform->addElement('text', 'dbpass', get_string('password'));
$mform->addElement('text', 'prefix', get_string('dbprefix', 'install'));
$mform->addRule('dbhost', get_string('required'), 'required', null);
$mform->addRule('dbname', get_string('required'), 'required', null);
$mform->addRule('dbuser', get_string('required'), 'required', null);
$mform->addRule('dbpass', get_string('required'), 'required', null);
$mform->addRule('prefix', get_string('required'), 'required', null);
$this->add_action_buttons(false, get_string('transferdata', 'dbtransfer'));
}
}
-21
View File
@@ -1,21 +0,0 @@
<?php
require('../../config.php');
require_once('lib.php');
require_once('database_export_form.php');
require_login();
admin_externalpage_setup('dbexport');
//create form
$form = new database_export_form();
if ($data = $form->get_data()) {
dbtransfer_export_xml_database($data->description, $DB);
die;
}
echo $OUTPUT->header();
// TODO: add some more info here
$form->display();
echo $OUTPUT->footer();
-47
View File
@@ -1,47 +0,0 @@
<?php
require('../../config.php');
require_once('lib.php');
require_once('database_transfer_form.php');
require_login();
admin_externalpage_setup('dbtransfer');
// Create the form
$form = new database_transfer_form();
// If we have valid input.
if ($data = $form->get_data()) {
// Connect to the other database.
list($dbtype, $dblibrary) = explode('/', $data->driver);
$targetdb = moodle_database::get_driver_instance($dbtype, $dblibrary);
if (!$targetdb->connect($data->dbhost, $data->dbuser, $data->dbpass, $data->dbname, $data->prefix, null)) {
throw new dbtransfer_exception('notargetconectexception', null, "$CFG->wwwroot/$CFG->admin/dbtransfer/");
}
if ($targetdb->get_tables()) {
throw new dbtransfer_exception('targetdatabasenotempty', null, "$CFG->wwwroot/$CFG->admin/dbtransfer/");
}
// Start output.
echo $OUTPUT->header();
$data->dbtype = $dbtype;
echo $OUTPUT->heading(get_string('transferringdbto', 'dbtransfer', $data));
// Do the transfer.
$feedback = new html_list_progress_trace();
dbtransfer_transfer_database($DB, $targetdb, $feedback);
$feedback->finished();
// Finish up.
echo $OUTPUT->notification(get_string('success'), 'notifysuccess');
echo $OUTPUT->continue_button("$CFG->wwwroot/$CFG->admin/");
echo $OUTPUT->footer();
die;
}
// Otherwise display the settings form.
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('transferdbtoserver', 'dbtransfer'));
echo '<p>', get_string('transferdbintro', 'dbtransfer'), "</p>\n\n";
$form->display();
echo $OUTPUT->footer();
-52
View File
@@ -1,52 +0,0 @@
<?php
/*
TODO:
- exporting to server file >2GB fails in 32bit operating systems - needs warning
- we may run out of disk space exporting to srever file - we must verify the file is not truncated; read from the end of file?
- when sending file >4GB - FAT32 limit, Apache limit, browser limit - needs warning
- there must be some form of progress bar during export, transfer - new tracking class could be passed around
- command line operation - could work around some 2G/4G limits in PHP; useful for cron full backups
- by default allow exporting into empty database only (no tables with the same prefix yet)
- all dangerous operation (like deleting of all data) should be confirmed by key found in special file in dataroot
(user would need file access to dataroot which might prevent various "accidents")
- implement "Export/import running" notification in lib/setup.php (similar to new upgrade flag in config table)
- gzip compression when storing xml file - the xml is very verbose and full of repeated tags (zip is not suitable here at all)
this could help us keep the files bellow 2G (expected ratio is > 10:1)
*/
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/dtllib.php');
function dbtransfer_export_xml_database($description, $mdb) {
@set_time_limit(0);
session_get_instance()->write_close(); // release session
header('Content-Type: application/xhtml+xml; charset=utf-8');
header('Content-Disposition: attachment; filename=database.xml');
header('Expires: 0');
header('Cache-Control: must-revalidate,post-check=0,pre-check=0');
header('Pragma: public');
while(@ob_flush());
$var = new file_xml_database_exporter('php://output', $mdb);
$var->export_database($description);
// no more output
die;
}
function dbtransfer_transfer_database($sourcedb, $targetdb, $feedback = null) {
@set_time_limit(0);
session_get_instance()->write_close(); // release session
$var = new database_mover($sourcedb, $targetdb, true, $feedback);
$var->export_database(null);
}
-86
View File
@@ -1,86 +0,0 @@
<?php
// Deletes the moodledata directory, COMPLETELY!!
// BE VERY CAREFUL USING THIS!
require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
admin_externalpage_setup('purgemoodledata');
require_login();
$sure = optional_param('sure', 0, PARAM_BOOL);
$reallysure = optional_param('reallysure', 0, PARAM_BOOL);
require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
$deletedir = $CFG->dataroot; // The directory to delete!
echo $OUTPUT->header();
echo $OUTPUT->heading('Purge moodledata');
if (empty($sure)) {
$optionsyes = array('sure'=>'yes', 'sesskey'=>sesskey());
$formcontinue = new single_button(new moodle_url('delete.php', $optionsyes), get_string('yes'));
$formcancel = new single_button('index.php', get_string('no'), 'get');
echo $OUTPUT->confirm('Are you completely sure you want to delete everything inside the directory '. $deletedir .' ?', $formcontinue, $formcancel);
echo $OUTPUT->footer();
exit;
}
if (!data_submitted() or empty($reallysure)) {
$optionsyes = array('sure'=>'yes', 'sesskey'=>sesskey(), 'reallysure'=>'yes');
$formcontinue = new single_button(new moodle_url('delete.php', $optionsyes), get_string('yes'));
$formcancel = new single_button('index.php', get_string('no'), 'get');
echo $OUTPUT->confirm('Are you REALLY REALLY completely sure you want to delete everything inside the directory '.
$deletedir .' (this includes all user images, and any other course files that have been created) ?',
$formcontinue, $formcancel);
echo $OUTPUT->footer();
exit;
}
if (!confirm_sesskey()) {
print_error('wrongcall', 'error');
}
/// OK, here goes ...
delete_subdirectories($deletedir);
echo '<h1 align="center">Done!</h1>';
echo $OUTPUT->continue_button($CFG->wwwroot);
echo $OUTPUT->footer();
exit;
function delete_subdirectories($rootdir) {
$dir = opendir($rootdir);
while (false !== ($file = readdir($dir))) {
if ($file != '.' and $file != '..') {
$fullfile = $rootdir .'/'. $file;
if (filetype($fullfile) == 'dir') {
delete_subdirectories($fullfile);
echo 'Deleting '. $fullfile .' ... ';
if (rmdir($fullfile)) {
echo 'Done.<br />';
} else {
echo 'FAILED.<br />';
}
} else {
echo 'Deleting '. $fullfile .' ... ';
if (unlink($fullfile)) {
echo 'Done.<br />';
} else {
echo 'FAILED.<br />';
}
}
}
}
closedir($dir);
}
+1 -1
View File
@@ -14,7 +14,7 @@ require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
$returnurl = "$CFG->wwwroot/$CFG->admin/settings.php?section=manageeditors";
$action = optional_param('action', '', PARAM_ACTION);
$editor = optional_param('editor', '', PARAM_SAFEDIR);
$editor = optional_param('editor', '', PARAM_PLUGIN);
// get currently installed and enabled auth plugins
$available_editors = editors_get_available();
+6 -1
View File
@@ -27,7 +27,7 @@ require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
$action = required_param('action', PARAM_ACTION);
$enrol = required_param('enrol', PARAM_SAFEDIR);
$enrol = required_param('enrol', PARAM_PLUGIN);
$confirm = optional_param('confirm', 0, PARAM_BOOL);
$PAGE->set_url('/admin/enrol.php');
@@ -41,10 +41,13 @@ $all = enrol_get_plugins(false);
$return = new moodle_url('/admin/settings.php', array('section'=>'manageenrols'));
$syscontext = context_system::instance();
switch ($action) {
case 'disable':
unset($enabled[$enrol]);
set_config('enrol_plugins_enabled', implode(',', array_keys($enabled)));
$syscontext->mark_dirty(); // resets all enrol caches
break;
case 'enable':
@@ -54,6 +57,7 @@ switch ($action) {
$enabled = array_keys($enabled);
$enabled[] = $enrol;
set_config('enrol_plugins_enabled', implode(',', $enabled));
$syscontext->mark_dirty(); // resets all enrol caches
break;
case 'up':
@@ -106,6 +110,7 @@ switch ($action) {
} else { // Delete everything!!
uninstall_plugin('enrol', $enrol);
$syscontext->mark_dirty(); // resets all enrol caches
$a->plugin = $strplugin;
$a->directory = "$CFG->dirroot/enrol/$enrol";
+94 -122
View File
@@ -1,137 +1,109 @@
<?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/>.
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.com //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com //
// (C) 2001-3001 Eloy Lafuente (stronk7) http://contiento.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
// This file is the admin frontend to execute all the checks available
// in the environment.xml file. It includes database, php and
// php_extensions. Also, it's possible to update the xml file
// from moodle.org be able to check more and more versions.
require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/environmentlib.php');
require_once($CFG->libdir.'/componentlib.class.php');
admin_externalpage_setup('environment');
/// Parameters
$action = optional_param('action', '', PARAM_ACTION);
$version = optional_param('version', '', PARAM_FILE); //
/**
* This file is the admin frontend to execute all the checks available
* in the environment.xml file. It includes database, php and
* php_extensions. Also, it's possible to update the xml file
* from moodle.org be able to check more and more versions.
*
* @package core
* @subpackage admin
* @copyright 2006 onwards Eloy Lafuente (stronk7) {@link http://stronk7.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
/// Get some strings
$stradmin = get_string('administration');
$stradminhelpenvironment = get_string("adminhelpenvironment");
$strenvironment = get_string('environment', 'admin');
$strerror = get_string('error');
$strmoodleversion = get_string('moodleversion');
$strupdate = get_string('updatecomponent', 'admin');
$strupwards = get_string('upwards', 'admin');
$strmisc = get_string('miscellaneous');
require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/environmentlib.php');
require_once($CFG->libdir.'/componentlib.class.php');
/// Print the header stuff
echo $OUTPUT->header();
// Parameters
$action = optional_param('action', '', PARAM_ACTION);
$version = optional_param('version', '', PARAM_FILE); //
/// Print the component download link
echo '<div class="reportlink"><a href="environment.php?action=updatecomponent&amp;sesskey='.sesskey().'">'.$strupdate.'</a></div>';
$extraurlparams = array();
if ($version) {
$extraurlparams['version'] = $version;
}
admin_externalpage_setup('environment', '', $extraurlparams);
echo $OUTPUT->heading($strenvironment);
// Handle the 'updatecomponent' action
if ($action == 'updatecomponent' && confirm_sesskey()) {
// Create component installer and execute it
if ($cd = new component_installer('http://download.moodle.org',
'environment',
'environment.zip')) {
$status = $cd->install(); //returns COMPONENT_(ERROR | UPTODATE | INSTALLED)
switch ($status) {
case COMPONENT_ERROR:
if ($cd->get_error() == 'remotedownloaderror') {
$a = new stdClass();
$a->url = 'http://download.moodle.org/environment/environment.zip';
$a->dest = $CFG->dataroot . '/';
print_error($cd->get_error(), 'error', $PAGE->url, $a);
die();
/// Handle the 'updatecomponent' action
if ($action == 'updatecomponent' && confirm_sesskey()) {
/// Create component installer and execute it
if ($cd = new component_installer('http://download.moodle.org',
'environment',
'environment.zip')) {
$status = $cd->install(); //returns COMPONENT_(ERROR | UPTODATE | INSTALLED)
switch ($status) {
case COMPONENT_ERROR:
if ($cd->get_error() == 'remotedownloaderror') {
$a = new stdClass();
$a->url = 'http://download.moodle.org/environment/environment.zip';
$a->dest= $CFG->dataroot.'/';
echo $OUTPUT->box(get_string($cd->get_error(), 'error', $a), 'errorbox');
} else {
echo $OUTPUT->box(get_string($cd->get_error(), 'error'), 'errorbox');
}
break;
case COMPONENT_UPTODATE:
echo $OUTPUT->box(get_string($cd->get_error(), 'error'));
break;
case COMPONENT_INSTALLED:
echo $OUTPUT->box(get_string('componentinstalled', 'admin'));
break;
}
}
}
/// Start of main box
echo $OUTPUT->box_start();
echo "<div style=\"text-align:center\">".$stradminhelpenvironment."</div><br />";
/// Get current Moodle version
$current_version = $CFG->release;
/// Calculate list of versions
$versions = array();
if ($contents = load_environment_xml()) {
if ($env_versions = get_list_of_environment_versions($contents)) {
/// Set the current version at the beginning
$env_version = normalize_version($current_version); //We need this later (for the upwards)
$versions[$env_version] = $current_version;
/// If no version has been previously selected, default to $current_version
if (empty($version)) {
$version = $env_version;
}
///Iterate over each version, adding bigger than current
foreach ($env_versions as $env_version) {
if (version_compare(normalize_version($current_version), $env_version, '<')) {
$versions[$env_version] = $env_version;
} else {
print_error($cd->get_error(), 'error', $PAGE->url);
die();
}
}
/// Add 'upwards' to the last element
$versions[$env_version] = $env_version.' '.$strupwards;
} else {
$versions = array('error' => $strerror);
case COMPONENT_UPTODATE:
redirect($PAGE->url, get_string($cd->get_error(), 'error'));
die;
case COMPONENT_INSTALLED:
redirect($PAGE->url, get_string('componentinstalled', 'admin'));
die;
}
}
}
/// Print form and popup menu
echo '<div style="text-align:center"> ';
$select = new single_select(new moodle_url('/admin/environment.php'), 'version', $versions, $version, null);
$select->label = $strmoodleversion;
echo $OUTPUT->render($select);
echo '</div>';
// Get current Moodle version
$current_version = $CFG->release;
/// End of main box
echo $OUTPUT->box_end();
// Calculate list of versions
$versions = array();
if ($contents = load_environment_xml()) {
if ($env_versions = get_list_of_environment_versions($contents)) {
// Set the current version at the beginning
$env_version = normalize_version($current_version); //We need this later (for the upwards)
$versions[$env_version] = $current_version;
// If no version has been previously selected, default to $current_version
if (empty($version)) {
$version = $env_version;
}
//Iterate over each version, adding bigger than current
foreach ($env_versions as $env_version) {
if (version_compare(normalize_version($current_version), $env_version, '<')) {
$versions[$env_version] = $env_version;
}
}
// Add 'upwards' to the last element
$versions[$env_version] = $env_version.' '.get_string('upwards', 'admin');
} else {
$versions = array('error' => get_string('error'));
}
}
/// Gather and show results
$status = check_moodle_environment($version, $environment_results);
/// Print footer
echo $OUTPUT->footer();
// Get the results of the environment check.
list($envstatus, $environment_results) = check_moodle_environment($version);
// Display the page.
$output = $PAGE->get_renderer('core', 'admin');
echo $output->environment_check_page($versions, $version, $envstatus, $environment_results);
+228
View File
@@ -328,4 +328,232 @@
</CUSTOM_CHECK>
</CUSTOM_CHECKS>
</MOODLE>
<MOODLE version="2.1" requires="1.9">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mysql" version="5.0.25">
<FEEDBACK>
<ON_ERROR message="mysql416required" />
</FEEDBACK>
</VENDOR>
<VENDOR name="postgres" version="8.3" />
<VENDOR name="mssql" version="9.0" />
<VENDOR name="odbc_mssql" version="9.0" />
<VENDOR name="mssql_n" version="9.0" />
<VENDOR name="oracle" version="10.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_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>
<MOODLE version="2.2" requires="1.9">
<UNICODE level="required">
<FEEDBACK>
<ON_ERROR message="unicoderequired" />
</FEEDBACK>
</UNICODE>
<DATABASE level="required">
<VENDOR name="mysql" version="5.0.25">
<FEEDBACK>
<ON_ERROR message="mysql416required" />
</FEEDBACK>
</VENDOR>
<VENDOR name="postgres" version="8.3" />
<VENDOR name="mssql" version="9.0" />
<VENDOR name="odbc_mssql" version="9.0" />
<VENDOR name="mssql_n" version="9.0" />
<VENDOR name="oracle" version="10.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_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>
-1336
View File
File diff suppressed because it is too large Load Diff
+6 -2
View File
@@ -39,13 +39,17 @@ while(!feof($fd)) {
$action = clam_handle_infected_file($file,$log->userid,true);
clam_replace_infected_file($file);
list($ctxselect, $ctxjoin) = context_instance_preload_sql('c.id', CONTEXT_COURSE, 'ctx');
$sql = "SELECT c.id, c.fullname $ctxselect FROM {course} c $ctxjoin WHERE c.id = :courseid";
$course = $DB->get_record_sql($sql, array('courseid' => $log->course));
context_instance_preload($course);
$user = $DB->get_record("user", array("id"=>$log->userid));
$course = $DB->get_record("course", array("id"=>$log->course));
$subject = get_string('virusfoundsubject','moodle',format_string($site->fullname));
$a->date = userdate($log->time);
$a->action = $action;
$a->course = $course->fullname;
$a->course = format_string($course->fullname, true, array('context' => get_context_instance(CONTEXT_COURSE, $course->id)));
$a->user = fullname($user);
notify_user($user,$subject,$a);
-790
View File
@@ -1,790 +0,0 @@
<?php
ob_start(); //for whitespace test
require_once('../config.php');
// extra whitespace test - intentionally breaks cookieless mode
$extraws = '';
while (ob_get_level()) {
$extraws .= ob_get_contents();
ob_end_clean();
}
require_once($CFG->libdir.'/adminlib.php');
admin_externalpage_setup('healthcenter');
define('SEVERITY_NOTICE', 'notice');
define('SEVERITY_ANNOYANCE', 'annoyance');
define('SEVERITY_SIGNIFICANT', 'significant');
define('SEVERITY_CRITICAL', 'critical');
$solution = optional_param('solution', 0, PARAM_SAFEDIR); //in fact it is class name alhanumeric and _
require_login();
require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
$site = get_site();
echo $OUTPUT->header();
echo <<<STYLES
<style type="text/css">
div#healthnoproblemsfound {
width: 60%;
margin: auto;
padding: 1em;
border: 1px black solid;
-moz-border-radius: 6px;
}
dl.healthissues {
width: 60%;
margin: auto;
}
dl.critical dt, dl.critical dd {
background-color: #a71501;
}
dl.significant dt, dl.significant dd {
background-color: #d36707;
}
dl.annoyance dt, dl.annoyance dd {
background-color: #dba707;
}
dl.notice dt, dl.notice dd {
background-color: #e5db36;
}
dt.solution, dd.solution, div#healthnoproblemsfound {
background-color: #5BB83E !important;
}
dl.healthissues dt, dl.healthissues dd {
margin: 0px;
padding: 1em;
border: 1px black solid;
}
dl.healthissues dt {
font-weight: bold;
border-bottom: none;
padding-bottom: 0.5em;
}
dl.healthissues dd {
border-top: none;
padding-top: 0.5em;
margin-bottom: 10px;
}
dl.healthissues dd form {
margin-top: 0.5em;
text-align: right;
}
form#healthformreturn {
text-align: center;
margin: 2em;
}
dd.solution p {
padding: 0px;
margin: 1em 0px;
}
dd.solution li {
margin-top: 1em;
}
</style>
STYLES;
if(strpos($solution, 'problem_') === 0 && class_exists($solution)) {
health_print_solution($solution);
}
else {
health_find_problems();
}
echo $OUTPUT->footer();
function health_find_problems() {
global $OUTPUT;
echo $OUTPUT->heading(get_string('healthcenter'));
$issues = array(
SEVERITY_CRITICAL => array(),
SEVERITY_SIGNIFICANT => array(),
SEVERITY_ANNOYANCE => array(),
SEVERITY_NOTICE => array(),
);
$problems = 0;
for($i = 1; $i < 1000000; ++$i) {
$classname = sprintf('problem_%06d', $i);
if(!class_exists($classname)) {
break;
}
$problem = new $classname;
if($problem->exists()) {
$severity = $problem->severity();
$issues[$severity][$classname] = array(
'severity' => $severity,
'description' => $problem->description(),
'title' => $problem->title()
);
++$problems;
}
unset($problem);
}
if($problems == 0) {
echo '<div id="healthnoproblemsfound">';
echo get_string('healthnoproblemsfound');
echo '</div>';
}
else {
echo $OUTPUT->heading(get_string('healthproblemsdetected'));
$severities = array(SEVERITY_CRITICAL, SEVERITY_SIGNIFICANT, SEVERITY_ANNOYANCE, SEVERITY_NOTICE);
foreach($severities as $severity) {
if(!empty($issues[$severity])) {
echo '<dl class="healthissues '.$severity.'">';
foreach($issues[$severity] as $classname => $data) {
echo '<dt id="'.$classname.'">'.$data['title'].'</dt>';
echo '<dd>'.$data['description'];
echo '<form action="health.php#solution" method="get">';
echo '<input type="hidden" name="solution" value="'.$classname.'" /><input type="submit" value="'.get_string('viewsolution').'" />';
echo '</form></dd>';
}
echo '</dl>';
}
}
}
}
function health_print_solution($classname) {
global $OUTPUT;
$problem = new $classname;
$data = array(
'title' => $problem->title(),
'severity' => $problem->severity(),
'description' => $problem->description(),
'solution' => $problem->solution()
);
echo $OUTPUT->heading(get_string('healthcenter'));
echo $OUTPUT->heading(get_string('healthproblemsolution'));
echo '<dl class="healthissues '.$data['severity'].'">';
echo '<dt>'.$data['title'].'</dt>';
echo '<dd>'.$data['description'].'</dd>';
echo '<dt id="solution" class="solution">'.get_string('healthsolution').'</dt>';
echo '<dd class="solution">'.$data['solution'].'</dd></dl>';
echo '<form id="healthformreturn" action="health.php#'.$classname.'" method="get">';
echo '<input type="submit" value="'.get_string('healthreturntomain').'" />';
echo '</form>';
}
class problem_base {
function exists() {
return false;
}
function title() {
return '???';
}
function severity() {
return SEVERITY_NOTICE;
}
function description() {
return '';
}
function solution() {
return '';
}
}
class problem_000002 extends problem_base {
function title() {
return 'Extra characters at the end of config.php or other library function';
}
function exists() {
global $extraws;
if($extraws === '') {
return false;
}
return true;
}
function severity() {
return SEVERITY_SIGNIFICANT;
}
function description() {
return 'Your Moodle configuration file config.php or another library file, contains some characters after the closing PHP tag (?>). This causes Moodle to exhibit several kinds of problems (such as broken downloaded files) and must be fixed.';
}
function solution() {
global $CFG;
return 'You need to edit <strong>'.$CFG->dirroot.'/config.php</strong> and remove all characters (including spaces and returns) after the ending ?> tag. These two characters should be the very last in that file. The extra trailing whitespace may be also present in other PHP files that are included from lib/setup.php.';
}
}
class problem_000003 extends problem_base {
function title() {
return '$CFG->dataroot does not exist or does not have write permissions';
}
function exists() {
global $CFG;
if(!is_dir($CFG->dataroot) || !is_writable($CFG->dataroot)) {
return true;
}
return false;
}
function severity() {
return SEVERITY_SIGNIFICANT;
}
function description() {
global $CFG;
return 'Your <strong>config.php</strong> says that your "data root" directory is <strong>'.$CFG->dataroot.'</strong>. However, this directory either does not exist or cannot be written to by Moodle. This means that a variety of problems will be present, such as users not being able to log in and not being able to upload any files. It is imperative that you address this problem for Moodle to work correctly.';
}
function solution() {
global $CFG;
return 'First of all, make sure that the directory <strong>'.$CFG->dataroot.'</strong> exists. If the directory does exist, then you must make sure that Moodle is able to write to it. Contact your web server administrator and request that he gives write permissions for that directory to the user that the web server process is running as.';
}
}
class problem_000004 extends problem_base {
function title() {
return 'cron.php is not set up to run automatically';
}
function exists() {
global $DB;
$lastcron = $DB->get_field_sql('SELECT max(lastcron) FROM {modules}');
return (time() - $lastcron > 3600 * 24);
}
function severity() {
return SEVERITY_SIGNIFICANT;
}
function description() {
return 'The cron.php mainenance script has not been run in the past 24 hours. This probably means that your server is not configured to automatically run this script in regular time intervals. If this is the case, then Moodle will mostly work as it should but some operations (notably sending email to users) will not be carried out at all.';
}
function solution() {
global $CFG;
return 'For detailed instructions on how to enable cron, see <a href="'.$CFG->wwwroot.'/doc/?file=install.html#cron">this section</a> of the installation manual.';
}
}
class problem_000005 extends problem_base {
function title() {
return 'PHP: session.auto_start is enabled';
}
function exists() {
return ini_get_bool('session.auto_start');
}
function severity() {
return SEVERITY_CRITICAL;
}
function description() {
return 'Your PHP configuration includes an enabled setting, session.auto_start, that <strong>must be disabled</strong> in order for Moodle to work correctly. Notable symptoms arising from this misconfiguration include fatal errors and/or blank pages when trying to log in.';
}
function solution() {
global $CFG;
return '<p>There are two ways you can solve this problem:</p><ol><li>If you have access to your main <strong>php.ini</strong> file, then find the line that looks like this: <pre>session.auto_start = 1</pre> and change it to <pre>session.auto_start = 0</pre> and then restart your web server. Be warned that this, as any other PHP setting change, might affect other web applications running on the server.</li><li>Finally, you may be able to change this setting just for your site by creating or editing the file <strong>'.$CFG->dirroot.'/.htaccess</strong> to contain this line: <pre>php_value session.auto_start "0"</pre></li></ol>';
}
}
class problem_000006 extends problem_base {
function title() {
return 'PHP: magic_quotes_runtime is enabled';
}
function exists() {
return (ini_get_bool('magic_quotes_runtime'));
}
function severity() {
return SEVERITY_SIGNIFICANT;
}
function description() {
return 'Your PHP configuration includes an enabled setting, magic_quotes_runtime, that <strong>must be disabled</strong> in order for Moodle to work correctly. Notable symptoms arising from this misconfiguration include strange display errors whenever a text field that includes single or double quotes is processed.';
}
function solution() {
global $CFG;
return '<p>There are two ways you can solve this problem:</p><ol><li>If you have access to your main <strong>php.ini</strong> file, then find the line that looks like this: <pre>magic_quotes_runtime = On</pre> and change it to <pre>magic_quotes_runtime = Off</pre> and then restart your web server. Be warned that this, as any other PHP setting change, might affect other web applications running on the server.</li><li>Finally, you may be able to change this setting just for your site by creating or editing the file <strong>'.$CFG->dirroot.'/.htaccess</strong> to contain this line: <pre>php_value magic_quotes_runtime "Off"</pre></li></ol>';
}
}
class problem_000007 extends problem_base {
function title() {
return 'PHP: file_uploads is disabled';
}
function exists() {
return !ini_get_bool('file_uploads');
}
function severity() {
return SEVERITY_SIGNIFICANT;
}
function description() {
return 'Your PHP configuration includes a disabled setting, file_uploads, that <strong>must be enabled</strong> to let Moodle offer its full functionality. Until this setting is enabled, it will not be possible to upload any files into Moodle. This includes, for example, course content and user pictures.';
}
function solution() {
global $CFG;
return '<p>There are two ways you can solve this problem:</p><ol><li>If you have access to your main <strong>php.ini</strong> file, then find the line that looks like this: <pre>file_uploads = Off</pre> and change it to <pre>file_uploads = On</pre> and then restart your web server. Be warned that this, as any other PHP setting change, might affect other web applications running on the server.</li><li>Finally, you may be able to change this setting just for your site by creating or editing the file <strong>'.$CFG->dirroot.'/.htaccess</strong> to contain this line: <pre>php_value file_uploads "On"</pre></li></ol>';
}
}
class problem_000008 extends problem_base {
function title() {
return 'PHP: memory_limit cannot be controlled by Moodle';
}
function exists() {
global $CFG;
$oldmemlimit = @ini_get('memory_limit');
if (empty($oldmemlimit)) {
// PHP not compiled with memory limits, this means that it's
// probably limited to 8M or in case of Windows not at all.
// We can ignore it for now - there is not much to test anyway
// TODO: add manual test that fills memory??
return false;
}
$oldmemlimit = get_real_size($oldmemlimit);
//now lets change the memory limit to something higher
$newmemlimit = ($oldmemlimit + 1024*1024*5);
raise_memory_limit($newmemlimit);
$testmemlimit = get_real_size(@ini_get('memory_limit'));
//verify the change had any effect at all
if ($oldmemlimit == $testmemlimit) {
//memory limit can not be changed - is it big enough then?
if ($oldmemlimit < get_real_size('128M')) {
return true;
} else {
return false;
}
}
reduce_memory_limit($oldmemlimit);
return false;
}
function severity() {
return SEVERITY_NOTICE;
}
function description() {
return 'The settings for PHP on your server do not allow a script to request more memory during its execution. '.
'This means that there is a hard limit of '.@ini_get('memory_limit').' for each script. '.
'It is possible that certain operations within Moodle will require more than this amount in order '.
'to complete successfully, especially if there are lots of data to be processed.';
}
function solution() {
return 'It is recommended that you contact your web server administrator to address this issue.';
}
}
class problem_000009 extends problem_base {
function title() {
return 'SQL: using account without password';
}
function exists() {
global $CFG;
return empty($CFG->dbpass);
}
function severity() {
return SEVERITY_CRITICAL;
}
function description() {
global $CFG;
return 'The user account your are connecting to the database server with is set up without a password. This is a very big security risk and is only somewhat lessened if your database is configured to not accept connections from any hosts other than the server Moodle is running on. Unless you use a strong password to connect to the database, you risk unauthorized access to and manipulation of your data.'.($CFG->dbuser != 'root'?'':' <strong>This is especially alarming because such access to the database would be as the superuser (root)!</strong>');
}
function solution() {
global $CFG;
return 'You should change the password of the user <strong>'.$CFG->dbuser.'</strong> both in your database and in your Moodle <strong>config.php</strong> immediately!'.($CFG->dbuser != 'root'?'':' It would also be a good idea to change the user account from root to something else, because this would lessen the impact in the event that your database is compromised anyway.');
}
}
/* // not implemented in 2.0 yet
class problem_000010 extends problem_base {
function title() {
return 'Uploaded files: slasharguments disabled or not working';
}
function exists() {
if (!$this->is_enabled()) {
return true;
}
if ($this->status() < 1) {
return true;
}
return false;
}
function severity() {
if ($this->is_enabled() and $this->status() == 0) {
return SEVERITY_SIGNIFICANT;
} else {
return SEVERITY_ANNOYANCE;
}
}
function description() {
global $CFG;
$desc = 'Slasharguments are needed for relative linking in uploaded resources:<ul>';
if (!$this->is_enabled()) {
$desc .= '<li>slasharguments are <strong>disabled</strong> in Moodle configuration</li>';
} else {
$desc .= '<li>slasharguments are enabled in Moodle configuration</li>';
}
if ($this->status() == -1) {
$desc .= '<li>can not run automatic test, you can verify it <a href="'.$CFG->wwwroot.'/file.php/testslasharguments" target="_blank">here</a> manually</li>';
} else if ($this->status() == 0) {
$desc .= '<li>slashargument test <strong>failed</strong>, please check server configuration</li>';
} else {
$desc .= '<li>slashargument test passed</li>';
}
$desc .= '</ul>';
return $desc;
}
function solution() {
global $CFG;
$enabled = $this->is_enabled();
$status = $this->status();
$solution = '';
if ($enabled and ($status == 0)) {
$solution .= 'Slasharguments are enabled, but the test failed. Please disable slasharguments in Moodle configuration or fix the server configuration.<hr />';
} else if ((!$enabled) and ($status == 0)) {
$solution .= 'Slasharguments are disabled and the test failed. You may try to fix the server configuration.<hr />';
} else if ($enabled and ($status == -1)) {
$solution .= 'Slasharguments are enabled, <a href="'.$CFG->wwwroot.'/file.php/testslasharguments">automatic testing</a> not possible.<hr />';
} else if ((!$enabled) and ($status == -1)) {
$solution .= 'Slasharguments are disabled, <a href="'.$CFG->wwwroot.'/file.php/testslasharguments">automatic testing</a> not possible.<hr />';
} else if ((!$enabled) and ($status > 0)) {
$solution .= 'Slasharguments are disabled though the iternal test is OK. You should enable slasharguments in Moodle configuration.';
} else if ($enabled and ($status > 0)) {
$solution .= 'Congratulations - everything seems OK now :-D';
}
if ($status < 1) {
$solution .= '<p>IIS:<ul><li>try to add <code>cgi.fix_pathinfo=1</code> to php.ini</li><li>do NOT enable AllowPathInfoForScriptMappings !!!</li><li>slasharguments may not work when using ISAPI and PHP 4.3.10 and older</li></ul></p>';
$solution .= '<p>Apache 1:<ul><li>try to add <code>cgi.fix_pathinfo=1</code> to php.ini</li></ul></p>';
$solution .= '<p>Apache 2:<ul><li>you must add <code>AcceptPathInfo on</code> to php.ini or .htaccess</li><li>try to add <code>cgi.fix_pathinfo=1</code> to php.ini</li></ul></p>';
}
return $solution;
}
function is_enabled() {
global $CFG;
return !empty($CFG->slasharguments);
}
function status() {
global $CFG;
$handle = @fopen($CFG->wwwroot.'/file.php?file=/testslasharguments', "r");
$contents = @trim(fread($handle, 10));
@fclose($handle);
if ($contents != 'test -1') {
return -1;
}
$handle = @fopen($CFG->wwwroot.'/file.php/testslasharguments', "r");
$contents = trim(@fread($handle, 10));
@fclose($handle);
switch ($contents) {
case 'test 1': return 1;
case 'test 2': return 2;
default: return 0;
}
}
}*/
class problem_000012 extends problem_base {
function title() {
return 'Random questions data consistency';
}
function exists() {
global $DB;
return $DB->record_exists_select('question', "qtype = 'random' AND parent <> id", array());
}
function severity() {
return SEVERITY_ANNOYANCE;
}
function description() {
return '<p>For random questions, question.parent should equal question.id. ' .
'There are some questions in your database for which this is not true. ' .
'One way that this could have happened is for random questions restored from backup before ' .
'<a href="http://tracker.moodle.org/browse/MDL-5482">MDL-5482</a> was fixed.</p>';
}
function solution() {
global $CFG;
return '<p>Upgrade to Moodle 1.9.1 or later, or manually execute the SQL</p>' .
'<pre>UPDATE ' . $CFG->prefix . 'question SET parent = id WHERE qtype = \'random\' and parent &lt;> id;</pre>';
}
}
class problem_000013 extends problem_base {
function title() {
return 'Multi-answer questions data consistency';
}
function exists() {
global $DB;
$positionexpr = $DB->sql_position($DB->sql_concat("','", "q.id", "','"),
$DB->sql_concat("','", "qma.sequence", "','"));
return $DB->record_exists_sql("
SELECT * FROM {question} q
JOIN {question_multianswer} qma ON $positionexpr > 0
WHERE qma.question <> q.parent") ||
$DB->record_exists_sql("
SELECT * FROM {question} q
JOIN {question} parent_q ON parent_q.id = q.parent
WHERE q.category <> parent_q.category");
}
function severity() {
return SEVERITY_ANNOYANCE;
}
function description() {
return '<p>For each sub-question whose id is listed in ' .
'question_multianswer.sequence, its question.parent field should equal ' .
'question_multianswer.question; and each sub-question should be in the same ' .
'category as its parent. There are questions in your database for ' .
'which this is not the case. One way that this could have happened is ' .
'for multi-answer questions restored from backup before ' .
'<a href="http://tracker.moodle.org/browse/MDL-14750">MDL-14750</a> was fixed.</p>';
}
function solution() {
return '<p>Upgrade to Moodle 1.9.1 or later, or manually execute the ' .
'code in question_multianswer_fix_subquestion_parents_and_categories in ' .
'<a href="http://cvs.moodle.org/moodle/question/type/multianswer/db/upgrade.php?revision=1.1.10.2&amp;view=markup">/question/type/multianswer/db/upgrade.php' .
'from the 1.9 stable branch</a>.</p>';
}
}
class problem_000014 extends problem_base {
function title() {
return 'Only multianswer and random questions should be the parent of another question';
}
function exists() {
global $DB;
return $DB->record_exists_sql("
SELECT * FROM {question} q
JOIN {question} parent_q ON parent_q.id = q.parent
WHERE parent_q.qtype NOT IN ('random', 'multianswer')");
}
function severity() {
return SEVERITY_ANNOYANCE;
}
function description() {
return '<p>You have questions that violate this in your databse. ' .
'You will need to investigate to determine how this happened.</p>';
}
function solution() {
return '<p>It is impossible to give a solution without knowing more about ' .
' how the problem was caused. You may be able to get help from the ' .
'<a href="http://moodle.org/mod/forum/view.php?f=121">Quiz forum</a>.</p>';
}
}
class problem_000015 extends problem_base {
function title() {
return 'Question categories should belong to a valid context';
}
function exists() {
global $DB;
return $DB->record_exists_sql("
SELECT qc.*, (SELECT COUNT(1) FROM {question} q WHERE q.category = qc.id) AS numquestions
FROM {question_categories} qc
LEFT JOIN {context} con ON qc.contextid = con.id
WHERE con.id IS NULL");
}
function severity() {
return SEVERITY_ANNOYANCE;
}
function description() {
global $DB;
$problemcategories = $DB->get_records_sql("
SELECT qc.id, qc.name, qc.contextid, (SELECT COUNT(1) FROM {question} q WHERE q.category = qc.id) AS numquestions
FROM {question_categories} qc
LEFT JOIN {context} con ON qc.contextid = con.id
WHERE con.id IS NULL
ORDER BY numquestions DESC, qc.name");
$table = '<table><thead><tr><th>Cat id</th><th>Category name</th>' .
"<th>Context id</th><th>Num Questions</th></tr></thead><tbody>\n";
foreach ($problemcategories as $cat) {
$table .= "<tr><td>$cat->id</td><td>" . s($cat->name) . "</td><td>" .
$cat->contextid ."</td><td>$cat->numquestions</td></tr>\n";
}
$table .= '</tbody></table>';
return '<p>All question categories are linked to a context id, and, ' .
'the context they are linked to must exist. The following categories ' .
'belong to a non-existant category:</p>' . $table . '<p>Any of these ' .
'categories that contain no questions can just be deleted form the database. ' .
'Other categories will require more thought.</p>';
}
function solution() {
global $CFG;
return '<p>You can delete the empty categories by executing the following SQL:</p><pre>
DELETE FROM ' . $CFG->prefix . 'question_categories
WHERE
NOT EXISTS (SELECT * FROM ' . $CFG->prefix . 'question q WHERE q.category = ' . $CFG->prefix . 'question_categories.id)
AND NOT EXISTS (SELECT * FROM ' . $CFG->prefix . 'context con WHERE contextid = con.id)
</pre><p>Any remaining categories that contain questions will require more thought. ' .
'People in the <a href="http://moodle.org/mod/forum/view.php?f=121">Quiz forum</a> may be able to help.</p>';
}
}
class problem_000016 extends problem_base {
function title() {
return 'Question categories should belong to the same context as their parent';
}
function exists() {
global $DB;
return $DB->record_exists_sql("
SELECT parent_qc.id AS parent, child_qc.id AS child, child_qc.contextid
FROM {question_categories} child_qc
JOIN {question_categories} parent_qc ON child_qc.parent = parent_qc.id
WHERE child_qc.contextid <> parent_qc.contextid");
}
function severity() {
return SEVERITY_ANNOYANCE;
}
function description() {
global $DB;
$problemcategories = $DB->get_records_sql("
SELECT
parent_qc.id AS parentid, parent_qc.name AS parentname, parent_qc.contextid AS parentcon,
child_qc.id AS childid, child_qc.name AS childname, child_qc.contextid AS childcon
FROM {question_categories} child_qc
JOIN {question_categories} parent_qc ON child_qc.parent = parent_qc.id
WHERE child_qc.contextid <> parent_qc.contextid");
$table = '<table><thead><tr><th colspan="3">Child category</th><th colspan="3">Parent category</th></tr><tr>' .
'<th>Id</th><th>Name</th><th>Context id</th>' .
'<th>Id</th><th>Name</th><th>Context id</th>' .
"</tr></thead><tbody>\n";
foreach ($problemcategories as $cat) {
$table .= "<tr><td>$cat->childid</td><td>" . s($cat->childname) .
"</td><td>$cat->childcon</td><td>$cat->parentid</td><td>" . s($cat->parentname) .
"</td><td>$cat->parentcon</td></tr>\n";
}
$table .= '</tbody></table>';
return '<p>When one question category is the parent of another, then they ' .
'should both belong to the same context. This is not true for the following categories:</p>' .
$table;
}
function solution() {
return '<p>An automated solution is difficult. It depends whether the ' .
'parent or child category is in the wrong pace.' .
'People in the <a href="http://moodle.org/mod/forum/view.php?f=121">Quiz forum</a> may be able to help.</p>';
}
}
class problem_000017 extends problem_base {
function title() {
return 'Question categories tree structure';
}
function find_problems() {
global $DB;
static $answer = null;
if (is_null($answer)) {
$categories = $DB->get_records('question_categories', array(), 'id');
// Look for missing parents.
$missingparent = array();
foreach ($categories as $category) {
if ($category->parent != 0 && !array_key_exists($category->parent, $categories)) {
$missingparent[$category->id] = $category;
}
}
// Look for loops.
$loops = array();
while (!empty($categories)) {
$current = array_pop($categories);
$thisloop = array($current->id => $current);
while (true) {
if (isset($thisloop[$current->parent])) {
// Loop detected
$loops[$current->id] = $thisloop;
break;
} else if (!isset($categories[$current->parent])) {
// Got to the top level, or a category we already know is OK.
break;
} else {
// Continue following the path.
$current = $categories[$current->parent];
$thisloop[$current->id] = $current;
unset($categories[$current->id]);
}
}
}
$answer = array($missingparent, $loops);
}
return $answer;
}
function exists() {
list($missingparent, $loops) = $this->find_problems();
return !empty($missingparent) || !empty($loops);
}
function severity() {
return SEVERITY_ANNOYANCE;
}
function description() {
list($missingparent, $loops) = $this->find_problems();
$description = '<p>The question categories should be arranged into tree ' .
' structures by the question_categories.parent field. Sometimes ' .
' this tree structure gets messed up.</p>';
if (!empty($missingparent)) {
$description .= '<p>The following categories are missing their parents:</p><ul>';
foreach ($missingparent as $cat) {
$description .= "<li>Category $cat->id: " . s($cat->name) . "</li>\n";
}
$description .= "</ul>\n";
}
if (!empty($loops)) {
$description .= '<p>The following categories form a loop of parents:</p><ul>';
foreach ($loops as $loop) {
$description .= "<li><ul>\n";
foreach ($loop as $cat) {
$description .= "<li>Category $cat->id: " . s($cat->name) . " has parent $cat->parent</li>\n";
}
$description .= "</ul></li>\n";
}
$description .= "</ul>\n";
}
return $description;
}
function solution() {
global $CFG;
list($missingparent, $loops) = $this->find_problems();
$solution = '<p>Consider executing the following SQL queries. These fix ' .
'the problem by moving some categories to the top level.</p>';
if (!empty($missingparent)) {
$solution .= "<pre>UPDATE " . $CFG->prefix . "question_categories\n" .
" SET parent = 0\n" .
" WHERE id IN (" . implode(',', array_keys($missingparent)) . ");</pre>\n";
}
if (!empty($loops)) {
$solution .= "<pre>UPDATE " . $CFG->prefix . "question_categories\n" .
" SET parent = 0\n" .
" WHERE id IN (" . implode(',', array_keys($loops)) . ");</pre>\n";
}
return $solution;
}
}
class problem_00000x extends problem_base {
function title() {
return '';
}
function exists() {
return false;
}
function severity() {
return SEVERITY_SIGNIFICANT;
}
function description() {
return '';
}
function solution() {
global $CFG;
return '';
}
}
/*
TODO:
session.save_path -- it doesn't really matter because we are already IN a session, right?
detect unsupported characters in $CFG->wwwroot - see bug Bug #6091 - relative vs absolute path during backup/restore process
*/
+85 -146
View File
@@ -26,16 +26,28 @@
// Check that config.php exists, if not then call the install script
if (!file_exists('../config.php')) {
header('Location: ../install.php');
die;
die();
}
// Check that PHP is of a sufficient version as soon as possible
if (version_compare(phpversion(), '5.2.0') < 0) {
if (version_compare(phpversion(), '5.3.2') < 0) {
$phpversion = phpversion();
// do NOT localise - lang strings would not work here and we CAN NOT move it to later place
echo "Sorry, Moodle 2.0 requires PHP 5.2.8 or later (currently using version $phpversion). ";
echo "Please upgrade your server software or use latest Moodle 1.9.x instead.";
die;
echo "Moodle 2.1 or later requires at least PHP 5.3.2 (currently using version $phpversion).<br />";
echo "Please upgrade your server software or install older Moodle version.";
die();
}
// make sure iconv is available and actually works
if (!function_exists('iconv')) {
// this should not happen, this must be very borked install
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);
@@ -48,6 +60,7 @@ $id = optional_param('id', '', PARAM_TEXT);
$confirmupgrade = optional_param('confirmupgrade', 0, PARAM_BOOL);
$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);
// Check some PHP server settings
@@ -74,9 +87,6 @@ if (is_float_problem()) {
}
// Set some necessary variables during set-up to avoid PHP warnings later on this page
if (!isset($CFG->framename)) {
$CFG->framename = '_top';
}
if (!isset($CFG->release)) {
$CFG->release = '';
}
@@ -86,13 +96,18 @@ if (!isset($CFG->version)) {
$version = null;
$release = null;
require("$CFG->dirroot/version.php"); // defines $version and $release
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;
@@ -111,53 +126,43 @@ if (!core_tables_exist()) {
if (empty($agreelicense)) {
$strlicense = get_string('license');
$PAGE->navbar->add($strlicense);
$PAGE->set_title($strinstallation.' - Moodle '.$CFG->target_release);
$PAGE->set_heading($strinstallation);
$PAGE->set_cacheable(false);
echo $OUTPUT->header();
echo $OUTPUT->heading('<a href="http://moodle.org">Moodle</a> - Modular Object-Oriented Dynamic Learning Environment');
echo $OUTPUT->heading(get_string('copyrightnotice'));
$copyrightnotice = text_to_html(get_string('gpl3'));
$copyrightnotice = str_replace('target="_blank"', 'onclick="this.target=\'_blank\'"', $copyrightnotice); // extremely ugly validation hack
echo $OUTPUT->box($copyrightnotice, 'copyrightnotice');
echo '<br />';
$continue = new single_button(new moodle_url('/admin/index.php', array('lang'=>$CFG->lang, 'agreelicense'=>1)), get_string('continue'), 'get');
echo $OUTPUT->confirm(get_string('doyouagree'), $continue, "http://docs.moodle.org/en/License");
echo $OUTPUT->footer();
die;
$output = $PAGE->get_renderer('core', 'admin');
echo $output->install_licence_page();
die();
}
if (empty($confirmrelease)) {
$strcurrentrelease = get_string('currentrelease');
$PAGE->navbar->add($strcurrentrelease);
$PAGE->set_title($strinstallation.' - Moodle '.$CFG->target_release);
$PAGE->set_heading($strinstallation);
$PAGE->set_cacheable(false);
echo $OUTPUT->header();
echo $OUTPUT->heading("Moodle $release");
$releasenoteslink = get_string('releasenoteslink', 'admin', 'http://docs.moodle.org/en/Release_Notes');
$releasenoteslink = str_replace('target="_blank"', 'onclick="this.target=\'_blank\'"', $releasenoteslink); // extremely ugly validation hack
echo $OUTPUT->box($releasenoteslink, 'generalbox boxaligncenter boxwidthwide');
require_once($CFG->libdir.'/environmentlib.php');
if (!check_moodle_environment($release, $environment_results, true, ENV_SELECT_RELEASE)) {
print_upgrade_reload("index.php?agreelicense=1&amp;lang=$CFG->lang");
} else {
echo $OUTPUT->notification(get_string('environmentok', 'admin'), 'notifysuccess');
echo $OUTPUT->continue_button(new moodle_url('/admin/index.php', array('agreelicense'=>1, 'confirmrelease'=>1, 'lang'=>$CFG->lang)));
}
list($envstatus, $environment_results) = check_moodle_environment(normalize_version($release), ENV_SELECT_RELEASE);
$strcurrentrelease = get_string('currentrelease');
echo $OUTPUT->footer();
die;
$PAGE->navbar->add($strcurrentrelease);
$PAGE->set_title($strinstallation);
$PAGE->set_heading($strinstallation . ' - Moodle ' . $CFG->target_release);
$PAGE->set_cacheable(false);
$output = $PAGE->get_renderer('core', 'admin');
echo $output->install_environment_page($maturity, $envstatus, $environment_results, $release);
die();
}
//TODO: add a page with list of non-standard plugins here
$strdatabasesetup = get_string('databasesetup');
upgrade_init_javascript();
$PAGE->navbar->add($strdatabasesetup);
$PAGE->set_title($strinstallation.' - Moodle '.$CFG->target_release);
$PAGE->set_heading($strinstallation);
$PAGE->set_cacheable(false);
echo $OUTPUT->header();
$output = $PAGE->get_renderer('core', 'admin');
echo $output->header();
if (!$DB->setup_is_unicodedb()) {
if (!$DB->change_db_encoding()) {
@@ -181,70 +186,49 @@ if (empty($CFG->version)) {
}
if ($version > $CFG->version) { // upgrade
purge_all_caches();
$PAGE->set_pagelayout('maintenance');
$PAGE->set_popup_notification_allowed(false);
$a->oldversion = "$CFG->release ($CFG->version)";
$a->newversion = "$release ($version)";
$strdatabasechecking = get_string('databasechecking', '', $a);
if (empty($confirmupgrade)) {
$PAGE->navbar->add($strdatabasechecking);
$PAGE->set_title($strdatabasechecking);
$PAGE->set_heading($stradministration);
$a->oldversion = "$CFG->release ($CFG->version)";
$a->newversion = "$release ($version)";
$strdatabasechecking = get_string('databasechecking', '', $a);
$PAGE->set_title($stradministration);
$PAGE->set_heading($strdatabasechecking);
$PAGE->set_cacheable(false);
echo $OUTPUT->header();
$continueurl = new moodle_url('index.php', array('confirmupgrade' => 1));
$cancelurl = new moodle_url('index.php');
echo $OUTPUT->confirm(get_string('upgradesure', 'admin', $a->newversion), $continueurl, $cancelurl);
echo $OUTPUT->footer();
exit;
$output = $PAGE->get_renderer('core', 'admin');
echo $output->upgrade_confirm_page($a->newversion, $maturity);
die();
} else if (empty($confirmrelease)){
require_once($CFG->libdir.'/environmentlib.php');
list($envstatus, $environment_results) = check_moodle_environment($release, ENV_SELECT_RELEASE);
$strcurrentrelease = get_string('currentrelease');
$PAGE->navbar->add($strcurrentrelease);
$PAGE->set_title($strcurrentrelease);
$PAGE->set_heading($strcurrentrelease);
$PAGE->set_cacheable(false);
echo $OUTPUT->header();
echo $OUTPUT->heading("Moodle $release");
$releasenoteslink = get_string('releasenoteslink', 'admin', 'http://docs.moodle.org/en/Release_Notes');
$releasenoteslink = str_replace('target="_blank"', 'onclick="this.target=\'_blank\'"', $releasenoteslink); // extremely ugly validation hack
echo $OUTPUT->box($releasenoteslink);
require_once($CFG->libdir.'/environmentlib.php');
if (!check_moodle_environment($release, $environment_results, true, ENV_SELECT_RELEASE)) {
print_upgrade_reload('index.php?confirmupgrade=1');
} else {
echo $OUTPUT->notification(get_string('environmentok', 'admin'), 'notifysuccess');
if (empty($CFG->skiplangupgrade)) {
echo $OUTPUT->box_start('generalbox', 'notice');
print_string('langpackwillbeupdated', 'admin');
echo $OUTPUT->box_end();
}
echo $OUTPUT->continue_button('index.php?confirmupgrade=1&confirmrelease=1');
}
$output = $PAGE->get_renderer('core', 'admin');
echo $output->upgrade_environment_page($release, $envstatus, $environment_results);
die();
echo $OUTPUT->footer();
die;
} elseif (empty($confirmplugins)) {
} else if (empty($confirmplugins)) {
$strplugincheck = get_string('plugincheck');
$PAGE->navbar->add($strplugincheck);
$PAGE->set_title($strplugincheck);
$PAGE->set_heading($strplugincheck);
$PAGE->set_cacheable(false);
echo $OUTPUT->header();
echo $OUTPUT->heading($strplugincheck);
echo $OUTPUT->box_start('generalbox', 'notice');
print_string('pluginchecknotice');
echo $OUTPUT->box_end();
print_plugin_tables();
print_upgrade_reload('index.php?confirmupgrade=1&amp;confirmrelease=1');
$button = new single_button(new moodle_url('index.php', array('confirmupgrade'=>1, 'confirmrelease'=>1, 'confirmplugincheck'=>1)), get_string('upgradestart', 'admin'), 'get');
$button->class = 'continuebutton';
echo $OUTPUT->render($button);
echo $OUTPUT->footer();
$output = $PAGE->get_renderer('core', 'admin');
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();
} else {
@@ -265,24 +249,19 @@ if (moodle_needs_upgrading()) {
if (!$PAGE->headerprinted) {
// means core upgrade or installation was not already done
if (!$confirmplugins) {
$strplugincheck = get_string('plugincheck');
$PAGE->set_pagelayout('maintenance');
$PAGE->set_popup_notification_allowed(false);
$strplugincheck = get_string('plugincheck');
$PAGE->navbar->add($strplugincheck);
$PAGE->set_title($strplugincheck);
$PAGE->set_heading($strplugincheck);
$PAGE->set_cacheable(false);
echo $OUTPUT->header();
echo $OUTPUT->heading($strplugincheck);
echo $OUTPUT->box_start('generalbox', 'notice');
print_string('pluginchecknotice');
echo $OUTPUT->box_end();
print_plugin_tables();
print_upgrade_reload('index.php');
$button = new single_button(new moodle_url('index.php', array('confirmplugincheck'=>1)), get_string('upgradestart', 'admin'), 'get');
$button->class = 'continuebutton';
echo $OUTPUT->render($button);
echo $OUTPUT->footer();
$output = $PAGE->get_renderer('core', 'admin');
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();
}
}
@@ -328,8 +307,7 @@ if (during_initial_install()) {
}
// login user and let him set password and admin details
$adminuser->newadminuser = 1;
message_set_default_message_preferences($adminuser);
complete_user_login($adminuser, false);
complete_user_login($adminuser);
redirect("$CFG->wwwroot/user/editadvanced.php?id=$adminuser->id"); // Edit thyself
} else {
@@ -378,53 +356,14 @@ if (any_new_admin_settings($adminroot)){
// Everything should now be set up, and the user is an admin
// Print default admin page with notifications.
admin_externalpage_setup('adminnotifications');
echo $OUTPUT->header();
$errorsdisplayed = defined('WARN_DISPLAY_ERRORS_ENABLED');
if ($insecuredataroot == INSECURE_DATAROOT_WARNING) {
echo $OUTPUT->box(get_string('datarootsecuritywarning', 'admin', $CFG->dataroot), 'generalbox adminwarning');
} else if ($insecuredataroot == INSECURE_DATAROOT_ERROR) {
echo $OUTPUT->box(get_string('datarootsecurityerror', 'admin', $CFG->dataroot), 'generalbox adminerror');
}
if (defined('WARN_DISPLAY_ERRORS_ENABLED')) {
echo $OUTPUT->box(get_string('displayerrorswarning', 'admin'), 'generalbox adminwarning');
}
// If no recently cron run
$lastcron = $DB->get_field_sql('SELECT MAX(lastcron) FROM {modules}');
if (time() - $lastcron > 3600 * 24) {
$helpbutton = $OUTPUT->help_icon('cron', 'admin');
echo $OUTPUT->box(get_string('cronwarning', 'admin').'&nbsp;'.$helpbutton, 'generalbox adminwarning');
}
// Hidden bloglevel upgrade
$showbloglevelupgrade = ($CFG->bloglevel == BLOG_COURSE_LEVEL || $CFG->bloglevel == BLOG_GROUP_LEVEL) && empty($CFG->bloglevel_upgrade_complete);
if ($showbloglevelupgrade) {
echo $OUTPUT->box(get_string('bloglevelupgradenotice', 'admin'), 'generalbox adminwarning');
}
// diagnose DB, especially the sloppy MyISAM tables
$diagnose = $DB->diagnose();
if ($diagnose !== NULL) {
echo $OUTPUT->box($diagnose, 'generalbox adminwarning');
}
// Alert if we are currently in maintenance mode
if (!empty($CFG->maintenance_enabled)) {
echo $OUTPUT->box(get_string('sitemaintenancewarning2', 'admin', "$CFG->wwwroot/$CFG->admin/settings.php?section=maintenancemode"), 'generalbox adminwarning');
}
//////////////////////////////////////////////////////////////////////////////////////////////////
//// IT IS ILLEGAL AND A VIOLATION OF THE GPL TO HIDE, REMOVE OR MODIFY THIS COPYRIGHT NOTICE ///
$copyrighttext = '<a href="http://moodle.org/">Moodle</a> '.
'<a href="http://docs.moodle.org/en/Release" title="'.$CFG->version.'">'.$CFG->release.'</a><br />'.
'Copyright &copy; 1999 onwards, Martin Dougiamas<br />'.
'and <a href="http://docs.moodle.org/en/Credits">many other contributors</a>.<br />'.
'<a href="http://docs.moodle.org/en/License">GNU Public License</a>';
echo $OUTPUT->box($copyrighttext, 'copyright');
//////////////////////////////////////////////////////////////////////////////////////////////////
echo $OUTPUT->footer();
$cronoverdue = ($lastcron < time() - 3600 * 24);
$dbproblems = $DB->diagnose();
$maintenancemode = !empty($CFG->maintenance_enabled);
admin_externalpage_setup('adminnotifications');
$output = $PAGE->get_renderer('core', 'admin');
echo $output->admin_notifications_page($maturity, $insecuredataroot, $errorsdisplayed,
$cronoverdue, $dbproblems, $maintenancemode);
-45
View File
@@ -1,45 +0,0 @@
<?php
require_once('../config.php');
require_once($CFG->libdir.'/adminlib.php');
admin_externalpage_setup('toinodb');
$confirm = optional_param('confirm', 0, PARAM_BOOL);
require_login();
require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
echo $OUTPUT->header();
echo $OUTPUT->heading('Convert all MySQL tables from MYISAM to InnoDB');
if ($DB->get_dbfamily() != 'mysql') {
notice('This function is for MySQL databases only!', 'index.php');
}
if (data_submitted() and $confirm and confirm_sesskey()) {
echo $OUTPUT->notification('Please be patient and wait for this to complete...', 'notifysuccess');
if ($tables = $DB->get_tables()) {
$DB->set_debug(true);
foreach ($tables as $table) {
$fulltable = $DB->get_prefix().$table;
$DB->change_database_structure("ALTER TABLE $fulltable TYPE=INNODB");
}
$DB->set_debug(false);
}
echo $OUTPUT->notification('... done.', 'notifysuccess');
echo $OUTPUT->continue_button('index.php');
echo $OUTPUT->footer();
} else {
$optionsyes = array('confirm'=>'1', 'sesskey'=>sesskey());
$formcontinue = new single_button(new moodle_url('/admin/innodb.php', $optionsyes), get_string('yes'));
$formcancel = new single_button(new moodle_url('/admin/index.php'), get_string('no'), 'get');
echo $OUTPUT->confirm('Are you sure you want convert all your tables to the InnoDB format?', $formcontinue, $formcancel);
echo $OUTPUT->footer();
}
-387
View File
@@ -1,387 +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/>.
/**
* Fetches language packages from download.moodle.org server
*
* Language packages are available at http://download.moodle.org/langpack/2.0/
* in ZIP format together with a file languages.md5 containing their hashes
* and meta info.
* Locally, language packs are saved into $CFG->dataroot/lang/
*
* @package core
* @copyright 2005 Yu Zhang
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(dirname(__FILE__)).'/config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/filelib.php');
require_once($CFG->libdir.'/componentlib.class.php');
$thisversion = '2.0'; // TODO this information should be taken from version.php or similar source
admin_externalpage_setup('langimport');
if (!empty($CFG->skiplangupgrade)) {
echo $OUTPUT->header();
echo $OUTPUT->box(get_string('langimportdisabled', 'admin'));
echo $OUTPUT->footer();
die;
}
$mode = optional_param('mode', 0, PARAM_INT); // action
$pack = optional_param('pack', array(), PARAM_SAFEDIR); // pack to install
$uninstalllang = optional_param('uninstalllang', '', PARAM_LANG); // installed pack to uninstall
$confirm = optional_param('confirm', 0, PARAM_BOOL); // uninstallation confirmation
define('INSTALLATION_OF_SELECTED_LANG', 2);
define('DELETION_OF_SELECTED_LANG', 4);
define('UPDATE_ALL_LANG', 5);
//reset and diagnose lang cache permissions
remove_dir($CFG->dataroot.'/cache/languages');
if (file_exists($CFG->dataroot.'/cache/languages')) {
print_error('cannotdeletelangcache', 'error');
}
get_string_manager()->reset_caches();
$notice_ok = array();
$notice_error = array();
if (($mode == INSTALLATION_OF_SELECTED_LANG) and confirm_sesskey() and !empty($pack)) {
set_time_limit(0);
make_upload_directory('temp');
make_upload_directory('lang');
if (is_array($pack)) {
$packs = $pack;
} else {
$packs = array($pack);
}
foreach ($packs as $pack) {
if ($cd = new component_installer('http://download.moodle.org', 'langpack/'.$thisversion, $pack.'.zip', 'languages.md5', 'lang')) {
$status = $cd->install();
switch ($status) {
case COMPONENT_ERROR:
if ($cd->get_error() == 'remotedownloaderror') {
$a = new stdClass();
$a->url = 'http://download.moodle.org/langpack/'.$thisversion.'/'.$pack.'.zip';
$a->dest = $CFG->dataroot.'/lang';
print_error($cd->get_error(), 'error', 'langimport.php', $a);
} else {
print_error($cd->get_error(), 'error', 'langimport.php');
}
break;
case COMPONENT_INSTALLED:
$notice_ok[] = get_string('langpackinstalled','admin',$pack);
if ($parentlang = get_parent_language($pack)) {
// install also parent pack if specified
if ($cd = new component_installer('http://download.moodle.org', 'langpack/'.$thisversion,
$parentlang.'.zip', 'languages.md5', 'lang')) {
$cd->install();
}
}
break;
case COMPONENT_UPTODATE:
break;
}
} else {
echo $OUTPUT->notification('Had an unspecified error with the component installer, sorry.');
}
}
}
if ($mode == DELETION_OF_SELECTED_LANG and !empty($uninstalllang)) {
if ($uninstalllang == 'en') {
$notice_error[] = 'English language pack can not be uninstalled';
} else if (!$confirm and confirm_sesskey()) {
echo $OUTPUT->header();
echo $OUTPUT->confirm(get_string('uninstallconfirm', 'admin', $uninstalllang),
'langimport.php?mode='.DELETION_OF_SELECTED_LANG.'&uninstalllang='.$uninstalllang.'&confirm=1',
'langimport.php');
echo $OUTPUT->footer();
die;
} else if (confirm_sesskey()) {
$dest1 = $CFG->dataroot.'/lang/'.$uninstalllang;
$dest2 = $CFG->dirroot.'/lang/'.$uninstalllang;
$rm1 = false;
$rm2 = false;
if (file_exists($dest1)){
$rm1 = remove_dir($dest1);
}
if (file_exists($dest2)){
$rm2 = remove_dir($dest2);
}
if ($rm1 or $rm2) {
$notice_ok[] = get_string('langpackremoved','admin');
} else { //nothing deleted, possibly due to permission error
$notice_error[] = 'An error has occurred, language pack is not completely uninstalled, please check file permissions';
}
}
}
if ($mode == UPDATE_ALL_LANG) {
set_time_limit(0);
if (!$availablelangs = get_remote_list_of_languages()) {
print_error('cannotdownloadlanguageupdatelist', 'error');
}
$md5array = array(); // (string)langcode => (string)md5
foreach ($availablelangs as $alang) {
$md5array[$alang[0]] = $alang[1];
}
// filter out unofficial packs
$currentlangs = array_keys(get_string_manager()->get_list_of_translations(true));
$updateablelangs = array();
foreach ($currentlangs as $clang) {
if (!array_key_exists($clang, $md5array)) {
$notice_ok[] = get_string('langpackupdateskipped', 'admin', $clang);
continue;
}
$dest1 = $CFG->dataroot.'/lang/'.$clang;
$dest2 = $CFG->dirroot.'/lang/'.$clang;
if (file_exists($dest1.'/langconfig.php') || file_exists($dest2.'/langconfig.php')){
$updateablelangs[] = $clang;
}
}
// then filter out packs that have the same md5 key
$neededlangs = array(); // all the packs that needs updating
foreach ($updateablelangs as $ulang) {
if (!is_installed_lang($ulang, $md5array[$ulang])) {
$neededlangs[] = $ulang;
}
}
make_upload_directory('temp');
make_upload_directory('lang');
$updated = false; // any packs updated?
foreach ($neededlangs as $pack) {
if ($pack == 'en') {
continue;
}
// delete old directories
$dest1 = $CFG->dataroot.'/lang/'.$pack;
$dest2 = $CFG->dirroot.'/lang/'.$pack;
$rm1 = false;
$rm2 = false;
if (file_exists($dest1)) {
if (!remove_dir($dest1)) {
$notice_error[] = 'Could not delete old directory '.$dest1.', update of '.$pack.' failed, please check permissions.';
continue;
}
}
if (file_exists($dest2)) {
if (!remove_dir($dest2)) {
$notice_error[] = 'Could not delete old directory '.$dest2.', update of '.$pack.' failed, please check permissions.';
continue;
}
}
// copy and unzip new version
if ($cd = new component_installer('http://download.moodle.org', 'langpack/'.$thisversion, $pack.'.zip', 'languages.md5', 'lang')) {
$status = $cd->install();
switch ($status) {
case COMPONENT_ERROR:
if ($cd->get_error() == 'remotedownloaderror') {
$a = new stdClass();
$a->url = 'http://download.moodle.org/langpack/'.$thisversion.'/'.$pack.'.zip';
$a->dest = $CFG->dataroot.'/lang';
print_error($cd->get_error(), 'error', 'langimport.php', $a);
} else {
print_error($cd->get_error(), 'error', 'langimport.php');
}
break;
case COMPONENT_UPTODATE:
// should not get here
break;
case COMPONENT_INSTALLED:
$notice_ok[] = get_string('langpackupdated', 'admin', $pack);
$updated = true;
break;
}
}
}
if ($updated) {
$notice_ok[] = get_string('langupdatecomplete','admin');
} else {
$notice_ok[] = get_string('nolangupdateneeded','admin');
}
}
get_string_manager()->reset_caches();
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('langimport', 'admin'));
$installedlangs = get_string_manager()->get_list_of_translations(true);
$missingparents = array();
foreach ($installedlangs as $installedlang => $unused) {
$parent = get_parent_language($installedlang);
if (empty($parent) or ($parent === 'en')) {
continue;
}
if (!isset($installedlangs[$parent])) {
$missingparents[$installedlang] = $parent;
}
}
if ($availablelangs = get_remote_list_of_languages()) {
$remote = true;
} else {
$remote = false;
$availablelangs = array();
echo $OUTPUT->box_start();
print_string('remotelangnotavailable', 'admin', $CFG->dataroot.'/lang/');
echo $OUTPUT->box_end();
}
if ($notice_ok) {
$info = implode('<br />', $notice_ok);
echo $OUTPUT->notification($info, 'notifysuccess');
}
if ($notice_error) {
$info = implode('<br />', $notice_error);
echo $OUTPUT->notification($info, 'notifyproblem');
}
if ($missingparents) {
foreach ($missingparents as $l=>$parent) {
$a = new stdClass();
$a->lang = $installedlangs[$l];
$a->parent = $parent;
foreach ($availablelangs as $alang) {
if ($alang[0] == $parent) {
$shortlang = $alang[0];
$a->parent = $alang[2].' ('.$shortlang.')';
}
}
$info = get_string('missinglangparent', 'admin', $a);
echo $OUTPUT->notification($info, 'notifyproblem');
}
}
echo $OUTPUT->box_start();
echo html_writer::start_tag('table');
echo html_writer::start_tag('tr');
// list of installed languages
$url = new moodle_url('/admin/langimport.php', array('mode' => DELETION_OF_SELECTED_LANG));
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','admin'), 'uninstalllang');
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()));
echo html_writer::empty_tag('br');
echo html_writer::empty_tag('input', array('type' => 'submit', 'value' => get_string('uninstall','admin')));
echo html_writer::end_tag('fieldset');
echo html_writer::end_tag('form');
if ($remote) {
$url = new moodle_url('/admin/langimport.php', array('mode' => UPDATE_ALL_LANG));
echo html_writer::start_tag('form', array('id' => 'updateform', 'action' => $url->out(), 'method' => 'post'));
echo html_writer::tag('fieldset', html_writer::empty_tag('input', array('type' => 'submit', 'value' => get_string('updatelangs','admin'))));
echo html_writer::end_tag('form');
}
echo html_writer::end_tag('td');
// list of available languages
$options = array();
foreach ($availablelangs as $alang) {
if (!empty($alang[0]) and trim($alang[0]) !== 'en' and !is_installed_lang($alang[0], $alang[1])) {
$options[$alang[0]] = $alang[2].' ('.$alang[0].')';
}
}
if (!empty($options)) {
echo html_writer::start_tag('td', array('valign' => 'top'));
$url = new moodle_url('/admin/langimport.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::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()));
echo html_writer::empty_tag('br');
echo html_writer::empty_tag('input', array('type' => 'submit', 'value' => get_string('install','admin')));
echo html_writer::end_tag('fieldset');
echo html_writer::end_tag('form');
echo html_writer::end_tag('td');
}
echo html_writer::end_tag('tr');
echo html_writer::end_tag('table');
echo $OUTPUT->box_end();
echo $OUTPUT->footer();
die();
////////////////////////////////////////////////////////////////////////////////
// Local functions /////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
/**
* checks the md5 of the zip file, grabbed from download.moodle.org,
* against the md5 of the local language file from last update
* @param string $lang
* @param string $md5check
* @return bool
*/
function is_installed_lang($lang, $md5check) {
global $CFG;
$md5file = $CFG->dataroot.'/lang/'.$lang.'/'.$lang.'.md5';
if (file_exists($md5file)){
return (file_get_contents($md5file) == $md5check);
}
return false;
}
/**
* Returns the list of available language packs from download.moodle.org
*
* @return array|bool false if can not download
*/
function get_remote_list_of_languages() {
$source = 'http://download.moodle.org/langpack/2.0/languages.md5';
$availablelangs = array();
if ($content = download_file_content($source)) {
$alllines = explode("\n", $content);
foreach($alllines as $line) {
if (!empty($line)){
$availablelangs[] = explode(',', $line);
}
}
return $availablelangs;
} else {
return false;
}
}
+50
View File
@@ -0,0 +1,50 @@
<?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 functions used by the admin pages
*
* @since 2.1
* @package admin
* @copyright 2011 Andrew Davis
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
/**
* Return a list of page types
* @param string $pagetype current page type
* @param stdClass $parentcontext Block's parent context
* @param stdClass $currentcontext Current context of block
*/
function admin_page_type_list($pagetype, $parentcontext, $currentcontext) {
$array = array(
'admin-*' => get_string('page-admin-x', 'pagetype'),
$pagetype => get_string('page-admin-current', 'pagetype')
);
// Add the missing * (any page) option for them. MDL-30340
// TODO: These pages are really 'pagetype-varying' - MDL-30564 -
// and some day we should stop behaving that way, so proper pagetypes
// can be specified for it (like course-category-* or so).
// Luckly... the option we are introducing '*' is independent
// of that varying behavior, so will work.
if ($pagetype == 'admin-course-category') {
$array += array(
'*' => get_string('page-x', 'pagetype')
);
}
return $array;
}
+3 -3
View File
@@ -21,7 +21,7 @@
* Displays the list of found local plugins, their version (if found) and
* a link to delete the local plugin.
*
* @see http://docs.moodle.org/en/Development:Local_customisation
* @see http://docs.moodle.org/dev/Local_customisation
* @package admin
* @copyright 2010 David Mudrak <david.mudrak@gmail.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
@@ -33,7 +33,7 @@ require_once($CFG->libdir.'/tablelib.php');
admin_externalpage_setup('managelocalplugins');
$delete = optional_param('delete', '', PARAM_SAFEDIR);
$delete = optional_param('delete', '', PARAM_PLUGIN);
$confirm = optional_param('confirm', '', PARAM_BOOL);
/// If data submitted, then process and store.
@@ -89,7 +89,7 @@ foreach (get_plugin_list('local') as $plugin => $plugindir) {
}
$plugins[$plugin] = $strpluginname;
}
textlib_get_instance()->asort($plugins);
collatorlib::asort($plugins);
foreach ($plugins as $plugin => $name) {
$delete = new moodle_url($PAGE->url, array('delete' => $plugin, 'sesskey' => sesskey()));
+70
View File
@@ -0,0 +1,70 @@
<?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/>.
/**
* Message outputs configuration page
*
* @package message
* @copyright 2011 Lancaster University Network Services Limited
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(__FILE__) . '/../config.php');
require_once($CFG->dirroot . '/message/lib.php');
require_once($CFG->libdir.'/adminlib.php');
// This is an admin page
admin_externalpage_setup('managemessageoutputs');
// Require site configuration capability
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);
if (!empty($disable) && confirm_sesskey()) {
if (!$processor = $DB->get_record('message_processors', array('id'=>$disable))) {
print_error('outputdoesnotexist', 'message');
}
$DB->set_field('message_processors', 'enabled', '0', array('id'=>$processor->id)); // Disable output
}
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 ($disable || $enable) {
$url = new moodle_url('message.php');
redirect($url);
}
// Page settings
$PAGE->set_context(get_context_instance(CONTEXT_SYSTEM));
// Grab the renderer
$renderer = $PAGE->get_renderer('core', 'message');
// Display the manage message outputs interface
$processors = get_message_processors();
$messageoutputs = $renderer->manage_messageoutputs($processors);
// Display the page
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('managemessageoutputs', 'message'));
echo $messageoutputs;
echo $OUTPUT->footer();
+1 -1
View File
@@ -38,7 +38,7 @@ $strmnetlog = get_string('mnetlog', 'mnet');
$strmnetedithost = get_string('reviewhostdetails', 'mnet');
$logurl = $CFG->wwwroot.
'/course/report/log/index.php?chooselog=1&amp;showusers=1&amp;showcourses=1&amp;host_course='.$mnet_peer->id.
'/report/log/index.php?chooselog=1&amp;showusers=1&amp;showcourses=1&amp;host_course='.$mnet_peer->id.
'%2F1&amp;user='.'0'.
'&amp;date=0'.
'&amp;modid=&amp;modaction=0&amp;logformat=showashtml';
+3 -3
View File
@@ -11,9 +11,9 @@
admin_externalpage_setup('managemodules');
$show = optional_param('show', '', PARAM_SAFEDIR);
$hide = optional_param('hide', '', PARAM_SAFEDIR);
$delete = optional_param('delete', '', PARAM_SAFEDIR);
$show = optional_param('show', '', PARAM_PLUGIN);
$hide = optional_param('hide', '', PARAM_PLUGIN);
$delete = optional_param('delete', '', PARAM_PLUGIN);
$confirm = optional_param('confirm', '', PARAM_BOOL);
-117
View File
@@ -1,117 +0,0 @@
<?php
/// Search and replace strings throughout all texts in the whole database
define('NO_OUTPUT_BUFFERING', true);
require_once('../config.php');
require_once($CFG->dirroot.'/course/lib.php');
require_once($CFG->libdir.'/adminlib.php');
admin_externalpage_setup('multilangupgrade');
$go = optional_param('go', 0, PARAM_BOOL);
###################################################################
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('multilangupgrade', 'admin'));
$strmultilangupgrade = get_String('multilangupgradeinfo', 'admin');
if (!$go or !data_submitted() or !confirm_sesskey()) { /// Print a form
$optionsyes = array('go'=>1, 'sesskey'=>sesskey());
echo $OUTPUT->confirm($strmultilangupgrade, new moodle_url('multilangupgrade.php', $optionsyes), 'index.php');
echo $OUTPUT->footer();
die;
}
if (!$tables = $DB->get_tables() ) { // No tables yet at all.
print_error('notables', 'debug');
}
echo $OUTPUT->box_start();
/// Turn off time limits, sometimes upgrades can be slow.
@set_time_limit(0);
echo '<strong>Progress:</strong>';
$i = 0;
$skiptables = array('config', 'user_students', 'user_teachers');
foreach ($tables as $table) {
if (strpos($table,'pma') === 0) { // Not our tables
continue;
}
if (in_array($table, $skiptables)) { // Don't process these
continue;
}
$fulltable = $DB->get_prefix().$table;
if ($columns = $DB->get_columns($table)) {
if (!array_key_exists('id', $columns)) {
continue; // moodle tables have id
}
foreach ($columns as $column => $data) {
if (in_array($data->type, array('text','mediumtext','longtext','varchar'))) { // Text stuff only
// first find candidate records
$sql = "SELECT id, $column FROM $fulltable WHERE $column LIKE '%</lang>%' OR $column LIKE '%<span lang=%'";
$rs = $DB->get_recordset_sql($sql);
foreach ($rs as $data) {
$text = $data->$column;
$id = $data->id;
if ($i % 600 == 0) {
echo '<br />';
}
if ($i % 10 == 0) {
echo '.';
}
$i++;
if (empty($text) or is_numeric($text)) {
continue; // nothing to do
}
$search = '/(<(?:lang|span) lang="[a-zA-Z0-9_-]*".*?>.+?<\/(?:lang|span)>)(\s*<(?:lang|span) lang="[a-zA-Z0-9_-]*".*?>.+?<\/(?:lang|span)>)+/is';
$newtext = preg_replace_callback($search, 'multilangupgrade_impl', $text);
if (is_null($newtext)) {
continue; // regex error
}
if ($newtext != $text) {
$DB->execute("UPDATE $fulltable SET $column=? WHERE id=?", array($newtext, $id));
}
}
$rs->close();
}
}
}
}
// set conversion flag - switches to new plugin automatically
set_config('filter_multilang_converted', 1);
echo $OUTPUT->box_end();
/// Rebuild course cache which might be incorrect now
echo $OUTPUT->notification('Rebuilding course cache...', 'notifysuccess');
rebuild_course_cache();
echo $OUTPUT->notification('...finished', 'notifysuccess');
echo $OUTPUT->continue_button('index.php');
echo $OUTPUT->footer();
die;
function multilangupgrade_impl($langblock) {
$searchtosplit = '/<(?:lang|span) lang="([a-zA-Z0-9_-]*)".*?>(.+?)<\/(?:lang|span)>/is';
preg_match_all($searchtosplit, $langblock[0], $rawlanglist);
$return = '';
foreach ($rawlanglist[1] as $index=>$lang) {
$return .= '<span lang="'.$lang.'" class="multilang">'.$rawlanglist[2][$index].'</span>';
}
return $return;
}
+14 -4
View File
@@ -42,12 +42,20 @@ function online_assignment_cleanup($output=false) {
/// get a list of all courses on this site
$courses = $DB->get_records('course');
list($ctxselect, $ctxjoin) = context_instance_preload_sql('c.id', CONTEXT_COURSE, 'ctx');
$sql = "SELECT c.* $ctxselect FROM {course} c $ctxjoin";
$courses = $DB->get_records_sql($sql);
/// cycle through each course
foreach ($courses as $course) {
context_instance_preload($course);
$context = get_context_instance(CONTEXT_COURSE, $course->id);
$fullname = empty($course->fullname) ? 'Course: '.$course->id : $course->fullname;
if (empty($course->fullname)) {
$fullname = get_string('course').': '.$course->id;
} else {
$fullname = format_string($course->fullname, true, array('context' => $context));
}
if ($output) echo $OUTPUT->heading($fullname);
/// retrieve a list of sections beyond what is currently being shown
@@ -96,7 +104,9 @@ function online_assignment_cleanup($output=false) {
/// grab the section record
if (!($section = $DB->get_record('course_sections', array('id'=>$newsection)))) {
if ($output) echo 'Serious error: Cannot retrieve section: '.$newsection.' for course: '. format_string($course->fullname) .'<br />';
if ($output) {
echo 'Serious error: Cannot retrieve section: '.$newsection.' for course: '. $fullname .'<br />';
}
continue;
}
@@ -117,7 +127,7 @@ function online_assignment_cleanup($output=false) {
/// grab the old section record
if (!($section = $DB->get_record('course_sections', array('id'=>$xsection->id)))) {
if ($output) echo 'Serious error: Cannot retrieve old section: '.$xsection->id.' for course: '.$course->fullname.'<br />';
if ($output) echo 'Serious error: Cannot retrieve old section: '.$xsection->id.' for course: '.$fullname.'<br />';
continue;
}
+34
View File
@@ -0,0 +1,34 @@
<?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/>.
/**
* UI for general plugins management
*
* @package core
* @subpackage admin
* @copyright 2011 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(dirname(__FILE__)) . '/config.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->libdir . '/pluginlib.php');
require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM));
admin_externalpage_setup('pluginsoverview');
$output = $PAGE->get_renderer('core', 'admin');
echo $output->plugin_management_page(plugin_manager::instance());
Executable → Regular
View File
+301
View File
@@ -0,0 +1,301 @@
<?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/>.
/**
* Allows the admin to manage question behaviours.
*
* @package moodlecore
* @subpackage questionengine
* @copyright 2011 The Open University
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require_once(dirname(__FILE__) . '/../config.php');
require_once($CFG->libdir . '/questionlib.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->libdir . '/pluginlib.php');
require_once($CFG->libdir . '/tablelib.php');
// Check permissions.
require_login();
$systemcontext = get_context_instance(CONTEXT_SYSTEM);
require_capability('moodle/question:config', $systemcontext);
admin_externalpage_setup('manageqbehaviours');
$thispageurl = new moodle_url('/admin/qbehaviours.php');
$behaviours = get_plugin_list('qbehaviour');
$pluginmanager = plugin_manager::instance();
// Get some data we will need - question counts and which types are needed.
$counts = $DB->get_records_sql_menu("
SELECT behaviour, COUNT(1)
FROM {question_attempts} GROUP BY behaviour");
$needed = array();
$archetypal = array();
foreach ($behaviours as $behaviour => $notused) {
if (!array_key_exists($behaviour, $counts)) {
$counts[$behaviour] = 0;
}
$needed[$behaviour] = ($counts[$behaviour] > 0) &&
$pluginmanager->other_plugins_that_require('qbehaviour_' . $behaviour);
$archetypal[$behaviour] = question_engine::is_behaviour_archetypal($behaviour);
}
foreach ($counts as $behaviour => $count) {
if (!array_key_exists($behaviour, $behaviours)) {
$counts['missingtype'] += $count;
}
}
// Work of the correct sort order.
$config = get_config('question');
$sortedbehaviours = array();
foreach ($behaviours as $behaviour => $notused) {
$sortedbehaviours[$behaviour] = question_engine::get_behaviour_name($behaviour);
}
if (!empty($config->behavioursortorder)) {
$sortedbehaviours = question_engine::sort_behaviours($sortedbehaviours,
$config->behavioursortorder, '');
}
if (!empty($config->disabledbehaviours)) {
$disabledbehaviours = explode(',', $config->disabledbehaviours);
} else {
$disabledbehaviours = array();
}
// Process actions ============================================================
// Disable.
if (($disable = optional_param('disable', '', PARAM_PLUGIN)) && confirm_sesskey()) {
if (!isset($behaviours[$disable])) {
print_error('unknownbehaviour', 'question', $thispageurl, $disable);
}
if (array_search($disable, $disabledbehaviours) === false) {
$disabledbehaviours[] = $disable;
set_config('disabledbehaviours', implode(',', $disabledbehaviours), 'question');
}
redirect($thispageurl);
}
// Enable.
if (($enable = optional_param('enable', '', PARAM_PLUGIN)) && confirm_sesskey()) {
if (!isset($behaviours[$enable])) {
print_error('unknownbehaviour', 'question', $thispageurl, $enable);
}
if (!$archetypal[$enable]) {
print_error('cannotenablebehaviour', 'question', $thispageurl, $enable);
}
if (($key = array_search($enable, $disabledbehaviours)) !== false) {
unset($disabledbehaviours[$key]);
set_config('disabledbehaviours', implode(',', $disabledbehaviours), 'question');
}
redirect($thispageurl);
}
// Move up in order.
if (($up = optional_param('up', '', PARAM_PLUGIN)) && confirm_sesskey()) {
if (!isset($behaviours[$up])) {
print_error('unknownbehaviour', 'question', $thispageurl, $up);
}
// This function works fine for behaviours, as well as qtypes.
$neworder = question_reorder_qtypes($sortedbehaviours, $up, -1);
set_config('behavioursortorder', implode(',', $neworder), 'question');
redirect($thispageurl);
}
// Move down in order.
if (($down = optional_param('down', '', PARAM_PLUGIN)) && confirm_sesskey()) {
if (!isset($behaviours[$down])) {
print_error('unknownbehaviour', 'question', $thispageurl, $down);
}
// This function works fine for behaviours, as well as qtypes.
$neworder = question_reorder_qtypes($sortedbehaviours, $down, +1);
set_config('behavioursortorder', implode(',', $neworder), 'question');
redirect($thispageurl);
}
// Delete.
if (($delete = optional_param('delete', '', PARAM_PLUGIN)) && confirm_sesskey()) {
// Check it is OK to delete this question type.
if ($delete == 'missing') {
print_error('cannotdeletemissingbehaviour', 'question', $thispageurl);
}
if (!isset($behaviours[$delete])) {
print_error('unknownbehaviour', 'question', $thispageurl, $delete);
}
$behaviourname = $sortedbehaviours[$delete];
if ($counts[$delete] > 0) {
print_error('cannotdeletebehaviourinuse', 'question', $thispageurl, $behaviourname);
}
if ($needed[$delete] > 0) {
print_error('cannotdeleteneededbehaviour', 'question', $thispageurl, $behaviourname);
}
// If not yet confirmed, display a confirmation message.
if (!optional_param('confirm', '', PARAM_BOOL)) {
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('deletebehaviourareyousure', 'question', $behaviourname));
echo $OUTPUT->confirm(
get_string('deletebehaviourareyousuremessage', 'question', $behaviourname),
new moodle_url($thispageurl, array('delete' => $delete, 'confirm' => 1)),
$thispageurl);
echo $OUTPUT->footer();
exit;
}
// Do the deletion.
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('deletingbehaviour', 'question', $behaviourname));
// Delete any configuration records.
if (!unset_all_config_for_plugin('qbehaviour_' . $delete)) {
echo $OUTPUT->notification(get_string('errordeletingconfig', 'admin', 'qbehaviour_' . $delete));
}
if (($key = array_search($delete, $disabledbehaviours)) !== false) {
unset($disabledbehaviours[$key]);
set_config('disabledbehaviours', implode(',', $disabledbehaviours), 'question');
}
$behaviourorder = explode(',', $config->behavioursortorder);
if (($key = array_search($delete, $behaviourorder)) !== false) {
unset($behaviourorder[$key]);
set_config('behavioursortorder', implode(',', $behaviourorder), 'question');
}
// Then the tables themselves
drop_plugin_tables($delete, get_plugin_directory('qbehaviour', $delete) . '/db/install.xml', false);
// Remove event handlers and dequeue pending events
events_uninstall('qbehaviour_' . $delete);
$a->behaviour = $behaviourname;
$a->directory = get_plugin_directory('qbehaviour', $delete);
echo $OUTPUT->box(get_string('qbehaviourdeletefiles', 'question', $a), 'generalbox', 'notice');
echo $OUTPUT->continue_button($thispageurl);
echo $OUTPUT->footer();
exit;
}
// End of process actions ==================================================
// Print the page heading.
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('manageqbehaviours', 'admin'));
// Set up the table.
$table = new flexible_table('qbehaviouradmintable');
$table->define_baseurl($thispageurl);
$table->define_columns(array('behaviour', 'numqas', 'version', 'requires',
'available', 'delete'));
$table->define_headers(array(get_string('behaviour', 'question'), get_string('numqas', 'question'),
get_string('version'), get_string('requires', 'admin'),
get_string('availableq', 'question'), get_string('delete')));
$table->set_attribute('id', 'qbehaviours');
$table->set_attribute('class', 'generaltable generalbox boxaligncenter boxwidthwide');
$table->setup();
// Add a row for each question type.
foreach ($sortedbehaviours as $behaviour => $behaviourname) {
$row = array();
// Question icon and name.
$row[] = $behaviourname;
// Count
$row[] = $counts[$behaviour];
// Question version number.
$version = get_config('qbehaviour_' . $behaviour, 'version');
if ($version) {
$row[] = $version;
} else {
$row[] = html_writer::tag('span', get_string('nodatabase', 'admin'), array('class' => 'disabled'));
}
// Other question types required by this one.
$plugin = $pluginmanager->get_plugin_info('qbehaviour_' . $behaviour);
$required = $plugin->get_other_required_plugins();
if (!empty($required)) {
$strrequired = array();
foreach ($required as $component => $notused) {
$strrequired[] = $pluginmanager->plugin_name($component);
}
$row[] = implode(', ', $strrequired);
} else {
$row[] = '';
}
// Are people allowed to create new questions of this type?
$rowclass = '';
if ($archetypal[$behaviour]) {
$enabled = array_search($behaviour, $disabledbehaviours) === false;
$icons = question_behaviour_enable_disable_icons($behaviour, $enabled);
if (!$enabled) {
$rowclass = 'dimmed_text';
}
} else {
$icons = $OUTPUT->spacer() . ' ';
}
// Move icons.
$icons .= question_behaviour_icon_html('up', $behaviour, 't/up', get_string('up'), null);
$icons .= question_behaviour_icon_html('down', $behaviour, 't/down', get_string('down'), null);
$row[] = $icons;
// Delete link, if available.
if ($needed[$behaviour]) {
$row[] = '';
} else {
$row[] = html_writer::link(new moodle_url($thispageurl,
array('delete' => $behaviour, 'sesskey' => sesskey())), get_string('delete'),
array('title' => get_string('uninstallbehaviour', 'question')));
}
$table->add_data($row, $rowclass);
}
$table->finish_output();
echo $OUTPUT->footer();
function question_behaviour_enable_disable_icons($behaviour, $enabled) {
if ($enabled) {
return question_behaviour_icon_html('disable', $behaviour, 'i/hide',
get_string('enabled', 'question'), get_string('disable'));
} else {
return question_behaviour_icon_html('enable', $behaviour, 'i/show',
get_string('disabled', 'question'), get_string('enable'));
}
}
function question_behaviour_icon_html($action, $behaviour, $icon, $alt, $tip) {
global $OUTPUT;
return $OUTPUT->action_icon(new moodle_url('/admin/qbehaviours.php',
array($action => $behaviour, 'sesskey' => sesskey())),
new pix_icon($icon, $alt, 'moodle', array('title' => '')),
null, array('title' => $tip)) . ' ';
}
+266 -248
View File
@@ -1,293 +1,311 @@
<?php
// Allows the admin to manage question types.
require_once(dirname(__FILE__) . '/../config.php');
require_once($CFG->libdir . '/questionlib.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->libdir . '/tablelib.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/>.
/// Check permissions.
require_login();
$systemcontext = get_context_instance(CONTEXT_SYSTEM);
require_capability('moodle/question:config', $systemcontext);
$canviewreports = has_capability('report/questioninstances:view', $systemcontext);
/**
* Allows the admin to manage question types.
*
* @package moodlecore
* @subpackage questionbank
* @copyright 2008 Tim Hunt
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
admin_externalpage_setup('manageqtypes');
/// Get some data we will need - question counts and which types are needed.
$counts = $DB->get_records_sql("
SELECT qtype, COUNT(1) as numquestions, SUM(hidden) as numhidden
FROM {question} GROUP BY qtype", array());
$needed = array();
foreach ($QTYPES as $qtypename => $qtype) {
if (!isset($counts[$qtypename])) {
$counts[$qtypename] = new stdClass;
$counts[$qtypename]->numquestions = 0;
$counts[$qtypename]->numhidden = 0;
}
$needed[$qtypename] = $counts[$qtypename]->numquestions > 0;
$counts[$qtypename]->numquestions -= $counts[$qtypename]->numhidden;
require_once(dirname(__FILE__) . '/../config.php');
require_once($CFG->libdir . '/questionlib.php');
require_once($CFG->libdir . '/adminlib.php');
require_once($CFG->libdir . '/pluginlib.php');
require_once($CFG->libdir . '/tablelib.php');
// Check permissions.
require_login();
$systemcontext = get_context_instance(CONTEXT_SYSTEM);
require_capability('moodle/question:config', $systemcontext);
$canviewreports = has_capability('report/questioninstances:view', $systemcontext);
admin_externalpage_setup('manageqtypes');
$thispageurl = new moodle_url('/admin/qtypes.php');
$qtypes = question_bank::get_all_qtypes();
$pluginmanager = plugin_manager::instance();
// Get some data we will need - question counts and which types are needed.
$counts = $DB->get_records_sql("
SELECT qtype, COUNT(1) as numquestions, SUM(hidden) as numhidden
FROM {question} GROUP BY qtype", array());
$needed = array();
foreach ($qtypes as $qtypename => $qtype) {
if (!isset($counts[$qtypename])) {
$counts[$qtypename] = new stdClass;
$counts[$qtypename]->numquestions = 0;
$counts[$qtypename]->numhidden = 0;
}
$needed['missingtype'] = true; // The system needs the missing question type.
foreach ($QTYPES as $qtypename => $qtype) {
foreach ($qtype->requires_qtypes() as $reqtype) {
$needed[$reqtype] = true;
}
$needed[$qtypename] = $counts[$qtypename]->numquestions > 0 ||
$pluginmanager->other_plugins_that_require($qtype->plugin_name());
$counts[$qtypename]->numquestions -= $counts[$qtypename]->numhidden;
}
$needed['missingtype'] = true; // The system needs the missing question type.
foreach ($counts as $qtypename => $count) {
if (!isset($qtypes[$qtypename])) {
$counts['missingtype']->numquestions += $count->numquestions - $count->numhidden;
$counts['missingtype']->numhidden += $count->numhidden;
}
foreach ($counts as $qtypename => $count) {
if (!isset($QTYPES[$qtypename])) {
$counts['missingtype']->numquestions += $count->numquestions - $count->numhidden;
$counts['missingtype']->numhidden += $count->numhidden;
}
}
// Work of the correct sort order.
$config = get_config('question');
$sortedqtypes = array();
foreach ($qtypes as $qtypename => $qtype) {
$sortedqtypes[$qtypename] = $qtype->local_name();
}
$sortedqtypes = question_bank::sort_qtype_array($sortedqtypes, $config);
// Process actions ============================================================
// Disable.
if (($disable = optional_param('disable', '', PARAM_PLUGIN)) && confirm_sesskey()) {
if (!isset($qtypes[$disable])) {
print_error('unknownquestiontype', 'question', $thispageurl, $disable);
}
/// Work of the correct sort order.
$config = get_config('question');
$sortedqtypes = array();
foreach ($QTYPES as $qtypename => $qtype) {
$sortedqtypes[$qtypename] = $qtype->local_name();
}
$sortedqtypes = question_sort_qtype_array($sortedqtypes, $config);
set_config($disable . '_disabled', 1, 'question');
redirect($thispageurl);
}
/// Process actions ============================================================
// Disable.
if (($disable = optional_param('disable', '', PARAM_SAFEDIR)) && confirm_sesskey()) {
if (!isset($QTYPES[$disable])) {
print_error('unknownquestiontype', 'question', admin_url('qtypes.php'), $disable);
}
set_config($disable . '_disabled', 1, 'question');
redirect(admin_url('qtypes.php'));
// Enable.
if (($enable = optional_param('enable', '', PARAM_PLUGIN)) && confirm_sesskey()) {
if (!isset($qtypes[$enable])) {
print_error('unknownquestiontype', 'question', $thispageurl, $enable);
}
// Enable.
if (($enable = optional_param('enable', '', PARAM_SAFEDIR)) && confirm_sesskey()) {
if (!isset($QTYPES[$enable])) {
print_error('unknownquestiontype', 'question', admin_url('qtypes.php'), $enable);
}
if (!$QTYPES[$enable]->menu_name()) {
print_error('cannotenable', 'question', admin_url('qtypes.php'), $enable);
}
unset_config($enable . '_disabled', 'question');
redirect(admin_url('qtypes.php'));
if (!$qtypes[$enable]->menu_name()) {
print_error('cannotenable', 'question', $thispageurl, $enable);
}
// Move up in order.
if (($up = optional_param('up', '', PARAM_SAFEDIR)) && confirm_sesskey()) {
if (!isset($QTYPES[$up])) {
print_error('unknownquestiontype', 'question', admin_url('qtypes.php'), $up);
}
unset_config($enable . '_disabled', 'question');
redirect($thispageurl);
}
$neworder = question_reorder_qtypes($sortedqtypes, $up, -1);
question_save_qtype_order($neworder, $config);
redirect(admin_url('qtypes.php'));
// Move up in order.
if (($up = optional_param('up', '', PARAM_PLUGIN)) && confirm_sesskey()) {
if (!isset($qtypes[$up])) {
print_error('unknownquestiontype', 'question', $thispageurl, $up);
}
// Move down in order.
if (($down = optional_param('down', '', PARAM_SAFEDIR)) && confirm_sesskey()) {
if (!isset($QTYPES[$down])) {
print_error('unknownquestiontype', 'question', admin_url('qtypes.php'), $down);
}
$neworder = question_reorder_qtypes($sortedqtypes, $up, -1);
question_save_qtype_order($neworder, $config);
redirect($thispageurl);
}
$neworder = question_reorder_qtypes($sortedqtypes, $down, +1);
question_save_qtype_order($neworder, $config);
redirect(admin_url('qtypes.php'));
// Move down in order.
if (($down = optional_param('down', '', PARAM_PLUGIN)) && confirm_sesskey()) {
if (!isset($qtypes[$down])) {
print_error('unknownquestiontype', 'question', $thispageurl, $down);
}
// Delete.
if (($delete = optional_param('delete', '', PARAM_SAFEDIR)) && confirm_sesskey()) {
// Check it is OK to delete this question type.
if ($delete == 'missingtype') {
print_error('cannotdeletemissingqtype', 'admin', admin_url('qtypes.php'));
}
$neworder = question_reorder_qtypes($sortedqtypes, $down, +1);
question_save_qtype_order($neworder, $config);
redirect($thispageurl);
}
if (!isset($QTYPES[$delete])) {
print_error('unknownquestiontype', 'question', admin_url('qtypes.php'), $delete);
}
// Delete.
if (($delete = optional_param('delete', '', PARAM_PLUGIN)) && confirm_sesskey()) {
// Check it is OK to delete this question type.
if ($delete == 'missingtype') {
print_error('cannotdeletemissingqtype', 'question', $thispageurl);
}
$qtypename = $QTYPES[$delete]->local_name();
if ($counts[$delete]->numquestions + $counts[$delete]->numhidden > 0) {
print_error('cannotdeleteqtypeinuse', 'admin', admin_url('qtypes.php'), $qtypename);
}
if (!isset($qtypes[$delete])) {
print_error('unknownquestiontype', 'question', $thispageurl, $delete);
}
if ($needed[$delete] > 0) {
print_error('cannotdeleteqtypeneeded', 'admin', admin_url('qtypes.php'), $qtypename);
}
$qtypename = $qtypes[$delete]->local_name();
if ($counts[$delete]->numquestions + $counts[$delete]->numhidden > 0) {
print_error('cannotdeleteqtypeinuse', 'question', $thispageurl, $qtypename);
}
// If not yet confirmed, display a confirmation message.
if (!optional_param('confirm', '', PARAM_BOOL)) {
$qtypename = $QTYPES[$delete]->local_name();
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('deleteqtypeareyousure', 'admin', $qtypename));
echo $OUTPUT->confirm(get_string('deleteqtypeareyousuremessage', 'admin', $qtypename),
admin_url('qtypes.php?delete=' . $delete . '&confirm=1'),
admin_url('qtypes.php'));
echo $OUTPUT->footer();
exit;
}
if ($needed[$delete] > 0) {
print_error('cannotdeleteqtypeneeded', 'question', $thispageurl, $qtypename);
}
// Do the deletion.
// If not yet confirmed, display a confirmation message.
if (!optional_param('confirm', '', PARAM_BOOL)) {
$qtypename = $qtypes[$delete]->local_name();
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('deletingqtype', 'admin', $qtypename));
// Delete any configuration records.
if (!unset_all_config_for_plugin('qtype_' . $delete)) {
echo $OUTPUT->notification(get_string('errordeletingconfig', 'admin', 'qtype_' . $delete));
}
unset_config($delete . '_disabled', 'question');
unset_config($delete . '_sortorder', 'question');
// Then the tables themselves
drop_plugin_tables($delete, $QTYPES[$delete]->plugin_dir() . '/db/install.xml', false);
// Remove event handlers and dequeue pending events
events_uninstall('qtype/' . $delete);
$a->qtype = $qtypename;
$a->directory = $QTYPES[$delete]->plugin_dir();
echo $OUTPUT->box(get_string('qtypedeletefiles', 'admin', $a), 'generalbox', 'notice');
echo $OUTPUT->continue_button(admin_url('qtypes.php'));
echo $OUTPUT->heading(get_string('deleteqtypeareyousure', 'question', $qtypename));
echo $OUTPUT->confirm(get_string('deleteqtypeareyousuremessage', 'question', $qtypename),
new moodle_url($thispageurl, array('delete' => $delete, 'confirm' => 1)),
$thispageurl);
echo $OUTPUT->footer();
exit;
}
// End of process actions ==================================================
/// Print the page heading.
// Do the deletion.
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('manageqtypes', 'admin'));
echo $OUTPUT->heading(get_string('deletingqtype', 'question', $qtypename));
/// Set up the table.
$table = new flexible_table('qtypeadmintable');
$table->define_columns(array('questiontype', 'numquestions', 'version', 'requires',
'availableto', 'delete', 'settings'));
$table->define_headers(array(get_string('questiontype', 'admin'), get_string('numquestions', 'admin'),
get_string('version'), get_string('requires', 'admin'), get_string('availableq', 'question'),
get_string('delete'), get_string('settings')));
$table->set_attribute('id', 'qtypes');
$table->set_attribute('class', 'generaltable generalbox boxaligncenter boxwidthwide');
$table->setup();
/// Add a row for each question type.
$createabletypes = question_type_menu();
foreach ($sortedqtypes as $qtypename => $localname) {
$qtype = $QTYPES[$qtypename];
$row = array();
// Question icon and name.
$fakequestion = new stdClass;
$fakequestion->qtype = $qtypename;
$icon = print_question_icon($fakequestion, true);
$row[] = $icon . ' ' . $localname;
// Number of questions of this type.
if ($counts[$qtypename]->numquestions + $counts[$qtypename]->numhidden > 0) {
if ($counts[$qtypename]->numhidden > 0) {
$strcount = get_string('numquestionsandhidden', 'admin', $counts[$qtypename]);
} else {
$strcount = $counts[$qtypename]->numquestions;
}
if ($canviewreports) {
$row[] = '<a href="' . admin_url('/report/questioninstances/index.php?qtype=' . $qtypename) .
'" title="' . get_string('showdetails', 'admin') . '">' . $strcount . '</a>';
} else {
$strcount;
}
} else {
$row[] = 0;
}
// Question version number.
$version = get_config('qtype_' . $qtypename, 'version');
if ($version) {
$row[] = $version;
} else {
$row[] = '<span class="disabled">' . get_string('nodatabase', 'admin') . '</span>';
}
// Other question types required by this one.
$requiredtypes = $qtype->requires_qtypes();
$strtypes = array();
if (!empty($requiredtypes)) {
foreach ($requiredtypes as $required) {
$strtypes[] = $QTYPES[$required]->local_name();
}
$row[] = implode(', ', $strtypes);
} else {
$row[] = '';
}
// Are people allowed to create new questions of this type?
$rowclass = '';
if ($qtype->menu_name()) {
$createable = isset($createabletypes[$qtypename]);
$icons = enable_disable_button($qtypename, $createable);
if (!$createable) {
$rowclass = 'dimmed_text';
}
} else {
$icons = '<img src="' . $OUTPUT->pix_url('spacer') . '" alt="" class="spacer" />';
}
// Move icons.
$icons .= icon_html('up', $qtypename, 't/up', get_string('up'), '');
$icons .= icon_html('down', $qtypename, 't/down', get_string('down'), '');
$row[] = $icons;
// Delete link, if available.
if ($needed[$qtypename]) {
$row[] = '';
} else {
$row[] = '<a href="' . admin_url('qtypes.php?delete=' . $qtypename .
'&amp;sesskey=' . sesskey()) . '" title="' .
get_string('uninstallqtype', 'admin') . '">' . get_string('delete') . '</a>';
}
// Settings link, if available.
$settings = admin_get_root()->locate('qtypesetting' . $qtypename);
if ($settings instanceof admin_externalpage) {
$row[] = '<a href="' . $settings->url .
'">' . get_string('settings') . '</a>';
} else if ($settings instanceof admin_settingpage) {
$row[] = '<a href="' . admin_url('settings.php?section=qtypesetting' . $qtypename) .
'">' . get_string('settings') . '</a>';
} else {
$row[] = '';
}
$table->add_data($row, $rowclass);
// Delete any configuration records.
if (!unset_all_config_for_plugin('qtype_' . $delete)) {
echo $OUTPUT->notification(get_string('errordeletingconfig', 'admin', 'qtype_' . $delete));
}
unset_config($delete . '_disabled', 'question');
unset_config($delete . '_sortorder', 'question');
$table->finish_output();
// Then the tables themselves
drop_plugin_tables($delete, $qtypes[$delete]->plugin_dir() . '/db/install.xml', false);
// Remove event handlers and dequeue pending events
events_uninstall('qtype_' . $delete);
$a->qtype = $qtypename;
$a->directory = $qtypes[$delete]->plugin_dir();
echo $OUTPUT->box(get_string('qtypedeletefiles', 'question', $a), 'generalbox', 'notice');
echo $OUTPUT->continue_button($thispageurl);
echo $OUTPUT->footer();
function admin_url($endbit) {
global $CFG;
return $CFG->wwwroot . '/' . $CFG->admin . '/' . $endbit;
exit;
}
function enable_disable_button($qtypename, $createable) {
if ($createable) {
return icon_html('disable', $qtypename, 'i/hide', get_string('enabled', 'question'), get_string('disable'));
// End of process actions ==================================================
// Print the page heading.
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('manageqtypes', 'admin'));
// Set up the table.
$table = new flexible_table('qtypeadmintable');
$table->define_baseurl($thispageurl);
$table->define_columns(array('questiontype', 'numquestions', 'version', 'requires',
'availableto', 'delete', 'settings'));
$table->define_headers(array(get_string('questiontype', 'question'), get_string('numquestions', 'question'),
get_string('version'), get_string('requires', 'admin'), get_string('availableq', 'question'),
get_string('delete'), get_string('settings')));
$table->set_attribute('id', 'qtypes');
$table->set_attribute('class', 'generaltable generalbox boxaligncenter boxwidthwide');
$table->setup();
// Add a row for each question type.
$createabletypes = question_bank::get_creatable_qtypes();
foreach ($sortedqtypes as $qtypename => $localname) {
$qtype = $qtypes[$qtypename];
$row = array();
// Question icon and name.
$fakequestion = new stdClass;
$fakequestion->qtype = $qtypename;
$icon = print_question_icon($fakequestion, true);
$row[] = $icon . ' ' . $localname;
// Number of questions of this type.
if ($counts[$qtypename]->numquestions + $counts[$qtypename]->numhidden > 0) {
if ($counts[$qtypename]->numhidden > 0) {
$strcount = get_string('numquestionsandhidden', 'question', $counts[$qtypename]);
} else {
$strcount = $counts[$qtypename]->numquestions;
}
if ($canviewreports) {
$row[] = html_writer::link(new moodle_url('/admin/report/questioninstances/index.php',
array('qtype' => $qtypename)), $strcount, array('title' => get_string('showdetails', 'admin')));
} else {
$strcount;
}
} else {
return icon_html('enable', $qtypename, 'i/show', get_string('disabled', 'question'), get_string('enable'));
$row[] = 0;
}
// Question version number.
$version = get_config('qtype_' . $qtypename, 'version');
if ($version) {
$row[] = $version;
} else {
$row[] = html_writer::tag('span', get_string('nodatabase', 'admin'), array('class' => 'disabled'));
}
// Other question types required by this one.
$plugin = $pluginmanager->get_plugin_info($qtype->plugin_name());
$requiredtypes = $plugin->get_other_required_plugins();
$strtypes = array();
if (!empty($requiredtypes)) {
foreach ($requiredtypes as $required => $notused) {
$strtypes[] = $pluginmanager->plugin_name($required);
}
$row[] = implode(', ', $strtypes);
} else {
$row[] = '';
}
// Are people allowed to create new questions of this type?
$rowclass = '';
if ($qtype->menu_name()) {
$createable = isset($createabletypes[$qtypename]);
$icons = question_types_enable_disable_icons($qtypename, $createable);
if (!$createable) {
$rowclass = 'dimmed_text';
}
} else {
$icons = $OUTPUT->spacer() . ' ';
}
// Move icons.
$icons .= question_type_icon_html('up', $qtypename, 't/up', get_string('up'), '');
$icons .= question_type_icon_html('down', $qtypename, 't/down', get_string('down'), '');
$row[] = $icons;
// Delete link, if available.
if ($needed[$qtypename]) {
$row[] = '';
} else {
$row[] = html_writer::link(new moodle_url($thispageurl,
array('delete' => $qtypename, 'sesskey' => sesskey())), get_string('delete'),
array('title' => get_string('uninstallqtype', 'question')));
}
// Settings link, if available.
$settings = admin_get_root()->locate('qtypesetting' . $qtypename);
if ($settings instanceof admin_externalpage) {
$row[] = html_writer::link($settings->url, get_string('settings'));
} else if ($settings instanceof admin_settingpage) {
$row[] = html_writer::link(new moodle_url('/admin/settings.php',
array('section' => 'qtypesetting' . $qtypename)), get_string('settings'));
} else {
$row[] = '';
}
$table->add_data($row, $rowclass);
}
$table->finish_output();
echo $OUTPUT->footer();
function question_types_enable_disable_icons($qtypename, $createable) {
if ($createable) {
return question_type_icon_html('disable', $qtypename, 'i/hide',
get_string('enabled', 'question'), get_string('disable'));
} else {
return question_type_icon_html('enable', $qtypename, 'i/show',
get_string('disabled', 'question'), get_string('enable'));
}
}
function icon_html($action, $qtypename, $icon, $alt, $tip) {
function question_type_icon_html($action, $qtypename, $icon, $alt, $tip) {
global $OUTPUT;
if ($tip) {
$tip = 'title="' . $tip . '" ';
}
$html = ' <form action="' . admin_url('qtypes.php') . '" method="post"><div>';
$html .= '<input type="hidden" name="sesskey" value="' . sesskey() . '" />';
$html .= '<input type="image" name="' . $action . '" value="' . $qtypename .
'" src="' . $OUTPUT->pix_url($icon) . '" alt="' . $alt . '" ' . $tip . '/>';
$html .= '</div></form>';
return $html;
return $OUTPUT->action_icon(new moodle_url('/admin/qtypes.php',
array($action => $qtypename, 'sesskey' => sesskey())),
new pix_icon($icon, $alt, 'moodle', array('title' => '')),
null, array('title' => $tip)) . ' ';
}
+2 -2
View File
@@ -47,7 +47,7 @@ $error = optional_param('error', '', PARAM_ALPHANUM);
admin_externalpage_setup('registrationindex');
if (!empty($error) and $error == 'urlalreadyexist') {
throw new moodle_exception('urlalreadyregistered', 'hub',
throw new moodle_exception('urlalreadyregistered', 'hub',
$CFG->wwwroot . '/' . $CFG->admin . '/registration/index.php');
}
@@ -85,7 +85,7 @@ if (!empty($registeredhub) and $registeredhub->token == $token) {
echo $OUTPUT->footer();
} else {
throw new moodle_exception('wrongtoken', 'hub',
throw new moodle_exception('wrongtoken', 'hub',
$CFG->wwwroot . '/' . $CFG->admin . '/registration/index.php');
}
+4 -4
View File
@@ -136,8 +136,8 @@ class hub_selector_form extends moodleform {
$options = array();
foreach ($hubs as $hub) {
//to not display a name longer than 100 character (too big)
if (strlen($hub['name']) > 100) {
$hubname = substr($hub['name'], 0, 100);
if (textlib::strlen($hub['name']) > 100) {
$hubname = textlib::substr($hub['name'], 0, 100);
$hubname = $hubname . "...";
} else {
$hubname = $hub['name'];
@@ -203,7 +203,7 @@ class site_registration_form extends moodleform {
$cleanhuburl = clean_param($huburl, PARAM_ALPHANUMEXT);
$sitename = get_config('hub', 'site_name_' . $cleanhuburl);
if ($sitename === false) {
$sitename = $site->fullname;
$sitename = format_string($site->fullname, true, array('context' => get_context_instance(CONTEXT_COURSE, SITEID)));
}
$sitedescription = get_config('hub', 'site_description_' . $cleanhuburl);
if ($sitedescription === false) {
@@ -283,7 +283,7 @@ class site_registration_form extends moodleform {
$mform->addHelpButton('urlstring', 'siteurl', 'hub');
$languages = get_string_manager()->get_list_of_languages();
textlib_get_instance()->asort($languages);
collatorlib::asort($languages);
$mform->addElement('select', 'language', get_string('sitelang', 'hub'),
$languages);
$mform->setType('language', PARAM_ALPHANUMEXT);
+2 -2
View File
@@ -148,12 +148,12 @@ if (empty($cancel) and $unregistration and !$confirm) {
$moodleorghub = $registrationmanager->get_registeredhub(HUB_MOODLEORGHUBURL);
if (!empty($moodleorghub)) {
$registeredonmoodleorg = true;
}
}
echo $OUTPUT->heading(get_string('registeron', 'hub'), 3, 'main');
echo $renderer->registrationselector($registeredonmoodleorg);
if (extension_loaded('xmlrpc')) {
if (extension_loaded('xmlrpc')) {
$hubs = $registrationmanager->get_registered_on_hubs();
if (!empty($hubs)) {
echo $OUTPUT->heading(get_string('registeredon', 'hub'), 3, 'main');
+927
View File
@@ -0,0 +1,927 @@
<?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/>.
/**
* Renderer for core_admin subsystem
*
* @package core
* @subpackage admin
* @copyright 2011 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
require_once($CFG->libdir . '/pluginlib.php');
/**
* Standard HTML output renderer for core_admin subsystem
*/
class core_admin_renderer extends plugin_renderer_base {
/**
* Display the 'Do you acknowledge the terms of the GPL' page. The first page
* during install.
* @return string HTML to output.
*/
public function install_licence_page() {
global $CFG;
$output = '';
$copyrightnotice = text_to_html(get_string('gpl3'));
$copyrightnotice = str_replace('target="_blank"', 'onclick="this.target=\'_blank\'"', $copyrightnotice); // extremely ugly validation hack
$continue = new single_button(new moodle_url('/admin/index.php', array('lang'=>$CFG->lang, 'agreelicense'=>1)), get_string('continue'), 'get');
$output .= $this->header();
$output .= $this->heading('<a href="http://moodle.org">Moodle</a> - Modular Object-Oriented Dynamic Learning Environment');
$output .= $this->heading(get_string('copyrightnotice'));
$output .= $this->box($copyrightnotice, 'copyrightnotice');
$output .= html_writer::empty_tag('br');
$output .= $this->confirm(get_string('doyouagree'), $continue, "http://docs.moodle.org/dev/License");
$output .= $this->footer();
return $output;
}
/**
* Display the 'environment check' page that is displayed during install.
* @param int $maturity
* @param boolean $envstatus final result of the check (true/false)
* @param array $environment_results array of results gathered
* @param string $release moodle release
* @return string HTML to output.
*/
public function install_environment_page($maturity, $envstatus, $environment_results, $release) {
global $CFG;
$output = '';
$output .= $this->header();
$output .= $this->maturity_warning($maturity);
$output .= $this->heading("Moodle $release");
$output .= $this->release_notes_link();
$output .= $this->environment_check_table($envstatus, $environment_results);
if (!$envstatus) {
$output .= $this->upgrade_reload(new moodle_url('/admin/index.php', array('agreelicense' => 1, 'lang' => $CFG->lang)));
} else {
$output .= $this->notification(get_string('environmentok', 'admin'), 'notifysuccess');
$output .= $this->continue_button(new moodle_url('/admin/index.php', array('agreelicense'=>1, 'confirmrelease'=>1, 'lang'=>$CFG->lang)));
}
$output .= $this->footer();
return $output;
}
/**
* Display the 'You are about to upgrade Moodle' page. The first page
* during upgrade.
* @param string $strnewversion
* @param int $maturity
* @return string HTML to output.
*/
public function upgrade_confirm_page($strnewversion, $maturity) {
$output = '';
$continueurl = new moodle_url('index.php', array('confirmupgrade' => 1));
$cancelurl = new moodle_url('index.php');
$output .= $this->header();
$output .= $this->maturity_warning($maturity);
$output .= $this->confirm(get_string('upgradesure', 'admin', $strnewversion), $continueurl, $cancelurl);
$output .= $this->footer();
return $output;
}
/**
* Display the environment page during the upgrade process.
* @param string $release
* @param boolean $envstatus final result of env check (true/false)
* @param array $environment_results array of results gathered
* @return string HTML to output.
*/
public function upgrade_environment_page($release, $envstatus, $environment_results) {
global $CFG;
$output = '';
$output .= $this->header();
$output .= $this->heading("Moodle $release");
$output .= $this->release_notes_link();
$output .= $this->environment_check_table($envstatus, $environment_results);
if (!$envstatus) {
$output .= $this->upgrade_reload(new moodle_url('/admin/index.php'), array('confirmupgrade' => 1));
} else {
$output .= $this->notification(get_string('environmentok', 'admin'), 'notifysuccess');
if (empty($CFG->skiplangupgrade) and current_language() !== 'en') {
$output .= $this->box(get_string('langpackwillbeupdated', 'admin'), 'generalbox', 'notice');
}
$output .= $this->continue_button(new moodle_url('/admin/index.php', array('confirmupgrade' => 1, 'confirmrelease' => 1)));
}
$output .= $this->footer();
return $output;
}
/**
* Display the upgrade page that lists all the plugins that require attention.
* @param plugin_manager $pluginman provides information about the plugins.
* @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, $version, $showallplugins, $reloadurl, $continueurl) {
$output = '';
$output .= $this->header();
$output .= $this->box_start('generalbox');
$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->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');
}
$output .= $this->footer();
return $output;
}
/**
* Display the admin notifications page.
* @param int $maturity
* @param bool $insecuredataroot warn dataroot is invalid
* @param bool $errorsdisplayed warn invalid dispaly error setting
* @param bool $cronoverdue warn cron not running
* @param bool $dbproblems warn db has problems
* @param bool $maintenancemode warn in maintenance mode
* @return string HTML to output.
*/
public function admin_notifications_page($maturity, $insecuredataroot, $errorsdisplayed,
$cronoverdue, $dbproblems, $maintenancemode) {
$output = '';
$output .= $this->header();
$output .= $this->maturity_info($maturity);
$output .= $this->insecure_dataroot_warning($insecuredataroot);
$output .= $this->display_errors_warning($errorsdisplayed);
$output .= $this->cron_overdue_warning($errorsdisplayed);
$output .= $this->db_problems($dbproblems);
$output .= $this->maintenance_mode_warning($maintenancemode);
//////////////////////////////////////////////////////////////////////////////////////////////////
//// IT IS ILLEGAL AND A VIOLATION OF THE GPL TO HIDE, REMOVE OR MODIFY THIS COPYRIGHT NOTICE ///
$output .= $this->moodle_copyright();
//////////////////////////////////////////////////////////////////////////////////////////////////
$output .= $this->footer();
return $output;
}
/**
* Display the plugin management page (admin/plugins.php).
* @param plugin_manager $pluginman
* @return string HTML to output.
*/
public function plugin_management_page(plugin_manager $pluginman) {
$output = '';
$output .= $this->header();
$output .= $this->heading(get_string('pluginsoverview', 'core_admin'));
$output .= $this->box_start('generalbox');
$output .= $this->plugins_control_panel($pluginman);
$output .= $this->box_end();
$output .= $this->footer();
return $output;
}
/**
* Display the plugin management page (admin/environment.php).
* @param array $versions
* @param string $version
* @param boolean $envstatus final result of env check (true/false)
* @param array $environment_results array of results gathered
* @return string HTML to output.
*/
public function environment_check_page($versions, $version, $envstatus, $environment_results) {
$output = '';
$output .= $this->header();
// Print the component download link
$output .= html_writer::tag('div', html_writer::link(
new moodle_url('/admin/environment.php', array('action' => 'updatecomponent', 'sesskey' => sesskey())),
get_string('updatecomponent', 'admin')),
array('class' => 'reportlink'));
// Heading.
$output .= $this->heading(get_string('environment', 'admin'));
// Box with info and a menu to choose the version.
$output .= $this->box_start();
$output .= html_writer::tag('div', get_string('adminhelpenvironment'));
$select = new single_select(new moodle_url('/admin/environment.php'), 'version', $versions, $version, null);
$select->label = get_string('moodleversion');
$output .= $this->render($select);
$output .= $this->box_end();
// The results
$output .= $this->environment_check_table($envstatus, $environment_results);
$output .= $this->footer();
return $output;
}
/**
* Output a warning message, of the type that appears on the admin notifications page.
* @param string $message the message to display.
* @param string $type type class
* @return string HTML to output.
*/
protected function warning($message, $type = 'warning') {
return $this->box($message, 'generalbox admin' . $type);
}
/**
* Render an appropriate message if dataroot is insecure.
* @param bool $insecuredataroot
* @return string HTML to output.
*/
protected function insecure_dataroot_warning($insecuredataroot) {
global $CFG;
if ($insecuredataroot == INSECURE_DATAROOT_WARNING) {
return $this->warning(get_string('datarootsecuritywarning', 'admin', $CFG->dataroot));
} else if ($insecuredataroot == INSECURE_DATAROOT_ERROR) {
return $this->warning(get_string('datarootsecurityerror', 'admin', $CFG->dataroot), 'error');
} else {
return '';
}
}
/**
* Render an appropriate message if dataroot is insecure.
* @param bool $errorsdisplayed
* @return string HTML to output.
*/
protected function display_errors_warning($errorsdisplayed) {
if (!$errorsdisplayed) {
return '';
}
return $this->warning(get_string('displayerrorswarning', 'admin'));
}
/**
* Render an appropriate message if cron has not been run recently.
* @param bool $cronoverdue
* @return string HTML to output.
*/
public function cron_overdue_warning($cronoverdue) {
if (!$cronoverdue) {
return '';
}
return $this->warning(get_string('cronwarning', 'admin') . '&nbsp;' .
$this->help_icon('cron', 'admin'));
}
/**
* Render an appropriate message if there are any problems with the DB set-up.
* @param bool $dbproblems
* @return string HTML to output.
*/
public function db_problems($dbproblems) {
if (!$dbproblems) {
return '';
}
return $this->warning($dbproblems);
}
/**
* Render an appropriate message if the site in in maintenance mode.
* @param bool $maintenancemode
* @return string HTML to output.
*/
public function maintenance_mode_warning($maintenancemode) {
if (!$maintenancemode) {
return '';
}
return $this->warning(get_string('sitemaintenancewarning2', 'admin',
new moodle_url('/admin/settings.php', array('section' => 'maintenancemode'))));
}
/**
* Display a warning about installing development code if necesary.
* @param int $maturity
* @return string HTML to output.
*/
protected function maturity_warning($maturity) {
if ($maturity == MATURITY_STABLE) {
return ''; // No worries.
}
$maturitylevel = get_string('maturity' . $maturity, 'admin');
return $this->box(
$this->container(get_string('maturitycorewarning', 'admin', $maturitylevel)) .
$this->container($this->doc_link('admin/versions', get_string('morehelp'))),
'generalbox maturitywarning');
}
/**
* Output the copyright notice.
* @return string HTML to output.
*/
protected function moodle_copyright() {
global $CFG;
//////////////////////////////////////////////////////////////////////////////////////////////////
//// IT IS ILLEGAL AND A VIOLATION OF THE GPL TO HIDE, REMOVE OR MODIFY THIS COPYRIGHT NOTICE ///
$copyrighttext = '<a href="http://moodle.org/">Moodle</a> '.
'<a href="http://docs.moodle.org/dev/Releases" title="'.$CFG->version.'">'.$CFG->release.'</a><br />'.
'Copyright &copy; 1999 onwards, Martin Dougiamas<br />'.
'and <a href="http://docs.moodle.org/dev/Credits">many other contributors</a>.<br />'.
'<a href="http://docs.moodle.org/dev/License">GNU Public License</a>';
//////////////////////////////////////////////////////////////////////////////////////////////////
return $this->box($copyrighttext, 'copyright');
}
/**
* Display a warning about installing development code if necesary.
* @param int $maturity
* @return string HTML to output.
*/
protected function maturity_info($maturity) {
if ($maturity == MATURITY_STABLE) {
return ''; // No worries.
}
$maturitylevel = get_string('maturity' . $maturity, 'admin');
return $this->box(
get_string('maturitycoreinfo', 'admin', $maturitylevel) . ' ' .
$this->doc_link('admin/versions', get_string('morehelp')),
'generalbox adminwarning maturityinfo');
}
/**
* Display a link to the release notes.
* @return string HTML to output.
*/
protected function release_notes_link() {
$releasenoteslink = get_string('releasenoteslink', 'admin', 'http://docs.moodle.org/dev/Releases');
$releasenoteslink = str_replace('target="_blank"', 'onclick="this.target=\'_blank\'"', $releasenoteslink); // extremely ugly validation hack
return $this->box($releasenoteslink, 'generalbox releasenoteslink');
}
/**
* Display the reload link that appears on several upgrade/install pages.
* @return string HTML to output.
*/
function upgrade_reload($url) {
return html_writer::empty_tag('br') .
html_writer::tag('div',
html_writer::link($url, $this->pix_icon('i/reload', '') .
get_string('reload'), array('title' => get_string('reload'))),
array('class' => 'continuebutton')) . html_writer::empty_tag('br');
}
/**
* Displays all known plugins and information about their installation or upgrade
*
* 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
*
* @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 = null) {
$plugininfo = $pluginman->get_plugins();
if (empty($plugininfo)) {
return '';
}
if (empty($options)) {
$options = array(
'full' => false,
);
}
$table = new html_table();
$table->id = 'plugins-check';
$table->head = array(
get_string('displayname', 'core_plugin'),
get_string('rootdir', 'core_plugin'),
get_string('source', 'core_plugin'),
get_string('versiondb', 'core_plugin'),
get_string('versiondisk', 'core_plugin'),
get_string('requires', 'core_plugin'),
get_string('status', 'core_plugin'),
);
$table->colclasses = array(
'displayname', 'rootdir', 'source', 'versiondb', 'versiondisk', 'requires', 'status',
);
$table->data = array();
$numofhighlighted = array(); // number of highlighted rows per this subsection
foreach ($plugininfo as $type => $plugins) {
$header = new html_table_cell($pluginman->plugintype_name_plural($type));
$header->header = true;
$header->colspan = count($table->head);
$header = new html_table_row(array($header));
$header->attributes['class'] = 'plugintypeheader type-' . $type;
$numofhighlighted[$type] = 0;
if (empty($plugins) and $options['full']) {
$msg = new html_table_cell(get_string('noneinstalled', 'core_plugin'));
$msg->colspan = count($table->head);
$row = new html_table_row(array($msg));
$row->attributes['class'] .= 'msg msg-noneinstalled';
$table->data[] = $header;
$table->data[] = $row;
continue;
}
$plugintyperows = array();
foreach ($plugins as $name => $plugin) {
$row = new html_table_row();
$row->attributes['class'] = 'type-' . $plugin->type . ' name-' . $plugin->type . '_' . $plugin->name;
if ($this->page->theme->resolve_image_location('icon', $plugin->type . '_' . $plugin->name)) {
$icon = $this->output->pix_icon('icon', '', $plugin->type . '_' . $plugin->name, array('class' => 'smallicon pluginicon'));
} else {
$icon = $this->output->pix_icon('spacer', '', 'moodle', array('class' => 'smallicon pluginicon noicon'));
}
$displayname = $icon . ' ' . $plugin->displayname;
$displayname = new html_table_cell($displayname);
$rootdir = new html_table_cell($plugin->get_dir());
if ($isstandard = $plugin->is_standard()) {
$row->attributes['class'] .= ' standard';
$source = new html_table_cell(get_string('sourcestd', 'core_plugin'));
} else {
$row->attributes['class'] .= ' extension';
$source = new html_table_cell(get_string('sourceext', 'core_plugin'));
}
$versiondb = new html_table_cell($plugin->versiondb);
$versiondisk = new html_table_cell($plugin->versiondisk);
$statuscode = $plugin->get_status();
$row->attributes['class'] .= ' status-' . $statuscode;
$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));
$dependenciesok = $pluginman->are_dependencies_satisfied(
$plugin->get_other_required_plugins());
if ($isstandard and $statusisboring and $dependenciesok) {
if (empty($options['full'])) {
continue;
}
} else {
$numofhighlighted[$type]++;
}
$row->cells = array($displayname, $rootdir, $source,
$versiondb, $versiondisk, $requires, $status);
$plugintyperows[] = $row;
}
if (empty($numofhighlighted[$type]) and empty($options['full'])) {
continue;
}
$table->data[] = $header;
$table->data = array_merge($table->data, $plugintyperows);
}
$sumofhighlighted = array_sum($numofhighlighted);
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'])) {
$out .= html_writer::link(new moodle_url('/admin/index.php',
array('confirmupgrade' => 1, 'confirmrelease' => 1, 'showallplugins' => 1)),
get_string('nonehighlightedinfo', 'core_plugin'));
}
$out .= $this->output->container_end();
} else {
$out = $this->output->container_start('somehighlighted', 'plugins-check-info');
$out .= $this->output->heading(get_string('somehighlighted', 'core_plugin', $sumofhighlighted));
if (empty($options['full'])) {
$out .= html_writer::link(new moodle_url('/admin/index.php',
array('confirmupgrade' => 1, 'confirmrelease' => 1, 'showallplugins' => 1)),
get_string('somehighlightedinfo', 'core_plugin'));
}
$out .= $this->output->container_end();
}
if ($sumofhighlighted > 0 or $options['full']) {
$out .= html_writer::table($table);
}
return $out;
}
/**
* Formats the information that needs to go in the 'Requires' column.
* @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(plugin_information $plugin, plugin_manager $pluginman, $version) {
$requires = array();
if (!empty($plugin->versionrequires)) {
if ($plugin->versionrequires <= $version) {
$class = 'requires-ok';
} else {
$class = 'requires-failed';
}
$requires[] = html_writer::tag('li',
get_string('moodleversion', 'core_plugin', $plugin->versionrequires),
array('class' => $class));
}
foreach ($plugin->get_other_required_plugins() as $component => $requiredversion) {
$ok = true;
$otherplugin = $pluginman->get_plugin_info($component);
if (is_null($otherplugin)) {
$ok = false;
}
if ($requiredversion != ANY_VERSION and $otherplugin->versiondisk < $requiredversion) {
$ok = false;
}
if ($ok) {
$class = 'requires-ok';
} else {
$class = 'requires-failed';
}
if ($requiredversion != ANY_VERSION) {
$str = 'otherpluginversion';
} else {
$str = 'otherplugin';
}
$requires[] = html_writer::tag('li',
get_string($str, 'core_plugin',
array('component' => $component, 'version' => $requiredversion)),
array('class' => $class));
}
if (!$requires) {
return '';
}
return html_writer::tag('ul', implode("\n", $requires));
}
/**
* Displays all known plugins and links to manage them
*
* This default implementation renders all plugins into one big table.
*
* @param plugin_manager $pluginman provides information about the plugins.
* @return string HTML code
*/
public function plugins_control_panel(plugin_manager $pluginman) {
$plugininfo = $pluginman->get_plugins();
if (empty($plugininfo)) {
return '';
}
$table = new html_table();
$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('settings', 'core_plugin'),
get_string('uninstall','core_plugin'),
);
$table->colclasses = array(
'displayname', 'systemname', 'source', 'version', 'availability', 'settings', 'uninstall',
);
foreach ($plugininfo as $type => $plugins) {
$header = new html_table_cell($pluginman->plugintype_name_plural($type));
$header->header = true;
$header->colspan = count($table->head);
$header = new html_table_row(array($header));
$header->attributes['class'] = 'plugintypeheader type-' . $type;
$table->data[] = $header;
if (empty($plugins)) {
$msg = new html_table_cell(get_string('noneinstalled', 'core_plugin'));
$msg->colspan = count($table->head);
$row = new html_table_row(array($msg));
$row->attributes['class'] .= 'msg msg-noneinstalled';
$table->data[] = $row;
continue;
}
foreach ($plugins as $name => $plugin) {
$row = new html_table_row();
$row->attributes['class'] = 'type-' . $plugin->type . ' name-' . $plugin->type . '_' . $plugin->name;
if ($this->page->theme->resolve_image_location('icon', $plugin->type . '_' . $plugin->name)) {
$icon = $this->output->pix_icon('icon', '', $plugin->type . '_' . $plugin->name, array('class' => 'smallicon pluginicon'));
} else {
$icon = $this->output->pix_icon('spacer', '', 'moodle', array('class' => 'smallicon pluginicon noicon'));
}
if ($plugin->get_status() === plugin_manager::PLUGIN_STATUS_MISSING) {
$msg = html_writer::tag('span', get_string('status_missing', 'core_plugin'), array('class' => 'notifyproblem'));
$row->attributes['class'] .= ' missingfromdisk';
} else {
$msg = '';
}
$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';
$source = new html_table_cell(get_string('sourcestd', 'core_plugin'));
} else {
$row->attributes['class'] .= ' extension';
$source = new html_table_cell(get_string('sourceext', 'core_plugin'));
}
$version = new html_table_cell($plugin->versiondb);
$isenabled = $plugin->is_enabled();
if (is_null($isenabled)) {
$availability = new html_table_cell('');
} else if ($isenabled) {
$row->attributes['class'] .= ' enabled';
$icon = $this->output->pix_icon('i/hide', get_string('pluginenabled', 'core_plugin'));
$availability = new html_table_cell($icon . ' ' . get_string('pluginenabled', 'core_plugin'));
} else {
$row->attributes['class'] .= ' disabled';
$icon = $this->output->pix_icon('i/show', get_string('plugindisabled', 'core_plugin'));
$availability = new html_table_cell($icon . ' ' . get_string('plugindisabled', 'core_plugin'));
}
$settingsurl = $plugin->get_settings_url();
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();
$requriedby = $pluginman->other_plugins_that_require($plugin->component);
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 {
$uninstall = html_writer::link($uninstallurl, get_string('uninstall', 'core_plugin'));
$uninstall = new html_table_cell($uninstall);
}
$row->cells = array(
$displayname, $systemname, $source, $version, $availability, $settings, $uninstall
);
$table->data[] = $row;
}
}
return html_writer::table($table);
}
/**
* This function will render one beautiful table with all the environmental
* configuration and how it suits Moodle needs.
*
* @param boolean $result final result of the check (true/false)
* @param array $environment_results array of results gathered
* @return string HTML to output.
*/
public function environment_check_table($result, $environment_results) {
global $CFG;
// Table headers
$servertable = new html_table();//table for server checks
$servertable->head = array(
get_string('name'),
get_string('info'),
get_string('report'),
get_string('status'),
);
$servertable->align = array('center', 'center', 'left', 'center');
$servertable->wrap = array('nowrap', '', '', 'nowrap');
$servertable->size = array('10', 10, '100%', '10');
$servertable->attributes['class'] = 'environmenttable generaltable';
$serverdata = array('ok'=>array(), 'warn'=>array(), 'error'=>array());
$othertable = new html_table();//table for custom checks
$othertable->head = array(
get_string('info'),
get_string('report'),
get_string('status'),
);
$othertable->align = array('center', 'left', 'center');
$othertable->wrap = array('', '', 'nowrap');
$othertable->size = array(10, '100%', '10');
$othertable->attributes['class'] = 'environmenttable generaltable';
$otherdata = array('ok'=>array(), 'warn'=>array(), 'error'=>array());
// Iterate over each environment_result
$continue = true;
foreach ($environment_results as $environment_result) {
$errorline = false;
$warningline = false;
$stringtouse = '';
if ($continue) {
$type = $environment_result->getPart();
$info = $environment_result->getInfo();
$status = $environment_result->getStatus();
$error_code = $environment_result->getErrorCode();
// Process Report field
$rec = new stdClass();
// Something has gone wrong at parsing time
if ($error_code) {
$stringtouse = 'environmentxmlerror';
$rec->error_code = $error_code;
$status = get_string('error');
$errorline = true;
$continue = false;
}
if ($continue) {
if ($rec->needed = $environment_result->getNeededVersion()) {
// We are comparing versions
$rec->current = $environment_result->getCurrentVersion();
if ($environment_result->getLevel() == 'required') {
$stringtouse = 'environmentrequireversion';
} else {
$stringtouse = 'environmentrecommendversion';
}
} else if ($environment_result->getPart() == 'custom_check') {
// We are checking installed & enabled things
if ($environment_result->getLevel() == 'required') {
$stringtouse = 'environmentrequirecustomcheck';
} else {
$stringtouse = 'environmentrecommendcustomcheck';
}
} else if ($environment_result->getPart() == 'php_setting') {
if ($status) {
$stringtouse = 'environmentsettingok';
} else if ($environment_result->getLevel() == 'required') {
$stringtouse = 'environmentmustfixsetting';
} else {
$stringtouse = 'environmentshouldfixsetting';
}
} else {
if ($environment_result->getLevel() == 'required') {
$stringtouse = 'environmentrequireinstall';
} else {
$stringtouse = 'environmentrecommendinstall';
}
}
// Calculate the status value
if ($environment_result->getBypassStr() != '') { //Handle bypassed result (warning)
$status = get_string('bypassed');
$warningline = true;
} else if ($environment_result->getRestrictStr() != '') { //Handle restricted result (error)
$status = get_string('restricted');
$errorline = true;
} else {
if ($status) { //Handle ok result (ok)
$status = get_string('ok');
} else {
if ($environment_result->getLevel() == 'optional') {//Handle check result (warning)
$status = get_string('check');
$warningline = true;
} else { //Handle error result (error)
$status = get_string('check');
$errorline = true;
}
}
}
}
// Build the text
$linkparts = array();
$linkparts[] = 'admin/environment';
$linkparts[] = $type;
if (!empty($info)){
$linkparts[] = $info;
}
if (empty($CFG->docroot)) {
$report = get_string($stringtouse, 'admin', $rec);
} else {
$report = $this->doc_link(join($linkparts, '/'), get_string($stringtouse, 'admin', $rec));
}
// Format error or warning line
if ($errorline || $warningline) {
$messagetype = $errorline? 'error':'warn';
} else {
$messagetype = 'ok';
}
$status = '<span class="'.$messagetype.'">'.$status.'</span>';
// Here we'll store all the feedback found
$feedbacktext = '';
// Append the feedback if there is some
$feedbacktext .= $environment_result->strToReport($environment_result->getFeedbackStr(), $messagetype);
//Append the bypass if there is some
$feedbacktext .= $environment_result->strToReport($environment_result->getBypassStr(), 'warn');
//Append the restrict if there is some
$feedbacktext .= $environment_result->strToReport($environment_result->getRestrictStr(), 'error');
$report .= $feedbacktext;
// Add the row to the table
if ($environment_result->getPart() == 'custom_check'){
$otherdata[$messagetype][] = array ($info, $report, $status);
} else {
$serverdata[$messagetype][] = array ($type, $info, $report, $status);
}
}
}
//put errors first in
$servertable->data = array_merge($serverdata['error'], $serverdata['warn'], $serverdata['ok']);
$othertable->data = array_merge($otherdata['error'], $otherdata['warn'], $otherdata['ok']);
// Print table
$output = '';
$output .= $this->heading(get_string('serverchecks', 'admin'));
$output .= html_writer::table($servertable);
if (count($othertable->data)){
$output .= $this->heading(get_string('customcheck', 'admin'));
$output .= html_writer::table($othertable);
}
// Finally, if any error has happened, print the summary box
if (!$result) {
$output .= $this->box(get_string('environmenterrortodo', 'admin'), 'environmentbox errorbox');
}
return $output;
}
}
-64
View File
@@ -1,64 +0,0 @@
<?php
/// Search and replace strings throughout all texts in the whole database
define('NO_OUTPUT_BUFFERING', true);
require_once('../config.php');
require_once($CFG->dirroot.'/course/lib.php');
require_once($CFG->libdir.'/adminlib.php');
admin_externalpage_setup('replace');
$search = optional_param('search', '', PARAM_RAW);
$replace = optional_param('replace', '', PARAM_RAW);
###################################################################
echo $OUTPUT->header();
echo $OUTPUT->heading('Search and replace text throughout the whole database');
if (!data_submitted() or !$search or !$replace or !confirm_sesskey()) { /// Print a form
echo $OUTPUT->box_start();
echo '<div class="mdl-align">';
echo '<form action="replace.php" method="post">';
echo '<input type="hidden" name="sesskey" value="'.sesskey().'" />';
echo 'Search whole database for: <input type="text" name="search" /><br />';
echo 'Replace with this string: <input type="text" name="replace" /><br />';
echo '<input type="submit" value="Yes, do it now" /><br />';
echo '</form>';
echo '</div>';
echo $OUTPUT->box_end();
echo $OUTPUT->footer();
die;
}
echo $OUTPUT->box_start();
if (!db_replace($search, $replace)) {
print_error('erroroccur', debug);
}
echo $OUTPUT->box_end();
/// Try to replace some well-known serialised contents (html blocks)
echo $OUTPUT->notification('Replacing in html blocks...');
$instances = $DB->get_recordset('block_instances', array('blockname' => 'html'));
foreach ($instances as $instance) {
$blockobject = block_instance('html', $instance);
$blockobject->config->text = str_replace($search, $replace, $blockobject->config->text);
$blockobject->instance_config_commit();
}
$instances->close();
/// Rebuild course cache which might be incorrect now
echo $OUTPUT->notification('Rebuilding course cache...', 'notifysuccess');
rebuild_course_cache();
echo $OUTPUT->notification('...finished', 'notifysuccess');
echo $OUTPUT->continue_button('index.php');
echo $OUTPUT->footer();
-128
View File
@@ -1,128 +0,0 @@
<?php
// index.php - scheduled backup logs
require_once('../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->dirroot.'/backup/lib.php');
$courseid = optional_param('courseid', 0, PARAM_INT);
admin_externalpage_setup('reportbackups');
echo $OUTPUT->header();
/// Automated backups aren't active by the site admin
$backup_config = backup_get_config();
if (empty($backup_config->backup_auto_active)) {
echo $OUTPUT->notification(get_string('automatedbackupsinactive', 'backup'));
}
/// Get needed strings
$backuploglaststatus = get_string("backuploglaststatus");
$backuplogdetailed = get_string("backuplogdetailed");
$stradmin = get_string("administration");
$strconfiguration = get_string("configuration");
$strbackup = get_string("backup");
$strbackupdetails = get_string("backupdetails");
$strlogs = get_string("logs");
$strftimedatetime = get_string("strftimerecent");
$strftimetime = get_string("strftimetime").":%S";
$strerror = get_string("error");
$strok = get_string("ok");
$strunfinished = get_string("unfinished");
$strskipped = get_string("skipped");
$strcourse = get_string("course");
$strtimetaken = get_string("timetaken","quiz");
$strstatus = get_string("status");
$strnext = get_string("backupnext");
/// Decide when to show last execution logs or detailed logs
/// Lastlog view
if (!$courseid) {
echo $OUTPUT->heading($backuploglaststatus);
echo $OUTPUT->box_start();
/// Now, get every record from backup_courses
$courses = $DB->get_records("backup_courses");
if (!$courses) {
echo $OUTPUT->notification(get_string('nologsfound'));
} else {
echo "<table border=\"0\" align=\"center\" cellpadding=\"3\" cellspacing=\"3\">";
//Print table header
echo "<tr>";
echo "<td nowrap=\"nowrap\" align=\"center\"><font size=\"3\">$strcourse</font></td>";
echo "<td nowrap=\"nowrap\" align=\"center\" colspan=\"3\"><font size=\"3\">$strtimetaken</font></td>";
echo "<td nowrap=\"nowrap\" align=\"center\"><font size=\"3\">$strstatus</font></td>";
echo "<td nowrap=\"nowrap\" align=\"center\"><font size=\"3\">$strnext</font></td></tr>";
foreach ($courses as $course) {
/// Get the course shortname
$coursename = $DB->get_field ("course", "fullname", array("id"=>$course->courseid));
if ($coursename) {
echo "<tr>";
echo "<td nowrap=\"nowrap\"><font size=\"2\"><a href=\"index.php?courseid=$course->courseid\">".$coursename."</a></font></td>";
echo "<td nowrap=\"nowrap\"><font size=\"2\">".userdate($course->laststarttime,$strftimedatetime)."</font></td>";
echo "<td nowrap=\"nowrap\"><font size=\"2\"> - </font></td>";
echo "<td nowrap=\"nowrap\"><font size=\"2\">".userdate($course->lastendtime,$strftimedatetime)."</font></td>";
if ($course->laststatus == 1) {
echo "<td nowrap=\"nowrap\" align=\"center\"><font size=\"2\" color=\"green\">".$strok."</font></td>";
} else if ($course->laststatus == 2) {
echo "<td nowrap=\"nowrap\" align=\"center\"><font size=\"2\" color=\"red\">".$strunfinished."</font></td>";
} else if ($course->laststatus == 3) {
echo "<td nowrap=\"nowrap\" align=\"center\"><font size=\"2\" color=\"green\">".$strskipped."</font></td>";
} else {
echo "<td nowrap=\"nowrap\" align=\"center\"><font size=\"2\" color=\"red\">".$strerror."</font></td>";
}
echo "<td nowrap=\"nowrap\"><font size=\"2\">".userdate($course->nextstarttime,$strftimedatetime)."</font></td>";
echo "</tr>";
}
}
echo "</table>";
}
echo $OUTPUT->box_end();
/// Detailed View !!
} else {
echo $OUTPUT->heading($backuplogdetailed);
$coursename = $DB->get_field("course", "fullname", array("id"=>"$courseid"));
echo $OUTPUT->heading("$strcourse: $coursename");
echo $OUTPUT->box_start();
/// First, me get all the distinct backups for that course in backup_log
$executions = $DB->get_records_sql("SELECT DISTINCT laststarttime
FROM {backup_log}
WHERE courseid = ? AND backuptype = ?
ORDER BY laststarttime DESC", array($courseid,'scheduledbackup'));
/// Iterate over backup executions
if (!$executions) {
echo $OUTPUT->notification(get_string('nologsfound'));
} else {
echo "<table border=\"0\" align=\"center\" cellpadding=\"3\" cellspacing=\"3\">";
foreach($executions as $execution) {
echo "<tr>";
echo "<td nowrap=\"nowrap\" align=\"center\" colspan=\"3\">";
echo $OUTPUT->box(userdate($execution->laststarttime));
echo "</td>";
echo "</tr>";
$logs = $DB->get_records_sql("SELECT *
FROM {backup_log}
WHERE courseid = ? AND laststarttime = ? AND backuptype = ?
ORDER BY id", array($courseid, $execution->laststarttime,'scheduledbackup'));
if ($logs) {
foreach ($logs as $log) {
echo "<tr>";
echo "<td nowrap=\"nowrap\"><font size=\"2\">".userdate($log->time,$strftimetime)."</font></td>";
$log->info = str_replace("- ERROR!!","- <font color=\"red\">ERROR!!</font>",$log->info);
$log->info = str_replace("- OK","- <font color=\"green\">OK</font>",$log->info);
echo "<td nowrap=\"nowrap\"><font size=\"2\">".str_replace(" ","&nbsp;&nbsp;&nbsp;&nbsp;",$log->info)."</font></td>";
echo "</tr>";
}
}
}
echo "</table>";
}
echo $OUTPUT->box_end();
}
echo $OUTPUT->footer();
-5
View File
@@ -1,5 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
$ADMIN->add('reports', new admin_externalpage('reportbackups', get_string('backups', 'admin'), "$CFG->wwwroot/$CFG->admin/report/backups/index.php",'moodle/backup:backupcourse'));
-214
View File
@@ -1,214 +0,0 @@
<?php
/**
* For a given capability, show what permission it has for every role, and
* everywhere that it is overridden.
*
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License
* @package roles
*/
/** */
require_once(dirname(__FILE__).'/../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
// Check permissions.
require_login();
$systemcontext = get_context_instance(CONTEXT_SYSTEM);
require_capability('moodle/role:manage', $systemcontext);
// Get URL parameters.
$capability = optional_param('capability', '', PARAM_CAPABILITY);
$roleids = optional_param('roles', array('0'), PARAM_INTEGER);
// Clean the passed in list of role ids. If 'All' selected as an option, or
// if none were selected, do all roles.
$allroles = get_all_roles();
$cleanedroleids = array();
foreach ($roleids as $roleid) {
if ($roleid == 0) {
$cleanedroleids = array_keys($allroles);
break;
}
if (array_key_exists($roleid, $allroles)) {
$cleanedroleids[] = $roleid;
}
}
if (empty($cleanedroleids)) {
$cleanedroleids = array_keys($allroles);
}
// Include the required JavaScript.
$PAGE->requires->js_init_call('M.report_capability.init', array(get_string('search')));
// Log.
add_to_log(SITEID, "admin", "report capability", "report/capability/index.php?capability=$capability", $capability);
// Print the header.
admin_externalpage_setup('reportcapability');
echo $OUTPUT->header();
// Prepare the list of capabilities to choose from
$allcapabilities = fetch_context_capabilities($systemcontext);
$capabilitychoices = array();
foreach ($allcapabilities as $cap) {
$capabilitychoices[$cap->name] = $cap->name . ': ' . get_capability_string($cap->name);
}
// Prepare the list of roles to choose from
$rolechoices = array('0' => get_string('all'));
foreach ($allroles as $role) {
$rolechoices[$role->id] = $role->name;
}
if (count($cleanedroleids) == count($allroles)) {
// Select 'All', rather than each role individually.
$selectedroleids = array('0');
} else {
$selectedroleids = $cleanedroleids;
}
// Print the settings form.
echo $OUTPUT->box_start('generalbox boxwidthwide boxaligncenter');
echo '<form method="get" action="." id="settingsform"><div>';
echo $OUTPUT->heading(get_string('reportsettings', 'report_capability'));
echo '<p id="intro">', get_string('intro', 'report_capability') , '</p>';
echo '<p><label for="menucapability"> ' . get_string('capabilitylabel', 'report_capability') . '</label></p>';
echo html_writer::select($capabilitychoices, 'capability', $capability, array(''=>'choose'), array('size'=>10));
echo '<p><label for="menuroles"> ' . get_string('roleslabel', 'report_capability') . '</label></p>';
echo html_writer::select($rolechoices, 'roles[]', $selectedroleids, false, array('size'=>10, 'multiple'=>'multiple'));
echo '<p><input type="submit" id="settingssubmit" value="' . get_string('getreport', 'report_capability') . '" /></p>';
echo '</div></form>';
echo $OUTPUT->box_end();
// If we have a capability, generate the report.
if ($capability) {
// Work out the bits needed for the SQL WHERE clauses.
$params = array($capability);
$sqlroletest = '';
if (count($cleanedroleids) != count($allroles)) {
list($sqlroletest, $roleparams) = $DB->get_in_or_equal($cleanedroleids);
$params = array_merge($params, $roleparams);
$sqlroletest = 'AND roleid ' . $sqlroletest;
}
// Get all the role_capabilities rows for this capability - that is, all
// role definitions, and all role overrides.
$rolecaps = $DB->get_records_sql("
SELECT id, roleid, contextid, permission
FROM {role_capabilities}
WHERE capability = ? $sqlroletest", $params);
// In order to display a nice tree of contexts, we need to get all the
// ancestors of all the contexts in the query we just did.
$relevantpaths = $DB->get_records_sql_menu("
SELECT DISTINCT con.path, 1
FROM {context} con JOIN {role_capabilities} rc ON rc.contextid = con.id
WHERE capability = ? $sqlroletest", $params);
$requiredcontexts = array($systemcontext->id);
foreach ($relevantpaths as $path => $notused) {
$requiredcontexts = array_merge($requiredcontexts, explode('/', trim($path, '/')));
}
$requiredcontexts = array_unique($requiredcontexts);
// Now load those contexts.
list($sqlcontexttest, $contextparams) = $DB->get_in_or_equal($requiredcontexts);
$contexts = get_sorted_contexts('ctx.id ' . $sqlcontexttest, $contextparams);
// Prepare some empty arrays to hold the data we are about to compute.
foreach ($contexts as $conid => $con) {
$contexts[$conid]->children = array();
$contexts[$conid]->rolecapabilities = array();
}
// Put the contexts into a tree structure.
foreach ($contexts as $conid => $con) {
$parentcontextid = get_parent_contextid($con);
if ($parentcontextid) {
$contexts[$parentcontextid]->children[] = $conid;
}
}
// Put the role capabilities into the context tree.
foreach ($rolecaps as $rolecap) {
$contexts[$rolecap->contextid]->rolecapabilities[$rolecap->roleid] = $rolecap->permission;
}
// Fill in any missing rolecaps for the system context.
foreach ($cleanedroleids as $roleid) {
if (!isset($contexts[$systemcontext->id]->rolecapabilities[$roleid])) {
$contexts[$systemcontext->id]->rolecapabilities[$roleid] = CAP_INHERIT;
}
}
// Print the report heading.
echo $OUTPUT->heading(get_string('reportforcapability', 'report_capability', get_capability_string($capability)), 2, 'main', 'report');
if (count($cleanedroleids) != count($allroles)) {
$rolenames = array();
foreach ($cleanedroleids as $roleid) {
$rolenames[] = $allroles[$roleid]->name;
}
echo '<p>', get_string('forroles', 'report_capability', implode(', ', $rolenames)), '</p>';
}
// Now, recursively print the contexts, and the role information.
print_report_tree($systemcontext->id, $contexts, $allroles);
}
// Footer.
echo $OUTPUT->footer();
function print_report_tree($contextid, $contexts, $allroles) {
global $CFG;
// Array for holding lang strings.
static $strpermissions = null;
if (is_null($strpermissions)) {
$strpermissions = array(
CAP_INHERIT => get_string('notset','role'),
CAP_ALLOW => get_string('allow','role'),
CAP_PREVENT => get_string('prevent','role'),
CAP_PROHIBIT => get_string('prohibit','role')
);
}
// Start the list item, and print the context name as a link to the place to
// make changes.
if ($contextid == get_system_context()->id) {
$url = "$CFG->wwwroot/$CFG->admin/roles/manage.php";
$title = get_string('changeroles', 'report_capability');
} else {
$url = "$CFG->wwwroot/$CFG->admin/roles/override.php?contextid=$contextid";
$title = get_string('changeoverrides', 'report_capability');
}
echo '<h3><a href="' . $url . '" title="' . $title . '">', print_context_name($contexts[$contextid]), '</a></h3>';
// If there are any role overrides here, print them.
if (!empty($contexts[$contextid]->rolecapabilities)) {
$rowcounter = 0;
echo '<table class="generaltable rolecaps"><tbody>';
foreach ($allroles as $role) {
if (isset($contexts[$contextid]->rolecapabilities[$role->id])) {
$permission = $contexts[$contextid]->rolecapabilities[$role->id];
echo '<tr class="r' . ($rowcounter % 2) . '"><th class="cell">', $role->name,
'</th><td class="cell">' . $strpermissions[$permission] . '</td></tr>';
$rowcounter++;
}
}
echo '</tbody></table>';
}
// After we have done the site context, change the string for CAP_INHERIT
// from 'notset' to 'inherit'.
$strpermissions[CAP_INHERIT] = get_string('inherit','role');
// If there are any child contexts, print them recursively.
if (!empty($contexts[$contextid]->children)) {
echo '<ul>';
foreach ($contexts[$contextid]->children as $childcontextid) {
echo '<li>';
print_report_tree($childcontextid, $contexts, $allroles);
echo '</li>';
}
echo '</ul>';
}
}
@@ -1,36 +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 'report_capability', language 'en', branch 'MOODLE_20_STABLE'
*
* @package report_capability
* @copyright 1999 onwards Martin Dougiamas {@link http://moodle.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['capabilitylabel'] = 'Capability:';
$string['capabilityreport'] = 'Capability report';
$string['forroles'] = 'For roles {$a}';
$string['getreport'] = 'Get the report';
$string['changeoverrides'] = 'Change overrides in this context';
$string['changeroles'] = 'Change role definitions';
$string['intro'] = 'This report shows, for a particular capability, what permission that capability has in the definition of every role (or a selection of roles), and everywhere in the site where that capability is overridden.';
$string['pluginname'] = 'Capability report';
$string['reportforcapability'] = 'Report for capability \'{$a}\'';
$string['reportsettings'] = 'Report settings';
$string['roleslabel'] = 'Roles:';
-75
View File
@@ -1,75 +0,0 @@
M.report_capability = {
select: null,
input: null,
button: null,
init: function(Y, strsearch) {
var context = M.report_capability;
// Find the form controls.
context.select = document.getElementById('menucapability');
context.button = document.getElementById('settingssubmit');
// Create a div to hold the search UI.
var div = document.createElement('div');
div.id = 'capabilitysearchui';
// Find the capability search input.
var input = document.createElement('input');
input.type = 'text';
input.id = 'capabilitysearch';
context.input = input;
// Create a label for the search input.
var label = document.createElement('label');
label.htmlFor = input.id;
label.appendChild(document.createTextNode(strsearch + ' '));
// Tie it all together
div.appendChild(label);
div.appendChild(input);
context.select.parentNode.insertBefore(div, context.select);
Y.on('keyup', context.typed, input);
Y.on('change', context.validate, context.select);
context.select.options[0].style.display = 'none';
context.validate();
},
typed: function() {
var context = M.report_capability;
var filtertext = context.input.value;
var options = context.select.options;
var onlycapability = -1;
for (var i = 1; i < options.length; i++) {
if (options[i].text.indexOf(filtertext) >= 0) {
options[i].disabled = false;
options[i].style.display = 'block';
if (onlycapability == -1) {
onlycapability = i;
} else {
onlycapability = -2;
}
} else {
options[i].disabled = true;
options[i].selected = false;
options[i].style.display = 'none';
}
}
if (onlycapability >= 0) {
options[onlycapability].selected = true;
}
if (onlycapability == -1) {
context.input.className = "error";
} else {
context.input.className = "";
}
context.validate();
},
validate: function() {
var context = M.report_capability;
context.button.disabled = (context.select.value == '');
}
}
-5
View File
@@ -1,5 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
$ADMIN->add('roles', new admin_externalpage('reportcapability', get_string('pluginname', 'report_capability'), "$CFG->wwwroot/$CFG->admin/report/capability/index.php",'moodle/role:manage'));
-110
View File
@@ -1,110 +0,0 @@
<?php
require_once(dirname(__FILE__).'/../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
// page parameters
$page = optional_param('page', 0, PARAM_INT);
$perpage = optional_param('perpage', 30, PARAM_INT); // how many per page
$sort = optional_param('sort', 'timemodified', PARAM_ALPHA);
$dir = optional_param('dir', 'DESC', PARAM_ALPHA);
admin_externalpage_setup('reportconfiglog');
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('configlog', 'report_configlog'));
$changescount = $DB->count_records('config_log');
$columns = array('firstname' => get_string('firstname'),
'lastname' => get_string('lastname'),
'timemodified' => get_string('timemodified', 'report_configlog'),
'plugin' => get_string('plugin', 'report_configlog'),
'name' => get_string('setting', 'report_configlog'),
'value' => get_string('value', 'report_configlog'),
'oldvalue' => get_string('oldvalue', 'report_configlog'),
);
$hcolumns = array();
if (!isset($columns[$sort])) {
$sort = 'lastname';
}
foreach ($columns as $column=>$strcolumn) {
if ($sort != $column) {
$columnicon = '';
if ($column == 'lastaccess') {
$columndir = 'DESC';
} else {
$columndir = 'ASC';
}
} else {
$columndir = $dir == 'ASC' ? 'DESC':'ASC';
if ($column == 'lastaccess') {
$columnicon = $dir == 'ASC' ? 'up':'down';
} else {
$columnicon = $dir == 'ASC' ? 'down':'up';
}
$columnicon = " <img src=\"" . $OUTPUT->pix_url('t/' . $columnicon) . "\" alt=\"\" />";
}
$hcolumns[$column] = "<a href=\"index.php?sort=$column&amp;dir=$columndir&amp;page=$page&amp;perpage=$perpage\">".$strcolumn."</a>$columnicon";
}
$baseurl = new moodle_url('index.php', array('sort' => $sort, 'dir' => $dir, 'perpage' => $perpage));
echo $OUTPUT->paging_bar($changescount, $page, $perpage, $baseurl);
$override = new stdClass();
$override->firstname = 'firstname';
$override->lastname = 'lastname';
$fullnamelanguage = get_string('fullnamedisplay', '', $override);
if (($CFG->fullnamedisplay == 'firstname lastname') or
($CFG->fullnamedisplay == 'firstname') or
($CFG->fullnamedisplay == 'language' and $fullnamelanguage == 'firstname lastname' )) {
$fullnamedisplay = $hcolumns['firstname'].' / '.$hcolumns['lastname'];
} else { // ($CFG->fullnamedisplay == 'language' and $fullnamelanguage == 'lastname firstname')
$fullnamedisplay = $hcolumns['lastname'].' / '.$hcolumns['firstname'];
}
$table = new html_table();
$table->head = array($hcolumns['timemodified'], $fullnamedisplay, $hcolumns['plugin'], $hcolumns['name'], $hcolumns['value'], $hcolumns['oldvalue']);
$table->align = array('left', 'left', 'left', 'left', 'left', 'left');
$table->size = array('30%', '10%', '10%', '10%', '20%', '20%');
$table->width = '95%';
$table->data = array();
if ($sort == 'firstname' or $sort == 'lastname') {
$orderby = "u.$sort $dir";
} else {
$orderby = "cl.$sort $dir";
}
$ufields = user_picture::fields('u');
$sql = "SELECT $ufields,
cl.timemodified, cl.plugin, cl.name, cl.value, cl.oldvalue
FROM {config_log} cl
JOIN {user} u ON u.id = cl.userid
ORDER BY $orderby";
$rs = $DB->get_recordset_sql($sql, array(), $page*$perpage, $perpage);
foreach ($rs as $log) {
$row = array();
$row[] = userdate($log->timemodified);
$row[] = fullname($log);
if (is_null($log->plugin)) {
$row[] = 'core';
} else {
$row[] = $log->plugin;
}
$row[] = $log->name;
$row[] = s($log->value);
$row[] = s($log->oldvalue);
$table->data[] = $row;
}
$rs->close();
echo html_writer::table($table);
echo $OUTPUT->footer();
-5
View File
@@ -1,5 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
$ADMIN->add('reports', new admin_externalpage('reportconfiglog', get_string('configlog', 'report_configlog'), "$CFG->wwwroot/$CFG->admin/report/configlog/index.php"));
-40
View File
@@ -1,40 +0,0 @@
<?php
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.com //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
$capabilities = array(
'report/courseoverview:view' => array(
'riskbitmask' => RISK_PERSONAL,
'captype' => 'read',
'contextlevel' => CONTEXT_SYSTEM,
'archetypes' => array(
'teacher' => CAP_ALLOW,
'editingteacher' => CAP_ALLOW,
'manager' => CAP_ALLOW
),
'clonepermissionsfrom' => 'moodle/site:viewreports',
)
);
-123
View File
@@ -1,123 +0,0 @@
<?php
require_once('../../../config.php');
require_once($CFG->dirroot.'/lib/statslib.php');
require_once($CFG->libdir.'/adminlib.php');
$report = optional_param('report', STATS_REPORT_ACTIVE_COURSES, PARAM_INT);
$time = optional_param('time', 0, PARAM_INT);
$numcourses = optional_param('numcourses', 20, PARAM_INT);
if (empty($CFG->enablestats)) {
if (has_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM))) {
redirect("$CFG->wwwroot/$CFG->admin/settings.php?section=stats", get_string('mustenablestats', 'admin'), 3);
} else {
print_error('statsdisable');
}
}
admin_externalpage_setup('reportcourseoverview');
echo $OUTPUT->header();
$course = get_site();
stats_check_uptodate($course->id);
$strreports = get_string('reports');
$strcourseoverview = get_string('courseoverview');
$reportoptions = stats_get_report_options($course->id,STATS_MODE_RANKED);
$earliestday = $DB->get_field_sql('SELECT MIN(timeend) FROM {stats_daily}');
$earliestweek = $DB->get_field_sql('SELECT MIN(timeend) FROM {stats_weekly}');
$earliestmonth = $DB->get_field_sql('SELECT MIN(timeend) FROM {stats_monthly}');
if (empty($earliestday)) $earliestday = time();
if (empty($earliestweek)) $earliestweek = time();
if (empty($earliestmonth)) $earliestmonth = time();
$now = stats_get_base_daily();
$lastweekend = stats_get_base_weekly();
$lastmonthend = stats_get_base_monthly();
$timeoptions = stats_get_time_options($now,$lastweekend,$lastmonthend,$earliestday,$earliestweek,$earliestmonth);
if (empty($timeoptions)) {
print_error('nostatstodisplay', 'error', $CFG->wwwroot.'/course/view.php?id='.$course->id);
}
echo '<form action="index.php" method="post">'."\n";
echo '<div>';
$table = new html_table();
$table->width = '*';
$table->align = array('left','left','left','left','left','left');
$reporttypemenu = html_writer::select($reportoptions,'report',$report, false);
$timeoptionsmenu = html_writer::select($timeoptions,'time',$time, false);
$table->data[] = array(get_string('statsreporttype'),$reporttypemenu,
get_string('statstimeperiod'),$timeoptionsmenu,
'<input type="text" name="numcourses" size="3" maxlength="2" value="'.$numcourses.'" />',
'<input type="submit" value="'.get_string('view').'" />') ;
echo html_writer::table($table);
echo '</div>';
echo '</form>';
echo $OUTPUT->heading($reportoptions[$report]);
if (!empty($report) && !empty($time)) {
$param = stats_get_parameters($time,$report,SITEID,STATS_MODE_RANKED);
if (!empty($param->sql)) {
$sql = $param->sql;
} else {
$sql = "SELECT courseid,".$param->fields."
FROM {".'stats_'.$param->table."}
WHERE timeend >= $param->timeafter AND stattype = 'activity' AND roleid = 0
GROUP BY courseid
$param->extras
ORDER BY $param->orderby";
}
//error_log($sql);
$courses = $DB->get_records_sql($sql, $param->params, 0, $numcourses);
if (empty($courses)) {
echo $OUTPUT->notification(get_string('statsnodata'));
echo '</td></tr></table>';echo '<p>after notify</p>';
} else {
if (empty($CFG->gdversion)) {
echo '<div class="graph">(' . get_string("gdneed") .')</div>';
} else {
echo '<div class="graph"><img alt="'.get_string('courseoverviewgraph').'" src="'.$CFG->wwwroot.'/'.$CFG->admin.'/report/courseoverview/reportsgraph.php?time='.$time.'&report='.$report.'&numcourses='.$numcourses.'" /></div>';
}
$table = new html_table();
$table->align = array('left','center','center','center');
$table->head = array(get_string('course'),$param->line1);
if (!empty($param->line2)) {
$table->head[] = $param->line2;
}
if (!empty($param->line3)) {
$table->head[] = $param->line3;
}
foreach ($courses as $c) {
$a = array();
$a[] = '<a href="'.$CFG->wwwroot.'/course/view.php?id='.$c->courseid.'">'.$DB->get_field('course', 'shortname', array('id'=>$c->courseid)).'</a>';
$a[] = $c->line1;
if (isset($c->line2)) {
$a[] = $c->line2;
}
if (isset($c->line3)) {
$a[] = round($c->line3,2);
}
$table->data[] = $a;
}
echo html_writer::table($table);
}
}
echo $OUTPUT->footer();
@@ -1,27 +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 'report_courseoverview', language 'en', branch 'MOODLE_20_STABLE'
*
* @package report_courseoverview
* @copyright 1999 onwards Martin Dougiamas {@link http://moodle.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['courseoverview:view'] = 'View course overview report';
$string['pluginname'] = 'Course overview';
@@ -1,57 +0,0 @@
<?php
require_once('../../../config.php');
require_once($CFG->dirroot.'/lib/statslib.php');
require_once($CFG->dirroot.'/lib/graphlib.php');
$report = required_param('report', PARAM_INT);
$time = required_param('time', PARAM_INT);
$numcourses = required_param('numcourses', PARAM_INT);
require_login();
require_capability('report/courseoverview:view', get_context_instance(CONTEXT_SYSTEM));
stats_check_uptodate();
$param = stats_get_parameters($time,$report,SITEID,STATS_MODE_RANKED);
if (!empty($param->sql)) {
$sql = $param->sql;
} else {
$sql = "SELECT courseid, $param->fields
FROM {".'stats_'.$param->table."}
WHERE timeend >= $param->timeafter AND stattype = 'activity' AND roleid = 0
GROUP BY courseid
$param->extras
ORDER BY $param->orderby";
}
$courses = $DB->get_records_sql($sql, $param->params, 0, $numcourses);
if (empty($courses)) {
$PAGE->set_url('/admin/report/courseoverview/index.php');
print_error('statsnodata', 'error', $PAGE->url->out());
}
$graph = new graph(750,400);
$graph->parameter['legend'] = 'outside-right';
$graph->parameter['legend_size'] = 10;
$graph->parameter['x_axis_angle'] = 90;
$graph->parameter['title'] = false; // moodle will do a nicer job.
$graph->y_tick_labels = null;
$graph->offset_relation = null;
if ($report != STATS_REPORT_ACTIVE_COURSES) {
$graph->parameter['y_decimal_left'] = 2;
}
foreach ($courses as $c) {
$graph->x_data[] = $DB->get_field('course', 'shortname', array('id'=>$c->courseid));
$graph->y_data['bar1'][] = $c->{$param->graphline};
}
$graph->y_order = array('bar1');
$graph->y_format['bar1'] = array('colour' => 'blue','bar' => 'fill','legend' => $param->{$param->graphline});
$graph->draw_stack();
-5
View File
@@ -1,5 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
$ADMIN->add('reports', new admin_externalpage('reportcourseoverview', get_string('pluginname', 'report_courseoverview'), "$CFG->wwwroot/$CFG->admin/report/courseoverview/index.php",'report/courseoverview:view'));
-27
View File
@@ -1,27 +0,0 @@
<?PHP
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.com //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
$plugin->version = 2010090501;
$plugin->requires = 2010090501;
-51
View File
@@ -1,51 +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 capabilities used by the Language customization admin report
*
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$capabilities = array(
/* allows the user to view the current language customization */
'report/customlang:view' => array(
'riskbitmask' => RISK_CONFIG,
'captype' => 'read',
'contextlevel' => CONTEXT_SYSTEM,
'archetypes' => array(
'manager' => CAP_ALLOW
),
),
/* allows the user to edit the current language customization */
'report/customlang:edit' => array(
'riskbitmask' => RISK_CONFIG | RISK_XSS,
'captype' => 'write',
'contextlevel' => CONTEXT_SYSTEM,
'archetypes' => array(
'manager' => CAP_ALLOW
),
),
);
-40
View File
@@ -1,40 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<XMLDB PATH="admin/report/customlang/db" VERSION="20101115" COMMENT="XMLDB file for Moodle admin/report/customlang"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../../../../lib/xmldb/xmldb.xsd"
>
<TABLES>
<TABLE NAME="report_customlang" COMMENT="Contains the working checkout of all strings and their customization" NEXT="report_customlang_components">
<FIELDS>
<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" 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" 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"/>
<KEY NAME="fk_component" TYPE="foreign" FIELDS="componentid" REFTABLE="report_customlang_components" REFFIELDS="id" PREVIOUS="primary"/>
</KEYS>
<INDEXES>
<INDEX NAME="uq_lang_component_string" UNIQUE="true" FIELDS="lang, componentid, stringid" COMMENT="For a given language and component, string identifiers must be unique"/>
</INDEXES>
</TABLE>
<TABLE NAME="report_customlang_components" COMMENT="Contains the list of all installed plugins that provide their own language pack" PREVIOUS="report_customlang">
<FIELDS>
<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="int" LENGTH="10" NOTNULL="false" UNSIGNED="true" SEQUENCE="false" COMMENT="The checked out version of the plugin, null of the version is unknown" PREVIOUS="name"/>
</FIELDS>
<KEYS>
<KEY NAME="primary" TYPE="primary" FIELDS="id"/>
</KEYS>
</TABLE>
</TABLES>
</XMLDB>
-61
View File
@@ -1,61 +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/>.
/**
* Language customization report upgrades
*
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david.mudrak@gmail.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
function xmldb_report_customlang_upgrade($oldversion) {
global $CFG, $DB, $OUTPUT;
$dbman = $DB->get_manager();
$result = true;
/**
* Use proper plugin prefix for tables
*/
if ($oldversion < 2010111200) {
if ($dbman->table_exists('customlang')) {
$dbman->rename_table(new xmldb_table('customlang'), 'report_customlang');
}
if ($dbman->table_exists('customlang_components')) {
$dbman->rename_table(new xmldb_table('customlang_components'), 'report_customlang_components');
}
upgrade_plugin_savepoint(true, 2010111200, 'report', 'customlang');
}
/**
* Regenerate the foreign key after the tables rename
*/
if ($oldversion < 2010111500) {
$table = new xmldb_table('report_customlang');
$oldkey = new xmldb_key('fk_component', XMLDB_KEY_FOREIGN, array('componentid'), 'customlang_components', array('id'));
$newkey = new xmldb_key('fk_component', XMLDB_KEY_FOREIGN, array('componentid'), 'report_customlang_components', array('id'));
$dbman->drop_key($table, $oldkey);
$dbman->add_key($table, $newkey);
upgrade_plugin_savepoint(true, 2010111500, 'report', 'customlang');
}
return $result;
}
-126
View File
@@ -1,126 +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/>.
/**
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require(dirname(dirname(dirname(dirname(__FILE__)))).'/config.php');
require_once($CFG->dirroot.'/'.$CFG->admin.'/report/customlang/locallib.php');
require_once($CFG->dirroot.'/'.$CFG->admin.'/report/customlang/filter_form.php');
require_login(SITEID, false);
require_capability('report/customlang:edit', get_system_context());
$lng = required_param('lng', PARAM_LANG);
$currentpage = optional_param('p', 0, PARAM_INT);
$translatorsubmitted = optional_param('translatorsubmitted', 0, PARAM_BOOL);
$PAGE->set_pagelayout('standard');
$PAGE->set_url('/admin/report/customlang/edit.php', array('lng' => $lng));
navigation_node::override_active_url(new moodle_url('/admin/report/customlang/index.php'));
$PAGE->set_title(get_string('pluginname', 'report_customlang'));
$PAGE->set_heading(get_string('pluginname', 'report_customlang'));
$PAGE->requires->js_init_call('M.report_customlang.init_editor', array(), true);
if (empty($lng)) {
// PARAM_LANG validation failed
print_error('missingparameter');
}
// pre-output processing
$filter = new report_customlang_filter_form($PAGE->url, null, 'post', '', array('class'=>'filterform'));
$filterdata = report_customlang_utils::load_filter($USER);
$filter->set_data($filterdata);
if ($filter->is_cancelled()) {
redirect($PAGE->url);
} elseif ($submitted = $filter->get_data()) {
report_customlang_utils::save_filter($submitted, $USER);
redirect(new moodle_url($PAGE->url, array('p'=>0)));
}
if ($translatorsubmitted) {
$strings = optional_param('cust', array(), PARAM_RAW);
$updates = optional_param('updates', array(), PARAM_INT);
$checkin = optional_param('savecheckin', false, PARAM_RAW);
if ($checkin === false) {
$nexturl = $PAGE->url;
} else {
$nexturl = new moodle_url('/admin/report/customlang/index.php', array('action'=>'checkin', 'lng' => $lng, 'sesskey'=>sesskey()));
}
if (!is_array($strings)) {
$strings = array();
}
$current = $DB->get_records_list('report_customlang', 'id', array_keys($strings));
$now = time();
foreach ($strings as $recordid => $customization) {
$customization = trim($customization);
if (empty($customization) and !is_null($current[$recordid]->local)) {
$current[$recordid]->local = null;
$current[$recordid]->modified = 1;
$current[$recordid]->outdated = 0;
$current[$recordid]->timecustomized = null;
$DB->update_record('report_customlang', $current[$recordid]);
continue;
}
if (empty($customization)) {
continue;
}
if ($customization !== $current[$recordid]->local) {
$current[$recordid]->local = $customization;
$current[$recordid]->modified = 1;
$current[$recordid]->outdated = 0;
$current[$recordid]->timecustomized = $now;
$DB->update_record('report_customlang', $current[$recordid]);
continue;
}
}
if (!is_array($updates)) {
$updates = array();
}
if (!empty($updates)) {
list($sql, $params) = $DB->get_in_or_equal($updates);
$DB->set_field_select('report_customlang', 'outdated', 0, "local IS NOT NULL AND id $sql", $params);
}
redirect($nexturl);
}
$translator = new report_customlang_translator($PAGE->url, $lng, $filterdata, $currentpage);
// output starts here
$output = $PAGE->get_renderer('report_customlang');
$paginator = $output->paging_bar($translator->numofrows, $currentpage, report_customlang_translator::PERPAGE, $PAGE->url, 'p');
echo $output->header();
$filter->display();
echo $paginator;
echo $output->render($translator);
echo $paginator;
echo $output->footer();
-123
View File
@@ -1,123 +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/>.
/**
* Performs checkout of the strings into the translation table
*
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
require(dirname(dirname(dirname(dirname(__FILE__)))).'/config.php');
require_once($CFG->dirroot.'/'.$CFG->admin.'/report/customlang/locallib.php');
require_once($CFG->libdir.'/adminlib.php');
require_login(SITEID, false);
require_capability('report/customlang:view', get_system_context());
$action = optional_param('action', '', PARAM_ALPHA);
$confirm = optional_param('confirm', false, PARAM_BOOL);
$lng = optional_param('lng', '', PARAM_LANG);
admin_externalpage_setup('reportcustomlang');
$langs = get_string_manager()->get_list_of_translations();
// pre-output actions
if ($action === 'checkout') {
require_sesskey();
require_capability('report/customlang:edit', get_system_context());
if (empty($lng)) {
print_error('missingparameter');
}
report_customlang_utils::checkout($lng);
redirect(new moodle_url('/admin/report/customlang/edit.php', array('lng' => $lng)));
}
if ($action === 'checkin') {
require_sesskey();
require_capability('report/customlang:edit', get_system_context());
if (empty($lng)) {
print_error('missingparameter');
}
if (!$confirm) {
$output = $PAGE->get_renderer('report_customlang');
echo $output->header();
echo $output->heading(get_string('pluginname', 'report_customlang'));
echo $output->heading($langs[$lng], 3);
$numofmodified = report_customlang_utils::get_count_of_modified($lng);
if ($numofmodified != 0) {
echo $output->heading(get_string('modifiednum', 'report_customlang', $numofmodified), 3);
echo $output->confirm(get_string('confirmcheckin', 'report_customlang'),
new moodle_url($PAGE->url, array('action'=>'checkin', 'lng'=>$lng, 'confirm'=>1)),
new moodle_url($PAGE->url, array('lng'=>$lng)));
} else {
echo $output->heading(get_string('modifiedno', 'report_customlang', $numofmodified), 3);
echo $output->continue_button(new moodle_url($PAGE->url, array('lng' => $lng)));
}
echo $output->footer();
die();
} else {
report_customlang_utils::checkin($lng);
redirect($PAGE->url);
}
}
$output = $PAGE->get_renderer('report_customlang');
// output starts here
echo $output->header();
echo $output->heading(get_string('pluginname', 'report_customlang'));
if (empty($lng)) {
$s = new single_select($PAGE->url, 'lng', $langs);
$s->label = get_accesshide(get_string('language'));
$s->class = 'langselector';
echo $output->box($OUTPUT->render($s), 'langselectorbox');
echo $OUTPUT->footer();
exit;
}
echo $output->heading($langs[$lng], 3);
$numofmodified = report_customlang_utils::get_count_of_modified($lng);
if ($numofmodified != 0) {
echo $output->heading(get_string('modifiednum', 'report_customlang', $numofmodified), 3);
}
$menu = array();
if (has_capability('report/customlang:edit', get_system_context())) {
$menu['checkout'] = array(
'title' => get_string('checkout', 'report_customlang'),
'url' => new moodle_url($PAGE->url, array('action' => 'checkout', 'lng' => $lng)),
'method' => 'post',
);
if ($numofmodified != 0) {
$menu['checkin'] = array(
'title' => get_string('checkin', 'report_customlang'),
'url' => new moodle_url($PAGE->url, array('action' => 'checkin', 'lng' => $lng)),
'method' => 'post',
);
}
}
echo $output->render(new report_customlang_menu($menu));
echo $output->footer();
@@ -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 Language customization admin report
*
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$string['checkin'] = 'Check in strings into disk';
$string['checkout'] = 'Check out strings into translator';
$string['confirmcheckin'] = 'You are about to check in modified strings into your local language pack. This will export the customized strings from the translator into the data directory and Moodle will start using the modified strings. Press \'Continue\' button to proceed check in.';
$string['customlang:edit'] = 'Edit local translation';
$string['customlang:view'] = 'View local translation';
$string['filter'] = 'Filter strings';
$string['filtercomponent'] = 'Show strings of these components';
$string['filtercustomized'] = 'Customized only';
$string['filtermodified'] = 'Modified only';
$string['filteronlyhelps'] = 'Help only';
$string['filtershowstrings'] = 'Show strings';
$string['filterstringid'] = 'String identifier';
$string['filtersubstring'] = 'Only strings containing';
$string['headingcomponent'] = 'Component';
$string['headinglocal'] = 'Local customization';
$string['headingstandard'] = 'Standard text';
$string['headingstringid'] = 'String';
$string['markinguptodate'] = 'Marking the customization as up-to-date';
$string['markinguptodate_help'] = 'The customized translation may get outdated if either the English original or the master translation has modified since the string was customized on your site. Review the customized translation. If you find it up-to-date, click the checkbox. Edit it otherwise.';
$string['markuptodate'] = 'mark as up-to-date';
$string['modifiedno'] = 'There are no modified strings to check in.';
$string['modifiednum'] = 'There are {$a} modified strings. You must check in them into disk to store them permanently.';
$string['nostringsfound'] = 'No strings found, please modify the filter settings';
$string['placeholder'] = 'Placeholders';
$string['placeholder_help'] = 'Placeholders are special statements like `{$a}` or `{$a->something}` within the string. They are replaced with a value when the string is actually printed.
It is important to copy them exactly as they are in the original string. Do not translate them nor change their left-to-right orientation.';
$string['placeholderwarning'] = 'string contains a placeholder';
$string['pluginname'] = 'Language customization';
$string['savecheckin'] = 'Save and check in strings into files';
$string['savecontinue'] = 'Save and continue editing';
-25
View File
@@ -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/>.
/**
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
-514
View File
@@ -1,514 +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/>.
/**
* Definition of classes used by Langugae customization admin report
*
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
/**
* Provides various utilities to be used by the plugin
*
* All the public methods here are static ones, this class can not be instantiated
*/
class report_customlang_utils {
/** @var array cache of {@link self::list_components()} results */
protected static $components = null;
/**
* This class can not be instantiated
*/
private function __construct() {
}
/**
* Returns a list of all components installed on the server
*
* @return array (string)legacyname => (string)frankenstylename
*/
public static function list_components() {
$list['moodle'] = 'core';
$coresubsystems = get_core_subsystems();
ksort($coresubsystems); // should be but just in case
foreach ($coresubsystems as $name => $location) {
if ($name != 'moodle.org') {
$list[$name] = 'core_'.$name;
}
}
$plugintypes = get_plugin_types();
foreach ($plugintypes as $type => $location) {
$pluginlist = get_plugin_list($type);
foreach ($pluginlist as $name => $ununsed) {
if ($type == 'mod') {
if (array_key_exists($name, $list)) {
throw new Exception('Activity module and core subsystem name collision');
}
$list[$name] = $type.'_'.$name;
} else {
$list[$type.'_'.$name] = $type.'_'.$name;
}
}
}
return $list;
}
/**
* Updates the translator database with the strings from files
*
* This should be executed each time before going to the translation page
*
* @param string $lang language code to checkout
*/
public static function checkout($lang) {
global $DB;
// make sure that all components are registered
$current = $DB->get_records('report_customlang_components', null, 'name', 'name,version,id');
foreach (self::list_components() as $component) {
if (empty($current[$component])) {
$record = new stdclass();
$record->name = $component;
if (!$version = get_component_version($component)) {
$record->version = null;
} else {
$record->version = $version;
}
$DB->insert_record('report_customlang_components', $record);
} elseif ($version = get_component_version($component)) {
if (is_null($current[$component]->version) or ($version > $current[$component]->version)) {
$DB->set_field('report_customlang_components', 'version', $version, array('id' => $current[$component]->id));
}
}
}
unset($current);
// reload components and fetch their strings
$stringman = get_string_manager();
$components = $DB->get_records('report_customlang_components');
foreach ($components as $component) {
$sql = "SELECT stringid, id, lang, componentid, original, master, local, timemodified, timecustomized, outdated, modified
FROM {report_customlang} s
WHERE lang = ? AND componentid = ?
ORDER BY stringid";
$current = $DB->get_records_sql($sql, array($lang, $component->id));
$english = $stringman->load_component_strings($component->name, 'en', true, true);
if ($lang == 'en') {
$master =& $english;
} else {
$master = $stringman->load_component_strings($component->name, $lang, true, true);
}
$local = $stringman->load_component_strings($component->name, $lang, true, false);
foreach ($english as $stringid => $stringoriginal) {
$stringmaster = isset($master[$stringid]) ? $master[$stringid] : null;
$stringlocal = isset($local[$stringid]) ? $local[$stringid] : null;
$now = time();
if (isset($current[$stringid])) {
$needsupdate = false;
$currentoriginal = $current[$stringid]->original;
$currentmaster = $current[$stringid]->master;
$currentlocal = $current[$stringid]->local;
if ($currentoriginal !== $stringoriginal or $currentmaster !== $stringmaster) {
$needsupdate = true;
$current[$stringid]->original = $stringoriginal;
$current[$stringid]->master = $stringmaster;
$current[$stringid]->timemodified = $now;
$current[$stringid]->outdated = 1;
}
if ($stringmaster !== $stringlocal) {
$needsupdate = true;
$current[$stringid]->local = $stringlocal;
$current[$stringid]->timecustomized = $now;
}
if ($needsupdate) {
$DB->update_record('report_customlang', $current[$stringid]);
continue;
}
} else {
$record = new stdclass();
$record->lang = $lang;
$record->componentid = $component->id;
$record->stringid = $stringid;
$record->original = $stringoriginal;
$record->master = $stringmaster;
$record->timemodified = $now;
$record->outdated = 0;
if ($stringmaster !== $stringlocal) {
$record->local = $stringlocal;
$record->timecustomized = $now;
} else {
$record->local = null;
$record->timecustomized = null;
}
$DB->insert_record('report_customlang', $record);
}
}
}
}
/**
* Exports the translator database into disk files
*
* @param mixed $lang language code
*/
public static function checkin($lang) {
global $DB, $USER, $CFG;
require_once($CFG->libdir.'/filelib.php');
if ($lang !== clean_param($lang, PARAM_LANG)) {
return false;
}
// get all customized strings from updated components
$sql = "SELECT s.*, c.name AS component
FROM {report_customlang} s
JOIN {report_customlang_components} c ON s.componentid = c.id
WHERE s.lang = ?
AND (s.local IS NOT NULL OR s.modified = 1)
ORDER BY componentid, stringid";
$strings = $DB->get_records_sql($sql, array($lang));
$files = array();
foreach ($strings as $string) {
if (!is_null($string->local)) {
$files[$string->component][$string->stringid] = $string->local;
}
}
fulldelete(self::get_localpack_location($lang));
foreach ($files as $component => $strings) {
self::dump_strings($lang, $component, $strings);
}
$DB->set_field_select('report_customlang', 'modified', 0, 'lang = ?', array($lang));
$sm = get_string_manager();
$sm->reset_caches();
}
/**
* Returns full path to the directory where local packs are dumped into
*
* @param string $lang language code
* @return string full path
*/
protected static function get_localpack_location($lang) {
global $CFG;
return $CFG->langlocalroot.'/'.$lang.'_local';
}
/**
* Writes strings into a local language pack file
*
* @param string $component the name of the component
* @param array $strings
*/
protected static function dump_strings($lang, $component, $strings) {
global $CFG;
if ($lang !== clean_param($lang, PARAM_LANG)) {
debugging('Unable to dump local strings for non-installed language pack .'.s($lang));
return false;
}
if ($component !== clean_param($component, PARAM_SAFEDIR)) {
throw new coding_exception('Incorrect component name');
}
if (!$filename = self::get_component_filename($component)) {
debugging('Unable to find the filename for the component '.s($component));
return false;
}
if ($filename !== clean_param($filename, PARAM_FILE)) {
throw new coding_exception('Incorrect file name '.s($filename));
}
list($package, $subpackage) = normalize_component($component);
$packageinfo = " * @package $package";
if (!is_null($subpackage)) {
$packageinfo .= "\n * @subpackage $subpackage";
}
$filepath = self::get_localpack_location($lang);
$filepath = $filepath.'/'.$filename;
if (!is_dir(dirname($filepath))) {
check_dir_exists(dirname($filepath));
}
if (!$f = fopen($filepath, 'w')) {
debugging('Unable to write '.s($filepath));
return false;
}
fwrite($f, <<<EOF
<?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/>.
/**
* Local language pack from $CFG->wwwroot
*
$packageinfo
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
EOF
);
foreach ($strings as $stringid => $text) {
if ($stringid !== clean_param($stringid, PARAM_STRINGID)) {
debugging('Invalid string identifier '.s($stringid));
continue;
}
fwrite($f, '$string[\'' . $stringid . '\'] = ');
fwrite($f, var_export($text, true));
fwrite($f, ";\n");
}
fclose($f);
}
/**
* Returns the name of the file where the component's local strings should be exported into
*
* @param string $component normalized name of the component, eg 'core' or 'mod_workshop'
* @return string|boolean filename eg 'moodle.php' or 'workshop.php', false if not found
*/
protected static function get_component_filename($component) {
if (is_null(self::$components)) {
self::$components = self::list_components();
}
$return = false;
foreach (self::$components as $legacy => $normalized) {
if ($component === $normalized) {
$return = $legacy.'.php';
break;
}
}
return $return;
}
/**
* Returns the number of modified strings checked out in the translator
*
* @param string $lang language code
* @return int
*/
public static function get_count_of_modified($lang) {
global $DB;
return $DB->count_records('report_customlang', array('lang'=>$lang, 'modified'=>1));
}
/**
* Saves filter data into a persistant storage such as user session
*
* @see self::load_filter()
* @param stdclass $data filter values
* @param stdclass $persistant storage object
*/
public static function save_filter(stdclass $data, stdclass $persistant) {
if (!isset($persistant->report_customlang_filter)) {
$persistant->report_customlang_filter = array();
}
foreach ($data as $key => $value) {
if ($key !== 'submit') {
$persistant->report_customlang_filter[$key] = serialize($value);
}
}
}
/**
* Loads the previously saved filter settings from a persistent storage
*
* @see self::save_filter()
* @param stdclass $persistant storage object
* @return stdclass filter data
*/
public static function load_filter(stdclass $persistant) {
$data = new stdclass();
if (isset($persistant->report_customlang_filter)) {
foreach ($persistant->report_customlang_filter as $key => $value) {
$data->{$key} = unserialize($value);
}
}
return $data;
}
}
/**
* Represents the action menu of the report
*/
class report_customlang_menu implements renderable {
/** @var menu items */
protected $items = array();
public function __construct(array $items = array()) {
global $CFG;
foreach ($items as $itemkey => $item) {
$this->add_item($itemkey, $item['title'], $item['url'], empty($item['method']) ? 'post' : $item['method']);
}
}
/**
* Returns the menu items
*
* @return array (string)key => (object)[->(string)title ->(moodle_url)url ->(string)method]
*/
public function get_items() {
return $this->items;
}
/**
* Adds item into the menu
*
* @param string $key item identifier
* @param string $title localized action title
* @param moodle_url $url action handler
* @param string $method form method
*/
public function add_item($key, $title, moodle_url $url, $method) {
if (isset($this->items[$key])) {
throw new coding_exception('Menu item already exists');
}
if (empty($title) or empty($key)) {
throw new coding_exception('Empty title or item key not allowed');
}
$item = new stdclass();
$item->title = $title;
$item->url = $url;
$item->method = $method;
$this->items[$key] = $item;
}
}
/**
* Represents the translation tool
*/
class report_customlang_translator implements renderable {
/** @const int number of rows per page */
const PERPAGE = 100;
/** @var int total number of the rows int the table */
public $numofrows = 0;
/** @var moodle_url */
public $handler;
/** @var string language code */
public $lang;
/** @var int page to display, starting with page 0 */
public $currentpage = 0;
/** @var array of stdclass strings to display */
public $strings = array();
/** @var stdclass */
protected $filter;
public function __construct(moodle_url $handler, $lang, $filter, $currentpage = 0) {
global $DB;
$this->handler = $handler;
$this->lang = $lang;
$this->filter = $filter;
$this->currentpage = $currentpage;
if (empty($filter) or empty($filter->component)) {
// nothing to do
$this->currentpage = 1;
return;
}
list($insql, $inparams) = $DB->get_in_or_equal($filter->component, SQL_PARAMS_NAMED);
$csql = "SELECT COUNT(*)";
$fsql = "SELECT s.id, s.*, c.name AS component";
$sql = " FROM {report_customlang_components} c
JOIN {report_customlang} s ON s.componentid = c.id
WHERE s.lang = :lang
AND c.name $insql";
$params = array_merge(array('lang' => $lang), $inparams);
if (!empty($filter->customized)) {
$sql .= " AND s.local IS NOT NULL";
}
if (!empty($filter->modified)) {
$sql .= " AND s.modified = 1";
}
if (!empty($filter->stringid)) {
$sql .= " AND s.stringid = :stringid";
$params['stringid'] = $filter->stringid;
}
if (!empty($filter->substring)) {
$sql .= " AND (".$DB->sql_like('s.original', ':substringoriginal', false)." OR
".$DB->sql_like('s.master', ':substringmaster', false)." OR
".$DB->sql_like('s.local', ':substringlocal', false).")";
$params['substringoriginal'] = '%'.$filter->substring.'%';
$params['substringmaster'] = '%'.$filter->substring.'%';
$params['substringlocal'] = '%'.$filter->substring.'%';
}
if (!empty($filter->helps)) {
$sql .= " AND ".$DB->sql_like('s.stringid', ':help', false); //ILIKE
$params['help'] = '%\_help';
} else {
$sql .= " AND ".$DB->sql_like('s.stringid', ':link', false, true, true); //NOT ILIKE
$params['link'] = '%\_link';
}
$osql = " ORDER BY c.name, s.stringid";
$this->numofrows = $DB->count_records_sql($csql.$sql, $params);
$this->strings = $DB->get_records_sql($fsql.$sql.$osql, $params, ($this->currentpage) * self::PERPAGE, self::PERPAGE);
}
}
-45
View File
@@ -1,45 +0,0 @@
// 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 report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
/**
* @namespace
*/
M.report_customlang = M.report_customlang || {};
/**
* YUI instance holder
*/
M.report_customlang.Y = {};
/**
* Initialize JS support for the edit.php
*
* @param {Object} Y YUI instance
*/
M.report_customlang.init_editor = function(Y) {
M.report_customlang.Y = Y;
Y.all('#translator .local textarea').each(function (textarea) {
var cell = textarea.get('parentNode');
textarea.setStyle('height', cell.getComputedStyle('height'));
});
}
-147
View File
@@ -1,147 +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/>.
/**
* Output rendering of Language customization admin report
*
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
/**
* Rendering methods for the report widgets
*/
class report_customlang_renderer extends plugin_renderer_base {
/**
* Renders customlang report menu
*
* @return string HTML
*/
protected function render_report_customlang_menu(report_customlang_menu $menu) {
$output = '';
foreach ($menu->get_items() as $item) {
$output .= $this->single_button($item->url, $item->title, $item->method);
}
return $this->box($output, 'menu');
}
/**
* Renders customlang translation table
*
* @param report_customlang_translator $translator
* @return string HTML
*/
protected function render_report_customlang_translator(report_customlang_translator $translator) {
$output = '';
if (empty($translator->strings)) {
return $this->heading(get_string('nostringsfound', 'report_customlang'), 3);
}
$table = new html_table();
$table->id = 'translator';
$table->head = array(
get_string('headingcomponent', 'report_customlang'),
get_string('headingstringid', 'report_customlang'),
get_string('headingstandard', 'report_customlang'),
get_string('headinglocal', 'report_customlang'),
);
foreach ($translator->strings as $string) {
$cells = array();
// component name
$cells[0] = new html_table_cell($string->component);
$cells[0]->attributes['class'] = 'component';
// string identification code
$cells[1] = new html_table_cell(html_writer::tag('div', s($string->stringid), array('class' => 'stringid')));
$cells[1]->attributes['class'] = 'stringid';
// master translation of the string
$master = html_writer::tag('div', s($string->master), array('class' => 'preformatted'));
$minheight = strlen($string->master) / 200;
if (preg_match('/\{\$a(->.+)?\}/', $string->master)) {
$master .= html_writer::tag('div', $this->help_icon('placeholder', 'report_customlang',
get_string('placeholderwarning', 'report_customlang')), array('class' => 'placeholderinfo'));
}
$cells[2] = new html_table_cell($master);
$cells[2]->attributes['class'] = 'standard master';
// local customization of the string
$textareaattributes = array('name'=>'cust['.$string->id.']', 'cols'=>40, 'rows'=>3);
if ($minheight>1) {
$textareaattributes['style'] = 'min-height:' . (int) 4*$minheight . 'em;';
}
$textarea = html_writer::tag('textarea', s($string->local), $textareaattributes);
$cells[3] = new html_table_cell($textarea);
if (!is_null($string->local) and $string->outdated) {
$mark = html_writer::empty_tag('input', array('type' => 'checkbox', 'id' => 'update_' . $string->id,
'name' => 'updates[]', 'value' => $string->id));
$help = $this->help_icon('markinguptodate', 'report_customlang');
$mark .= html_writer::tag('label', get_string('markuptodate', 'report_customlang') . $help,
array('for' => 'update_' . $string->id));
$mark = html_writer::tag('div', $mark, array('class' => 'uptodatewrapper'));
} else {
$mark = '';
}
$cells[3] = new html_table_cell($textarea."\n".$mark);
$cells[3]->attributes['class'] = 'local';
$cells[3]->id = 'id_'.$string->id;
if (!is_null($string->local)) {
$cells[3]->attributes['class'] .= ' customized';
}
if ($string->outdated) {
$cells[3]->attributes['class'] .= ' outdated';
}
if ($string->modified) {
$cells[3]->attributes['class'] .= ' modified';
}
if ($string->original !== $string->master) {
$cells[0]->rowspan = $cells[1]->rowspan = $cells[3]->rowspan = 2;
}
$row = new html_table_row($cells);
$table->data[] = $row;
if ($string->original !== $string->master) {
$cells = array();
// original of the string
$cells[2] = new html_table_cell(html_writer::tag('div', s($string->original), array('class' => 'preformatted')));
$cells[2]->attributes['class'] = 'standard original';
$row = new html_table_row($cells);
$table->data[] = $row;
}
}
$output .= html_writer::start_tag('form', array('method'=>'post', 'action'=>$translator->handler->out()));
$output .= html_writer::start_tag('div');
$output .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'translatorsubmitted', 'value'=>1));
$output .= html_writer::empty_tag('input', array('type'=>'hidden', 'name'=>'sesskey', 'value'=>sesskey()));
$save1 = html_writer::empty_tag('input', array('type'=>'submit', 'name'=>'savecontinue', 'value'=>get_string('savecontinue', 'report_customlang')));
$save2 = html_writer::empty_tag('input', array('type'=>'submit', 'name'=>'savecheckin', 'value'=>get_string('savecheckin', 'report_customlang')));
$output .= html_writer::tag('fieldset', $save1.$save2, array('class'=>'buttonsbar'));
$output .= html_writer::table($table);
$output .= html_writer::tag('fieldset', $save1.$save2, array('class'=>'buttonsbar'));
$output .= html_writer::end_tag('div');
$output .= html_writer::end_tag('form');
return $output;
}
}
-27
View File
@@ -1,27 +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/>.
/**
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$ADMIN->add('language', new admin_externalpage('reportcustomlang', get_string('pluginname', 'report_customlang'), "$CFG->wwwroot/$CFG->admin/report/customlang/index.php", 'report/customlang:view'));
-65
View File
@@ -1,65 +0,0 @@
.path-admin-report-customlang .langselectorbox,
.path-admin-report-customlang fieldset.buttonsbar,
.path-admin-report-customlang .menu {
margin: 5px auto;
text-align: center;
}
.path-admin-report-customlang .menu .singlebutton,
.path-admin-report-customlang .menu .singlebutton form,
.path-admin-report-customlang .menu .singlebutton form div {
display: inline;
}
.path-admin-report-customlang .mform.filterform {
width: 70%;
margin-left: auto;
margin-right: auto;
}
.path-admin-report-customlang .mform.filterform .fitem .fitemtitle {
width: 30%;
}
.path-admin-report-customlang .mform.filterform .fitem .felement {
width: 60%;
margin-left: 31%;
}
.path-admin-report-customlang #translator {
width: 100%;
}
.path-admin-report-customlang #translator .standard,
.path-admin-report-customlang #translator .local {
min-width: 35%;
}
.path-admin-report-customlang #translator .customized {
background-color: #e7f1c3;
}
.path-admin-report-customlang #translator .customized.outdated {
background-color: #f3f2aa;
}
.path-admin-report-customlang #translator .modified {
background-color: #ffd3d9;
}
.path-admin-report-customlang #translator .customized.modified {
background-color: #d2ebff;
}
.path-admin-report-customlang #translator textarea {
width: 100%;
min-height: 4em;
}
.path-admin-report-customlang #translator .placeholderinfo {
text-align: center;
border: 1px dotted #ddd;
background-color: #f6f6f6;
margin-top: 0.5em;
}
-28
View File
@@ -1,28 +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/>.
/**
* @package report
* @subpackage customlang
* @copyright 2010 David Mudrak <david@moodle.com>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
defined('MOODLE_INTERNAL') || die();
$plugin->version = 2010120900;
$plugin->requires = 2010120700;
-7
View File
@@ -1,7 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
// just a link to course report
$ADMIN->add('reports', new admin_externalpage('reportlog', get_string('log', 'admin'), "$CFG->wwwroot/course/report/log/index.php?id=".SITEID, 'coursereport/log:view'));
$ADMIN->add('reports', new admin_externalpage('reportloglive', get_string('loglive', 'coursereport_log'), "$CFG->wwwroot/course/report/log/indexlive.php?id=".SITEID, 'coursereport/log:viewlive'));
-186
View File
@@ -1,186 +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/>.
/**
* @package core
* @subpackage profiling
* @copyright 2010 onwards Eloy Lafuente (stronk7) {@link http://stronk7.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
// TODO: Move all the DB stuff to profiling_db_xxxx() function in xhprof_moodle.php
require_once(dirname(__FILE__).'/../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir . '/xhprof/xhprof_moodle.php');
define('PROFILING_RUNSPERPAGE', 50);
// page parameters
$script = optional_param('script', null, PARAM_PATH);
$runid = optional_param('runid', null, PARAM_ALPHANUM);
$runid2 = optional_param('runid2', null, PARAM_ALPHANUM);
$listurl = optional_param('listurl', null, PARAM_PATH);
$runreference= optional_param('runreference', 0, PARAM_INT);
$runcomment = optional_param('runcomment', null, PARAM_TEXT);
$dbfields = 'runid, url, totalexecutiontime, totalcputime, ' .
'totalcalls, totalmemory, runreference, runcomment, timecreated';
admin_externalpage_setup('reportprofiling');
// Always add listurl if available
if ($listurl) {
$listurlnav = new moodle_url('/admin/report/profiling/index.php', array('listurl' => $listurl));
$PAGE->navbar->add($listurl, $listurlnav);
}
// Header
echo $OUTPUT->header();
// We have requested the last available run for one script
if (isset($script)) {
// Get the last available run for the given script
$run = $DB->get_record_sql("SELECT $dbfields
FROM {profiling}
WHERE url = ?
AND id = (SELECT MAX(id)
FROM {profiling}
WHERE url = ?)",
array($script, $script), IGNORE_MISSING);
// No run found for script, warn and exit
if (!$run) {
notice(get_string('cannotfindanyrunforurl', 'report_profiling', $script), 'index.php');
}
// Check if there is any previous run marked as reference one
$prevreferences = $DB->get_records_select('profiling',
'url = ? AND runreference = 1 AND timecreated < ?',
array($run->url, $run->timecreated),
'timecreated DESC', 'runid', 0, 1);
$prevrunid = $prevreferences ? reset($prevreferences)->runid : false;
echo $OUTPUT->box_start('generalbox boxwidthwide boxaligncenter');
$header = get_string('lastrunof', 'report_profiling', $script);
echo $OUTPUT->heading($header);
$table = profiling_print_run($run, $prevrunid);
echo $table;
echo $OUTPUT->box_end();
// We have requested the diff between 2 runs
} else if (isset($runid) && isset($runid2)) {
$run1 = $DB->get_record('profiling', array('runid'=>$runid), $dbfields, MUST_EXIST);
$run2 = $DB->get_record('profiling', array('runid'=>$runid2), $dbfields, MUST_EXIST);
if ($run1->url == $run2->url && $run1->runid != $run2->runid) {
if ($run2->timecreated < $run1->timecreated) {
$runtemp = $run1;
$run1 = $run2;
$run2 = $runtemp;
}
echo $OUTPUT->box_start('generalbox boxwidthwide boxaligncenter');
$header = get_string('differencesbetween2runsof', 'report_profiling', $run1->url);
echo $OUTPUT->heading($header);
$table = profiling_print_rundiff($run1, $run2);
echo $table;
echo $OUTPUT->box_end();
}
// We have requested one run, invoke it
} else if (isset($runid)) {
// Check if we are trying to update the runreference/runcomment for the run
if (isset($runcomment) && confirm_sesskey()) {
$id = $DB->get_field('profiling', 'id', array('runid' => $runid), MUST_EXIST);
$rec = new stdClass();
$rec->id = $id;
$rec->runreference = (bool)$runreference;
$rec->runcomment = $runcomment;
$DB->update_record('profiling', $rec);
}
// Get the requested runid
$run = $DB->get_record('profiling', array('runid'=>$runid), $dbfields, IGNORE_MISSING);
// No run found for runid, warn and exit
if (!$run) {
notice(get_string('cannotfindanyrunforrunid', 'report_profiling', $runid), 'index.php');
}
// Check if there is any previous run marked as reference one
$prevreferences = $DB->get_records_select('profiling',
'url = ? AND runreference = 1 AND timecreated < ?',
array($run->url, $run->timecreated),
'timecreated DESC', 'runid', 0, 1);
$prevrunid = $prevreferences ? reset($prevreferences)->runid : false;
echo $OUTPUT->box_start('generalbox boxwidthwide boxaligncenter');
$header = get_string('summaryof', 'report_profiling', $run->url);
echo $OUTPUT->heading($header);
$table = profiling_print_run($run, $prevrunid);
echo $table;
echo $OUTPUT->box_end();
// Default: List one page of runs
} else {
// The flexitable that will root listings
$table = new xhprof_table_sql('profiling-list-table');
$baseurl = $CFG->wwwroot . '/admin/report/profiling/index.php';
// Check if we are listing all or some URL ones
$sqlconditions = '';
$sqlparams = array();
if (!isset($listurl)) {
$header = get_string('pluginname', 'report_profiling');
$sqlconditions = '1 = 1';
$table->set_listurlmode(false);
} else {
$header = get_string('profilingrunsfor', 'report_profiling', $listurl);
$sqlconditions = 'url = :url';
$sqlparams['url'] = $listurl;
$table->set_listurlmode(true);
$baseurl .= '?listurl=' . urlencode($listurl);
}
echo $OUTPUT->heading($header);
// TODO: Fix flexitable to validate tsort/thide/tshow/tifirs/tilast/page
// TODO: Fix table_sql to allow it to work without WHERE clause
// add silly condition (1 = 1) because of table_sql bug
$table->set_sql($dbfields, '{profiling}', $sqlconditions, $sqlparams);
$table->set_count_sql("SELECT COUNT(*) FROM {profiling} WHERE $sqlconditions", $sqlparams);
$columns = array(
'url', 'timecreated', 'totalexecutiontime', 'totalcputime',
'totalcalls', 'totalmemory', 'runcomment');
$headers = array(
get_string('url'), get_string('date'), get_string('executiontime', 'report_profiling'),
get_string('cputime', 'report_profiling'), get_string('calls', 'report_profiling'),
get_string('memory', 'report_profiling'), get_string('comment', 'report_profiling'));
$table->define_columns($columns);
$table->define_headers($headers);
$table->sortable(true, 'timecreated', SORT_DESC);
$table->define_baseurl($baseurl);
$table->column_suppress('url');
$table->out(PROFILING_RUNSPERPAGE, true);
// Print the controller block with different options
echo profiling_list_controls($listurl);
}
// Footer.
echo $OUTPUT->footer();
@@ -1,45 +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 'report_profiling', language 'en', branch 'MOODLE_20_STABLE'
*
* @package report_profiling
* @copyright 2010 onwards Eloy Lafuente (stronk7) {@link http://stronk7.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['calls'] = 'Function calls';
$string['cannotfindanyrunforurl'] = 'Sorry, cannot find any profiling run for the \'{$a}\' URL';
$string['cannotfindanyrunforrunid'] = 'Sorry, cannot find the \'{$a}\' profiling run';
$string['comment'] = 'Comment';
$string['differencesbetween2runsof'] = 'Differences between 2 runs of {$a}';
$string['executiontime'] = 'Execution time';
$string['cputime'] = 'CPU time';
$string['lastrunof'] = 'Summary of last run of {$a}';
$string['markreferencerun'] = 'Mark as reference run/comment';
$string['memory'] = 'Memory used';
$string['pluginname'] = 'Profiling runs';
$string['profilingfocusscript'] = 'Focus on profiling runs for the script: {$a}';
$string['profilingruns'] = 'Profiling runs';
$string['profilingrunsfor'] = 'Profiling runs for {$a}';
$string['referencerun'] = 'Reference run/comment';
$string['runid'] = 'Run ID';
$string['summaryof'] = 'Summary of {$a}';
$string['viewdetails'] = 'View profiling details';
$string['viewdiff'] = 'View profiling differences with last reference run';
$string['viewdiffdetails'] = 'View profiling diff details';
-8
View File
@@ -1,8 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
// profiling report, added to development
if (extension_loaded('xhprof') && function_exists('xhprof_enable') && !empty($CFG->profilingenabled)) {
$ADMIN->add('development', new admin_externalpage('reportprofiling', get_string('pluginname', 'report_profiling'), "$CFG->wwwroot/$CFG->admin/report/profiling/index.php", 'moodle/site:config'));
}
-25
View File
@@ -1,25 +0,0 @@
/* report_profiling styles */
.path-admin-report-profiling .profilingruntable .label {
font-weight: bold;
}
.path-admin-report-profiling .profiling_worse {
color: red;
}
.path-admin-report-profiling .profiling_better {
color: green;
}
.path-admin-report-profiling .profiling_same {
color: dimgrey;
}
.path-admin-report-profiling .profiling_important,
.path-admin-report-profiling .flexible .referencerun {
font-weight: bold;
}
.path-admin-report-profiling .flexible .r1 .cell {
background-color: whitesmoke;
}
.path-admin-report-profiling .flexible {
margin-left:auto;
margin-right:auto
}
@@ -1,37 +0,0 @@
<?php
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.com //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
$capabilities = array(
'report/questioninstances:view' => array(
'captype' => 'read',
'contextlevel' => CONTEXT_SYSTEM,
'archetypes' => array(
'manager' => CAP_ALLOW
),
'clonepermissionsfrom' => 'moodle/site:config',
)
);
-129
View File
@@ -1,129 +0,0 @@
<?php
/**
* For a given question type, list the number of
*
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License
* @package roles
*/
/** */
require_once(dirname(__FILE__).'/../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/questionlib.php');
// Get URL parameters.
$requestedqtype = optional_param('qtype', '', PARAM_SAFEDIR);
// Print the header & check permissions.
admin_externalpage_setup('reportquestioninstances');
echo $OUTPUT->header();
// Log.
add_to_log(SITEID, "admin", "report questioninstances", "report/questioninstances/index.php?qtype=$requestedqtype", $requestedqtype);
// Prepare the list of capabilities to choose from
$qtypechoices = array();
foreach ($QTYPES as $qtype) {
$qtypechoices[$qtype->name()] = $qtype->local_name();
}
// Print the settings form.
echo $OUTPUT->box_start('generalbox boxwidthwide boxaligncenter centerpara');
echo '<form method="get" action="." id="settingsform"><div>';
echo $OUTPUT->heading(get_string('reportsettings', 'report_questioninstances'));
echo '<p id="intro">', get_string('intro', 'report_questioninstances') , '</p>';
echo '<p><label for="menuqtype"> ' . get_string('questiontype', 'admin') . '</label> ';
echo html_writer::select($qtypechoices, 'qtype', $requestedqtype, array('_all_'=>get_string('all')));
echo '</p>';
echo '<p><input type="submit" id="settingssubmit" value="' .
get_string('getreport', 'report_questioninstances') . '" /></p>';
echo '</div></form>';
echo $OUTPUT->box_end();
// If we have a qtype to report on, generate the report.
if ($requestedqtype) {
// Work out the bits needed for the SQL WHERE clauses.
if ($requestedqtype == 'missingtype') {
$othertypes = array_keys($QTYPES);
$key = array_search('missingtype', $othertypes);
unset($othertypes[$key]);
list($sqlqtypetest, $params) = $DB->get_in_or_equal($othertypes, SQL_PARAMS_QM, '', false);
$sqlqtypetest = 'WHERE qtype ' . $sqlqtypetest;
$title = get_string('reportformissingqtypes', 'report_questioninstances');
} else if ($requestedqtype == '_all_') {
$sqlqtypetest = '';
$params = array();
$title = get_string('reportforallqtypes', 'report_questioninstances');
} else {
$sqlqtypetest = 'WHERE qtype = ?';
$params = array($requestedqtype);
$title = get_string('reportforqtype', 'report_questioninstances', $QTYPES[$requestedqtype]->local_name());
}
// Get the question counts, and all the context information, for each
// context. That is, rows of these results can be used as $context objects.
$counts = $DB->get_records_sql("
SELECT qc.contextid, count(1) as numquestions, sum(hidden) as numhidden, con.id, con.contextlevel, con.instanceid, con.path, con.depth
FROM {question} q
JOIN {question_categories} qc ON q.category = qc.id
JOIN {context} con ON con.id = qc.contextid
$sqlqtypetest
GROUP BY contextid, con.id, con.contextlevel, con.instanceid, con.path, con.depth
ORDER BY numquestions DESC, numhidden ASC, con.contextlevel ASC, con.id ASC", $params);
// Print the report heading.
echo $OUTPUT->heading($title);
// Initialise the table.
$table = new html_table();
$table->head = array(
get_string('context', 'role'),
get_string('totalquestions', 'report_questioninstances'),
get_string('visiblequestions', 'report_questioninstances'),
get_string('hiddenquestions', 'report_questioninstances'));
$table->data = array();
$table->class = '';
$table->id = '';
// Add the data for each row.
$totalquestions = 0;
$totalvisible = 0;
$totalhidden = 0;
foreach ($counts as $count) {
// Work out a link for editing questions in this context.
$contextname = print_context_name($count);
$url = question_edit_url($count);
if ($url) {
$contextname = '<a href="' . $url . '" title="' .
get_string('editquestionshere', 'report_questioninstances') .
'">' . $contextname . '</a>';
}
// Put the scores in the table.
$numvisible = $count->numquestions - $count->numhidden;
$table->data[] = array(
$contextname,
$count->numquestions,
$numvisible,
$count->numhidden);
// Update the totals.
$totalquestions += $count->numquestions;
$totalvisible += $numvisible;
$totalhidden += $count->numhidden;
}
// Add a totals row.
$table->data[] = array(
'<b>' . get_string('total') . '</b>',
$totalquestions,
$totalvisible,
$totalhidden);
// Print it.
echo html_writer::table($table);
}
// Footer.
echo $OUTPUT->footer();
@@ -1,5 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
$ADMIN->add('reports', new admin_externalpage('reportquestioninstances', get_string('pluginname', 'report_questioninstances'), "$CFG->wwwroot/$CFG->admin/report/questioninstances/index.php", 'report/questioninstances:view'));
@@ -1,27 +0,0 @@
<?PHP
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.com //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
$plugin->version = 2010090501;
$plugin->requires = 2010090501;
-36
View File
@@ -1,36 +0,0 @@
<?php
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.com //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
$capabilities = array(
'report/security:view' => array(
'riskbitmask' => RISK_CONFIG,
'captype' => 'read',
'contextlevel' => CONTEXT_SYSTEM,
'archetypes' => array(
'manager' => CAP_ALLOW
),
)
);
-127
View File
@@ -1,127 +0,0 @@
<?php
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.org //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
define('NO_OUTPUT_BUFFERING', true);
require_once('../../../config.php');
require_once($CFG->dirroot.'/'.$CFG->admin.'/report/security/lib.php');
require_once($CFG->libdir.'/adminlib.php');
require_login();
$issue = optional_param('issue', '', PARAM_ALPHANUMEXT); // show detailed info about one issue only
$issues = report_security_get_issue_list();
// test if issue valid string
if (array_search($issue, $issues, true) === false) {
$issue = '';
}
// we may need a bit more memory and this may take a long time to process
raise_memory_limit(MEMORY_EXTRA);
@set_time_limit(0);
// Print the header.
admin_externalpage_setup('reportsecurity');
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('pluginname', 'report_security'));
echo '<div id="timewarning">'.get_string('timewarning', 'report_security').'</div>';
$strok = '<span class="statusok">'.get_string('statusok', 'report_security').'</span>';
$strinfo = '<span class="statusinfo">'.get_string('statusinfo', 'report_security').'</span>';
$strwarning = '<span class="statuswarning">'.get_string('statuswarning', 'report_security').'</span>';
$strserious = '<span class="statusserious">'.get_string('statusserious', 'report_security').'</span>';
$strcritical = '<span class="statuscritical">'.get_string('statuscritical', 'report_security').'</span>';
$strissue = get_string('issue', 'report_security');
$strstatus = get_string('status', 'report_security');
$strdesc = get_string('description', 'report_security');
$strconfig = get_string('configuration', 'report_security');
$statusarr = array(REPORT_SECURITY_OK => $strok,
REPORT_SECURITY_INFO => $strinfo,
REPORT_SECURITY_WARNING => $strwarning,
REPORT_SECURITY_SERIOUS => $strserious,
REPORT_SECURITY_CRITICAL => $strcritical);
$url = "$CFG->wwwroot/$CFG->admin/report/security/index.php";
if ($issue and ($result = $issue(true))) {
report_security_hide_timearning();
$table = new html_table();
$table->head = array($strissue, $strstatus, $strdesc, $strconfig);
$table->size = array('30%', '10%', '50%', '10%' );
$table->align = array('left', 'left', 'left', 'left');
$table->attributes = array('class'=>'scurityreporttable generaltable');
$table->data = array();
// print detail of one issue only
$row = array();
$row[0] = report_security_doc_link($issue, $result->name);
$row[1] = $statusarr[$result->status];
$row[2] = $result->info;
$row[3] = is_null($result->link) ? '&nbsp;' : $result->link;
$PAGE->set_docs_path('admin/report/security/' . $issue);
$table->data[] = $row;
echo html_writer::table($table);
echo $OUTPUT->box($result->details, 'generalbox boxwidthnormal boxaligncenter'); // TODO: add proper css
echo $OUTPUT->continue_button($url);
} else {
report_security_hide_timearning();
$table = new html_table();
$table->head = array($strissue, $strstatus, $strdesc);
$table->size = array('30%', '10%', '60%' );
$table->align = array('left', 'left', 'left');
$table->attributes = array('class'=>'scurityreporttable generaltable');
$table->data = array();
foreach ($issues as $issue) {
$result = $issue(false);
if (!$result) {
// ignore this test
continue;
}
$row = array();
$row[0] = "<a href='$url?issue=$result->issue'>$result->name</a>";
$row[1] = $statusarr[$result->status];
$row[2] = $result->info;
$table->data[] = $row;
}
echo html_writer::table($table);
}
echo $OUTPUT->footer();
-883
View File
@@ -1,883 +0,0 @@
<?php
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.org //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://dougiamas.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
require_once("$CFG->libdir/adminlib.php");
define('REPORT_SECURITY_OK', 'ok');
define('REPORT_SECURITY_INFO', 'info');
define('REPORT_SECURITY_WARNING', 'warning');
define('REPORT_SECURITY_SERIOUS', 'serious');
define('REPORT_SECURITY_CRITICAL', 'critical');
function report_security_hide_timearning() {
global $PAGE;
$PAGE->requires->js_init_code("Y.one('#timewarning').addClass('timewarninghidden')");
}
function report_security_get_issue_list() {
return array(
'report_security_check_globals',
'report_security_check_unsecuredataroot',
'report_security_check_displayerrors',
'report_security_check_noauth',
'report_security_check_embed',
'report_security_check_mediafilterswf',
'report_security_check_openprofiles',
'report_security_check_google',
'report_security_check_passwordpolicy',
'report_security_check_passwordsaltmain',
'report_security_check_emailchangeconfirmation',
'report_security_check_cookiesecure',
'report_security_check_configrw',
'report_security_check_riskxss',
'report_security_check_riskadmin',
'report_security_check_riskbackup',
'report_security_check_defaultuserrole',
'report_security_check_guestrole',
'report_security_check_frontpagerole',
);
}
function report_security_doc_link($issue, $name) {
global $CFG, $OUTPUT;
if (empty($CFG->docroot)) {
return $name;
}
return $OUTPUT->doc_link('report/security/'.$issue, $name);
}
///=============================================
/// Issue checks
///=============================================
/**
* Verifies register globals PHP setting.
* @param bool $detailed
* @return object result
*/
function report_security_check_globals($detailed=false) {
$result = new stdClass();
$result->issue = 'report_security_check_globals';
$result->name = get_string('check_globals_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
if (ini_get_bool('register_globals')) {
$result->status = REPORT_SECURITY_CRITICAL;
$result->info = get_string('check_globals_error', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_globals_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_globals_details', 'report_security');
}
return $result;
}
/**
* Verifies unsupported noauth setting
* @param bool $detailed
* @return object result
*/
function report_security_check_noauth($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_noauth';
$result->name = get_string('check_noauth_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=manageauths\">".get_string('authsettings', 'admin').'</a>';
if (is_enabled_auth('none')) {
$result->status = REPORT_SECURITY_CRITICAL;
$result->info = get_string('check_noauth_error', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_noauth_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_noauth_details', 'report_security');
}
return $result;
}
/**
* Verifies if password policy set
* @param bool $detailed
* @return object result
*/
function report_security_check_passwordpolicy($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_passwordpolicy';
$result->name = get_string('check_passwordpolicy_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=sitepolicies\">".get_string('sitepolicies', 'admin').'</a>';
if (empty($CFG->passwordpolicy)) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_passwordpolicy_error', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_passwordpolicy_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_passwordpolicy_details', 'report_security');
}
return $result;
}
/**
* Verifies sloppy embedding - this should have been removed long ago!!
* @param bool $detailed
* @return object result
*/
function report_security_check_embed($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_embed';
$result->name = get_string('check_embed_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=sitepolicies\">".get_string('sitepolicies', 'admin').'</a>';
if (!empty($CFG->allowobjectembed)) {
$result->status = REPORT_SECURITY_CRITICAL;
$result->info = get_string('check_embed_error', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_embed_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_embed_details', 'report_security');
}
return $result;
}
/**
* Verifies sloppy swf embedding - this should have been removed long ago!!
* @param bool $detailed
* @return object result
*/
function report_security_check_mediafilterswf($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_mediafilterswf';
$result->name = get_string('check_mediafilterswf_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=filtersettingfiltermediaplugin\">".get_string('filtersettings', 'admin').'</a>';
$activefilters = filter_get_globally_enabled();
if (array_search('filter/mediaplugin', $activefilters) !== false and !empty($CFG->filter_mediaplugin_enable_swf)) {
$result->status = REPORT_SECURITY_CRITICAL;
$result->info = get_string('check_mediafilterswf_error', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_mediafilterswf_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_mediafilterswf_details', 'report_security');
}
return $result;
}
/**
* Verifies fatal misconfiguration of dataroot
* @param bool $detailed
* @return object result
*/
function report_security_check_unsecuredataroot($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_unsecuredataroot';
$result->name = get_string('check_unsecuredataroot_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
$insecuredataroot = is_dataroot_insecure(true);
if ($insecuredataroot == INSECURE_DATAROOT_WARNING) {
$result->status = REPORT_SECURITY_SERIOUS;
$result->info = get_string('check_unsecuredataroot_warning', 'report_security', $CFG->dataroot);
} else if ($insecuredataroot == INSECURE_DATAROOT_ERROR) {
$result->status = REPORT_SECURITY_CRITICAL;
$result->info = get_string('check_unsecuredataroot_error', 'report_security', $CFG->dataroot);
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_unsecuredataroot_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_unsecuredataroot_details', 'report_security');
}
return $result;
}
/**
* Verifies displaying of errors - problem for lib files and 3rd party code
* because we can not disable debugging in these scripts (they do not include config.php)
* @param bool $detailed
* @return object result
*/
function report_security_check_displayerrors($detailed=false) {
$result = new stdClass();
$result->issue = 'report_security_check_displayerrors';
$result->name = get_string('check_displayerrors_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
if (defined('WARN_DISPLAY_ERRORS_ENABLED')) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_displayerrors_error', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_displayerrors_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_displayerrors_details', 'report_security');
}
return $result;
}
/**
* Verifies open profiles - originally open by default, not anymore because spammer abused it a lot
* @param bool $detailed
* @return object result
*/
function report_security_check_openprofiles($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_openprofiles';
$result->name = get_string('check_openprofiles_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=sitepolicies\">".get_string('sitepolicies', 'admin').'</a>';
if (empty($CFG->forcelogin) and empty($CFG->forceloginforprofiles)) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_openprofiles_error', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_openprofiles_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_openprofiles_details', 'report_security');
}
return $result;
}
/**
* Verifies google access not combined with disabled guest access
* because attackers might gain guest access by modifying browser signature.
* @param bool $detailed
* @return object result
*/
function report_security_check_google($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_google';
$result->name = get_string('check_google_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=sitepolicies\">".get_string('sitepolicies', 'admin').'</a>';
if (empty($CFG->opentogoogle)) {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_google_ok', 'report_security');
} else if (!empty($CFG->guestloginbutton)) {
$result->status = REPORT_SECURITY_INFO;
$result->info = get_string('check_google_info', 'report_security');
} else {
$result->status = REPORT_SECURITY_SERIOUS;
$result->info = get_string('check_google_error', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_google_details', 'report_security');
}
return $result;
}
/**
* Verifies email confirmation - spammers were changing mails very often
* @param bool $detailed
* @return object result
*/
function report_security_check_emailchangeconfirmation($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_emailchangeconfirmation';
$result->name = get_string('check_emailchangeconfirmation_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=sitepolicies\">".get_string('sitepolicies', 'admin').'</a>';
if (empty($CFG->emailchangeconfirmation)) {
if (empty($CFG->allowemailaddresses)) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_emailchangeconfirmation_error', 'report_security');
} else {
$result->status = REPORT_SECURITY_INFO;
$result->info = get_string('check_emailchangeconfirmation_info', 'report_security');
}
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_emailchangeconfirmation_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_emailchangeconfirmation_details', 'report_security');
}
return $result;
}
/**
* Verifies if https enabled only secure cookies allowed,
* this prevents redirections and sending of cookies to unsecure port.
* @param bool $detailed
* @return object result
*/
function report_security_check_cookiesecure($detailed=false) {
global $CFG;
if (strpos($CFG->wwwroot, 'https://') !== 0) {
return null;
}
$result = new stdClass();
$result->issue = 'report_security_check_cookiesecure';
$result->name = get_string('check_cookiesecure_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=httpsecurity\">".get_string('httpsecurity', 'admin').'</a>';
if (empty($CFG->cookiesecure)) {
$result->status = REPORT_SECURITY_SERIOUS;
$result->info = get_string('check_cookiesecure_error', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_cookiesecure_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_cookiesecure_details', 'report_security');
}
return $result;
}
/**
* Verifies config.php is not writable anymore after installation,
* config files were changed on several outdated server.
* @param bool $detailed
* @return object result
*/
function report_security_check_configrw($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_configrw';
$result->name = get_string('check_configrw_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
if (is_writable($CFG->dirroot.'/config.php')) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_configrw_warning', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_configrw_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_configrw_details', 'report_security');
}
return $result;
}
function report_security_check_passwordsaltmain($detailed=false) {
global $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_passwordsaltmain';
$result->name = get_string('check_passwordsaltmain_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
if (empty($CFG->passwordsaltmain)) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_passwordsaltmain_warning', 'report_security');
} else if ($CFG->passwordsaltmain === 'some long random string here with lots of characters'
|| trim($CFG->passwordsaltmain) === '' || preg_match('/^([a-z0-9]{0,10})$/i', $CFG->passwordsaltmain)) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_passwordsaltmain_weak', 'report_security');
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_passwordsaltmain_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_passwordsaltmain_details', 'report_security', get_docs_url('report/security/report_security_check_passwordsaltmain'));
}
return $result;
}
/**
* Lists all users with XSS risk, it would be great to combine this with risk trusts in user table,
* unfortunately nobody implemented user trust UI yet :-(
* @param bool $detailed
* @return object result
*/
function report_security_check_riskxss($detailed=false) {
global $DB;
$result = new stdClass();
$result->issue = 'report_security_check_riskxss';
$result->name = get_string('check_riskxss_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = REPORT_SECURITY_WARNING;
$result->link = null;
$params = array('capallow'=>CAP_ALLOW);
$sqlfrom = "FROM (SELECT rcx.*
FROM {role_capabilities} rcx
JOIN {capabilities} cap ON (cap.name = rcx.capability AND ".$DB->sql_bitand('cap.riskbitmask', RISK_XSS)." <> 0)
WHERE rcx.permission = :capallow) rc,
{context} c,
{context} sc,
{role_assignments} ra,
{user} u
WHERE c.id = rc.contextid
AND (sc.path = c.path OR sc.path LIKE ".$DB->sql_concat('c.path', "'/%'")." OR c.path LIKE ".$DB->sql_concat('sc.path', "'/%'").")
AND u.id = ra.userid AND u.deleted = 0
AND ra.contextid = sc.id AND ra.roleid = rc.roleid";
$count = $DB->count_records_sql("SELECT COUNT(DISTINCT u.id) $sqlfrom", $params);
$result->info = get_string('check_riskxss_warning', 'report_security', $count);
if ($detailed) {
$users = $DB->get_records_sql("SELECT DISTINCT u.id, u.firstname, u.lastname, u.picture, u.imagealt $sqlfrom", $params);
foreach ($users as $uid=>$user) {
$users[$uid] = fullname($user);
}
$users = implode(', ', $users);
$result->details = get_string('check_riskxss_details', 'report_security', $users);
}
return $result;
}
/**
* Verifies sanity of default user role.
* @param bool $detailed
* @return object result
*/
function report_security_check_defaultuserrole($detailed=false) {
global $DB, $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_defaultuserrole';
$result->name = get_string('check_defaultuserrole_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=userpolicies\">".get_string('userpolicies', 'admin').'</a>';;
if (!$default_role = $DB->get_record('role', array('id'=>$CFG->defaultuserroleid))) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_defaultuserrole_notset', 'report_security');
$result->details = $result->info;
return $result;
}
// risky caps - usually very dangerous
$params = array('capallow'=>CAP_ALLOW, 'roleid'=>$default_role->id);
$sql = "SELECT COUNT(DISTINCT rc.contextid)
FROM {role_capabilities} rc
JOIN {capabilities} cap ON cap.name = rc.capability
WHERE ".$DB->sql_bitand('cap.riskbitmask', (RISK_XSS | RISK_CONFIG | RISK_DATALOSS))." <> 0
AND rc.permission = :capallow
AND rc.roleid = :roleid";
$riskycount = $DB->count_records_sql($sql, $params);
// it may have either none or 'user' archetype - nothing else, or else it would break during upgrades badly
if ($default_role->archetype === '' or $default_role->archetype === 'user') {
$legacyok = true;
} else {
$legacyok = false;
}
if ($riskycount or !$legacyok) {
$result->status = REPORT_SECURITY_CRITICAL;
$result->info = get_string('check_defaultuserrole_error', 'report_security', format_string($default_role->name));
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_defaultuserrole_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_defaultuserrole_details', 'report_security');
}
return $result;
}
/**
* Verifies sanity of guest role
* @param bool $detailed
* @return object result
*/
function report_security_check_guestrole($detailed=false) {
global $DB, $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_guestrole';
$result->name = get_string('check_guestrole_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=userpolicies\">".get_string('userpolicies', 'admin').'</a>';;
if (!$guest_role = $DB->get_record('role', array('id'=>$CFG->guestroleid))) {
$result->status = REPORT_SECURITY_WARNING;
$result->info = get_string('check_guestrole_notset', 'report_security');
$result->details = $result->info;
return $result;
}
// risky caps - usually very dangerous
$params = array('capallow'=>CAP_ALLOW, 'roleid'=>$guest_role->id);
$sql = "SELECT COUNT(DISTINCT rc.contextid)
FROM {role_capabilities} rc
JOIN {capabilities} cap ON cap.name = rc.capability
WHERE ".$DB->sql_bitand('cap.riskbitmask', (RISK_XSS | RISK_CONFIG | RISK_DATALOSS))." <> 0
AND rc.permission = :capallow
AND rc.roleid = :roleid";
$riskycount = $DB->count_records_sql($sql, $params);
// it may have either no or 'guest' archetype - nothing else, or else it would break during upgrades badly
if ($guest_role->archetype === '' or $guest_role->archetype === 'guest') {
$legacyok = true;
} else {
$legacyok = false;
}
if ($riskycount or !$legacyok) {
$result->status = REPORT_SECURITY_CRITICAL;
$result->info = get_string('check_guestrole_error', 'report_security', format_string($guest_role->name));
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_guestrole_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_guestrole_details', 'report_security');
}
return $result;
}
/**
* Verifies sanity of frontpage role
* @param bool $detailed
* @return object result
*/
function report_security_check_frontpagerole($detailed=false) {
global $DB, $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_frontpagerole';
$result->name = get_string('check_frontpagerole_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = "<a href=\"$CFG->wwwroot/$CFG->admin/settings.php?section=frontpagesettings\">".get_string('frontpagesettings','admin').'</a>';;
if (!$frontpage_role = $DB->get_record('role', array('id'=>$CFG->defaultfrontpageroleid))) {
$result->status = REPORT_SECURITY_INFO;
$result->info = get_string('check_frontpagerole_notset', 'report_security');
$result->details = get_string('check_frontpagerole_details', 'report_security');
return $result;
}
// risky caps - usually very dangerous
$params = array('capallow'=>CAP_ALLOW, 'roleid'=>$frontpage_role->id);
$sql = "SELECT COUNT(DISTINCT rc.contextid)
FROM {role_capabilities} rc
JOIN {capabilities} cap ON cap.name = rc.capability
WHERE ".$DB->sql_bitand('cap.riskbitmask', (RISK_XSS | RISK_CONFIG | RISK_DATALOSS))." <> 0
AND rc.permission = :capallow
AND rc.roleid = :roleid";
$riskycount = $DB->count_records_sql($sql, $params);
// there is no legacy role type for frontpage yet - anyway we can not allow teachers or admins there!
if ($frontpage_role->archetype === 'teacher' or $frontpage_role->archetype === 'editingteacher'
or $frontpage_role->archetype === 'coursecreator' or $frontpage_role->archetype === 'manager') {
$legacyok = false;
} else {
$legacyok = true;
}
if ($riskycount or !$legacyok) {
$result->status = REPORT_SECURITY_CRITICAL;
$result->info = get_string('check_frontpagerole_error', 'report_security', format_string($frontpage_role->name));
} else {
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_frontpagerole_ok', 'report_security');
}
if ($detailed) {
$result->details = get_string('check_frontpagerole_details', 'report_security');
}
return $result;
}
/**
* Lists all admins.
* @param bool $detailed
* @return object result
*/
function report_security_check_riskadmin($detailed=false) {
global $DB, $CFG;
$result = new stdClass();
$result->issue = 'report_security_check_riskadmin';
$result->name = get_string('check_riskadmin_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
$sql = "SELECT u.id, u.firstname, u.lastname, u.picture, u.imagealt, u.email
FROM {user} u
WHERE u.id IN ($CFG->siteadmins)";
$admins = $DB->get_records_sql($sql);
$admincount = count($admins);
if ($detailed) {
foreach ($admins as $uid=>$user) {
$url = "$CFG->wwwroot/user/view.php?id=$user->id";
$admins[$uid] = '<li><a href="'.$url.'">'.fullname($user).' ('.$user->email.')</a></li>';
}
$admins = '<ul>'.implode($admins).'</ul>';
}
$result->status = REPORT_SECURITY_OK;
$result->info = get_string('check_riskadmin_ok', 'report_security', $admincount);
if ($detailed) {
$result->details = get_string('check_riskadmin_detailsok', 'report_security', $admins);
}
return $result;
}
/**
* Lists all roles that have the ability to backup user data, as well as users
* @param bool $detailed
* @return object result
*/
function report_security_check_riskbackup($detailed=false) {
global $CFG, $DB;
$result = new stdClass();
$result->issue = 'report_security_check_riskbackup';
$result->name = get_string('check_riskbackup_name', 'report_security');
$result->info = null;
$result->details = null;
$result->status = null;
$result->link = null;
$syscontext = get_context_instance(CONTEXT_SYSTEM);
$params = array('capability'=>'moodle/backup:userinfo', 'permission'=>CAP_ALLOW, 'contextid'=>$syscontext->id);
$sql = "SELECT DISTINCT r.id, r.name, r.shortname, r.sortorder, r.archetype
FROM {role} r
JOIN {role_capabilities} rc ON rc.roleid = r.id
WHERE rc.capability = :capability
AND rc.contextid = :contextid
AND rc.permission = :permission";
$systemroles = $DB->get_records_sql($sql, $params);
$params = array('capability'=>'moodle/backup:userinfo', 'permission'=>CAP_ALLOW, 'contextid'=>$syscontext->id);
$sql = "SELECT DISTINCT r.id, r.name, r.shortname, r.sortorder, r.archetype, rc.contextid
FROM {role} r
JOIN {role_capabilities} rc ON rc.roleid = r.id
WHERE rc.capability = :capability
AND rc.contextid <> :contextid
AND rc.permission = :permission";
$overriddenroles = $DB->get_records_sql($sql, $params);
// list of users that are able to backup personal info
// note: "sc" is context where is role assigned,
// "c" is context where is role overridden or system context if in role definition
$params = array('capability'=>'moodle/backup:userinfo', 'permission'=>CAP_ALLOW, 'context1'=>CONTEXT_COURSE, 'context2'=>CONTEXT_COURSE);
$sqluserinfo = "
FROM (SELECT rcx.*
FROM {role_capabilities} rcx
WHERE rcx.permission = :permission AND rcx.capability = :capability) rc,
{context} c,
{context} sc,
{role_assignments} ra,
{user} u
WHERE c.id = rc.contextid
AND (sc.path = c.path OR sc.path LIKE ".$DB->sql_concat('c.path', "'/%'")." OR c.path LIKE ".$DB->sql_concat('sc.path', "'/%'").")
AND u.id = ra.userid AND u.deleted = 0
AND ra.contextid = sc.id AND ra.roleid = rc.roleid
AND sc.contextlevel <= :context1 AND c.contextlevel <= :context2";
$usercount = $DB->count_records_sql("SELECT COUNT('x') FROM (SELECT DISTINCT u.id $sqluserinfo) userinfo", $params);
$systemrolecount = empty($systemroles) ? 0 : count($systemroles);
$overriddenrolecount = empty($overriddenroles) ? 0 : count($overriddenroles);
$result->status = REPORT_SECURITY_WARNING; // there is always at least one admin
$a = (object)array('rolecount'=>$systemrolecount,'overridecount'=>$overriddenrolecount,'usercount'=>$usercount);
$result->info = get_string('check_riskbackup_warning', 'report_security', $a);
if ($detailed) {
$result->details = ''; // Will be added to later
// Make a list of roles
if ($systemroles) {
$links = array();
foreach ($systemroles as $role) {
$role->url = "$CFG->wwwroot/$CFG->admin/roles/manage.php?action=edit&amp;roleid=$role->id";
$links[] = '<li>'.get_string('check_riskbackup_editrole', 'report_security', $role).'</li>';
}
$links = '<ul>'.implode($links).'</ul>';
$result->details .= get_string('check_riskbackup_details_systemroles', 'report_security', $links);
}
// Make a list of overrides to roles
$rolelinks2 = array();
if ($overriddenroles) {
$links = array();
foreach ($overriddenroles as $role) {
$context = get_context_instance_by_id($role->contextid);
if ($context->contextlevel == CONTEXT_COURSE) {
$role->name = role_get_name($role, $context);
}
$role->contextname = print_context_name($context);
$role->url = "$CFG->wwwroot/$CFG->admin/roles/override.php?contextid=$role->contextid&amp;roleid=$role->id";
$links[] = '<li>'.get_string('check_riskbackup_editoverride', 'report_security', $role).'</li>';
}
$links = '<ul>'.implode($links).'</ul>';
$result->details .= get_string('check_riskbackup_details_overriddenroles', 'report_security', $links);
}
// Get a list of affected users as well
$users = array();
$rs = $DB->get_recordset_sql("SELECT DISTINCT u.id, u.firstname, u.lastname, u.picture, u.imagealt, u.email, ra.contextid, ra.roleid
$sqluserinfo ORDER BY u.lastname, u.firstname", $params);
foreach ($rs as $user) {
$context = get_context_instance_by_id($user->contextid);
$url = "$CFG->wwwroot/$CFG->admin/roles/assign.php?contextid=$user->contextid&amp;roleid=$user->roleid";
$a = (object)array('fullname'=>fullname($user), 'url'=>$url, 'email'=>$user->email,
'contextname'=>print_context_name($context));
$users[] = '<li>'.get_string('check_riskbackup_unassign', 'report_security', $a).'</li>';
}
if (!empty($users)) {
$users = '<ul>'.implode($users).'</ul>';
$result->details .= get_string('check_riskbackup_details_users', 'report_security', $users);
}
}
return $result;
}
-5
View File
@@ -1,5 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
$ADMIN->add('reports', new admin_externalpage('reportsecurity', get_string('pluginname', 'report_security'), "$CFG->wwwroot/$CFG->admin/report/security/index.php",'report/security:view'));
-27
View File
@@ -1,27 +0,0 @@
<?PHP
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.com //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
$plugin->version = 2010090501;
$plugin->requires = 2010090501;
-284
View File
@@ -1,284 +0,0 @@
<?php
/**
* Spam Cleaner
*
* Helps an admin to clean up spam in Moodle
*
* @authors Dongsheng Cai, Martin Dougiamas, Amr Hourani
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License
*/
// List of known spammy keywords, please add more here
/////////////////////////////////////////////////////////////////////////////////
require_once('../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
// Configuration
$autokeywords = array(
"<img",
"fuck",
"casino",
"porn",
"xxx",
"cialis",
"viagra",
"poker",
"warcraft"
);
$keyword = optional_param('keyword', '', PARAM_RAW);
$autodetect = optional_param('autodetect', '', PARAM_RAW);
$del = optional_param('del', '', PARAM_RAW);
$delall = optional_param('delall', '', PARAM_RAW);
$ignore = optional_param('ignore', '', PARAM_RAW);
$reset = optional_param('reset', '', PARAM_RAW);
$id = optional_param('id', '', PARAM_INT);
require_login();
admin_externalpage_setup('reportspamcleaner');
// Delete one user
if (!empty($del) && confirm_sesskey() && ($id != $USER->id)) {
if (isset($SESSION->users_result[$id])) {
$user = $SESSION->users_result[$id];
if (delete_user($user)) {
unset($SESSION->users_result[$id]);
echo json_encode(true);
} else {
echo json_encode(false);
}
} else {
echo json_encode(false);
}
exit;
}
// Delete lots of users
if (!empty($delall) && confirm_sesskey()) {
if (!empty($SESSION->users_result)) {
foreach ($SESSION->users_result as $userid => $user) {
if ($userid != $USER->id) {
if (delete_user($user)) {
unset($SESSION->users_result[$userid]);
}
}
}
}
echo json_encode(true);
exit;
}
if (!empty($ignore)) {
unset($SESSION->users_result[$id]);
echo json_encode(true);
exit;
}
$PAGE->requires->js_init_call('M.report_spamcleaner.init', array(me()), true);
$strings = Array('spaminvalidresult','spamdeleteallconfirm','spamcannotdelete','spamdeleteconfirm');
$PAGE->requires->strings_for_js($strings, 'report_spamcleaner');
echo $OUTPUT->header();
// Print headers and things
echo $OUTPUT->box(get_string('spamcleanerintro', 'report_spamcleaner'));
echo $OUTPUT->box_start(); // The forms section at the top
?>
<div class="mdl-align">
<form method="post" action="index.php">
<div>
<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', 'report_spamcleaner')?>" />
</div>
</form>
<p><?php echo get_string('spameg', 'report_spamcleaner');?></p>
<hr />
<form method="post" action="index.php">
<div>
<input type="submit" name="autodetect" value="<?php echo get_string('spamauto', 'report_spamcleaner');?>" />
</div>
</form>
</div>
<?php
echo $OUTPUT->box_end();
echo '<div id="result" class="mdl-align">';
// Print list of resulting profiles
if (!empty($keyword)) { // Use the keyword(s) supplied by the user
$keywords = explode(',', $keyword);
foreach ($keywords as $key => $keyword) {
$keywords[$key] = trim($keyword);
}
search_spammers($keywords);
} else if (!empty($autodetect)) { // Use the inbuilt keyword list to detect users
search_spammers($autokeywords);
}
echo '</div>';
/////////////////////////////////////////////////////////////////////////////////
/// Functions
function search_spammers($keywords) {
global $CFG, $USER, $DB, $OUTPUT;
if (!is_array($keywords)) {
$keywords = array($keywords); // Make it into an array
}
$params = array('userid'=>$USER->id);
$keywordfull = array();
foreach ($keywords as $keyword) {
$keywordfull[] = $DB->sql_like('description', ':descpat', false);
$params['descpat'] = "%$keyword%";
$keywordfull2[] = $DB->sql_like('p.summary', ':sumpat', false);
$params['sumpat'] = "%$keyword%";
}
$conditions = '( '.implode(' OR ', $keywordfull).' )';
$conditions2 = '( '.implode(' OR ', $keywordfull2).' )';
$sql = "SELECT * FROM {user} WHERE deleted = 0 AND id <> :userid AND $conditions"; // Exclude oneself
$sql2 = "SELECT u.*, p.summary FROM {user} AS u, {post} AS p WHERE $conditions2 AND u.deleted = 0 AND u.id=p.userid AND u.id <> :userid";
$spamusers_desc = $DB->get_recordset_sql($sql);
$spamusers_blog = $DB->get_recordset_sql($sql2);
$keywordlist = implode(', ', $keywords);
echo $OUTPUT->box(get_string('spamresult', 'report_spamcleaner').s($keywordlist)).' ...';
print_user_list(array($spamusers_desc, $spamusers_blog), $keywords);
}
function print_user_list($users_rs, $keywords) {
global $CFG, $SESSION;
// reset session everytime this function is called
$SESSION->users_result = array();
$count = 0;
foreach ($users_rs as $rs){
foreach ($rs as $user) {
if (!$count) {
echo '<table border="1" width="100%" id="data-grid"><tr><th>&nbsp;</th><th>'.get_string('user','admin').'</th><th>'.get_string('spamdesc', 'report_spamcleaner').'</th><th>'.get_string('spamoperation', 'report_spamcleaner').'</th></tr>';
}
$count++;
filter_user($user, $keywords, $count);
}
}
if (!$count) {
echo get_string('spamcannotfinduser', 'report_spamcleaner');
} else {
echo '</table>';
echo '<div class="mld-align">
<button id="removeall_btn">'.get_string('spamdeleteall', 'report_spamcleaner').'</button>
</div>';
}
}
function filter_user($user, $keywords, $count) {
global $CFG;
$image_search = false;
if (in_array('<img', $keywords)) {
$image_search = true;
}
if (isset($user->summary)) {
$user->description = '<h3>'.get_string('spamfromblog', 'report_spamcleaner').'</h3>'.$user->summary;
unset($user->summary);
}
if (preg_match('#<img.*src=[\"\']('.$CFG->wwwroot.')#', $user->description, $matches)
&& $image_search) {
$result = false;
foreach ($keywords as $keyword) {
if (preg_match('#'.$keyword.'#', $user->description)
&& ($keyword != '<img')) {
$result = true;
}
}
if ($result) {
echo print_user_entry($user, $keywords, $count);
} else {
unset($user);
}
} else {
echo print_user_entry($user, $keywords, $count);
}
}
function print_user_entry($user, $keywords, $count) {
global $SESSION, $CFG;
$smalluserobject = new stdClass(); // All we need to delete them later
$smalluserobject->id = $user->id;
$smalluserobject->email = $user->email;
$smalluserobject->auth = $user->auth;
$smalluserobject->firstname = $user->firstname;
$smalluserobject->lastname = $user->lastname;
$smalluserobject->username = $user->username;
if (empty($SESSION->users_result[$user->id])) {
$SESSION->users_result[$user->id] = $smalluserobject;
$html = '<tr valign="top" id="row-'.$user->id.'" class="result-row">';
$html .= '<td width="10">'.$count.'</td>';
$html .= '<td width="30%" align="left"><a href="'.$CFG->wwwroot."/user/view.php?course=1&amp;id=".$user->id.'" title="'.s($user->username).'">'.fullname($user).'</a>';
$html .= "<ul>";
$profile_set = array('city'=>true, 'country'=>true, 'email'=>true);
foreach ($profile_set as $key=>$value) {
if (isset($user->$key)){
$html .= '<li>'.$user->$key.'</li>';
}
}
$html .= "</ul>";
$html .= '</td>';
foreach ($keywords as $keyword) {
$user->description = highlight($keyword, $user->description);
}
if (!isset($user->descriptionformat)) {
$user->descriptionformat = FORMAT_MOODLE;
}
$html .= '<td align="left">'.format_text($user->description, $user->descriptionformat, array('overflowdiv'=>true)).'</td>';
$html .= '<td width="100px" align="center">';
$html .= '<button onclick="M.report_spamcleaner.del_user(this,'.$user->id.')">'.get_string('deleteuser', 'admin').'</button><br />';
$html .= '<button onclick="M.report_spamcleaner.ignore_user(this,'.$user->id.')">'.get_string('ignore', 'admin').'</button>';
$html .= '</td>';
$html .= '</tr>';
return $html;
} else {
return null;
}
}
echo $OUTPUT->footer();
@@ -1,40 +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 'report_spamcleaner', language 'en', branch 'MOODLE_20_STABLE'
*
* @package report_spamcleaner
* @copyright 1999 onwards Martin Dougiamas {@link http://moodle.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['pluginname'] = 'Spam cleaner';
$string['spamauto'] = 'Autodetect common spam patterns';
$string['spamcannotdelete'] = 'Cannot delete this user';
$string['spamcannotfinduser'] = 'No users matching your search';
$string['spamcleanerintro'] = 'This script allows you to search all user profiles for certain strings and then delete those accounts which are obviously created by spammers. You can search for multiple keywords using commas (eg casino, porn)<br /><br />Moodle docs has more information about <a href="http://docs.moodle.org/en/Reducing_spam_in_Moodle">Reducing spam in Moodle</a>.';
$string['spamdeleteall'] = 'Delete all these user accounts';
$string['spamdeleteallconfirm'] = 'Are you sure you want to delete all these user accounts? You can not undo this.';
$string['spamdeleteconfirm'] = 'Are you sure you want to delete this entry? You can not undo this.';
$string['spamdesc'] = 'Description';
$string['spameg'] = 'eg: casino, porn, xxx';
$string['spamfromblog'] = 'From blog post:';
$string['spaminvalidresult'] = 'Unknown but invalid result';
$string['spamoperation'] = 'Operation';
$string['spamresult'] = 'Results of searching user profiles containing:';
$string['spamsearch'] = 'Search for these keywords';
-115
View File
@@ -1,115 +0,0 @@
M.report_spamcleaner = {
Y: null,
row: null,
me: null,
del_all: function() {
var context = M.report_spamcleaner;
var yes = confirm(M.str.report_spamcleaner.spamdeleteallconfirm);
if (yes) {
var cfg = {
method: "POST",
on: {
success : function(id, o, args) {
try {
var resp = context.Y.JSON.parse(o.responseText);
} catch(e) {
alert(M.str.report_spamcleaner.spaminvalidresult);
return;
}
if (resp == true) {
window.location.href=window.location.href;
}
}
}
};
context.Y.io(context.me+'?delall=yes&sesskey='+M.cfg.sesskey, cfg);
}
},
del_user: function(obj, id) {
var context = M.report_spamcleaner;
if (context.Y == null) {
// not initialised yet
return;
}
var yes = confirm(M.str.report_spamcleaner.spamdeleteconfirm);
if (yes) {
context.row = obj;
var cfg = {
method: "POST",
on: {
success : function(id, o, args) {
try {
var resp = context.Y.JSON.parse(o.responseText);
} catch(e) {
alert(M.str.report_spamcleaner.spaminvalidresult);
return;
}
if (context.row) {
if (resp == true) {
while(context.row.tagName != 'TR') {
context.row = context.row.parentNode;
}
context.row.parentNode.removeChild(context.row);
context.row = null;
} else {
alert(M.str.report_spamcleaner.spamcannotdelete);
}
}
}
}
}
context.Y.io(context.me+'?del=yes&sesskey='+M.cfg.sesskey+'&id='+id, cfg);
}
},
ignore_user: function(obj, id) {
var context = M.report_spamcleaner;
if (context.Y == null) {
// not initilised yet
return;
}
context.row = obj;
var cfg = {
method: "POST",
on: {
success : function(id, o, args) {
try {
var resp = context.Y.JSON.parse(o.responseText);
} catch(e) {
alert(M.str.report_spamcleaner.spaminvalidresult);
return;
}
if (context.row) {
if (resp == true){
while(context.row.tagName != 'TR') {
context.row = context.row.parentNode;
}
context.row.parentNode.removeChild(context.row);
context.row = null;
}
}
}
}
}
context.Y.io(context.me+'?ignore=yes&sesskey='+M.cfg.sesskey+'&id='+id, cfg);
},
init: function(Y, me) {
var context = M.report_spamcleaner;
Y.use('json', 'io', function (Y) {
context.Y = Y;
context.me = me;
if (Y.one("#removeall_btn")) {
Y.on("click", context.del_all, "#removeall_btn");
}
});
}
}
-7
View File
@@ -1,7 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
// spam cleaner
$ADMIN->add('reports', new admin_externalpage('reportspamcleaner', get_string('pluginname', 'report_spamcleaner'), "$CFG->wwwroot/$CFG->admin/report/spamcleaner/index.php", 'moodle/site:config'));
-6
View File
@@ -1,6 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
// just a link to course report
$ADMIN->add('reports', new admin_externalpage('reportstats', get_string('stats', 'admin'), "$CFG->wwwroot/course/report/stats/index.php", 'coursereport/stats:view'));
-38
View File
@@ -1,38 +0,0 @@
<?php
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.com //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
$capabilities = array(
'report/unittest:view' => array(
'riskbitmask' => RISK_DATALOSS,
'captype' => 'read',
'contextlevel' => CONTEXT_SYSTEM,
'archetypes' => array(
'manager' => CAP_ALLOW
),
'clonepermissionsfrom' => 'moodle/site:config',
)
);
-136
View File
@@ -1,136 +0,0 @@
<?php
/**
* Run the unit tests.
*
* @copyright &copy; 2006 The Open University
* @author N.D.Freear@open.ac.uk, T.J.Hunt@open.ac.uk
* @license http://www.gnu.org/copyleft/gpl.html GNU Public License
* @package SimpleTestEx
*/
define('NO_OUTPUT_BUFFERING', true);
require_once(dirname(__FILE__).'/../../../config.php');
require_once($CFG->libdir.'/adminlib.php');
require_once($CFG->libdir.'/simpletestcoveragelib.php');
require_once('ex_simple_test.php');
require_once('ex_reporter.php');
// Always run the unit tests in developer debug mode.
$CFG->debug = DEBUG_DEVELOPER;
error_reporting($CFG->debug);
raise_memory_limit(MEMORY_EXTRA);
// page parameters
$path = optional_param('path', null, PARAM_PATH);
$showpasses = optional_param('showpasses', false, PARAM_BOOL);
$codecoverage = optional_param('codecoverage', false, PARAM_BOOL);
$showsearch = optional_param('showsearch', false, PARAM_BOOL);
admin_externalpage_setup('reportsimpletest', '', array('showpasses'=>$showpasses, 'showsearch'=>$showsearch));
$unittest = true;
global $UNITTEST;
$UNITTEST = new stdClass();
// This limit is the time allowed per individual test function. Please do not
// increase this value. If you get a PHP time limit when running unit tests,
// find the unit test which is running slowly, and either make it faster,
// split it into multiple tests, or call set_time_limit within that test.
define('TIME_ALLOWED_PER_UNIT_TEST', 60);
// Print the header.
$strtitle = get_string('unittests', 'simpletest');
if (!is_null($path)) {
//trim so user doesn't get an error if they include a space on the end of the path (ie by pasting path)
$path = trim($path);
// Turn off xmlstrictheaders during the unit test run.
$origxmlstrictheaders = !empty($CFG->xmlstrictheaders);
$CFG->xmlstrictheaders = false;
echo $OUTPUT->header();
$CFG->xmlstrictheaders = $origxmlstrictheaders;
unset($origxmlstrictheaders);
// Create the group of tests.
$test = new autogroup_test_coverage($showsearch, true, $codecoverage, 'Moodle Unit Tests Code Coverage Report', 'unittest');
// OU specific. We use the _nonproject folder for stuff we want to
// keep in CVS, but which is not really relevant. It does no harm
// to leave this here.
$test->addIgnoreFolder($CFG->dirroot . '/_nonproject');
// Make the reporter, which is what displays the results.
$reporter = new ExHtmlReporter($showpasses);
if ($showsearch) {
echo $OUTPUT->heading('Searching for test cases');
}
flush();
// Work out what to test.
if (substr($path, 0, 1) == '/') {
$path = substr($path, 1);
}
$path = $CFG->dirroot . '/' . $path;
if (substr($path, -1) == '/') {
$path = substr($path, 0, -1);
}
$displaypath = substr($path, strlen($CFG->dirroot) + 1);
$ok = true;
if (is_file($path)) {
$test->addTestFile($path);
} else if (is_dir($path)){
$test->findTestFiles($path);
} else {
echo $OUTPUT->box(get_string('pathdoesnotexist', 'simpletest', $path), 'errorbox');
$ok = false;
}
// If we have something to test, do it.
if ($ok) {
if ($path == $CFG->dirroot) {
$title = get_string('moodleunittests', 'simpletest', get_string('all', 'simpletest'));
} else {
$title = get_string('moodleunittests', 'simpletest', $displaypath);
}
echo $OUTPUT->heading($title);
$test->run($reporter);
}
$formheader = get_string('retest', 'simpletest');
} else {
$displaypath = '';
echo $OUTPUT->header();
$formheader = get_string('rununittests', 'simpletest');
}
// Print the form for adjusting options.
echo $OUTPUT->box_start('generalbox boxwidthwide boxaligncenter');
echo $OUTPUT->heading($formheader);
echo '<form method="get" action="index.php">';
echo '<fieldset class="invisiblefieldset">';
echo '<p>'.html_writer::checkbox('showpasses', 1, $showpasses, get_string('showpasses', 'simpletest')).'</p>';
echo '<p>'.html_writer::checkbox('showsearch', 1, $showsearch, get_string('showsearch', 'simpletest')).'</p>';
if (moodle_coverage_recorder::can_run_codecoverage()) {
echo '<p>'.html_writer::checkbox('codecoverage', 1, $codecoverage, get_string('codecoverageanalysis', 'simpletest')).'</p>';
} else {
echo '<p>'; print_string('codecoveragedisabled', 'simpletest'); echo '<input type="hidden" name="codecoverage" value="0" /></p>';
}
echo '<p>';
echo '<label for="path">', get_string('onlytest', 'simpletest'), '</label> ';
echo '<input type="text" id="path" name="path" value="', $displaypath, '" size="40" />';
echo '</p>';
echo '<input type="submit" value="' . get_string('runtests', 'simpletest') . '" />';
echo '</fieldset>';
echo '</form>';
echo $OUTPUT->box_end();
// Print link to latest code coverage for this report type
if (is_null($path) || !$codecoverage) {
moodle_coverage_reporter::print_link_to_latest('unittest');
}
// Footer.
echo $OUTPUT->footer();
@@ -1,27 +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 'report_unittest', language 'en', branch 'MOODLE_20_STABLE'
*
* @package report_unittest
* @copyright 1999 onwards Martin Dougiamas {@link http://moodle.com}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['pluginname'] = 'Unit tests';
$string['unittest:view'] = 'Execute unit tests';
-8
View File
@@ -1,8 +0,0 @@
<?php
defined('MOODLE_INTERNAL') || die;
if ($hassiteconfig) {
$ADMIN->add('development', new admin_externalpage('reportsimpletest', get_string('simpletest', 'admin'), "$CFG->wwwroot/$CFG->admin/report/unittest/index.php",'report/unittest:view'));
$ADMIN->add('development', new admin_externalpage('reportdbtest', get_string('dbtest', 'admin'), "$CFG->wwwroot/$CFG->admin/report/unittest/dbtest.php",'report/unittest:view'));
}
-28
View File
@@ -1,28 +0,0 @@
<?PHP
///////////////////////////////////////////////////////////////////////////
// //
// NOTICE OF COPYRIGHT //
// //
// Moodle - Modular Object-Oriented Dynamic Learning Environment //
// http://moodle.com //
// //
// Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com //
// //
// This program 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 2 of the License, or //
// (at your option) any later version. //
// //
// This program 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: //
// //
// http://www.gnu.org/copyleft/gpl.html //
// //
///////////////////////////////////////////////////////////////////////////
$plugin->version = 2010090501;
$plugin->requires = 2010090501;
-120
View File
@@ -1,120 +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/>.
/**
* Report of unsupported role assignments,
* unsupported role assignments can be dropped from here.
*
* @package report
* @subpackage unsuproles
* @copyright 2010 Petr Skoda {@link http://skodak.org}
* @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');
$action = optional_param('action', '', PARAM_ACTION);
$syscontext = get_context_instance(CONTEXT_SYSTEM);
require_login();
admin_externalpage_setup('reportunsuproles'); // checks permissions specified in settings.php
if ($action === 'delete') {
$contextlevel = required_param('contextlevel', PARAM_INT);
$roleid = required_param('roleid', PARAM_INT);
$confirm = optional_param('confirm', 0, PARAM_BOOL);
$role = $DB->get_record('role', array('id'=>$roleid), '*', MUST_EXIST);
if ($confirm and confirm_sesskey()) {
$sql = "SELECT ra.*
FROM {role_assignments} ra
JOIN {context} c ON c.id = ra.contextid
LEFT JOIN {role_context_levels} rcl ON (rcl.roleid = ra.roleid AND rcl.contextlevel = c.contextlevel)
WHERE rcl.id IS NULL AND ra.roleid = :roleid AND c.contextlevel = :contextlevel";
$ras = $DB->get_records_sql($sql, array('roleid'=>$roleid, 'contextlevel'=>$contextlevel));
foreach ($ras as $ra) {
if (!empty($ra->component)) {
//bad luck, we can not mess with plugin ras!
//TODO: explain why not possible to remove ras
continue;
}
role_unassign($ra->roleid, $ra->userid, $ra->contextid);
}
redirect($PAGE->url);
}
//show confirmation
echo $OUTPUT->header();
$yesurl = new moodle_url($PAGE->url, array('roleid'=>$roleid, 'contextlevel'=>$contextlevel, 'action'=>'delete', 'confirm'=>1, 'sesskey'=>sesskey()));
$levelname = get_contextlevel_name($contextlevel);
$rolename = format_string($role->name);
$message = get_string('confirmdelete', 'report_unsuproles', array('level'=>$levelname, 'role'=>$rolename));
echo $OUTPUT->confirm($message, $yesurl, $PAGE->url);
echo $OUTPUT->footer();
die();
}
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('pluginname', 'report_unsuproles'));
$sql = "SELECT r.id AS roleid, c.contextlevel, r.sortorder, COUNT(ra.id) AS racount
FROM {role} r
JOIN {role_assignments} ra ON ra.roleid = r.id
JOIN {context} c ON c.id = ra.contextid
LEFT JOIN {role_context_levels} rcl ON (rcl.roleid = r.id AND rcl.contextlevel = c.contextlevel)
WHERE rcl.id IS NULL
GROUP BY r.id, c.contextlevel, r.sortorder
ORDER BY c.contextlevel ASC, r.sortorder ASC";
//print the overview table
$problems = array();
$rs = $DB->get_recordset_sql($sql);
foreach ($rs as $problem) {
$problems[] = $problem;
}
$rs->close();
if (!$problems) {
echo $OUTPUT->notification(get_string('noprolbems', 'report_unsuproles'), 'notifysuccess');
} else {
$roles = get_all_roles();
$data = array();
foreach ($problems as $problem) {
$levelname = get_contextlevel_name($problem->contextlevel);
$rolename = format_string($roles[$problem->roleid]->name);
//TODO: show list of users if count low
$count = $problem->racount;
$edit = array();
$aurl = new moodle_url('/admin/roles/define.php', array('roleid'=>$problem->roleid, 'action'=>'edit'));
$edit[] = html_writer::link($aurl, html_writer::empty_tag('img', array('src'=>$OUTPUT->pix_url('t/edit'), 'alt'=>get_string('edit'), 'class'=>'smallicon')));
$aurl = new moodle_url($PAGE->url, array('roleid'=>$problem->roleid, 'contextlevel'=>$problem->contextlevel, 'action'=>'delete'));
$edit[] = html_writer::link($aurl, html_writer::empty_tag('img', array('src'=>$OUTPUT->pix_url('t/delete'), 'alt'=>get_string('delete'), 'class'=>'smallicon')));
$data[] = array($levelname, $rolename, $count, implode('&nbsp;', $edit));
}
$table = new html_table();
$table->head = array(get_string('contextlevel', 'report_unsuproles'), get_string('role'), get_string('count', 'report_unsuproles'), get_string('edit'));
$table->size = array('40%', '40%', '10%', '10%');
$table->align = array('left', 'left', 'center', 'center');
$table->width = '90%';
$table->data = $data;
echo html_writer::table($table);
}
echo $OUTPUT->footer();
@@ -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/>.
/**
* Strings for component 'report_unsuproles', language 'en', branch 'MOODLE_20_STABLE'
*
* @package report
* @subpackage unsuproles
* @copyright 2010 Petr Skoda {@link http://skodak.org}
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
$string['contextlevel'] = 'Context level';
$string['count'] = 'Count';
$string['confirmdelete'] = 'Do you really want to delete all unsupported role assignments for role "{$a->role}" in context level "{$a->level}"?';
$string['noprolbems'] = 'No unsupported role assignments found.';
$string['pluginname'] = 'Unsupported role assignments';
-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/>.
/**
* Link to unsupported roles report
*
* @package report
* @subpackage unsuproles
* @copyright 2010 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('roles', new admin_externalpage('reportunsuproles', get_string('pluginname', 'report_unsuproles'), "$CFG->wwwroot/$CFG->admin/report/unsuproles/index.php"), array('moodle/site:config', 'moodle/role:assign'));
}
-29
View File
@@ -1,29 +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 report
* @subpackage unsuproles
* @copyright 2010 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 = 2010071800;
+134
View File
@@ -0,0 +1,134 @@
<?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/>.
/**
* Provides an overview of installed reports
*
* Displays the list of found reports, their version (if found) and
* a link to delete the report.
*
* The code is based on admin/localplugins.php by David Mudrak.
*
* @package admin
* @copyright 2011 Petr Skoda {@link http://skodak.org}
* @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->libdir.'/tablelib.php');
admin_externalpage_setup('managereports');
$delete = optional_param('delete', '', PARAM_PLUGIN);
$confirm = optional_param('confirm', '', PARAM_BOOL);
/// If data submitted, then process and store.
if (!empty($delete) and confirm_sesskey()) {
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('reports'));
if (!$confirm) {
if (get_string_manager()->string_exists('pluginname', 'report_' . $delete)) {
$strpluginname = get_string('pluginname', 'report_' . $delete);
} else {
$strpluginname = $delete;
}
echo $OUTPUT->confirm(get_string('reportsdeleteconfirm', 'admin', $strpluginname),
new moodle_url($PAGE->url, array('delete' => $delete, 'confirm' => 1)),
$PAGE->url);
echo $OUTPUT->footer();
die();
} else {
uninstall_plugin('report', $delete);
$a = new stdclass();
$a->name = $delete;
$pluginlocation = get_plugin_types();
$a->directory = $pluginlocation['report'] . '/' . $delete;
echo $OUTPUT->notification(get_string('plugindeletefiles', '', $a), 'notifysuccess');
echo $OUTPUT->continue_button($PAGE->url);
echo $OUTPUT->footer();
die();
}
}
echo $OUTPUT->header();
echo $OUTPUT->heading(get_string('reports'));
/// Print the table of all installed report plugins
$table = new flexible_table('reportplugins_administration_table');
$table->define_columns(array('name', 'version', 'delete'));
$table->define_headers(array(get_string('plugin'), get_string('version'), get_string('delete')));
$table->define_baseurl($PAGE->url);
$table->set_attribute('id', 'reportplugins');
$table->set_attribute('class', 'generaltable generalbox boxaligncenter boxwidthwide');
$table->setup();
$plugins = array();
foreach (get_plugin_list('report') as $plugin => $plugindir) {
if (get_string_manager()->string_exists('pluginname', 'report_' . $plugin)) {
$strpluginname = get_string('pluginname', 'report_' . $plugin);
} else {
$strpluginname = $plugin;
}
$plugins[$plugin] = $strpluginname;
}
collatorlib::asort($plugins);
$like = $DB->sql_like('plugin', '?', true, true, false, '|');
$params = array('report|_%');
$installed = $DB->get_records_select('config_plugins', "$like AND name = 'version'", $params);
$versions = array();
foreach ($installed as $config) {
$name = preg_replace('/^report_/', '', $config->plugin);
$versions[$name] = $config->value;
if (!isset($plugins[$name])) {
$plugins[$name] = $name;
}
}
foreach ($plugins as $plugin => $name) {
$delete = new moodle_url($PAGE->url, array('delete' => $plugin, 'sesskey' => sesskey()));
$delete = html_writer::link($delete, get_string('delete'));
if (!isset($versions[$plugin])) {
if (file_exists("$CFG->dirroot/report/$plugin/version.php")) {
// not installed yet
$version = '?';
} else {
// no version info available
$version = '-';
}
} else {
$version = $versions[$plugin];
if (file_exists("$CFG->dirroot/report/$plugin")) {
$version = $versions[$plugin];
} else {
// somebody removed plugin without uninstall
$name = '<span class="notifyproblem">'.$name.' ('.get_string('missingfromdisk').')</span>';
$version = $versions[$plugin];
}
}
$table->add_data(array($name, $version, $delete));
}
$table->print_html();
echo $OUTPUT->footer();
+6 -2
View File
@@ -10,7 +10,7 @@ $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_ALPHAEXT);
$type = optional_param('type', '', PARAM_PLUGIN);
$context = get_context_instance(CONTEXT_SYSTEM);
@@ -68,7 +68,11 @@ if (!empty($edit) || !empty($new)) {
$settings['name'] = $fromform->name;
if (!$instance->readonly) {
foreach($configs as $config) {
$settings[$config] = $fromform->$config;
if (isset($fromform->$config)) {
$settings[$config] = $fromform->$config;
} else {
$settings[$config] = null;
}
}
}
$success = $instance->set_option($settings);
Executable → Regular
View File

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