YACS 7.1: full internationalization, and many goodies
Internationalization bulk effort has been completed in a few amount of weeks, and the team has to be congratulated for this huge achievement. GnapZ, Agnès, you are the best!
On top of that, a full set of new features have been introduced in this release, and web designers will appreciate the introduction of customized layout, the capability to rotate images in page headers, etc.
Keep posted ! The new 7.2 is on its way, the www.yetanothercommunitysystem.com web site has a new skin, its content is reshuffled, and we have tons of idea for 2007...
On top of that, a full set of new features have been introduced in this release, and web designers will appreciate the introduction of customized layout, the capability to rotate images in page headers, etc.
Keep posted ! The new 7.2 is on its way, the www.yetanothercommunitysystem.com web site has a new skin, its content is reshuffled, and we have tons of idea for 2007...
549 files have been modified or introduced to the previous version (6.12).
The new release is available for immediate download. If you are already running a YACS server we highly recommend you to smoothly upgrade your server.
Here is a list of new or updated features coming with this release:
The internationalization of YACS has started in December, and has been completed by late January, meaning about 8 weeks of very hard word. More than 150,000 lines of code have been carefully reviewed during that amount of time, and special thanks go to GnapZ and to Agnès for their continuous involvement in this huge effort. The raw outcome is a set of 31 template files that, together, contains all strings that can be localized. Now YACS can conquer the world...
YACS avoids to mention the number of items related to a page, except when this number requires a follow-up navigation page. This applies to almost all containers, including sections, articles and categories.
Watch lists have been extended to sections. Previously you could ask YACS to watch an article, and receive e-mail notifications on page addition (new comment, file, etc.). Now you can also watch sections, and receive notifications on any new article posted in these.
Unfortunately this change in watch lists may also impact editor assignments, because of the updated conceptual data model implemented in categories/members.php. A run-once script is provided to update the database where applicable, however this one requires MySQl version 5 to work properly. In worst cases, you would have to re-assign editors...
Page nick names are used instead of numeric ids where applicable. This applies to the page selector as well. See go.php
The front page can be configured to display the content of only one section (sub-sections and articles), instead of starting at the root of the content tree. See index.php.
A custom layout can be selected for articles at the front page. This will be loaded as an external script added to the reference set of YACS files. See index.php.
A custom layout can be used for articles attached to any section. The new file articles/layout_articles_as_hardboiled.php has been provided for example purpose. To activate it, type 'hardboiled' in the field for custom layout of the target section. See sections/edit.php and sections/view.php.
The same principle applies for articles displayed at the front page, and a reference skins/layout_home_articles_as_harboiled.php has been provided as well. The setting is made in the configuration panel for the rendering engine, and all you have to type is the custom 'hardboiled' layout.
A meta field has been added to articles, to let webmasters fully control information provided in page headers. For example, this can be used to convey styling information with a page. See articles/articles.php, articles/view.php and articles/edit.php.
A trailer field has been added to articles and to sections, to allow webmasters to append some text at the very bottom of these pages. For example, you can use this to have text coming after the list of files attached to a page. See articles/articles.php.
An extra field has been added to articles and to sections, for text to be inserted in the extra panel, aside the page. This powerful feature will allow for sophisticated page layouts. See articles/articles.php.
The three new fields have been integrated into web forms used to edit articles (articles/edit.php) and sections (sections/edit.php).
When search is restricted to one section, sub-sections are searched as well. See articles/articles.php.
TEXT DEFAULT '' has been removed from statements used to create tables, to reinforce compatibility with MySQL version 5.
Most recent versions of MySQL 5 returns a null value on UPDATE if no field changes, and this was interpreted as an error by YACS, until version 7.1...
More
A number of '=&' statements have been turned to simple '=', to better adapt to some versions of PHP 4.
The function that checks that comments are allowed at some page has been enhanced, to achieve a better control of comands related to comments. See comments/comments.php.
The function
Hit counters that are attached to pages are not incremented when visited by page creator or by associate. Previously section editors where not counted as well. Now they are. See articles/view.php.
Page details have been moved to a separate variable, to allow for additional flexibility in web design. For example, some designers would like to include the page main image just after these details, which was not possible previously.
A small bug that prevented navigation within images with attributes has been fixed. See articles/article.php.
Some discussion boards were featuring side legends to icons two times. This repetition has been fixed in articles/layout_articles_as_yabb.php.
Before saving of changes, YACS now checks permissions for categorization. See categories/select.php
A tricky bug has been solved in the rendering engine on complex data featuring XHTML tags beginning with the letter 'a'. The processing order of patterns has been modified as well, to better process wiki-like syntax in pages. See codes/codes.php.
A new constant
Similarly, the constant
The script that processes restore MySQL statements has been enhanced to support UPDATE queries including some WHERE clause. See control/backup.php
The control panel now also features content of the table for page versions. See control/index.php
The control panel does not display some information when it is visited by a crawler, such as Google engine. This is to prevent hackers from locating weak servers in case of a published security hole. See control/index.php
The script used to test basic YACS features also returns no information to web crawlers, to avoid the indexation of sensitive information. See control/test.php.
By the way, the list of crawlers detected by YACS has been enhanced in shared/surfer.php.
Hooks are now checked for existence before their inclusion, to avoid fatal error on file suppression. See control/scan.php.
The overlay interface now supports the transmission of parameters to the loaded script. See overlays/overlay.php.
The overlay for dates now displays past and future events evenly, except on parameter
Links built out of dates can now feature some HTML tags, such as an included image. Most tags are filtered for streamlined rendering. See dates/layout_dates_as_links.php
Still some tests of unset variables have been fixed, including in RSS feeds. This will prove useful to those that have not configured the configuration panel for feeds...
The index of dates now correctly renders events on year boundary. See dates/index.php
The i18n library now also supports localization in a provided array, that is used to process manifest files for example. See i18n/i18n.php
During the build of a software release YACS now compresses new textual files introduced with the internationalization. We have saved several mega-bytes... See scripts/build.php
The library that fetches remote web objects now supports chunks, as specified by technical HTTP standard. Actually this has been proven quite useful to read some RSS feeds. See links/link.php.
A sample web form is provided in tools/form.php for those that are looking for a simple yet efficient startpoint.
YACS can be invoked from external programs through two new functions. An example is provided in tools/embed.php. See shared/global.php.
The troubleshooting option for outgoing mail now does feed the debugging log. See shard/mailer.php
The new release is available for immediate download. If you are already running a YACS server we highly recommend you to smoothly upgrade your server.
Here is a list of new or updated features coming with this release:
strip_tags() have been added to avoid cross-scripting code injections.Page::header_panel() has been made available to web designers who have to rotate background images of their template. The function Page::tabs() supports new parameter to add tabs before or after the dynamic ones. In skins/page.php.FORBIDDEN_STRINGS_IN_PATHS has been introduced to prevent tricky attacks to the file system, and used where applicable. See collections/collections.php for example. Other secured areas include overlays and the browsing of reference scripts.FORBIDDEN_CHARS_IN_URLS has been generalized to better control web input featuring URLs. See control/configure.php for example.without_past_dates. So, if you type day in the overlay field, you will get everything. But if you type day without_past_dates, you will have future dates only, and past events will be listed afterwards to associates. See overlays/day.php.Rate this page
Posted by Bernard on Feb. 21 2007, (popular)