Title: TeamPage 5.2.51
Published 8 October 2012 This article describes what's new in Traction® TeamPage version 5.2.51. Highlights include: New Invitation feature makes it simple to invite people to join a TeamPage Space by sending them an email message - whether or not they already have a TeamPage login account; flexible configuration options tailor invitations to match your organization's rules. New Section Table widget shows entry properties (including custom form properties) and additional metadata. Updated WordML export compatible with Word 2007, Word 2010 and newer. Rich text support for Safari 6. Project Management and other performance improvements. Better user message shown for URL reference to an inaccessible Space. Rewritten and improved SDL documentation. Many other improvements and bug fixes.
Invite People to TeamPage
This new feature allows ordinary users to invite people to become members of the TeamPage spaces they're using. By default, the Invite action appears on every page. The invitation form is short and simple. Users can invite people by their email addresses, and don't even need to know whether the invitees already have accounts.
New invited users receive an email that allows them to claim their new account and start using TeamPage. Existing invited users still receive an invitation, and continue using their account normally, but with the benefit of any additional permissions they have acquired as a result being invited another space.
Most of this, including creating any new accounts, works without any effort on the part of administrators. But administrators can manage what users are allowed to invite people, and what spaces support invitations at all.
See here for details on this new feature for inviters, invitees, and administrators.
New Section Table Widget
• Introduced the Section Table Widget 2.0. More powerful than the previous version, it is capable of displaying additional article metadata, like start date, due date, and duration, as well as other entry properties from custom forms. The types of columns supported by the new section table widget can be extended via additional plug-ins.
• Changed the WordprocessingML output for TeamPage's export feature to be compatible with the most recent versions of Word. Previously, users who tried to open the Word XML documents TeamPage generated in Word 2007 or later (more often Word 2010) reported that Word was unable to open the document and that there was an error message related to the DTD declaration not being allowed. (e5d7b402baf3)
• Added support for Safari 6. (Server62047)
• For tasks in the "Completed" state, added the completion date to the Status display in the task details table. This will make it much easier to see when a task was marked "done". (Proteus6416)
• Type-ahead completion results for milestones and projects have a new secondary sort order that puts results from the requesting user's favorite spaces above other results. We hope this minor improvement will be helpful. (Whether the result appears in the "current" set of spaces is still the primary sort order for milestones and projects, when applicable.) (Server61691)
• With the addition of the invitation feature, the "New Account" option has been removed from the Admin menu in the Proteus skin. Naturally, administrators can still manually add an account with all the same options from the Server Setup | People page, but we hope they will find it more convenient to use the invitation feature. (Please see the updated documentation on Creating New Users for more details on the different ways new user accounts can be created in TeamPage.)
• Changed the indexing procedure used for project management data to prevent these indices from having to be rebuilt on every server restart, cache clear, or entry erasure. This will be significant for many TeamPage servers, especially those that make heavy use of the erasure feature. Note that one additional complete rebuild of the project management indices will be required the first time TeamPage starts up after the upgrade from an earlier version of TeamPage, but that the server can still serve requests during that time. Note also that the indices referred to here are managed separately from the core journal metadata indices mentioned on the Server Setup | General page. (Proteus9237)
• The following pages and email templates have been given a much needed style and/or layout make-overs: Journal Setup; Sign In / Sign Out; Self-Registration Page; Self-Registration Confirmation Email Message; Password Reset Request Confirmation Email. We hope you find them all more visually attractive, usable, and -- in the case of the email templates -- more functional and uniform across a variety of email software, including free web-based email services.
• Added a button in the Proteus skin's Favorite Spaces editor to make it easier to add the current space to your favorites, or to remove it if it's already a favorite. (FDA2822)
• Modified the memory cache settings so that core user data never expires. This is a speculative change at this time, but we believe medium or large deployments (i.e., hundreds of user accounts or more) could experience significant performance improvements in certain contexts. (acd726d7df4a)
• Added a few new settings to the advanced New Space Creator and Space Template Editor views, and reorganized some of the existing settings. The new settings include: Space Members Group; Initial Article Type (e.g., project or milestone); and an Advanced Overrides that allows custom settings to be specified, including entry properties for the initial entry (please use caution in specifying custom settings). Also, when copying settings from an existing space into a new space or template, if the Space Members Group setting refers to a space local group, its value will be correctly "generified" so that it refers to the copy of the space local group in the new space or template, rather than to the original group in the source space. See also Creating New Spaces for the latest documentation. (Server61937)
• Changed the Groups editor and ACLs editor controls to allow space-level groups to be added to any spaces' groups, server groups, space ACL entries or server ACL entries.
• Changed the "discussions" tab to show all articles ordered by latest activity, instead of just those that already have comments. This makes it easier to understand what people are talking about using the discussions tab.
• Fixed a Firefox-only issue that caused the rich text editor, and sometimes an entire form, to fail in certain contexts. The most common manifestation was for the task form to fail to load more than once until the user requested a complete refresh of the page (via the browser, rather than TeamPage's in-page Refresh button). The task form would then work one more time before again becoming unusable, requiring another page refresh. This fix supersedes the hotfix from Customer4038; that plug-in expires with this release, and will no longer be necessary. (FDA4980)
• Restored the "Favorites" tab on the Personal Setup | Preferences page. The loss of this tab may have caused the value of some users' favorite spaces setting to be lost if the settings on the Personal Setup | Preferences page changed; we apologize for any inconvenience. (FDA5001)
• Made the links for "View Thread" or "top of thread" for milestone and project entries point to the Milestone > Comments or Project > Comments tabs, respectively. Those links previously pointed to the Milestone > Dashboard or Project > Dashboard tabs, respectively, where the comment thread does not even appear. When clicking these links from one of those Dashboard tabs, the link would even appear not to work at all since it did not result in any navigation. (Server61933)
• Fixed an IE8-specific bug that prevented contextual metrics and work in progress information from being visible in the side column of the Proteus skin. (FDA5052)
• Made any references to security principal groups defined within TeamPage called "Members" use an appropriately localized name (for the current user's locale). (b9d9ca889c04 / 388d2eb52a86 / 1bccef4187a5)
• Fixed a few possible but unlikely issues (i.e., never seen in the wild) involving attempting to bind a user account to an invalid security principal. (28329a520060 / f7fb4847f2cb)
• Fixed the user_setup unified search source so that users who are using the administrative search control from their Personal Setup pages do not see type-ahead completion results linking to the Personal Setup pages for other users' accounts unless they have Server Setup permission. (Such results that were improperly displayed did not actually allow users without Server Setup permission to administer other user accounts; rather, they just cluttered the admin search results, and clicking on one would lead the user to a blank page.)
• Fixed handling of attachment file names that contain less than or greater than (< or >) characters. Previously, although files whose names contained one or both of these characters would be successfully stored in the correct folder in the attachment repository, their relationship to the entry was broken. When the entry was displayed, it might appear that the file had not been attached at all; and users editing the entry might see strange encoded text in the editor at the bottom of the entry's body. (Server51067)
• Fixed some minor layout problems in the Tags | Index and Spaces | Index pages. (Proteus9336)
• Fixed an iPad-only style issue that caused certain links in the header of the Proteus skin (e.g., home or the name of the current space) to remain highlighted indefinitely after being "clicked" (Proteus9325)
• Modified the Proteus skin not to offer checkboxes to replace the "to do" tag with "done", or vice versa, unless the current user has permission to perform the corresponding tag change. Previously, check boxes might appear even to users who were not allowed to perform the tag change, although if they clicked to try to check or uncheck the box, they would just see an error message an no tag changes would be performed. (Proteus4104)
• Fixed generated URLs appearing in freshly posted inline comments to use the correct URL format. In particular, for the Proteus skin, links must be generated in GWT-RPC format with the specification for the target view appearing in the anchor portion of the URL, rather than the classic format, in which the URL query parameters contain the view specification parameters. One symptom of this issue was that links in freshly posted comments referring to individual items in other entries, while they navigated to the correct containing entry, did not focus the page on the target item. (Proteus9351)
• Fixed an issue with rich text editing that affected the Task, Project, Milestone and other GWT forms only, that caused any nested bulleted or numbered lists to be flattened when the entry was submitted. (Server62120 / Server61921)
• Fixed a display issue with the Proteus skin's Add Menu control. Usually this menu offers the "New Article," "New Task," and other options for creating a new entry. But users who do not have Author permission in any space, who should not have seen this menu at all, would see an unnecessary and distracting sliver where the Add Menu would have been. Now the Add Menu is completely hidden if the user isn't allowed to create any entries. (Proteus9341)
• Fixed some issues relating to the collection and display of metrics data in Proteus. The most significant changes were retrieving metrics data for all pages in a separate deferred request (ensuring that slow metrics data lookup won't unduly slow down the loading of the main page content); fixing the display of metrics data in history views; and adding metrics data to various views for project and milestone entries. (Proteus9443 / Server62254)
• Fixed a bug that caused the entry section editor dialog to fail to update the entry's sections. Clicking "Add sections" or "Edit sections" opened the dialog and it functioned properly but clicking OK appeared to do nothing. (Server62224)
• Fixed support for NTLM authentication from Safari 6. Changes to the Safari browser concurrent with the release of Safari 6 and Mac OS Mountain Lion (10.8) apparently caused this feature to stop working in Safari 6, including on iOS devices such as the iPhone. (225fadf1e1c8)
• Fixed a regression in 5.2.47 related to mapping user agent strings to user agent configurations. This issue could cause some requests that come from special user agents to fail if the request did not include a header indicating a user agent string. This change ensures that graceful handling of requests that do not include user agent strings is restored. (1696fbf2d62a)
• Fixed a bug that prevented all entries in the page from being added to a new collection when using the page-level "Collect" action's "New Collection" option on the context menu. (Server60550)
• Restored an accidentally removed l10n resource that caused an error message to be displayed instead of the "New password fields do not match." (or equivalent translation) message on the first account setup page during new journal setup. (Server62894)
• Fixed a minor issue that caused an "Export Journal" button to be displayed on the Server Setup | General page even though this feature is not currently applicable to the latest generation of Traction TeamPage. (3707e10fcd82)
Modified the handling for inaccessible, invalid or non-existent spaces referenced using TeamPage URL
This seems like a relatively minor change, but the existing behaviors have caused confusion.
Previously, if a URL referred to an inaccessible space (for historical reasons, this is usually the proj= URL parameter), and the space turned out to be invalid or just an inaccessible to the currently authenticated user, the user would see an error message. This message was usually a popup window in front of an otherwise blank gray page, with no option to navigate anywhere else or any indication of what account they were using.
This was confusing for users who hadn't yet signed in, but who did have legitimate credentials that would have allowed them to view the page in question if they had been properly authenticated.
Now, although users will still see an error message in such cases, instead of a blank and useless page, users will see at least the normal navigation elements, including a link to the Sign In page. For example:
We hope that this will avoid the confusion many users have previously experienced in this situation. (Server61936)
• Added the sdl.import tag. This tag allows SDL authors to indicate an alias for an SDL root template that applies globally to the template in which the tag appears, allowing more compact references to functions in that template, relative to the alias, e.g.:
<!--- using this -->
<sdl.import name="shared" template="com.traction.sdl.gwtrpc.shared" />
<!--- now this -->
<!--- is equivalent to this -->
This may be useful when there are many references to functions within the same template. (Server62193)
• Added the SDL tag item.url. This tag is roughly parallel to the entry.url tag, but generates a URL that will cause the browser to scroll a particular item into view after the containing page loads. The type= attribute on this tag supports "comments", "original" and "simple" which have the same effect on the generated URL as those same values have for the type= attribute on the entry.url tag.
• The destination view type to use for the TractionUrlGenerator.comment method, or the internally generated URL for displaying the entry share folder for a particular entry, is now customizable. The getCommentThreadViewType and getEntryShareDocumentsViewType methods on the EntryClass corresponding to that of the target entry may be overridden, or the "comment_thread_view_type" and "entry_share_documents_view_type" may be used, respectively to set the view type to use for those URLs.
• Added the com.traction.sdk.admin.UserDirectory.findPrincipalByEmailAddress and com.traction.sdk.admin.PrincipalType.findByEmailAddress methods. These are used for the invitation feature, but could be used in any Java code based upon the Traction SDK.
• Added ProjectsVariableTag and UsersVariableTag. These subclasses of ProjectsTag and UsersTag, respectively, retrieve a Collection or ProjectIterator/UserIterator variable from the current Scope to use for their iterations. Like VariableTag and BooleanVariableTag classes, the default variable name is the value of the variable= in the tag configuration file, defaulting to the name of the tag. For the generic projects and users tags that use these tag implementation classes, SDL programmers can specify a variable= attribute to indicate the name of the variable that contains the Collection or Iterator. This is useful if you are writing some custom Java and SDL code using Traction's SDK and need a way to iterate over a collection of Project or User objects that you already have access to.
• Modified the com.traction.sdk.admin.FollowListChanges.setFollowing method to throw a FollowListChangesException if the User object specified representing the user account to follow or unfollow was null or was invalid, or represented the Visitor account (i.e., if its isValid method returns false or the isVisitor method returns true). This is a minor change, but may require modification of any customizations written in Java that make use of the FollowListChanges interface.
• Cleaned up various issues with the Outlook Social Connector feature. There were no reproducible bugs that were specifically addressed, but it is hoped that these changes will help with the problems that some users have had as they tested this feature. (The Outlook Social Connector feature is still considered a beta feature, and is not recommended for production use. Note that some features may still be incomplete or not working in certain environments.) Anyone who is testing this feature should upgrade to TeamPage 5.2.51 in order to test with these latest changes. We appreciate any issue, bug or other feedback reports you can provide; please use the New Support Request form on our support server here at teampage.traction…
• Added the scope.hasentry, scope.hasfile, scope.hasproject and scope.hasuser tags. These are BooleanTags which evaluate their true children if the current Scope for SDL evaluation has a current entry, file, project (space) or user, respectively. These are useful if you are writing SDL to conditionally use the "current" instance of one of these objects, but you don't know if one is already in scope.
• The SDK/SDL documentation has been updated. The SDL documentation has been completely re-written. It is now focused on the SDL tags and their attributes rather than simply being completely or partially mixed into the SDK documentation that focuses on the Java classes. And the SDL documentation now includes a guide with FAQs and an index that uses a tree structure so that it will be obvious which tags operate nested within a "parent" tag. You can view the SDK / SDL documentation here.
Article: Customer4107 (permalink
Categories: :Doc:R52, :Doc:changelog
Date: September 19, 2012; 4:00:01 PM Eastern Daylight Time
Author Name: Dave Shepperton
Author ID: shep