UI Sprint tasks

by Alex Limi last modified Feb 17, 2007 02:55 PM
Tasks we're looking at. Grab your tasks and create Trac issues for them.

New task

Task progress

Generally

  • Lots of tasks
  • Help me populate the Trac milestone
  • We have suggestions for who does what
  • A lot of free-floating tasks
  • Summary at the end

Research tasks

  • Can we get rid of base yet? It screws with anchors etc. Kupu

    starts supporting anchors now

  • Possibly remove the border on initial creation forms (ie. keep

    the actual green border, but remove everything clickable

  • Check that thumbnails are being cached, they don't seem to be at the moment?
  • Investigate moo.fx as the FX library over Scriptaculous (I know there is a Lightbox version that supports it already)

Plonemetrics

  • We need a way to ping us (image with some info about OS, version etc) when you install Plone — checkbox on install screen

Infrastructure

  • Customerize - Alec + Philipp project, see http://article.gmane.org/gmane.comp.web.zope.plone.teams.framework/783
  • CacheFu for views

Speed

  • Speed is sexy
  • Can we make the edit tab faster in any way?
  • Make sure most pages are cacheable so ETags are used. To do this, generate the login name using JS, so the page is the same no matter what user you are.

Viewlets

  • Sprinkling of viewlets
  • Reimplement main_template with viewlets

UI fixes

  • GCalendar-style inline editing, make sure text selection still works (onclick vs. onrelease or whatever it is :)
  • ClearContents: Autogenerated anchors (title-to-id), part of the Table-of-contents code
  • Fix up presentation mode, maybe include S5 stuff if no license problems (setting on the document that allows the "show as slideshow" link?)
  • Rename keywords to category (labels/tags/keywords i description), needs autocomplete UI
  • Fix the restrict types page
  • Move sendto/print/whatever to bottom of page, sendto should be inline, preferrably also be able to pull users and groups from the portal (send this link to somebody)
  • Content Actions (pulldown) CSS is a mess, replace with light-weight version + switch to using ▲ and ▼ for arrows (avoiding the images, and gets correct color no matter what the theme color is)
  • Fix ploneBatch visual layout, needs larger target areas
  • Logout page should have login fields
  • Tile links need to be applied (and styled properly) (make sure we have a sane policy for 2 or more links
  • Showing Publication date if it exists, modification date is secondary.
  • Make sure the redirect after logging in works properly in all major browsers. Tests!
  • History should not be on the view anymore, move to History (aka. Versioning) tab
  • Put back autofocus behaviour now that we have ondomload (make sure tabindex is correct)
  • Link picker that works inside and outside of the portal, standardize and use in Kupu too (or the other way around, use Kupu's link dialog)
  • DateTime widget needs to be replaced! Horrible JS and usability (Joel uses DateBox) (examine i18n use cases)
  • 3 levels of portal messages: Info (gray), Warning (orange), Error (Red)
  • Monkeypatch the security screen in ZMI with a warning about not touching security (like we do with the clear and rebuild)
  • formControls area should be styled
  • Default button should have bold style
  • Forms should have default (native) layout buttons (ie. embossed)
  • Fieldset code: if more than N fieldsets, turn into pulldown
  • QuickInstaller needs to support Title/Desc, since we have things called plone.app.form

Kupu

  • Filtering control panel, consolidate filtering
  • We need the Trusted role to filter less, so they can post things like YouTube videos etc
  • Highlight class
  • Consolidate internal/external links, mailto links
  • title attr on links
  • Pulldown for rarely used functions like lang tag switching and abbr tags etc?
  • strike tag is not allowed
  • br stripping, please! https://bugzilla.mozilla.org/show_bug.cgi?id=369502 — if there's no text after br, remove it, if it's an empty paragraph, remove it.
  • Image captions: http://www.boagworld.com/archives/2006/07/styled_images_with_caption.html Style: lab.arc90.com—imgcaption http://lab.arc90.com/tools/imgcaption/
  • Make sure the pulldown for text format works (it's grayed out at the moment)
  • Save button! (not visible on initial creation of an object)
  • Possible fullscreen button in the inline editing view, and make sure one has a save button
  • full-width table style
  • Grid table style
  • Blockquote icon looks like indent
  • i18n
  • Layout/styling of the drawers
  • Can we get rid of XSLT? What's the story on Opera/WebKit support? (they should both have XSLT supported, what's missing?)
  • Fix the radio button (use checkbox on right side of folder instead)

Portlets

  • The new portlets code is merged, but the management screen needs lots of UI improvements. It would also be nice to ship with a few brand new types of portlets, such as an RSS feed portlet, and portlets linked to a Smart Folder or Page showing a listing or static text (would depend on a Zope 3 selection widget, though...). The dashboard page (PLIP152) exists, but is not yet wired in anywhere. It may need further conceptualisation as well - currently, it's just a container for personal portlets.
  • Maintenance portlets Stuff that is older than X months and was never published
  • Smart folder portlet

Smart Folder

  • Let Smart folders accept explicitly added references
  • The "add new page when smart folder is default view in folder" bug
  • Body text on smart folders
  • Criteria adding UI — same in Advanced Search, Content Rules, Smart Folders — should be similar to the Trac UI for building searches, the same approach should be used on the advanced search page
  • On Advanced Search: "Save this as a collection"
  • Rename Smart Folder to Collection?
  • Nav tree should support Collections

Folder Contents

  • Mimic Gmail features:
    • Select All/None (+ entire folder)
    • Highlight selected
    • Remember highlighted
    • Shift-click
    • Don't lose selection after performing action
    • Keywords in view
    • Keyword application like in Gmail
  • Fix drag/drop: needs reorder part
  • Sticky folder ordering on a Sort fieldset
  • Consider supporting inline editing of Title + WF state
  • Change State screen needs to group on workflow type

Theme

  • Cornelis + Alex
  • Show icons for anonymous
  • Color picker
  • sticky footer?
  • IE7 testing! http://plone.org/documentation/how-to/plone-ie7-updates
  • Reset all margins/borders/padding/etc
  • No separate CSS for large/small font, please

SelectionWidget

  • An AJAX-enabled, generic "select from a large vocabulary" has been missing for a long time. Doug Winter did some work on this at the Archipelago sprint, but we a full solution, preferably one which allows "inline browsing" of the site folder structure to select e.g. targets for content rule actions or sources for portlet data. The UI would most likely use KSS. The other obvious use for such a widget is to provide a search-based interface for BTreeFolders, since it makes no sense to list/batch those.

Workflow

  • Vincenzo & co, following work from Raphael, Jimmy and others have made a bundle with new and improved workflows. These need to be tested, probably using testbrowser functional tests, and merged into trunk. A workflow control panel is also needed.
  • Functional test
  • Add easy way to mail from WF transitions (script?)
  • Security inherits down into folders — discussion
  • Make sure types without workflow or with one state doesn't have the workflow menu
  • Types panel needs (to) work :)
  • Include a way to require a WF revision note (JS dialog)

Sharing Page

  • The sharing page, found in plone.app.workflow, should be KSS-enhanced. This needs integration with workflows as well. See TODO.txt in plone.app.workflow for more information.

Locking

  • The locking code in plone.locking is merged, but a KSS action for on-form-unload needs to be added (once KSS supports this), to unlock the object when the locking user leaves the page. Lock status may also need to show up in folder listings. When objects are locked as checkouts with iterate, the UI that notifies the user in a viewlet needs locking at.
  • Folder listings need an icon, thus: catalog

Content Rules

  • Add "send mail to" action in the contentrules support
  • The content rules engine is merged, but the UI needs to be improved greatly. Some thought has also gone into how to support on-paste events and WebDAV, which will need some workarounds for the CMF/AT syndrome of not having add forms.

Indexing

  • Kapil's patch for indexing file content on save using portal_transforms should be reviewed and merged.

Icon refactoring

  • A fallback adapter should be added (registered as adapts(Interface) or for="*") for items with no sensible way to extract and icon. This should use a dummy icon or no icon at all. Without this, we get a SiteError? when an icon is missing, which is a bit much.
  • Needs to support:
    • No icons globally
    • Only icons when logged in
    • Icons everywhere

Link Integrity

  • Andreas

Navtree

  • Support both the "public website" and "intranet" profiles from the new style
  • support having level 1+2+n expanded always

Thumbnail view/gallery

  • Silly that people install add-on products for this — it is core functionality
  • Lightbox for viewing images should be enabled (Florian has a working implementation)
  • In any case, we need to enable the previous/next behaviour here

LinguaPlone

  • Should ship with Plone 3, uninstalled (like CacheFu)
  • PLIPs available, support turning off lang filter TTW, etc
  • Get rid of PloneLanguageTool

Security

  • Remove the ?portal_message= support, this was deprecated in 2.5, and should be gone in 3.0 (people interestingly enough see this as a security hole, even though it isn't :)
  • Tighten up security, so Plone isn't configured for anonymous joins etc out-of-the-box
  • Auth:
    • https login must work without template mods!
    • Control panel prefs for cookie (session?) persistence: expire when browser is closed, 30, 1 day, 1 month, 1 year (default 1 month) — security panel
    • Make sure there is no password (hashed on otherwise) stored on client side
  • Add (monkeypatch) warning to ZMI security page
  • Check that you can't insert javascript: in style blocks, even encoded

Users/Groups

  • What's up with LDAP support? Can we solve this in a sane way?
  • Better user management screens: https://dev.plone.org/plone/ticket/5683
  • The preset for using search instead of listing for users/groups needs to be more granular — common use case is like plone.org, where you have lots of users, but few groups, hence you want the search for users, but a listing for groups

Sane Defaults

  • Error log improvements: Why are we showing error to user at all? Should be logged, and if you are a manager, you get a link to the error page.
  • SendTo form must be improved:
    • No million pages of sendtos
    • Support for sending to Plone groups (at least for managers, separate permission)
  • Get rid of the "to change the way your site is set up" link from the ZMI migration page
  • No deprecation warnings! toLocalizedTime in particular needs to be exorcised from the Plone templates
  • Create user folders disabled by default, setting in control panel
  • Search results: "there was only one result, so we redirected you" (this is also in effect for calendar search results)
  • Put "Oops" button in the delete/rename/move object status message that undoes that transaction
  • Remove the Undo action
  • We need to make sure the "localhost" value for SMTP server is blank, and show a warning message if it is (since people can't join the portal that way)
  • Only HTML enabled by default, reST, etc have to be manually enabled

Versioning

  • CMFEditions is long merged, but the versioning history should move out of the byline (where it slows things down) and into a separate history tab, combining the versioning history with review history. Limi has more ideas on exactly how this should look.
  • Doesn't work — report bugs
  • CMFDiff is not set up
  • Lock icons on a document show up even when you're not logged in, WTF :)
    • "Save as new version" should be to the right of the Save/Cancel buttons
  • Versioning tab should be renamed to revisions or better "history" and be at the far right of the tabs

Comments

  • IntelligentText support for comments (URLs + mailto — rel="nofollow" to avoid spamming)
  • Make sure IntelligentText handles encodes mail addresses and shortens long URLs
  • Make sure the author of an article has a special class (color) in his comments on that article
  • Ajaxify (inline adding)

WebDAV

  • WebDAV has to work!
  • Sidnei has sent me DavPack for 3.0, we have to look into what can be merged into Zope and Plone — or ship with DavPack in 3.0 if this is not possible.

Google integration

  • Plone should support the sitemap protocol OOTB
  • Plone should have a news feed with the required numeric ID that Google News wants
  • Plone should ship with empty webstats.js file, so any analytics invocation can be put there (generally useful for tracking, not just Google Analytics)

Control panel

  • The control panels need to be refactored. Hanno begun this in the plone.app.controlpanel package, which uses Formlib, rapidly speeding up the time taken to build such forms. Limi has plenty of ideas about what needs to move where.
  • Hanno, Siebo, Jean-Paul
  • Security panel:
    • Registration:
      • Anybody can create a user on the site
      • Only managers can create new users (default)
  • Show uptime, make it possible to restart from control panel
  • Content Filtering settings
    • No filtering (not recommended!)
    • Intranet (Filters bad HTML, but allows embedded)
    • Public website (only allows safe HTML and no JS/embeds)
  • Member signup
    • Anon can sign up
    • Only people in the user list can
  • Decouple Join/Add form for users
  • Create home folders off by default
  • DateTime format settings
  • Theme
    • JS Color picker
    • Theme selector
  • Types panel
  • Ability to disable JS for link globe
  • Ability to make all external links show up in new window
  • Ability to make content type icons login-only
  • Ability to edit footer (should be an unindexed content object, so it can be translatable with linguaplone too)
  • Ability to upload logo
  • Ability to change colors
  • Checkbox: "Can anonymous join?"
  • System admin panel - restart/shut down
  • Filter types in all control panels (criteria etc need to go away, list by Title AND portal_type

Doc tasks

  • Document core developer setup (subscribe to RSS feed from Trac, mailing lists/groups etc)
  • Document how to future-proof your application for the next Plone version (deactivate the plone_deprecated skin, make sure your product doesn't trigger any deprecation warnings in use, etc)
  • Document how to update your product for 3.0:
    • CMFCore.permissions conditional import
    • Workflows have to be GS

Installers

  • Make sure all layouts are consistent
  • Remove (but ship with how-to-enable doc) the implicit access rule on Windows)

Ideas

  • Plone needs two general settings even if they are unused at the moment: [ ] Tell subscribers about the change and [ ] Significant edit
  • Favorites: Use the Gmail star pattern
  • The settings page: make sure it's easy to integrate things here, a good integration example is a "digg this" button insert, see http://digg.com/tools/integrate
  • Time zone support! At least for input.
  • Improve the link type (PLIP 126, but should be minor work needed)
  • Last Edited By property?
  • A button for Migrate in the Plone Controller? (opens the ZMI migration page)
  • Quicksilver-like tree-navigation in livesearch? (left/right arrows)
  • RichDescription? (solves body text on folderish types without introducing a lot of extra stuff, people always want to add links etc in Description — disable tables and other complex elements, though
  • Sprites instead of icons

Future

  • Autosave drafts somewhere (unindexed)
  • Better integration with Google Maps
  • Grid type: http://os3grid.sourceforge.net/examples/index.html
  • Batch editing