closes #783, support for array.length

v1.18.x
psychobunny 12 years ago
parent efa45ad907
commit 0cca8e0bcf

@ -323,36 +323,6 @@
template = '';
}
for (var d in data) {
if (data.hasOwnProperty(d)) {
if (typeof data[d] === 'undefined') {
continue;
} else if (data[d] === null) {
template = replace(namespace + d, '', template);
} else if (data[d].constructor == Array) {
namespace += d + '.';
var regex = makeRegex(d),
block = getBlock(regex, namespace.substring(0, namespace.length - 1), template);
if (block == null) {
namespace = namespace.replace(d + '.', '');
continue;
}
var numblocks = data[d].length - 1,
i = 0,
result = "";
do {
result += parse(data[d][i], namespace, block, {iterator: i, total: numblocks});
} while (i++ < numblocks);
namespace = namespace.replace(d + '.', '');
template = setBlock(regex, result, template);
} else if (data[d] instanceof Object) {
template = parse(data[d], d + '.', template);
} else {
function checkConditional(key, value) {
var conditional = makeConditionalRegex(key),
matches = template.match(conditional);
@ -380,6 +350,38 @@
}
}
for (var d in data) {
if (data.hasOwnProperty(d)) {
if (typeof data[d] === 'undefined') {
continue;
} else if (data[d] === null) {
template = replace(namespace + d, '', template);
} else if (data[d].constructor == Array) {
checkConditional(namespace + d + '.length', data[d].length);
namespace += d + '.';
var regex = makeRegex(d),
block = getBlock(regex, namespace.substring(0, namespace.length - 1), template);
if (block == null) {
namespace = namespace.replace(d + '.', '');
continue;
}
var numblocks = data[d].length - 1,
i = 0,
result = "";
do {
result += parse(data[d][i], namespace, block, {iterator: i, total: numblocks});
} while (i++ < numblocks);
namespace = namespace.replace(d + '.', '');
template = setBlock(regex, result, template);
} else if (data[d] instanceof Object) {
template = parse(data[d], d + '.', template);
} else {
checkConditional(namespace + d, data[d]);
checkConditional('!' + namespace + d, !data[d]);

@ -112,6 +112,7 @@
<li><a href="{relative_path}/admin/events"><i class="fa fa-fw fa-calendar-o"></i> Events</a></li>
</ul>
</div>
<!-- IF authentication.length -->
<div class="well sidebar-nav">
<ul class="nav nav-list">
<li class="nav-header">Social Authentication</li>
@ -122,6 +123,7 @@
<!-- END authentication -->
</ul>
</div>
<!-- ENDIF authentication.length -->
<div class="well sidebar-nav">
<ul class="nav nav-list">
<li class="nav-header">Plugins</li>

Loading…
Cancel
Save