Skip to content

Instantly share code, notes, and snippets.

@mcocoba
Last active March 15, 2018 22:44
Show Gist options
  • Save mcocoba/76185a39feb2053f038b85cb9b863aa1 to your computer and use it in GitHub Desktop.
Save mcocoba/76185a39feb2053f038b85cb9b863aa1 to your computer and use it in GitHub Desktop.
postEvent(data, callbackFN, errorFN){
let event_data = new FormData();
Object.keys(data).forEach((key) => {
if (data[key] instanceof FileList) {
event_data.append(`event[${key}]`, data[key][0], data[key][0].name);
}
else {
if(key == 'attachments_attributes'){
for (let x=0;x<data[key].length;x++){
if(data[key][x].type == 'picture'){
event_data.append(`event[${key}][${x}][picture]`, data[key][x].picture[0], data[key][x].picture[0].name);
event_data.append(`event[${key}][${x}][type]`, data[key][x].type);
}
else{
event_data.append(`event[${key}][${x}][form_id]`, data[key][x].form_id);
event_data.append(`event[${key}][${x}][type]`, data[key][x].type);
}
}
}
else{
event_data.append(`event[${key}]`, data[key]);
}
}
});
let config = new this.baseConfig({
method: 'post',
url: '/api/events',
data: event_data,
headers: { 'Authorization':(new KonektiApiV1).authorization ,'X-Client-Identifier':(new KonektiApiV1).client_identifier }
});
this.request.do(config, callbackFN, errorFN);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment