Enhancements and Defect Repairs - KnowledgeTree OSS 3.5.0

From KnowledgeTree Document Management Made Simple

Jump to: navigation, search

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.


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.


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.


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.


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.


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


Fixed.


  • KTS-2356: i8nJavascript.php runs very slowly

Fixed. Implemented 'caching' of the javascript in the session.


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.


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.


  • KTS-2372: Emails sent multiple times when emailing groups with sub-groups (SUP-197)

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.


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-2419: CLONE -Bug - Document Transaction History Not Tracking Emailing From KT (SUP-378)


  • 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


  • KTS-2446: CLONE -Skins don't disply properly on portlets in IE 6 (SUP-464)

Fixed. Updated css for skin


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


Fixed.


  • KTS-2470: Make triggers more failure proof so it can load it's own class file in case it has not been loaded


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.


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.


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.


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.

Personal tools