mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-12-25 01:20:30 +00:00
623a3ec8f8
What we have at the moment isn't really the same as TiddlyWiki classic's shadow tiddlers, it's a much simpler system for excluding tiddlers. We'll use the term "shadow" instead to refer to the way that tiddlers in plugins behave, which is exactly like TiddlyWiki classic's shadow tiddlers.
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.systemTiddlers,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");
|
|
}
|
|
}
|
|
};
|
|
|
|
})();
|