mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-08-25 02:56:43 +00:00
55 lines
1.8 KiB
JavaScript
55 lines
1.8 KiB
JavaScript
/*\
|
|
title: $:/plugins/tiddlywiki/dropbox-app/dropbox-app.js
|
|
type: application/javascript
|
|
module-type: dropbox-startup
|
|
|
|
Startup the Dropbox wiki app
|
|
|
|
\*/
|
|
(function(){
|
|
|
|
/*jslint node: true, browser: true */
|
|
/*global $tw: false */
|
|
"use strict";
|
|
|
|
exports.startup = function(loggedIn) {
|
|
// Load any tiddlers embedded in the index file
|
|
var index = $tw.wiki.getTiddlerData($tw.plugins.dropbox.titleTiddlerIndex);
|
|
if(index) {
|
|
$tw.wiki.addTiddlers(index.tiddlers);
|
|
$tw.wiki.addTiddlers(index.shadows,true);
|
|
$tw.plugins.dropbox.fileInfo = index.fileInfo;
|
|
}
|
|
if(loggedIn) {
|
|
// Figure out the wiki name
|
|
var url = (window.location.protocol + "//" + window.location.host + window.location.pathname),
|
|
wikiName;
|
|
if(url.indexOf($tw.plugins.dropbox.userInfo.publicAppUrl) === 0) {
|
|
var p = url.indexOf("/",$tw.plugins.dropbox.userInfo.publicAppUrl.length + 1);
|
|
if(p !== -1 && url.substr(p) === "/index.html") {
|
|
wikiName = decodeURIComponent(url.substring($tw.plugins.dropbox.userInfo.publicAppUrl.length + 1,p));
|
|
}
|
|
}
|
|
if(wikiName) {
|
|
// Save the wiki name for later
|
|
$tw.plugins.dropbox.wikiName = wikiName;
|
|
$tw.wiki.addTiddler({title: $tw.plugins.dropbox.titleWikiName, text: $tw.plugins.dropbox.wikiName},true);
|
|
// Check for later versions of files on Dropbox
|
|
$tw.plugins.dropbox.refreshTiddlerFiles("/" + $tw.plugins.dropbox.wikiName + "/tiddlers",function(hadChanges) {
|
|
// Save the tiddler index if we had changes
|
|
if(hadChanges) {
|
|
$tw.plugins.dropbox.saveTiddlerIndex("/" + $tw.plugins.dropbox.wikiName + "/index.html",function(error) {
|
|
console.log("Saved tiddler index");
|
|
// Sync any subsequent tiddler changes
|
|
$tw.plugins.dropbox.setupSyncer($tw.wiki);
|
|
});
|
|
}
|
|
});
|
|
} else {
|
|
alert("This TiddlyWiki file must be in Dropbox");
|
|
}
|
|
}
|
|
};
|
|
|
|
})();
|