General developer forum

 
 
Picture of Andrew Nicols
Assignment assignsubmission_mahara plugin
Group DevelopersGroup Moodle HQGroup Particularly helpful MoodlersGroup Testers

Hi,

Ruslan Kabalin has updated the old Assignment (2.2) subtype for Mahara to a new Assignment (2.3+) submission plugin (assignsubmission_mahara). I'm just taking over the plugin from him to finish it off now and pondering how best to handle page locking.

The way that this plugin works, when a user submits their Page (formerly View) to Moodle, that page must be locked in Mahara to prevent any further changes to the Page prior to (or during) marking. There are two options for how we can do this, and I'd appreciate some feedback on how users would expect this to work. In writing this up, I'm already rubber-ducking and making my mind up, but I'd appreciate some user feedback too.

One way would be to Lock the Mahara Page as soon as it is submitted to Moodle. The Page is released when a different Mahara page is selected and the assignment resubmitted. We could also theoretically allow the user to release the Page in the Moodle submission screen by some other mechanism to allow them to make changes to that Page before the submission date (unsubmitting their work essentially).

The other way of handling the page locking would be to only lock the Mahara Page when the assignment submission is locked in Moodle. When an administrator unlocks the assignment submission, the page is unlocked in Mahara. We would prevent any marking of the page until it has been locked in Moodle. Ideally a task would run to lock all pages in Moodle (and thus Mahara) at the submission deadline.

In talking this through, I feel that the first option is the 'best' and most appropriate option, but would appreciate some validation of my thoughts. My feeling is that Locking of assignment submissions in Moodle is the wrong approach to take and is really intended for different purposes.

Additionally, I'm just wondering what should happen to that page once the assignment has been marked. My gut feeling is that it should not be released... ever - imagine the scenario where the Page is used as evidence and sent to an external examiner at a later date. It therefore must not be modified in any way between being marked initially, and then subsequently marked by the external examiner. Again, I'd appreciate any views others may have in this regard.

For those familiar with Mahara, you will of course be aware that even when a Page has been locked, some of it's content can still be changed as it is essentially just a view of other content. As a result, content such as Blog Posts which are displayed within the Page can still be edited, so this is not foolproof.

Thank you in advance for any thoughts and suggestions,

Andrew Nicols

 
Average of ratings: -
Picture of Andrew Nicols
Re: Assignment assignsubmission_mahara plugin
Group DevelopersGroup Moodle HQGroup Particularly helpful MoodlersGroup Testers

I've been discussing this Ruslan and others a little more and it appears that my rubber ducking does not necessarily agree with theirs. I thought I'd add some more of the background to my reasoning here:

As it stands, whilst we can lock the pages in Mahara when an tutor in Moodle locks that assignment submission, there is currently no way to automatically lock the page in mahara when the deadline for the assignment in moodle passes. We cannot rely on cron as there is no guarantee on the timeliness or frequency of cron and therefore we could get into a situation where users are able to edit their pages after they have been submitted, and after the deadline but before marking/locking has taken place.

I'm also concerned that the model for this breaks somewhat if users are able to submit a page, and yet still make changes. If users are not 100% aware that this is the case, they could submit a page to Moodle but it not be locked, and then continue making changes (or even delete that page) without realising that their changes do indeed affect their submission.

We've seen similar usability issues with the 'Submit for grading' button whereby users upload their work, Save their changes, but do not Submit for grading. They assume that because they have uploaded their content, Moodle will do the right thing at the right time. My concern is that users could make the same assumption here - that their page has been snapshotted in it's current state and therefore that they can make any changes they like to it for another purpose.

Cheers,

Andrew 

 
Average of ratings:Useful (1)
Picture of Ruslan Kabalin
Re: Assignment assignsubmission_mahara plugin
Group DevelopersGroup Particularly helpful Moodlers

I think you convinced me that we have to lock Page in Mahara in submission where finalising is not required. But in this case we need to foresee some other things:

When user submit a different Page while editing submission, the page that has been submitted previously to this assignment has to be released (unlocked).

When we are dealing with the submission type where user needs to finalise submission by clicking submit button and user is in the stage of saving submission - do we need to lock Page when submission is still regarded as draft in Moodle? This might require attention from programming side, because draft saving and actual submission when finalising is not required, are using the same function.

 

 
Average of ratings: -
Mahara logo
Re: Assignment assignsubmission_mahara plugin
Group Developers

Maybe what we should do is, when the user submits the page, make a copy (a "snapshot") of it on the Mahara side, and submit & permanently lock that copy, rather than the original page.

Cheers,
Aaron

 
Average of ratings:Useful (2)
Picture of Ruslan Kabalin
Re: Assignment assignsubmission_mahara plugin
Group DevelopersGroup Particularly helpful Moodlers

Interesting idea.

 
Average of ratings: -
Picture of David Elliott
Re: Assignment assignsubmission_mahara plugin
 

I like this idea the best. 

 
Average of ratings: -
Mahara logo
Re: Assignment assignsubmission_mahara plugin
Group Developers

To elaborate a bit, my suggestion is:

1. When the student submits their Page, within Mahara we create a non-editable, non-deletable copy of the page (using basically the same mechanism as the existing "Copy a Page" button). We'll call this a "Snapshot".

2. We send the URL for that Snapshot to Moodle.

I discussed some of the implementation complexities in this later comment: https://moodle.org/mod/forum/discuss.php?d=231356#p1006613

I think the best thing about this solution is that it solves the perennial problem of people not wanting to "lose" their original Page by getting it permanently locked when they submit it to an assignment. Also, by creating a "Snapshot" API, we'd be laying the groundwork for my dream of adding a Page versioning system to Mahara. wink

In this scenario, there would be no such thing as a "draft" submission, really. However a student could potentially go in to the assignment and change their submission to a different Snapshot. There is also nothing we need to do on the Mahara side when the submission deadline happens.

Cheers,
Aaron

 
Average of ratings:Useful (1)
Picture of Toni Soto
Re: Assignment assignsubmission_mahara plugin
 

I vote for Aaron 's idea (solution). But I think that some kind of snapshot must be retained in Moodle attached to the assignment as an evidence for audit. Some institutions start to be concerned about it. 

Best regards from Vigo (Spain) 

 

Toni Soto 

 
Average of ratings: -
Picture of Ruslan Kabalin
Re: Assignment assignsubmission_mahara plugin
Group DevelopersGroup Particularly helpful Moodlers

Just would like to clarify how updated version works at the moment.

If user is required to click submit button to declare submission is final (defined in assignment settings):
On final submission, the submitted Page will be locked in Mahara and submission editing will not be possible in Moodle. To make an edit, teacher should release submission to draft. This sounds reasonable and it works the same way for any submission type (file or onlinetext).

If user is NOT required to click submit button to declare submission is final (defined in assignment settings):
On submission, the submitted Page will not be locked in Mahara and submission editing will be possible in Moodle. The reasoning here is simple - since submission editing is possible in Moodle why it should be locked in Mahara? To actually grade submission that has not been declared as final, teacher should Lock it in Moodle (select "prevent further changes" for single submission or lock them all), this will result in locking submissions in Mahara as well.

 
Average of ratings: -
Picture of Jez H
Re: Assignment assignsubmission_mahara plugin
Group Particularly helpful Moodlers

I think Aaron's approach is the best, in fact that is what I thought was going to happen.

I would wager we are one of the biggest users of Mahara assignment submission in Moodle and have been speaking with Kristina Hoeppner about funding development work on this. For us assignment submission to Moodle is one of the most important features, but it has never worked as it should.

What I have never seen are any use cases for this feature which I think would be useful. There are a couple that cause us problems:

