136 lines
5.6 KiB
JavaScript
136 lines
5.6 KiB
JavaScript
({
|
|
doInit : function(component, event, helper) {
|
|
helper.addRowHelper(component, 1);
|
|
var options = [
|
|
{ value: "equals", label: "equals" },
|
|
{ value: "contains", label: "contains" },
|
|
{ value: "starts with", label: "starts with" },
|
|
{ value: "ends with", label: "ends with" }
|
|
];
|
|
component.set("v.operatorOptions", options);
|
|
},
|
|
|
|
handleOptionSelected: function (cmp, event) {
|
|
//Get the string of the "value" attribute on the selected option
|
|
var selectedValue = event.getParam("value");
|
|
alert("Selected Option: '" + selectedValue + "'");
|
|
},
|
|
|
|
loadAccountFields: function (component, event, helper) {
|
|
var options = [];
|
|
var action = component.get("c.accFields");
|
|
action.setCallback(this, function(response){
|
|
var state = response.getState();
|
|
if(state == 'SUCCESS') {
|
|
var arr = response.getReturnValue() ;
|
|
arr.forEach(function(element) {
|
|
options.push({ value: element, label: element });
|
|
});
|
|
component.set('v.AccountFields', options);
|
|
console.log('Acc fileds :: ',options);
|
|
}
|
|
});
|
|
$A.enqueueAction(action);
|
|
},
|
|
|
|
loadShopifyFields: function (component, event, helper) {
|
|
var options = [];
|
|
var action = component.get("c.getShopifyFields");
|
|
action.setParams({"objectName":"Account"});
|
|
action.setCallback(this, function(response){
|
|
var state = response.getState();
|
|
if(state == 'SUCCESS') {
|
|
var arr = JSON.parse(response.getReturnValue()) ;
|
|
arr.forEach(function(element) {
|
|
console.log('element :: ',element.Name);
|
|
options.push({ value: element.Name, label: element.Name });
|
|
});
|
|
component.set('v.shopifyFields', options);
|
|
console.log('Shop fileds :: ',options);
|
|
}
|
|
});
|
|
$A.enqueueAction(action);
|
|
},
|
|
|
|
addRow : function(component, event, helper) {
|
|
var loopVar = 1;
|
|
if(event.getSource().get('v.name') === 'multipleRows' && !$A.util.isEmpty('v.numberOfRows') ) {
|
|
loopVar = component.get('v.numberOfRows') > 10 ? 0 : component.get('v.numberOfRows');
|
|
}
|
|
helper.addRowHelper(component, loopVar);
|
|
|
|
console.log('value of combo:: ',component.find("accField").get("v.value"));
|
|
console.log('value of combo:: ',component.find("operatorField").get("v.value"));
|
|
console.log('value of combo:: ',component.find("shopifyField").get("v.value"));
|
|
|
|
var objectList = component.get("v.comboValue");
|
|
objectList.push({"AccountField":component.find("accField").get("v.value"),
|
|
"OperatorField":component.find("operatorField").get("v.value"),
|
|
"ShopifyField":component.find("shopifyField").get("v.value")});
|
|
|
|
component.set("v.comboValue", objectList);
|
|
console.log('value of comboValue:: ',component.get("v.comboValue"));
|
|
},
|
|
|
|
editRow : function(component, event, helper) {
|
|
var dynamicRowsList = component.get("v.dynamicRowsList");
|
|
var index = dynamicRowsList.findIndex(x => x.rowNumber === event.getSource().get('v.name'))
|
|
if(index != -1)
|
|
dynamicRowsList[index].editMode = !dynamicRowsList[index].editMode;
|
|
component.set("v.dynamicRowsList", dynamicRowsList);
|
|
},
|
|
|
|
deleteRow : function(component, event, helper) {
|
|
var dynamicRowsList = component.get("v.dynamicRowsList");
|
|
var index = dynamicRowsList.findIndex(x => x.rowNumber === event.getSource().get('v.name'))
|
|
if(index != -1)
|
|
dynamicRowsList.splice(index, 1);
|
|
component.set("v.dynamicRowsList", dynamicRowsList);
|
|
|
|
var deleteId = event.target.closest("[data-id]").dataset.id;
|
|
console.log('value of deleteId:: ',deleteId);
|
|
|
|
var deleteList = component.get("v.comboValue");
|
|
deleteList.splice(deleteId,1);
|
|
component.set("v.comboValue", deleteList);
|
|
console.log('value of deleteIndex:: ',deleteList);
|
|
|
|
|
|
|
|
},
|
|
|
|
cloneRow : function(component, event, helper) {
|
|
var dynamicRowsList = component.get("v.dynamicRowsList");
|
|
var index = dynamicRowsList.findIndex(x => x.rowNumber === event.getSource().get('v.name'))
|
|
if(index != -1) {
|
|
dynamicRowsList.push({
|
|
'Name': dynamicRowsList[index].Name,
|
|
'Phone': dynamicRowsList[index].Phone,
|
|
'AccountNumber': dynamicRowsList[index].AccountNumber,
|
|
'editMode': dynamicRowsList[index].editMode,
|
|
'rowNumber':dynamicRowsList.length + 1
|
|
});
|
|
}
|
|
component.set("v.dynamicRowsList", dynamicRowsList);
|
|
},
|
|
|
|
incrementRow: function(component, event, helper) {
|
|
var numberOfRows = component.get("v.numberOfRows");
|
|
component.set("v.numberOfRows", numberOfRows + 1);
|
|
},
|
|
|
|
decrementRow: function(component, event, helper) {
|
|
var numberOfRows = component.get("v.numberOfRows");
|
|
component.set("v.numberOfRows", numberOfRows - 1);
|
|
},
|
|
|
|
saveRecords : function(component, event, helper) {
|
|
var validExpense = component.find('dynamiRowsForm').reduce(function ( validSoFar, inputCmp ) {
|
|
inputCmp.showHelpMessageIfInvalid();
|
|
return validSoFar && inputCmp.get('v.validity').valid;
|
|
}, true);
|
|
if(validExpense){
|
|
helper.saveRecordsHelper(component, event, helper);
|
|
}
|
|
},
|
|
}) |