JSFiddle - React, Tailwind, and code Playground
HTML
<h2>CSV HEADERS</h2>
<h2>CSV VALUES</h2>
<div id="keys"></div>
<script>
// Load the SDK asynchronously
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {
return;
}
js = d.createElement(s);
js.id = id;
js.src = "http://connect.facebook.net/en_US/all.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<div id="values"></div>
CSS
h2 {
font-weight:bold;
margin:0 auto 1em auto;
font-size:20px;
}
#keys, #values, h2 {
width:50%;
margin:0;
float:left;
white-space:nowrap;
}
JavaScript
function callFBandDownloadFile(ids) {
var csvString = '';
var hasRun = false;
for (var i = 0; i < ids.length; i++) {
FB.api(ids[i], 'get', function (response) {
if (response.length != 'undefined') {
//csvString = toCsv(response);
csvString += (hasRun == false ? getArrayValue(response, true) : getArrayValue(response, false));
console.log(csvString);
hasRun == true;
}
});
//updateprogressBar(i + 1, ids.length);
}
$('#keys').html(csvString);
window.open("data:text/csv;charset=utf-8," + escape(csvString))
}
function toCsv(response, appendColumnTitles) {
}
var a = ['/74286767824', '196174170417584', '115384455153999', '114330111620'];
callFBandDownloadFile([a[0]]);
function getArrayValue(array, appendColumnTitles) {
var wantedInfo = ['id', 'name', 'username', 'link', 'about', 'likes', 'talking_about_count', 'checkins', 'were_here_count', 'category', 'category_list', 'location', 'description', 'general_info', 'phone', 'public_transit', 'website', 'link', 'mission', 'company_overview', 'founded', 'parking', 'general_manager'];
var rowContent = {};
var currentKey = '';
var currentKeyVal = '';
function appendDefaultValue(key, val) {
rowContent[key] = (typeof array[key] == 'undefined' ? 'N/A' : (val == '' ? 'N/A' : val));
}
function appendValuesFromArray(array, key) {
if (array[key] != 'undefined') {
for (var i in array[key]) {
if (typeof array[key][i] == 'object') {
appendValuesFromArray(array[key][i], i);
} else {
rowContent[i] = (typeof array[i] == 'undefined' ? (array[key][i] == '' ? 'N/A' : array[key][i]) : 'N/A');
}
}
}
}
for (var key = 0; key < wantedInfo.length; key++) {
currentKey = wantedInfo[key];
currentKeyVal = array[currentKey];
...