]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - IkiWiki/Plugin/osm.pm
Detect image type from .JPG just like .jpg (etc.).
[git.ikiwiki.info.git] / IkiWiki / Plugin / osm.pm
index 84e43b71077fd00cf556312eae4f0881812ef6de..c9c5646c475801c125ac984a60a59a8a9b1f1cf3 100644 (file)
@@ -64,12 +64,12 @@ sub getsetup () {
 
 sub preprocess {
        my %params=@_;
 
 sub preprocess {
        my %params=@_;
-       my $page = $params{'page'};
-       my $dest = $params{'destpage'};
-       my $loc = $params{'loc'}; # sanitized below
-       my $lat = $params{'lat'}; # sanitized below
-       my $lon = $params{'lon'}; # sanitized below
-       my $href = $params{'href'};
+       my $page = $params{page};
+       my $dest = $params{destpage};
+       my $loc = $params{loc}; # sanitized below
+       my $lat = $params{lat}; # sanitized below
+       my $lon = $params{lon}; # sanitized below
+       my $href = $params{href};
 
        my ($width, $height, $float);
        $height = scrub($params{'height'} || "300px", $page, $dest); # sanitized here
 
        my ($width, $height, $float);
        $height = scrub($params{'height'} || "300px", $page, $dest); # sanitized here
@@ -162,17 +162,6 @@ sub process_waypoint {
                        will_render($page, "$map/pois.kml");
                }
        }
                        will_render($page, "$map/pois.kml");
                }
        }
-       my $href = IkiWiki::cgiurl(
-               do => "osm",
-               map => $map,
-               lat => $lat,
-               lon => $lon,
-               zoom => $zoom,
-       );
-       if (defined($destsources{htmlpage($map)})) {
-               $href = urlto($map,$page) . "?lat=$lat&lon=$lon&zoom=$zoom";
-               $href =~ s!&!&!g;
-       }
        $pagestate{$page}{'osm'}{$map}{'waypoints'}{$name} = {
                page => $page,
                desc => $desc,
        $pagestate{$page}{'osm'}{$map}{'waypoints'}{$name} = {
                page => $page,
                desc => $desc,
@@ -186,13 +175,22 @@ sub process_waypoint {
                # so must be absolute.
                href => urlto($page),
        };
                # so must be absolute.
                href => urlto($page),
        };
+
+       my $mapurl = IkiWiki::cgiurl(
+               do => "osm",
+               map => $map,
+               lat => $lat,
+               lon => $lon,
+               zoom => $zoom,
+       );
        my $output = '';
        if (defined($params{'embed'})) {
        my $output = '';
        if (defined($params{'embed'})) {
-               $params{'href'} = $href; # propagate down to embeded
-               $output .= preprocess(%params);
+               $output .= preprocess(%params,
+                       href => $mapurl,
+               );
        }
        if (!$hidden) {
        }
        if (!$hidden) {
-               $output .= "<a href=\"$href\"><img class=\"img\" src=\"$icon\" $alt /></a>";
+               $output .= "<a href=\"$mapurl\"><img class=\"img\" src=\"$icon\" $alt /></a>";
        }
        return $output;
 }
        }
        return $output;
 }
@@ -327,41 +325,6 @@ sub writekml($;$) {
        eval q{use XML::Writer};
        error $@ if $@;
        foreach my $map (keys %waypoints) {
        eval q{use XML::Writer};
        error $@ if $@;
        foreach my $map (keys %waypoints) {
-
-=pod
-Sample placemark:
-
-<?xml version="1.0" encoding="UTF-8"?>
-<kml xmlns="http://www.opengis.net/kml/2.2">
-  <Placemark>
-    <name>Simple placemark</name>
-    <description>Attached to the ground. Intelligently places itself 
-       at the height of the underlying terrain.</description>
-    <Point>
-      <coordinates>-122.0822035425683,37.42228990140251,0</coordinates>
-    </Point>
-  </Placemark>
-</kml>
-
-Sample style:
-
-
-        <Style id="sh_sunny_copy69">
-                <IconStyle>
-                        <scale>1.4</scale>
-                        <Icon>
-                                <href>http://waypoints.google.com/mapfiles/kml/shapes/sunny.png</href>
-                        </Icon>
-                        <hotSpot x="0.5" y="0.5" xunits="fraction" yunits="fraction"/>
-                </IconStyle>
-                <LabelStyle>
-                        <color>ff00aaff</color>
-                </LabelStyle>
-        </Style>
-
-
-=cut
-
                my $output;
                my $writer = XML::Writer->new( OUTPUT => \$output,
                        DATA_MODE => 1, ENCODING => 'UTF-8');
                my $output;
                my $writer = XML::Writer->new( OUTPUT => \$output,
                        DATA_MODE => 1, ENCODING => 'UTF-8');