U4-1949 - Default document type properties to Textstring datatype

Created by Douglas Robar 19 Mar 2013, 08:36:52 Updated by Sebastiaan Janssen 19 Jul 2013, 13:45:03

When you create a new document type property, it defaults to the first item in the datatypes list. Being sorted alphabetically, the Approved Color Picker is often chosen by mistake. This happens to new users on the courses and also to experienced users who are in a hurry.

Since the most-used datatype is a textstring, could this be the default selection for new doctype properties?

(fwiw, this was done for v5 and was regarded as a really simple yet helpful usability improvement)

Comments

Morten Christensen 19 Mar 2013, 08:50:33

In v5 was it just the textstring property that was always on top or was there some kind of sorting available for DataTypes?


Trevor Loader 19 Mar 2013, 08:53:10

I'd prefer the list to remain alphabetical but to simply default the selection to Teststring.


Douglas Robar 19 Mar 2013, 08:54:06

It was U5-300 in the old tracker but I don't have the details in my email about the notes made about it.

I think the datatypes were always listed alphabetically in the dropdown list but the textstring was set as the default selection in the html.


Dan Booth 19 Mar 2013, 09:10:10

I think it would be better if no data type was selected by default, forcing you to pick one explicitly. I've lost count of the number of times I've created a property and forgot to assign the data type - but luckily as the default is the Colour Picker it's been really obvious. If it defaulted to text string it may be less obvious, especially for datatype's whose UI appears very similar


Peter Gregory 19 Mar 2013, 09:30:46

I get what you are saying Dan but the biggest issue I have is that it really slows down doctype dev. Defaulting to textstring in my opinion will be more advantageous. The most common property type is text string. Color picker is the least yet is always the first in the list.

Maybe a config option where the guid of the default type is set in the umbracosettings.config? So for those that really "LOVE" the color picker being default can keep it that way :P


Chriztian Steinmeier 19 Mar 2013, 09:37:55

Adding a config setting and defaulting that to Textstring would be awesome.


Dan Okkels Brendstrup 19 Mar 2013, 09:40:53

If nothing else, rename it to "A textstring" by default ;)


Dan Booth 19 Mar 2013, 09:42:40

Peter - my personal experience is that what slows down development is leaving a property at the default (whatever that might be) and then having to come back and change it. Explicitly forcing someone to select an option would add negligible time to creating a property but would ensure they always thought about the choice they are making. (Would it be better to use a char limited textstring, for instance, rather than default).

Whilst config options always sound nice, they just add unnecessary complexity for the Umbraco devs and 99.99% of people leave it at the default.


Morten Christensen 19 Mar 2013, 10:09:53

Adding more config options makes me sad :( Who ever comes up with the best convention wins a cake (collectible at CG13).


Douglas Robar 19 Mar 2013, 10:41:24

I'll suggest the convention is to set Textstring as the default setting, while keeping the list in alphabetical order.

It's true his doesn't help Dan's situation but it would help most people and is not significantly worse for Dan than the current situation I think.

I appreciate the nicety of being able to set the default datatype (or choose to have no default at all) in some sort of convention/configuration... but I would rather do a good thing now (textstring by default instead of approved color) and address how it might be made even better afterward.

(I like chocolate cake, btw ;)


Richard Soeteman 19 Mar 2013, 11:02:49

Agree with Doug, you can set a config option default to TextString and then override it if you like. You don't need to configure anything in this case only when you want to change it.


Andy Butland 26 Jun 2013, 16:07:09

This sounded like a useful idea to me, so I've submitted a [https://github.com/umbraco/Umbraco-CMS/pull/35 pull request] for it. It's using what seems to the consensus of the above discussion: Textstring as default, and if you want to, via a key in web.config you can set another type to be the default.


Morten Christensen 26 Jun 2013, 19:21:58

I would probably try to avoid addIng new settings to web.config. We are already trying to remove some old appsettings and "hide" those that are needed by default. If we really need to add a config setting for this then I'd recommend using umbracoSettings.config instead.


Andy Butland 27 Jun 2013, 07:40:55

Hi Morten - yes, I'd noticed the efforts to clean that up so was concerned about re-adding to it! The idea here is that the config is optional - with no setting you would get the Textstring by default which I imagine most would want. If you did want to change it though, you could add the key - so it would need to be documented somewhere but not need to be shipped in the web.config. Having said that, is unbraoSettings still the better place? If so, I can move it and resubmit. Thanks.


Chriztian Steinmeier 27 Jun 2013, 07:47:22

@Andy - (Just FYI in case you didn't know): Anything you commit to that same branch ("wip-u4-1949") will be included in the pull-request, so you should just keep the changes there and it should be good.

Regarding which config to put it in, I guess too that umbracoSettings.config would be the better choice.


Andy Butland 27 Jun 2013, 14:04:56

Thanks Chriztian - that's nice and easy. I've pushed an update that moves this to umbracoSettings.config now.


Funka! 03 Jul 2013, 21:24:04

I'm a few days late to the game, and see that decisions have already been made on this, but I'm with Dan Booth in voting to have simply ''nothing'' initially selected, thus forcing you to consciously make a decision.


Sebastiaan Janssen 19 Jul 2013, 13:45:03

Accepted Andy's pull request, Textstring will be default in 6.1.3 and is configurable in umbracoSettings.config (defaultDocumentTypeProperty).

Revisions: 90cfd004cbe842a0b9df79d5c46cd7fbf8dbed7e, 64fb5885562d6dfa750a184c54bc3c8358176de3

For those who want a blank option as the default, make sure to create a new feature request for it.


Priority: Normal

Type: Feature (request)

State: Fixed

Assignee:

Difficulty: Normal

Category:

Backwards Compatible: True

Fix Submitted: Pull request

Affected versions:

Due in version: 6.1.3

Sprint:

Story Points:

Cycle: