X-Git-Url: http://jsfdemo.indexdata.com/?a=blobdiff_plain;f=examples%2Fhtdocs%2Fmkws-widget-credo.js;h=90ac5f9b5bcfc8b79f101fa56d77866ae1ae6331;hb=a6d4199088ca42d19ac7236f6ca576caad2e4a7e;hp=46e9d2981bf4edf2d3cb37d2fda6cfac61b9c6e0;hpb=13b29fcfe3c38ab073a0f56fc30930d81f7798dc;p=mkws-moved-to-github.git diff --git a/examples/htdocs/mkws-widget-credo.js b/examples/htdocs/mkws-widget-credo.js index 46e9d29..90ac5f9 100644 --- a/examples/htdocs/mkws-widget-credo.js +++ b/examples/htdocs/mkws-widget-credo.js @@ -1,3 +1,20 @@ +// The Google Images database returns links like: +// http://images.google.com/url?q=http://eofdreams.com/fish.html&sa=U&ei=RAB-U9XNDo2Dqga1o4L4Bw&ved=0CC4Q9QEwAA&usg=AFQjCNFhRtn6GMevHbpITZ6kfx6rsHV2ow +// This Handlebars helper avoids a pointless redirect by transforming +// this to the URL of the underling page, in this case +// http://eofdreams.com/fish.html +// +Handlebars.registerHelper('mkws-googleurl', function(obj) { + if (!obj) { + return "obj undefined"; + } else if (!obj[0]) { + return "obj[0] undefined, JSON=" + $.toJSON(obj); + } else { + return mkws.getParameterByName('q', obj[0]); + } +}); + + // ### This works inefficiently by having multiple teams all run the // same search against different sets of targets. A much better // approach would be run a single search, with all these panels @@ -6,6 +23,19 @@ mkws.registerWidgetType('Credo', function() { var that = this; + + this.team.registerTemplate('CredoImage', '\ +
{{md-title}}
\ +'); s.push(section('encyclopaedia', 'Topic Page: ### title', this.subwidget('Reference', { _team: 'ref' }))); + // The Images widget needs to be in our team so we can set its template s.push(section('image', 'Images', - this.subwidget('GoogleImage', { _team: 'img', maxrecs: 4 }))); + this.subwidget('GoogleImage', { maxrecs: 4, template: 'CredoImage' }))); s.push(' | '); s.push(''); s.push(section('mindmap', 'Create a Mind Map for ### title', - '### Is there a way to make a mind-map?')); + this.subwidget('Mindmap', { _team: 'main', facet: 'subject' }))); s.push(section('topics', 'Related Topics', - 1 || this.subwidget('Facet', { facet: 'subject' }))); + this.subwidget('Facet', { _team: 'main', facet: 'subject' }))); s.push(' | '); s.push(''); + s.push('