First of all, great module. The idea is wonderful, and so far it is wonderfully implemented. I am actually already using this to track my time in my company. With that said, there is always room for improvement.

I would like an option to assign projects, tasks, and or tickets to users (very similar to the way that project issue tracking works in d.o).

It would also be nice to be able to sort and filter based on the user who created items. Being able to see how many hours a certain user worked on a project would be very helpful.

Finally, providing a few blocks such as recent time track entries or recent projects... would be very nice. This would normally be done through views, which leads me to my final request:

Integration with views. Almost everything that I have stated becomes possible with integration with views. So that is probably my number 1 request.

I cannot thank you enough for providing this module. I look forward to using it and helping contribute as well.

Comments

techprophet’s picture

Also, the price/pricemode/currency part, could that be removed, or at least hidden? That isn't needed for every project, and none of mine.

Roberto Gerola’s picture

>Also, the price/pricemode/currency part, could that be removed, or at least hidden? That isn't needed for every project, and none of mine.
You can hide them using some css code or writing an form_alter hook.

Roberto Gerola’s picture

>It would also be nice to be able to sort and filter based on the user who created items. Being able to see how many hours a certain user worked on a project would be very helpful.
The filter by user is now available in cvs.

Roberto Gerola’s picture

>I would like an option to assign projects, tasks, and or tickets to users
Yes, but you could have people working on the project that have no access to the system. For example
external providers.

What I think to do is to add a People content.
Every person will have his/her own organization and can also have an user associated together with some
personal data : email, phone and so on.
The people content will have its own management interface (so it will be possible to search easily through
all your contacts) plus it will appear also as tab under every organization.

>It would also be nice to be able to sort and filter based on the user who created items
I think to extend this adding some hooks to permit customizations. Not all columns
will be relevant for everyone, so with some hooks it will be possible to customize :
- the filter section
- the list

>Integration with views. Almost everything that I have stated becomes possible with integration with views
Yes, too many specific needs to cover, so Views integration will be the way to follow.
I think to implement some blocks in any case, the module should be perfectly usable as standalone.

A very important block would be Time tracking to quick register your activities.

At now I'm working on a support for lists print/export.

techprophet’s picture

I have done what your recommended (and had done so before I posted) but an option for it would still be nice. But don't worry about it until this is more stable and complete.

Roberto Gerola’s picture

Title: First Reactions » Views support
Gunderstorm’s picture

>>I would like an option to assign projects, tasks, and or tickets to users
>Yes, but you could have people working on the project that have no access to the system. For example
>external providers.

The ability to assign tasks to users would still be my number 2 request behind Views integration.

steveoliver’s picture

Title: Views support » Assign STORM Tasks to one or more People
Priority: Normal » Minor

I would love to be able to assign tasks to People. If they are users of the system, then they should receive an email notification. Additionally, it would be nice to be able to assign the task to a pool of people, where the first available service technician, for example, would be able to take the task or ticket upon themselves. What do you think?

I'm thinking, for now, to add a User Reference field to the Task content type and create a Workflow scenario that sends the email notification. We'll see how that goes in my Drupal 6 installation of STORM.

And yes, great module! Thanks,

-Steve

Roberto Gerola’s picture

> to add a User Reference field to the Task content type
If possible it would be better that you add a node reference of type Storm person, IMHO.
Every Storm person can be associated with a user.

Generally speaking, you could have also people without access to the
system with task assigned.

This will be the approach that I'll follow when I'll implement this feature.

About views integration : I started with the integration with Storm organization
for D5, it is yet incomplete but working.
I'll work also on the D6 implementation. I want to keep the D5 and D6 versions
synchronized.

Roberto

Roberto Gerola’s picture

Status: Active » Closed (duplicate)
raintonr’s picture

Component: User interface » Storm Task

Re #1:

+1 for this idea. As stated above though, the date and price groups on the form can be easily hidden with a hook.

Eg, to remove them from the timetracking and ticket forms put this in storm_small_form.info:

name = Storm Small Form
description = Removes certain fields from Storm forms.
core = 6.x
version = "6.x-0.1"
package = Storm

And this in storm_small_form.module:

<?php
function storm_small_form_form_alter(&$form, $form_state, $form_id) {
  if ($form_id == 'stormticket_node_form') {
    /* Remove date/time information */
    $form['group3']['#access'] = FALSE;

    /* Remove price information */
    $form['group5']['#access'] = FALSE;
  } else if ($form_id == 'stormtask_node_form') {
    /* Remove date/time information */
    $form['group4']['#access'] = FALSE;

    /* Remove price information */
    $form['group5']['#access'] = FALSE;
  }
}
?>

Then enable this tiny module of course.

vojnar’s picture

Nice module, I have just started using it.

blade003’s picture

Title: Assign STORM Tasks to one or more People » Hide the date and price groups on the form
Status: Closed (duplicate) » Closed (works as designed)

@ raintonr - Great hook!

I have implemented this module and it works great, although I've had to tweak the code in order to hide the right fields as "group5" in my version of storm is the "Assigned to" field, just a word to those implemented this module as you might find yourself hiding the wrong fields.

thanks!

eighthourlunch’s picture

Great start. If you're new to this, there are only a couple things I'd add to save you some time. First, install the Drupal for Firebug module and the plugin for Firefox. This will allow you to see the contents of the form arrays without pasting things into your code. Secondly, I found it cleaner to use switch case remove individual elements.

<?php

function storm_small_form_form_alter(&$form, $form_state, $form_id) {

  switch ($form_id) {
    
    case 'stormtask_node_form':
      

      $form['group1']['parent_nid']['#access'] = FALSE;
      $form['group1']['weight']['#access'] = FALSE;
      $form['group1']['stepno']['#access'] = FALSE;
      $form['group3']['durationunit']['#access'] = FALSE;
      $form['group3']['duration']['#access'] = FALSE;
      $form['group4']['pricemode']['#access'] = FALSE;
      $form['group4']['price']['#access'] = FALSE;
      $form['group4']['currency']['#access'] = FALSE;      
      $form['group6']['billable']['#access'] = FALSE;
      $form['group6']['billed']['#access'] = FALSE;
           
      break;
  }
}
?>

Hope that helps. Would have saved me a ton of time. :)

aendra’s picture

eighthourlunch -- Thank you *so* much for the "Drupal for Firebug" extension suggestion, that is fantastic!

eighthourlunch’s picture

Happy I could help. :)