Automatically exported from code.google.com/p/planningalerts
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
16 роки тому
17 роки тому
17 роки тому
17 роки тому
17 роки тому
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. <?php
  2. require_once('config.php');
  3. require_once('DB.php');
  4. class Application{
  5. var $authority_id = 0;
  6. var $council_reference = "";
  7. var $date_received = "";
  8. var $date_scraped ="";
  9. var $address = "";
  10. var $postcode = "";
  11. var $description = "";
  12. var $status = "";
  13. var $info_url = "";
  14. var $info_tinyurl = "";
  15. var $comment_url = "";
  16. var $comment_tinyurl = "";
  17. var $map_url = "";
  18. var $x = 0;
  19. var $y = 0;
  20. #lat/lon used by rss.tpl, not yet in schema
  21. var $lat = 0;
  22. var $lon = 0;
  23. #authority name in join'd table 'authority'
  24. var $authority_name = "";
  25. function exists(){
  26. $db = DB::connect(DB_CONNECTION_STRING);
  27. $exists = false;
  28. $council_reference = $db->quote($this->council_reference);
  29. $authority_id = $db->quote($this->authority_id);
  30. $sql = "select application_id
  31. from application
  32. where council_reference = $council_reference
  33. and authority_id = $authority_id";
  34. if(sizeof($db->getAll($sql)) >0){
  35. $exists = true;
  36. }
  37. return $exists;
  38. }
  39. //Save
  40. function save(){
  41. $db = DB::connect(DB_CONNECTION_STRING);
  42. $council_reference = $db->quote($this->council_reference);
  43. $address = $db->quote($this->address);
  44. $postcode = $db->quote($this->postcode);
  45. $description = $db->quote($this->description);
  46. $info_url = $db->quote($this->info_url);
  47. $info_tinyurl = $db->quote($this->info_tinyurl);
  48. $comment_url = $db->quote($this->comment_url);
  49. $comment_tinyurl = $db->quote($this->comment_tinyurl);
  50. $authority_id = $db->quote($this->authority_id);
  51. $x = $db->quote($this->x);
  52. $y = $db->quote($this->y);
  53. $date_scraped = $db->quote($this->date_scraped);
  54. $date_received = $db->quote($this->date_received);
  55. $map_url = $db->quote($this->map_url);
  56. $sql ="insert into application
  57. (
  58. council_reference,
  59. address,
  60. postcode,
  61. description,
  62. info_url,
  63. info_tinyurl,
  64. comment_url,
  65. comment_tinyurl,
  66. authority_id,
  67. x,
  68. y,
  69. date_scraped,
  70. date_recieved,
  71. map_url
  72. )
  73. values(
  74. $council_reference,
  75. $address,
  76. $postcode,
  77. $description,
  78. $info_url,
  79. $info_tinyurl,
  80. $comment_url,
  81. $comment_tinyurl,
  82. $authority_id,
  83. $x,
  84. $y,
  85. $date_scraped,
  86. $date_received,
  87. $map_url
  88. )";
  89. $db->query($sql);
  90. }
  91. }
  92. class Applications{
  93. //by point
  94. function query($x,$y,$d) {
  95. $db = DB::connect(DB_CONNECTION_STRING);
  96. $sql = "select council_reference, address, postcode, description, info_url, comment_url, map_url, x, y, date_recieved, date_scraped, full_name
  97. from application
  98. inner join authority on application.authority_id = authority.authority_id
  99. where application.x > " . $db->quote($x - $d) . " and application.x < " . $db->quote($x + $d) .
  100. " and application.y > " . $db->quote($y - $d) . " and application.y < " . $db->quote($y + $d) .
  101. " order by date_scraped desc limit 100";
  102. $application_results = $db->getAll($sql);
  103. return applications::load_applications($application_results);
  104. }
  105. //by area
  106. function query_area($x1,$y1,$x2,$y2) {
  107. $db = DB::connect(DB_CONNECTION_STRING);
  108. $sql = "select council_reference, address, postcode, description, info_url, comment_url, map_url, x, y, date_recieved, date_scraped, full_name
  109. from application
  110. inner join authority on application.authority_id = authority.authority_id
  111. where application.x > " . $db->quote($x1) . " and application.x < " . $db->quote($x2) .
  112. " and application.y > " . $db->quote($y1) . " and application.y < " . $db->quote($y2) .
  113. " order by date_scraped desc limit 100";
  114. $application_results = $db->getAll($sql);
  115. return applications::load_applications($application_results);
  116. }
  117. //by authority
  118. function query_authority($authority_short_name) {
  119. $db = DB::connect(DB_CONNECTION_STRING);
  120. $sql = "select council_reference, address, postcode, description, info_url, comment_url, map_url, x, y, date_recieved, date_scraped, full_name
  121. from application
  122. inner join authority on application.authority_id = authority.authority_id
  123. where authority.short_name = " . $db->quote($authority_short_name) ." order by date_scraped desc limit 100";
  124. $application_results = $db->getAll($sql);
  125. return applications::load_applications($application_results);
  126. }
  127. //latest
  128. function query_latest($count = 100) {
  129. $db = DB::connect(DB_CONNECTION_STRING);
  130. $sql = "select council_reference, address, postcode, description, info_url, comment_url, map_url, x, y, date_recieved, date_scraped, full_name
  131. from application
  132. inner join authority on application.authority_id = authority.authority_id
  133. order by date_scraped desc limit " . $count;
  134. $application_results = $db->getAll($sql);
  135. return applications::load_applications($application_results);
  136. }
  137. function load_applications($application_results){
  138. $applications = array();
  139. if (sizeof($application_results) > 0) {
  140. for ($i=0; $i < sizeof($application_results); $i++) {
  141. $application = new application();
  142. $application->council_reference = $application_results[$i][0];
  143. $application->address = $application_results[$i][1];
  144. $application->postcode = $application_results[$i][2];
  145. $application->description = $application_results[$i][3];
  146. $application->info_url = $application_results[$i][4];
  147. $application->comment_url = $application_results[$i][5];
  148. $application->map_url = $application_results[$i][6];
  149. $application->x = $application_results[$i][7];
  150. $application->y = $application_results[$i][8];
  151. $application->date_received = $application_results[$i][9];
  152. $application->date_scraped = $application_results[$i][10];
  153. $application->authority_name = $application_results[$i][11];
  154. $os = new OSRef($application->x, $application->y);
  155. $latlng = $os->toLatLng();
  156. $application->lat = $latlng->lat;
  157. $application->lon = $latlng->lng;
  158. array_push($applications, $application);
  159. }
  160. }
  161. return $applications;
  162. }
  163. }
  164. ?>