I just tried the eventrepeat module on the testing site. Here are some first thoughts:

  • repeat tab should be present all the time. It's confusing that it's only visible during 'edit' when other modules (eg - ecommerce) place a tab there persistently.
  • there is no choice for 'infinite repeat' which is a familiar setting in other scheduling applications (eg - palm os). This forces a user to pick an end date or length, which for some types of events (eg - Halloween) is not actually correct, pending some cultural shift or apocalypse.
  • Interval could be better as an input field like the date. Thus eliminating the need to engage a long pull down to get to '60' and also allowing those 76 year cyclic events (eg - Halley's Comet) to be added as well.
  • I'm a huge geek and I thought my head was going to explode when I got to the "Days, Months, Days of the Month, Days of the Years, Weeks numbers" section. It wasn't clear that they were optional and really only pertained if I had chosen something above that would involve one of these. I eventually gave up, filled in a few and skipped the rest. After that I didn't want to think about 'exceptions' at all.

After discussing the eventrepeat module with my friend we agreed that one of the major differences between eventrepeat and other recurring events in other systems is that it is more common to get the repeat selections (days, months, days of the month, etc) specific to the type of repetition that was chosen. The presence of all of the parameters at once is overwhelming. In terms of solutions there are a few I can think of:

  1. multiple stages - ecommerce has two separate steps to making something a product. A) pick type B) pick options based on type.
  2. AJAX - interactive interface that displays relevant info when desired and not before.
  3. hide irrelevant info - similar to the login block being hidden on the testing site, various choices could be hidden to the user until the parameter was chosen.

Comments

hunmonk’s picture

first off, i know the UI sucks :)

so i appreciate the suggestions. let's see...

1. infinite repeat is possible, just don't set an end date or count
2. i also have come around on the repeat tab, so i'll move it in my next round of updates
3. a lot of those dropdowns would be better as textboxes in terms of flexibility, and we be a lot nicer on the eye. i orginally used those b/c i didn't want RRULE stuff to be entered manually--it seemed a bit tricky, plus then there was validation to contend with. i don't really want to move to textfields totally. now i'm thinking of maybe some javascript help. we'll see...
4. i like the robustness of the repeat patterns--it's the most powerful and flexible recurrance tool that i've seen, but it's also complicated. so i'm still working on the best way to retain all that without causing a user hemmorhage... :P
5. it's good that you didn't make it to the exceptions, b/c that's broken atm. :)

dado’s picture

I think a wizard-like approach might be the best in terms of usability. As in

A. Does this event repeat at the same time of day, at regular intervals (weekly, etc.)?
or
B. Does this event have a list of dates in no particular order?

Each question is a link that takes to a different form.

Next form for option A:
Enter first start date+time (pre-populated with the start date initially entered)
Enter end start date+time (ditto)

Enter number of events
...or...
Enter the last date+time

Enter frequency of repeating

Form after link B would have a list of ~10 date fields with a link to add more.

Etc.

hunmonk’s picture

i would be in support of a wizard approach if it wasn't too many pages. i don't have time to code that now, but if somebody submits a patch for that i'll put it in.

jiggonaut’s picture

Since yesterday I have got the eventrepeat module in use and for every repeat date there is a new node created - is this correct?

robby1066’s picture

I'm wondering if there isn't a way to hide the advanced options with a collapsible fieldset? I have some users that I KNOW will be intimidated by the size of the repeat form, and will most likely just want to set their events to "weekly" or "monthly". If I'm not mistaken, one doesn't need to set an end date, interval, etc if they don't want to, so it seems appropriate to be able to minimize those for the user. It seems like a fairly easy thing to code. I'd be willing to work on a patch if there was interest in it.

hunmonk’s picture

yes, definitely interested in a patch that would make the UI simpler, and i had also had the thought of a collapsible fieldset for more advanced options. i think this would mainly be a stopgap measure until a complete redesign happens, but it would certainly help. that said, here's what i think should _not_ go in the advanced options:

  • the 'Repeat Type' dropdown
  • the entire 'End Settings' control box

i think we can safely fold everything else up.

hunmonk’s picture

Status: Active » Closed (duplicate)

marking as a duplicate of http://drupal.org/node/67823