The fieldset.isValid property isn't necessarily initialized when the
view looks for it to determine fieldset validity. I've introduced a
validation method that counters this problem.
The validation method also ensures that any validation errors in nested
Archetypes are highlighted on the parent/root Archetype
Old: archetype-property-<umbracoPropertyAlias>-<fieldsetIndex>-<propertyIndex>
New: archetype-property-<umbracoPropertyAlias>-<archetypePropertyAlias>-<fieldsetIndex>
Basically, this adds the archetypePropertyAlias into the mix, to fix a case where you might have the same Archetype nested on a host Archetype twice (ie box 1 links, box 2 links within the same Archetype - there was no uniqueness)
It also adds in the Property Alias in place of the Property "Index" (unintended side effect, but seems cool :))
Fix issue #123. Explicitly call $setDirty() on the PE form when
reordering or removing rows, thus ensuring the editor will be prompted
to discard changes if navigating away before saving.
Use the built-in dirty state to handle row changes instead of the custom
state variable introduced in the previous commit.
Additionally this solves issue #123 by setting the dirty state when rows
are removed or sorted.
... so the user can switch types (remove/add) when only a single row.
We check for Multiple Fieldset Types as well, because we don't want to show a "remove" button when there's only one type allowed (presumably).
Previously, you couldn't collapse a single row by itself, it was always expanded. Now you can collapse it, but it's still expanded on the initial page load.
* View: Prevent collapse/expand depending on config option, add class when enabled
* Config: Add option to view, set default to enabled for new datatypes
* CSS: Revert to normal cursor when collapsing disabled
* Note, this is a breaking change - you'll need set `Enable Collapsing?` to `true` on any existing Archetypes to retain the behavior.
The Label Expr. field can now be defined like this: Person: {{firstName}} {{lastName}}
Where firstName and lastName are the property alias of a property on the current fieldset