Merge remote-tracking branch 'refs/remotes/kgiszewski/master' into min-fieldsets-feature

This commit is contained in:
kjac
2017-07-28 16:09:49 +02:00
10 changed files with 114 additions and 33 deletions
+5 -1
View File
@@ -10,7 +10,6 @@ Install the selected <a href='https://github.com/imulus/Archetype/releases'>rele
## Official Docs ##
https://github.com/kgiszewski/ArchetypeManual
## News and Updates ##
Follow us on Twitter https://twitter.com/ArchetypeKit
@@ -21,6 +20,11 @@ Follow us on Twitter https://twitter.com/ArchetypeKit
* Matt Brailsford - The Outfield - http://www.theoutfield.co.uk/
* Kenn Jacobsen - Vertica - http://kennjacobsen.dk/
## Donate!
[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=KBKWLURGLGU6L)
This project is funded by the core team members' time only. We don't charge for Archetype but it does take quite a bit of effort to keep it up-to-date with Umbraco core changes. If you're making a few bucks off of Archetype, we wouldn't refuse a donation :)
## Contribute ##
Want to contribute to Archetype? You'll want to use Grunt (our task runner) to help you integrate with a local copy of Umbraco.
@@ -26,6 +26,9 @@ namespace Archetype.Models
[JsonProperty("label")]
public string Label { get; set; }
[JsonProperty("previewImage")]
public string PreviewImage { get; set; }
[JsonProperty("properties")]
public IEnumerable<ArchetypePreValueProperty> Properties { get; set; }
@@ -1,4 +1,4 @@
using System.Reflection;
[assembly: AssemblyVersion("1.13.1")]
[assembly: AssemblyFileVersion("1.13.1")]
[assembly: AssemblyVersion("1.14.1")]
[assembly: AssemblyFileVersion("1.14.1")]
+12 -2
View File
@@ -264,7 +264,8 @@ angular.module("umbraco").controller("Imulus.ArchetypeController", function ($sc
alias: fieldset.alias,
label: fieldset.label,
icon: (fieldset.icon || "icon-document-dashed-line"), // default icon if none is chosen
group: fieldset.group ? fieldset.group.name : null
group: fieldset.group ? fieldset.group.name : null,
previewImage: fieldset.previewImage
});
});
// sanity check
@@ -304,13 +305,22 @@ angular.module("umbraco").controller("Imulus.ArchetypeController", function ($sc
$scope.closeFieldsetPicker = function () {
$scope.overlayMenu.show = false;
$scope.overlayMenu.fieldsetPreview = null;
};
$scope.pickFieldset = function (fieldsetAlias, $index) {
$scope.closeFieldsetPicker();
$scope.addRow(fieldsetAlias, $index);
};
$scope.openFieldsetPreview = function (fieldset) {
$scope.overlayMenu.fieldsetPreview = fieldset;
}
$scope.closeFieldsetPreview = function () {
$scope.overlayMenu.fieldsetPreview = null;
}
$scope.addRow = function (fieldsetAlias, $index) {
if ($scope.canAdd()) {
if ($scope.model.config.fieldsets) {
+4 -1
View File
@@ -55,5 +55,8 @@
"enableMemberGroups": "Aktivér medlems-grupper",
"enableMemerGroupsDescription": "Tillad at fieldsets kun vises for specifikke medlems-grupper",
"allowedMemberGroups": "Tilladte medlems-grupper",
"allowedMemberGroupsHelpText": "Vælg de medlems-grupper, der skal kunne se dette element. Hvis der ikke er valgt nogen, kan alle se elementet."
"allowedMemberGroupsHelpText": "Vælg de medlems-grupper, der skal kunne se dette element. Hvis der ikke er valgt nogen, kan alle se elementet.",
"previewFieldsetOpen": "(se eksempel)",
"previewFieldsetHeader": "Eksempel: ",
"previewFieldsetClose": "(luk eksempel)"
}
+4 -1
View File
@@ -55,5 +55,8 @@
"enableMemberGroups": "Aktivér medlems-grupper",
"enableMemerGroupsDescription": "Tillad at fieldsets kun vises for specifikke medlems-grupper",
"allowedMemberGroups": "Tilladte medlems-grupper",
"allowedMemberGroupsHelpText": "Vælg de medlems-grupper, der skal kunne se dette element. Hvis der ikke er valgt nogen, kan alle se elementet."
"allowedMemberGroupsHelpText": "Vælg de medlems-grupper, der skal kunne se dette element. Hvis der ikke er valgt nogen, kan alle se elementet.",
"previewFieldsetOpen": "(se eksempel)",
"previewFieldsetHeader": "Eksempel: ",
"previewFieldsetClose": "(luk eksempel)"
}
+37 -8
View File
@@ -290,6 +290,12 @@
overflow: visible;
vertical-align: top;
height: 90px;
.fieldsetPreviewOpen {
font-style: italic;
a:hover {
text-decoration: underline;
}
}
}
ul.groups {
display: block;
@@ -310,6 +316,24 @@
}
}
}
.fieldsetPreview {
.fieldsetPreviewClose {
font-style: italic;
font-size: 12px;
text-align: center;
}
.fieldsetPreviewImage {
padding: 6px 0px;
img {
height: auto;
max-width: 100%;
vertical-align: middle;
border: 0;
cursor: zoom-in;
}
}
}
}
.settingsWrapper {
@@ -392,10 +416,10 @@
small {
margin-left: 5px;
}
a {
float: right;
img {
width: 35px;
}
@@ -441,7 +465,8 @@
.archetypeFieldsetOption {
margin-bottom: 15px;
margin-right: 15px;
input[type=text]{
input[type=text] {
max-width: 100%;
width: 100%;
}
@@ -459,7 +484,7 @@
margin-bottom: 5px;
}
label{
label {
width: 400px;
}
}
@@ -499,7 +524,7 @@
label {
width: 100%;
}
input[type=text] {
width: 100%;
}
@@ -534,10 +559,10 @@
}
}
}
}
}
}
.archetypeMaxFieldsets{
.archetypeMaxFieldsets {
border: 1px solid #ddd;
width: 40px;
text-align: right;
@@ -550,7 +575,7 @@
.archetypePropertyCollapser {
margin-top: 10px;
div {
margin-bottom: 10px;
margin-right: 15px;
@@ -564,6 +589,10 @@
.fieldsetIcon {
margin-right: 10px;
}
small {
color: #817f85;
}
}
.ui-sortable-placeholder {
+8
View File
@@ -16,10 +16,12 @@
<div class="archetypeFieldsetOption">
<label for="archetypeFieldLabel_{{$index}}"><archetype-localize key="label">Label</archetype-localize></label>
<input type="text" id="archetypeFieldLabel_{{$index}}" ng-model="fieldset.label" on-keyup="autoPopulateAlias(fieldset)" />
<small>The label shown to the editors when adding a new fieldset.</small>
</div>
<div class="archetypeFieldsetOption">
<label for="archetypeFieldAlias_{{$index}}"><archetype-localize key="alias">Alias</archetype-localize></label>
<input type="text" id="archetypeFieldAlias_{{$index}}" ng-model="fieldset.alias" on-keyup="markAliasDirty(fieldset)" required/>
<small>The alias used to identify the fieldset when rendering.</small>
</div>
<div class="archetypeFieldsetOption" ng-show="archetypeConfigRenderModel.fieldsetGroups.length">
<label for="archetypeFieldsetGroup_{{$index}}"><archetype-localize key="fieldsetGroup">Group</archetype-localize></label>
@@ -28,6 +30,12 @@
<div class="archetypeFieldsetOption">
<label for="archetypeFieldLabelTemplate_{{$index}}"><archetype-localize key="labelTemplate">Label Template</archetype-localize></label>
<input type="text" id="archetypeFieldLabelTemplate_{{$index}}" ng-model="fieldset.labelTemplate" />
<small>Generates labels per fieldset. Can contain property aliases, e.g. "Article: &#123;&#123;title&#125;&#125;".</small>
</div>
<div class="archetypeFieldsetOption">
<label for="archetypeFieldPreview_{{$index}}">Preview image</label>
<input type="text" id="archetypeFieldPreview_{{$index}}" ng-model="fieldset.previewImage" on-keyup="markAliasDirty(fieldset)" />
<small>A relative path to a preview image, e.g. "/assets/fieldset.png".</small>
</div>
<div class="archetypeFieldsetOption" ng-show="archetypeConfigRenderModel.enableMultipleFieldsets">
<label for="archetypeFieldIcon_{{$index}}"><archetype-localize key="icon">Icon</archetype-localize></label>
+38 -17
View File
@@ -112,24 +112,45 @@
<!-- Fieldset picker. -->
<div class="usky-grid fieldsetPicker" ng-class="{withGroups: overlayMenu.fieldsetGroups.length > 1}" ng-if="overlayMenu.show">
<div class="cell-tools-menu" ng-style="overlayMenu.style" delayed-mouseleave="closeFieldsetPicker()" archetype-click-outside="closeFieldsetPicker()">
<h5>
<archetype-localize key="addFieldset">Add an item</archetype-localize>
</h5>
<ul class="groups" ng-show="overlayMenu.fieldsetGroups.length > 1">
<li ng-repeat="fieldsetGroup in overlayMenu.fieldsetGroups" ng-class="{active: fieldsetGroup == overlayMenu.activeFieldsetGroup}">
<a ng-click="overlayMenu.activeFieldsetGroup = fieldsetGroup">
{{fieldsetGroup.name}}
<div ng-show="!overlayMenu.fieldsetPreview">
<h5>
<archetype-localize key="addFieldset">Add an item</archetype-localize>
</h5>
<ul class="groups" ng-show="overlayMenu.fieldsetGroups.length > 1">
<li ng-repeat="fieldsetGroup in overlayMenu.fieldsetGroups" ng-class="{active: fieldsetGroup == overlayMenu.activeFieldsetGroup}">
<a ng-click="overlayMenu.activeFieldsetGroup = fieldsetGroup">
{{fieldsetGroup.name}}
</a>
</li>
</ul>
<ul class="elements">
<li ng-repeat="fieldset in overlayMenu.activeFieldsetGroup.fieldsets">
<a ng-click="pickFieldset(fieldset.alias, overlayMenu.index)" href>
<i class="icon {{fieldset.icon}}"></i>
{{fieldset.label}}
</a>
<div class="fieldsetPreviewOpen" ng-if="fieldset.previewImage">
<a href ng-click="openFieldsetPreview(fieldset)"><archetype-localize key="previewFieldsetOpen">(see preview)</archetype-localize></a>
</div>
</li>
</ul>
</div>
<div ng-show="overlayMenu.fieldsetPreview" class="fieldsetPreview">
<h5>
<archetype-localize key="previewFieldsetHeader">Preview: </archetype-localize>{{overlayMenu.fieldsetPreview.label}}
</h5>
<div class="fieldsetPreviewClose">
<a href ng-click="closeFieldsetPreview()"><archetype-localize key="previewFieldsetClose">(close preview)</archetype-localize></a>
</div>
<div class="fieldsetPreviewImage">
<a href="{{overlayMenu.fieldsetPreview.previewImage}}" target="_blank">
<img src="{{overlayMenu.fieldsetPreview.previewImage}}" />
</a>
</li>
</ul>
<ul class="elements">
<li ng-repeat="fieldset in overlayMenu.activeFieldsetGroup.fieldsets">
<a ng-click="pickFieldset(fieldset.alias, overlayMenu.index)" href>
<i class="icon {{fieldset.icon}}"></i>
{{fieldset.label}}
</a>
</li>
</ul>
</div>
<div class="fieldsetPreviewClose">
<a href ng-click="closeFieldsetPreview()"><archetype-localize key="previewFieldsetClose">(close preview)</archetype-localize></a>
</div>
</div>
</div>
</div>
</div>
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "Archetype",
"version": "1.13.1",
"version": "1.14.1",
"url": "http://github.com/imulus/archetype/",
"author": "Imulus - Kevin Giszewski - Tom Fulton - Lee Kelleher - Matt Brailsford - Kenn Jacobsen - Et. Al.",
"authorUrl": "http://imulus.com/",