PageRenderTime 65ms CodeModel.GetById 34ms RepoModel.GetById 0ms app.codeStats 1ms

/mobileoffer.php

https://github.com/deviltry/qmigo
PHP | 345 lines | 157 code | 66 blank | 122 comment | 26 complexity | 5a7c3aede832b26918af64f636f44a56 MD5 | raw file
  1. <?
  2. # Make sure we display errors to the browser
  3. error_reporting(E_ALL ^ E_NOTICE);
  4. ini_set('display_errors', 1);
  5. #########################################################
  6. # Initialize a new session or obtain old one if possible
  7. #########################################################
  8. //session_save_path(); // see if dreamhost can do something...
  9. require "info_session.php";
  10. session_name($mySessionName);
  11. session_start();
  12. $pageTitle = "QMIGO: Your Offer";
  13. # Get our DB info
  14. require "info.php";
  15. # Get our site info
  16. require "offersiteinfo.php";
  17. # Make sure we display errors to the browser
  18. error_reporting(E_ALL ^ E_NOTICE);
  19. ini_set('display_errors', 1);
  20. ## TIME VARIABLES ##
  21. $time = time(); //server time
  22. $timeUnix = strtotime($time); // server time in Unix Time
  23. #########################################################
  24. # Connect to the database.
  25. #########################################################
  26. $connection = mysql_connect($mySqlHostname, $mySqlUsername, $mySqlPassword);
  27. if (!$connection)
  28. die("Error " . mysql_errno() . " : " . mysql_error());
  29. # Select the DB
  30. $db_selected = mysql_select_db($mySqlDatabase, $connection);
  31. if (!$db_selected)
  32. die("Error " . mysql_errno() . " : " . mysql_error());
  33. #########################################################
  34. # Check that we have MEMBER ID or GUEST ID
  35. #########################################################
  36. // CRAIG
  37. $member_id = $_GET["id"]; // POSTED MEMBER ID
  38. $guest_id = $_GET["gid"]; // POSTED GUEST ID
  39. //echo $guest_id;
  40. $offer_id = $_GET["o"]; // POSTED OFFER ID IN THE BROWSER
  41. /*
  42. if (empty($member_id))
  43. {
  44. echo "NO MEMBER";
  45. //header("Location: member404.php"); //steer them to an ERROR page...design one
  46. //exit;
  47. }
  48. */
  49. if ((empty($member_id)) && (empty($guest_id)))
  50. {
  51. //echo "TROUBLESHOOT : NO PEOPLE identified";
  52. //print_r($_GET);
  53. header("Location: member404.php");
  54. exit;
  55. }
  56. if (empty($member_id))
  57. {
  58. $SqlGuest = "SELECT member_id FROM qmigo_guests WHERE id= " . $guest_id;
  59. //print $SqlGuest;
  60. $result = mysql_query($SqlGuest,$connection);
  61. if (!$result) die("Error " . mysql_errno() . " : " . mysql_error());
  62. if ($row = mysql_fetch_array($result,MYSQL_ASSOC))
  63. { $member_id = $row['member_id'];
  64. }
  65. }
  66. #########################################################################
  67. # Check if MEMBER ID AND OFFER ID are available and related to each other
  68. #########################################################################
  69. $member_name = "";
  70. $SqlStatement = "SELECT * FROM qmigo_status WHERE member_id = ". $member_id ." AND offer_id = " . $offer_id ;
  71. //echo $SqlStatement;
  72. //$SqlStatement = "SELECT QR_status from qmigo_status WHERE member_id = ". $member_id ." AND offer_id = " . $offer_id ;
  73. $result = mysql_query($SqlStatement,$connection);
  74. if (!$result) die("Error " . mysql_errno() . " : " . mysql_error());
  75. /*
  76. if (mysql_num_rows($result) == 0)
  77. { # There is no member with this ID
  78. mysql_close($connection);
  79. header("Location: member404.php"); // change for member specific
  80. exit;
  81. }
  82. */
  83. #########################################################
  84. # Get Member Name
  85. #########################################################
  86. $member_name = "";
  87. $SqlStatement = "SELECT firstname, lastname FROM qmigo_members WHERE id= " . $member_id;
  88. //echo $SqlStatement;
  89. $result = mysql_query($SqlStatement,$connection);
  90. if (!$result) die("Error " . mysql_errno() . " : " . mysql_error());
  91. if ($row = mysql_fetch_array($result,MYSQL_NUM))
  92. { $member_name = "$row[0] ";
  93. }
  94. /*
  95. else
  96. { # There is no member with this ID
  97. mysql_close($connection);
  98. header("Location: member404.php"); // change for member specific
  99. exit;
  100. }
  101. */
  102. #########################################################################
  103. # Check if GUEST ID AND OFFER ID are available and related to each other
  104. #########################################################################
  105. $guest_name = "";
  106. $SqlStatementGuest = "SELECT * FROM qmigo_guests WHERE id= " . $guest_id . " AND offer_id = " . $offer_id;
  107. //echo $SqlStatementGuest;
  108. $resultGuest = mysql_query($SqlStatementGuest,$connection);
  109. //if (!$resultGuest) die("Error " . mysql_errno() . " : " . mysql_error());
  110. if ($row = mysql_fetch_array($resultGuest,MYSQL_NUM))
  111. { $guest_first_name = "$row[1] ";
  112. }
  113. // checking to make sure sendsms.php won't blast old offers out -http://qmigo.com/qmigo_sendsms.php
  114. #########################################################
  115. # Check if OFFER HAS NOT EXPIRED - IF SO, DISPLAY LOLCAT
  116. #########################################################
  117. $offer_name = "";
  118. $SqlStatement = "SELECT * FROM qmigo_offers WHERE id=" . $offer_id ;
  119. //echo "YAY";
  120. //echo $SqlStatement;
  121. $result = mysql_query($SqlStatement,$connection);
  122. if (!$result) die("Error " . mysql_errno() . " : " . mysql_error());
  123. if ($row = mysql_fetch_array($result,MYSQL_ASSOC))
  124. { $offer_name = $row['offer']; // offer name row
  125. $offer_expire = $row['offer_expire']; //offer expire row
  126. //$est= date('m/d/Y h:i:s', strtotime('+3 hours')); // converts dreamhost's PST into EST
  127. //$estTime = strtotime($est); // puts it into UNIX time - greenwich standard time
  128. $expiredTimeUnix = strtotime($offer_expire);
  129. if ($expiredTimeUnix - $time >= 0)
  130. {
  131. $expired = FALSE ; // False = TIME LEFT / Still Valid
  132. }
  133. else
  134. {
  135. $expired = TRUE; // True = Time Expired
  136. }
  137. /*
  138. BUG TO BE FIXED
  139. else
  140. { # There is no member with this ID
  141. mysql_close($connection);
  142. header("Location: member404.php"); // change for member specific
  143. exit;
  144. }
  145. */
  146. }
  147. #########################################################
  148. # Check if OFFER HAS BEEN REDEEMED ALREADY - MAKE SURE TO PREVENT CHEATING.
  149. #########################################################
  150. //$redeemed = ""; //???
  151. // CHECKS TO MAKE SURE OFFER IS ACTIVE AND NOT REDEEMED
  152. $SqlStatementMember = "SELECT QR_status from qmigo_status WHERE member_id = " . $member_id . " AND offer_id = " . $offer_id ;
  153. //echo $SqlStatementMember;
  154. //$SqlStatementGuest = "SELECT * FROM qmigo_guests WHERE id= " . $guest_id . " AND offer_id = " . $offer_id;
  155. $result = mysql_query($SqlStatementMember,$connection);
  156. if (!$result) die("Error " . mysql_errno() . " : " . mysql_error());
  157. if ($row = mysql_fetch_assoc($result))
  158. { $redeemed = $row["QR_status"]; // Row for QR_status value
  159. if ($redeemedMember == 1) {
  160. $redeemedMember = TRUE ; // QR_status = 1, OFFER HAS ALREADY BEEN REDEEMED
  161. }
  162. else if ($redeemedMember == 0) {
  163. $redeemedMember = FALSE; // QR_status = 0, OFFER IS STILL ACTIVE/valid.
  164. //DO SOMETHING IN THE HTML BELOW
  165. }
  166. }
  167. /*
  168. $SqlStatement = "SELECT QR_status from qmigo_guests WHERE id = ". $guest_id ." AND offer_id = " . $offer_id ;
  169. $result = mysql_query($SqlStatementGuest,$connection);
  170. if (!$result) die("Error " . mysql_errno() . " : " . mysql_error());
  171. if ($row = mysql_fetch_assoc($result))
  172. { $redeemed = $row["QR_status"]; // Row for QR_status value
  173. if ($redeemedGuest == 1) {
  174. $redeemedGuest = TRUE ; // QR_status = 1, OFFER HAS ALREADY BEEN REDEEMED
  175. }
  176. else if ($redeemedGuest == 0) {
  177. $redeemedGuest = FALSE; // QR_status = 0, OFFER IS STILL ACTIVE/valid.
  178. //DO SOMETHING IN THE HTML BELOW
  179. }
  180. }
  181. */
  182. #########################################################
  183. # Use SELECT to show VENDOR INFO + OFFER INFO
  184. #########################################################
  185. # $SqlStatement = "SELECT offer, unix_timestamp(offer_expire) as offer_expire FROM socialdrinkster_offers ORDER BY offer_expire desc LIMIT 1";
  186. // VENDOR X OFFER ONE - TO - MANY
  187. $SqlStatement = "Select o.id, o.offer, unix_timestamp(o.offer_expire) AS offer_expire, v.venue, v.venue_streetaddress, v.venue_city, v.venue_state, v.venue_zipcode,
  188. v.venue_phone FROM qmigo_offers o, qmigo_vendors v WHERE v.id = o.vendor_id AND o.id = $offer_id LIMIT 1";
  189. // PICK SPECIFIC OFFER AND SPICK SPECIFIC VENDOR FROM THAT OFFER
  190. # Run the LATEST VENDOR INFO + OFFER INFO query on the database through the connection
  191. $result = mysql_query($SqlStatement,$connection);
  192. if (!$result)
  193. die("Error " . mysql_errno() . " : " . mysql_error());
  194. ########################################################
  195. # Get our site info -> menu bar
  196. require "offersiteinfo.php";
  197. # Write the Mobile-Friendly header
  198. include "mobileheader.php";
  199. $qmigo_url = "http://www.qmigo.com/offercheck.php?id=". $member_id . "&o=" . $offer_id;
  200. if ($expired) {
  201. $qrcode = "http://cyn.ical.us/media/blogs/mymedia/prophet_lol_cat.jpg";
  202. //$qrcode = "http://cnn.com";
  203. // OFFER HAS EXPIRED
  204. $msg = "<h1>Offer already expired.</h1>";
  205. $SqlStatement = "UPDATE qmigo_status SET QR_status = 2 WHERE member_id = ". $member_id ." AND offer_id = " . $offer_id ;
  206. # 0 = active, 1 = redeemed, 2 = expired
  207. }
  208. else if ($redeemed) {
  209. $qrcode = "images/nodice.gif";
  210. $msg = "No dice. You've already redeemed your offer.";
  211. }
  212. else {
  213. $qrcode = "http://chart.apis.google.com/chart?cht=qr&chs=400x400&chl=" . urlencode($qmigo_url);
  214. // $SqlStatement = "UPDATE qmigo_status SET QR_status = 1 WHERE member_id = ". $member_id ." AND offer_id = " . $offer_id ;
  215. # 0 = active, 1 = redeemed, 2 = expired
  216. // $msg = "Redeem it, " . $member_name ;
  217. }
  218. $setexpire= mysql_query($SqlStatement,$connection);
  219. if (!$setexpire)
  220. die("Error " . mysql_errno() . " : " . mysql_error());
  221. ?>
  222. <!-- QR CODE PLACED HERE -->
  223. <img src="<?PHP echo $qrcode ?>" id="qrid" />
  224. <h1><?PHP echo $msg ?> </h1>
  225. <?PHP //echo $member_name ?>
  226. <?
  227. //echo $SqlStatement ;
  228. // NOT RUNNING THE PROPER VENDOR ID WITH OFFER.
  229. $fmt = "%m/%d/%Y %I:%M %p";
  230. while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) // {}'s used like '', ""s to recognize as VARIABLE.
  231. {
  232. $t = strftime($fmt,$row['offer_expire']);
  233. $offer_id = $row['id'];
  234. echo <<<END
  235. <br />
  236. <b> $offer_name </b> @ {$row['venue']} <br />
  237. Ends @ <b> $t </b> <br />
  238. {$row['venue_streetaddress']}, {$row['venue_city']},{$row['venue_state']},{$row['venue_zipcode']} <br />
  239. <a class="call" href="tel:1{$row['venue_phone']}"> {$row['venue_phone']} </a><br />
  240. END;
  241. }
  242. ?>
  243. <script language="JavaScript">
  244. // formatting for this javascript applet - TargetDate = "04/15/2010 11:10 PM";
  245. TargetDate = "<?PHP echo $t ?>";
  246. BackColor = "white";
  247. ForeColor = "red";
  248. CountActive = true;
  249. CountStepper = -1;
  250. LeadingZero = true;
  251. //DisplayFormat = "%%D%% Days, %%H%% Hours, %%M%% Minutes, %%S%% Seconds.";
  252. DisplayFormat = "%%H%%H: %%M%%M: %%S%%S";
  253. FinishMessage = "Offer Time is Expired!";
  254. </script>
  255. <script language="JavaScript" src="http://scripts.hashemian.com/js/countdown.js"></script>
  256. <br />
  257. Cheers, <br />
  258. Qmigo
  259. <?
  260. #########################################################
  261. # Write end HTML here
  262. #########################################################
  263. include "mobilefooter.php";
  264. ?>