travlrmap 1.2.0 → 1.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -26,6 +26,11 @@ module Travlrmap
26
26
 
27
27
  alias_method :h, :escape_html
28
28
 
29
+ def domain_from_url(url)
30
+ host = URI.parse(url).host.downcase
31
+ host.start_with?('www.') ? host[4..-1] : host
32
+ end
33
+
29
34
  def protected!
30
35
  return if authorized?
31
36
  headers['WWW-Authenticate'] = 'Basic realm="Restricted Area"'
@@ -1,3 +1,3 @@
1
1
  module Travlrmap
2
- VERSION = "1.2.0"
2
+ VERSION = "1.3.0"
3
3
  end
@@ -7,16 +7,18 @@
7
7
 
8
8
  <% if point[:href] %>
9
9
  <a href='<%= point[:href] %>' target='_blank'>
10
- <% if point[:linkimg] || point[:linktext] %>
11
- <% if point[:linkimg] %>
12
- <img src='<%= point[:linkimg] %>'><br />
13
- <% end %>
14
- <% if point[:linktext] %>
15
- <%= h point[:linktext] %>
16
- <% end %>
17
- <% else %>
18
- Link
10
+ <% end %>
11
+ <% if point[:linkimg] || point[:linktext] %>
12
+ <% if point[:linkimg] %>
13
+ <img src='<%= point[:linkimg] %>'><br />
14
+ <% end %>
15
+ <% if point[:linktext] %>
16
+ <%= h point[:linktext] %>
19
17
  <% end %>
18
+ <% elsif point[:href] %>
19
+ <%= domain_from_url(point[:href]) %>
20
+ <% end %>
21
+ <% if point[:href] %>
20
22
  </a>
21
23
  <% end %>
22
24
  </p>
@@ -3,12 +3,16 @@
3
3
  <div class="col-md-9">
4
4
  <input type="text" class="form-control" id="location" autofocus>
5
5
  </div>
6
- <div class="col-md-1">
6
+ <div class="col-md-3">
7
7
  <button type="submit" class="btn btn-primary">Search</button>
8
+ <button type="button" id="my_location" class="btn btn-primary">My Location</button>
8
9
  </div>
9
10
  </form>
10
11
  </div>
11
12
  <div class="row"><div class="col-md-12">&nbsp;</div></div>
13
+ <div class="row">
14
+ <div class="col-md-9"><center>Perform a search to place a marker or right click to place one anywhere.</center></div>
15
+ </div>
12
16
  <div class="row" style="height: 80%">
13
17
  <div class="col-md-9" style="height: 100%">
14
18
  <div class="map" id="main_map"> </div>
@@ -49,9 +53,6 @@
49
53
  </form>
50
54
  </div>
51
55
  </div>
52
- <div class="row">
53
- <div class="col-md-9"><center>Perform a search to place a marker or right click to place one anywhere.</center></div>
54
- </div>
55
56
 
56
57
  <script src="/moment.js"></script>
57
58
  <script src="/datepicker/bootstrap-datepicker.js"></script>
@@ -64,11 +65,7 @@
64
65
  var addrComponents = results[0].address_components;
65
66
 
66
67
  for (var i = 0; i < addrComponents.length; i++) {
67
- if (addrComponents[i].types[0] == "point_of_interest") {
68
- return addrComponents[i].long_name;
69
- }
70
-
71
- if (addrComponents[i].types[0] == "postal_town") {
68
+ if ($.inArray(addrComponents[i].types[0], ["establishment", "point_of_interest", "postal_town", "locality"])) {
72
69
  return addrComponents[i].long_name;
73
70
  }
74
71
  }
@@ -108,7 +105,6 @@
108
105
 
109
106
  document.getElementById('point_title').value = getLocationName(results);
110
107
  document.getElementById('point_country').value = getCountry(results);
111
- document.getElementById('point_date').value = moment().format("YYYY-MM-DD");
112
108
  } else {
113
109
  alert("Geocode was not successful for the following reason: " + status);
114
110
  }
@@ -155,6 +151,22 @@
155
151
  });
156
152
  }
157
153
 
154
+ function updateWithCurrentPosition(pos) {
155
+ map.removeMarkers();
156
+
157
+ GMaps.geocode({
158
+ lat: pos.coords.latitude,
159
+ lng: pos.coords.longitude,
160
+ callback: function(results, status) {
161
+ updateForm(results, status, true)
162
+ }
163
+ });
164
+ }
165
+
166
+ function errorGettingCurrentPos(error) {
167
+ alert("Could not get current position: " + err.message);
168
+ }
169
+
158
170
  $(document).ready(function() {
159
171
  $('#point_date').datepicker({
160
172
  format: 'yyyy-mm-dd',
@@ -196,6 +208,14 @@
196
208
  selectText('preview_yaml');
197
209
  };
198
210
 
211
+ document.getElementById('my_location').onclick = function() {
212
+ if (navigator.geolocation) {
213
+ navigator.geolocation.getCurrentPosition(updateWithCurrentPosition, errorGettingCurrentPos);
214
+ } else {
215
+ alert("Optaining your position is not supported with this browser");
216
+ }
217
+ };
218
+
199
219
  $('#point_info').submit(function(e) {
200
220
  e.preventDefault();
201
221
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: travlrmap
3
3
  version: !ruby/object:Gem::Version
4
- hash: 31
4
+ hash: 27
5
5
  prerelease: false
6
6
  segments:
7
7
  - 1
8
- - 2
8
+ - 3
9
9
  - 0
10
- version: 1.2.0
10
+ version: 1.3.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - R.I.Pienaar
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2015-01-13 00:00:00 +00:00
18
+ date: 2015-01-16 00:00:00 +00:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency