@import org.ada.server.models.datatrans.RenameFieldsTransformation @import org.ada.web.util.typeColumns @import views.html.datasetimport.schedulePanel @import views.html.datasettrans.{resultDataSetInfoPanel, streamSpecPanel, sourceDataSetTypeahead} @import views.html.table.{displayTable, dynamicTable} @import views.html.table.dynamicTableJsImport @import views.html.elements.labelValue @import views.html.elements._ @import play.api.i18n.Messages @import org.incal.play.controllers.WebContext @import org.incal.play.controllers.WebContext._ @(form: Form[RenameFieldsTransformation])(implicit webContext: WebContext) @sourceDataSetTypeahead("renameFieldsTransformation", form) @dynamicTableJsImport() @oldFieldNameElement(item: (String, String)) = { } @newFieldNameElement(item: (String, String)) = { } @table = { @displayTable( form.value.map(_.fieldOldNewNames).getOrElse(Nil), typeColumns[(String, String)]( (None, "", _ => {}), (None, "Old Field Name", oldFieldNameElement), (None, "New Field Name", newFieldNameElement) ) ) } @rowToModelJsFun = { function(row) { var model = rowToModel(row); return JSON.stringify(model); } } @modalItemToRowJsFun = { function(values) { var oldFieldName = values["oldFieldName"].trim() var newFieldName = values["newFieldName"].trim() var checkboxColumn = ""; var oldFieldNameColumn = ""; var newFieldNameColumn = ""; // create row var row = $("") row.append(checkboxColumn) row.append(oldFieldNameColumn) row.append(newFieldNameColumn) return row; } } @labelValueAux(key: String, label: Any)(valueElement : Any) = { @labelValue(key, label, false, None, 4)(valueElement) } @modalInner = {
@labelValueAux("oldFieldName", "Old Field Name") { } @labelValueAux("newFieldName", "New Field Name") { }
} @labelValue("fieldOldNewNames", "Old->New Field Name Mappings"){ @dynamicTable("fieldOldNewName", table, true, rowToModelJsFun, modalItemToRowJsFun, modalInner, None, 12) }