Make subtitle an HTML element.
[rails.git] / lib / potlatch.rb
index b2f8eb479cffe025b98518528cd135321ffc322a..1b01a88671b94a1f7a618f85def3e40e6ccdd263 100644 (file)
@@ -83,7 +83,7 @@ module Potlatch
       when 'Hash'
         a=3.chr
         n.each do |k,v|
-          a+=encodestring(k)+encodevalue(v)
+          a+=encodestring(k.to_s)+encodevalue(v)
         end
         a+0.chr+0.chr+9.chr
       when 'String'
@@ -92,6 +92,10 @@ module Potlatch
         0.chr+encodedouble(n)
       when 'NilClass'
         5.chr
+         when 'TrueClass'
+        0.chr+encodedouble(1)
+         when 'FalseClass'
+        0.chr+encodedouble(0)
       else
         RAILS_DEFAULT_LOGGER.error("Unexpected Ruby type for AMF conversion: "+n.class.to_s)
       end
@@ -143,7 +147,7 @@ module Potlatch
             presetcategory=$2
             presetmenus[presettype].push(presetcategory)
             presetnames[presettype][presetcategory]=["(no preset)"]
-          elsif (t=~/^(.+):\s?(.+)$/) then
+          elsif (t=~/^([\w\s]+):\s?(.+)$/) then
             pre=$1; kv=$2
             presetnames[presettype][presetcategory].push(pre)
             presets[pre]={}
@@ -168,12 +172,26 @@ module Potlatch
         }
       end
 
+      # Read relations colours/styling
+      relcolours={}; relalphas={}; relwidths={}
+      File.open("#{RAILS_ROOT}/config/potlatch/relation_colours.txt") do |file|
+        file.each_line {|line|
+          t=line.chomp
+          if (t=~/(\w+)\s+([^\s]+)\s+([^\s]+)\s+([^\s]+)/) then
+            tag=$1
+            if ($2!='-') then relcolours[tag]=$2.hex end
+            if ($3!='-') then relalphas[tag]=$3.to_i end
+            if ($4!='-') then relwidths[tag]=$4.to_i end
+          end
+        }
+      end
+
       # Read auto-complete
       autotags={}; autotags['point']={}; autotags['way']={}; autotags['POI']={};
       File.open("#{RAILS_ROOT}/config/potlatch/autocomplete.txt") do |file|
         file.each_line {|line|
           t=line.chomp
-          if (t=~/^(\w+)\/(\w+)\s+(.+)$/) then
+          if (t=~/^([\w:]+)\/(\w+)\s+(.+)$/) then
             tag=$1; type=$2; values=$3
             if values=='-' then autotags[type][tag]=[]
             else autotags[type][tag]=values.split(',').sort.reverse end
@@ -181,7 +199,10 @@ module Potlatch
         }
       end
 
-      [presets,presetmenus,presetnames,colours,casing,areas,autotags]
+#        # Read internationalisation
+#        localised = YAML::load(File.open("#{RAILS_ROOT}/config/potlatch/localised.yaml"))
+
+      [presets,presetmenus,presetnames,colours,casing,areas,autotags,relcolours,relalphas,relwidths]
     end
   end