|Links to HEAD:||(view) (download) (as text) (annotate)|
backport (gage): don't use hardwired mysql and mysqldump commands.
backport (sh002i): UGH! work around egrigious bug in course archiving code.
This commit was manufactured by cvs2svn to create branch 'rel-2-4-dev'.
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 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.
removed support module for deleted sql dblayout
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 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.)
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.
This change affects course creation using mysql. Field types are now determined by DB/Record/*.pm in the function SQL_TYPES. Key fields which are text are set to binary types (blobs) so that indexing on those fields is case sensitive. The net result should be fast database access while still having it be case-sensitive in the searching.
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 code to generate indexes when creating sql and sql_single courses.
added deletion code, got rid of crap.
broke out database-layout specific code into separate classes
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|