Allow user to change own password (M) - 2-3 days depending on solution selected
Need a screen where this can be done. Suggest either a User Console style console screen (like Admin console for administrator), or a Preferences/Options style screen (like Profile in PHP-BB) or a User Details screen (like Space Details in Alfresco). Action would be available off main menu.
User Console screen imilar to the Administration admin console. Provides direct links to pages such as Edit User Details, Change Password, Screen Preferences etc. Has the advantage of being very easy to develop and simple to add new actions to. Disadvantage of looking simple and not very friendly, also does not give a summary of any information - it's just a list of actions.
Preferences/Options screen imilar to Profile page in PHP-BB. Displays current user/screen settings as value/list fields which can be edited immediately and the entire form submitted to change the values. Advantage of being easy to add new values to by just appending to the list, also it's a combined summary and input on the same screen so less code/JSPs to write and maintain. Disadvantage of not working like other Alfresco screens, very basic 'web 1.0' style design.
User Details screen imilar to Space Details screen. Display read-only user details in a panel, with various other expandable panels containing preferences/settings which either be edited directly or an Edit action for each panel area. Advantage of looking like other Alfresco screens and being familar to the users, summary information immediately available and could be enhanced to use AJAX style editing in the future. Disadvantage of need to write edit screens for each preference panel and probably more code to maintain.
Paths in DownloadContentServlet and other Servlets
Allow the use of name based (e.g. webdav style) path references as the location of content to download - in addition to usual NodeRef based references (M) - 1 day
Suggested URL formats include the following. Let's assume a document in the location /Company Home/Users/My Space/myfile.doc:
Assuming the 3rd URL element currently represents a protocol e.g. this is the existing pattern for a NodeRef reference download URL:
Advantages are that it looks similar in form to the current URLs, the forward slash character '/' does not need to be encoded as it's used as the URL element separator and the path element separator, also it suggests that the protocol could be other values in the future - e.g. workspace/path are not the only choices and could be expanded or configured as required. Disadvantages are that it may not be compatible with other servlet URLs that potentially have more than a single NodeRef specified as elements i.e. parsing will be hard for multiple paths, it does not support POST style arguments.
Specify the path directly after the download mode element in the URL:
Advantages are that the URL is kept shorter than the protocol style as above. Disadvantages are that it is not very extendable or future proof - also what happens if the root folder happens to be called 'workspace'? So would be hard to parse and maybe require an addition URL argument to force the fact that it's a path not a NodeRef e.g.
Advantages are that a long Path could be specified using POST (once support is added to the servlet), also the Path can be specified in conjunction with the NodeRef as usual - which means that if the Path cannot be found then the NodeRef can be used instead if an item has moved, also it is a pattern that does not disrupt the other servlet URLs such as the TemplateContentServlet which requires more than one path argument on the URL. Disadvantages are that the URL looks different to the current pattern and encoding is needed.
Dashboard screen containing configurable 'dashlet' components with configurable layout (M) - 8-10 days
See WCM designs and BPM design for early examples.
Dashboards need to be able to contain multiple reusable configurable 'dashlets'. Each dashlet is a collection of JSF components probably specified in a JSF sub-view. This is similar to Gav's work on dialog/wizard framework. Allow user to pick from set of predefined layouts (e.g. single column, 2 column narrow leftside, 2 column narrow rightside) and configure dashlets within the columns.
Design dashboard to contain reusable configurable 'dashlet' components - (M) 2 days
Can each dashboard+page be URL addressable? E.g. an ID of page. Design the model for config of this.
Top level JSP layouts (left, centre and right column approach) (M) 2 days
See AnyShare site design page
Dashboard configuration (M) 1 day
Must support multiple 'pages' per user. E.g. they can configure multiple pages 'in theory' - but only show one for 1.4 release of My Alfresco.
Dashboard framework impl (M) 2 days
See 'dashboard config.xml' - see various PPTs. Allow each dashboard to be collapsed
Layout manager UI (M) 2 days
See 'My Alfresco.ppt'. Do dashlets have 'modes'? E.g. Narrow or Wide rendering modes - could provide more than one JSP.
Initial JSF sub-view based dashlets (S) 2 days
Getting Started dashlet - see 'My Alfresco.ppt'
Email Space Users
Action to send an email to the users (i.e. invities) of a space (M) - 3 days
Simple action that appears on a space details screen (by default - of course can be placed anywhere using configurable actions framework). Displays an email screen similar to Invite Users that has subject+message field. Message field can be populated using email templates. Email template model built using current space as context.
Need to decide how subsets of users are emailed, e.g. contributors; checkbox against user; group.
Also include an IM status indicator for standard IM clients (MS, Yahoo, ...)
Add permissions to model and allow get/set (M) - 1 day
Support other Alfresco content actions, such as: transform, check-out/in (M) - 3 days
Add the ability to execute a script as a event handler for an externally configured action (S) - 1 day
Include other JS scripts e.g. to create script libraries (S) - unknown
Support http post in command script servlet (including create doc from included mimetype segment) (S) - 1-2 days
Apply and get categories for a node (S) - 0.5 days JN requested this
Execute template from a script and get result (C) - 1 day
Allow 'members' of a category node to be dealt with like 'children' of a content node (S) - 0.5 days
Add searchByNodeRef call to TemplateNode API (S) - 0.25 days
Allow Webdav & network paths to be accessed via model (S) - 0.25 days
Allow template servlet urls with no context (e.g. just execute this template - default context of 'Company Home'?) (S) - 0.25 days
Support http post in template servlet (S) - 0.5 day
Change Password (See elaborated task above) (M) - 2-3 days
User home space improvements in the create/edit user wizards
Either full UI redesign of Create/Edit User (See Linton wireframes) or minor enhancements depending on time (S) - 1-3 days
Refactor create user to allow just person to be created (when using ntlm) (S) - 0.5 days
Disable User (and Enable User to complement) (S) - 1 day
Manage External Users
Show the source of the user in the list - e.g. Alfresco native, LDAP, ActiveDirectory (M) - 2 days
Action available depending on source of the user (M) - 1 day
Group support and Alfresco domain concept (M) - 3 days
Manipulation of external auth users (C) - 2 days
Manipulation of external auth groups (C) - 2 days
The walking of the category hierarchy in a similar way to the usual parent-child folder structure, with the documents assigned to each category shown as the 'children' of the category folder. (C) - 3-5 days
Similar to browse view screen, but walking categories hiearchy instead of parent-child folder relationships.
Could show deep all children of a category.
Allow category manipulation within the view?
Creating folders creates a new category (C) - 0.5 days
Creating documents puts the item where? - does not make sense?
Pasting a document links it into that category - makes more sense than creating documents. (C) - 0.5 days
Simple Wiki/Blog space
Blog datatype e.g. space with a template based rendering view (C) - 4-6 days
Create a very simple Wiki space impl of our own. Using Radeox engine (C) - 5 days
Wiki servlet URL support, Wiki JSF URL support (C) - 2 days
Provide RSS feed for a space (S+) - 2 days
Much easier once path support added to servlets!
Basic personalization framework (add to the User Preferences task as above) (S+) - 1 day
Delete All action for a space - just removes contents, but not rules etc. (S) - 0.5 day
Upgrade TinyMCE editor to 2.0 (S) - 1 day
Advanced meta-data search does not allow for search on boolean is false (C) - 2 days
Raised as a bug, but needs some framework so is really a task/improvement.
Handle when Paste action is not appropriate for the current view. (C) - 1 day
Raised as a bug, but needs some framework so is really a task/improvement.
Relative date searching (by default) and move existing date/time to new inner panel in Advanced Search (C) - 2 days
External content reference object (C) - 2 days
Attachments: attach any object to any other object (child assoc) (C) - 1 day
Make UI more skinnable (C)
Fancy AJAX minimizable shelf with fancy JS effects (C) - 2 days