1) Students incorrectly submitting assignments. This happens where there are multiple assignments and relating Mahara pages in a single Moodle space. It is not uncommon for students to "mis match" the Mahara pages with the assignments and subsequently re-submit the correct ones. In this instance the first submission is never graded and remains locked.

Sumbission as final / draft or any other complexities are irrelevant. We are talking about human error. If a student believes they are submitting the correct assignment they will (do) follow the entire process through to locking.

2) We have a number of cases where students on work placement (6-12 months) are asked to maintain a journal / work diary in Mahara and submit it for weeky / bi weekly review by the lecturer. These form part of the assessment and are a good way for lecturers to maintain contact with the student. Currently this just does not work. Students need to maintain access to their pages / journals as they are "living documents". Lecturers on the other hand want to see measurable weekly updates and progress. Lecturers also want to be able to leave feedback in the Mahara comments.

3) Moodle 2.5 allows for assignment re-submission, I am not sure what the impact of this would be?

Another point is in the past we have had issues with "inheritance" in locking, for example embedded blog / journal posts were not locked with the page and could be edited by proxy. It seems to me that locking of new Mahara features will always be an afterthought and every new content type added to Mahara would need more code adding to the "Mahoodle" interface.

Also I do not think some of the above comments take account of the way lecturers work, or the fact that most do not have the time nor the inclination to get into the complexities of such a system, in my opinion processes:

"If user is required to click submit button to declare submission is final (defined in assignment settings)"

"If user is NOT required to click submit button to declare submission is final (defined in assignment settings)"

It is too much to expect each and every lecturer to understand the implications of this in Mahara. It is a huge task to keep everyone up to date with core Moodle features, trying to get the implications of Mahara locking / unlocking across to them just wont work. There can be large gaps between training lectures and them actually coming to use the system and most lecturers / teachers are not technically minded, and why should they be!

"To actually grade submission that has not been declared as final, teacher should Lock it in Moodle (select "prevent further changes" for single submission or lock them all), this will result in locking submissions in Mahara as well"

Again, way too complex. Lecturers already have a process for this, it is the assignment deadline set in Moodle. That should be all they need to do.

Often lecturers do not get round to grading for some time. They teach, they also have many assignments submitted on different courses in the same couple of weeks. They are sometimes off sick, attending conferences, on holiday / vacation etc. Also consider we are (in our case) talking about formal assessment of degree courses where there are strict rules regarding deadlines that need to be adhered to. The idea that the process becomes reliant on this kind of manual intervention is a very bad idea.

Lecturers and Students regularly make mistakes (as we all do). We should be designing a process that is as resilient to human error as possible, one that requires a minimal amount of training / knowledge / understanding to use successfully.

Another point is that the process of "archiving" is complex and expensive, but according to this process is only made use of in a tiny minority of cases, whilst in parallel we continue trying to work with an increasingly complex set of rules for locking / unlocking which has been nothing but trouble since its inception.

My suggestion is that you stop trying to fix an already over complex and problematic process with additional layers of complexity take a serious look at Aaron's suggestion of using the "snapshot", and perhaps try and gather some more use cases.

Finally, I am sorry if this sounds overly critical particularly where I have taken and responded to quotes or complained about the existing process, I am just trying to make these points as clearly as I can but am aware this may seem blunt.

We are all very grateful for the great work you guys do!

Regards, Jez

 
Average of ratings:Useful (1)
Picture of Jez H
Re: Assignment assignsubmission_mahara plugin
Group Particularly helpful Moodlers

Something else I forgot to mention, I saw some documents relating to the archive process which implied it could not be done in real time, but on a schedule which would run during quieter periods.

If that is the case then it makes the "snapshot" idea less viable, but there would be a work around which would be to create a new "assignmet" URL type for submission to Moodle.

When this kind of URL were accessed Mahara could determine whether the snapshot existed, if it did the user would be routed to the snapshot.

