123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503 |
- <!DOCTYPE html>
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
- <head>
- <title>Untitled Document</title>
- <meta http-equiv="X-UA-Compatible" content="IE=edge"/>
- <meta http-equiv="content-type" content="text/html; charset=utf-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="apple-mobile-web-app-capable" content="yes" />
- <link type="text/css" href="resources/css/reset.css" rel="Stylesheet" />
- <link type="text/css" href="resources/css/default.css" rel="Stylesheet" />
- <!--<link href='https://fonts.googleapis.com/css?family=Nunito:300' rel='stylesheet' type='text/css'>-->
- <script type="text/javascript">
- if (location.href.toString().indexOf('file://localhost/') == 0) {
- location.href = location.href.toString().replace('file://localhost/', 'file:///');
- }
- </script>
- <script type="text/javascript" src="resources/scripts/jquery-1.7.1.min.js"></script>
- <script type="text/javascript" src="resources/scripts/player/splitter.js"></script>
- <script type="text/javascript" src="resources/scripts/axutils.js"></script>
- <script type="text/javascript" src="resources/scripts/player/axplayer.js"></script>
- <script type="text/javascript" src="resources/scripts/messagecenter.js"></script>
- <script type="text/javascript" src="data/document.js"></script>
- <style type="text/css">
- #outerContainer {
- width:1000px;
- height:1500px;
- }
- .vsplitbar {
- width: 3px;
- /*background: #B9B9B9;*/
- border-right: 1px solid #8f949a;
- }
- .vsplitbar:hover, .vsplitbar.active {
- background: #8f949a;
- }
- #rightPanel {
- background-color: White;
- }
- /*#leftPanel {
- min-width: 120px;
- }*/
- .splitterMask {
- position:absolute;
- top: 0;
- left: 0;
- width: 100%;
- height: 100%;
- overflow: hidden;
- background-image: url(resources/images/transparent.gif);
- z-index: 20000;
- }
- </style>
- <script type="text/javascript" language="JavaScript"><!--
- var SITEMAP_COLLAPSE_VAR_NAME = 'c';
- var PLUGIN_VAR_NAME = 'g';
- var FOOTNOTES_VAR_NAME = 'fn';
- var ADAPTIVE_VIEW_VAR_NAME = 'view';
- var lastLeftPanelWidth = 295;
- var toolBarOnly = true;
- // isolate scope
- (function() {
- setUpController();
-
- var configuration = $axure.document.configuration;
- var _settings = {};
- _settings.projectId = configuration.prototypeId;
- _settings.isAxshare = configuration.isAxshare;
- _settings.loadFeedbackPlugin = configuration.loadFeedbackPlugin;
- var cHash = getHashStringVar(SITEMAP_COLLAPSE_VAR_NAME);
- _settings.startCollapsed = cHash == "1";
- if(cHash == "2") closePlayer();
- var gHash = getHashStringVar(PLUGIN_VAR_NAME);
- if(gHash == "") gHash = 1;
- _settings.startPluginGid = gHash;
- $axure.player.settings = _settings;
- $(window).bind('load', function() {
- if(CHROME_5_LOCAL && !$('body').attr('pluginDetected')) {
- window.location = 'resources/chrome/chrome.html';
- }
- });
- $(document).ready(function() {
- $axure.page.bind('load.start', mainFrame_onload);
- $axure.messageCenter.addMessageListener(messageCenter_message);
- $(document).on('pluginShown', function (event, data) {
- setVarInCurrentUrlHash('g', data ? data : '');
- });
- $(document).on('pluginCreated', function(event, data) {
- if($axure.player.settings.startPluginGid == data) {
- $axure.player.showPlugin(data);
- }
- });
- if($axure.player.settings.loadFeedbackPlugin) {
- if($axure.player.settings.isAxshare) {
- $axure.utils.loadJS('/Scripts/plugins/feedback/feedback8.js');
- } else {
- $axure.utils.loadJS('http://share.axure.com/Scripts/plugins/feedback/feedback8.js');
- }
- }
- if(navigator.userAgent.indexOf("MSIE") >= 0) $('#outerContainer').width('100%');
- initialize();
- if($axure.player.settings.startCollapsed) $('#outerContainer').splitter({ sizeLeft: 0 });
- else $('#outerContainer').splitter({ sizeLeft: lastLeftPanelWidth });
- $('#leftPanel').width(lastLeftPanelWidth);
-
- $(window).resize(function() { resizeContent(); });
- $('#maximizePanelContainer').hide();
- initializeLogo();
- $(window).resize();
- resizeContent();
-
- $axure.player.collapseToBar();
- if($axure.player.settings.startCollapsed) {
- collapse();
- $('#leftPanel').width(0);
- }
- if(MOBILE_DEVICE) {
- $('#interfaceControlFrameMinimizeContainer').height('45px');
- $('#interfaceControlFrameMinimizeContainer a').height('45px');
- $('#interfaceControlFrameHeaderContainer').css('margin-top','45px');
- $('#interfaceControlFrameCloseContainer a').css('padding','10px 0px');
- $('#maximizePanelContainer').height('45px');//.css('top','inherit').css('bottom','0px');
- $('body').removeClass('hashover');
- if(IOS) {
- $('#rightPanel').css('overflow', 'auto').css('-webkit-overflow-scrolling', 'touch').css('-ms-overflow-x', 'hidden');
- window.addEventListener("orientationchange", function() {
- var viewport = document.querySelector("meta[name=viewport]");
- //so iOS doesn't zoom when switching back to portrait
- viewport.setAttribute('content', 'width=device-width, initial-scale=1.0, maximum-scale=1.0');
- viewport.setAttribute('content', 'width=device-width, initial-scale=1.0');
- resizeContent();
- }, false);
- $axure.page.bind('load.start', function() {
- resizeContent();
- });
- }
- }
- });
- function initialize() {
- var legacyQString = getQueryString("Page");
- if (legacyQString.length > 0) {
- location.href = location.href.substring(0, location.href.indexOf("?")) + "#p=" + legacyQString;
- return;
- }
- var mainFrame = document.getElementById("mainFrame");
- mainFrame.contentWindow.location.href = getInitialUrl();
- }
- function initializeLogo() {
- if($axure.document.configuration.logoImagePath) {
- var image = new Image();
- image.onload = function() {
- $('#logoImage').css('max-width', this.width + 'px');
- $axure.player.resizeContent();
- };
- image.src = $axure.document.configuration.logoImagePath;
-
- $('#interfaceControlFrameLogoImageContainer').html('<img id="logoImage" src="" />');
- $('#logoImage').attr('src', $axure.document.configuration.logoImagePath).load(function() { resizeContent(); });
- } else $('#interfaceControlFrameLogoImageContainer').hide();
- if ($axure.document.configuration.logoImageCaption) {
- $('#interfaceControlFrameLogoCaptionContainer').html($axure.document.configuration.logoImageCaption);
- } else $('#interfaceControlFrameLogoCaptionContainer').hide();
- if(!$('#interfaceControlFrameLogoImageContainer').is(':visible') && !$('#interfaceControlFrameLogoCaptionContainer').is(':visible')) {
- $('#interfaceControlFrameLogoContainer').hide();
- }
- }
- var resizeContent = $axure.player.resizeContent = function() {
- var newHeight = $(window).height();
- var newWidth = $(window).width();
- var controlContainerHeight = newHeight;// - 30;
- if($('#interfaceControlFrameLogoContainer').is(':visible')) controlContainerHeight -= $('#interfaceControlFrameLogoContainer').outerHeight();// + 16;
- $('#outerContainer').height(newHeight).width(newWidth);
- $('.vsplitbar').height(newHeight);
- $('#leftPanel').height(newHeight);
- $('#interfaceControlFrame').height(newHeight);
- $('#interfaceControlFrameContainer').height(newHeight);
- $('#interfaceControlFrameHostContainer').height(controlContainerHeight);
- $('#rightPanel').height(newHeight);
- $('#mainFrame').height(newHeight);
- if($('#leftPanel').is(':visible')) $('#rightPanel').width($(window).width() - $('#leftPanel').width() - 1);// $('.vsplitbar').width());
- else $('#rightPanel').width($(window).width());
- $(document).trigger('ContainerHeightChange',[controlContainerHeight]);
- if(MOBILE_DEVICE) {
- if(!(getHashStringVar(ADAPTIVE_VIEW_VAR_NAME).length > 0)) $axure.messageCenter.postMessage('setAdaptiveViewForSize', {'width':newWidth, 'height':$('#rightPanel').height()});
- }
- }
- var collapseToBar = $axure.player.collapseToBar = function() {
- lastLeftPanelWidth = $('#leftPanel').width();
- $('#leftPanel').width('55px');
- $('.vsplitbar').hide();
- $('#rightPanel').width($(window).width() - $('#leftPanel').width());
- $(window).resize();
- $('#outerContainer').trigger('resize');
- toolBarOnly = true;
- }
- var expandFromBar = $axure.player.expandFromBar = function() {
- if($('.vsplitbar').is(':visible')) return;
- $('#leftPanel').width(lastLeftPanelWidth);
- $('.vsplitbar').show();
- $('#rightPanel').width($(window).width() - $('#leftPanel').width() - 1);// $('.vsplitbar').width());
- $(window).resize();
- $('#outerContainer').trigger('resize');
- toolBarOnly = false;
- }
- })();
- function messageCenter_message(message, data) {
- if(message == 'expandFrame') expand();
- else if(message == 'getCollapseFrameOnLoad' && $axure.player.settings.startCollapsed && !MOBILE_DEVICE) $axure.messageCenter.postMessage('collapseFrameOnLoad');
- }
-
- function getInitialUrl() {
- var pageName = getHashStringVar("p");
- if(pageName.length > 0) return pageName + ".html";
- else {
- var url = getFirstPageUrl($axure.document.sitemap.rootNodes);
- return (url ? url : "about:blank");
- }
- }
- function getFirstPageUrl(nodes) {
- for (var i = 0; i < nodes.length; i++) {
- var node = nodes[i];
- if (node.url) return node.url;
- else {
- var hasChildren = (node.children && node.children.length > 0);
- if (hasChildren) {
- var url = getFirstPageUrl(node.children);
- if (url) return url;
- }
- }
- }
- return null;
- }
- function closePlayer() {
- if($axure.page.location) window.location.href = $axure.page.location;
- else {
- var pageFile = getInitialUrl();
- var currentLocation = window.location.toString();
- window.location.href = currentLocation.substr(0, currentLocation.lastIndexOf("/") + 1) + pageFile;
- }
- }
- function replaceHash(newHash) {
- var currentLocWithoutHash = window.location.toString().split('#')[0];
- //We use replace so that every hash change doesn't get appended to the history stack.
- //We use replaceState in browsers that support it, else replace the location
- if(typeof window.history.replaceState != 'undefined') {
- try {
- //Chrome 45 (Version 45.0.2454.85 m) started throwing an error here when generated locally (this only happens with sitemap open) which broke all interactions.
- //try catch breaks the url adjusting nicely when the sitemap is open, but all interactions and forward and back buttons work.
- //Uncaught SecurityError: Failed to execute 'replaceState' on 'History': A history state object with URL 'file:///C:/Users/Ian/Documents/Axure/HTML/Untitled/start.html#p=home' cannot be created in a document with origin 'null'.
- window.history.replaceState(null, null, currentLocWithoutHash + newHash);
- } catch(ex) {}
- } else {
- window.location.replace(currentLocWithoutHash + newHash);
- }
- }
- function collapse() {
- setVarInCurrentUrlHash('c', 1);
- if(!toolBarOnly) lastLeftPanelWidth = $('#leftPanel').width();
- $('#maximizePanelContainer').show();
- $('#leftPanel').hide();
- $('.vsplitbar').hide();
- $('#rightPanel').width($(window).width());
- $(window).resize();
- $('#outerContainer').trigger('resize');
- $(document).trigger('sidebarCollapse');
- if(MOBILE_DEVICE) {
- $('#maximizePanelContainer').animate({
- top:$('#rightPanel').height() - $('#maximizePanelContainer').height()
- }, 300, 'swing', function() {
- $('#maximizePanelContainer').css('top', 'inherit').css('bottom', '0px');
- });
- }
- }
- function expand() {
- if(MOBILE_DEVICE) {
- $('#maximizePanelContainer').css('top', '0px').css('bottom', 'inherit');
- }
- deleteVarFromCurrentUrlHash('c');
- $('#maximizePanelContainer').hide();
- $('#leftPanel').width(lastLeftPanelWidth);
- $('#leftPanel').show();
- if(!toolBarOnly) {
- $('.vsplitbar').show();
- $('#rightPanel').width($(window).width() - $('#leftPanel').width() - 1);
- } else {
- $axure.player.collapseToBar();
- }
- $(window).resize();
- $('#outerContainer').trigger('resize');
- $(document).trigger('sidebarExpanded');
- }
- function mainFrame_onload() {
- if($axure.page.pageName) document.title = $axure.page.pageName;
- }
- function getQueryString(query) {
- var qstring = self.location.href.split("?");
- if(qstring.length < 2) return "";
- return GetParameter(qstring, query);
- }
-
- function GetParameter(qstring, query) {
- var prms = qstring[1].split("&");
- var frmelements = new Array();
- var currprmeter, querystr = "";
- for(var i = 0; i < prms.length; i++) {
- currprmeter = prms[i].split("=");
- frmelements[i] = new Array();
- frmelements[i][0] = currprmeter[0];
- frmelements[i][1] = currprmeter[1];
- }
- for(j = 0; j < frmelements.length; j++) {
- if(frmelements[j][0].toLowerCase() == query.toLowerCase()) {
- querystr = frmelements[j][1];
- break;
- }
- }
- return querystr;
- }
-
- function getHashStringVar(query) {
- var qstring = self.location.href.split("#");
- if(qstring.length < 2) return "";
- return GetParameter(qstring, query);
- }
- function setHashStringVar(currentHash, varName, varVal) {
- var varWithEqual = varName + '=';
- var poundVarWithEqual = varVal === '' ? '' : '#' + varName + '=' + varVal;
- var ampVarWithEqual = varVal === '' ? '' : '&' + varName + '=' + varVal;
- var hashToSet = '';
- var pageIndex = currentHash.indexOf('#' + varWithEqual);
- if(pageIndex == -1) pageIndex = currentHash.indexOf('&' + varWithEqual);
- if(pageIndex != -1) {
- var newHash = currentHash.substring(0, pageIndex);
- newHash = newHash == '' ? poundVarWithEqual : newHash + ampVarWithEqual;
- var ampIndex = currentHash.indexOf('&', pageIndex + 1);
- if(ampIndex != -1) {
- newHash = newHash == '' ? '#' + currentHash.substring(ampIndex + 1) : newHash + currentHash.substring(ampIndex);
- }
- hashToSet = newHash;
- } else if(currentHash.indexOf('#') != -1) {
- hashToSet = currentHash + ampVarWithEqual;
- } else {
- hashToSet = poundVarWithEqual;
- }
- if(hashToSet != '' || varVal == '') {
- return hashToSet;
- }
- return null;
- }
- function setVarInCurrentUrlHash(varName, varVal) {
- var newHash = setHashStringVar(window.location.hash, varName, varVal);
- if(newHash != null) {
- replaceHash(newHash);
- }
- }
- function deleteHashStringVar(currentHash, varName) {
- var varWithEqual = varName + '=';
- var pageIndex = currentHash.indexOf('#' + varWithEqual);
- if(pageIndex == -1) pageIndex = currentHash.indexOf('&' + varWithEqual);
- if(pageIndex != -1) {
- var newHash = currentHash.substring(0, pageIndex);
- var ampIndex = currentHash.indexOf('&', pageIndex + 1);
- //IF begin of string....if none blank, ELSE # instead of & and rest
- //IF in string....prefix + if none blank, ELSE &-rest
- if(newHash == '') { //beginning of string
- newHash = ampIndex != -1 ? '#' + currentHash.substring(ampIndex + 1) : '';
- } else { //somewhere in the middle
- newHash = newHash + (ampIndex != -1 ? currentHash.substring(ampIndex) : '');
- }
- return newHash;
- }
- return null;
- }
- function deleteVarFromCurrentUrlHash(varName) {
- var newHash = deleteHashStringVar(window.location.hash, varName);
- if(newHash != null) {
- replaceHash(newHash);
- }
- }
- --></script>
- <link type="text/css" rel="Stylesheet" href="plugins/sitemap/styles/sitemap.css" />
- <script type="text/javascript" src="plugins/sitemap/sitemap.js"></script>
- <link type="text/css" rel="Stylesheet" href="plugins/page_notes/styles/page_notes.css" />
- <script type="text/javascript" src="plugins/page_notes/page_notes.js"></script>
- <!--<link type="text/css" rel="Stylesheet" href="plugins/recordplay/styles/recordplay.css" />
- <script type="text/javascript" src="plugins/recordplay/recordplay.js"></script>-->
- <link type="text/css" rel="Stylesheet" href="plugins/debug/styles/debug.css" />
- <script type="text/javascript" src="plugins/debug/debug.js"></script>
- </head>
- <body scroll="no" class="hashover">
- <div id="outerContainer">
- <div id="leftPanel">
- <div id="interfaceControlFrame">
- <div id="interfaceControlFrameMinimizeContainer">
- <a title="Collapse" id="interfaceControlFrameMinimizeButton" onclick="collapse();"> </a>
- </div>
- <div id="interfaceControlFrameHeaderContainer">
- <ul id="interfaceControlFrameHeader"></ul>
- </div>
- <div id="interfaceControlFrameContainer">
- <div id="interfaceControlFrameLogoContainer">
- <div id="interfaceControlFrameLogoImageContainer"></div>
- <div id="interfaceControlFrameLogoCaptionContainer"></div>
- </div>
- <div id="interfaceControlFrameHostContainer">
- </div>
- </div>
- <div id="interfaceControlFrameCloseContainer">
- <a title="Close" id="interfaceControlFrameCloseButton" onclick="closePlayer();">CLOSE</a>
- </div>
- </div>
- </div>
- <div id="rightPanel">
- <iframe id="mainFrame" name="mainFrame" width="100%" height="100%" src="" frameborder="0" style="display: block;" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
- </div>
- </div>
- <div id="maximizePanelContainer">
- <iframe id="expandFrame" src="resources/expand.html" width="100%" height="100%" scrolling="no" allowtransparency="true" frameborder="0"></iframe>
- </div>
- </body>
- </html>
|