Storm Attribute provides users with a means to set the options that appear for certain fields, and also the options that can be searched upon.

These prove quite confusing for a new user, so I propose that these should be moved to the admin settings for each module.

Comments

homoludens’s picture

I agree with and support this idea. if you need some help with implementing it and/or testing it - just say.

Magnity’s picture

This isn't something i'll put much time into in the near future - so go ahead if you want to.

One thing I thought this could help especially is the relationship between the allowable values for a node and the values that are searchable. Currently, I think its a bit confusing as to how to choose which values are displayed for a particular search key.

Also, i'd be happy to implement this on a per module basis as long as we put some explanatory notes in the attributes section so that people know exactly whether a setting is a std setting or an attribute.

Magnity’s picture

Version: 6.x-1.x-dev » 7.x-1.x-dev

#652212: Proposal to remove distinct Storm Attribute permissions for a possible part of this.

Moving to D7, as I suspect that a lot of these changes will be helped by #293485: Integrate with CCK

juliangb’s picture

Assigned: juliangb » Unassigned

Moving back to D6. This will simplify the D7 port anyway.

I have a few ideas of how to do it now and will try a patch once 1.34 is released.

juliangb’s picture

Version: 7.x-1.x-dev » 6.x-1.x-dev
Assigned: Unassigned » juliangb
juliangb’s picture

Title: Change attributes into taxonomy » Move Storm Attribute into admin settings
Version: 6.x-2.x-dev » 6.x-1.x-dev

Below is a list of domains used in Storm attribute. I believe the settings should be in different places according to domain.

Also, I am thinking of removing the functionality to have 'active' and 'inactive' attributes. My view is that if you want something inactive, you remove it.

Country:
Surely this is something that a number of Drupal modules would use. I would consider shipping this out to an external module. Addresses module does this, and has a function _addresses_country_get() (addresses.inc) that returns an array of countrycode => name as Storm attributes currently does. If we did introduce a dependency on addresses, we may be able to use that module to handle some of the fields in Storm later too. Country is used in the stormorganization module only.

Duration unit (hour / day):
This is currently only used to store 'hour' and 'day'. I wonder about hardcoding these. Does anybody use anything else but 'hour' and 'day'? It is used in stormproject, stormtask, and stormticket - so should probably be defined in storm.module or stormproject.

Price mode
Used in stormorganization, stormproject, stormtask, and stormticket. Perhaps move to storm.module general settings.

Knowledgebase topic
Expense status / Expense status search
Project category / Project category search / Project priority / Project priority search / Project status / Project status search
Task category / Task category search / Task priority / Task priority search / Task status / Task status search
Ticket category / Ticket category search / Ticket priority / Ticket priority search / Ticket status / Ticket status search:

All of these are just used in one module, so can be moved as separate settings there.

tchurch’s picture

Assigned: Unassigned » juliangb

Just a few comments:

1) Countries
I must admit that every time I create a new install of Storm on a Drupal site, it's a pain to keep making all the not-needed countries to 'inactive'.
It might be better to have all countries inactive by default and then allow users to activate the one(s) they want.

2) active/inactive
I find it useful to keep records in the table as inactive for 2 reasons:
a) I can see what was there and re-activate easily if needed
b) With things like price modes and statuses, if they have been used previously, removing them might cause problems displaying those projects/tasks/tickets later.

juliangb’s picture

Some good points there. It will not simplify it as much as I wanted to, but it sounds like the active/inactive is actually needed.

Any thoughts on the other ideas?

Bill Lea’s picture

I'm new to the Storm system and I find the attributes quite confusing. How are they different from Taxonomies? Why not use taxonomies instead of a new system which looks like a taxonomy but has a much more difficult administration page. I mean there are ten pages out of the box and I can think of dozens of term I need to define my particular needs.

juliangb’s picture

I like the idea of using taxonomies if it will do all / most of the things we want it to do.

Stolzenhain’s picture

+1 taxonomy usage
This would really make management/integration for new users much easier. A good example of taxonomy integration into module functionality was Ubercart, allowing for usage of many other structural tools without being dependent on Ubercart core (aside from Views usage).
The only argument against fields would be the flexibility of Views (fields are easier to process in Views, as far as I know), but in the long run, it seems much more consistent (f.e. during transitions from similarly structured Drupal sites to Storm and back).

zaffi’s picture

Multilingual and localization sites are not taken into consideration in Storm.
this is another reason why moving 'attributes' into standard drupal usage.

juliangb’s picture

Version: 6.x-1.x-dev » 6.x-2.x-dev

Hi @zaffi, can you be more specific about the problems for multi-lingual sites? Feel free to open new issues if less related to this one.

Carsten Müller’s picture

+1 for taxonomy

i think it is easier to handle and better for multiple languages.

Is it needed to separate the status for tasks, projects and tickets and to have a second attribute for the filters?
That are 6 different attribute types.

So, what is really needed:

  • Country
  • Duration unit
  • Price mode
  • Priority
  • Project category
  • Task category
  • Ticket category
  • Status

This will make 8 different taxonomy vocabularies.

Another advantage of taxonomy is the possibility to use the hierarchy. Especially the countries can be divided by the continents
- Asia
- Japan
- China
- ....
-Europe
- England
- France
- Germany
- ...

juliangb’s picture

Title: Move Storm Attribute into admin settings » Change attributes into taxonomy

Retitling.

juliangb’s picture

Title: Move Storm Attribute into admin settings » Change attributes into taxonomy
Project: Storm » Drupal PM (Project Management)
Version: 6.x-1.x-dev » 7.x-1.x-dev
Component: Storm Attribute » Code
Assigned: juliangb » Unassigned

Moving to Project Management queue.

We should keep an eye on this in the pre-beta stage (outcomes will probably depend on how we proceed with conversion to Field API).

D34dMan’s picture

Those list fields that take option value through attributes could be made to use Term fields. So integration wouldn't be as difficult.

Those who feel they can't live without inactive attribute, can install termstatus, i have not tried it but it seems to do the job.

juliangb’s picture

True - but another thought that occurred to me was do we need all domains of attributes in taxonomy, or could some be part of a standard list field?

Country field, for example could be entirely replaced by the list within the Addressfield module, and I wonder if the same can be done elsewhere too.

D34dMan’s picture

Yep that is the easiest. It gives a really intuitive interface to manage the options too. But then inactive won't be available any more.

I am not sure though which allowed values declaration would take precedence, the one declared in code ( field api ) or the one in settings form.

juliangb’s picture

I assume that for most fields, the values declared in code could be overridden by the settings form - a positive for customisation as long as it doesn't break any functionality.

D34dMan’s picture

So in short there won't be any patch for this issue i assume. Unless there are attributes which are never used by any fields. Are there any?

juliangb’s picture

Status: Active » Postponed

Let's postpone until we've done the shift to Fields in core.

juliangb’s picture

Issue summary: View changes
Status: Postponed » Closed (won't fix)

Attributes won't exist in 2.x, they have been replaced by field values.