If no snapshot were created then the user would be redirected to the view via a secret URL.

I guess this would still require a locking process for the interim period.

Another option would be for Moodle to take over the file storage in which case you could theoretically get Moodle to CURL in the page / collection and store the files in Moodle rather than Mahara.

Jez

 
Average of ratings: -
Mahara logo
Re: Assignment assignsubmission_mahara plugin
Group Developers

Hi Jez,

"Snapshots" of any sort have their own complexities to deal with too, unfortunately.

First, you have to decide what you mean by "snapshot". In my comment, I was thinking of it as a variant on the same functionality as when you click the "Copy a page" button. In other words, we'd make a new in-Mahara copy of the page, maybe with some metadata that says which Page it was copied from and when, and we'd permanently lock that "snapshot" copy.

The alternative definition of "snapshot", which is more resource intensive and is probably the one that was referred to as being done in batches, would be to export a LEAP2A (or flat HTML) archive of the Page, and store that somewhere, perhaps in Moodle. This idea has some advantages, the main one being that it's more permanent. Even if your Mahara site goes away, you'll still have that archive file to compare with the grade. On the downside, not all types of artefacts work great when run through the archive/dearchive process.

With my in-Mahara "snapshot" page copies, I think the main complexities you run up against are:

1. It still relies on locking, so you still have the "Locking inheritance" issues you mentioned. You could work around this in a couple of ways. First off, you'd want to make actual copies of all the artefacts rather than just link to the originals. Second, you could just disable all editing on Pages that are earmarked as a "snapshot" (though potentially it could be trickier to block editing of the Pages' artefacts).

2. Since these snapshots are permanent and can't be deleted, there's the potential for some storage bloat issues. But maybe you could let admins manually delete individual Snapshot pages.

3. Feedback comments on the snapshot page. If the teacher roams over into the page from Moodle, should they see a comment/feedback thread for the snapshot page itself? Or should they see the comment/feedback thread for the original page? Or should they see a frozen snapshot of the original page's feedback thread?

4. There would also be some UI fiddliness about coming up with ways for people to see and manage their snapshots. Like, should they show up on the list of "Your pages"? How do you display snapshots of pages where the source page has since been deleted? Do you put a notice at the top of the Snapshot page linking back to its source page? Can you set separate permissions for snapshots than for their source page? etc.

5. And there may be some further complications once you get into the idea of Collection snapshots. Although... in principle I think you could just make one by taking a snapshot of each of its component Pages.

Cheers,
Aaron

 
Average of ratings: -
Picture of Jez H
Re: Assignment assignsubmission_mahara plugin
Group Particularly helpful Moodlers

Hi Aaron,

Yes I am sure its a tricky process. I was referring to a "Mahara Export Procedure" described in a Catalyst document titled "Solution Design for Mahara and Moodle Integration" (June 2013) which said:

"A submitted page or collection will be archived under certain conditions, e.g. when an institution using Moodle decides to use the LTI assignment and / or when page submissions to groups are made and the archiving setting has been activated. The Mahara export process needs to be able to archive submitted pages / collections after the tutor / teacher finishes grading either in Moodle or in a group that allows submissions."

If that process were implemented, then could the archive not be taken at the point of submission rather than the point of grading / release?

If so then the pages / collections could immediately be released back to the student.

Regards your points above:

1) Artifacts / file access would be an issue, probably the biggest hurdle.

2) When Kristina described this process to me (prior to me seeing the document) the concept of "retention periods" was mentioned so that files would clear down after a given period of time.

3) I envisaged feedback being left on the live copy not the snapshot. The purpose of locking / taking snapshots is to enforce an assignment deadline. Staff have a number of ways to give feedback, I think most use Moodle assignment feedback but in the case of ongoing weekly journals they like to leave feedback on the Mahara pages / journal entries.

4) I would imagine those issues would come under the scope of the project to develop these features (again referring to the Catalyst document I saw).

