Moodle Plugins directory: Global CSV feeding for Moodle | Moodle.org

Global CSV feeding for Moodle
IMPORTANT NOTE FOR PLUGIN ARCHIVE AVAILABILITY
: due to the large amount of plugins supported, it is NOT affordable
for us to update moodle.org packages. Please use the Source Control urls
to our github to get plugins archives.
The Admin Tool Sync plugin provides an industry level unified set of tools in order to massively operate Moodle loads and unloads of major data entities.
This tool was priorily intended to complete all standard tools around CSV files loading with systematic handling by cron, manual operation, and resulted more confortable to join all those tools in an "all in one" version. Most of the code for making end operations is largely inspired frol core CSV features, with some enhancements.
The versions < 2.7, use a special <moodledata>/sync file manager (outside moodle file system to allow easy feeding of CSV files from an outside administrative process). From Moodle 2.7 ahead, the sync file manager has been reintegrated into standard moodle file handling, although the original sync container is still used for csv external inputs just before cron runs. All the files in <moodledata></sync will be automatically integrated into the Admin Tool Sync filearea for processing.
What is added :
- All tools (except course reinitialisation or deletion) can be fully croned.
- All tools can generate a tryback file keeping only discarded inputs (failed)
- All tools will archive the processed files into the archive directory
- All tools can be used from an immediate file upload (manual run)
- All tools can use any input file stored into the CSV file container, and keep track in configuration of which file to use.
- Course mass reinitialisation tool is added
- Course mass creation handles template designation to initiate a course with content, either pointing an available backup (all versions) or pointing an external file in the server (>= 2.7)
- Exhaustive reports give detailed status on each operation.
- Reports are generated ans stored in "reports" folder.
There are some issues that raised during the review of the plugin.
* The SQL function IF() is MySQL specific and makes your plugin fail on other databases. If there is no other way around, you will probably have to try and implement it via SQL standard CASE statement.
* Please pay attention to PHP Notices thrown in development debug mode (e.g. Notice: Undefined property: stdClass::$users_filelocation in admin/tool/sync/users/execcron.php on line 50).
* It would really help if there was an in-built help on CSV files format.
Fow now, I am marking this plugin as needing more work to get these issues addressed. Thanks for your patience with the approval process.
http://integration.moodle.org/job/Precheck%20remote%20branch/14465/artifact/work/smurf.html
Thanks Valery for sharing the tool with the community. The absence of relevant documentation/help in English makes the functionality testing a bit harder. Also, some coding related issues were detected during the review. For now, I moved the plugin into the Incubating category. Once the issues reported to your bug tracker are fixed, please feel free to contact us so that the plugin can be re-evaluated and put into the Admin tools category.
this plugin is really great for me. I use tasks in cron to do the work, but I did not find yet the task about Course group operations ; did I miss something or should I write some cron scrip for that (if so, a example would be most appreciated)
Thanks for the job ;)
I added default values for groupsync_task and added this task (roughtly) to be able to get it via crontab.
changed : /tool/sync/db/tasks.php
inserted in DB directly (I know, bas way, but really efficient for an ignoramus in moddle-prog.) : component=tool_sync and classname=\tool_sync\task\groupsync_task
Sure there is a better way, but it works ;)