TODCM 1.2.0 Release Notes
Introduction
We have changed the TODCM
release numbering scheme from 4 levels to 3 levels. The previous release is
1.1.1.0 and the new release is 1.2.0. The Chrome browser is now officially supported
by TODCM. The MAC OS X server environment is now part of TODCM's QA testing environment in addition to
Linux and Windows. Some issues were found in the MAC OS X server environment
and they are fixed in this release. TODCM is now certified to run on PHP 5.4.
This is a major release with
many significant changes and fixes. We have added and modified over 20,000
lines of code in total, a typical small open source project is around 10,000 lines.
We have also upgraded many of the third-party open source packages utilized
by the application. The list of all changes is extremely long therefore only
the significant changes are listed in this document. Some of the changes were
PHP and database optimizations, the application now runs 10-40% faster on any
given page compare to the previous release. These optimizations are very
important as the application now has more than a quarter million lines of code,
this is not a small project by any means, and performance can become an issue
given the large size and complexity of the software internal.
A new professional version of
TODCM has been added. The professional version relies on the open source
package and comes with additional advanced features such as full site
protection security layer, inline display of images, PDFs,
Microsoft Word documents and web links on the unit template, single zip
download for a unit, custom time periods instead of start date and end date for
the unit template, collapsible unit stages etc. Each professional version
feature is a plug-in module that can be drop into the open source package individually;
this ensures the professional version can never be separated from the open
source version. The TODCM open source version can be upgraded to the
professional version at any time with or without production data. A TODCM
professional site can also be reverted back to the open source version without
any data loss, all the professional version specific data is retained in the
database.
Database Changes
Enhancements and New
Features
Issue
211 - Refresh whole menu tree instead of refreshing selective nodes. This makes
the code simpler and less problems.
Issue
269 - Captcha support for guest LDAP login.
Issue
274 - Add admin option to control guest download.
Issue
305 (Pro only) - Add persistent cache.
Issue
313 - Make admin config option change to refresh the
page when necessary.
Issue
315 - Reset menu tree after switching from todcm to
todcm2 template or vice versa.
Issue
316 (Pro only) - Add professional version manager to mange professional version
specific features.
Issue
319 - Move constant files from directory cms to config directory and use CodeIgniter to load them.
Issue
320 - Upgrade to CodeIgniter version 1.2.0.
Issue
322 - New DB upgrade system.
Issue
324 (Pro only) - Single zip file download support for unit pages.
Issue
325 - Add config option to show benchmarks with or
without learning targets.
Issue
326 - Add server environment check to admin area. This uses the same page from
the installation. This is useful when the server is upgraded or a TODCM site is
moved to a new server.
Issue
328 - Add more environment checks in the installation.
Issue
329 - Certify TODCM to run on PHP 5.4.
Issue
332 - Add htaccess override check to installation.
Issue
334 - Add code to the template engine to get the list of uploads available in a
unit.
Issue
335 (Pro only) - Make all unit stages collapsible.
Issue
340 (Pro only) - Add custom time period support to unit page, course page, unit
calendar, and mapping searches.
Issue
344 - Add titles to sort buttons for learning targets page.
Issue
346 - Optimize template engine token security layer.
Issue
348 - Add application clean up routines to various sub-systems.
Issue
349 - Add application specific PHP exception class.
Issue
357 (Pro only) - Add new security layer to fully secure all site URLs. This
makes TODCM impossible to hack without a password. It also protects the site
against unauthorized guest access.
Issue
358 - Add redirect button to session timeout message window.
Issue
363 - This issue contains multiple enhancements and/or fixes. Add cache
cleanup, enhance ajaxPostform function, enhance
installation, fix server check list alignment problem with IE, Change DB
upgrade to browser window from Iframe, add bustcache to all menu tree URLs to fix IE cache issue,
enhance osa_remove_directory function, tookout old menu tree refresh code, fix all jscript syntax issues.
Issue
376 - Add enable and disable buttons to admin category management page.
Issue
377 - Make PDF rendering code more secure.
Issue
379 - Change save button behavior for unit edit and course description edit
pages. They now refresh the head section and stay in editing mode.
Issue
381 - Upgrade Plupload to version 1.5.2.
Issue
383 - Clean up unused old menu tree JavaScript code.
Issue
384 - Text misalignment in admin strand and standard management pages, happens with Firefox only.
Issue
385 - Rewrite JavaScript code for session check and update.
Issue
386 - Completely take out CodeIgniter dynamic session id generation.
Issue
388 - Disable TinyMCE math formula images generation
if PHP GD library is missing.
Issue
397 - Rewrite
Issue
398 (Pro only) - Add persistent cache to mapping template.
Issue
399 - Optimize history comparison feature.
Issue
401 - Minify all JavaScripts and CSS files.
Issue
409 - Upgrade swfobject from 2.1 to 2.2.
Issue
410 - Add .pdf extension to all view PDF links.
Issue
413 - Put page in edit mode after creating a new unit.
Issue
417 - Add browser cache for all downloads.
Issue
422 (Pro only) - Add ability to show uploaded files directly on a unit page.
Issue
430 - Add unofficial CGI support to TODCM installation.
Issue
433 - Add dynamic config file generation library.
Issue
439 - Optimize flash chart generation.
Bug Fixes
Issue
312 - DB connection problem during installation. The MySQL
anonymous user caused the TODCM installation to fail when a user relies on
TODCM to create the DB schema and DB user by supplying the MySQL
root password. This was originally discovered in the Mac environment but it
applies to all operating systems.
Issue
314 - Chrome and Safari browsers don't clear menu tree cookies correctly.
Issue
317 - Init area of class variables can't use TODCM PHP constants. Have to load
TODCM constant files before CodeIgniter initiates a controller class.
Issue
327 - Check PHP memory limit when calculating maximum upload size.
Issue
343 - Fix course title alignment in admin course management.
Issue
345 - Error occurred in unit reflection with shared units.
Issue
356 - New exception class corrupts TODCM installation.
Issue
361 - Read-only teachers can't see and edit unit reflection in shared units.
Issue
362 - Download can run out of memory with big files.
Issue
365 - Guest users can not access second unit page for units such as MYP and PYP
that have multiple pages per single unit.
Issue
372 - Admin and course editors can not edit unit reflection for shared units.
Issue
374 - Copy unit page unit sorting issue.
Issue
389 - File unit_resread_view.php still using old
download links.
Issue
396 - Unit page popup gets hidden by mapping search window.
Issue
400 - Survey error due to new JavasScript session
code.
Issue
405 - Some pages showed warning message due to the new post controller class
that manages the template security tokens. Need to add output buffering.
Issue
406 - Chrome can not print or save generated PDF. Chrome always get a new copy of the PDF from the server which gets deleted
after the initial read.
Issue
415 - Search "Recently modified units" in mapping progress not using modified
dates properly.
Issue
431 - Some admin features did not work in the Mac server environment.
Issue
438 - View evaluation failed due to new PDF detection routine.