show error when notes run on non-http, fix load order to make sure upcoming slide is correct when notes open (#278)

This commit is contained in:
hakimel 2013-01-23 11:04:04 -05:00
parent c1f14110a1
commit a7625a71d3
1 changed files with 48 additions and 33 deletions

View File

@ -83,17 +83,29 @@
font-size: 14px; font-size: 14px;
color: rgba( 255, 255, 255, 0.9 ); color: rgba( 255, 255, 255, 0.9 );
} }
.error {
font-weight: bold;
color: red;
font-size: 1.5em;
text-align: center;
margin-top: 10%;
}
.error code {
font-family: monospace;
}
</style> </style>
</head> </head>
<body> <body>
<div id="wrap-current-slide" class="slides"> <div id="wrap-current-slide" class="slides">
<iframe width="1280" height="1024" id="current-slide"></iframe> <script>document.write( '<iframe width="1280" height="1024" id="current-slide" src="'+ window.opener.location.href +'"></iframe>' );</script>
</div> </div>
<div id="wrap-next-slide" class="slides"> <div id="wrap-next-slide" class="slides">
<iframe width="640" height="512" id="next-slide"></iframe> <script>document.write( '<iframe width="640" height="512" id="next-slide" src="'+ window.opener.location.href +'"></iframe>' );</script>
<span>UPCOMING:</span> <span>UPCOMING:</span>
</div> </div>
<div id="notes"></div> <div id="notes"></div>
@ -102,11 +114,7 @@
<script> <script>
window.addEventListener( 'load', function() { window.addEventListener( 'load', function() {
// ASEEMK: fix for calling talk may not be at index.html. if( window.opener && window.opener.location && window.opener.location.href ) {
var iframes = document.querySelectorAll( '.slides iframe' );
[].slice.call(iframes).forEach(function (iframe) {
iframe.src = window.opener ? window.opener.location.href : '/';
});
(function( window, undefined ) { (function( window, undefined ) {
var notes = document.getElementById( 'notes' ), var notes = document.getElementById( 'notes' ),
@ -142,6 +150,13 @@
})( window ); })( window );
}
else {
document.body.innerHTML = '<p class="error">Unable to access <code>window.opener.location</code>.<br>Make sure the presentation is running on a web server.</p>';
}
}, false ); }, false );
</script> </script>