]> git.openstreetmap.org Git - rails.git/commitdiff
merge r17141:17256 from trunk
authorMatt Amos <zerebubuth@gmail.com>
Tue, 25 Aug 2009 16:49:52 +0000 (16:49 +0000)
committerMatt Amos <zerebubuth@gmail.com>
Tue, 25 Aug 2009 16:49:52 +0000 (16:49 +0000)
app/controllers/application_controller.rb
app/controllers/trace_controller.rb
app/models/changeset.rb
app/views/layouts/site.html.erb
app/views/site/edit.html.erb
app/views/user/login.html.erb
config/locales/sl.yml
public/stylesheets/site-sml.css [new file with mode: 0644]
test/functional/changeset_controller_test.rb

index c43271b93a81faf5b3426a75097ac5fc1053f0e5..6dbe9165ca2593b20f5fff3c7e6c46f7469016e6 100644 (file)
@@ -174,8 +174,6 @@ class ApplicationController < ActionController::Base
     rescue OSM::APIError => ex
       report_error ex.message, ex.status
     rescue Exception => ex
-      logger.info("API threw unexpected #{ex.class} exception: #{ex.message}")
-      ex.backtrace.each { |l| logger.info(l) }
       report_error "#{ex.class}: #{ex.message}", :internal_server_error
     end
   end
index 10aecd4adc7733e8c2309253bbbed6d5ad2f4b02..f06a162fbc00b850d03b971cc7a59ae9ad60ec62 100644 (file)
@@ -45,15 +45,15 @@ class TraceController < ApplicationController
     # 4 - user's traces, not logged in as that user = all user's public traces
     if target_user.nil? # all traces
       if @user
-        conditions = ["(gpx_files.visibility in ('public', 'identifiable') OR gpx_files.user_id = ?)", @user.id] #1
+        conditions = ["(gpx_files.visibility <> 'private' OR gpx_files.user_id = ?)", @user.id] #1
       else
-        conditions  = ["gpx_files.visibility in ('public', 'identifiable')"] #2
+        conditions  = ["gpx_files.visibility <> 'private'"] #2
       end
     else
       if @user and @user == target_user
         conditions = ["gpx_files.user_id = ?", @user.id] #3 (check vs user id, so no join + can't pick up non-public traces by changing name)
       else
-        conditions = ["gpx_files.visibility in ('public', 'identifiable') AND gpx_files.user_id = ?", target_user.id] #4
+        conditions = ["gpx_files.public <> 'private' AND gpx_files.user_id = ?", target_user.id] #4
       end
     end
     
@@ -207,7 +207,7 @@ class TraceController < ApplicationController
   end
 
   def georss
-    conditions = ["gpx_files.visibility in ('public', 'identifiable')"]
+    conditions = ["gpx_files.visibility <> 'private'"]
 
     if params[:display_name]
       conditions[0] += " AND users.display_name = ?"
index 4efd4f9e7f755e0655d4ee89f55bfcf989e6ed62..5c961a06470c1999d74df7565707559956811135 100644 (file)
@@ -112,10 +112,10 @@ class Changeset < ActiveRecord::Base
 
     # FIXME - this looks nasty and violates DRY... is there any prettier 
     # way to do this? 
-    @bbox[0] = [-180 * GeoRecord::SCALE, array[0] + EXPAND * (@bbox[0] - @bbox[2])].max if array[0] < @bbox[0]
-    @bbox[1] = [ -90 * GeoRecord::SCALE, array[1] + EXPAND * (@bbox[1] - @bbox[3])].max if array[1] < @bbox[1]
-    @bbox[2] = [ 180 * GeoRecord::SCALE, array[2] + EXPAND * (@bbox[2] - @bbox[0])].min if array[2] > @bbox[2]
-    @bbox[3] = [  90 * GeoRecord::SCALE, array[3] + EXPAND * (@bbox[3] - @bbox[1])].min if array[3] > @bbox[3]
+    @bbox[0] = array[0] + EXPAND * (@bbox[0] - @bbox[2]) if array[0] < @bbox[0]
+    @bbox[1] = array[1] + EXPAND * (@bbox[1] - @bbox[3]) if array[1] < @bbox[1]
+    @bbox[2] = array[2] + EXPAND * (@bbox[2] - @bbox[0]) if array[2] > @bbox[2]
+    @bbox[3] = array[3] + EXPAND * (@bbox[3] - @bbox[1]) if array[3] > @bbox[3]
 
     # update active record. rails 2.1's dirty handling should take care of
     # whether this object needs saving or not.
