Main | Version 1.1 »

May 13, 2008

GeoSpatial Simple 1.0

GeoSpatial Simple is a Movable Type plugin that allows you to associate locations with blog entries using Google Maps. Each blog entry can have a location (latitude, longitude), and a map can be shown for the location. Also, a map can be shown which displays all of the locations for the entire blog. Locations can be found using addresses or by scrolling the map, so you do not need to find or lookup the coordinates for your location like many other plugins force you to do. Locations can have custom map markers ("piks") and custom text inside of the popup map info balloons.

The plugin also allows for these blog entries to be published to mobile devices using the LightPole Publishing System.

Download it by clicking here.

Geospatial_ss1_2 Geospatial_ss2

A. Installation Instructions

       
  1. Copy the contents of the folder to your MovableType directory. Make sure     that the directory structure remains intact.    
  2.    
  3.         Log in to the MovableType dashboard, or refresh the dashboard if you are already logged in.         You should be prompted to "Upgrade". This will create the needed database tables.    
  4.    
  5. Go to the Google Maps website to get an API Key. Put this     API Key into the GeoSpatialSimple Sytem Plugin Settings (System Overview - Plugins).    
  6.    
  7.         Open the Header template (Design - Templates - Template Modules) and insert the <MTGSHeader/> tag between the <head> and </head> tags.         This will allow Google Maps to work on your site on all pages (the tag includes the needed Google Maps javascript and your API Key).    
  8.    
  9. Modifiy the templates and include the tags in the desired locations (see section B: Using The Tags).
  10.    
  11. Create your new blog entries, or modify your existing blog entries to use the map. Make sure that the     "Include a map with this entry" checkbox is checked if you want the blog entry to have a map associated with it.

B. Using The Tags

When an entry is saved with map location data, a lot of information is stored. Some tags are provided to make things very simple (such as including a map), while other tags are provided to access the specific location fields.

Note that you must use the <MTGSHeader> tag somewhere (ideally in the Header template).

Entry Tags (must be placed within <MTEntries> tags)

       
  •         MTEntryGSMap: creates a Google Maps map for this entry (if the entry has location data)        
    optional parameters:        
                  
    • width - the width of the map "100%" or "250px"
    •             
    • width - the height of the map "250px" (percentages may give strange results with the height)
    •             
    • style - the CSS style properties of the map (will be included in the style="" property)             
      The style parameter will override the width and height parameters. The MTEntryGSMap tag will create a map with a css             class of map_canvas which you can create a style for in your CSS Stylesheet template.             
    •        
            examples:        
                  
    • <MTEntryGSMap width="100%" height="250px" />
    •             
    • <MTEntryGSMap style="width: 100%; height: 150px; border: 1px solid #000000; margin: 5px;" />
    •        
       
  •    
  • MTEntryGSLatitude: the latitude of the entry
  •    
  • MTEntryGSLongitude: the longitude of the entry
  •    
  • MTEntryGSZoom: the map zoom level of the entry - 1 is fully zoomed-out, higher numbers are zoomed-in more
  •    
  • MTEntryGSDisplay: the type of map, human readable (Normal, Satellite, Hybrid, etc.)
  •    
  • MTEntryGSDisplayCode: the type of map needed by Google Maps
  •    
  • MTEntryGSCustomPik: the user selected Pik for this entry (path to the image)
  •    
  • MTEntryGSCustomPikImage: the use selected Pik, as an HTML image tag
  •    
  • MTEntryGSAddress: the address used to find the location on the map
  •    
  • MTEntryGSBubble: the map popup bubble text/info provided by the user
  •    
  • MTEntryGSBubbleHTML: the bubble text formatted in HTML
  •    
  •         MTEntryGSDrawPik: outputs javascript for the map pik of this entry. The pik is the user's custom chosen pik, and when clicked the popup bubble is the user's         custom bubble text shown under a link to the blog entry (see section C: Creating A Map With All Entries).    
  •    
  • MTIfGSMapped: true if this entry has map data
  •    
  • MTIfGSShowControls: true if the user wanted to display the map controls for this entry
  •    
  • MTIfGSShowPik: true if the user wanted to display the map location pik for this entry
  •    
  • MTIfGSCustomPik: true if this entry has a user chosen custom map pik (I don't know why you would need this)

Conditional Tags (must be placed within <MTEntries> tags)

       
  • MTIfGSMapped: returns true of this entry has a map (if the user saved a map)
  •    
  • IfGSShowControls: returns true if the map should show the move/zoom/map-type controls on the map (if the user checked the option)
  •    
  • IfGSShowPik: returns true if the map should show the map marker pik at the specified location on the map (if the user checked the option). Otherwise, the map will     simply be centered at the point specified.
  •    

General Tags

       
  • MTGSHeader: includes needed Google Map javascript stuff. Make sure you put this in your Header template!
  •    
  • MTGSInitDrawPik: includes needed javasscript - if you plan to use the MTEntryGSDrawPik tag, make sure you use this tag before the MTEntries tag.

C. Creating A Map With All Entries

To create a map with all entries on the map, you need to decide which page (template) the map will go on. Either create a new template or edit an existing one. For example, you could put a map at the top of the Main Index page before the entries.

To include a map, copy and paste this code into the template:

   
<div id="top_map_canvas" style="width:100%;height:400px;margin:5px 0px 60px 0px;"></div>

<script type="text/javascript">

   
    function showtopmap() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("top_map_canvas"));
        map.setCenter(new GLatLng(0, 0), 1);
