This commit is contained in:
Mark
2016-03-20 19:38:43 +01:00
2 changed files with 39 additions and 9 deletions
+4 -1
View File
@@ -1,4 +1,7 @@
<div class="wrapper">
<input type="checkbox" name="attr_import_data_present"><span>Import Data Present</span><br>
<input type="checkbox" name="attr_reject_import"><span>Reject</span><br>
<input type="checkbox" name="attr_accept_import"><span>Accept</span>
//= include components/header/firstLine.html
//= include components/header/header.html
//= include components/header/nav.html
@@ -20,4 +23,4 @@
</div>
<div class="small-label">Wiki: https://wiki.roll20.net/DnD5e_Shaped_Character_Sheet</div>
</div>
</div>
</div>
@@ -4798,18 +4798,45 @@ const sheetOpened = () => {
finalSetAttrs.version = currentVersion;
}
if(v.import_data) {
let importObject = JSON.parse(v.import_data);
Object.keys(importObject).forEach( key => {
finalSetAttrs[key] = importObject[key];
});
finalSetAttrs.import_data = '';
}
setFinalAttrs(v, finalSetAttrs);
});
};
const importData = () => {
getAttrs(['import_data'], v => {
if(v.import_data) {
const finalSetAttrs = {};
let importObject = JSON.parse(v.import_data);
if (importObject.npc) {
Object.keys(importObject.npc).forEach(key => {
finalSetAttrs[key] = importObject[key];
});
}
if(importObject.spells) {
importObject.spells.forEach(spell => {
const newRowId = generateRowID();
const repeatingString = `repeating_spell_${newRowId}_`;
Object.keys(spell).forEach(key => {
finalSetAttrs[`${repeatingString}${key}`] = spell[key];
});
});
}
finalSetAttrs.import_data = '';
finalSetAttrs.import_data_present = 'off';
setFinalAttrs(v, finalSetAttrs);
}
});
};
const deleteImportData = () => {
setFinalAttrs([], {import_data:'', import_data_present:'off'});
};
on('change:accept_import', importData);
on('change:reject_import', deleteImportData);
on('sheet:opened', () => {
sheetOpened();
});