forked from WashDems-Public/Data
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathorgs.html
115 lines (104 loc) · 3.78 KB
/
orgs.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
<!DOCTYPE html>
<html>
<head>
<title>Local Democratic Party Organizations</title>
<script type="text/javascript">
// Returns a string from the org JSON object
function getOrgHTMLfromJSONObject(objOrg) {
var strReturn = "<tr>";
// Concatenate orgShort + orgType + "Democrats" to get org full name
strReturn = objOrg.orgShort.toString() + " " + objOrg.orgType.toString() + " Democrats";
// Try to wrap org full name in orgWeb IF orgWeb length > 0
try {
if (objOrg.orgWeb.length > 0) {
strReturn = "<a href='" + objOrg.orgWeb + "'>" + strReturn + "</a>";
}
} catch (err) {
}
// Wrap org full name in table cell
strReturn = "<td>" + strReturn + "</td>";
// Try to add the org's Facebook page IF orgFbPage length > 0
try {
if (objOrg.orgFbPage.length > 0) {
strReturn += "<td>" + "<a href='" + objOrg.orgFbPage + "'>" + "Facebook page" + "</a>" + "</td>";
} else {
strReturn += "<td></td>";
}
} catch (err) {
strReturn += "<td></td>";
}
// Try to add the org's Facebook group IF orgFbGroup length > 0
try {
if (objOrg.orgFbGroup.length > 0) {
strReturn += "<td>" + "<a href='" + objOrg.orgFbGroup + "'>" + "Facebook group" + "</a>" + "</td>";
} else {
strReturn += "<td></td>";
}
} catch (err) {
strReturn += "<td></td>";
}
// Try to add the org's Twitter alias IF orgTwAlias length > 0
try {
if (objOrg.orgTwAlias.length > 0) {
strReturn += "<td>" + "<a href='https://twitter.com/" + objOrg.orgTwAlias + "'>" + "@" + objOrg.orgTwAlias + "</a>" + "</td>";
} else {
strReturn += "<td></td>";
}
} catch (err) {
strReturn += "<td></td>";
}
// Try to add the org's 2016 Endorsements link IF length > 0
try {
if (objOrg.orgEndorsements2016.length > 0) {
strReturn += "<td>" + "<a href='" + objOrg.orgEndorsements2016 + "'>" + "2016 Endorsements" + "</a>" + "</td>";
}
} catch (err) {
strReturn += "<td></td>";
}
// Close the table row
strReturn += "</tr>";
return strReturn ;
} // end getOrgHTMLfromJSONObject
function changeText() {
document.getElementById('pLocalOrgs').innerHTML = 'Loading requested data...';
var request = new XMLHttpRequest();
request.onreadystatechange = function () {
var DONE = this.DONE || 4;
if (this.readyState === DONE){
// alert(this.readyState);
// alert(request.responseText);
var dataObj = JSON.parse(request.responseText);
var strOrgsList = "<table>";
// Add a table row of headers
strOrgsList += "<tr>";
strOrgsList += "<td><b>Organization</b></td>";
strOrgsList += "<td><b>Facebook page</b></td>";
strOrgsList += "<td><b>Facebook group</b></td>";
strOrgsList += "<td><b>Twitter</b></td>";
strOrgsList += "<td><b>2016 Endorsements</b></td>";
strOrgsList += "</tr>";
// alert ( typeof dataObj );
// alert (dataObj.toString() )
// alert (dataObj[1].orgShort.toString() + " test" );
// alert (dataObj.length);
// for each object in the dataObj array, parse it:
for (i = 0; i < dataObj.length; i++ ){
strOrgsList += getOrgHTMLfromJSONObject(dataObj[i]);
}
strOrgsList += "</table>";
// alert (strOrgsList);
document.getElementById('pLocalOrgs').innerHTML = strOrgsList;
}
};
request.open('GET', 'orgs.json', true);
request.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); // Tells server that this call is made for ajax purposes.
request.send(null); // No data needs to be sent along with the request.
document.getElementById('pLocalOrgs').innerHTML = 'Rendering requested data...';
}
</script>
</head>
<body onload="changeText()">
<h1>Local Democratic Party Organizations</h1>
<p id="pLocalOrgs">Loading data...</p>
</body>
</html>