var boundsdec = false;
var bounds;
<MTGSInitDrawPik/>
<MTEntries>
  <MTIfGSMapped>
    <MTEntryGSDrawPik/>
    if(!boundsdec)
            {
                var point = new GLatLng(<MTEntryGSLatitude/>,<MTEntryGSLongitude/>);
                bounds = new GLatLngBounds(point,point);
boundsdec = true;
            }
            else
            {
bounds.extend(new GLatLng(<MTEntryGSLatitude/>,<MTEntryGSLongitude/>));
            }
          </MTIfGSMapped>

</MTEntries>
    if(boundsdec)
    {
             var zoomlevel = map.getBoundsZoomLevel(bounds);
    map.setCenter(bounds.getCenter(),zoomlevel);
            }
        }
      }

showtopmap();

</script>
   

Notice the use of the MTGSInitDrawPik tag before the MTEntries tag. Adjust the css style of the top_map_canvas div as desired (or create a css style in your stylesheet for it).

D. Creating a Google Earth KML Feed

This is where we separate the manly blogs from the boyish blogs. Upon first viewing Google Earth, most people's reaction is "Holy $#@&!"

Google Earth can read KML (Keyhole Markup Language), a special type of XML. Essentially, a KML feed is like an RSS feed for Google Earth. When loaded into Google Earth, all of your blog entries can appear on the world as little icons which expand into text bubbles.

To create a Google Earth Feed:

       
  1. Create a new template under Index Templates. Name it KML, and make sure the filename ends with .kml (kml.kml for example).
  2.    
  3. Paste the code below into the file, and Save
  4.    
  5. Somewhere on your site, place a link to the KML file. A good place would probably be the subscribe widget, next to your RSS link.
   
<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.2">
<Document>
<MTEntries>
<MTIfGSMapped>

  <Placemark>
    <name><$mt:EntryTitle$></name>
    <description><![CDATA[
          <$mt:EntryBody$>
    ]]></description>

    <Point>
      <coordinates><MTEntryGSLongitude/>,<MTEntryGSLatitude/>,0</coordinates>
    </Point>
  </Placemark>

</MTIfGSMapped>
</MTEntries>
</Document>
</kml>
   

