Mercurial > hg > OKFNAnnotator
comparison annotator_files/lib/plugin/markdown.js @ 3:6356e78ccf5c
new version contains Annotator JS files to be used with FilesystemSite.
| author | casties |
|---|---|
| date | Thu, 05 Apr 2012 19:37:27 +0200 |
| parents | |
| children | 6979313586cf |
comparison
equal
deleted
inserted
replaced
| 2:4c6c8835fc5c | 3:6356e78ccf5c |
|---|---|
| 1 var __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; }, | |
| 2 __hasProp = Object.prototype.hasOwnProperty, | |
| 3 __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor; child.__super__ = parent.prototype; return child; }; | |
| 4 | |
| 5 Annotator.Plugin.Markdown = (function(_super) { | |
| 6 | |
| 7 __extends(Markdown, _super); | |
| 8 | |
| 9 Markdown.prototype.events = { | |
| 10 'annotationViewerTextField': 'updateTextField' | |
| 11 }; | |
| 12 | |
| 13 function Markdown(element, options) { | |
| 14 this.updateTextField = __bind(this.updateTextField, this); if ((typeof Showdown !== "undefined" && Showdown !== null ? Showdown.converter : void 0) != null) { | |
| 15 Markdown.__super__.constructor.apply(this, arguments); | |
| 16 this.converter = new Showdown.converter(); | |
| 17 } else { | |
| 18 console.error(Annotator._t("To use the Markdown plugin, you must include Showdown into the page first.")); | |
| 19 } | |
| 20 } | |
| 21 | |
| 22 Markdown.prototype.updateTextField = function(field, annotation) { | |
| 23 var text; | |
| 24 text = Annotator.$.escape(annotation.text || ''); | |
| 25 return $(field).html(this.convert(text)); | |
| 26 }; | |
| 27 | |
| 28 Markdown.prototype.convert = function(text) { | |
| 29 return this.converter.makeHtml(text); | |
| 30 }; | |
| 31 | |
| 32 return Markdown; | |
| 33 | |
| 34 })(Annotator.Plugin); |