I don't know how well this process would work / how reliable it would be. The document I saw has concepts for admin screens showing "failed exports" etc.

I do think it is worthy of further consideration though, especially as development of these features already seems to have been planned.

Again, if this process is implemented and does work, why not take the snapshot on submission as opposed to grading?

Regards, Jez

 
Average of ratings: -
Mahara logo
Re: Assignment assignsubmission_mahara plugin
Group Developers

Hi Jez,

Just to be clear, I wasn't trying to say that we shouldn't go the Mahara-page-copy "snapshot" route. I just wanted to define what I meant when I used the term "snapshot" in my forum post here, as well as try to use the wisdom of the community to figure out the best answers to some of the questions it poses. smile

My idea of using in-Mahara copies of the Page as the "snapshots" is different from what is in the Solution Design document you referred to. It's actually an idea I had relatively recently while I was discussing this issue with Kristina. So, this would sort of be an alternative to that document.

I'll confess to not being super familiar with the contents of that Solution Design, as it was written by one of my colleagues, not me. wink I think it boils down to:

1) replace mnet with LTI for web services (which is purely a back-end change not directly visible to users)
2) create a Leap2A archive of each submitted Page, and hold on to that as a permanent backup of the submission.

In all other ways, it remains the same as the old Mahara assignment plugin, including the idea that it would lock the user's submitted Mahara page, and that the teacher would look at the locked, original, Page. I believe it's item #2 there which would include the "failed exports" and "retention periods" you were talking about. This would also be the bit you mentioned, that can't be done in realtime, because creating leap2a exports is resource-intensive. Indeed, that seems to be the part the document goes into the most detail about. I do think adding a file export of each submission, as a permanent record even if the Mahara instance goes away, is probably a good idea. I've heard from institutions that need a permanent audit record like that. Although, for the teacher who is grading the submission, they're going to want to be able to view the Page easily, in something like its original form, and so my idea of creating a copy of the page in Mahara is a good answer to that, I think.

Cheers,
Aaron

 
Average of ratings: -
Picture of Jez H
Re: Assignment assignsubmission_mahara plugin
Group Particularly helpful Moodlers

Hi Aaron,

I understood what you meant, that your idea was an alternative smile.

If the "Copy" process is faster then that would make a lot of sense.

It would be fair to say we have more issues with unlocking than locking, if a snapshot (of either type) could be used to expedite that process it would be a benefit. So, lock the page / collection until the snapshot is taken and unlock it once the snapshot is complete thus removing the direct dependency between grading and unlocking.

Do you think this would be possible?

If this were possible there would still be a number of complexities such as re-submission, or how the process may be applied in the case of an ongoing journal (though I guess worst case would be the lecturer sets up multiple assignments in Moodle for each week).

Would it be worth us providing some use cases?

If so is there a format Catalyst uses for these?

Jez

 
Average of ratings: -
Picture of David Elliott
Re: Assignment assignsubmission_mahara plugin
 

Interesting stuff. Any idea when the plug-in will be released? I programmed a quick version on our mahoodle. www.obaverse.net , but its not very robust. 
Is yours using MNET? 

 
Average of ratings: -
Picture of Jez H
Re: Assignment assignsubmission_mahara plugin
Group Particularly helpful Moodlers

There are already plugins that can be made to work with Moodle 2.3+, but you have to use the older 2.2 assignment type in Moodle (more info on Mahara.Org).

We use MNET and its pretty reliable, we have had one or two technical issues with assignments not being processed properly out of several thousand submitted this year.

 
Average of ratings: -
Picture of Ruslan Kabalin
Re: Assignment assignsubmission_mahara plugin
Group DevelopersGroup Particularly helpful Moodlers

Hello David, It will be released within a month. We will update the forum once it is done.

 
Average of ratings: -
Picture of Tony Box
Re: Assignment assignsubmission_mahara plugin
 

Hi Everyone,