Of course, you may want to modify this simple code. Check out the Google Earth KML Documentation to learn more.

Somewhat similar to KML is GeoRSS: http://www.georss.org

E. Creating a LightPole Compatible Feed

With a LightPole  feed you can now make all of your geotagged entries available to mobile device users through the LightPole Geo-Browser.

LightPole needs two things to mobilize your blog: a lightpole  XML feed and a sign up widget. LightPole reads this feed and creates a channel that your readers can subscribe to. To allow your readers to subscribe to your blog channel, you place a signup widget somewhere on your site that asks the reader for their mobile phone # and LightPole does the rest.

To create a LightPole Feed:

       
  1. Create a new template under Index Templates. Make sure to name it lightpole, and make sure the filename ends with .xml (that is lightpole.xml).
  2.    
  3. Paste the code below into the file (also saved in templates/lightpole.tmpl), and Save
  4.    
    <$MTHTTPContentType type="application/atom+xml"$><?xml version="1.0" encoding="<$MTPublishCharset$>"?>
          <feed xmlns="http://www.w3.org/2005/Atom" xmlns:gml="http://www.opengis.net/gml" xmlns:georss="http://www.georss.org/georss">
      <title><$MTBlogName remove_html="1" encode_xml="1"$></title>
      <link rel="alternate" type="text/html" href="<$MTBlogURL encode_xml="1"$>" />
      <link rel="self" type="application/atom+xml" href="<$MTLink template="lightpole"$>" />
      <id>tag:<$MTBlogHost exclude_port="1" encode_xml="1"$>,<$MTTemplateCreatedOn format="%Y-%m-%d"$>:<$MTBlogRelativeURL encode_xml="1"$>/<$MTBlogID$></id>
      <updated><MTEntries lastn="1"><$MTEntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$></MTEntries></updated>
      <MTIfNonEmpty tag="MTBlogDescription"><subtitle><$MTBlogDescription remove_html="1" encode_xml="1"$></subtitle></MTIfNonEmpty>
      <generator uri="http://www.sixapart.com/movabletype/"><$MTProductName version="1"$></generator>
      <MTEntries>
      <MTIfGSMapped>
      <entry>
      <title><$MTEntryTitle remove_html="1" encode_xml="1"$></title>
      <link rel="alternate" type="text/html" href="<$MTEntryPermalink encode_xml="1"$>" />
      <id><$MTEntryAtomID$></id>
       

    <published><$MTEntryDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$></published>
      <updated><$MTEntryModifiedDate utc="1" format="%Y-%m-%dT%H:%M:%SZ"$></updated>

       

    <summary>
      <$MTEntryBody encode_xml="1"$>
      <$MTEntryMore encode_xml="1"$>
      </summary>

       

    <georss:point><MTEntryGSLatitude/> <MTEntryGSLongitude/></georss:point>
      <lp:property xmlns:lp="http://www.lightpole.net/xmlns/1.0">
      <lp:address><$MTEntryGSAddress$></lp:address>
      </lp:property>
      <author>
      <name><$MTEntryAuthorDisplayName encode_xml="1"$></name>
      <MTIfNonEmpty tag="MTEntryAuthorURL"><uri><$MTEntryAuthorURL encode_xml="1"$></uri></MTIfNonEmpty>
      </author>
      <MTEntryCategories>
      <category term="<$MTCategoryLabel encode_xml="1"$>" scheme="http://www.sixapart.com/ns/types#category" />
      </MTEntryCategories>
      <MTEntryIfTagged><MTEntryTags><category term="<$MTTagName normalize="1" encode_xml="1"$>" label="<$MTTagName encode_xml="1"$>" scheme="http://www.sixapart.com/ns/types#tag" />
      </MTEntryTags></MTEntryIfTagged>
      <content type="html" xml:lang="<$MTBlogLanguage ietf="1"$>" xml:base="<$MTBlogURL encode_xml="1"$>">
      <$MTEntryBody encode_xml="1"$>
      <$MTEntryMore encode_xml="1"$>
      </content>
      </entry>
      </MTIfGSMapped>
      </MTEntries>
      </feed> 

       
  5. Somewhere on your site, place the LightPole widget (see the code below also saved in templates/LightPole Embedded Widget.tmpl).
  6.    
          

    <!-- LightPole Embedded Widget for MT 4 Blogs with Columns of greater than or equal to 230 pixels -->

          

    <div class="widget-archives widget">
      <h3 class="widget-header"Mobile Blog</h3>
      <p>Get <$mt:BlogName$> on your mobile phone.</p>
      <div class="widget-content">
      <div id="lightpole-id"
            name="lightpole-embedded"
            class="www.lightpole.net|008ff47a9daf27015dcdc9e901aa3d985c09fcb2|<$mt:BlogURL$>lightpole.xml">
      </div>
      <script src="http://www.lightpole.net/js/p3.js" type="text/javascript">
      </script>
      </div>
      </div> 

     
       

    A good place would probably be above the subscribe widget. Do not change the code in the <div id="lightpole-id and the <script tags as this is critical in creating your LightPole Channel.

       

    For blogs with columns of less than 230 pixels please use the PopUp version of the LightPole Widget (see the code below also saved in templates/LightPole PopUp Widget.tmpl)

       
          

    <!-- LightPole PopUp Widget w/text link for MT 4 Blogs with Columns of less than 230 pixels -->

          

    <div class="widget-archives widget">
      <h3 class="widget-header">Mobile Blog</h3>
      <div class="widget-content">
      <div id="lightpole-id"
            class="www.lightpole.net|008ff47a9daf27015dcdc9e901aa3d985c09fcb2|<$mt:BlogURL$>lightpole.xml">
      <a id="lightpole-icon">Click here to get <$mt:BlogName$> on your mobile phone.</a>
      </div>
      <script src="http://www.lightpole.net/js/p3.js" type="text/javascript">
      </script>
      <p>Powered by <a href="http://www.lightpole.net/">LightPole, Inc.</a></p>
      </div>
      </div>

     

F. Other Stuff

All of the custom map pik images are in the mt-static/plugins/GeoSpatialSimple/markers folder. Placing more .png images into this folder will allow them to be read by the plugin, and the user will be able to choose them as the custom map pik. However, all of the existing piks are based off of the default pik which has certain dimensions that match up with the javascript code and shadow images. Using a differently shaped pik graphic WILL result in weird results on the map. If you want to use differently shaped map piks, you will probably need to either modify the plugin's code or roll your own javascript in your templates.

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00e54fa7efe7883300e5523af22e8834

Listed below are links to weblogs that reference GeoSpatial Simple 1.0:

Comments

Feed You can follow this conversation by subscribing to the comment feed for this post.

Is there a problem while creating a new GeoSpatial Simple entry with Internet Explorer 6.0?

If I click on the check box "Include a map with this entry" the map and the fields needed to report the position doesn't appear. The lower ie status bar show "Error on Page".

On the other hand, if I add a new entry with Firefox 2.0 both on Windows and Ubuntu the map and the needed fields appear and let me set the position.

In the end, even if I can entry the position with Firefox the map doen't appears in the preview normal entry view... but that's andother story.

We're looking into your problems with IE6. Can you explain in detail what you were doing when you received the error?

"In the end, even if I can entry the position with Firefox the map doen't appears in the preview normal entry view... but that's andother story."
- did you use the correct tag in the template to display the map? The map won't just show up, you need to edit your templates first.

Hi Bryan,

I exhibit the same issue with IE6 vs. FireFox, but also can;t get a map to appear in either envirnment. The check box is there under IE6, but when you check it, you don't get the additional map/field display that occurs correctly under FireFox. FWIW, if you try to check the box and save the entry under IE6, it just resets the checkbox to unchecked. Not that it would matter anyway, but just an fyi for you. I didn't even know the additional info would appear until I looked at it under FireFox. Probably a good idea to document that with screen dumps when you're able. (I'm planning to do a case study for the client project I'm working on that will utilize this and other plugins, so I'll be glad to do it and link back once my implementation is working. (For example, I'm not really utilizing the standard MT Header, as I'm overriding everything with custom CSS, so maybe that's an issue. I went ahead and placed the in the Header file, but also in the head section of the index.html template as well as the Entry archive template just to make sure during testing.

And maybe, Pizza and I both have the same problem. I'm assuming that we need to enter the tags in the Entry Archive Template, only because the individual entry page sidebar is the place where I want to show my map. But only MT includes and not MTEntries is used on the Entry archive template. Should the tags be placed on the Main Index (index.html) template instead, and then specify the location of the map with a CSS div a la "map_canvas" on the Entry archive template? Can you shed some light here? Maybe I'm doing or not doing something easy, but I'm a bit confused on where the tag info needs to go. Thanks.

Duh. Just had a syntax issue was all. The following still occurs, fyi:

- IE6 config map problem still there. Everything seems to display fine in FireFox.

- I'm getting the "Map with All Entries" map to display fine at the top of the blog Main Index page, which also summarizes all individual entries. However, on the individual Entry archive template, which shows the Entry detail, and is where I'm inserting the code to display that particular entry's map, the individual Entry page instead shows all the blog's entry maps in sequences (currently 3, which is the amount of entries I have so far). Should I be using something besides the "MTEntryGSMap" tag between "MTEntries" tags to show JUST the map for that entry, and not all 3? I tried using "MTIfGSMapped" similarly in fashion to the Map With All Entries code instead, and it didn't make any difference. Thanks for the help, and thanks for the nice plugin.

OK. I tried installing on MovableType 4.1. I uploaded the files to mt and mt-static. I put them in the directories, as they are in the package. THat seemed to work fie. When I reloaded mt.cgi, I got the "Time to Upgrade" message. I hit OK, enter my password, and it seemed to start. However when the first process "Upgrading table for location records..." came up, I got the following error message:

Error during upgrade: failed to execute statement CREATE TABLE mt_location ( location_id integer NOT NULL PRIMARY KEY auto_increment, location_address varchar(1000) NOT NULL, location_bubble varchar(1000) NOT NULL, location_custom_pik varchar(255) NOT NULL, location_display varchar(255) NOT NULL, location_lat varchar(255) NOT NULL, location_lon varchar(255) NOT NULL, location_show_controls varchar(1) NOT NULL, location_show_pik varchar(1) NOT NULL, location_zoom integer NOT NULL ): Too big column length for column 'location_address' (max = 255). Use BLOB instead at lib/MT/Upgrade.pm line 2003.

I'm using MySQL, is this a problem with the installation, or my MySQL database? It looks like the database doesn't like the commands it is being given. Any thoughts?

@ Jonathan Rawles,
I think you may be using an old version of MySQL. What's your version?

@ MadDog, can you post your template code? Then I would be able to diagnose your issues better.

We're still looking into the IE6 issues. Is anyone getting any Javascript errors when the page loads in IE6?

Hi Bryan,

Thanks for the reply. My problem is occurring in the Entry archive template, which is responsible for displaying individual entry detail. I have the following div in a sidebar column:

div
MTEntries> /MTEntries
/div

I have 3 entries total currently in this blog, and have specified maps for all 3. However, on the individual detail page specified by the Entry archive template, ALL 3 maps are displayed one after the other down the column, rather than just the one for that individual entry. If it matters, the main column only has includes instead of MTEntries via the following code for displaying the main entry content:

$MTInclude module="Entry Detail"$
$MTInclude module="TrackBacks"$
$MTInclude module="Comments"$

Also, I have MTGSHeader/ in the head section of this page, since I am not using the MT Header include due to having custom CSS define my header area.

As to IE6, even though I have to use FireFox to build the entries in order to get the map display data, finished pages show without Javascript errors under IE6.

Sorry Bryan, there should be opening and closing tag marks around all the code in my reply; thought the "" and "" manual conversion text I used would create the symbols in your comments window.

Doggone it Bryan, I just realized the comments window eliminated other code . . . this is the code that exists in the sidebar:

div
MTEntries
MTEntryGSMap width="100%" height="250px" /
/MTEntries
/div

(Assume there are brackets around everything.)

Sorry!

MadDog,
The sidebar widget you've made will make all of the recent blog posts show up. The point of that widget is to show a summary of everything you've posted recently, no matter what page you are looking at (index, archive, or individual entry). So, that's why all 3 of the maps are showing up in your sidebar, because it wants to show all of the recent posts.

To get the results that you want, you can do one of several things. There is a way to limit the MTEntries tag to just the post you want, although you will need to find the right variable that pulls in the id of the post. Or, you could put the map in the Details or Summary template and use CSS to position the map to where you want it to go.

I hope that helps. Basically, the templates are behaving the way that they are supposed to be working, but clearly we haven't done a good job of documenting how they should work!

Pardon my ignorance, I haven't worked with databases much. MT-check.cgi says I have DBD::mysql version 4.006. In phpMyAdmin, it indicates that I have MySQL 4.0.27. Should that work OK? Thanks!

Hi Bryan,

After thinking about it, I didn't think there would be a failsafe automatic way to specify the entry ID each time, so I went ahead and redesigned the Details template to basically act as the Entry archive template was before, and the Entry archive template has returned to its barebones default. Only problem is, all 3 maps are still pulled into the sidebar. Seems like I basically just moved the same occurrence one level lower in the template hierarchy now. Ideas?

One other interesting tidbit Bryan . . . if I put the widget in the main column AND the sidebar of the Details template, sn interesting thing happens: both IE7 and FireFox correctly display the individual entry's map in the main column. But on IE7, THAT entry's map is removed from the sidebar (although it keeps a "blank" region available). On FireFox, all 3 entries' maps remain visible in the sidebar as well as in the main column.

Bryan,

Great plugin!
Feature request (unless it's there and I'm missing it):

It would be cool if a user could embed a Google 'My Map' instead of a plain-vanilla Google Map, particularly if you wanted to highlight a number of places in the same general area. (Say, for example, that you had a blog post about your favorite pubs in Oxford -- I wouldn't want one pushpin in the center of the map, rather, I'd like to have a map showing a number of pins with mousover content like photos, pub name, etc. -- all very easy to make with My Maps)

Is there any way to hack this functionality into the current plugin?

thx
Jason

OK Bryan, this is strange. I started to look at the code in light of the cross-browser behavior, and noticed that the plugin code insertion within the main column was not only behaving properly (i.e., only one map being displayed, and tied to THAT particular entry), but that code insertion didn't exist within a MTEntries tag on the Details template, since there is no standard MT Entries tag on that template. So I removed the bounding MTEntries tag on the map instance in the sidebar. And voila, here's what happened:

- On FireFox, the sidebar map displays just fine on each respective blog entry.
- On IE7, the physical area is set aside but blank in the sidebar if I also have a map specified in the main column, but if I remove the main column map, the sidebar maps shows up just fine.

Removing the main column map has no effect on the sidebar map within FireFox.

So at this point, I'm not sure what's going on, but MT Entries seems to be the culprit, which is odd since it was deemed to be required.

If you want me to send the code snippets to you or otherwise look at the output on the page, send me an email. I just can't post it here because the client wants to keep the site relatively private until launch.

@ Jonathan Rawles
The latest version of MySQL is 5.something. You will need that. I can probably make it so that the next version of the plugin is more backwards-compatible with older versions in case you are on a shared host and not able to update it.

@ MadDog - I now understand your problem. Yes, the MTEntries tag IS REQUIRED. However, if you use the Details template then that is assumed to be WITHIN an MTEtnries tag (it's included in another template). Thus you will not see the MTEntries tags in all of the templates. If you do use an MTEntries tag, like you did in the sidebar, then it assumes that you want to show all of your recent posts on that template. That was the original concept behind that sidebar, to show all the recent posts no matter what page you were actually on. I hope that helps and makes sense.

As for the maps not showing up- IE has issues with more than once instance of Google Maps on a page at one time. Expect weirdness. (That's a general rule with IE and the entire internet, by the way.)

@Jason Cook - I'm working on another version of this plugin to allow you to show multiple locations per one entry. My Maps could be a cool (and easier) way of doing this than the way I was planning, so I'll look into it. It may take time however.


And to everyone, hopefully I'll have a new version out sometime in the next few weeks. Google just unveiled a new maps view which turns the map into what you would see in Google Earth (but in the browser). That and more should be included in the next version.

Terrific Bryan, makes complete sense now that you explain it that way. And I'm clear about IE7 and multiple instances of the same map. Shouldn't matter in final operation anyway, because I was just doing it as a test. Thanks for the help!

Well, I don't know if my host plans to upgrade. I guess I'll try another plugin until then. Thanks very much for your time!

Bryan -

Wonderful plugin! Minor problem, probably me not reading the docs throughly enough. Had no problems installing, activating, and modifying my templates. Map shows up fine, but the the popup box on clicking the pik does not come up.

All I added to the templates was (sans the tag brackets)...

MTIfGSMapped
MTEntryGSMap style="width: 100%; height: 300px; border: 1px solid #000000; margin: 5px;" /
/MTIfGSMapped

...and the generated code looks normal, except I do not see the code for the popup, the usual Listener that you see in the GMap API. Point me in the right direction, please.

Jim

Version 1.1 is now live, I made a post for that.

@JimAtWCU - originally the MTEntryGSMap tag was not actually supposed to show the balloon popup, but a lot of people wanted it (and seemed to think it should just work). So that's in the new version.

@Jonathan Rawles - the new version should hopefully fix your problems. If not, let me know and I can probably make a quick fix for you.

I just installed GeoSpatial 1.1 and the update seemed to go fine. When I try to Select a Pik for an entry, though, I get the following error message:

No such file or directory at /home/(site)/public_html/cgi-bin/mt/plugins/GeoSpatialSimple/lib/GeoSpatialSimple/CMS.pm line 33.

I double checked, and CMS.pm is where it should be according to the path above. Line 33 reads:

opendir(THISDIR, $dirpath) or die "$!";

I'm not sure what to do from here. Help? Thank you.

@MacDiva - When you installed the plugin, did you copy the appropriate folder over to the mt_static/plugins/GeoSpatialSimple directory? This folder contains all of the map pik images, and that is why you are getting an error. CMS.pm can't find the appropriate folder with the images in it.

Hope that helps, -Bryan

@MacDiva - Also, you need to upgrade to version 1.1. There was a bug related to that problem that you may be seeing that was fixed in 1.1.

@MacDiva and Bryan:

Try adding the StaticFilePath directive to mt-config.

I got the same error, and it seems like GeoSpatial Simple needs that configuration variable to work.

It would be nice if the plugin had a default that worked well in the absence of that configuration directive.

Kris

I installed the plugin. Added the GMaps API. Added tag in header. Immediately, when I view any pages with that header code (an entry, for example), I get an error message:

Smarty error: [in evaluated template line 12]: syntax error: unrecognized tag 'mtgsheader' (Smarty_Compiler.class.php, line 580)

I'm using MT4.2. Please help!

Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been posted. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment

Blog powered by TypePad

Donate $

If you like it

Tip Jar