NAME

OpenGuides - A complete web application for managing a collaboratively-written guide to a city or town.

DESCRIPTION

The OpenGuides software provides the framework for a collaboratively-written city guide. It is similar to a wiki but provides somewhat more structured data storage allowing you to annotate wiki pages with information such as category, location, and much more. It provides searching facilities including "find me everything within a certain distance of this place". Every page includes a link to a machine-readable (RDF) version of the page.

METHODS

new
my $guide = OpenGuides->new( config => $config );
wiki

An accessor, returns the underlying CGI::Wiki object.

config

An accessor, returns the underlying Config::Tiny object.

locator

An accessor, returns the underlying CGI::Wiki::Plugin::Locator::UK object.

differ

An accessor, returns the underlying CGI::Wiki::Plugin::Diff object.

display_node
# Print node to STDOUT.
$guide->display_node(
                      id      => "Calthorpe Arms",
                      version => 2,
                    );

# Or return output as a string (useful for writing tests).
$guide->display_node(
                      id            => "Calthorpe Arms",
                      return_output => 1,
                    );

# Or return the hash of variables that will be passed to the template
# (not including those set additionally by OpenGuides::Template).
$guide->display_node(
                      id             => "Calthorpe Arms",
                      return_tt_vars => 1,
                    );

If version is omitted then the latest version will be displayed.

display_diffs
$guide->display_diffs(
                       id            => "Home Page",
                       version       => 6,
                       other_version => 5,
                     );

# Or return output as a string (useful for writing tests).
my $output = $guide->display_diffs(
                                    id            => "Home Page",
                                    version       => 6,
                                    other_version => 5,
                                    return_output => 1,
                                  );

# Or return the hash of variables that will be passed to the template
# (not including those set additionally by OpenGuides::Template).
my %vars = $guide->display_diffs(
                                  id             => "Home Page",
                                  version        => 6,
                                  other_version  => 5,
                                  return_tt_vars => 1,
                                );
find_within_distance
$guide->find_within_distance(
                              id => $node,
                              metres => $q->param("distance_in_metres")
                            );
show_index
$guide->show_index(
                    type   => "category",
                    value  => "pubs",
                  );

# RDF version.
$guide->show_index(
                    type   => "locale",
                    value  => "Holborn",
                    format => "rdf",
                  );

# Or return output as a string (useful for writing tests).
$guide->show_index(
                    type          => "category",
                    value         => "pubs",
                    return_output => 1,
                  );
list_all_versions
$guide->list_all_versions ( id => "Home Page" );

BUGS AND CAVEATS

At the moment, the location data uses a United-Kingdom-specific module, so the location features might not work so well outside the UK.

SEE ALSO

FEEDBACK

If you have a question, a bug report, or a patch, or you're interested in joining the development team, please contact openguides-dev@openguides.org (moderated mailing list, will reach all current developers but you'll have to wait for your post to be approved) or kake@earth.li (a real person who may take a little while to reply to your mail if she's busy).

AUTHOR

The OpenGuides Project (openguides-dev@openguides.org)

COPYRIGHT

Copyright (C) 2003-4 The OpenGuides Project.  All Rights Reserved.

The OpenGuides distribution is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

CREDITS

Programming by Earle Martin, Kake Pugh, Ivor Williams. Testing and bug reporting by Cal Henderson, Bob Walker, Kerry Bosworth, Dominic Hargreaves, Simon Cozens, among others. Much of the Module::Build stuff copied from the Siesta project http://siesta.unixbeard.net/

2 POD Errors

The following errors were encountered while parsing the POD:

Around line 523:

alternative text 'http://london.openguides.org/' contains non-escaped | or /

Around line 525:

alternative text 'http://openguides.org/' contains non-escaped | or /