SoC 2006: Admin Usability Improvements

Events happening in the community are now at Drupal community events on www.drupal.org.
This group should probably have more organizers. See documentation on this recommendation.

This will be the main list/repository for the Drupal Admin Enhancements project for Summer of Code 2006. A description of Konstantin's excellent plans may be found at http://2006.planet-soc.com/?q=node/146.

In brief, the usability improvements will focus on seemingly minor but important Drupal administration annoyances that could be made easier through AJAX/AHAH:

  1. Fast toggling
  2. Easy renaming of strings (node titles, etc)
  3. Menu editing

All comments are welcome! The more, the many-er! ;-)

Student: Konstantin Käfer
Mentors: Nick Lewis, Ruben D. Canlas Jr.

Amazon's picture

Status? What's become of this project, is anyone using it?

Is anyone using this project?

What needs to be worked on?

Read more
kkaefer's picture

Fast toggling!

I just implemented the fast toggling thingie. It can be found in the CVS repository.

Locations where this feature can be tested are administer ➔ content management ➔ posts and administer ➔ user management ➔ users. Note that it degrades gracefully with JavaScript disabled.

Read more
kkaefer's picture

How to test the reorderable tree

Updated the docs and the patches and modules to reflect the recent changes in HEAD.

  1. Get a recent HEAD version of Drupal. Install it.
  2. Get a recent version of jQuery. (Don't be afraid of its size. Compressed, it's only 15KB) Put it into the misc/ folder.
  3. Download the files from CVS.
  4. Move the generic.patch to your Drupal root folder and apply it. This patch contains all the split up patches I and others submitted the last couple of weeks. Links to single patches are provided below.
Read more
benc's picture

Test site -- comments needed

A demo of the usability improvements is available at http://drupal.kkaefer.com/. Please review and comment. If you find errors, please report: your browser name and version number; the URL of the page that caused the error; and the error message. Thanks!

Konstantin, just a clarification. You grouped the admin tasks into 5 headings. Is this the proposed way to reorganize the menus?

Read more
kkaefer's picture

Idea: General structure of the new drupal.js

Some of my ideas for the future drupal.js:

Note: This is demo/fake code, not actual, working code.

var Drupal = {
  jsEnabled: false,
  basePath: 'http://example.com/drupal',
  locales: {},
  settings: {},
  
  addLocales: function(translations) { ... },
  t: function(str, args) { ... },
  watchdog: function(type, message, severity, link) { ... },
  parseJson: function(data) { ... }
};

jQuery.dimensions = function() { ... };
jQuery.absolutePosition = function() { ... };
jQuery.freezeHeight = function() { ... };
jQuery.redirectFormButton = function() { ... };
Read more
benc's picture

Updates please

Hi Konstantin,

How are things going? Please give us your weekly update -- can't wait to test.

Read more
benc's picture

Update, 14 July

Konstantin gave me a preview of his work on Admin Usability Improvements: so far, very impressive. I blogged it here.

Read more
kkaefer's picture

Weekly update (July 5)

In the last couple of days, I got familiar with jQuery and in particular with the new functionality in 1.0 alpha. I wrote the first portions of code for the tree. They can be found at http://cvs.drupal.org/viewcvs/drupal/contributions/sandbox/timcn/soc/wee.... (You need to download the lates alpha of jQuery manually as it's still in MIT licence).

For the next week, I plan to add drag and drop capabilities to the tree and to test it for cross-browser functionality.

Read more
kkaefer's picture

What has happened until now

In order to get external people a little bit more involved into my project, I'll start posting weekly updates and I begin with a summary of what I have done so far.

  1. Pave the way for jQuery
    Until now, my main goal was to get jQuery or another kind of JavaScript library into core. This is necessary as my code will have quite some chunks of client side scripts which are a lot easier and faster to develop if you rely on well tested libraries. Fortunately, we are now in the process of rolling in jQuery into Drupal core.
Read more
kkaefer's picture

Tree view

<

ul>

  • Features

    <

    ul>

  • Display tree like structures in a tree
  • Allow the user to select either one item or as many as he wants
  • Collapse items
    • By default, all items are collapsed
    • You can specify if you want to open the path to a certain item
    • The route to a selected item is expanded by default
  • Reorder items (if applicable)
    • Drag one item or a tree of items to another position in the tree
    • After each drag, the user is asked to confirm the action
  • Read more
    kkaefer's picture

    What JavaScript library should we use? (Regardless of licencing issues)

    jQuery
    69% (86 votes)
    Prototype
    15% (19 votes)
    Other library (specify in comment)
    4% (5 votes)
    Custom built library
    12% (15 votes)
    Total votes: 125
    drumm's picture

    Recomended first steps

    I'm just catching up, looks like there is some good stuff going on. As a non-mentor on this project, here are my ideas:

    • Mock up the the three new UI widgets (I always code first, but I've ended up coding too many projects twice due to UI changes).
    • Find candidate places where the widgets can be used (only the places which make sense should be used).

    I would at the end like to see these standardized in the Drupal API (like autocomplete text fields) so that using them in other places or modules is easy. With these should come UI guidelines for when to use these elements, how to use the

    Read more
    Subscribe with RSS Syndicate content

    SoC 2006: Admin Usability Improvements

    Group organizers

    Group notifications

    This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: