+ },
+ getLinkForUrl: function(url) {
+ /* globals window */
+ var baseUrl = function(url) {return url.split('/').slice(0,-1).join('/');};
+ if(baseUrl(url) === baseUrl(window.location.origin + this.getUrlForLink('file://test'))) {
+ return 'file://' + _.last(url.split('/'));
+ }
+ return url;
+ },
+ setProperty: function(propName, propValue) {
+ if(this.properties[propName] !== propValue) {
+ this.properties[propName] = propValue;
+ this.trigger('propertyChanged', propName, propValue);
+ }
+ }
+});
+
+var DumbDocument = function() {
+ Document.apply(this, Array.prototype.slice.call(arguments, 0));
+};
+DumbDocument.prototype = Object.create(Document.prototype);
+_.extend(DumbDocument.prototype, {
+ loadXML: function(xml) {
+ this._xml = xml;
+ this.trigger('contentSet');
+ },
+ toXML: function() {
+ return this._xml;