-
-
Save jonmarkgo/2979755 to your computer and use it in GitHub Desktop.
Cost of Freedom Text Based App
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
header('Content-type: text/xml'); | |
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; | |
$message = strip_tags($_REQUEST['Body']); | |
$response = "Welcome to the Cost of Freedom. Please text your state abbreviation to get Voter ID requirements and info."; | |
//our spreadsheet's key | |
$key = "0Aoz1Ir-h-0g5dG00N1lDVG1COTFHellrc2o2bDhoeXc"; | |
//the public url | |
$url = "http://spreadsheets.google.com/feeds/cells/$key/1/public/values"; | |
$ch = curl_init(); | |
//set some curl options | |
curl_setopt($ch, CURLOPT_URL, $url); | |
curl_setopt($ch, CURLOPT_HEADER, 0); | |
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); | |
$google_sheet = curl_exec($ch); | |
curl_close($ch); | |
$doc = new DOMDocument(); | |
$doc->loadXML($google_sheet); | |
//for each state, we load in the appropriate cell from the spreadsheet and then print out the text within | |
$states = array( | |
'AL' => 5, | |
'AK' => 8, | |
'AZ' => 11, | |
'AR' => 14, | |
'CA' => 17, | |
'CO' => 20, | |
'CT' => 23, | |
'DE' => 26, | |
'DC' => 29, | |
'FL' => 32, | |
'GA' => 35, | |
'HI' => 38, | |
'ID' => 41, | |
'IL' => 44, | |
'IN' => 47, | |
'IA' => 50, | |
'KS' => 53, | |
'KY' => 56, | |
'LA' => 59, | |
'ME' => 62, | |
'MD' => 65, | |
'MA' => 68, | |
'MI' => 71, | |
'MN' => 74, | |
'MS' => 77, | |
'MO' => 80, | |
'MT' => 83, | |
'NE' => 86, | |
'NV' => 89, | |
'NH' => 92, | |
'NJ' => 95, | |
'NM' => 98, | |
'NY' => 101, | |
'NC' => 104, | |
'ND' => 107, | |
'OH' => 110, | |
'OK' => 113, | |
'OR' => 116, | |
'PA' => 119, | |
'RI' => 122, | |
'SC' => 125, | |
'SD' => 128, | |
'TN' => 131, | |
'TX' => 134, | |
'UT' => 137, | |
'VT' => 140, | |
'VA' => 143, | |
'WA' => 146, | |
'WV' => 149, | |
'WI' => 152, | |
'WY' => 155 | |
); | |
if (in_array($message, $states)) { | |
$node = $doc->getElementsByTagName("cell")->item($states[$message]); | |
$response = $node->textContent; | |
} | |
?> | |
<Response> | |
<Sms><?php echo $response; ?></Sms> | |
</Response> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment