Development:Portfolio API
From MoodleDocs
Quick ideas:
- The admin can set up portfolio plugins over Moodlenet or any other mehcanism as being trusted portfolios for this Moodle.
- The admin can specify defaults, and allow the user to pick one as well.
- Small function like portfolio_add_button() can be called from throughout Moodle to add a small button labelled "Add to portfolio". Can be next to forum posts, assignments, quiz attempts etc.
- Button links to central script portfolio/add.php with parameters to call back a lib.php function in the calling Moodle module, such as portfolio_add_item().
- This function takes the arguments and uses it to create a file (native format or a constructed html) plus metadata like user name etc, which it returns.
- portfolio/add.php then takes care of passing this data to the currently active portfolio plugin (portfolio/type/xxx).
- The plugin takes care of copying this data to the external system, and showing any screens that might be necessary, like more metadata etc, or a link to Mahara for more cool manipulation stuff etc.