From: Maria K. <mkr...@ne...> - 2004-04-29 11:04:45
|
Hi folks, Our company has added a number of new features to TikiWiki 1.7.4, some of which were announced on this list. We felt it was time to collect and document all the changes we have made. We hope to make a contribution to the future development of TikiWiki. Feedback is welcome. This message contains a description of the changes as well as a URL where you may download a TGZ archive that contains a set of patches that correspond to the changes we have made. The URL is: http://neuearbeit-stuttgart.de/tikichanges/TikiWiki-1.7.4-changes.tgz We hope these changes make a useful contribution. Best regards Ernst Sexauer Marko Riedel Maria Kretchetova The changes are described below: Changes to TikiWiki We are using TikiWiki as a data and knowledgebase for our company. From among all wikis that we know, TikiWiki is best suited for this purpose. We understand that this is not the classical wiki application, but we see a bright future for TikiWiki there. For this purpose we had to add some features such as namespaces and access rights. A wiki that does not have structured access rights and namespaces ist not suitable for a company setting. This kind of setting requires a less open structure than was originally envisaged when the wiki concept was invented. We are willing to contribute to future developments. Our changes refer to version 1.7.4. 1. Namespaces Namespace conflicts occur when different users choose the same name for different pages. We introduce suffixes in order to get around this problem. A suffix consists of an underscore followed by word characters at the end of a page name. The key idea is that new pages inherit the suffix of the page where they were first referenced. This is implemented with an edit handler. See diff-file ''handlers.txt'' 2. Permissions It is very cumbersome manually to set permissions for new pages. For this reason as soon as a new page is referenced, we create the page and assigne it the permissions of the page where it was referenced. This is different from the usual mode of operation in that new pages are created immediately rather than by the user. This is done with get_object_permissions and set_object_permissions. This is also implemented with an edit handler. See diff-file ''handlers.txt'' 3.Alphabetical Search It can be useful to search for a page by the first letter or word of its name. We have modified the standard tikiwiki search function to include search by page title. The same functionality is also made available through a module that contains a matrix of buttons, each of which is labeled with a letter of the alphabet and seaches for tiki pages whose name begins with this letter. See diff-files ''mod_searchbox-09.02.txt'', ''searchlib-16.03.txt'', and also ''mod-search_alph.tpl'' 4.Color-coded permissions in search results The idea is to indicate with the color of a search result link whether the current user may view the result. Red indicates no permission and blue indicates that the user may view the object. There are three cases. The admin may view all objects. If an object has permissions, then the permission to view must be included among them. If an object has no permissions, then the user's permissions are consulted. This is done with object_has_one_permission, object_has_permission and user_has_permission.. See diff-files ''searchresults.php-17.03.txt'', ''searchresults.tpl-16.03.txt'' 5.Overwrite feature for file galleries The standard upload-to-gallery implementation generates an error message if the file is already in the database. We have added checkboxes to the upload form that let the user choose whether an existing file should be overwritten. There are three cases. The file is inserted if it is not already in the database. An error message is generated if the file is present and the user has not checked the overwrite box. The file is overwritten if it was present and the box was checked. See diff-files ''filegallib-23.03.txt'', ''upload.tpl-23.03.txt'', ''upload-24.03.txt'' 6. Attachments: permissions and overwrite feature 6.1 Permissions The default behavior for attachments is to display the attachment division regardless of whether the user has the permission to attach files. The attachment division consists of two parts. The upper part shows attachments if any. It should only be displayed if the user may view or administrate attachments. The lower part contains a form to upload attachments. It should be displayed if the user may attach files or administrate attachments. This is changed so that the three kinds of permissions are checked and divisions displayed only if the user has the appropriate permissions. The admin has permission to admin attachments; page permissions are consulted if any; otherwise user permissions are used. This is as in number 4. See diff-files ''index-24.03.txt'', ''attachments-24.03.txt'' 6.2 Overwrite feature The default behavior was to permit multiple attachments with the same name. This has been changed as in the overwrite feature for file galleries. New files are stored and existing ones overwritten if the box is checked and an error message is generated otherwise. See diff-files ''attachments-24.03.txt'', ''wikilib-24.03.txt'' 7.SQL correction Certain SELECT queries that end in a superfluous "LIMIT 0, -1" cause problems with newer versions of MySQL. The query function has been altered to remove these LIMIT clauses. See diff-files ''tikilib-09.03.txt''. |