Plugins
  1. Plugins
  2. CONTRIB-906

Project Course Format with bulk upload and section backup/restore

    Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 1.9.3
    • Fix Version/s: None
    • Component/s: Course format: Project
    • Labels:
      None
    • Affected Branches:
      MOODLE_19_STABLE

      Description

      Problem: Teachers want to backup/restore/import/delete sections of a course. Currently only individual activities/resources or the whole course can be handled with Moodle 1.9. Also Moodle backup/restore/import do not sort the resources and activities according to topic/theme/project, but separate them by tool categories (ie: forums, quizzes, etc.). Teachers often want to duplicate whole sections which include a mix of activities.

      Solution: We have developed a new course format called the "Project Course Format". It has the following four features:

      • section backup
      • section import
      • bulk file upload
      • automatic upload, naming and creation of "resources" in two clicks

      Issues and status: The format has been working over six months in 1.9 production sites. We are still working on issues which concern moving/duplicating on the same course, and handling quiz question categories. Conversion of existing topics to project course format requires manual rebuilding of links.

      Documentation: http://docs.moodle.org/en/Project_Course_Format
      Discussion: http://moodle.org/mod/forum/discuss.php?d=87044

        Gliffy Diagrams

          Issue Links

            Activity

            Hide
            Anthony Borrow added a comment -

            Don - For the next week or so I will be completing my classes and have many final papers, exams, etc. In short, it is crunch time and I need to focus on the classes to get through the semester. After Dec. 12 I should have more time. If you need a response sooner, let me know and I'll try to squeeze it in but if you can be patient that would be much appreciated. Peace - Anthony

            Show
            Anthony Borrow added a comment - Don - For the next week or so I will be completing my classes and have many final papers, exams, etc. In short, it is crunch time and I need to focus on the classes to get through the semester. After Dec. 12 I should have more time. If you need a response sooner, let me know and I'll try to squeeze it in but if you can be patient that would be much appreciated. Peace - Anthony
            Hide
            Akio Ohnishi added a comment -

            Hello Don and Everyone,
            I am Akio Ohnishi of Version2 Software in Sapporo, Japan. I will be
            programming, updating and contributing this code into CVS in the
            future. Please let us know of any bugs or requests you have.
            Regards, Akio

            Show
            Akio Ohnishi added a comment - Hello Don and Everyone, I am Akio Ohnishi of Version2 Software in Sapporo, Japan. I will be programming, updating and contributing this code into CVS in the future. Please let us know of any bugs or requests you have. Regards, Akio
            Hide
            Anthony Borrow added a comment -

            Don and Akio - It looks like CONTRIB-906 is a patch. Is the code ready that I could have a look at it? Let me know when and where it is and I'll happily take a look. Peace - Anthony

            Show
            Anthony Borrow added a comment - Don and Akio - It looks like CONTRIB-906 is a patch. Is the code ready that I could have a look at it? Let me know when and where it is and I'll happily take a look. Peace - Anthony
            Hide
            Akio Ohnishi added a comment -

            ???:
            -Flash10???????????????????????
            -????????????????????????????????????
            -???????????????????????????????????????????????????????????????

            Changed:
            -corresponded for Flash 10 file upload specification changed.
            -Changed upload, backup and restore icons and view area.
            -Shared with backup/restore libraries to the Sharing Cart Block.
            If Sharing Cart Block exists then syncronize from their libraries.

            Show
            Akio Ohnishi added a comment - ???: -Flash10??????????????????????? -???????????????????????????????????? -??????????????????????????????????????????????????????????????? Changed: -corresponded for Flash 10 file upload specification changed. -Changed upload, backup and restore icons and view area. -Shared with backup/restore libraries to the Sharing Cart Block. If Sharing Cart Block exists then syncronize from their libraries.
            Hide
            Anthony Borrow added a comment -

            Thanks for the uploaded file. The one thing I am going to change in order to keep things as modular as possible is to move the help files under /course/format/project/lang/en_utf8/help/project/. They were previously pulled out separately under /lang/en_utf8/help/format/project/. As a result, I changed the helpbutton calls to:

            $button = helpbutton('directoryname', get_string('directoryname','format_project'), 'format_project', true, false, '', true);

            so that $page is just the file name and the $module is 'format_project". Let me know if you have any questions. I am going to go ahead and upload this to CVS now. Thanks for sharing your hard work with the Moodle community. Peace - Anthony

            Show
            Anthony Borrow added a comment - Thanks for the uploaded file. The one thing I am going to change in order to keep things as modular as possible is to move the help files under /course/format/project/lang/en_utf8/help/project/. They were previously pulled out separately under /lang/en_utf8/help/format/project/. As a result, I changed the helpbutton calls to: $button = helpbutton('directoryname', get_string('directoryname','format_project'), 'format_project', true, false, '', true); so that $page is just the file name and the $module is 'format_project". Let me know if you have any questions. I am going to go ahead and upload this to CVS now. Thanks for sharing your hard work with the Moodle community. Peace - Anthony
            Hide
            Anthony Borrow added a comment -

            Don and Akio - I have created a component in the tracker to keep track of issues related to the Project course format and bumped both of your privileges in the tracker so that you can manage issues related to the Project course format. The next step is to read/review http://docs.moodle.org/en/Development:Guidelines_for_contributed_code to make sure that all the little things like adding an entry to the Modules and Plugins database, providing the correct download link, creating documentation pages, etc. are completed. Also, I would like for both of you to apply for CVS write access to contrib/plugins/course/format/project so that you can make changes to the code. Don I made you the component lead so that all new bugs, feature requests, etc. for the Course format: Project component will automatically be assigned to you. If you would prefer them to go directly to Akio that is easily changed but I figured it might be easier for you to have a look and respond to them first simply because most of them will be in English and may not be easily understandable. You can then choose to assign those issues to Akio. Please do not hesitate to let me know if there is anything else I can do to be of help. Peace - Anthony

            p.s. - After getting CVS write access, you may want to try updating the installation instructions in the README.txt file just to test the access.

            Show
            Anthony Borrow added a comment - Don and Akio - I have created a component in the tracker to keep track of issues related to the Project course format and bumped both of your privileges in the tracker so that you can manage issues related to the Project course format. The next step is to read/review http://docs.moodle.org/en/Development:Guidelines_for_contributed_code to make sure that all the little things like adding an entry to the Modules and Plugins database, providing the correct download link, creating documentation pages, etc. are completed. Also, I would like for both of you to apply for CVS write access to contrib/plugins/course/format/project so that you can make changes to the code. Don I made you the component lead so that all new bugs, feature requests, etc. for the Course format: Project component will automatically be assigned to you. If you would prefer them to go directly to Akio that is easily changed but I figured it might be easier for you to have a look and respond to them first simply because most of them will be in English and may not be easily understandable. You can then choose to assign those issues to Akio. Please do not hesitate to let me know if there is anything else I can do to be of help. Peace - Anthony p.s. - After getting CVS write access, you may want to try updating the installation instructions in the README.txt file just to test the access.
            Hide
            Anthony Borrow added a comment -

            moving to Course format: Project component

            Show
            Anthony Borrow added a comment - moving to Course format: Project component
            Hide
            Anthony Borrow added a comment -

            Since the code is in CVS, the tracker is setup, and we are just waiting for Don and Akio to apply for CVS write access at http://moodle.org/cvs I am going to go ahead and resolve this issue. Peace - Anthony

            Show
            Anthony Borrow added a comment - Since the code is in CVS, the tracker is setup, and we are just waiting for Don and Akio to apply for CVS write access at http://moodle.org/cvs I am going to go ahead and resolve this issue. Peace - Anthony
            Hide
            Anthony Borrow added a comment -

            I did catch a PHP notice on backup:

            Notice: Undefined variable: course in /home/arborrow/Moodle/code/19stable/course/format/project/backuplib.php on line 224

            I am wondering if your really need to declare a global $COURSE and use $COURSE instead of $course since you are not passing $course to the project_backup_get_zipfile_name function.

            Also, after I used the global $COURSE I found:

            Notice: Undefined property: stdClass::$chat_instances in /home/arborrow/Moodle/code/19stable/course/format/project/backup_check.php on line 128

            I think if you do some testing with this with debugging set to show All PHP notices and warnings (not developer mode) you will be able eliminate the notices pretty easily.

            Peace - Anthony

            Show
            Anthony Borrow added a comment - I did catch a PHP notice on backup: Notice: Undefined variable: course in /home/arborrow/Moodle/code/19stable/course/format/project/backuplib.php on line 224 I am wondering if your really need to declare a global $COURSE and use $COURSE instead of $course since you are not passing $course to the project_backup_get_zipfile_name function. Also, after I used the global $COURSE I found: Notice: Undefined property: stdClass::$chat_instances in /home/arborrow/Moodle/code/19stable/course/format/project/backup_check.php on line 128 I think if you do some testing with this with debugging set to show All PHP notices and warnings (not developer mode) you will be able eliminate the notices pretty easily. Peace - Anthony
            Hide
            Mary Parke added a comment -

            Hello!

            So does this mean that the course format: project will appear in standard Moodle installations or is this a package that we need to download and install (a "custom" feature) - when it's available?

            I've many faculty looking for such a feature and would be interested in testing this on our dev server.

            Thank you!

            • Mary
            Show
            Mary Parke added a comment - Hello! So does this mean that the course format: project will appear in standard Moodle installations or is this a package that we need to download and install (a "custom" feature) - when it's available? I've many faculty looking for such a feature and would be interested in testing this on our dev server. Thank you! Mary
            Hide
            Anthony Borrow added a comment -

            Mary - Sorry for not responding sooner. This means that the code will be on Moodle's CVS server in the contrib section so it will be 3rd party contributed code (not part of standard Moodle - aka core). So you would need to download and follow the installation instructions. It is sort of like an additional plugin. Peace - Anthony

            Show
            Anthony Borrow added a comment - Mary - Sorry for not responding sooner. This means that the code will be on Moodle's CVS server in the contrib section so it will be 3rd party contributed code (not part of standard Moodle - aka core). So you would need to download and follow the installation instructions. It is sort of like an additional plugin. Peace - Anthony
            Hide
            Anthony Borrow added a comment -

            Don - Just a reminder that the code is ready to be maintained on Moodle's CVS server but I do need you and/or Akio to apply for CVS write access by going to http://moodle.org/cvs/ Peace - Anthony

            Show
            Anthony Borrow added a comment - Don - Just a reminder that the code is ready to be maintained on Moodle's CVS server but I do need you and/or Akio to apply for CVS write access by going to http://moodle.org/cvs/ Peace - Anthony
            Hide
            Akio Ohnishi added a comment -

            New versions of Project Course Format.

            • PCF now more reliable with question bank and media files

            For your information, I made English documentation for the Project Course Format here
            http://docs.moodle.org/en/Project_Course_Format

            Show
            Akio Ohnishi added a comment - New versions of Project Course Format. PCF now more reliable with question bank and media files For your information, I made English documentation for the Project Course Format here http://docs.moodle.org/en/Project_Course_Format
            Hide
            Anthony Borrow added a comment -

            Akio - I would like for you to be able to update these yourself in CVS. Please go to http://moodle.org/cvs/ and apply for CVS write access for the project course format and the sharing cart. Peace - Anthony

            Show
            Anthony Borrow added a comment - Akio - I would like for you to be able to update these yourself in CVS. Please go to http://moodle.org/cvs/ and apply for CVS write access for the project course format and the sharing cart. Peace - Anthony
            Hide
            Anthony Borrow added a comment -

            Closing all of my resolved issues. Peace - Anthony

            Show
            Anthony Borrow added a comment - Closing all of my resolved issues. Peace - Anthony

              People

              • Votes:
                3 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Development