Merge branch '051-fixSpellProperties' into 'master'

Resolve "Basic properties for spells are broken (in german i18n)"

Closes #51

See merge request dungeonslayers/ds4!51
This commit is contained in:
Johannes Loher 2021-01-18 20:52:58 +01:00
commit 878c2c9994
8 changed files with 56 additions and 33 deletions

View file

@ -8,6 +8,7 @@
@import "scss/global/window"; @import "scss/global/window";
@import "scss/global/grid"; @import "scss/global/grid";
@import "scss/global/flex"; @import "scss/global/flex";
@import "scss/global/accessibility";
/* Styles limited to ds4 sheets */ /* Styles limited to ds4 sheets */
.ds4 { .ds4 {

View file

@ -1,6 +1,7 @@
.basic-properties { .basic-properties {
flex: 0 0 100%; flex: 0 0 100%;
gap: 2px; grid-gap: 2px;
grid-template-columns: repeat(auto-fill, minmax(9em, 1fr));
.basic-property { .basic-property {
display: grid; display: grid;
align-content: end; align-content: end;

View file

@ -11,7 +11,7 @@
font-family: $font-heading; font-family: $font-heading;
display: block; display: block;
height: 50px; height: 50px;
padding: 0px; padding: 0;
color: $c-light-grey; color: $c-light-grey;
border: none; border: none;
line-height: 50px; line-height: 50px;

View file

@ -9,7 +9,7 @@
.side-property { .side-property {
margin: 2px 0; margin: 2px 0;
display: grid; display: grid;
grid-template-columns: 40% auto; grid-template-columns: minmax(40%, max-content) 1fr;
justify-content: left; justify-content: left;
label { label {

View file

@ -0,0 +1,3 @@
.hidden {
display: none;
}

View file

@ -1,55 +1,71 @@
<form class="{{cssClass}} flexcol" autocomplete="off"> <form class="{{cssClass}} flexcol" autocomplete="off">
{{!-- Sheet Header --}} {{!-- Sheet Header --}}
<header class="sheet-header"> <header class="sheet-header">
<img class="profile-img" src="{{actor.img}}" data-edit="img" title="{{actor.name}}" height="100" width="100" /> <img class="profile-img" src="{{actor.img}}" data-edit="img" alt="Actor Icon" title="{{actor.name}}"
height="100" width="100" />
<div class="header-fields flexrow"> <div class="header-fields flexrow">
<h1 class="charname"><input name="name" type="text" value="{{actor.name}}" placeholder="Name" /></h1> <h1 class="charname">
<label for="actor.name" class="hidden">Name</label>
<input name="name" type="text" id="actor.name" value="{{actor.name}}" placeholder="Name" />
</h1>
{{> systems/ds4/templates/actor/partials/character-progression.hbs}} {{> systems/ds4/templates/actor/partials/character-progression.hbs}}
<div class="flexrow basic-properties"> <div class="flexrow basic-properties">
<div class="basic-property"> <div class="basic-property">
<label class="basic-property-label" <label class="basic-property-label"
for="data.baseInfo.race">{{config.characterBaseInfo.race}}</label> for="data.baseInfo.race">{{config.characterBaseInfo.race}}</label>
<input type="text" name="data.baseInfo.race" value="{{data.baseInfo.race}}" data-dtype="String" /> <input type="text" name="data.baseInfo.race" id="data.baseInfo.race" value="{{data.baseInfo.race}}"
data-dtype="String" />
</div> </div>
<div class="basic-property"> <div class="basic-property">
<label class="basic-property-label" <label class="basic-property-label"
for="data.baseInfo.culture">{{config.characterBaseInfo.culture}}</label> for="data.baseInfo.culture">{{config.characterBaseInfo.culture}}</label>
<input type="text" name="data.baseInfo.culture" value="{{data.baseInfo.culture}}" <input id="data.baseInfo.culture" type="text" name="data.baseInfo.culture"
data-dtype="String" /> value="{{data.baseInfo.culture}}"
data-dtype="String" />
</div> </div>
<div class="basic-property flex125"> <div class="basic-property flex125">
<label class="basic-property-label" <label class="basic-property-label"
for="data.progression.progressPoints.used">{{config.characterProgression.progressPoints}}</label> for="data.progression.progressPoints.used">{{config.characterProgression.progressPoints}}</label>
<div class="flexrow"> <div class="flexrow">
<input type="number" name="data.progression.progressPoints.used" <input id="data.progression.progressPoints.used" type="number"
value="{{data.progression.progressPoints.used}}" data-dtype="Number" /><span name="data.progression.progressPoints.used"
class="input-divider"> / value="{{data.progression.progressPoints.used}}" data-dtype="Number" />
</span><input type="number" name="data.progression.progressPoints.total" <span class="input-divider"> / </span>
value="{{data.progression.progressPoints.total}}" data-dtype="Number" /> <label class="hidden" for="data.progression.progressPoints.total">Total
Progression Points</label>
<input type="number"
id="data.progression.progressPoints.total"
name="data.progression.progressPoints.total"
value="{{data.progression.progressPoints.total}}"
data-dtype="Number" />
</div> </div>
</div> </div>
<div class="basic-property flex125"> <div class="basic-property flex125">
<label class="basic-property-label" <label class="basic-property-label"
for="data.progression.talentPoints.used">{{config.characterProgression.talentPoints}}</label> for="data.progression.talentPoints.used">{{config.characterProgression.talentPoints}}</label>
<div class="flexrow"> <div class="flexrow">
<input type="number" name="data.progression.talentPoints.used" <input type="number" name="data.progression.talentPoints.used"
value="{{data.progression.talentPoints.used}}" data-dtype="Number" /><span id="data.progression.talentPoints.used"
class="input-divider"> / value="{{data.progression.talentPoints.used}}" data-dtype="Number" />
</span><input type="number" name="data.progression.talentPoints.total" <span class="input-divider"> / </span>
value="{{data.progression.talentPoints.total}}" data-dtype="Number" /> <label for="data.progression.talentPoints.total" class="hidden">Total Talent Points</label>
<input type="number" name="data.progression.talentPoints.total" id="data.progression.talentPoints.total"
value="{{data.progression.talentPoints.total}}" data-dtype="Number" />
</div> </div>
</div> </div>
<div class="basic-property"> <div class="basic-property">
<label class="basic-property-label" <label class="basic-property-label"
for="data.baseInfo.class">{{config.characterBaseInfo.class}}</label> for="data.baseInfo.class">{{config.characterBaseInfo.class}}</label>
<input type="text" name="data.baseInfo.class" value="{{data.baseInfo.class}}" data-dtype="String" /> <input type="text" id="data.baseInfo.class" name="data.baseInfo.class"
value="{{data.baseInfo.class}}" data-dtype="String" />
</div> </div>
<div class="basic-property"> <div class="basic-property">
<label class="basic-property-label" <label class="basic-property-label"
for="data.baseInfo.heroClass">{{config.characterBaseInfo.heroClass}}</label> for="data.baseInfo.heroClass">{{config.characterBaseInfo.heroClass}}</label>
<input type="text" name="data.baseInfo.heroClass" value="{{data.baseInfo.heroClass}}" <input type="text" id="data.baseInfo.heroClass" name="data.baseInfo.heroClass"
data-dtype="String" /> value="{{data.baseInfo.heroClass}}"
data-dtype="String" />
</div> </div>
</div> </div>
</div> </div>

View file

@ -2,14 +2,16 @@
<div class="progression-entry"> <div class="progression-entry">
<h2 class="progression-label"><label for="data.progression.level">{{config.characterProgression.level}}</label> <h2 class="progression-label"><label for="data.progression.level">{{config.characterProgression.level}}</label>
</h2> </h2>
<input class="progression-value" type="number" name="data.progression.level" value="{{data.progression.level}}" <label for="data.progression.level" class="hidden">Progression Level</label>
<input class="progression-value" type="number" name="data.progression.level" id="data.progression.level" value="{{data.progression.level}}"
data-dtype="Number" /> data-dtype="Number" />
</div> </div>
<div class="progression-entry"> <div class="progression-entry">
<h2 class="progression-label"><label <h2 class="progression-label"><label
for="data.progression.experiencePoints">{{config.characterProgression.experiencePoints}}</label> for="data.progression.experiencePoints">{{config.characterProgression.experiencePoints}}</label>
</h2> </h2>
<input class="progression-value" type="number" name="data.progression.experiencePoints" <label for="data.progression.experiencePoints" class="hidden">Experience Points</label>
<input class="progression-value" type="number" name="data.progression.experiencePoints" id="data.progression.experiencePoints"
value="{{data.progression.experiencePoints}}" data-dtype="Number" /> value="{{data.progression.experiencePoints}}" data-dtype="Number" />
</div> </div>
</div> </div>

View file

@ -28,10 +28,10 @@
<form class="{{cssClass}}" autocomplete="off"> <form class="{{cssClass}}" autocomplete="off">
{{#> systems/ds4/templates/item/partials/sheet-header.hbs}} {{#> systems/ds4/templates/item/partials/sheet-header.hbs}}
<div class="grid grid-4col basic-properties"> <div class="grid basic-properties">
<div class="basic-property"> <div class="basic-property">
<label for="data.spellType">{{localize "DS4.SpellType"}}</label> <label for="data.spellType">{{localize "DS4.SpellType"}}</label>
<select name="data.spellType" data-type="String"> <select id="data.spellType" name="data.spellType" data-type="String">
{{#select data.spellType}} {{#select data.spellType}}
{{#each config.spellTypes as |value key|}} {{#each config.spellTypes as |value key|}}
<option value="{{key}}">{{value}}</option> <option value="{{key}}">{{value}}</option>
@ -41,7 +41,7 @@
</div> </div>
<div class="basic-property"> <div class="basic-property">
<label for="data.bonus">{{localize "DS4.SpellBonus"}}</label> <label for="data.bonus">{{localize "DS4.SpellBonus"}}</label>
<input type="text" name="data.bonus" value="{{data.bonus}}" data-dtype="String" /> <input id="data.bonus" type="text" name="data.bonus" value="{{data.bonus}}" data-dtype="String" />
</div> </div>
</div> </div>
{{/systems/ds4/templates/item/partials/sheet-header.hbs}} {{/systems/ds4/templates/item/partials/sheet-header.hbs}}
@ -50,7 +50,7 @@
{{#> systems/ds4/templates/item/partials/body.hbs}} {{#> systems/ds4/templates/item/partials/body.hbs}}
<div class="side-property"> <div class="side-property">
<label for="data.spellCategory">{{localize "DS4.SpellCategory"}}</label> <label for="data.spellCategory">{{localize "DS4.SpellCategory"}}</label>
<select name="data.spellCategory" data-type="String"> <select id="data.spellCategory" name="data.spellCategory" data-type="String">
{{#select data.spellCategory}} {{#select data.spellCategory}}
{{#each config.spellCategories as |value key|}} {{#each config.spellCategories as |value key|}}
<option value="{{key}}">{{value}}</option> <option value="{{key}}">{{value}}</option>
@ -65,7 +65,7 @@
<div class="side-property"> <div class="side-property">
<label for="data.scrollPrice">{{localize "DS4.SpellScrollPriceGold"}}</label> <label for="data.scrollPrice">{{localize "DS4.SpellScrollPriceGold"}}</label>
<input type="number" min="0" max="9999" step="0.01" data-dtype="Number" <input type="number" min="0" max="9999" step="0.01" data-dtype="Number"
name="data.scrollPrice" value="{{data.scrollPrice}}" /> name="data.scrollPrice" id="data.scrollPrice" value="{{data.scrollPrice}}" />
</div> </div>
{{/systems/ds4/templates/item/partials/body.hbs}} {{/systems/ds4/templates/item/partials/body.hbs}}