Enhancements and Defect Repairs - KnowledgeTree OSS 3.5.0
From KnowledgeTree Document Management Made Simple
Back to Release Notes
- KTC-230: ZendGuard 5.0.0 array_multisort bug is breaking encoding
Fixed. Used two sorts instead of multisort.
- KTC-239: CLONE -Performance has become tragically slow (SUP-443)
Added. Implemented a a command line script to do basic mysql optmisation on tables.
- KTC-245: Login Page text update
Fixed. Updated login.php, login.smarty
- KTC-246: Footer Text update
Fixed. Updated standard_page.smarty, kt3template.inc.php
- KTC-247: About Page text update
Fixed. Updated about.php, about.smarty, knowledgeTree.pot, templates.c
- KTC-248: Disable commercial plugins on license expiry and display dashlet
Changed delete user to de-allocate the license. Changed isBaobabUser to isValid user on creating a session, so as not to lock the user out.
- BBS-298: Mac OS X Webdav as 3rd Party Client
Root folder parent_id was changed to null. Changed the sql to use is_null instead of =0. Affects all webdav, not only Mac. Added functionality to prevent the .DS_Store files and ._filename files from being uploaded when adding a document or folder. Added Goliath as a client. Removed the forward slash from the end of file names.
- BBS-1009: Folder or files with the Test Character set as their names cannot be manipulated in WebDAV in any way
Added validation functions for special characters - /\?,.:"'*. Validation is on adding / renaming folders and documents.
- BBS-1011: Auto Workflow Assignment
When a document is move from within KTE to the assigned linked folder the correct worklfow is not initiated. Moved the triggers into the document util copy action, fixes both webdav and KT tools.
- WSA-6: Validate configuration of examples is correct so developers can easily evaluate webservices
Implemented. Checks if caching is disabled and that required folders are installed.
- WSA-25: get_document_detail_by_name fails with user that doesn't have permission to root folder
Implemented. add get_folder_by_name to ktapi. Fixed. removed requirement of getting the root folder first.
- WSA-30: The move_folder in the KTAPI does a copy and not a move()
Fixed.
- WSA-32: get_document_version_history has a type conversion problem
Fixed. Changed type to be string and also checked that user exists.
- WSA-33: get_document_links has a type check problem
Updated. Added return SOAP_Value().
- WSA-34: Create unit tests for webservices
Initial implementation. Updated. Added a basic call to query.cs
- WSA-35: KTUploadManager.inc.php - Tempfile not correct
Updated.
- WSA-38: Improved debug logging in webservice layer
Implemented. Added debug() method.
- WSA-39: Implement search via webservice
Done
- WSA-42: SQL update statement on active_sessions table has typo
Fixed. Typo on lastused field in active_sessions.
- WSA-40: Typo in the structures for workflow transition
Fixed. Structures were named incorrectly.
- WSA-44: Web service unit tests in php need to be incorporated for search
Added. A little proxy to help with debugging.
- WSA-45: Migration to PHP 5.2 seemed to have a problem with HTTP_RAW_POST_DATA variable not being set in some environments for some reason
Fixed. Removed reference to global HTTP_RAW_POST_DATA .
- WSA-47: Add Web Service Delphi Contribution
Added. Contributed By: Bjarte Kalstveit Vebj?\195?\184rnsen
- KTC-238: Spelling and grammar errors on 'Manage Lookup Tree' page in the DEV 3.5.0 build
Corrected.
- KTS-581: Deleting of document types with no associated documents should be possible
Added an icon for deleting document types if there are no associated documents. Fixed the isUsed function that checks, it was pointing to the wrong table.
- KTS-673: The Search Algorithm Needs Some Work
Implemented as follows:
*Removed old criteria dependant on mysql fulltext tables. Added checkedout field and removed mysql fulltext clearout code. Index is cleared out when document is expunged. *Associate mime types with extractors. *Added lucene server and migration defaults. *Added lucene server URL and migration config *Added lucene server and migration defaults *Using externalBinary. *Typo with internationalization. *Added authentication between lucene server and KnowledgeTree *dmsDefaults needs to move for internationalization. *Proxies are required to unserialize() correctly *webservice search structures *Updated Lucene Server *Added authentication. *Completed basics of script. *Added Exif extractor *pstotext only available in windows *Parameters to command not passed correctly *Made reference to DocumentIndexer *Capitalise D *Status dashlet must only show when there are no issues *Changed reference from lucene to Document Indexer *Removed internal metadata references *Removed experimental indexer *Integrated with DocumentConverter.py *MailMime is not tested... will implement again when have more time. *Sometimes the extractor may change the target filename. *Search requires php, python and java. *Remove the mime type registration. this happens automatically when the indexer is run. *Fixed references to lucene *Updated reference from Lucene to Document Indexer *Strings were not being converted to date correctly for comparison. *Negative results not displayed correctly. *Like was missing. *Use path of document as it includes the full path *Refactor boolean *Reworking strToBool *Prevent multiple instances of indexer running which may lock the server under load *Scheduler initialised when indexer is first run. *DiskUsage only working on Linux for now. *Added licensing *Updated some error messages *Undo lockfile on main indexing. *Added zseq_mime_extractors id
- KTS-751: Bulk Export/Upload doesn't catch empty directories
Fixed.
- KTS-1345: Following a hyperlink from an MS Office doc works the first time but subsequently goes to dashboard until user logs out
The login script was finding the current session and going straight to the dashboard, ignoring the redirect link.
- KTS-1554: Implement a Scheduler
The following work done:
*Added the script for running the scheduled tasks *Added the javascript for the administrative UI for the scheduler *Added the scheduler administration UI template *Added the scheduler plugin, with the admin UI, the class for adding a task to the scheduler and the class for running a background task. *Added the sql for creating the table containing the tasks. *Added the upgrade patch *Removed call to test class and fixed a small bug *Updated the runtime on changing frequency and setting task to run on next iteration *Added a check on the extension to ensure .sh scripts run on *nix and .bat on windows, etc. *Made script work cross platform *Add scheduled tasks to clean db *is_background was removed from dtabase
- KTS-1613: Possibility to delete a document version
Added a new transaction type for deleting a version of a document. The physical document is deleted but the DB record remains.
- KTS-1753: Implement Disk Usage Plugin
Implemented:
*short php tag *Added some comments and increased thresholds *Licensing *Not sccaning temp directory if windows *Added cross platform calling of df. *Removed term disk from Disk Mount *Removed empty line from DF
Fixed: Added functionality to soft delete a user.
- KTS-1804: Able to move workflow whilst a document is checked out
Hid the links to workflow when a document is checked out. Added an error message if the workflow template is displayed.
- KTS-1871: Add copy workflow trigger
Implemented. Made a base class which the copy and move is based on. Note the classes are named incorrectly to save the upgrade process.
- KTS-2093: When clicking on a large 'Tag Cloud', more than one page of document attached to it, you get an error
Fixed. Added a fixed line on line 108
- KTS-2215: When editing the dashboard welcome message the ktcore/en/welcome.html file is corrupted
Fixed. Removed \r and \n from HTML output.
- KTS-2251: Characters in the names of Folders and files appear as question marks and squares in the crumbtrail
Fixed. Question marks are no longer displayed on truncated bread crumb details.
- KTS-2255: When viewing document details, must show workflow name
Added the workflow name.
- KTS-2270: In the actions restrictions for a workflow, generate PDF is not included in the list as an action restriction
Fixed. Changed getDisplayName to return the name when the mime types does not exist.
- KTS-2330: Change array_merge to kt_array_merge for PHP5
Updated.
- KTS-2335: Minor GUI glitch in IE7
Checked whether the name in the list of actions is empty. If there is no name IE adds the action as an empty item in the list.
- KTS-2328: When adding an Authentication source the 'Required' fields are marked as a 'Required' but the requirement is not enforced
Fixed. Added a check for each of the required fields.
- KTS-2336: Remove
from error and info boxes
In Progress. Removed from PDF Generator.
- KTS-2348: upgrade.php is totally broken
Fixed. This was a short tags issue.
- KTS-2351: Add CheckedOut date so can track when documents were checked out
Implemented.
- KTS-2353: mime.inc.php - magicDatabase option
Updated. Contribution added to mime.inc.php with updates to config.ini and dmsDefaults.php
- KTS-2354: ktentity.inc - cache removal
Fixed.
- KTS-2356: i8nJavascript.php runs very slowly
Fixed. Implemented 'caching' of the javascript in the session.
- KTS-2358: php5 migration
Updated. Removed & from &new. Added statics.
- KTS-2359: Automatically fill document title from filename
Added an onchange option to the file input. Added more logic to removing the extension from the title.
- KTS-2360: Remove cache logging
Added KTLOG_CACHE
- KTS-2362: Improve mime type resolution based on file extension
Done.
- KTS-2365: Add new bulk actions - copy, archive, extract
Implemented. Added in the folder component of the actions.
- KTS-2366: Reason field while copying a document can not be viewed through the UI
The reason wasn't being fetched from the form info before being inserted into the DB for both the copy and move actions.
- KTS-2368: Deactivated users still show up in list of Available Users when allocating users to a role
Added filter to check the disabled flag.
If a user is in more than one of the groups selected then he/she will get the email more than once. The email is now sent once to multiple users and ignores duplicate email addresses. Removed call by reference.
- KTS-2373: Update structure.sql and data.sql
Updated. Upgrades added and now using mysqldump to produce dumps.
- KTS-2380: Fatal error: Cannot redeclare class adminversionplugin when upgrading from 3.4.3 to 3.5
Fixed. Added upgrade function to remove old file.
- KTS-2384: Add KTScheduler to the enabled plugins list
Added.
- KTS-2386: Add some basic plugin caching to improve performance
Added. Updated. KTS-2358 impacted on the caching array that is required to cache. Thus the singleton() methods are restored to what they were before. Updated. The original caching was causing problems. Had to revert caching to only around the database call.
- KTS-2388: Issue with detection of kt root in Suse Linux
Contribution.
- KTS-2390: Need a way to download or checkout multiple files at the same time
Refactored the code to zip files into a class. Updated the Bulk Export with the new class. Added the bulk check out action.
- KTS-2395: Create index migration script
Register script with scheduler. Internationalization - missing closing i18n tag Fixed paths to wrapper functions Missing scheduler header. Updated. Set run times.
- KTS-2396: Re-enable browse by script
Updated. Enabled the original browse by. We are going to re-imagine this at a later stage.
- KTS-2398: Java Lucene Server needs to send the highlighted results back more optimally
Had to modify the way results are returned from the php lucene indexer as well. Updated. Also fixed optimise typo.
- KTS-2404: NOT doesn't always work in search expressions
Fixed.
- KTS-2413: Links on toolbar became inactive - preferences , about, etc.
Fixed.
- KTS-2414: Implement a dashlet for the scheduler
Added a dashlet to inform the admin user when scheduler hasn't been running. Changed the background on the bullets to transparent. Updated some text. When no jobs have been run, it says they were last run 1974 weeks ago... Changed this! Updated paths of scheduled tasks.
- KTS-2415: Scheduler - Change DB date format
Changed the DB to use datetime instead of a unix timestamp.
- KTS-2417: The 'does contain' or 'does not contain' expression syntax does not work
Fixed. There was a typo regarding the constant from phplemon.
- KTS-2425: CLONE -When editing permissions of folder, displayed cookie trail using invalid html entity »(SUP-451)
Fixed. Sanitization issue.
- KTS-2427: Indexes directory not found on stack install
Fixed. Corrected path for stack install.
- KTS-2428: Set the JavaXMLRPCLuceneIndexer as the default indexer
Done. See [indexer] section on config.ini.
- KTS-2429: config.ini must be updated during upgrade for new search to work
Added class to help with ini editing. Added upgrade function. Added new entries. Added OS_WINDOWS entries.
- KTS-2430: Create proper init script for stack install
Done. Added to examples directory too. Corrected port number.
- KTS-2439: Use of wrong field in update of workflow state replacement during workflow state deletion
Fixed. replaced workflow_state_id with target_state_id in sql update.
- KTS-2440: Adding a folder descendant lookup table for search
Added.
- KTS-2441: plugin_rss is not an innodb table
Fixed.
- KTS-2442: Some database tables use unsigned int, but relations are mostly to signed int fields
This means foreign key constraints cannot be added easily. Updated. Mime type defaults to 9 (binary file) until it is set officially. Fixed. Meant to update folders table, not documents.
- KTS-2445: KTDMS install does not install correctly: 'Fatal error: Call to undefined method....'
Fixed. Put the database password back into config.ini
Fixed. Updated css for skin
- KTS-2447: Remove search dashets
Removed search dashlet. Removed general metadata dashlet.
- KTS-2450: Add 'Candy Stripe' to indicate activity to all pages that keep the user waiting
Fixed.
- KTS-2454: Search portlet must be expanded
Fixed
- KTS-2455: Capitalise the U in 'Bulk upload'
- KTS-2457: On search results page - move save search out of the collapsable area
Fixed.
- KTS-2460: Allow reindexing of knowledgetree tables
Added. mime_type_document_mapping has complex primary key. Scheduler has a unique field. Some fields should not be null
- KTS-2468: Add foreign key constraints to the database
- KTS-2469: Deleted user can login
Fixed.
- KTS-2470: Make triggers more failure proof so it can load it's own class file in case it has not been loaded
- KTS-2471: Create search2 dashets
Added function to KTUtil to deal with period calculations Refactored period calculations Changed reference to lucene and added checking for 'df'
- KTS-2481: Scheduler's first run time not set correctly when registering task according to spec
Changed the setFirstRunTime()to accept a date input instead of a unix timestamp.
- KTS-2482: Scheduler assumes script being run is a php script
This may not necessarily be the case. Removed the include, now uses system to run the tasks.
- KTS-2484: Create shell script wrappers for search scripts so they may be invoked by scheduler
Implemented. Created unix wrappers. Created Windows wrappers - requires Bitrock installer substitution. Added setlocal to preserve current environmental settings.
- KTS-2485: Internationalise scheduler - daily/weekly/5mins, etc.
Changed the dropdown to use the internationalised wording for the label.
- KTS-2496: Remove unused fields from scheduler table
Removed the unused DB fields.
- KTS-2497: Creation of a new thread fails with: 'DB error: unknown error'
Fixed. Set defaults to null and not -1. Change nullable fields on discussion_threads
- KTS-2498: javaLuceneURL is set incorrectly in config.ini
Corrected. Set to "default".
- KTS-2499: Incorrect SVN tags in several files under scheduler folder
Updated. Changed $Id: to $Id:$
- KTS-2503: Ports in openoffice python files are incorrect
Changed port to 8100. Also added LGPL DocumentConvertor.py which seems good.
- KTS-2505: Database configuration issues cause horrible knowledgetree failure
Fixed. Preventing early calls to the db.
- KTS-2507: Workflow Transitions reset after adding new transition to existing workflow
Fixed. When adding a new transition the old data should remain intact.
- KTS-2509: OpenOffice service is not starting under Suse and RHEL
Updated example dmsctl.sh file.
- KTS-2511: Short tag present on phpluceneindexer
Fixed.
- KTS-2512: Search result object must return more fields to be used in templating and web services
Added more fields to the result object. Added a status to string. Added adminIsInAdminMode function
- KTS-2513: Add params for host and port to OOo doc converter
Done.
- KTS-2514: Indexing requirements harsh - requires all indexing issues to be resolved
Fixed. Added extractor table.
- KTS-2515: New index recreate script needs to add indexes on fields used in advanced search
Done.
- KTS-2519: Move periodic scripts out of web tree to install root
Done.
- KTS-2520: Fatal Error when deleting a state in a workflow and selecting a replacement state
Fixed typo. KTWorkflowTransitions should have been KTWorkflowTransition.
- KTS-2521: No notifications when you are subscribed to a folder
Fixed. Added notifications to the functions in document util. Refactored archive into documentutil. Added notifications to export.
- KTS-2522: Fatal Error when you perform a move and checkout
Fixed. Refactored the prune users function into the getsubscribers function, where it is passed an array of id's instead of an array of objects.
- KTS-2524: Create document indexer shutdown script
Implemented, plus other smaller fixes.
- KTS-2525: Create windows service to wrap around scheduler
Implemented. Modified service scripts. Added taskrunner.bat. Updated. Changed bat file to dos filetype. Updated. Fixed issues executing cross platform. Updated. issues on windows. Updated. added realpath. Updated. scheduler service must be run from correct relative location.
- KTS-2527: Change the usage of 'search expression' and 'expression' to 'search criteria' and 'criteria' respectively when working with search
Fixed.
- KTS-2529: Test open office document extractor
Updated. Extended KTUtil::findCommand to resolve python, php, and java in the stack. Fixed. Extractor script was not taking host and port correctly
- KTS-2541: Indexes must be applied to searchable fields when recreating indexes
Updated.
- KTS-2547: Test RTF Indexer
Implemented.
- KTS-2549: Document Indexer statistics is not returning 'documents in index'
Updated. There was an issue with the lucene server. the json structure was corrupted - a missing comma.
- KTS-2552: When searching using the quick search widget, the previous criteria gets corrupted intermittently
Fixed.
- KTS-2558: Update OSS to GPLv3
Updated. More header updates. Updated COPYING file and inline headers.
- KTS-2560: Move the scheduler plugin and dashlet into core
Fixed. Moved the scheduler plugin and dashlet into the core.
- KTS-2561: Add df to config.ini
Added.
- KTS-2566: HTTPS performance tuning added to .htaccess
Added configuration for caching.
- KTS-2568: Add scheduler service to Linux
Done. Added php loop file. Updated. Fixed script error. Added sh file. Updated sh file.
- KTS-2571: Upgrade wizard is not calling ini upgrade function
Fixed. Added backup before writing config.ini
- KTS-2573: Error handler should log to our log main file
Updated.
del.icio.us
reddit

