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 роки тому
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  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_recieved = "";
  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. $map_url = $db->quote($this->map_url);
  55. $sql ="insert into application
  56. (
  57. council_reference,
  58. address,
  59. postcode,
  60. description,
  61. info_url,
  62. info_tinyurl,
  63. comment_url,
  64. comment_tinyurl,
  65. authority_id,
  66. x,
  67. y,
  68. date_scraped,
  69. map_url
  70. )
  71. values(
  72. $council_reference,
  73. $address,
  74. $postcode,
  75. $description,
  76. $info_url,
  77. $info_tinyurl,
  78. $comment_url,
  79. $comment_tinyurl,
  80. $authority_id,
  81. $x,
  82. $y,
  83. $date_scraped,
  84. $map_url
  85. )";
  86. $db->query($sql);
  87. }
  88. }
  89. class Applications{
  90. //by point
  91. function query($x,$y,$d) {
  92. $db = DB::connect(DB_CONNECTION_STRING);
  93. $sql = "select council_reference, address, postcode, description, info_url, comment_url, map_url, x, y, date_recieved, date_scraped, full_name
  94. from application
  95. inner join authority on application.authority_id = authority.authority_id
  96. where application.x > " . $db->quote($x - $d) . " and application.x < " . $db->quote($x + $d) .
  97. " and application.y > " . $db->quote($y - $d) . " and application.y < " . $db->quote($y + $d) .
  98. " order by date_scraped desc limit 100";
  99. $application_results = $db->getAll($sql);
  100. return applications::load_applications($application_results);
  101. }
  102. //by area
  103. function query_area($x1,$y1,$x2,$y2) {
  104. $db = DB::connect(DB_CONNECTION_STRING);
  105. $sql = "select council_reference, address, postcode, description, info_url, comment_url, map_url, x, y, date_recieved, date_scraped, full_name
  106. from application
  107. inner join authority on application.authority_id = authority.authority_id
  108. where application.x > " . $db->quote($x1) . " and application.x < " . $db->quote($x2) .
  109. " and application.y > " . $db->quote($y1) . " and application.y < " . $db->quote($y2) .
  110. " order by date_scraped desc limit 100";
  111. $application_results = $db->getAll($sql);
  112. return applications::load_applications($application_results);
  113. }
  114. //by authority
  115. function query_authority($authority_short_name) {
  116. $db = DB::connect(DB_CONNECTION_STRING);
  117. $sql = "select council_reference, address, postcode, description, info_url, comment_url, map_url, x, y, date_recieved, date_scraped, full_name
  118. from application
  119. inner join authority on application.authority_id = authority.authority_id
  120. where authority.short_name = " . $db->quote($authority_short_name) ." order by date_scraped desc limit 100";
  121. $application_results = $db->getAll($sql);
  122. return applications::load_applications($application_results);
  123. }
  124. //latest
  125. function query_latest($count = 100) {
  126. $db = DB::connect(DB_CONNECTION_STRING);
  127. $sql = "select council_reference, address, postcode, description, info_url, comment_url, map_url, x, y, date_recieved, date_scraped, full_name
  128. from application
  129. inner join authority on application.authority_id = authority.authority_id
  130. order by date_scraped desc limit " . $count;
  131. $application_results = $db->getAll($sql);
  132. return applications::load_applications($application_results);
  133. }
  134. function load_applications($application_results){
  135. $applications = array();
  136. if (sizeof($application_results) > 0) {
  137. for ($i=0; $i < sizeof($application_results); $i++) {
  138. $application = new application();
  139. $application->council_reference = $application_results[$i][0];
  140. $application->address = $application_results[$i][1];
  141. $application->postcode = $application_results[$i][2];
  142. $application->description = $application_results[$i][3];
  143. $application->info_url = $application_results[$i][4];
  144. $application->comment_url = $application_results[$i][5];
  145. $application->map_url = $application_results[$i][6];
  146. $application->x = $application_results[$i][7];
  147. $application->y = $application_results[$i][8];
  148. $application->date_received = $application_results[$i][9];
  149. $application->date_scraped = $application_results[$i][10];
  150. $application->authority_name = $application_results[$i][11];
  151. $os = new OSRef($application->x, $application->y);
  152. $latlng = $os->toLatLng();
  153. $application->lat = $latlng->lat;
  154. $application->lon = $latlng->lng;
  155. array_push($applications, $application);
  156. }
  157. }
  158. return $applications;
  159. }
  160. }
  161. ?>