Changelog
Das Changelog gibt Einblicke in die Änderungen, die zwischen zwei Versionen vollzogen wurden. Jedoch erhebt das Changelog keinen Anspruch auf Vollständigkeit, sondern zeigt nur Ausschnitte aus den gesamten Änderungen.
Kajona V 3.2.1 "canoe" FINAL
Languages
- new russian language files for module news and module pages (thanks to Ksenia and Michael!)
module_system
- NEW: untitled forms get an suffix containing a systemid instead if a timestamp
- NEW: getLinkPortalHref uses http://www.kajona.de or http://www.kajona.de/index.php as a string, not as a constant. this means the string get replaced by the index.php during processing.
This avoids problems with cached pages / navigations and different servernames for a single site. - BUG: when running a task, the form of another task gets hidden (#453)
- BUG: while updateing the user-table, old '' values caused the script to fail. '' values are now replaced by NULL before changing the schema.
- BUG: classic skin missed to include the id-attribute in the form-tag
- BUG: portalReload missed to fill the constant http://www.kajona.de
- BUG: adminReload missed to fill the constant http://www.kajona.de
- BUG: system-installer tried to update element-tables with old schema. updates of schema moved from pages-installer to system-installer
- BUG: flash uploader didn't work since YUI update. added workaround since YUILoader 2.7.0 tries to load uploader.js (which doesn't exists) instead of uploader-min.js (seems to be a bug in YUI) (#458)
module_user
- BUG: users' birthday can be left blank when saving a user, new users birthday is empty by default (was filled with current date) (# 450)
Kajona V 3.2.0.9 "canoe" (3.2.1 BETA)
Languages
- added bulgarian translation for all modules (thanks a lot to salti and friends!)
element_imagelightbox
- NEW: element_imagelightbox switched to YUI-based lightbox script called PhotoViewer (http://nicora.net/projects/photoViewer)
element_languageswitch
- BUG: languageswitch used wrong key for reading language name from text files (thanks to BlackAngel)
element_portalregistration
- NEW: portalregistration adds the user to the guests-group, too
element_portallogin
- NEW: portallogin-element supports a "password forgotten" function. An email containing a change-link is sent to the user. If the user loads the page identified by the link, a form in order to set a new password is generated. The link contains an authcode, so the link is not predictable. (#433)
element_rssfeed
- NEW: a message is shown in case of empty feeds
- BUG: empty rss/atom-feed (with no elements) generated a php-notice.
module_downloads
- NEW: downloads provide a details-view, too (like the gallery). The link to the details-view is disabled by default since all infos are available in the list, too.
module_filemanager
- BUG: uploaded file wasn't shown until reload (fallback only)
module_gallery
- NEW: gallery provides the placeholder folder_preview in the section "folderlist". Contains the URL of the first image contained by the current folder, preview dimensions
- NEW: gallery-template with lightbox integration (#412). template comes with element_imagelightbox which also contains all the js/css/image files
- NEW: PortalEditor is available for gallery-pictures in the details-view, too (#403)
- NEW / TEMPLATECHANGE: gallery details placeholder pic_url containes only the url, not the whole img-tag anymore. The wrapping img-tag is now placed within the template.
- NEW: gallery-list generated img-less placeholders, too. Therefore, the new placeholder pic_href was introduced. pic_href contains a link to the detailed-view
- NEW / TEMPLATECHANGE: gallery-template reworked: the piclist is created out of single images. Those are created by the section piclist_pic. The piclist_unlimited is removed. (#438)
module_languages
- NEW: when the loading of a page failes due to a missing template and the error page has an erroneous template, too, the system switches back to the default-language (loading the originally requested page, so not the error page). (#430)
- BUG: downloads-toplist generated erroneous link to download.php (thanks to ATLAS)
module_navigation
- NEW: navigations' sitemap-mode supports active/inactive schemas. Used to create special navigations based on the complete tree.
- NEW: navigations use an internal cache. This cache saves the generated navigations to db and loads them from db on the next request. This boosts generation of pages drastically. (#429)
- NEW: system-setting _navigation_use_cache_ to enable/disable the cache. (#442)
- BUG: setting a navigation inactive at root level had no effect when rendering it in the portal
module_news
- NEW: news-template "demo_bloglike". Since it requires the postacomment-ajax template to be available, it'll propably be shifted to the playground.
- BUG: news-element loaded wrong news when category-filter was set to "all categories" (#417)
- BUG: when using a news-feed name not existing, all news where included within the feed. Now an empty feed is created instead. (#447)
module_pages
- NEW: pagecache-checksum includes rating-cookies. This is a more cache-safe rating-version
- BUG: When deleting a page, the parent-folder is loaded afterwards instead of the root folder (#422) (thanks to Michael)
- BUG: When creating a page, the folderid was lost during input-validation. This caused the page to be placed at the root-level instead of the previous folder. (#432)
module_postacomment
- NEW: postacomment-ajax-template / pac-js-functions are able to handle multiple forms per page. Current pacs' systemid is read from this instead of the page-params.
module_rating
- BUG: when a rating is saved, the page-cache gets flushed
- BUG: rating handled the caching incorrect. Now ways better, but still not perfect.
module_samplecontent
- NEW: sc-installer sets default template for pages
module_stats
- NEW: stats-workers are moved to system-tasks. This results in a removal of the workers @ module stats.
- NEW / FEATURE CLEANUP: csv import and export of stats-data is removed
module_system
- NEW: updated YUI to 2.7.0
- NEW: uniStrtoupper() as wrapper for phps strtoupper()
- NEW: class_array_iterator::setIntElementsPerPage() uses values < 0 as "unlimited". Renamed class_array_iterator::setCursorPostion() to class_array_iterator::setCursorPosition()
- NEW: class_toolkit_admin::setBrowserFocus($strElementId) to set the browsers focus to e.g. an form element. (#320)
- NEW: Increased height of portaleditor-popup to 690 px (#444)
- NEW: the pe-new-button list contains buttons for elements already created, too. Before, the option to create a new element of an already existing type was available via the existing elements' action-bar only. (#443)
- NEW: elements have a version-number, too. In addition, elements can decide whether they provide an update or not. Implemented as an example at element_mediaplayer. (#437)
- NEW: lang-keys element_description, module_description from element-/module-lang file is rendered in a mouseover-info in the elements-/module-list. So, if you'd like to add a few infos about your element / module, use this lang-key (#439)
- NEW: image.php supports resizing and cropping images to a fixed size. Added params fixedWidth and fixedHeight (at the moment both params are needed). When using the "fixed"-params, the params maxWidth and maxHeight won't be used.
- NEW: class_image provides resizeAndCropImage, used by image.php in order to provide a wrapper to the class_images' methods cropImage and resizeImage. The wrapper ensures a properly working caching.
- NEW: class_toolkit_admin::formDateSimple marked as deprecated. Will be replaced by formDateSingle().
- NEW: class_toolkit_admin::formDateSingle(). Creates a single date-input field based on an instance of class_date
- NEW: class_date, a rudimentary date handler. Saves dates as long-values, so breaks with the time()s 32 bit problem. Use this class, if a 32 bit int value is not sufficient.
- NEW: db-layers support the datatype long. Needed for the upcoming date conversions
- NEW: added index.php to /installer in order to check for PHP version number. No PHP5 specific features like "class" used, so fully functional with PHP4. (thanks to mac4ever)
- NEW: class_filesystem::readLineFromFile() to read a trimmed line from a file opened by a pointer
- NEW: class_csv uses a sequence-based file-pointer to read from the source-file instead of using file_get_contents
- NEW: class_template::fillCurrentTemplate() removes placeholder by default, too
- NEW: elements can overwrite the handler public function doAfterSaveToDb(). This method is called right after saving/updateing the element to the database and can be used to execute user-defined actions afterwards (e.g. flushing the cache).
- NEW: chartType groupBarChart. Groups of bars can be grouped besides each other or can be stacked on top of each other
- NEW: colors of bar-charts (including gradients) can be set
- NEW: class_graph::setMarginColor(), used to set the background-color of a graph (all space unless the plot-area itself)
- NEW: column "system_owner" in system-db-table. Used to keep the user who created the record (#424)
- NEW / APICHANGE: systemtasks can be grouped, interface_admin_systemstask::getGroupIdentifier() (#405)
- NEW: systemtasks can use a page-reload in order to split up long running tasks. If executeTask() returns a number between 0 and 100, the system generates a percent beam to indicate the progress of the current running task.
- NEW: systemtask are run via AJAX. (#362)
- NEW: removeGroupFromRight() at class_rights
- NEW: flushRightsCache() at class_rights
- NEW: setPrevId() at class_system
- NEW: getRecordComment at class_system
- BUG: kajonaTooltips sometimes showed two tooltips at same time
- BUG: on some configurations (locales) phps strtolower()/strtoupper() crashes with UTF-8 strings (#445)
- BUG: when having the php-option session.use_only_cookies set to enabled / 1, the flash-upload crashes. As a workaround the fallback is being used instead. (#425)
- BUG: HTTP not-modified headers are sent to non-IE browsers only. utf-8 is send as encoding-header for http and xml requests by default. (#418)
- BUG: getModuleByName() checks the existance of tables before searching a module. This avoids errors during the installation appearing in the systemlog at the first login
- BUG: class_image renders PNGs with transparent background wrong (create a black bg). Now creates an image with a trans-bg again. (#436)
- BUG: RewriteRules crashed on some servers (thanks to BlackAngel: http://board.kajona.de/viewtopic.php?p=7459#p7459)
- BUG: checking rights with a passed userid (so not the userid of the user currently logged in) loads the users' group directly from the database instead of load them from session (what would result in the groups of the currently logged in user...)
- BUG: fck-editor no longer inserts a wrapping p-tag by default. Therefore the default behaviour of enter/shift-enter is flipped.
- BUG: wysiwyg-toolkit-element missed to encode htmlentities again before sending them to the fckedit. Should preserve errors like those reported by ATLAS (@see: http://board.kajona.de/viewtopic.php?f=40&t=957&p=8268#p8268)
- BUG: changed format of month from string to decimal representation due to locale-problems (#410)
- BUG: uniStripos checks existance of mb_stripos, since only exisiting in php >= 5.2.0
module_user
- NEW / SCHEMACHANGE: added column user_authcode to table user. Used to avoid spam-registrations & co. Especially to be used with the "password forgotten" function.
- NEW: class_user::$strDate moved to class_user::$longDate. The birthday is no longer a text field, replaced by a long-value using the new class_date in combination with formDateSingle() as proof of concept. Needs a schema change to change this column to a long-field.
- BUG: deleting a group/user missed to delete the memberships
Kajona V 3.2.0 "balsamico" (FINAL)
module_faqs
- BUG: Faqs were loaded using the wrong order (desc instead of asc) (#407)
module_filemanager
- NEW: File upload has confirm box if upload is still running when exiting the page
- NEW: Image cropper has confirm box if cropping is unsaved when exiting the page
- NEW: Exceptions while initializing KajonaUploader are now catched and fallback upload is shown if an exception occurs (better than a delayed check via timeout)
- BUG: Upload button is visible by default (prevents jumping page content) and a "Please wait" message is shown if uploader is not initialisized yet
module_gallery
- BUG: gallery portal missed to include pageview if value for "images per page" was set to 1
module_navigations
- NEW: class_modul_navigation_point::getStrTarget() returns "_self" if no target set
module_pages
- NEW: pages_content list shows a warning if template can't be loaded (and not only that there are no elements in template)
- NEW: preview of inactive pages requires the right to edit the page instead of only viewing the page
- BUG: on templates with no placeholders, ghostelements are shown, too
module_rating
- NEW: rating based on normal distribution by Gauss.
This rating depends on the maximum value of "stars" and changes with the number of users ratings for an object. It is set as default rating implementation in class_modul_rating_rate.php
module_samplecontent
- NEW: new layout
- NEW: new set of sample-pictures
module_system
- NEW: Reenabled "not modified" http header for page output (was disabled due to the strange IE errors above, which I think were causes by js and had nothing to do with the header)
- NEW/APICHANGE: javascript tooltips now have to be added like
to avoid interferences in portal/admin scripts the wrapper is called kajonaTooltip in portal
The last param can be used to disable the opacity of tooltip (e.g. for tooltips with images). The function enableTooltips() which was called on page load is not needed anymore. This should solve some very strange errors in IE6/7 - seems like IE doesn't like DOM modifications right after the onload event. - NEW: Portuguese portal translations (thanks to Nuno Cruz!)
- NEW: russian translation for module system (thanks to Ksenia and Michael!)
- NEW: Systemtask to resize and compress all uploaded pictures to save disk space
- NEW: Systemtask "navigationcheck" validates if internal pages really exist
- NEW: function removeDirectoryTraversals()
- NEW: Improvement to lang_ replacement: replace-method is triggered only, of array-keys exist (in some cases those have been triggered under strange circumstnances, too)
changed already adopted language-files to new / old schema - NEW: Less usages of new lang-filling in portal-classes (e.g. not used within loops). Should increase performance. (#397)
- NEW / APICHANGE: change to new %%lang_ schema / funtion. In text files, the prefix %%lang_ is no longer needed. This means: In a *.tpl file, inserting the placeholder will be mapped to the key of the language file.
- NEW / SKINCHANGE: admin-tookit includes getContentToolbar(). Used to provide a subset of actions belonging to a view. Requires the sections
, , to be available in the skins' elements.tpl - BUG / SECURITY: class_image validates passed params more strict. (#400)
- BUG: SQL error when entering strings, negative values or 0 for page view parameter (#398)
- BUG: AJAX system status didn't change icons after drag&drop (#357)
- BUG: rotating an image using one even numbers for the dimensions by 90 or 270 degree resulted in a black border at the right or left. (#401)
- BUG: Disabled FCKEditors anti-spam mail protection since it causes a blank screen in IE6/7/8 and Opera. See http://dev.fckeditor.net/changeset/2561
- BUG: in some constellations, the pageview could lead to errors on undefined objects.
module_users
- BUG: class_user_admin: renamed param "admin" to "adminlogin" in order to avoid conflicts with global "admin" param
- BUG: values are not lost anymore when editing a user & having validation errors (#402)
- BUG: usage of old constant _admin_gruppe_id_ instead of _admins_group_id_
Kajona V 3.1.95 "balsamico" (3.2.0 BETA)
element_portallogin
- NEW: portallogin-element provides a new field to define the page to edit the users' profile (#391)
module_dashboard
- BUG: delete-dialog of dashboard-widgets is no longer draggable
module_downloads
- NEW: download-archives can be synced via ajax (#350)
- NEW: new-folder-option also available in downloads & galleries
- NEW: every download-archive has its own filemanager repos. this allows the integration of the new flash-upload (#342)
- NEW: download-file can be deleted right in module-context, calls filemanager delete-method via ajax (#374)
- NEW: empty folder can be deleted out of galleries / downloads, too (ajax call to filemanager)
- NEW: downloads include a md5-checksum. this checksum is used to identify changes to the file during synchronization (#384)
- BUG: added additional check for a valid systemid when cross-checking the passed sysid to gallery / download portals. When passing invalid ids, the class was stucked within an endless loop kajona (#388)
module_filemanager
- NEW: filemananger-folders can be created via ajax
- NEW: folderview is popup-less (no additional popups for new folders & uploads)
- FEATURECLEANUP: remove possibillilty to add more than one upload-field in filemanager fallback-mode
- BUG: getLinkPortalHref included "http://www.kajona.de/index.php" instead of http://www.kajona.de/index.php
- BUG: Filemanager-cropping in preview mode rounds coordinates to next lower int. This should avoid black borders in new image happening in strange cases
module_gallery
- NEW: pics in galleries can be deleted without even leaving the module-context. call to filemanager via ajax (#375)
- NEW: new-folder-option also available in downloads & galleries
- NEW: empty folder can be deleted out of galleries / downloads, too (ajax call to filemanager)
- NEW: dedicated template for galler_random element
- BUG: added additional check for a valid systemid when cross-checking the passed sysid to gallery / download portals. When passing invalid ids, the class was stucked within an endless loop kajona (#388)
module_guestbook
- NEW: guestbook support pageing in admin, too (#372)
module_languages
- NEW: element languageswitch is capable of using templates (#377)
- NEW: Added more languages according to iso 639-1 to be used as portal-languages (#393)
module_postacomment
- NEW: added template section "postacomment_new_button" to show button only when user has the right to post a comment
- BUG: dirty hack: postacomment-form (classic templates) is set visible in case of validation errors (#380)
module_search
- BUG: permissions were not checked within every search-plugin (#389)
module_system
- NEW: Added info about Safe mode, Allow url fopen, Register globals to system infos
- NEW: Portal classes use class_portal::fillTemplate instead of accessing the the template-instance direclty. This provides %%lang_ support in nearly all portal-templates.
- NEW: class_image tries to set phps memory_limit to 64M instead of 30M to process large images
- NEW: YUI Uploader fallback can be activated/disabled
- NEW: If a placeholder (and only the placeholder, not the whole file) does not exist in the current language file, the placeholder is loaded from the fallback-file
- NEW: the fallback language in admin is now en
- NEW: exit-codes of dump/restore-binaries (db-drivers) are written to the logfile (#364)
- NEW: method class_portal::portalReload() to do a header-redirect (don't use header("Location... anymore)
- NEW: consistent use of getLinkPortalHref() when generating links/form actions/redirects in portal - no switching between rewrite and regular URLs anymore
- NEW: added php directives in .htaccess to disable error output in browser and log php errors into /system/debug/php.log. php.log is shown in systemlog-view & adminlog widget if available.
- NEW: Placeholders started by %%lang_ can be filled automatically with values from textfiles if class_template::fillTemplate() with an passed instace of class_lang_wrapper is used. To simplify usage, use $this->fillTemplate($arrContent, $strIdentifier) instead of $this->objTemplate->fillTemplate($arrContent, $strIdentifier) in portal classes to have placeholders filled automatically.
- NEW: class_exception doesn't tell user if a mail to admin was sent or not (security)
- NEW: toolkit-datatable element can process a null-header-array. if passed null instead of an array, the header-row is skipped.
- NEW / APICHANGE: IEOther is marked as deprecated. Will be removed in later releases
- APICHANGE: class_template::fillTemplate() removes placeholders by default. Please verifiy your usage!
- SECURITY: template-class removes .. to avoid directory traversals, reading limited to *.tpl files (#385)
- BUG: installer mixed up languages in samplecontent if current installer-language is not available in samplecontent (#371)
- BUG: conditionalGet is disabled for pages due to massive problems with ie 6 & 7
- BUG: moved in skin-templates before ajax-loaders. this guarantees to have KAJONA_WEBPATH declarated
- BUG: class_image doesn't run jpeg-compression twice if file is sent to browser directly
- BUG: bytesToString parses 0, too (before only values > 0 have been parsed)
module_user
- NEW: admin-user-list and admin-group-list support pageing (#373)
Kajona V 3.1.9 "balsamico" (3.2.0 ALPHA)
element_portalupload
- NEW: portalupload-element. Allows to upload a file into an existing downloads-archive. Therefore a filemanager repo mapping the same path is need. Permissions & filters are set via the filemanager-repo.
module_dashboard
- NEW: dashboard: edit / delete-buttons are not created if the user doesn't have enough permissions. (#329)
module_downloads
- NEW: download.php differs between files not found and insufficient permissions and sends the matchin 404 / 403 headers. redirects to the error-page instead of the index-page (#351)
- BUG: Disabled news could still be accessed when knowing system id via the portals' detailsview (#293)
- BUG: when syncing download-repos, the properties of a file are updated via updateObjectToDB() instead of a minimized update query. (#356)
module_faqs
- NEW: integration of ratings
module_filemanager
- NEW: File uploads via xml-interface. Can be used to upload files in the background via flash or js. (#284)
- NEW: First version of an image-editor. allows to crop an rotate an image.(#324)
- NEW: Filemanager-Repos can reference a foreign systemid. Repos referencing another id aren't shown in common lists. Can be set to visible using a system-setting-constant.
Gallery makes use of this new feature in order to provide a link to edit an image directly. - NEW: filemanager file list shows image-thumbnail-tooltip for image files (like module_gallery does)
- NEW: YUI-Upload to manage multiple uploads at once
modul_gallerys
- NEW: integration of ratings
- NEW: Galleries can be synced via ajax
- NEW: gallery cross-links to the filemanager. this allows the uploading of files using the new flashupload without even leaving the galleries. (#350, #342)
- NEW: mass-sync of galleries via ajax is possible, too
module_languages
- NEW: module languages is now part of the system-kernel
module_navigations
- NEW: behaviour of navigation-tree in portal changed: up till now, loading a page not being in a navigation tree forced the tree to load the last state as saved to session. this seemed strange to many users. up from now, the behavour changed: if a page x is not in tree 1 but in tree 2, tree 1 does NOT load it's state from session. Instead, tree 1 loads its' initial state. if page x is neither in tree 1 nor in tree 2, both trees load its state from the session as before. (#0000023)
- NEW: Systemtask to check validity of link-targets.
- NEW: Feature-Cleanup: the attribute "css-class" is removed from the page-element "navigation". Since all css-styles may be added via the template, this field is obsolete. This means the automatically added level-element (e.g. -1, -1-active) is no longer available. Please update your templates!!!
- NEW: select-queries in module navigation now include the module-nr as an and-restriction. having a large number of systemrecords, this may speed up the resultset generation
- NEW: navigations-levels can be wrapped by a new template-section called level_x_wrapper. This reduces the complexity of navigation-templates drastically and solves problems with some container-templates. (#349)
module_news
- NEW: News element of module_news has new parameter "news_order" to define whether the news list should be ordered ascending or descending.
- NEW: News element of module_news has the new possibility to display news from all categories
- NEW: Pager for portal news-lists (#336)
- TEMPLATECHANGE: news-lists are wrapped by a section news_list_wrapper due to the new pageing
- BUG: Disabled news could still be accessed when knowing system id via the portals' detailsview (#293)
- BUG: news encoded title again if the content was updated
module_pages
- NEW: quickhelp for page-elements. to have a help displayed, the text-file of the current element must provide an entry named "quickhelp_element_name" where "element_name" must be the same as $arrModule["name"] , defined in the header of the current element. Example: The paragraph defines in its header $arrModule["name"] = "element_absatz";. This would leed to an text-element like $text["quickhelp_element_absatz"]. (#266)
- NEW: form-data of page-elements can be validated, too. works the same way as validation of module-forms, so only implement getRequiredFields() : array ("fieldname", "datatype") to have your element-forms validated. (#243)
- NEW: the sql-query to fetch the elements on a site calculates the time-stamp of the current day, not the current second anymore. this reduces the number of different queries a page-generation fires. when using a query-cache (e.g. the mysql-query-cache) the cache can deliver more answers directly from the cached results.
- NEW: a new copyright header is added to the html generated by the portal. (#334)
- NEW: elements / module may add additional strings to the page-title via class_modul_pages_portal::registerAdditionalTitle().
If a text is set, the separator defined in global_includes.php, "$arrGlobal["kajonaTitleSeparator"]" is added before the additional text. - NEW: conditionalGet (HTTP 304/not modified) works for regular page, too. (#258)
- BUG: when copying a page, the system comment is updated, too (#326)
module_postacomment
- NEW: integration of ratings
- BUG: postacomment_post and rating_rate missed to check presence of array keys in doAdditionalCleanupsOnDeletion()
module_ratings
- New Module
- NEW: New rating value is now being shown on site without reload
- NEW: pure CSS-solution for rating bar (mouse over images...)
- rating icons have 3 states (empty, current, mouseover) and are now stored in one single image file (reduces http requests)
- float values are displayed in rating bar (not only "full" icons)
- rating icons are updated after successful vote and show the new value - BUG: Security: Only ratings in range are possible from now on. The max rating-value is saved in a static var @class_modul_rating_rate (#321)
module_samplecontent
- NEW: installer creates two sample pages (should be filled with some funny content)
- NEW: news-installer doesn't create navigation point for news-detail page anymore (was confusing)
- NEW: samplecontent layout has different styles for active and inactive navigation points and a few text changes in installer (removed hint for installing module languages...)
- BUG: Samplecontent portal CSS for tables in IE6 (font styles went wrong)
module_system
- NEW: Admin-Area supports URL-Rewriting (#282)
- NEW: image.php is limted to /portal/pics. (#276)
- NEW: when generating link, the language is included if there is more then one other active language, only. creates more friendly urls.
- NEW: little performance tweak for mod_rewrite:
skip all requests not ending with .html or .rss - they don't have any rewrite rules. Otherwise on ALL requests, including images, css files, js files, the regexp checks will be applied - NEW: when writing values to class session, you can choose between the session or request lifecycle to hold the values. can be usefull to share values between different classes per request instead of holding them over the whole session
- NEW: createFilename() also parses suffix of filename (#298)
- NEW: remoteloader support loading via fsockopen and curl (#0000302)
- NEW: consolidated text-files -> less file-requests -> better performance.
- NEW / APICHANGE / KERNELCHANGE: the sessions are now stored within the kernel, no longer in the php-session. the php-session is only used to map the internal session. Access to user-id no longer via getSession("userid"), now getUserID @class_session (#308)
- NEW: admin-action "systemSession" in module system. shows a table of session currently active. logged in users may be logged out via the backend.
- NEW: class_admin::setArrModuleEntry($strKey, $strValue) used to set values to arrModule after the constructor
- NEW: date/time format can be set via admin-text-files for each language (portal & admin read the same file here!). (#301)
- NEW: JS-tooltip function htmlTooltip() doesn't need an existing "title" attribute anymore
- NEW: Updated YUI to 2.6.0 in admin & portal
- NEW: Kajona-CSS styles for YUI calendar are now stored in admin skin css files and not in YUI's files
- NEW: Form Element Headline returns a headline in a form
- NEW: increased with of form fields in kajona_v3 skin (#323)
- NEW: config.php moved from /system to /system/config/ (#274)
Since this is a change the installer shouldn't make during an update, manual steps taken when updating a system to 3.2.0 are now collected at: http://www.kajona.de/index.php?page=update_311_to_320 - NEW: xml-support for changing the status
- NEW: system-status can be changed via ajax. (#254).
- NEW: xml-loader prints exceptions as xml, too ( #264)
- NEW: deny access to /portal/downloads in htaccess (#000327)
- NEW / SKINCHANGE: modalDialog, used to place html-content above the current screen, screen is locked. (#325).
- NEW: texts and templates cached internally are saved to the session. this speeds up further requests dramatically.
the db-class can act the same way, but this is diabled at the moment. since queries are time-dependant, the cache-size increases with every request what could lead to out-of-memory-errors. - NEW: FCKEditor Update to 2.6.3
- NEW: Installer allows to install more then one module / element per iteration (multi-installs)
- NEW: Installer systemlog is shown in a scrollable box
- NEW: Installer shows progess of installation
- NEW: Portaleditor is able to create new elements at placeholders not filled before. From now on you can manage the contents of page without using the backend completly. (#338)
- NEW: FCKeditor allows links to uploaded files using a second browse-button in the upload- and image-dialog (#333)
- NEW: when generating portal links, additional seo-strings can be added
- NEW: method urlSafeString() to convert a string into a nice-looking and url-safe string
- used for generating valid page names
- used for converting page $strSeostring before saving
- used in getLinkPortalRaw to convert $strSeoAddon
o saveUrlEncode() marked as deprecated - please check if needed - NEW/APICHANGE: implementation of YUILoader for dynamically loading additional js and css files with "loaded"-callback
- should prevent a lot of js loading issues in the future
- modified kajonaAjaxHelper methods
- added helper js-object: kajonaAjaxHelper.Loader - NEW: URL-Rewrite-Rules are forwarding query-strings
- Portaleditor doesn't switch back to non-rewrite URLs anymore
- Portaleditor enable/disable doesn't crash with anchor links (#) anymore
- Code cleanup: portal/scripts/kajona.js
removed method getIndexAsNonRewrite()
combined methods portalEditorDisable() and portalEditorEnable() to portalEditorStatus(status) - NEW: phpSizeToBytes() to convert php size strings in bytes
- NEW: class_config->getPhpMaxUploadSize() to get max upload size in bytes
- NEW: getLinkAdminHref() don't necessarily need param $strAction
- NEW: consistent use of getLinkAdminHref() to have more rewrite-urls and better code
- LOCATIONCHANGE: Moving /css/portal to /portal/css
- LOCATIONCHANGE: Moving /templates/portal to /templates
- LOCATIONCHANGE: Moving /texte -> /lang
- LOCATIONCHANGE: Moving /system/config.php -> /system/config/config.php
- CONFIGCHANGE: dirtexte is now called dirlang
- CONSTANTSCHANGE: _textpath_ is now _langpath_
- CONSTANTCHANGE: renamed a lot of german-constants to english ones
- SKINCHANGE: sections pe_actionNew, pe_actionNewWrapper added to support new elements in portaleditor
- APICHANGE: changes file- and classnames of a few classes/files for a better uniformity
- SCHEMACHANGE: column right_comment dropped, redundant to system_comment
- TEXTCHANGE: linebreaks in text-entries are no longer alloed. this reduces the complexity of the upcoming language-editor drastically
- TEXTCHANGE: array-name changed from $text to $lang
- BUG: image.php filter widened to include/accept /portal/downloads again
- BUG: admin kajona.js conflicts with portal scripts (#297)
- BUG: class_mail: changed end of line delimiter to \n seems to be better for Postfix and still works with sendMail
- BUG: class_mail: text-mails are sent with an explicit UTF-8 encoding, too
- BUG: Portaleditor missed to send current portallanguage to admin when opening the admin-popup
- BUG: PortalEditor Delete Link mixed up language-param
- BUG: existence of imagefttext is checkg before usage. can lead to errors on some strange php-configs (e.g. on 987mb.com)
- BUG: template-engines' fillCurrentTemplate() returned only the result of the last iteration
module_users
- NEW: Username is trimmed when set (#0000281)
- NEW: usernames & password are trimmed, too, when set (#281)
- NEW: when a user is deleted, the common doAdditionalCleanupsOnDeletion()-callback is invoked
- NEW: module user shows the number of logins and the last login of every user in the user-list
- NEW: Creating new users: System-setting "default admin skin" is used to preselect admin-skin dropdown (#0000348)
- APICHANGE: deleteUser() is no longer static



