Sourcecode in Layout/macros.js:
1: function image_macro(param) {
2: var img;
3: if ((img = this.getImage(param.name, param.fallback)) == null)
4: return;
5: // return different display according to param.as
6: switch (param.as) {
7: case "url" :
8: return img.getUrl();
9: case "thumbnail" :
10: if (!param.linkto)
11: param.linkto = img.getUrl();
12: if (img.thumbnail)
13: img = img.thumbnail;
14: break;
15: case "popup" :
16: param.linkto = img.getUrl();
17: param.onClick = img.getPopupUrl();
18: if (img.thumbnail)
19: img = img.thumbnail;
20: break;
21: }
22: delete(param.name);
23: delete(param.as);
24: // render image tag
25: if (param.linkto) {
26: Html.openLink({href: param.linkto});
27: delete(param.linkto);
28: renderImage(img, param);
29: Html.closeLink();
30: } else
31: renderImage(img, param);
32: return;
33: }
|