index 59b7c304bd94e573c030e057f750b802dd782dcd..ed8c1456b5dd6e8fe45f3f0d810ff65a799a4d85 100644 (file)
@@ -1,11 +1,14 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<%= I18n.locale %>" lang="<%= I18n.locale %>" dir="<%= t'html.dir' %>">
   <head>
+    <meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0">
     <%= javascript_include_tag 'prototype' %>
     <%= javascript_include_tag 'site' %>
     <!--[if lt IE 7]><%= javascript_include_tag 'pngfix' %><![endif]--> <!-- thanks, microsoft! -->
-    <%= stylesheet_link_tag 'site' %>
-    <%= stylesheet_link_tag 'print', :media => "print" %>
+    <!--[if IE]><%= stylesheet_link_tag 'site', :media => "screen" %><![endif]--> <!-- IE is totally broken with CSS media queries -->
+    <%= stylesheet_link_tag 'site-sml', :media => "only screen and (max-width: 481px)" %> 
+    <%= stylesheet_link_tag 'site', :media => "screen and (min-width: 482px)" %> 
+    <%= stylesheet_link_tag 'print', :media => "print" %> 
     <%= tag("link", { :rel => "search", :type => "application/opensearchdescription+xml", :title => "OpenStreetMap Search", :href => "/opensearch/osm.xml" }) %>
     <%= tag("meta", { :name => "description", :content => "OpenStreetMap is the free wiki world map." }) %>
     <%= yield :head %>
index 79b1f64af3d6da3dfb9418dae2931e06f0bea92d..142d7a3f312f1678b2a890c49bd7ab4144a1658e 100644 (file)
@@ -12,7 +12,7 @@
 <% else %>
 <% content_for :greeting do %>
 <% if @user and !@user.home_lon.nil? and !@user.home_lat.nil? %>
-<%= link_to_function t('layouts.home'), "setPosition(#{@user.home_lat}, #{@user.home_lon}, 10)", { :title => t('layouts.home_tooltip') } %> |
+<%= link_to_function 'home', "setPosition(#{@user.home_lat}, #{@user.home_lon}, 10)" %> |
 <% end %>
 <% end %>
 
index d77110d13b5bac1c9082bb1812ccb142116a1821..0ae8fc0d9da3ba6452094df6822378effde9c21f 100644 (file)
@@ -5,7 +5,7 @@
 <% form_tag :action => 'login' do %>
 <%= hidden_field_tag('referer', h(params[:referer])) %>
 <table>
-  <tr><td class="fieldName"><%= t 'user.login.email or username' %></td><td><%= text_field('user', 'email',{:size => 50, :maxlength => 255, :tabindex => 1}) %></td></tr>
+  <tr><td class="fieldName"><%= t 'user.login.email or username' %></td><td><%= text_field('user', 'email',{:size => 28, :maxlength => 255, :tabindex => 1}) %></td></tr>
   <tr><td class="fieldName"><%= t 'user.login.password' %></td><td><%= password_field('user', 'password',{:size => 28, :maxlength => 255, :tabindex => 2}) %> <span class="minorNote">(<%= link_to t('user.login.lost password link'), :controller => 'user', :action => 'lost_password' %>)</span></td></tr>
   <tr><td colspan=2>&nbsp;<!--vertical spacer--></td></tr>
   <tr><td></td><td align="right"><%= submit_tag t('user.login.login_button'), :tabindex => 3 %></td></tr>
index f79a9c1cf5b6840bb01cbf2891f2eb4e6e58b747..db249f264f306c1de6c1a2defaf8b1a26925c058 100644 (file)
@@ -322,16 +322,6 @@ sl:
       edit_link: Uredi ta vnos
     diary_comment:
       comment_from: "Komentar uporabnika {{link_user}} v {{comment_created_at}}"
-    feed:
-      user:
-        title: "Dnevnik OpenStreetMap uporabnika {{user}}"
-        description: "Nedavni zapisi v dnevnik OpenStreetmap uporabnika {{user}}"
-      language:
-        title: "Dnevnik OpenStreetMap v jeziku {{language_name}}"
-        description: "Nedavni zapisi v dnevnik uporabnikov OpenStreetmap v jeziku {{language_name}}"
-      all:
-        title: "Dnevnik OpenStreetMap"
-        description: "Nedavni zapisi v dnevnik uporabnikov OpenStreetmap"
   export:
     start:
       area_to_export: "Področje za izvoz"
