Merge 12304:14009 from trunk.
This commit is contained in:
commit
c8ee135104
36 changed files with 174 additions and 130 deletions
|
@ -55,7 +55,7 @@ class ApiController < ApplicationController
|
|||
points = Tracepoint.find_by_area(min_lat, min_lon, max_lat, max_lon, :offset => offset, :limit => TRACEPOINTS_PER_PAGE, :order => "timestamp DESC" )
|
||||
|
||||
doc = XML::Document.new
|
||||
doc.encoding = 'UTF-8'
|
||||
doc.encoding = XML::Encoding::UTF_8
|
||||
root = XML::Node.new 'gpx'
|
||||
root['version'] = '1.0'
|
||||
root['creator'] = 'OpenStreetMap.org'
|
||||
|
|
|
@ -29,7 +29,7 @@ class GeocoderController < ApplicationController
|
|||
|
||||
if results_count == 1
|
||||
position = results.collect { |s| s[:results] }.compact.flatten[0]
|
||||
page.call "setPosition", position[:lat], position[:lon], position[:zoom]
|
||||
page.call "setPosition", position[:lat].to_f, position[:lon].to_f, position[:zoom].to_i
|
||||
else
|
||||
page.call "openSidebar"
|
||||
end
|
||||
|
|
|
@ -11,19 +11,24 @@ class UserController < ApplicationController
|
|||
|
||||
def save
|
||||
@title = 'create account'
|
||||
@user = User.new(params[:user])
|
||||
|
||||
@user.visible = true
|
||||
@user.data_public = true
|
||||
@user.description = "" if @user.description.nil?
|
||||
@user.creation_ip = request.remote_ip
|
||||
|
||||
if @user.save
|
||||
flash[:notice] = "User was successfully created. Check your email for a confirmation note, and you\'ll be mapping in no time :-)<br>Please note that you won't be able to login until you've received and confirmed your email address."
|
||||
Notifier.deliver_signup_confirm(@user, @user.tokens.create)
|
||||
redirect_to :action => 'login'
|
||||
else
|
||||
if Acl.find_by_address(request.remote_ip, :conditions => {:k => "no_account_creation"})
|
||||
render :action => 'new'
|
||||
else
|
||||
@user = User.new(params[:user])
|
||||
|
||||
@user.visible = true
|
||||
@user.data_public = true
|
||||
@user.description = "" if @user.description.nil?
|
||||
@user.creation_ip = request.remote_ip
|
||||
|
||||
if @user.save
|
||||
flash[:notice] = "User was successfully created. Check your email for a confirmation note, and you\'ll be mapping in no time :-)<br>Please note that you won't be able to login until you've received and confirmed your email address."
|
||||
Notifier.deliver_signup_confirm(@user, @user.tokens.create)
|
||||
redirect_to :action => 'login'
|
||||
else
|
||||
render :action => 'new'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -52,8 +52,7 @@ class UserPreferenceController < ApplicationController
|
|||
|
||||
# update the entire set of preferences
|
||||
def update
|
||||
p = XML::Parser.new
|
||||
p.string = request.raw_post
|
||||
p = XML::Parser.string(request.raw_post)
|
||||
doc = p.parse
|
||||
|
||||
prefs = []
|
||||
|
|
|
@ -53,8 +53,7 @@ class Changeset < ActiveRecord::Base
|
|||
|
||||
def self.from_xml(xml, create=false)
|
||||
begin
|
||||
p = XML::Parser.new
|
||||
p.string = xml
|
||||
p = XML::Parser.string(xml)
|
||||
doc = p.parse
|
||||
|
||||
cs = Changeset.new
|
||||
|
|
|
@ -64,8 +64,7 @@ class Node < ActiveRecord::Base
|
|||
# Read in xml as text and return it's Node object representation
|
||||
def self.from_xml(xml, create=false)
|
||||
begin
|
||||
p = XML::Parser.new
|
||||
p.string = xml
|
||||
p = XML::Parser.string(xml)
|
||||
doc = p.parse
|
||||
|
||||
doc.find('//osm/node').each do |pt|
|
||||
|
|
|
@ -27,8 +27,7 @@ class Relation < ActiveRecord::Base
|
|||
|
||||
def self.from_xml(xml, create=false)
|
||||
begin
|
||||
p = XML::Parser.new
|
||||
p.string = xml
|
||||
p = XML::Parser.string(xml)
|
||||
doc = p.parse
|
||||
|
||||
doc.find('//osm/relation').each do |pt|
|
||||
|
|
|
@ -27,8 +27,7 @@ class Way < ActiveRecord::Base
|
|||
|
||||
def self.from_xml(xml, create=false)
|
||||
begin
|
||||
p = XML::Parser.new
|
||||
p.string = xml
|
||||
p = XML::Parser.string(xml)
|
||||
doc = p.parse
|
||||
|
||||
doc.find('//osm/way').each do |pt|
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
</tr>
|
||||
|
||||
<% unless way_details.containing_relation_members.empty? %>
|
||||
<tr>
|
||||
<tr valign="top">
|
||||
<th>Part of:</th>
|
||||
<td>
|
||||
<table padding="0">
|
||||
|
|
|
@ -17,27 +17,23 @@
|
|||
|
||||
|
||||
<% if @entries.empty? %>
|
||||
<p>No diary entries</p>
|
||||
|
||||
<p>No diary entries</p>
|
||||
<% else %>
|
||||
<p>Recent diary entries:</p>
|
||||
|
||||
<p>Recent diary entries:</p>
|
||||
<hr />
|
||||
<%= render :partial => 'diary_entry', :collection => @entries %>
|
||||
<hr />
|
||||
|
||||
<%= link_to "Older Entries", { :page => @entry_pages.current.next } if @entry_pages.current.next %>
|
||||
<% if @entry_pages.current.next and @entry_pages.current.previous %>
|
||||
|
|
||||
<% end %>
|
||||
<%= link_to "Newer Entries", { :page => @entry_pages.current.previous } if @entry_pages.current.previous %>
|
||||
<%= render :partial => 'diary_entry', :collection => @entries %>
|
||||
|
||||
<br />
|
||||
<%= link_to "Older Entries", { :page => @entry_pages.current.next } if @entry_pages.current.next %>
|
||||
<% if @entry_pages.current.next and @entry_pages.current.previous %>|<% end %>
|
||||
<%= link_to "Newer Entries", { :page => @entry_pages.current.previous } if @entry_pages.current.previous %>
|
||||
|
||||
<br />
|
||||
<% end %>
|
||||
|
||||
<%= rss_link_to :action => 'rss' %>
|
||||
|
||||
<% content_for :head do %>
|
||||
<%= auto_discovery_link_tag :atom, :action => 'rss' %>
|
||||
|
||||
|
||||
<br />
|
||||
<br />
|
||||
<% end %>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html>
|
||||
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
||||
<head>
|
||||
<%= javascript_include_tag 'prototype' %>
|
||||
<%= javascript_include_tag 'site' %>
|
||||
|
@ -8,6 +8,7 @@
|
|||
<%= 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 %>
|
||||
<title>OpenStreetMap<%= ' | '+ h(@title) if @title %></title>
|
||||
</head>
|
||||
<body>
|
||||
|
@ -69,11 +70,19 @@
|
|||
|
||||
<% unless @user %>
|
||||
<div id="intro">
|
||||
OpenStreetMap is a free editable map of the whole world. It is made by people like you.
|
||||
<p/>
|
||||
OpenStreetMap allows you to view, edit and use geographical data in a collaborative way from anywhere on Earth.
|
||||
<p/>
|
||||
OpenStreetMap's hosting is kindly supported by the <a href="http://www.vr.ucl.ac.uk">UCL VR Centre</a> and <a href="http://www.bytemark.co.uk">bytemark</a>.
|
||||
<p>
|
||||
OpenStreetMap is a free editable map of the whole world. It
|
||||
is made by people like you.
|
||||
</p>
|
||||
<p>
|
||||
OpenStreetMap allows you to view, edit and use geographical
|
||||
data in a collaborative way from anywhere on Earth.
|
||||
</p>
|
||||
<p>
|
||||
OpenStreetMap's hosting is kindly supported by the
|
||||
<a href="http://www.vr.ucl.ac.uk">UCL VR Centre</a> and
|
||||
<a href="http://www.bytemark.co.uk">bytemark</a>.
|
||||
</p>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
|
@ -89,6 +98,14 @@
|
|||
</div>
|
||||
<% end %>
|
||||
|
||||
<% if false %>
|
||||
<div id="donate">
|
||||
Support OpenStreetMap by
|
||||
<a href="http://donate.openstreetmap.org/">donating</a>
|
||||
to the Hardware Upgrade Fund.
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<div id="left_menu" class="left_menu">
|
||||
<a href="http://wiki.openstreetmap.org">Help & Wiki</a><br />
|
||||
<a href="http://www.opengeodata.org/">News blog</a><br />
|
||||
|
@ -97,21 +114,16 @@
|
|||
</div>
|
||||
|
||||
<%= yield :optionals %>
|
||||
<div id="cclogo">
|
||||
<center>
|
||||
|
||||
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
|
||||
<input type="hidden" name="cmd" value="_s-xclick" />
|
||||
<input type="image" src="https://www.paypal.com/en_US/i/btn/x-click-but21.gif" style="border: none;" name="submit" alt="Make payments with PayPal - it's fast, free and secure!" />
|
||||
<img alt="" border="0" src="https://www.paypal.com/en_GB/i/scr/pixel.gif" width="1" height="1" />
|
||||
<input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----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-----END PKCS7-----" />
|
||||
</form>
|
||||
|
||||
<%= link_to (image_tag "cc_button.png", :alt => "CC by-sa 2.0", :border => "0"), "http://creativecommons.org/licenses/by-sa/2.0/" %>
|
||||
|
||||
</center>
|
||||
</div>
|
||||
<center>
|
||||
<div class="button" style="width: 115px">
|
||||
<a href="http://donate.openstreetmap.org/"><img src="/images/donate.png" border="0" alt="Make a Donation" /></a>
|
||||
</div>
|
||||
|
||||
<div id="cclogo" class="button" style="width: 88px">
|
||||
<%= link_to image_tag("cc_button.png", :alt => "CC by-sa 2.0", :border => "0"), "http://creativecommons.org/licenses/by-sa/2.0/" %>
|
||||
</div>
|
||||
</center>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -1,12 +1,16 @@
|
|||
<p>Hi,</p>
|
||||
<p>Hi there!</p>
|
||||
|
||||
<p>Someone (hopefully you) would like to create an account over at
|
||||
<%= SERVER_URL %>.</p>
|
||||
|
||||
<p>If this is you, please click the link below to confirm that account.</p>
|
||||
<p>If this is you, welcome! Please click the link below to confirm that account and read on for more information about OpenStreetMap</p>
|
||||
|
||||
<p><a href="<%= @url %>"><%= @url %></a></p>
|
||||
|
||||
<p>You can watch an introductory video to OpenStreetMap <a href="http://showmedo.com/videos/video?name=1800000&fromSeriesID=180">video here</a>. There are more <a href="http://showmedo.com/videos/series?name=mS2P1ZqS6">videos here</a>.
|
||||
|
||||
Get reading about OpenStreetMap <a href="http://wiki.openstreetmap.org/wiki/Beginners%27_Guide">on the wiki</p> or <a href="http://www.opengeodata.org/">the opengeodata blog</a> which has <a href="http://www.opengeodata.org/?cat=13">podcasts to listen to</a> also!
|
||||
|
||||
<p>You may also want to <a href="http://wiki.openstreetmap.org/index.php?title=Special:Userlogin&type=signup&returnto=Main_Page">sign up to the OpenStreetMap wiki</a>.</p>
|
||||
|
||||
<p>It is recommended that you create a user wiki page, which includes category tags noting where you are, such as <a href="http://wiki.openstreetmap.org/index.php/Category:Users_in_London">[[Category:Users_in_London]]</a>.</p>
|
||||
|
|
|
@ -1,15 +1,32 @@
|
|||
Hi,
|
||||
Hi there!
|
||||
|
||||
Someone (hopefully you) would like to create an account over at
|
||||
<%= SERVER_URL %>
|
||||
|
||||
If this is you, please click the link below to confirm that account.
|
||||
If this is you, welcome! Please click the link below to confirm that
|
||||
account and read on for more information about OpenStreetMap.
|
||||
|
||||
<%= @url %>
|
||||
|
||||
You can watch an introductory video to OpenStreetMap here:
|
||||
|
||||
http://showmedo.com/videos/video?name=1800000&fromSeriesID=180
|
||||
|
||||
There are more videos here:
|
||||
|
||||
http://showmedo.com/videos/series?name=mS2P1ZqS6
|
||||
|
||||
Get reading about OpenStreetMap on the wiki:
|
||||
|
||||
http://wiki.openstreetmap.org/wiki/Beginners%27_Guide
|
||||
|
||||
OpenGeoData.org is OpenStreetMap's blog, and it has podcasts too:
|
||||
|
||||
http://www.opengeodata.org/
|
||||
|
||||
You may also want to sign up to the OpenStreetMap wiki at:
|
||||
|
||||
http://wiki.openstreetmap.org/index.php?title=Special:Userlogin&type=signup&returnto=Main_Page
|
||||
http://wiki.openstreetmap.org/index.php?title=Special:Userlogin&type=signup&returnto=Main_Page
|
||||
|
||||
It is recommended that you create a user wiki page, which includes
|
||||
category tags noting where you are, such as [[Category:Users_in_London]].
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
else if (zoomlevel<13) { var imgname = 'keymapnik'+zoomlevel+'.png'; }
|
||||
else { var imgname = 'keymapnik13.png'; }
|
||||
|
||||
updateSidebar("Map key", "<p><img src='images/"+imgname+"' /></p>");
|
||||
updateSidebar("Map key", "<p><img src='images/"+imgname+"' /><\/p>");
|
||||
openSidebar({ width: "210px" });
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<script type="text/javascript">
|
||||
<!--
|
||||
function startSearch() {
|
||||
updateSidebar("Search Results", "<p class='search_results_entry'>Searching...</p>");
|
||||
updateSidebar("Search Results", "<p class='search_results_entry'>Searching...<\/p>");
|
||||
|
||||
$("search_field").style.display = "none";
|
||||
$("search_active").style.display = "inline";
|
||||
|
@ -34,14 +34,14 @@
|
|||
<span class="oboxheader">Search</span>
|
||||
<span class="whereami"><a href="javascript:describeLocation()">Where am I?</a></span>
|
||||
<div class="search_form">
|
||||
<span id="search_field">
|
||||
<div id="search_field">
|
||||
<% form_remote_tag(:loading => "startSearch()",
|
||||
:complete => "endSearch()",
|
||||
:url => { :controller => :geocoder, :action => :search }) do %>
|
||||
<%= text_field_tag :query, h(params[:query]) %>
|
||||
<%= submit_tag "Go" %>
|
||||
<% end %>
|
||||
</span>
|
||||
</div>
|
||||
<p id="search_active">Searching...</p>
|
||||
</div>
|
||||
<p class="search_help">
|
||||
|
|
|
@ -21,17 +21,15 @@
|
|||
</div>
|
||||
|
||||
<div id="attribution">
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td align="left">http://creativecommons.org/licenses/by-sa/2.0/</td>
|
||||
<td align="right">http://openstreetmap.org/</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" align="center">
|
||||
Licensed under the Creative Commons Attribution-Share Alike 2.0 license
|
||||
by the OpenStreetMap project and its contributors.
|
||||
</td>
|
||||
</table>
|
||||
<table width="100%">
|
||||
<tr>
|
||||
<td align="left">http://creativecommons.org/licenses/by-sa/2.0/</td>
|
||||
<td align="right">http://openstreetmap.org/</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2" align="center">Licensed under the Creative Commons Attribution-Share Alike 2.0 license by the OpenStreetMap project and its contributors.</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<% if params['mlon'] and params['mlat'] %>
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
<h1><%= h(@title) %></h1>
|
||||
|
||||
<% content_for :head do %>
|
||||
<%= auto_discovery_link_tag :atom, :action => 'georss', :display_name => @display_name, :tag => @tag %>
|
||||
<% end %>
|
||||
|
||||
<p>
|
||||
<%= rss_link_to :action => 'georss', :display_name => @display_name, :tag => @tag %>
|
||||
|
|
|
@ -1,15 +1,13 @@
|
|||
<h1>Login:</h1><br />
|
||||
Please login or <%= link_to 'create an account', :controller => 'user', :action => 'new' %>.<br />
|
||||
<h1>Login</h1>
|
||||
|
||||
<p>Please login or <%= link_to 'create an account', :controller => 'user', :action => 'new' %>.</p>
|
||||
|
||||
<% form_tag :action => 'login' do %>
|
||||
<%= hidden_field_tag('referer', h(params[:referer])) %>
|
||||
<br/>
|
||||
<table>
|
||||
<tr><td class="fieldName">Email Address or username:</td><td><%= text_field('user', 'email',{:size => 50, :maxlength => 255}) %></td></tr>
|
||||
<tr><td class="fieldName">Email Address or Username:</td><td><%= text_field('user', 'email',{:size => 50, :maxlength => 255}) %></td></tr>
|
||||
<tr><td class="fieldName">Password:</td><td><%= password_field('user', 'password',{:size => 28, :maxlength => 255}) %> <span class="minorNote">(<%= link_to 'Lost your password?', :controller => 'user', :action => 'lost_password' %>)</span></td></tr>
|
||||
<tr><td colspan=2> <!--vertical spacer--></td></tr>
|
||||
<tr><td></td><td align="right"><%= submit_tag 'Login' %></td></tr>
|
||||
</table>
|
||||
|
||||
<br />
|
||||
<% end %>
|
||||
|
|
|
@ -1,8 +1,28 @@
|
|||
<h1>Create a user account</h1><br>
|
||||
Fill in the form and we'll send you a quick email to activate your account.
|
||||
<br><br>
|
||||
<h1>Create a User Account</h1>
|
||||
|
||||
By creating an account, you agree that all work uploaded to openstreetmap.org and all data created by use of any tools which connect to openstreetmap.org is to be (non-exclusively) licensed under <a href="http://creativecommons.org/licenses/by-sa/2.0/">this Creative Commons license (by-sa)</a>.<br><br>
|
||||
<% if Acl.find_by_address(request.remote_ip, :conditions => {:k => "no_account_creation"}) %>
|
||||
|
||||
<p>Unfortunately we are not currently able to create an account for
|
||||
you automatically.
|
||||
</p>
|
||||
|
||||
<p>Please contact the <a href="mailto:webmaster@openstreetmap.org">webmaster</a>
|
||||
to arrange for an account to be created - we will try and deal with
|
||||
the request as quickly as possible.
|
||||
</p>
|
||||
|
||||
<% else %>
|
||||
|
||||
<p>Fill in the form and we'll send you a quick email to activate your
|
||||
account.
|
||||
</p>
|
||||
|
||||
<p>By creating an account, you agree that all work uploaded to
|
||||
openstreetmap.org and all data created by use of any tools which
|
||||
connect to openstreetmap.org is to be (non-exclusively) licensed under
|
||||
<a href="http://creativecommons.org/licenses/by-sa/2.0/">this Creative
|
||||
Commons license (by-sa)</a>.
|
||||
</p>
|
||||
|
||||
<%= error_messages_for 'user' %>
|
||||
|
||||
|
@ -20,9 +40,6 @@ By creating an account, you agree that all work uploaded to openstreetmap.org an
|
|||
<tr><td colspan=2> <!--vertical spacer--></td></tr>
|
||||
<tr><td></td><td align=right><input type="submit" value="Signup"></td></tr>
|
||||
</table>
|
||||
<br>
|
||||
<br>
|
||||
<!--
|
||||
See also <a href="http://wiki.openstreetmap.org/index.php/Creating_an_Account" title="wiki help information about this screen">'Creating an Account' help</a>
|
||||
-->
|
||||
<% end %>
|
||||
|
||||
<% end %>
|
||||
|
|
|
@ -46,7 +46,7 @@ Rails::Initializer.run do |config|
|
|||
# config.gem "hpricot", :version => '0.6', :source => "http://code.whytheluckystiff.net"
|
||||
# config.gem "aws-s3", :lib => "aws/s3"
|
||||
config.gem 'composite_primary_keys', :version => '1.1.0'
|
||||
config.gem 'libxml-ruby', :version => '0.9.4', :lib => 'libxml'
|
||||
config.gem 'libxml-ruby', :version => '>= 1.0.0', :lib => 'libxml'
|
||||
config.gem 'rmagick', :lib => 'RMagick'
|
||||
config.gem 'mysql'
|
||||
|
||||
|
|
|
@ -1,9 +1,5 @@
|
|||
# This is required otherwise libxml writes out memory errors to
|
||||
# the standard output and exits uncleanly
|
||||
# Changed method due to deprecation of the old register_error_handler
|
||||
# http://libxml.rubyforge.org/rdoc/classes/LibXML/XML/Parser.html#M000076
|
||||
# So set_handler is used instead
|
||||
# http://libxml.rubyforge.org/rdoc/classes/LibXML/XML/Error.html#M000334
|
||||
LibXML::XML::Error.set_handler do |message|
|
||||
raise message
|
||||
end
|
||||
|
|
|
@ -3,9 +3,9 @@ class PopulateNodeTagsAndRemove < ActiveRecord::Migration
|
|||
have_nodes = select_value("SELECT count(*) FROM current_nodes").to_i != 0
|
||||
|
||||
if have_nodes
|
||||
prefix = File.join Dir.tmpdir, "019_populate_node_tags_and_remove.#{$$}."
|
||||
prefix = File.join Dir.tmpdir, "020_populate_node_tags_and_remove.#{$$}."
|
||||
|
||||
cmd = "db/migrate/019_populate_node_tags_and_remove_helper"
|
||||
cmd = "db/migrate/020_populate_node_tags_and_remove_helper"
|
||||
src = "#{cmd}.c"
|
||||
if not File.exists? cmd or File.mtime(cmd) < File.mtime(src) then
|
||||
system 'cc -O3 -Wall `mysql_config --cflags --libs` ' +
|
|
@ -18,7 +18,7 @@ class DiffReader
|
|||
# in OsmChange format. All diffs must be limited to a single changeset
|
||||
# given in +changeset+.
|
||||
def initialize(data, changeset)
|
||||
@reader = XML::Reader.new data
|
||||
@reader = XML::Reader.string(data)
|
||||
@changeset = changeset
|
||||
end
|
||||
|
||||
|
@ -26,11 +26,12 @@ class DiffReader
|
|||
# Reads the next element from the XML document. Checks the return value
|
||||
# and throws an exception if an error occurred.
|
||||
def read_or_die
|
||||
# NOTE: XML::Reader#read returns 0 for EOF and -1 for error.
|
||||
# we allow an EOF because we are expecting this to always happen
|
||||
# at the end of a document.
|
||||
if @reader.read < 0
|
||||
raise APIBadUserInput.new("Unexpected end of XML document.")
|
||||
# NOTE: XML::Reader#read returns false for EOF and raises an
|
||||
# exception if an error occurs.
|
||||
begin
|
||||
@reader.read
|
||||
rescue LibXML::XML::Error => ex
|
||||
raise OSM::APIBadXMLError.new("changeset", xml, ex.message)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
@ -240,7 +240,7 @@ module OSM
|
|||
class GeoRSS
|
||||
def initialize(feed_title='OpenStreetMap GPS Traces', feed_description='OpenStreetMap GPS Traces', feed_url='http://www.openstreetmap.org/traces/')
|
||||
@doc = XML::Document.new
|
||||
@doc.encoding = 'UTF-8'
|
||||
@doc.encoding = XML::Encoding::UTF_8
|
||||
|
||||
rss = XML::Node.new 'rss'
|
||||
@doc.root = rss
|
||||
|
@ -326,7 +326,7 @@ module OSM
|
|||
class API
|
||||
def get_xml_doc
|
||||
doc = XML::Document.new
|
||||
doc.encoding = 'UTF-8'
|
||||
doc.encoding = XML::Encoding::UTF_8
|
||||
root = XML::Node.new 'osm'
|
||||
root['version'] = API_VERSION
|
||||
root['generator'] = GENERATOR
|
||||
|
|
BIN
public/images/donate.png
Normal file
BIN
public/images/donate.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 2.3 KiB |
|
@ -1,5 +1,6 @@
|
|||
User-agent: *
|
||||
Disallow: /api/
|
||||
Disallow: /browse/
|
||||
Disallow: /trace/
|
||||
Disallow: /edit
|
||||
Disallow: /login
|
|
@ -64,13 +64,14 @@ body {
|
|||
}
|
||||
|
||||
#intro {
|
||||
width: 150px;
|
||||
width: 170px;
|
||||
margin: 10px;
|
||||
padding: 10px;
|
||||
border: 1px solid #ccc;
|
||||
font-size: 11px;
|
||||
}
|
||||
|
||||
#intro p { margin: 10px; }
|
||||
|
||||
#alert {
|
||||
width: 150px;
|
||||
margin: 10px;
|
||||
|
@ -82,6 +83,17 @@ body {
|
|||
font-size: 14px;
|
||||
}
|
||||
|
||||
#donate {
|
||||
width: 150px;
|
||||
margin: 10px;
|
||||
padding: 10px;
|
||||
border: 1px solid #ccc;
|
||||
background: #ea0;
|
||||
line-height: 1.2em;
|
||||
text-align: left;
|
||||
font-size: 12px;
|
||||
}
|
||||
|
||||
.left_menu {
|
||||
width: 150px;
|
||||
min-width: 150px;
|
||||
|
@ -361,17 +373,9 @@ hr {
|
|||
top: 4px;
|
||||
}
|
||||
|
||||
#cclogo {
|
||||
width: 150px;
|
||||
min-width: 150px;
|
||||
margin: 10px;
|
||||
padding: 10px;
|
||||
left: 0px;
|
||||
line-height: 1.2em;
|
||||
text-align: left;
|
||||
font-size: 14px;
|
||||
font-weight: bold;
|
||||
background: #fff;
|
||||
.button {
|
||||
margin-top: 10px;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
#controls img
|
||||
|
|
|
@ -276,8 +276,7 @@ class NodeControllerTest < ActionController::TestCase
|
|||
##
|
||||
# parse some xml
|
||||
def xml_parse(xml)
|
||||
parser = XML::Parser.new
|
||||
parser.string = xml
|
||||
parser = XML::Parser.string(xml)
|
||||
parser.parse
|
||||
end
|
||||
end
|
||||
|
|
|
@ -540,8 +540,7 @@ OSM
|
|||
##
|
||||
# parse some xml
|
||||
def xml_parse(xml)
|
||||
parser = XML::Parser.new
|
||||
parser.string = xml
|
||||
parser = XML::Parser.string(xml)
|
||||
parser.parse
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue