X-Git-Url: http://git.shiar.nl/sheet.git/blobdiff_plain/fa43237a3eb6cc3f399fd3b2584ef6152a07dc1e..133e96335267b12bb7e97d9bbe551a3a043bd32a:/word/finder.js?ds=sidebyside
diff --git a/word/finder.js b/word/finder.js
index 630db8e..fffc552 100644
--- a/word/finder.js
+++ b/word/finder.js
@@ -1,14 +1,4 @@
class WordFinder extends WordQuiz {
- namehtml(name) {
- let aliases = name.split('/');
- let html = aliases.shift();
- html = html.replace(/\((.+)\)/, '$1');
- for (let alias of aliases) {
- html += ` (${alias})`;
- }
- return html;
- }
-
add(catitem, rows) {
rows.forEach(word => {
if (!word) return;
@@ -19,26 +9,44 @@ class WordFinder extends WordQuiz {
}
if (word.title) {
put(figitem, 'figcaption', {
- innerHTML: this.namehtml(word.title),
+ innerHTML: word.html,
});
}
+ if (this.preset.debug) {
+ put(figitem, '[title=$]', `id ${word.id} level ${word.level}`);
+ }
put(worditem, '.level' + word.level);
+ if (!word.subs.length) {
+ return;
+ }
if (word.level <= 1 && word.subs.length >= 4) {
put(worditem, '.large');
}
- if (word.subs.length) {
+ if (true) {
// delve into subcategory
put(worditem, '.parent');
- this.add(put(worditem, 'ul'), word.subs);
- }
- if (this.preset.debug) {
- put(figitem, '[title=$]', `id ${ref} level ${word.level}`);
+ const expansion = put(worditem, 'ul');
+ this.add(expansion, word.subs);
}
+
+ // hide or reselect subcategories
+ put(figitem, '[data-sup=$]', word.subs.length);
+ figitem.onclick = () => {
+ let expansion;
+ if (expansion = worditem.querySelector('ul')) {
+ put(expansion, '!');
+ put(worditem, '.expand');
+ return;
+ }
+ expansion = put(worditem, 'ul');
+ this.add(expansion, word.subs);
+ put(worditem, '!expand');
+ };
});
}
configure(input) {
- this.preset.level = 3;
+ this.preset.level = 1;
this.preset.images = false;
return super.configure(input);
}