Building a community mapping site with Open Outreach

Update February 5, 2015: Much of the functionality described below is now captured in the new distribution StoriedMaps which is based on Open Outreach.

The Location feature of Open Outreach provides a solid basis for community mapping right out of the box. And with some customizations, it can easily become the basis for a rich and vibrant place-based website.

Community Mapping Subprofile:

When installing Open Outreach, choose the Community mapping subprofile or enable the following Open Outreach features:

  • Debut Highlighted
  • Debut Location
  • Debut Media
  • Debut Section
  • Debut SEO
  • Debut WYSIWYG

Theme:

AT Commerce, or choose another of the themes that ships with Open Outreach to give your site the look that most suits your needs.

Basic configuration:

Theme

Start by configuring your theme. On the settings page you can choose from one of the colour palettes (I like Tiger Lily for a mapping site) or create your own. You can also upload your own logo.  Or you can simply save the default configuration and return at a later point to fine tune your theme. ATCommerce is based on AdaptiveTheme (as are all the themes that ship with Open Outreach) and there’s lots of good documentation (http://adaptivethemes.com/documentation) to help you get the most out of your theme.

Debut Location configuration

The first step is to determine what centerpoint and zoom level you would like on your site. This configuration can be found on the Configuration page under Regional and language. (admin/config/regional/debut-location)

Use the pan and zoom controls to set the map display you would like to show initially. This will also determine the initial map setting for inputting locations. For example, if you are a site based within a city-wide geographic area set the centerpoint and zoom so that just your city shows. This will make the items displayed have more relevance. If you choose to use the location region vocabulary, these initial centerpoint and zoom will become over-ridden as you add regions.


Screenshot of the intial Location configuration screen.

Location type terms

Your next step should be to add some terms to the Location type vocabulary. Under Structure navigate to Taxonomy and then Location type (admin/structure/taxonomy/location_type).

Add a term giving it the name you want displayed. The description field will be displayed on the term page, so it can be useful to describe the term in some detail. Upload an icon. A useful mapping icon set can be found at: http://mapicons.nicolasmollet.com.

Terms can be nested, so that you have categories and sub-categories. For example, a category of Nature could have sub-categories of Beautiful view and Flowers. To do so, first add Nature as a term. Next add Flowers as a new term, using the Relation to make Nature its parent term.

If you want to mass upload icons, you can add the Bulk Media Upload module.

Screen shot of the adding terms form.

Location region taxonomy to display multiple map displays

Location region terms can be used to display particular regions. For example, in a community asset map you want to be able to show the whole city in the main view, but would also like to allow users to easily select their neighbourhood.

Navigate to the Location region vocabulary (admin/structure/taxonomy/location_region), and select Add term.  Give your region a required name and an optional description.

To define the geographical extent of your region, use the polygon tool on the map to define your region’s boundaries, clicking to define each point in your polygon and double-clicking to complete.

Screenshot of adding a region term.

Locations

Before beginning to add locations, you should determine whether the location content type contains by default all the fields you will need. For example, you may wish to add an image field if this will usually be available for the locations you are mapping. If you are mapping organizations, you may want to add a link field so you can add a website link.

It is also important to take a step back and ensure that you are mapping what you want to map. How will these locations interact with other parts of your site? You may want to create relations between the location content type and other content types on your site (more about that later.)

Step by step guide to adding new locations:

Add a new piece of content of the type Location (node/add/location). Add the title of your location.

Fill in the address fields if needed/appropriate (some locations do not have an address and so you may not want to use.) The default country will be the country that is set for your site. If you select another country the correct fields will be displayed. So for example, if Canada is the chosen country, it will show Province as a field as well as Postal code.

If you want to map your location using the address, click the Find using address field button. Your location will appear on the map.


Screenshot of creating a location.

If you want to place your location on the map without using the address, you can place it directly on the map itself. The icons in the top, right corner of the map determine what kind of item you are adding (polygon, point or line.) Note only a point will display with the selected icon. For example, to select a point, zoom your map to an appropriate level to place your point exactly. Click on the pencil icon then click exactly where you want your point to be located.

Next select the location type (if you are using taxonomy based terms and icons). If you are using the location region functionality, select the region from the drop down list.

Add a description or any other type of information into the body field. Save your location.


Screenshot of the geofield interface.

Menu items and map displays

By default the menu item displays “Locations.” To change this wording and customize, go to the main menu settings (admin/structure/menu/manage/main-menu) and edit the menu item Location, giving it the title and description you would like. Save your changes.

If you have created regions, this will now over-ride the settings you have created for your main map display. This will now be defined as the sum total of all the regions.

The region maps can be accessed via their taxonomy term id, for example, location/3 (where 3 is the term id for the particular region.) To find the term id of a particular term hover over the edit link for the term on the taxonomy page for example, admin/structure/taxonomy/location_region.

This makes it easy to add menu items for the regional maps, for example as child menu items under location.


Screenshot of editing the menu link.

Setting up the homepage

Use the highlighted feature to create a visually appealing entry way into your site. See the detailed step-by-step instructions at: http://openoutreach.org/section/posting-new-highlighted-content-type.

You may want to add some custom text to the homepage panel that describes your organization or project. If you’re using the panels-in-place editor (enable via the modules page), that’s easy to do. Navigate to the homepage and click the Customize this page button. Click the + sign (Add new content pane) in the region you want to add to. From here you could add an existing node, or most likely some custom content. Then you can rearrange using the arrow tool. And remember to save your changes.


Screenshot of the the homepage highlighted slideshow.

Using sections to create organizational content

You may want to use the section content type to create more static pages about the organization or mapping project. See detailed instructions at: http://openoutreach.org/section/using-sections.

Extending the Location feature

You may want to make it easy for community members to suggest a location that is important to them. You could do so by changing the default publishing status for the location content type to unpublished and add a permission so that authenticated users could add a location node. This would require moderation, but could be a good way to encourage wider community engagement with the mapping process.

Or perhaps you would like to have stories that are connected with particular locations (as we did recently with the Capital Regional District (CRD) Community Green Map). In this case you’ve got a little bit more work to do in creating a new content type, adding in a view and adding in a term reference field so the the new story content type is linked to a view. Again, to make the site more community focused, you could have this new content type default to unpublished and allow authenticated users to post new content of this type.

Anytime you’re adding community-based posts, it would be good to add in rules that notify the moderator when new content has been posted.