Author: scottbw
Date: Wed Jan 11 15:18:13 2012
New Revision: 1230085
URL: http://svn.apache.org/viewvc?rev=1230085&view=rev
Log:
Use regex to find and replace all occurrences of a token in an item detail
template when transforming data into HTML in the Browse template. (JavaScript
replace by substring only uses the first match).
Modified:
incubator/wookie/trunk/widgets/templates/browse/scripts/browse_controller.js
Modified:
incubator/wookie/trunk/widgets/templates/browse/scripts/browse_controller.js
URL:
http://svn.apache.org/viewvc/incubator/wookie/trunk/widgets/templates/browse/scripts/browse_controller.js?rev=1230085&r1=1230084&r2=1230085&view=diff
==============================================================================
---
incubator/wookie/trunk/widgets/templates/browse/scripts/browse_controller.js
(original)
+++
incubator/wookie/trunk/widgets/templates/browse/scripts/browse_controller.js
Wed Jan 11 15:18:13 2012
@@ -162,12 +162,14 @@ ${widget.shortname}_browse_controller.tr
var elements = ${browse.item.elements}.split(",");
for (var i=0;i<elements.length;i++){
var element = elements[i];
- item = item.replace("${"+element.toUpperCase()+"}",
$(this).find(element).text());
+ var pattern = "\\$\{" + element.toUpperCase() +"\}";
+ item = item.replace(new RegExp(pattern,'g'),
$(this).find(element).first().text());
}
var attributes = ${browse.item.attributes}.split(",");
for (var i=0;i<attributes.length;i++){
var attribute = attributes[i];
- item = item.replace("${"+attribute.toUpperCase()+"}",
$(this).attr(attribute));
+ var pattern = '\\$\{'+attribute.toUpperCase()+'\}';
+ item = item.replace(new RegExp(pattern,'g'),
$(this).attr(attribute));
}
items += item;
}