function renderFields(iFieldSet, prefix, title) { if (title) { var niceTitle = _.humanize(title); res.write('<div class="nf_fieldset">\n<h2>' + niceTitle + '</h2>\n'); } iFieldSet.each(function (field, field_name) { if (!(field instanceof BaseField)) { renderFields(_(field), prefix + field_name + '.', field_name); return; } // setup for re-use field.name = prefix + field_name; // This is for array in template if (field_name.substring(-'__self__'.length) === '__self__') { field.render(res); } else { field.render_with_label(res); } self.errors[field_name] = field.errors; }); if (title) res.write("</div>\n"); }
header: modelConfig.fieldsInTable.map(function (field_path) { var capitalized = _.humanize(field_path); var fieldConfig = paths.find({db_path: field_path}); if (!fieldConfig) { return {label: capitalized}; } var label = fieldConfig.label || capitalized; var key = String(field_path); var type = fieldConfig.type.name; if (req.query.order_by == field_path) { key = '-' + key; } var link = makeLink('order_by', key); var obj = { href: link, label: label }; switch (type) { case 'Date': obj.thClass = 'th-medium'; break; case 'Picture': case 'Filepicker': obj.thClass = 'th-slim'; break; case 'Time': case 'Boolean': obj.thClass = 'th-superslim'; break; } return obj; }),
get_label: function () { var label = _.humanize(this.label); return label; },