summaryrefslogtreecommitdiff
path: root/src/content/embeddingDocument.js
diff options
context:
space:
mode:
authorhackademix2018-09-03 19:20:39 +0200
committerhackademix2018-09-04 00:22:39 +0200
commit81ac052e1d1b0db924c9ef14a90bf22ce1dc4d8b (patch)
tree8e3f904e4cec2c0c8f6132dc0760994baae9fa65 /src/content/embeddingDocument.js
parent16cdbbe1cb7402ed795923128a4bc7bfb4415f1e (diff)
downloadnoscript-81ac052e1d1b0db924c9ef14a90bf22ce1dc4d8b.tar.gz
noscript-81ac052e1d1b0db924c9ef14a90bf22ce1dc4d8b.tar.xz
noscript-81ac052e1d1b0db924c9ef14a90bf22ce1dc4d8b.zip
Better file: protocol support.
Diffstat (limited to 'src/content/embeddingDocument.js')
-rw-r--r--src/content/embeddingDocument.js23
1 files changed, 15 insertions, 8 deletions
diff --git a/src/content/embeddingDocument.js b/src/content/embeddingDocument.js
index 75b0db0..eed04b1 100644
--- a/src/content/embeddingDocument.js
+++ b/src/content/embeddingDocument.js
@@ -1,18 +1,25 @@
if (ns.embeddingDocument) {
ns.on("capabilities", () => {
for (let policyType of ["object", "media"]) {
- if (!ns.allows(policyType)) {
- let request = {
- id: `noscript-${policyType}-doc`,
- type: policyType,
- url: document.URL,
- documentUrl: document.URL,
- embeddingDocument: true,
- };
+ let request = {
+ id: `noscript-${policyType}-doc`,
+ type: policyType,
+ url: document.URL,
+ documentUrl: document.URL,
+ embeddingDocument: true,
+ };
+
+ if (ns.allows(policyType)) {
+ let handler = PlaceHolder.handlerFor(policyType);
+ if (handler && handler.selectFor(request).length > 0) {
+ seen.record({policyType, request, allowed: true});
+ }
+ } else {
let ph = PlaceHolder.create(policyType, request);
if (ph.replacements.size > 0) {
debug(`Created placeholder for ${policyType} at ${document.URL}`);
seen.record({policyType, request, allowed: false});
+ break;
}
}
}