Ticket #475: ticket475.patch

File ticket475.patch, 5.1 kB (added by FND, 8 months ago)
  • Commands.js

     
    1717config.commands.editTiddler.handler = function(event,src,title) 
    1818{ 
    1919        clearMessage(); 
    20         var tiddlerElem = document.getElementById(story.idPrefix + title); 
     20        var tiddlerElem = story.getTiddler(title); 
    2121        var fields = tiddlerElem.getAttribute("tiddlyFields"); 
    2222        story.displayTiddler(null,title,DEFAULT_EDIT_TEMPLATE,false,null,fields); 
    2323        story.focusTiddler(title,"text"); 
  • NewTiddler.js

     
    4444        var template = this.getAttribute("newTemplate"); 
    4545        var customFields = this.getAttribute("customFields"); 
    4646        story.displayTiddler(null,title,template,false,null,null); 
    47         var tiddlerElem = document.getElementById(story.idPrefix + title); 
     47        var tiddlerElem = story.getTiddler(title); 
    4848        if(customFields) 
    4949                story.addCustomFields(tiddlerElem,customFields); 
    5050        var text = this.getAttribute("newText"); 
  • Story.js

     
    5454{ 
    5555        var title = (tiddler instanceof Tiddler)? tiddler.title : tiddler;   
    5656        var place = document.getElementById(this.container); 
    57         var tiddlerElem = document.getElementById(this.idPrefix + title); 
     57        var tiddlerElem = this.getTiddler(title); 
    5858        if(tiddlerElem) { 
    5959                if(toggle) 
    6060                        this.closeTiddler(title,true); 
     
    111111//# customFields - an optional list of name:"value" pairs to be assigned as tiddler fields 
    112112Story.prototype.createTiddler = function(place,before,title,template,customFields) 
    113113{ 
    114         var tiddlerElem = createTiddlyElement(null,"div",this.idPrefix + title,"tiddler"); 
     114        var tiddlerElem = createTiddlyElement(null,"div",this.tiddlerId(title),"tiddler"); 
    115115        tiddlerElem.setAttribute("refresh","tiddler"); 
    116116        if(customFields) 
    117117                tiddlerElem.setAttribute("tiddlyFields",customFields); 
     
    192192//# defaultText - an optional string to replace the default text for non-existent tiddlers 
    193193Story.prototype.refreshTiddler = function(title,template,force,customFields,defaultText) 
    194194{ 
    195         var tiddlerElem = document.getElementById(this.idPrefix + title); 
     195        var tiddlerElem = this.getTiddler(title); 
    196196        if(tiddlerElem) { 
    197197                if(tiddlerElem.getAttribute("dirty") == "true" && !force) 
    198198                        return tiddlerElem; 
     
    346346//# or null if it found no edit field at all 
    347347Story.prototype.getTiddlerField = function(title,field) 
    348348{ 
    349         var tiddlerElem = document.getElementById(this.idPrefix + title); 
     349        var tiddlerElem = this.getTiddler(title); 
    350350        var e = null; 
    351351        if(tiddlerElem != null) { 
    352352                var children = tiddlerElem.getElementsByTagName("*"); 
     
    376376//# Ensures that a specified tiddler does not have the focus 
    377377Story.prototype.blurTiddler = function(title) 
    378378{ 
    379         var tiddlerElem = document.getElementById(this.idPrefix + title); 
     379        var tiddlerElem = this.getTiddler(title); 
    380380        if(tiddlerElem != null && tiddlerElem.focus && tiddlerElem.blur) { 
    381381                tiddlerElem.focus(); 
    382382                tiddlerElem.blur(); 
     
    409409//# animate - whether to perform animations 
    410410Story.prototype.closeTiddler = function(title,animate,unused) 
    411411{ 
    412         var tiddlerElem = document.getElementById(this.idPrefix + title); 
     412        var tiddlerElem = this.getTiddler(title); 
    413413        if(tiddlerElem != null) { 
    414414                clearMessage(); 
    415415                this.scrubTiddler(tiddlerElem); 
     
    435435//# dirty - new boolean status of flag 
    436436Story.prototype.setDirty = function(title,dirty) 
    437437{ 
    438         var tiddlerElem = document.getElementById(this.idPrefix + title); 
     438        var tiddlerElem = this.getTiddler(title); 
    439439        if(tiddlerElem != null) 
    440440                tiddlerElem.setAttribute("dirty",dirty ? "true" : "false"); 
    441441}; 
     
    443443//# Is a particular tiddler dirty (with unsaved changes)? 
    444444Story.prototype.isDirty = function(title) 
    445445{ 
    446         var tiddlerElem = document.getElementById(this.idPrefix + title); 
     446        var tiddlerElem = this.getTiddler(title); 
    447447        if(tiddlerElem != null) 
    448448                return tiddlerElem.getAttribute("dirty") == "true"; 
    449449        return null; 
     
    527527//# title - name of tiddler 
    528528Story.prototype.hasChanges = function(title) 
    529529{ 
    530         var e = document.getElementById(this.idPrefix + title); 
     530        var e = this.getTiddler(title); 
    531531        if(e != null) { 
    532532                var fields = {}; 
    533533                this.gatherSaveFields(e,fields); 
     
    548548//# returns: title of saved tiddler, or null if not saved 
    549549Story.prototype.saveTiddler = function(title,minorUpdate) 
    550550{ 
    551         var tiddlerElem = document.getElementById(this.idPrefix + title); 
     551        var tiddlerElem = this.getTiddler(title); 
    552552        if(tiddlerElem != null) { 
    553553                var fields = {}; 
    554554                this.gatherSaveFields(tiddlerElem,fields); 
     
    652652        } 
    653653}; 
    654654 
     655//# generate tiddler ID 
     656Story.prototype.tiddlerId = function(title) 
     657{ 
     658    return this.idPrefix + title; 
     659} 
     660 
     661//# retrieve tiddler element 
     662Story.prototype.getTiddler = function(title) 
     663{ 
     664    return document.getElementById(this.tiddlerId(title)); 
     665} 
     666