aboutsummaryrefslogtreecommitdiff
path: root/content/sabc_aus
diff options
context:
space:
mode:
authorjahoti <jahoti@tilde.team>2021-08-15 00:00:00 +0000
committerjahoti <jahoti@tilde.team>2021-08-15 00:00:00 +0000
commitd104aaf3ebcddfbda495bdfe3ba3a905f75b936f (patch)
treef617204baeb4919cd1bad2cf3e302acf3ef7116f /content/sabc_aus
parent428c474c4c71ef4c7961070d4246017d15aa0c0c (diff)
downloadhaketilo-fixes-demo-d104aaf3ebcddfbda495bdfe3ba3a905f75b936f.tar.gz
haketilo-fixes-demo-d104aaf3ebcddfbda495bdfe3ba3a905f75b936f.zip
Port existing fixes from hachette_fixes_tmp to Hydrilla format
Diffstat (limited to 'content/sabc_aus')
-rw-r--r--content/sabc_aus/abc_aus.js61
-rw-r--r--content/sabc_aus/index.json6
2 files changed, 67 insertions, 0 deletions
diff --git a/content/sabc_aus/abc_aus.js b/content/sabc_aus/abc_aus.js
new file mode 100644
index 0000000..9ad1cb0
--- /dev/null
+++ b/content/sabc_aus/abc_aus.js
@@ -0,0 +1,61 @@
+/*
+ Copyright © 2021 jahoti (jahoti@tilde.team)
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+
+var pages = ['ABC News'], comp, wrapper, heading, section, cards, card, text,
+ home = ['Home'], comps = document.getElementById('content').children;
+
+pages.push(home);
+for (i = 0; i < comps.length; i++) {
+ comp = comps[i];
+ card = undefined;
+ if (!comp.dataset.component) continue;
+
+ heading = comp.querySelector('[data-component="Heading"], [data-component="CollectionHeading"]');
+ heading = heading ? heading.innerText : 'Featured';
+ if (heading === 'Top Stories from ABC News') heading = 'Top Stories';
+
+ wrapper = document.createElement('div');
+ pages.push(['* ' + heading, wrapper])
+
+ for (card of comp.querySelectorAll('[data-component$=Card]')) {
+ text = card.innerText; //HTML.replace(/<[^<]*>/g, '\n').replace(/\n\n+/g, '\n').replace(/^\n/, '');
+ section = document.createElement('section');
+ wrapper.append(section);
+
+ heading = document.createElement('a');
+ heading.href = card.querySelector('a').href;
+ heading.style.display = 'block';
+ heading.style.fontWeight = 'bold';
+ section.append(heading);
+
+ var index = text.indexOf('\n');
+ if (index === -1) wrapper.innerText = text;
+ else {
+ heading.innerText = text.substr(0, index);
+ link = document.createElement('p'); // Reuse or abuse?
+ link.innerText = text.substr(index + 1);
+ section.append(link);
+ }
+ }
+
+ if (!card) pages.pop();
+ else if (i < 3) home.push(wrapper);
+}
+
+pages.push(['Just in', '/news/justin']);
+pages.push(['Ed. Standards', 'https://about.abc.net.au/how-the-abc-is-run/what-guides-us/abc-editorial-standards/'])
+pages.push(['Footer', document.querySelector('[data-component="Footer"]')]);
+Sparse(pages, {bgcolor: 'pink'}); \ No newline at end of file
diff --git a/content/sabc_aus/index.json b/content/sabc_aus/index.json
new file mode 100644
index 0000000..038bb5a
--- /dev/null
+++ b/content/sabc_aus/index.json
@@ -0,0 +1,6 @@
+{
+"type" : "script",
+"name" : "ABC Aus",
+"sha256" : "78f7ba7acbe53b172a1a4cbf2e045dae2c4d3a12a021414d1a6706ac356da3d4",
+"location" : "abc_aus.js"
+} \ No newline at end of file