The University of Portland has partnered with Philip Cali to develop a completely updated Mahara assignment plugin that works with Moodle 2.3+.

I just sent messages to a few people to find out what steps need to be taken to get this released in an official manner to the public. Right now it's open-sourced but I'd like to make sure I've done as much finalizing as possible before I share the code. If anyone in here would like to lend a hand, I'd be much appreciative.

The main thing I'd like to do before release is make sure the plugin .php files have author/license headers in them.

Thanks,

Tony

 
Average of ratings: -
Picture of Tony Box
Re: Assignment assignsubmission_mahara plugin
 

Okay never mind... I added some licensing stuff and credits to the Readme files which I'm content with. Here are the links to the git repos. You'll find documentation included with all of the plugins' readme files.

https://github.com/fellowapeman/local-mahara
https://github.com/fellowapeman/assign-mahara
https://github.com/fellowapeman/assign-mahara-feedback

A huge thanks to Philip Cali who did all of the coding at my behest for the University of Portland! Not sure what next steps to take... I guess you guys should test it out a bit, yeah? I've only been able to 100% test it in 2.4 and 2.5 and it works pretty good smile

-Tony

 
Average of ratings: -
Picture of Ruslan Kabalin
Re: Assignment assignsubmission_mahara plugin
Group DevelopersGroup Particularly helpful Moodlers

Wow, well done Tony! Our version plugin is also almost ready, just needs to be modified a bit to follow more logical page release policy.

 
Average of ratings: -
Picture of Tony Box
Re: Assignment assignsubmission_mahara plugin
 

Thanks Ruslan,

I was aware that some people were discussing the possibility of updating the plugin but we needed to get this done. We couldn't rely on other groups of people to finish the update in the short time we needed it. I hope you understand why we went ahead and did this on our own smile I didn't mean to step on anyone's toes.

I was thinking today about this and I don't know how much sense it makes to have two updated versions of the same plugin. I'm not a php developer so my coding skill set is limited, but it would be awesome if we could combine forces and work together on a single plugin to release. The plugin I've submitted to Moodle has all of the mahara Lock/Release functionality and logic working properly (you must install the Mahara Assignment feedback plugin in addition to the Assignment Submission and Local plugins). Would you mind taking a look and let me know what you think? Maybe your code has some improvements over what we've done, and vice versa.

Thanks,

Tony

 
Average of ratings: -
Picture of Ruslan Kabalin
Re: Assignment assignsubmission_mahara plugin
Group DevelopersGroup Particularly helpful Moodlers

Hello Tony,

I will definitely have a look at your code at some point, and as you said, we could combine best bits from both into one. We have integrated some bits required for our Mahara plugin functionality to core recently, e.g. MDL-39760, not sure if your plugin make use these enhancements. It looks quite interesting from the first glance at the code.

Best,

Ruslan

 
Average of ratings: -
Picture of Marius Jugariu
Re: Assignment assignsubmission_mahara plugin
 

Hi Tony,

First of all, many thanks for your work on this!

I installed these on our Moodle 2.5+ (Build: 20130614) and the installation it worked fine. It works fine to create the Mahara assignment as well. It even recognizes the pages that I've got in Mahara and I can see the previews so the communication between Moodle and Mahara works ok. However, when I try to submit a page I get the following error:


Error code: ddltablenotexist
Stack trace:

    line 554 of /lib/dml/moodle_database.php: dml_exception thrown
    line 1347 of /lib/dml/moodle_database.php: call to moodle_database->where_clause()
    line 220 of /local/mahara/mnetlib.php: call to moodle_database->get_record()
    line 167 of /local/mahara/mnetlib.php: call to mahara_mnetservice->get_portfolio()
    line 115 of /local/mahara/mnetlib.php: call to mahara_mnetservice->add_update_portfolio()
    line 291 of /local/mahara/optionalib.php: call to {closure}()
    line 116 of /local/mahara/mnetlib.php: call to Either_Projection->map()
    line 583 of /mod/assign/submission/mahara/locallib.php: call to mahara_mnetservice->request_submit_page_for_user()
    line 517 of /mod/assign/submission/mahara/locallib.php: call to assign_submission_mahara->lock_portfolio()
    line 4785 of /mod/assign/locallib.php: call to assign_submission_mahara->save()
    line 366 of /mod/assign/locallib.php: call to assign->process_save_submission()
    line 53 of /mod/assign/view.php: call to assign->view()

 

