mirror of
https://github.com/pcvolkmer/onkostar-plugin-dnpm.git
synced 2025-07-01 17:02:53 +00:00
feat: add propcat and formfield for Studienkategorie
This commit is contained in:
38
scripts/studien-add-button.js
Normal file
38
scripts/studien-add-button.js
Normal file
@ -0,0 +1,38 @@
|
||||
let addText = function() {
|
||||
let v = getFieldValue('studienalle');
|
||||
let ie = getFieldValue('studieinternextern') == 'i' ? ' (intern)' : ' (extern)';
|
||||
v = v + getFieldValue('studienct') + '; ' + getFieldValue('studie') + ie + '; ' + getFieldValue('studieort') + '\n';
|
||||
setFieldValue('studienalle', v);
|
||||
}
|
||||
|
||||
var addJSON = function() {
|
||||
let v = [];
|
||||
try {
|
||||
v = JSON.parse(getFieldValue('studienallejson'));
|
||||
if (!Array.isArray(v)) {
|
||||
v = [];
|
||||
}
|
||||
} catch (e) {
|
||||
v = [];
|
||||
}
|
||||
v.push({
|
||||
studie: getFieldValue('studie'),
|
||||
system: getFieldValue('studiensystem'),
|
||||
// New: ID
|
||||
id: getFieldValue('studienct'),
|
||||
// Old: NCT (from NCT-ID)
|
||||
nct: getFieldValue('studienct'),
|
||||
ort: getFieldValue('studieort'),
|
||||
internextern: getFieldValue('studieinternextern')
|
||||
});
|
||||
setFieldValue('studienallejson', JSON.stringify(v));
|
||||
}
|
||||
|
||||
addText();
|
||||
addJSON();
|
||||
|
||||
setFieldValue('studie', '');
|
||||
setFieldValue('studiensystem', '');
|
||||
setFieldValue('studienct', '');
|
||||
setFieldValue('studieort', '');
|
||||
setFieldValue('studieinternextern', '');
|
26
scripts/studien-edit.js
Normal file
26
scripts/studien-edit.js
Normal file
@ -0,0 +1,26 @@
|
||||
let text = getFieldValue('studienalle');
|
||||
let json = [];
|
||||
let newJson = [];
|
||||
|
||||
try {
|
||||
json = JSON.parse(getFieldValue('studienallejson'));
|
||||
if (!Array.isArray(json)) {
|
||||
json = [];
|
||||
}
|
||||
} catch (e) {
|
||||
json = [];
|
||||
}
|
||||
|
||||
if (typeof text === 'string' || text instanceof String) {
|
||||
text.split('\n').forEach(line => {
|
||||
let id = line.split(';')[0];
|
||||
json.forEach(entry => {
|
||||
if (id === entry.nct) {
|
||||
newJson.push(entry);
|
||||
}
|
||||
});
|
||||
});
|
||||
setFieldValue('studienallejson', JSON.stringify(newJson));
|
||||
} else {
|
||||
setFieldValue('studienallejson', JSON.stringify([]));
|
||||
}
|
Reference in New Issue
Block a user