Skip to main content Help Control Panel

YACS CMS : Open source !

YACS «   Releases «  

yacs 8.4: user profiles, group messages, tabs, overlays

This month the user interface of YACS has been extensively reviewed, for end surfers, for power members, and for site associates. Review your own record, it's probably good time to expose more of yourself to other community members. Tabbed panels have been introduced almost everywhere, since we believe they help to locate things and to make the software more user-friendly. And the ability to send messages to editors of a section, or to category members, is our answer to the strong requirements you had on group messaging. Many changes have been made to the code, yet most of them are small-size improvements, corrections or optimizations. We are continuing efforts started last month to stabilize the full software, and minor changes are expected in May before release of a major version in June. We believe YACS version 8.4 is rather strong, and your kind feed-back is very welcome.
616 files have been modified or added since the previous release. YACS has now 577 reference PHP scripts for a total of 170,872 documented lines of code.

Here is a list of new or updated features coming with this release:

-  Full names are used more often than before, as a nice complement to nick names. This will be specially useful in corporate environments.

-  User profiles have been largely extended, and tabbed panels have been used to ease navigation among all provided pieces of information. See users/view.php and users/element.php

-  A full business card can now be entered into your user profile, including a birth date, and this may be downloaded as a vCard afterwards. See users/edit.php and users/fetch_vcard.php

-  The user profiles displayed as an extra box has been fully re-engineered (in skins/skin_skeleton.php) to get nicer rendering on screen.

-  This is used on successful login, at users/login.php, and in the page of any user, at users/view.php.

-  In case of three successive failed authentications Yacs now locks the target account for one hour. This is smarter than a permanent lock-out, and it makes a better usage of server resource in case of massive hacking attacks. See users/users.php

-  The user menu now displays a login box to anonymous surfers. See shared/surfer.php. By the way, the function Surfer::build_user_menu() now returns a string instead of an array.

-  The built-in login box can now be hidden in the configuration panel for users. See users/configure.php

-  A new preference has been added to every user profile for screen sharing, either with VNC or with Netmeeting. When a user activates this features, he has an additional link in chat pages to share his network address with other chat participants. Microsoft-based shops will probably enjoy this nice way to arrange Netmeeting rendez-vous, and others will benefit from the flexibility of the VNC technology. See articles/view_as_thread.php

-  A new script users/share.php has been added to create dynamic files used in Windows environment to launch NetMeeting and to lead it to a given network address. This is how Yacs helps to setup some rendez-vous.

-  Users can now select to benefit from the 'Improved interface' (which is the default) or from the 'Complex interface'. This can be changed a any time from the Preferences tab in user profiles. The idea is that most users will prefer interface efficiency over interface richness. Therefore, some commands are visible only when 'Complex interface' is selected. For example, for associates, the configuration panel for system parameters is visible only for those who have selected the 'Complex interface'. All configuration panels related to user management and to content management are still visible when preference is set to 'Improved interface'. See users/edit.php and control/index.php.

-  A new function has_all() has been introduced in shared/surfer.php and is available to check interface preference.

-  A new layout links/layout_links_as_simple.php has been added to improve most recent contributions in user profiles.

-  The layout used to list users e-mail addresses has been enhanced to remove malformed records. See users/layout_users_as_mail.php

-  The search form for users now takes into account the MySQL settings related to minimum token size. See users/search.php

-  A new script sections/mail.php has been added, that allows to send one mail message to all editors of a section at once. Of course, you have to be an editor yourself, or a site associate, to benefit from this function. This new feature brings workgroup e-mail communications to sections.

-  Categorized people can now be reached by e-mail on one click. Associates, and only associates at the moment, can visit categories and fire a message to all related users, if any. See categories/mail.php

-  Thanks to contributions from Tof, many SQL statements related to categories have been enhanced in categories/categories.php. Also, new fields have been added to categories to allow for trailers and extra content, similar to what is provided for articles and sections.

-  Categories are now natively displayed as tabbed panels when applicable. Users related to a category are now listed with their thumbnail image and links to most recent contributions, which is a comprehensive approach to staff categorization. See categories/view.php

-  Page content can now be structured in tabs, jointly in articles and in sections. Use the option 'view_as_tabs' to activate this feature, and this will trigger articles/view_as_tabs.php or sections/view_as_tabs.php respectively.

-  The overlay interface (overlays/overlay.php) has been extended to let it insert additional tabs in articles. Developers will use this nice feature to create rich and sophisticated web pages when required to do so.

-  Most important editor scripts now feature a tabbed interface: articles/edit.php, categories/edit.php, sections/edit.php and users/edit.php. This is bringing more than cosmetic changes, and field positions have ben optimized to streamline the job.

-  The capability to import an external web page by giving its address has been removed from the page editor, at articles/edit.php.

-  The section editor now features a more natural way to enter compact titles (used in side contextual menu) different from index page title. See sections/edit.php

-  The capabilty to move a comment to another page has been removed from the comment editor, at comments/edit.php.

-  Most configuration panels now feature a tabbed interface to streamline the job. See the main configuration panel at control/configure.php for an example of this. The configuration panel for collections, at collections/configure.php now displays one tab per collections, instead of folded boxes previously.

-  Many input scripts have been re-structured to group basic commands at page bottom (e.g., addition of a 'Cancel' link nearby the 'Submit' button.)

-  Also, several menus have been reviewed to ensure that the most used command is coming first.

-  Moreover, many of these bottom menus feature a leading button, followed by regular links. See comments/edit.php or comments/view.php as practical examples.

-  The behavior move_on_article_access now features a nice button instead of a regular link to enhance the implementation of simple workflows.

-  The vocabulary used in the interface is more straighforward to regular computer users: 'page' instead of 'article', 'person' instead of 'user', 'see also' instead of 'related links', 'information channel' instead of 'feed', 'page factory' instead of 'rendering engine', 'background processing' instead of 'agents', etc.

-  Many titles and labels have been simplified. For example, 'All actions' and 'Recent actions' have been turned to 'Actions', etc. This makes the interface more straightforward to surfers, and it also reduces the total number of strings loaded in memory by YACS.

-  The panel that reports on background processing now displays the total time spent in script execution, and it also features a tabbed interface, which make it more straightforward than the previous horizontal menu. See agents/index.php

-  The setting of parameter 'with_referral' has been moved to the configuration panel for the page factory (skins/configure.php). Previously it was set in the configuration panel for agents, don't ask why...

-  Links to public news aggregators are not displayed if the new parameter 'without_internet_visibility' is set to 'Y' in the main configuration panel. This is necessary for corporate users using an intranet server, that Google and other crawlers cannot reach.

-  Experimental configuration parameter on COMET-like access has been removed from the main configuration panel, it could have terrible impact on response times.

-  Parameter 'cron_host' has been renamed to 'main_host', since it may be used in several scripts, and not only for background processing.

-  Several interface elements have been moved to help boxes aside, such as the editor selector (TinyMCE vs. FCKEditor vs. textarea) or the reference to mandatory fields.

-  TinyMCE is now the default text editor for new sites. Of course, this can be changed at any time.

-  Several pages ('coffee_machine', 'support_chat') and sections ('channels') which were created by default require now to trigger the Content Assistant. See articles/populate.php and sections/populate.php

-  A nice background image has been added to make tags look like printed baggage tags. This applies to all links in a p.tags container.

-  Several improvements have been added to skins/_reference/yacs.css, including: z-index for autocompletion, to make it compatible with TinyMCE, size reduction for tabs generated by Yacs, visibility adjustements to make tabbed panels compatible with Google Maps, vertical space added to folded boxes.

-  List of comments now distinguishes contributions from page original author through the CSS class .follow_up. This allows bloggers to better answer questions asked in comments.

-  The script used when the site is closed, control/closed.php, has been enhanced as per suggestion of ThierryP to support skins as much as possible.

-  Skin templates have changed a little bit to better take care of closed servers. See skins/joi/template.php for an example.

-  Data captured in forms are now stored in a dedicated overlay (overlays/form.php), to allow for separate restitution in Excel or equivalent, thanks to overlays/forms/fetch_as_csv.php.

-  Also, form data is integrated in the XML stream generated during page export, in articles/export.php.

-  The Overlay::get_text() function has been extended to the introduction field (page top), to the trailer (page bottom) and to the extra panel (aside). Look in articles/view.php how this is used to further delegate page content to the overlay instance.

-  AIl overlays provided in the reference archive have been updated to support the new overlay interface. If you are in trouble with an overlay of your own, a good start is to rename the function get_text() to get_view_text(), and to suppress the variant parameter. Then look carefully at overlays/overlay.php to better understand what has changed.

-  To further help you a test overlay overlays/overlay_test.php has been added to the reference archive. You can assign it to some pages to see how it impacts Yacs page factory.

-  A p.columns_prefix and a p.columns_suffix have been added to dynamic tags for columns layout in skins/skin_skeleton.php

