Sourcecode in Global/macros.js:
1: function image_macro(param) {
2: if (!param.name)
3: return;
4: if (param.name.startsWith("/")) {
5: // standard images and logos are handled by constant IMAGES
6: DefaultImages.render(param.name.substring(1), param);
7: return;
8: }
9: var result = getPoolObj(param.name, "images");
10: if (!result && param.fallback)
11: result = getPoolObj(param.fallback, "images");
12: if (!result)
13: return;
14: var img = result.obj;
15: // return different display according to param.as
16: switch (param.as) {
17: case "url" :
18: return img.getUrl();
19: case "thumbnail" :
20: if (!param.linkto)
21: param.linkto = img.getUrl();
22: if (img.thumbnail)
23: img = img.thumbnail;
24: break;
25: case "popup" :
26: param.linkto = img.getUrl();
27: param.onClick = img.getPopupUrl();
28: if (img.thumbnail)
29: img = img.thumbnail;
30: break;
31: }
32: delete(param.name);
33: delete(param.as);
34: // render image tag
35: if (param.linkto) {
36: Html.openLink({href: param.linkto});
37: delete(param.linkto);
38: renderImage(img, param);
39: Html.closeLink();
40: } else
41: renderImage(img, param);
42: return;
43: }
|