All pastes #626355 Raw Edit

Someone

public javascript v1 · immutable
·published 2007-07-19 16:20 UTC
rendered paste body
old_load_plugins = window.loadPlugins;window.loadPlugins=function(){	loadExternalScripts.apply(this,arguments);	old_load_plugins.apply(this,arguments);};function loadExternalScripts(){	var dirtyStatus = store.isDirty();	if (!store.isTiddler("ExternalTiddlers"))	   return;	var originalPath = document.location.toString();	var localPath = getLocalPath(originalPath);              	var backSlash = true;	var dirPathPos = localPath.lastIndexOf("\\");	if(dirPathPos == -1) {		dirPathPos = localPath.lastIndexOf("/");		backSlash = false;	}	var scriptPath = localPath.substr(0,dirPathPos) + (backSlash ? "\\" : "/");	var scripts = store.getTiddlerText("ExternalTiddlers").readBracketedList();	for (var i=0; i<scripts.length;i++)		{		addTempTiddler(scripts[i],loadFile(scriptPath+scripts[i]).replace(/\r/mg,""));		//eval(loadFile(scriptPath+scripts[i]));                }	store.setDirty(dirtyStatus);};function addTempTiddler(title,text){	//var title = title.replace(/(\..*?$)/g, "");	var myregexp = /(?:.*(?:\\|\/))?(.*)(?:\.)(.*)/;	var match = myregexp.exec(title);	var title = match[1];	var type = match[2];	var tags = type == 'js'? 'externalTiddler systemConfig':'externalTiddler';		store.saveTiddler(title,title,text,"external tiddler",new Date(),tags);}TiddlyWiki.prototype.isTiddler= function (title){	return store.tiddlerExists(title) || store.isShadowTiddler(title)};SaverBase.prototype.externalize = function(store){	var results = [];	var tiddlers = store.getTiddlers("title","externalTiddler");	for(var t = 0; t < tiddlers.length; t++)		results.push(this.externalizeTiddler(store,tiddlers[t]));	return results.join("\n");};var	tempnotice= "This tiddler has been loaded from an external file, it cannot be edited.";var	tempnoticecss= ".tempnotice {background:#FFBFC2; color:#000; border:2px solid #FF2F37; padding:0.5em; margin:0.5em;}\n.isTemp{background:#FFCFD2;}";setStylesheet(tempnoticecss,"TempTiddlerStyles");Story.prototype.old_temptiddlers_refreshTiddler = Story.prototype.refreshTiddler;Story.prototype.refreshTiddler = function(title,template,force,customFields,defaultText){	var t = this.old_temptiddlers_refreshTiddler.apply(this,arguments);		if (t && store.getTiddler(title) && store.getTiddler(title).isTagged("externalTiddler")){		if (t.getAttribute("dirty") == "true"){			var count = t.childNodes.length;			var ed;			for (var j=0; j<count; j++){				if(hasClass(t.childNodes[j],"editor")){					ed = t.childNodes[j];						break;				}			}			var notice = ed.parentNode.insertBefore(createTiddlyElement(null,"div",null,"tempnotice"),ed.nextSibling);			wikify(tempnotice,notice);					}	}	return t;};Story.prototype.old_temptiddlers_saveTiddler = Story.prototype.saveTiddler;Story.prototype.saveTiddler = function(title,minorUpdate){	if(store.getTiddler(title) && store.getTiddler(title).isTagged("externalTiddler")){		alert("This tiddler has been loaded from an external file.\n It cannot be edited.");		return false;	}	else{		this.old_temptiddlers_saveTiddler.apply(this,arguments);	}};