OpenGuides::CGI.3pm

Langue: en

Autres versions - même langue

Version: 2009-02-09 (ubuntu - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

OpenGuides::CGI - An OpenGuides helper for CGI-related things.

DESCRIPTION

Does CGI stuff for OpenGuides. Distributed and installed as part of the OpenGuides project, not intended for independent installation. This documentation is probably only useful to OpenGuides developers.

SYNOPSIS

Saving preferences in a cookie:
   use OpenGuides::CGI;
   use OpenGuides::Config;
   use OpenGuides::Template;
   use OpenGuides::Utils;
 
   my $config = OpenGuides::Config->new( file => "wiki.conf" );
 
   my $cookie = OpenGuides::CGI->make_prefs_cookie(
       config                     => $config,
       username                   => "Kake",
       include_geocache_link      => 1,
       preview_above_edit_box     => 1,
       latlong_traditional        => 1,
       omit_help_links            => 1,
       show_minor_edits_in_rc     => 1,
       default_edit_type          => "tidying",
       cookie_expires             => "never",
       track_recent_changes_views => 1,
       display_google_maps        => 1
   );
 
   my $wiki = OpenGuides::Utils->make_wiki_object( config => $config );
   print OpenGuides::Template->output( wiki     => $wiki,
                                       config   => $config,
                                       template => "preferences.tt",
                                       cookies  => $cookie
   );
 
   # and to retrive prefs later:
   my %prefs = OpenGuides::CGI->get_prefs_from_cookie(
       config => $config
   );
 
 

Tracking visits to Recent Changes:

   use OpenGuides::CGI;
   use OpenGuides::Config;
   use OpenGuides::Template;
   use OpenGuides::Utils;
 
   my $config = OpenGuides::Config->new( file => "wiki.conf" );
 
   my $cookie = OpenGuides::CGI->make_recent_changes_cookie(
       config => $config,
   );
 
 

METHODS

make_prefs_cookie
   my $cookie = OpenGuides::CGI->make_prefs_cookie(
       config                     => $config,
       username                   => "Kake",
       include_geocache_link      => 1,
       preview_above_edit_box     => 1,
       latlong_traditional        => 1,
       omit_help_links            => 1,
       show_minor_edits_in_rc     => 1,
       default_edit_type          => "tidying",
       cookie_expires             => "never",
       track_recent_changes_views => 1,
       display_google_maps        => 1
   );
 
 

Croaks unless an OpenGuides::Config object is supplied as "config". Acceptable values for "cookie_expires" are "never", "month", "year"; anything else will default to "month".

get_prefs_from_cookie
   my %prefs = OpenGuides::CGI->get_prefs_from_cookie(
       config => $config,
       cookies => \@cookies
   );
 
 

Croaks unless an OpenGuides::Config object is supplied as "config". Returns default values for any parameter not specified in cookie.

If "cookies" is provided, this overrides any cookies submitted by the browser.

make_recent_changes_cookie
   my $cookie = OpenGuides::CGI->make_recent_changes_cookie(
       config => $config,
   );
 
 

Makes a cookie that stores the time now as the time of the latest visit to Recent Changes. Or, if "clear_cookie" is specified and true, makes a cookie with an expiration date in the past:

   my $cookie = OpenGuides::CGI->make_recent_changes_cookie(
       config       => $config,
       clear_cookie => 1,
   );
 
 
get_last_recent_changes_visit_from_cookie
   my %prefs = OpenGuides::CGI->get_last_recent_changes_visit_from_cookie(
       config => $config
   );
 
 

Croaks unless an OpenGuides::Config object is supplied as "config". Returns the time (as seconds since epoch) of the user's last visit to Recent Changes.

AUTHOR

The OpenGuides Project (openguides-dev@lists.openguides.org)
      Copyright (C) 2003-2007 The OpenGuides Project.  All Rights Reserved.
 
 

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