|
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
|
<title>Turtle Blocks JS</title>
|
|
|
|
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, viewport-fit=cover"/>
|
|
<link rel="stylesheet" href="css/activity.css">
|
|
|
|
<script>if (typeof module === 'object') {window.module = module; module = undefined;}</script>
|
|
<script src="lib/p5.min.js"></script>
|
|
<script src="lib/p5.sound.min.js"></script>
|
|
<script src="lib/p5.dom.min.js"></script>
|
|
<script src="lib/mespeak.js"></script>
|
|
<script src="lib/reqwest.js"></script>
|
|
<script src="lib/jquery-2.1.4.js"></script>
|
|
<script src="lib/jquery-ui.js"></script>
|
|
<script src="lib/webL10n.js"></script>
|
|
<script>if (window.module) module = window.module;</script>
|
|
|
|
<link rel="prefetch" type="application/l10n" href="./localization.ini" />
|
|
|
|
<script data-main="js/loader" src="lib/require.js"> </script>
|
|
|
|
<link rel="manifest" href="android_chrome_manifest.json">
|
|
<meta name="mobile-web-app-capable" content="yes">
|
|
|
|
<link rel="icon" sizes="192x192" href="activity/activity-icon-color-4-00.png">
|
|
<meta id="theme-color" name="theme-color" content="#2196F3">
|
|
</head>
|
|
|
|
<body id="body" style="background: #92B5C8;"> <!-- #96D3F3;"> -->
|
|
|
|
<!-- see activity/activity-icon-color-loading.svg for info -->
|
|
<div id="loading-image-container" style="position: absolute; width: 100%; height: 100%;">
|
|
<img src='data:image/svg+xml;base64,PHN2ZyBzdHJva2Utd2lkdGg9IjEuNSIgZmlsbD0iI2ZmZiIgc3Ryb2tlPSIjMDAwIiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDU1IDU1IiB3aWR0aD0iMTAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0ibTUzLjQ4IDI4LjMxYy0uMjA5LTEuNTQ0LS42ODQtMy45NjMtMi40MzUtNC43OTktMS4xMS0uNTI5LTcuMTguNTM2LTExLjMxNi41ODguMTQ1IDIuNDg4LS43NzggNS4xNTUtMy45NCA5LjgwOS0xLjg4NiAzLjI0Mi0xMC40MTEgMy41MTYtMTAuOCAzLjQ5NGwtMjMuNTU4LS4xMDNjMS4xNjkgMS42NDggMy42ODYgMy43NjIgNi40NjcgNC4xMTItLjc0Ni42NTgtMy4wOTggMy4yNzctMy4yNzMgNi42ODEtLjAwNS4wNzYuMDAyLjQwOSAwIC40MDloNy40MzRjLjI1NS0xLjg1My45NzYtNS4yNzMgMi44OTYtNi41MTQgMS40MzItLjAwOCAyLjczOC0uMTY3IDMuNzU3LS4xMTYgMi4zNTIuMTE3IDcuMTEzLS4wNDcgMTAuMzE1LS4yNzYuMDI0LjAxMy4wMzkuMjczLjA2NC4yODggMi4wOTMgMS4xMDcgMi44NTMgNC43NjYgMy4xMTkgNi42MTloNy40MzRjLS4wMDEgMCAuMDA2LS4zMzQuMDAxLS40MDktLjE3My0zLjM2Mi0zLjE0NC02LjU2OS00LjE0Ny03LjUxMyAyLjgzNy0xLjI2MSA3LjEyMy01LjQ1OSA4LjI0My02LjY3OC4yOTUtLjMxOSAxLjM5MS0xLjY3OSAyLjIyNi0yLjMwMy43ODMtLjU4NSAzLjMzOC0uODk0IDQuMjk3LS45MzYuOTYxLS4wNDIgMyAuNDA4IDMgLjQwOCAwIDAgLjMwNy0yLjA2LjIxLTIuNzYzeiIgc3Ryb2tlLXdpZHRoPSIxLjkyNSIvPjxjaXJjbGUgY3k9IjM3LjIyIiByPSIxLjEwOSIgc3Ryb2tlLXdpZHRoPSIxLjE4NyIgY3g9IjU5LjQ4IiB0cmFuc2Zvcm09Im1hdHJpeCguOTI2NCAwIDAgLjkyNjQtNi45MTUtOC4zMDkpIi8+PGcgc3Ryb2tlLXdpZHRoPSIxLjkyNSIgdHJhbnNmb3JtPSJtYXRyaXgoMS4wMzIwOSAwIDAgLjk5OTA1LS4xODQuMDI0KSI+PHBhdGggZD0ibTEwLjU3MiAzNi45Mmw1Ljc5OC0xNC4xNS01LjAxLTUuNTM1Yy0xLjQyMyAxLjcxOC0yLjQ4MSAzLjcxMS0yLjgxNSA1LjA1LS40NTEgMS43OTggMCA3Ljk2My41ODYgMTAuMTQ0bC0yLjgxOCA0LjU3MiA0LjA1MS0uMTQ4eiIgZmlsbD0iIzE4NmRlZSI+PGFuaW1hdGUgdmFsdWVzPSIjMTg2ZGVlOyNmZmI1MDQ7I2Q4NDMyZTsjMDA5YTU3OyMxODZkZWUiIGF0dHJpYnV0ZVR5cGU9IkNTUyIgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiIGR1cj0iNHMiIGF0dHJpYnV0ZU5hbWU9ImZpbGwiLz48L3BhdGg+PHBhdGggZD0ibTE1LjgyNyAyMy4xNGwxMi42NDctLjMyNCAzLjExOS0zLjk3NmMtLjg3LTEuMjk5LTIuMDEtMi41NTgtMy40NzYtMy4zMTUtNC4zNTYtMi4yNTctOC4yNjktMy4xMS0xMy45NjYtLjI4MS0xLjMxMi42NTItMS45NjEgMS4xNTItMi43NzMgMS45MzV6IiBmaWxsPSIjZmZiNTA0Ij48YW5pbWF0ZSB2YWx1ZXM9IiNmZmI1MDQ7I2Q4NDMyZTsjMDA5YTU3OyMxODZkZWU7I2ZmYjUwNCIgYXR0cmlidXRlVHlwZT0iQ1NTIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgZHVyPSI0cyIgYXR0cmlidXRlTmFtZT0iZmlsbCIvPjwvcGF0aD48cGF0aCBkPSJtMjguODI4IDIyLjk0NWwtMTIuNDc3LjEwNS01LjY0NyAxNC4wOCAxOC4zOTEuMjA1YzMuNTA0LS4xMzUgNC41LTEuMDMyIDUuNDYyLTEuOTYzeiIgZmlsbD0iIzAwOWE1NyI+PGFuaW1hdGUgdmFsdWVzPSIjMDA5YTU3OyMxODZkZWU7I2ZmYjUwNDsjZDg0MzJlOyMwMDlhNTciIGF0dHJpYnV0ZVR5cGU9IkNTUyIgcmVwZWF0Q291bnQ9ImluZGVmaW5pdGUiIGR1cj0iNHMiIGF0dHJpYnV0ZU5hbWU9ImZpbGwiLz48L3BhdGg+PHBhdGggZD0ibTM0Ljk4MSAyMy43NjZjMCAwLTIuMDEtMi41MDUtMy4wOTgtNC40NDFsLTIuOTAyIDMuNzAxIDUuMzc1IDEyLjU1N2MuOTA4LS42MTYgMi4yNTYtMi41MTIgMi44OTgtMy40OTIgMi40MTktMy4yMzggMi42OTMtNy45OTkgMi42OTMtNy45OTl6IiBmaWxsPSIjZDg0MzJlIj48YW5pbWF0ZSB2YWx1ZXM9IiNkODQzMmU7IzAwOWE1NzsjMTg2ZGVlOyNmZmI1MDQ7I2Q4NDMyZSIgYXR0cmlidXRlVHlwZT0iQ1NTIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgZHVyPSI0cyIgYXR0cmlidXRlTmFtZT0iZmlsbCIvPjwvcGF0aD48L2c+PC9zdmc+'
|
|
style="max-width:50%; width: 512px; margin: auto; display: block;"/>
|
|
</div>
|
|
|
|
<div id="popdown-palette"></div>
|
|
|
|
<div id="main-toolbar" class="toolbar">
|
|
<button style="display:none;" class="toolbutton" id="activity-button" title="My Activity"></button>
|
|
<button style="display:none;" class="toolbutton pull-right" id="stop-button" title="Stop"></button>
|
|
</div>
|
|
|
|
<div id="loader"></div>
|
|
|
|
<div id="header" class="EaselJS">
|
|
</div>
|
|
|
|
<div class="planet" style="display: none;">
|
|
<nav>
|
|
<div class="nav-container">
|
|
<img src="header-icons/planet-button.svg" class="logo" />
|
|
<h1 id="planetTitle"></h1>
|
|
<ul>
|
|
<li class="back"><img src="header-icons/cancel-button.svg" /></li>
|
|
<li class="new"><img src="header-icons/add.svg" /></li>
|
|
<li class="open"><img src="header-icons/folder-open.svg" /></li>
|
|
</ul>
|
|
</div>
|
|
</nav>
|
|
|
|
<div class="nav-spacer"></div>
|
|
<div class="planet-content">
|
|
<h2 id="planetMyDevice"></h2>
|
|
<ul class="content l"></ul>
|
|
|
|
<h2 id="planetWorldwide"></h2>
|
|
<ul class="content w"></ul>
|
|
</div>
|
|
</div> <!-- planet -->
|
|
|
|
<canvas id="canvas" width="3790" height="1743"style="background-color:#92B5C8; width:100%">
|
|
</canvas>
|
|
|
|
<!--hidden at the beginning whilst everything loads-->
|
|
<div id="hideContents" style="display: none;">
|
|
<div class="canvasHolder" id="canvasHolder">
|
|
<canvas id="myCanvas" width="1200" height="900"></canvas>
|
|
<canvas id="overlayCanvas" width="1200" height="900" style="position:absolute;pointer-events:none;left:0;top:0;z-index:-100;visibility:hidden;"></canvas>
|
|
<canvas id="myChart" width="600" height="600"></canvas>
|
|
<video id="camVideo" style="visibility:hidden;"></video>
|
|
<canvas id="camCanvas" style="visibility:hidden;"></canvas>
|
|
|
|
<div id="labelDiv"></div>
|
|
|
|
<div id="ioDiv">
|
|
<input class="file" tabindex="-1" type="file" id="myMedia" accept="image/*"/>
|
|
<input class="file" tabindex="-1" type="file" id="myOpenFile" accept=".ta, .tb"/>
|
|
<input class="file" tabindex="-1" type="file" id="myOpenPlugin" accept=".json"/>
|
|
<input class="file" tabindex="-1" type="file" id="myOpenAll" />
|
|
<!-- <input class="file" type="file" id="mySaveFile" accept=".ta, .tb" nwsaveas="turtle-project.tb" /> -->
|
|
</div>
|
|
<div id="audio"></div>
|
|
<div id="tourData"></div>
|
|
</div> <!-- canvasHolder -->
|
|
|
|
<div id="statusDiv" draggable="false">
|
|
<div id="statusButtonsDiv">
|
|
</div>
|
|
|
|
<div id="statusTableDiv">
|
|
</div>
|
|
</div>
|
|
|
|
<div id="helpElem"></div>
|
|
<div id="description"></div>
|
|
</div> <!-- hideContents -->
|
|
</body>
|
|
</html>
|