|Links to HEAD:||(view) (download) (as text) (annotate)|
add localizing files -- merge with trunk
add initNonNativeTables to handle depths, location and location_address tables
changed all occurences of "published" to "visible" and of "unpublished" to "hidden" also modified database.conf.dist so that visible is aliased to "published". thus the database reference remains "published" but everything else is changed. Next project: create an easy automatic upgrade of tables to change field name from "published" to "visible" and then change back the database.conf.dist
Allow the path for storing the archive file to be specified in the options parameter
test development branch
added some documentation
replaced %WeBWorK::SeedCE with get_SeedCE($ce) because, if the webwork server hasn't been run recently %WeBWorK::SeedCE might not be defined. and addcourse will fail
Streamlined the course integrity checking
Changes to support archiving courses.
changes to support increased error checking when archiving courses
updated copyright dates
Construct additional course environments using %WeBWorK::SeedCE, which will always have all necessary values in it. The old way broke when we moved the definitions of $webwork_courses_* and $webwork_htdocs_* out of global.conf and into webwork.apache-config (and therefore into SeedCE).
use new dummp_table/restore_table code for course archiving/unarchiving
Changes to make unarchiving possible with a choice names for the unarchived files. To do: Provide updating of the database. Currently there may be difficulties if the database is upgradedbetween the time the course is archived and the course is unarchived. The behavior with sql_moodle data schemas has not been tested.
use path to cp in course environment
replace system() calls with readpipe() calls -- arguments are escaped and stdout/stderr are captured, and exit status is reported accurately.
use $db->rename_tables for course renaming, remove addCourseHelper, deleteCourseHelper, copyCourseDataHelper and associated infrastructure. still have to do something about archive/unarchive -- they are not only mysql specific, but they rely on the database being local, on the default port, and named "webwork". :P
use $db->create_tables and $db->delete_tables, check for dblayout existence even if we're using the default dblayoutname, make regex and error message match for course id checking, removal of "sql" specific information from POD, formatting fixes, additional warnings about bad course existence checking code.
remove several useless "use Data::Dumper" lines
use a single username/password for connecting to the SQL database. this means that only one DBI handle is created instead of two, and the Driver's connect/disconnect methods are no-ops.
remove vestigal gdbm/global_user related stuff.
Implemented unarchiving function to complement archiving function. Archive exports the course database to courseName/DATA and then tas and gzips the directory courseName to courseDirectory/courseName.tar.gz Unarchive allows one to choose files of the type courseDirectory/courseName.tar.gz and then ungzip, untar them to courseDirectory/courseName -- the database record in courseName/DATA is then loaded into the webwork database. So far there is only minimal error checking about whether all or part of the course exists when unarchiving. There are not yet features for archiving and then deleting a course -- these two operations have to be done separately for now.
modifications necessary to support moodle tables: * respect non_native flag in dbLayout * don't attempt to add users if user table is non_native * rather than checking for the string "sql_single" in renameCourse and archiveCourse, and erroring out otherwise, we check to see if there is a copyCourseDataHelper or archiveCourseHelper implementation (respectively). new getHelperRef subroutine helps with this. With these changes, courses with the sql_moodle dbLayout can be created, deleted, renamed, and archived using the WeBWorK course management tools.
forward-port from rel-2-2-patches: (make addCourse, deleteCourse more robust. - pre-check permissions before trying to mkdir/rmtree - treat creation errors on directories other than the root as warnings - treat deletion errors on all directories as warnings - treat sql_single "drop table" errors as warnings - supress DBI's error reporting for command-line addcourse/delcourse)
forward-port from rel-2-2-dev: (update copyright date range -- 2000-2006. this is probably overkill, since there are some files that were created after 2000 and some files that were last modified before 2006.)
I've modified the renameCourse code to simply issue a warning when a course directory (other than the course root dir) is not movable. I've also added error checking for some of the more common reasons for directories to not be movable, so that the warning message is more informative. Resolves bug #943. Originally committed to branch rel-2-2-dev. Forward-ported without modification to HEAD.
don't write globalUserID to course.conf file.
Changed the wording of the initial course.conf file.
Expanded information in error messages.
Add the beginnings of a facility for archiving a course. This method uses mysqldump and therefore will work only with a mysql database. Many things are still hardwired In particular mysqldump is hardwired. The database name is hardwired to "webwork" Archiving consists of dumping the tables associated to the course to a file $courseID/DATA/$courseID_mysql.database (this file can be used to created a new database for the course. it will not overwrite existing tables however.) Then the entire course directory is tarred and gzipped and placed in the courses directory with the naem $courseID.tar.gz Currently nothing is deleted from the database and no directories are deleted. So the implementation is fairly safe, but not yet very useful for course management. There is not yet a facility for automatically importing the archived course.
fix bug #803: corrected typo that prevented course renaming from working.
Preliminary commit of changes to add Gateway module. This adds to WeBWorK - the ability to create versioned, timed problem sets ("gateway tests") for which all problems are displayed on a single page ("versioned" means that students can get multiple versions of the problem set), - the ability to create sets that draw problems from groups of problems, and - the ability to create sets that require a proctor login to start and grade. Sets can be defined as gateway tests or proctored gateway tests from the ProblemSetDetail page. Not quite bug-free yet. Known bugs include handling of problem values on the Student Progress page (I think this may be a problem with changing from sql database format where all entries were 'text' to sql_single in ver 2.1, where they are integer), and a division by zero error on the grades page (which may be the same problem). Tests with a number of attempts per version greater than one haven't been carefully tested, nor has scoring of gateway tests.
Added course renaming to CourseManagement, CourseAdmin. It works like this: - move the course directory - move any course subdirectories that are still at their old locations (like if they were outside the course directory) - create a new database using addCourseHelper() - copy the course data into the new course database using copyCourseDataHelper() (INSERT INTO $new SELECT * FROM $old) - delete the old course database using deleteCourseHelper() TODO: * write helpers for gdbm and sql layouts * write command-line script
added dbLayoutSQLSources function to get a hash mapping DBI sources to the username and password of the source and the tables that use the source.
rel-2-0-patches merge: removed unused professor-enumerating code, fixing bug #638.
use database-layout-specific helper functions in WeBWorK::Utils::CourseManagement::*.
improved error handling, made SQL statements more robust.
made SQL statements more robust (fixes #577), improved error handling.
added check for well-formed course IDs. closes bug #504.
If there is an error, other than "course exists" then the directory tree is cleared. This corrects a behavior in which the creation of the new course would fail half way through, but the directory tree would remain -- this made it appear as if the course existed. -- This fix is still somewhat fragile.
copy symlinks in templates directory
added ability to import the contents of another course's templates directory when creating a new course. this is supported in bin/addcourse with the --templates-from=COURSEID switch and in the web interface with an additional form field.
Improved psvn kludge by using the full mysql statement from mksqldb. Fixes the original version of bug 495.
removed sql exec warnings
create "psvn" field as "INT AUTO_INCREMENT"
add global user record to new courses
Fix bug: use of an undefined value.
fixed bug #472
finished, deleteCourse, added listCourses.
preliminary web-based course creation support try it -- create a course called "admin" the usual way and then visit it in your browser.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
|aubreyja at gmail dot com||ViewVC Help|
|Powered by ViewVC 1.0.9|