*
*/
+/*
+ * test: SO x Browser
+ * Values: Y: works, N: not works, @: continuous download,
+ * D: continuous download after first reload
+ *
+ * Stream IFRAME:
+ *
+ * Iframe| IW | FF | Ch | Op | Ko | IE
+ * ------+----+----+----+----+----+----
+ * Lnx | D | | @ | | @ | x
+ * Win | x | D | @ | @ | | D
+ * Mac | x | | | | |
+ *
+ *
+ * XHR | IW | FF | Ch | Op | Ko | IE
+ * ------+----+----+----+----+----+----
+ * Lnx | Y | | ^D | | Y | x
+ * Win | x | Y | Y | | | N
+ * Mac | x | | | | |
+ *
+ *
+ * HtmlFl| IW | FF | Ch | Op | Ko | IE
+ * ------+----+----+----+----+----+----
+ * Lnx | N | | | | N |
+ * Win | x | N | N | | | Y* (* seems delay between click and load of a new page)
+ * Mac | x | | | | |
+ *
+ *
+ */
+
+
class Transport_template {
function Transport_template() {
if ($step > 0)
$ret .= sprintf("last_clean = %d;\n", ($step-1));
$ret .= sprintf("
-window.onload = function () { if (xynt_streaming != \"ready\") { xynt_streaming.reload(); } };
+window.onload = function () { try { if (xynt_streaming != \"ready\") { xynt_streaming.transp.stopped = true; } } catch(e) { /* console.log(\"catcha\"); */ } };
</script>
</head>
<body>");
<script type=\"text/javascript\">
var xynt_streaming = \"ready\";", $base, $base);
$ret .= sprintf("
-window.onload = function () { if (xynt_streaming != \"ready\") { xynt_streaming.reload(); } };
+window.onload = function () { try { if (xynt_streaming != \"ready\") { xynt_streaming.reload(); } } catch(e) { /* console.log(\"catcha\"); */ } };
</script>
</head>
<body>");
class Transport_htmlfile extends Transport_iframe {
}
+class Transport {
+ function Transport()
+ {
+ }
+
+ static function create($transp)
+ {
+ if ($transp == 'xhr') {
+ return new Transport_xhr();
+ }
+ else if ($transp == 'htmlfile') {
+ return new Transport_htmlfile();
+ }
+ else {
+ return new Transport_iframe();
+ }
+ }
+}
?>
\ No newline at end of file