Any recommendations please on how to sort this out?

(I'm using Mahara 1.7.1)

Regards,

Marius

 
Average of ratings: -
Picture of Jean FRUITET
Re: Assignment assignsubmission_mahara plugin
Group Particularly helpful Moodlers

I have got that error because mahara_portfolio table does not exist in MySql database.

I think it's a local/mahara installation problem.
If an old version of ./local/mahara plugin exists on your Moodle, the new ./local/mahara/db/install.xml is ignored.

Then go to your MySql database and create directly the mahara_portfolio table:

 

CREATE TABLE mdl_mahara_portfolio (
id BIGINT(10) NOT NULL auto_increment,
page BIGINT(10) NOT NULL,
host BIGINT(10) NOT NULL,
userid BIGINT(10) NOT NULL,
title VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
url LONGTEXT CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
CONSTRAINT PRIMARY KEY (id)
) ENGINE = InnoDB DEFAULT CHARACTER SET utf8 DEFAULT COLLATE = utf8_unicode_ci;

ALTER TABLE mdl_mahara_portfolio COMMENT='A table containing Mahara portfolios';
CREATE INDEX mdl_mahaport_pag_ix ON mdl_mahara_portfolio (page);
CREATE INDEX mdl_mahaport_paguse_ix ON mdl_mahara_portfolio (page, userid);
CREATE UNIQUE INDEX mdl_mahaport_paghos_uix ON mdl_mahara_portfolio (page, host);
 
Average of ratings:Useful (1)
Picture of Nicolas Dunand
Re: Assignment assignsubmission_mahara plugin
Group DevelopersGroup Particularly helpful Moodlers

Well spotted Jean!

I couldn't be bothered to update the DB manually, so instead I uninstalled the local_mahara plugin (via Moodle's UI) and reinstalled it immediately after. This solved the problem.

Thanks!

 
Average of ratings: -
Picture of Scott Gage
Re: Assignment assignsubmission_mahara plugin
 

Hi Tony,

Cheers for sorting this out, it's a great help.

However I'm having a weird issue in my dev and test environments that I can't recreate on my local machine. I'd copy and paste the backtrace but it's some 12 000 + lines!

The error is:

QuickForm Error: nonexistent html element Nonexistant element(s): 'assignfeedback_mahara_enabled' in HTML_QuickForm::freeze()

But scrolling down you can see the submission and feedback mahara elements and checking the page source they have the correct names. Have you encountered this issue before? I'm wondering if it's a site setting that is intefering.

Thanks for your time,

Scott

 
Average of ratings: -
Picture of Tony Box
Re: Assignment assignsubmission_mahara plugin
 

Hi Scott,

We're working on this issue in the bug tracker here: https://github.com/fellowapeman/moodle-assign_mahara/issues/1

If you can contribute any other information, please go ahead and do so; it would be very helpful. You may just want to post in there to say you are also experiencing the same problem.

Thanks,

Tony

 
Average of ratings: -
Picture of Scott Gage
Re: Assignment assignsubmission_mahara plugin
 

Will do Tony, thanks mate.

 
Average of ratings: -
Picture of Ruslan Kabalin
Re: Assignment assignsubmission_mahara plugin
Group DevelopersGroup Particularly helpful Moodlers

Just an update, that we have made our version of Mahara assignment plugin available at: https://github.com/lucisgit/assignsubmission_mahara

 
Average of ratings:Useful (2)
Picture of Marius Jugariu
Re: Assignment assignsubmission_mahara plugin
 

