--- /dev/null
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"\r
+ "http://www.w3.org/TR/html4/strict.dtd"> \r
+\r
+<html>\r
+\r
+<head>\r
+ <title>Dojo Storage Test</title>\r
+ \r
+ <style type="text/css">\r
+ @import "../../../dojo/resources/dojo.css";\r
+ </style>\r
+ \r
+ <!--\r
+ // 'forceStorageProvider' is a flag to force a particular storage type. \r
+ // Example:\r
+ //\r
+ //var djConfig = { \r
+ // isDebug: false, \r
+ // forceStorageProvider: "dojox.storage.FlashStorageProvider" \r
+ // };\r
+ -->\r
+\r
+ <script>\r
+ // most storage providers have to be loaded when the page first loads;\r
+ // the code below is so that we can use the storage provider pulldown,\r
+ // select a provider, change the URL to force this provider, and then\r
+ // reload the page to force this new provider\r
+ var loc = window.location;\r
+ var forceStorageProvider = undefined;\r
+ // does the URL have a storage provider for us to force using?\r
+ if(loc && loc.search && loc.search.indexOf("forceStorageProvider") != -1){\r
+ var m = loc.search.match(/forceStorageProvider=([a-zA-Z0-9_\.]*)/g);\r
+ if(m && m.length){\r
+ // forceStorageProvider can repeat as a query parameter if the\r
+ // page has been reloaded several times, so just grab the last\r
+ // one\r
+ forceStorageProvider = m[m.length - 1];\r
+ if(forceStorageProvider.indexOf("=") != -1){\r
+ forceStorageProvider = forceStorageProvider.split("=");\r
+ forceStorageProvider = forceStorageProvider[1];\r
+ }\r
+ }\r
+ }\r
+ \r
+ var djConfig = { \r
+ isDebug: false, \r
+ forceStorageProvider: forceStorageProvider\r
+ };\r
+ </script>\r
+\r
+ <script type="text/javascript" \r
+ src="../../../dojo/dojo.js"></script>\r
+ \r
+ <script type="text/javascript" src="test_storage.js"></script>\r
+ \r
+ <style type="text/css">\r
+ h1 { margin: 0px auto 0px auto; padding-top: 0px auto 0px auto; clear: none; float: left; }\r
+ body { padding: 0.2em 1em 1em 1em; }\r
+ div { margin-bottom: 1.5em; }\r
+ label { margin-right: 0.6em; }\r
+ button { margin-right: 0.6em; }\r
+ form { float: right; width: 80%; }\r
+ #top { width: 70%; }\r
+ #directoryContainer { float: left; clear: left; width: 20%; }\r
+ #templates { text-align: center; }\r
+ #templates a { display: block; margin-top: 1em; }\r
+ #directory { width: 100%; }\r
+ #namespaceDirectory { width: 100%; }\r
+ #storageValue { vertical-align: top; width: 100%; height: 10em; }\r
+ #buttonContainer { text-align: center; }\r
+ #currentStorageProvider { font-weight: bold; }\r
+ #providerMetadataContainer { float: right; font-size: 9pt; }\r
+ #storageForm { width: 70%; }\r
+ .status { float: right; padding-left: 5px; padding-right: 5px; background: red; color: white; }\r
+ .providerMetadata { font-weight: bold; margin-bottom: 0.5em; }\r
+ .providerMetadataValue { font-weight: normal; }\r
+ .firebug { clear: both; } // clear Firebug Lite to bottom of screen\r
+ </style>\r
+ \r
+</head>\r
+\r
+<body>\r
+ <div id="top">\r
+ <h1>Dojo.Storage Test</h1>\r
+ </div>\r
+ \r
+ <div id="directoryContainer">\r
+ <h2>All Namespaces:</h2>\r
+ <select id="namespaceDirectory" size="3"></select>\r
+ \r
+ <h2>All Keys:</h2>\r
+ <select id="directory" size="10">\r
+ </select>\r
+ \r
+ <div id="templates">\r
+ <a href="#" onclick="return TestStorage.saveBook()">Save Test Book (238K - Faust by Goethe)</a>\r
+ <a href="#" onclick="return TestStorage.saveXML()">Save Test XML</a>\r
+ </div>\r
+ </div>\r
+ \r
+ <form id="storageForm">\r
+ <h2>Save/Load Values:</h2>\r
+ <div>\r
+ <div id="providerMetadataContainer">\r
+ <div class="providerMetadata">\r
+ Supported:\r
+ \r
+ <span id="isSupported" class="providerMetadataValue">\r
+ </span>\r
+ </div>\r
+ \r
+ <div class="providerMetadata">\r
+ Supports Persistence:\r
+ \r
+ <span id="isPersistent" class="providerMetadataValue">\r
+ </span>\r
+ </div>\r
+ \r
+ <div class="providerMetadata">\r
+ Supports UI Configuration:\r
+ \r
+ <span id="hasUIConfig" class="providerMetadataValue">\r
+ </span>\r
+ </div>\r
+ \r
+ <div class="providerMetadata">\r
+ Maximum Size:\r
+ \r
+ <span id="maximumSize" class="providerMetadataValue">\r
+ </span>\r
+ </div>\r
+ \r
+ <div class="providerMetadata">\r
+ Value size:\r
+ \r
+ <span id="valueSize" class="providerMetadataValue">\r
+ </span>\r
+ </div>\r
+ \r
+ <div class="providerMetadata">\r
+ More info:\r
+ \r
+ <span id="moreInfo" class="providerMetadataValue">\r
+ </span>\r
+ </div>\r
+ </div>\r
+ \r
+ <div>\r
+ Storage Provider:\r
+ \r
+ <select id="currentStorageProvider" size="1"></select>\r
+ </div>\r
+ </div>\r
+ \r
+ <div id="storageNamespaceContainer">\r
+ <label for="storageNamespace">\r
+ Namespace:\r
+ </label>\r
+ \r
+ <input type="text" id="storageNamespace" name="storageNamespace" size="40" disabled="true">\r
+ </div>\r
+ \r
+ <div id="storageKeyContainer">\r
+ <label for="storageKey">\r
+ Key:\r
+ </label>\r
+ \r
+ <input type="text" id="storageKey" name="storageKey" size="40" disabled="true">\r
+ </div>\r
+ \r
+ <div id="storageValueContainer">\r
+ <label for="storageValue">\r
+ Value:\r
+ </label>\r
+ \r
+ <textarea id="storageValue" name="storageValue" disabled="true"></textarea>\r
+ </div>\r
+ \r
+ <div id="buttonContainer">\r
+ <button id="loadButton" disabled="true">Load</button>\r
+ <button id="saveButton" disabled="true">Save</button>\r
+ <button id="removeButton" disabled="true">Remove</button>\r
+ <button id="clearNamespaceButton" disabled="true">Clear Namespace</button>\r
+ <button id="configureButton" disabled="true">Configure</button>\r
+ </div>\r
+ </form>\r
+</body>\r
+\r
+</html>\r