Browse Source

Merge branch 'master' of git.fakecake.org:tt-rss

Andrew Dolgov 8 years ago
parent
commit
978eb54582

+ 4 - 4
js/viewfeed.js

@@ -236,9 +236,8 @@ function render_article(article) {
 			c.domNode.scrollTop = 0;
 		} catch (e) { };
 
-		PluginHost.run(PluginHost.HOOK_ARTICLE_RENDERED, article);
-
 		c.attr('content', article);
+		PluginHost.run(PluginHost.HOOK_ARTICLE_RENDERED, c.domNode);
 
 		correctHeadlinesOffset(getActiveArticleId());
 
@@ -1231,10 +1230,11 @@ function unpackVisibleHeadlines() {
 					var cencw = $("CENCW-" + child.id.replace("RROW-", ""));
 
 					if (cencw) {
-						PluginHost.run(PluginHost.HOOK_ARTICLE_RENDERED_CDM, child);
-
 						cencw.innerHTML = htmlspecialchars_decode(cencw.innerHTML);
 						cencw.setAttribute('id', '');
+
+						PluginHost.run(PluginHost.HOOK_ARTICLE_RENDERED_CDM, child);
+
 						Element.show(cencw);
 					}
 				}

+ 40 - 0
plugins/af_zz_noautoplay/init.js

@@ -0,0 +1,40 @@
+dojo.addOnLoad(function() {
+	PluginHost.register(PluginHost.HOOK_ARTICLE_RENDERED_CDM, function(row) {
+		if (row) {
+			console.log("af_zz_noautoplay!");
+			console.log(row);
+
+			var videos = row.getElementsByTagName("video");
+			console.log(row.innerHTML);
+
+			for (i = 0; i < videos.length; i++) {
+
+				videos[i].removeAttribute("autoplay");
+				videos[i].pause();
+				videos[i].onclick = function() {
+					this.paused ? this.play() : this.pause();
+				}
+			}
+		}
+
+		return true;
+	});
+
+	PluginHost.register(PluginHost.HOOK_ARTICLE_RENDERED, function(row) {
+		if (row) {
+			var videos = row.getElementsByTagName("video");
+
+			for (i = 0; i < videos.length; i++) {
+				videos[i].removeAttribute("autoplay");
+				videos[i].pause();
+				videos[i].onclick = function() {
+					this.paused ? this.play() : this.pause();
+				}
+			}
+
+		}
+
+		return true;
+	});
+
+});

+ 24 - 0
plugins/af_zz_noautoplay/init.php

@@ -0,0 +1,24 @@
+<?php
+class Af_Zz_NoAutoPlay extends Plugin {
+	private $host;
+
+	function about() {
+		return array(1.0,
+			"Don't autoplay HTML5 videos",
+			"fox");
+	}
+
+	function init($host) {
+		$this->host = $host;
+	}
+
+	function get_js() {
+		return file_get_contents(__DIR__ . "/init.js");
+	}
+
+	function api_version() {
+		return 2;
+	}
+
+}
+?>

+ 2 - 2
plugins/instances/init.php

@@ -226,7 +226,7 @@ class Instances extends Plugin implements IHandler {
 		print __("Access key:") . " ";
 
 		print "<input dojoType=\"dijit.form.ValidationTextBox\" required=\"1\"
-			placeHolder=\"".__("Access key")."\" regExp='\w{40}'
+			placeHolder=\"".__("Access key")."\"
 			style=\"width: 20em\" name=\"access_key\" id=\"instance_edit_key\"
 			value=\"$access_key\">";
 
@@ -414,7 +414,7 @@ class Instances extends Plugin implements IHandler {
 		print __("Access key:") . " ";
 
 		print "<input dojoType=\"dijit.form.ValidationTextBox\" required=\"1\"
-			placeHolder=\"".__("Access key")."\" regExp='\w{40}'
+			placeHolder=\"".__("Access key")."\"
 			style=\"width: 20em\" name=\"access_key\" id=\"instance_add_key\"
 			value=\"$access_key\">";
 

+ 2 - 0
plugins/shorten_expanded/init.js

@@ -41,5 +41,7 @@ dojo.addOnLoad(function() {
 				}
 			}, 150);
 		}
+
+		return true;
 	});
 });