for some time now quite a few teachers at our department were calling for the two following features in the assignment module:
1) if specified by teacher, students are able to view the submissions of their fellow students,
2) the teacher can upload a corrected/commented version of a student's submission back to Moodle as part of his/her assessment.
The Exercise and Workshop modules don't fulfil these tasks simply enough, or don't have the second functionality at all.
I have started incorporating the proposed changes (so far only the first task is done) into the assignment module but I wasn't sure about some structural/principal things that I would like to solve before continuing the work. If others would also find something like the above said useful, would you please help me to decide on some points (to make the changes as moodle-like as possible)? In the enclosed zip file you will find the necessary files, they are only slightly modified original assignment files, the new code is marked //NEW CODE - //END NEW CODE. There are two new mysql tables created and a module New Assignment should appear in your modules listing. I'm using Moodle 1.2 development, 2003103100. I am not sure about the version numbers and many other things as I have never participated in this kind of collaborative work, so please pardon my ignorance and be so kind as to point me to resources where I can find relevant information. Thank you.
And here is my first big dilemma: Should the submissions of other students appear on the same page where students find information on their own submissions, i.e. in view.php, or should there only be a link (similar to teacher's "View xx submitted assignments") somewhere on the page leading to submissions.php where name, date, and the file submitted would be listed? Both solutions have their pros and cons, for now I have chosen the second possibility.
DM
And btw, congrats for your proactivity... Way to go.
And answering your question... IMHO, I think it should be a link... and, obvisously, be visible based on teacher's will...
Although... sincerly... I think all those links should be frames in a tabbed interface...

Will
My own inclination is that other student papers should appear on a
seperate page from "core" informaiton about the student's own
assignment. I never cease to be amazed by the many exciting ways
students can glosss over what's written on a page and misunderstand
what's there, and so having seperate pages seems a helpful way to keep
it simple.
Personally, I'd very much like the new option of being able to see other student's papers to not appear until after
a particular time--either the option to not make peer work viewable
until after a student has submitted her own work or perhaps until after
the assignment deadline. (Probably one or the other--want to keep this simple).
Aside from "view all peer work", I really like the Workshop's option of the "League Table", being able to list the top x papers (by evaluation score). I know several instructors who have used the Workshop module just to get the league table option (with no self or peer evaluations).
Again, great stuff to see added!
John
Good point about the timing, John. Thanks. I will consider also the League Table.
BUT, guys, I'm a newbie to real php programming, I'm just slowly crawling through the Moodle code beginning to understand (needless to say, I have "absolutely no time"), etc. But I'll try and we'll see.
A way for submission of teacher corrected/commented files will take more time to get. But I'm still trying.

I'd love to take a look at this but my time is too short to set up test installations... could you put up a demo site somewhere so we can try things out and see it in action?
Cheers,
Martin
it's just a small thing so far, moreover only a modification of your functions etc.

I'm also short of time so I did not set up a completely new test site. But all moodlers can use the course 'Moodle test course' at http://www.fictumova.cz/kursy, moodles/moodles (student), moodlet/moodlet (teacher).
I'm enclosing a new view.php for those who are using/testing the new assignment in their installations (removes an obvious bug).
Dan
Suggestions and questions welcome.
DM
We are using your module to replace all previously uploaded assignments. In fact, we are considering disabling the standard assignment module, since yours has all the features plus the attachment feedback.
The problem we have found is the one I posted here, the backup problem. The problem is that the backup functions that should be located in /mod/newassignment are missing.
Since I guess you are as busy as me
If you have already done this, please tell me in order to stop the job. If not, I'll send you the resulting code in case you want it.
Pablo
I'm glad you find the modifications useful. The backup functions are high on my TODO list but I haven't started yet
Dan
We are in the process of putting a very large Introduction to Computers class (125 students) into Moodle. I would love to be able to include this assignment feature. Do you know the status of the backup functions or will this all be incorporated into Moodle 1.3?
Thank you both for the technical help and coding in busy times.
jean
I have not been able to work on the backup function myself and I have no information on incorporating this change into Moodle 1.3. Sorry.
dan
dan
Thanks Daniel. Once again, the moodle community seems to have an answer to my questions. I wanted a calendar/upcoming events module and here it is in 1.3. I wanted a better way to deal with assignments, and it looks as if yours will do that. I just have to figure out how to get this installed on my system. I'll probably wait until our tech manager is back.
Further thoughts based on a test install of the new assigment module into moodle 1.3:
1) how do I get the right name to appear in the module list i just get modulename. I have a feeling I have not done something important in the moodle configuration...
2) getting backup to work would be important
3) the due date does not show up in the calendar
I definitely like the multi upload option and the feedbackfile option.
Thanks.
1) I guess you didn't put the language file into its proper place (Czech and English translations are only available, at the time).
2) Backup and restore are fully functional now (tested in Moodle 1.3.3).
3) I'm not familiar with the calendar yet, to be honest.

