You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
504 lines
21 KiB
504 lines
21 KiB
<!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>
|