-  When streaming a Flash file, YACS is now loading Javascript files from the skin directory, if any. The aim is to complement running context of those specific Flash files that interact directly with Javascript run-time. See files/stream.php.

-  Racing conditions are now better prevented in cron.php, to avoid several executions of the script in parallel.

-  The main help page, at help.php, does not offer self-registration anymore when this function has been disabled in the configuration panel.

-  Yacs is able to manage several cover pages again. It looks for the most recent page in section named 'covers' and, if none exists, it looks for the article named 'cover'. This combination allows for simple and complex setup, which should satisfy most demanding webmasters. See index.php and sections/populate.php

-  Files compressed by control/jsmin.php have now an extension .js.jsmin, to differentiate them from regular scripts. Also, YACS now looks for these compressed files before using regular versions, in included/browser/minify.php.

-  Of course, the reference archive only features compressed versions of Javascript libraries. To give an idea, the total size of loaded Javascript libraries has decreased from 233 kbytes in version 8.3 to only 173 kbytes in version 8.4, which is a 25% improvement. Look in directory included/browser.

-  Links to the yetanothercommunitysystem web site have been fixed in the readme.txt file.

-  Translated strings are now cached with session data on first access, and this saves a lot of CPU cycles and file access afterwards. This optimization of server resources is one of the great performance enhancement of this new version. The only drawback is that enough space has to be available to store extended session data. See i18n/i18n.php.

-  Cached versions of translated strings (with extension .mo.php) are now provided with the reference archive instead of original translated strings (with extension .mo). On new servers this will save the time to create cached versions, and save on total disk space used by Yacs as well. See i18n/i18n.php

-  The loading of translated strings has been linked to data management. For example, strings for articles are loaded at the end of articles/articles.php, etc. As a consequence, many i18n::bind() have been deleted in other scripts.

-  Yacs sends specific statements to the database to check for UTF-8 support. The result of this request is now cached in session data to save a lot of SQL queries submitted to the database back-end. See shared/sql.php

-  The outcome of SHOW STATUS has been added to the one of SHOW VARIABLES in the information script control/info.php, to enhance visibility on SQL on-going operation.

-  The amount of unused space in the database is now displayed at the Control Panel, at control/index.php. Unused space is created when many records are created and then deleted.

-  Additional background processing has been added to recover unused space from the database. Unused space is taken into account into space quotas given by Internet service providers, and that has been an issue at some very active web sites. Now YACS is recovering unused space in the background to smooth database operation. See shared/sql_hook.php and function purge() in shared/sql.php

-  An additional command has been added to the purge script, at control/purge.php to recover unused space in the database manually. Provided just in case, yet you should not have to use it at all under normal operation.

-  Default values for numeric fields are not quoted anymore in SQL statements used to update the database.

-  Unused database index have been removed (e.g., on 'edit_name', 'publish_name', etc.)

-  The constant YACS is now defined in shared/global.php, to ease verifications in scripts that have to be included. See agents/browsers_hook.php as an example.

-  The sample tools/yacs_crontab has been enhanced to further describe alternate ways to trigger background processing.

-  Run-once scripts that are more than one year old have been removed from reference scripts.

Comments

Simplify3 on June 29 2008
I've upgraded to the 8.5beta10. Whew - I was going from an old YACS 7.6.3!!!

IT WORKS! It took a lot of investigations to some things working right.

One thing I can tell you that will help: Derive a new skin from one of the updated skins and transfer all of your various settings over, bit by bit, piece by piece.

I couldn't get the tabs working for the life of me, but I did that and I was on my way.

The biggest problem I had was something I had added to my CSS -- a custom "Please Wait" style. I thinkI have instructions here on http://yetnothercommunityserver.com on adding a few lines to the head of your CSS. Take that out and you'll have a better shot at getting the new tabs working.

Oh! Also, make sure you "Add basic items -- in case you would need to replay some steps of the setup process" from the Content Assistant. That is probably what was causing me the most grief as there were sections that I needed that I didn't have after the upgrade. This put them in for me.

Apparently, I had never fully upgraded to yacs 7.6.3 because a lot of the functionality should have been in there already by that version.

But it CAN be done. Go to http://free.naplesplus.us and see! I've been changing all of the sections over to have a view_as_thread as the comments functionality is greatly improved by giving it a chat interface. It will be something new for the people on my site to get used to, but they'll get used to it.

Some things are still weird, but it's getting better all of the time. Kenneth udut

 
Share
Information channels
Recent files