Changelog for the attached zip file:
- backup and restore available (thanks to Eloy's well-commented code!)
- help files updated
- new name for the module: echo-Assignment
- small fixes in the main lib.php
Hope this can now be of greater use.
Dan
Is the latest NewAssignment 100% backwards compatible with the older version? I see that you renamed the module "echo-assignment."
I'm wondering, do I need to delete the old NewAssignment using the Mod admin before adding the most recent NewAssignment to MOODLE1.33?
Just being cautious, because many faculty are using the older version of the module. I don't want their e-assignment activities to disappear!
Thankyou again for sharing your revised module with us.
cheers, Jay
I cannot guarantee the module is 100% backwards compatible, I'm adding (copying + modifying) new features as they appear in the Assignment module - and of course, along with them, lots of changes is going on in general Moodle libraries, etc.; and I'm not, or hasn't been so far, keen on maintaining stable versions for different releases of Moodle.
Encouraged by your queries, I decided to set up my local CVS in which I could keep different versions of the module and also to publish the latest version of echo-Assignment here: http://www.phil.muni.cz/~miksik/en/newassignment/.
The current downloadable version:
- adds dates into calendar/upcoming events;
- supports groups.
I'm runnig the module in 1.3.4+ Moodle installation with some components from 1.4.x so I would say it is rather 1.4.x compatbile than 1.3.x compatible. Please, do not use it on production server without checking the functionality in a test installation first. If you (or anybody else) find a bug, plese report it here or (preferably) e-mail me directly.
Dan
Hi I just downloaded and installed the new assignment module (which works great) and have two questions:
1) how can I change it's name from echo-assignment to something more intuitive?
2) After installing, I get the following error message on my main moodle page:
Warning: get_list_of_languages(C:\Inetpub\wwwroot\moodle/lang/cs_utf/moodle.php): failed to open stream: No such file or directory in C:\Inetpub\wwwroot\moodle\lib\moodlelib.php on line 2268
Warning: get_list_of_languages(): Failed opening 'C:\Inetpub\wwwroot\moodle/lang/cs_utf/moodle.php' for inclusion (include_path='.;c:\php4\pear') in C:\Inetpub\wwwroot\moodle\lib\moodlelib.php on line 2268
What have I done wrong?
Also, did you download it from the authors site rather than the attachment in this thread? The most recent version can be found here:
http://www.phil.muni.cz/~miksik/en/newassignment/
Hope that helps
Thanks. I did download it from the .cz site
What can I do to install the language files properly... I unzipped the file from the root of the moodle directory.
problem solved - I just deleted the cs_utf directory that was created when unzipping the file.
Thanks.
You can rename echo-assignment by modifying these two strings in lang/en/newassignment.php:
$string['modulename'] = "echo-Assignment";
$string['modulenameplural'] = "echo-Assignments";
Dan
i have tried using your echo-assignment and the only problem i have encountered is the following:
"A required parameter (sesskey) was missing"
This error is only encounted from:
"Administration » Configuration » Modules » echo-Assignment"
other than that it seems to be working well. keep up the good work.
the error was encountered on the 1.4.3+ and 1.5dev versions.
Thanks.
Daniel,
something I am constantly asked for with the standard assignment module is the ability to download all submissions as a zip for offline marking. I'm not sure if this has been included in 1.5 but it would be a great adddition in my school.
I'd like to introduce you the new version of newassignment module (for 1.4). New features are:
- file versioning - old versions of students' files as well as teachers reviews (feedback files, grades etc.) are kept
- students' files can be viewed by other students anonymously [option]
- a list of students that haven't submitted anything yet was added
- some other minor features...
Get the source at http://www.phil.muni.cz/~jarek/moodle/na/newassignment-latest.zip.
WARNING :the upgrade script is really "fresh", backup your old files && db if you want to upgrade.
Please do not install this version in production environment, multiple security issues were discovered by skodak and are being fixed. Thanks a lot for the code audit! I will upload a bug-fix release on Monday (you can check the directory on our webserver or just use the newassignment-latest.zip link from above).
First of all, thanks so much for Jaroslav's contribution.
I've just added echo-assignment into moodle 1.5, but there is some problem in the input form, fields starting from Assignment type can't be shown. Is there any other version for 1.5?
Screen dump is attached for your referrence.

This works as a new assignment type in the standard 1.5 assignment.