Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <html>
- <head>
- <style>
- .achievement
- {
- margin: 0px auto;
- padding: 5px;
- border: 1px solid red;
- }
- </style>
- <script type="text/javascript" src="checkpage.js"></script>
- <script type="text/javascript" src="jquery-latest.js"></script>
- <script type="text/ruby" src="rb/gather_xml_classless.rb"></script>
- <script type="text/javascript">
- function nullDataHandler(transaction, results) {}
- function errorHandler(transaction, error)
- {
- // Error is a human-readable string.
- alert('Error: '+error.message+' (Code '+error.code+')');
- return false;
- }
- function openDB()
- {
- try
- {
- if (!window.openDatabase)
- {
- alert('Database not supported');
- }
- else
- {
- var character = document.getElementById('character').innerHtml
- var realm = document.getElementById('realm').innerHtml
- var server = document.getElementById('server').innerHtml
- var shortName = 'wowach_' + character + "_" + realm + "_" + server;
- var version = '1.0';
- var displayName = 'Database for ' + character + " on " + realm + ":" + server;
- var maxSize = 5242880; // in bytes: 5 megs
- var mydb = openDatabase(shortName, version, displayName, maxSize);
- }
- }
- catch(e)
- {
- // Error handling code goes here.
- if (e == INVALID_STATE_ERR)
- {
- // Version number mismatch.
- alert("Invalid database version.");
- } else
- {
- alert("Unknown error "+e+".");
- }
- return;
- }
- //we have a database now, try to create the table in case it is a new database
- mydb.transaction(
- function(transaction)
- { //Note: No errorhandler here, errors caused by the table existing will be ignored
- transaction.executeSql('CREATE TABLE acheivements(id INTEGER NOT NULL PRIMARY KEY, categoryid INTEGER NOT NULL,dateCompleted TEXT NOT NULL, title TEXT NOT NULL, icon TEXT NOT NULL, desc TEXT NOT NULL);', [], nullDataHandler);
- }
- );
- }
- function insertAchievement()
- {
- mydb.transaction(
- function(transaction) {
- transaction.executeSQL('Insert into acheivements (id, categoryid, dateCompleted, title, icon, desc) values ("'+id+'","'+categoryid+'","'+dateCompleted+'","'+title+'","'+icon+'","'+desc+'");', [], nullDataHandler, errorHandler);
- }
- );
- }
- function parse_data(data)
- {
- var parser = new DOMParser();
- var dom = parser.parseFromString(data,"text/xml");
- var entries = dom.getElementsByTagName('achievement');
- var toreturn = '';
- var done = '';
- var status = document.getElementById('status');
- //Open the database corresponding to this character
- openDB();
- for (var i = 0; i < entries.length; i++) {
- try {
- done = entries[i].getAttribute('dateCompleted');
- title = entries[i].getAttribute('title');
- icon = entries[i].getAttribute('icon');
- desc = entries[i].getAttribute('desc');
- categoryId = entries[i].getAttribute('categoryId');
- if (done.length > 0) {
- done=done.substr(0,10);
- //toreturn += '<a id="' + entries[i].getAttribute('id') + '" done="' + done + '"/>';
- toreturn += "<div class='achievement'><br>ID: " + entries[i].getAttribute('id') + " Completed on:" + done + " Title:" + title +"<br>Description: " + desc +"</div>";
- insertAchievement();
- }
- } catch (e) { null; }
- }
- /** try {
- if (dom.getElementsByTagName('character').length > 0) {
- var char = dom.getElementsByTagName('character')[0];
- toreturn += '<c class="' + char.getAttribute('class') +
- '" faction="' + char.getAttribute('faction') +
- '" gender="' + char.getAttribute('gender') +
- '" name="' + char.getAttribute('name') +
- '" race="' + char.getAttribute('race') +
- '" realm="' + char.getAttribute('realm') +
- '"/>';
- }
- } catch (e) { null; }
- **/
- if (i == 0) {
- status.innerHTML = 'Error: Armory returned 0 achievements.';
- } else {
- alert("Returning");
- status.innerHTML = toreturn;
- }
- }
- $(document).ready(function(){
- $('#check').click(function () {
- alert("starting file grab");
- try
- {
- var file = Titanium.Filesystem.getFileStream(Titanium.App.appURLToPath('app://temp81.xml'));
- //var file = Titanium.FileSystem.getFile("app://temp81.xml");
- file.open(Titanium.Filesystem.FILESTREAM_MODE_READ);
- var data = file.read();
- }
- catch (e)
- {alert("Error");}
- alert(data);
- parse_data(data);
- file.close();
- });
- $('#populate').click(function () {
- getxml.set_charinfo();
- });
- $('#getcharinfo').click(function () {
- getxml.print_charinfo();
- });
- $('#gatherdata').click(function () {
- gatherdata();
- });
- });
- </script>
- </head>
- <body>
- <button id="populate">Populate XML</button>
- <button id="getcharinfo">Get Char Info</button>
- <button id="gatherdata">Gather Data</button>
- <button id="check">Parse</button>
- <div id="status">Default</div>
- <div id="character">Tesandra</div>
- <div id="realm">Ghostlands</div>
- <div id="server">us</div>
- </body>
- </html>
Add Comment
Please, Sign In to add comment