Thanks Ruslan. I have installed the updated plugin from the link provided but whenever I go in to Moodle to submit a Mahara assignment I get the error below (I am using Moodle 2.5+ (Build: 20130614) and Mahara 1.7.1). Also it doesn't work to delete any assignments now, it just tells me "error reading from database".

 

Error reading from database

More information about this error

Debug info: Table 'moodle.mdl_assignsubmission_mahara' doesn't exist

SELECT viewid, submission
FROM
mdl_assignsubmission_mahara
WHERE
viewid IN (11071,10856,8699)
[array (
)]
Error code: dmlreadexception
Stack trace:
  • line 423 of /lib/dml/moodle_database.php: dml_read_exception thrown
  • line 1005 of /lib/dml/mysqli_native_moodle_database.php: call to moodle_database->query_end()
  • line 165 of /mod/assign/submission/mahara/locallib.php: call to mysqli_native_moodle_database->get_records_sql()
  • line 5143 of /mod/assign/locallib.php: call to assign_submission_mahara->get_form_elements_for_user()
  • line 5225 of /mod/assign/locallib.php: call to assign->add_plugin_submission_elements()
  • line 48 of /mod/assign/submission_form.php: call to assign->add_submission_form_elements()
  • line 191 of /lib/formslib.php: call to mod_assign_submission_form->definition()
  • line 3040 of /mod/assign/locallib.php: call to moodleform->moodleform()
  • line 476 of /mod/assign/locallib.php: call to assign->view_edit_submission_page()
  • line 53 of /mod/assign/view.php: call to assign->view()
 
Average of ratings: -
Picture of John Pembroke
Re: Assignment assignsubmission_mahara plugin
 

Apologies if this in the incorrect thread for this.

I have installed the Mahara Assignment Submission on Moodle 2.5.1 on IIS and a MSSQL database. The issues is that the cron fails to run. See below;

 

<!--StartFragment-->Starting activity modules
Processing module function assign_cron ...... started 17:12:05. Current memory use 26.3MB.
!!! Error reading from database !!!
!! Operand type clash: ntext is incompatible with tinyint
SELECT a.* FROM mdl_assign a, mdl_assign_plugin_config c WHERE a.id = c.assignment AND c.plugin = 'mahara' AND c.subtype = 'assignsubmission' AND c.name = 'enabled' AND c.value = 1
[array (
)]
Error code: dmlreadexception !!
!! Stack trace: * line 423 of \lib\dml\moodle_database.php: dml_read_exception thrown
* line 256 of \lib\dml\mssql_native_moodle_database.php: call to moodle_database-&gt;query_end()
* line 723 of \lib\dml\mssql_native_moodle_database.php: call to mssql_native_moodle_database-&gt;query_end()
* line 757 of \lib\dml\mssql_native_moodle_database.php: call to mssql_native_moodle_database-&gt;get_recordset_sql()
* line 679 of \mod\assign\submission\mahara\locallib.php: call to mssql_native_moodle_database-&gt;get_records_sql()
* line 868 of \mod\assign\lib.php: call to assign_submission_mahara::cron()
* line 270 of \lib\cronlib.php: call to assign_cron()
* line 88 of \admin\cron.php: call to cron_run()

 

Turning off the Mahra submission type alows the cron to run to completion. Any help most appreciated.

 
Average of ratings: -
Picture of Michael Campbell
Re: Assignment assignsubmission_mahara plugin
 

Hi there

We are also having trouble with the submission of pages through the assessment plugin. We get the message "error reading from the database" when trying to test the submission of an assessment. Has any further work been done on the in late 2013? Perhaps an updated plugin?

We are using Moodle 2.5 and Myportfolio (Mahara 1.8)

Thanks for your help in advance

Michael Campbell

 
Average of ratings: -