source: trunk/preferences.cgi @ 171

Last change on this file since 171 was 171, checked in by kake, 19 years ago

Added preferences option of displaying lat/long as deg-min-sec instead of decimal

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 1.8 KB
Line 
1#!/usr/bin/perl -w
2
3use strict;
4use CGI;
5use Config::Tiny;
6use OpenGuides::CGI;
7use OpenGuides::Utils;
8use OpenGuides::Template;
9
10my $config = Config::Tiny->read("wiki.conf");
11my $wiki = OpenGuides::Utils->make_wiki_object( config => $config );
12my $cgi = CGI->new();
13my $action = $cgi->param('action') || '';
14
15if ( $action eq "set_preferences" ) {
16    set_preferences();
17} else {
18    show_form();
19}
20
21exit 0;
22
23sub set_preferences {
24    my $username     = $cgi->param("username") || "";
25    my $gc_link      = $cgi->param("include_geocache_link")  || 0;
26    my $pre_above    = $cgi->param("preview_above_edit_box") || 0;
27    my $latlong_trad = $cgi->param("latlong_traditional")    || 0;
28    my $cookie = OpenGuides::CGI->make_prefs_cookie(
29        config => $config,
30        username => $username,
31        include_geocache_link => $gc_link,
32        preview_above_edit_box => $pre_above,
33        latlong_traditional => $latlong_trad
34    );
35    print OpenGuides::Template->output(
36        wiki     => $wiki,
37        config   => $config,
38        template => "preferences.tt",
39        cookies  => $cookie,
40        vars     => { not_editable           => 1,
41                      username               => $username,
42                      include_geocache_link  => $gc_link,
43                      preview_above_edit_box => $pre_above,
44                      latlong_traditional    => $latlong_trad
45                    }
46    );
47}
48
49sub show_form {
50    # Get defaults for form fields from cookies.
51    my %prefs = OpenGuides::CGI->get_prefs_from_cookie( config => $config );
52
53    print OpenGuides::Template->output(
54        wiki     => $wiki,
55        config   => $config,
56        template => "preferences.tt",
57        vars     => { %prefs,
58                      not_editable => 1,
59                      show_form    => 1
60                    }
61    );
62}
Note: See TracBrowser for help on using the repository browser.