diff --git a/public/stylesheets/site-sml.css b/public/stylesheets/site-sml.css
new file mode 100644 (file)
index 0000000..e3f3715
--- /dev/null
@@ -0,0 +1,65 @@
+body {
+  font-family: Arial,sans-serif;
+  color: #000;
+  background-color: #fff;
+  font-size: 12px;
+}
+
+#left {
+  display: none;
+}
+
+#greeting {
+  position: absolute;
+  top: 0px;
+  right: 0px;
+  height: 16px;
+  margin: 0px;
+  padding-right: 10px;
+  font-size: 13px;
+  line-height: 14px;
+}
+
+#content {
+  padding-top: 16px;
+  height: 640px;
+}
+
+#tabnav {
+/*  display: none;*/
+}
+
+#sidebar {
+  display: none;
+}
+
+#permalink {
+  display: none;
+}
+
+input[type="text"], input[type="password"], textarea {
+  border: 1px solid black;
+  font-size: 12px;
+}
+
+.olControlPanZoomBar {
+  display: none;
+}
+
+.olControlLayerSwitcher {
+  display: none;
+}
+
+.olControlAttribution {
+  display: none !important;
+}
+
+#attribution {
+  font-size: 10px;
+  text-align: center;
+}
+
+#map {
+  border: 1px solid black;
+  height: 480px;
+}
index b02f556c9faf04c5cb6a556f88ab6037206df5b1..46f8a1a6a6990ed0a34658018399a06db8f312b8 100644 (file)
@@ -419,57 +419,6 @@ EOF
     end
   end
 
-  def test_upload_large_changeset
-    basic_authorization users(:public_user).email, "test"
-
-    # create a changeset
-    content "<osm><changeset/></osm>"
-    put :create
-    assert_response :success, "Should be able to create a changeset: #{@response.body}"
-    changeset_id = @response.body.to_i
-    
-    # upload some widely-spaced nodes, spiralling positive and negative to cause 
-    # largest bbox over-expansion possible.
-    diff = <<EOF
-<osmChange>
- <create>
-  <node id='-1' lon='-20' lat='-10' changeset='#{changeset_id}'/>
-  <node id='-10' lon='20'  lat='10' changeset='#{changeset_id}'/>
-  <node id='-2' lon='-40' lat='-20' changeset='#{changeset_id}'/>
-  <node id='-11' lon='40'  lat='20' changeset='#{changeset_id}'/>
-  <node id='-3' lon='-60' lat='-30' changeset='#{changeset_id}'/>
-  <node id='-12' lon='60'  lat='30' changeset='#{changeset_id}'/>
-  <node id='-4' lon='-80' lat='-40' changeset='#{changeset_id}'/>
-  <node id='-13' lon='80'  lat='40' changeset='#{changeset_id}'/>
-  <node id='-5' lon='-100' lat='-50' changeset='#{changeset_id}'/>
-  <node id='-14' lon='100'  lat='50' changeset='#{changeset_id}'/>
-  <node id='-6' lon='-120' lat='-60' changeset='#{changeset_id}'/>
-  <node id='-15' lon='120'  lat='60' changeset='#{changeset_id}'/>
-  <node id='-7' lon='-140' lat='-70' changeset='#{changeset_id}'/>
-  <node id='-16' lon='140'  lat='70' changeset='#{changeset_id}'/>
-  <node id='-8' lon='-160' lat='-80' changeset='#{changeset_id}'/>
-  <node id='-17' lon='160'  lat='80' changeset='#{changeset_id}'/>
-  <node id='-9' lon='-179.9' lat='-89.9' changeset='#{changeset_id}'/>
-  <node id='-18' lon='179.9'  lat='89.9' changeset='#{changeset_id}'/>
- </create>
-</osmChange>
-EOF
-
-    # upload it, which used to cause an error like "PGError: ERROR: 
-    # integer out of range" (bug #2152). but shouldn't any more.
-    content diff
-    post :upload, :id => changeset_id
-    assert_response :success, 
-      "can't upload a spatially-large diff to changeset: #{@response.body}"
-
-    # check that the changeset bbox is within bounds
-    cs = Changeset.find(changeset_id)
-    assert cs.min_lon >= -180 * SCALE, "Minimum longitude (#{cs.min_lon / SCALE}) should be >= -180 to be valid."
-    assert cs.max_lon <=  180 * SCALE, "Maximum longitude (#{cs.max_lon / SCALE}) should be <= 180 to be valid."
-    assert cs.min_lat >=  -90 * SCALE, "Minimum latitude (#{cs.min_lat / SCALE}) should be >= -90 to be valid."
-    assert cs.max_lat >=   90 * SCALE, "Maximum latitude (#{cs.max_lat / SCALE}) should be <= 90 to be valid."
-  end
-
   ##
   # test that deleting stuff in a transaction doesn't bypass the checks
   # to ensure that used elements are not deleted.