Skip to content

Commit

Permalink
Merge branch 'develop' of github.com:toronto-perl-mongers/tpm-website…
Browse files Browse the repository at this point in the history
… into develop
  • Loading branch information
ioncache committed Feb 24, 2012
2 parents 096fc3a + 10346ec commit 73d6dc1
Show file tree
Hide file tree
Showing 7 changed files with 39 additions and 14 deletions.
1 change: 1 addition & 0 deletions Makefile.PL
Expand Up @@ -20,6 +20,7 @@ WriteMakefile(
'Dancer::Template::Alloy' => 0,
'Moose' => 0,
'XML::Simple' => 0,
'DateTime' => 0,
'DateTime::Format::ISO8601' => 0,
},
dist => { COMPRESS => 'gzip -9f', SUFFIX => 'gz', },
Expand Down
34 changes: 27 additions & 7 deletions lib/TorontoPerlMongers.pm
Expand Up @@ -4,30 +4,50 @@ use Dancer::Plugin::Feed;

our $VERSION = '0.1';

use DateTime;
use TorontoPerlMongers::Model::Meetings;

my $meetings = TorontoPerlMongers::Model::Meetings->new();
$meetings->load("data/meetings");

get qr{/feed/?} => sub {
my $feed = create_feed(
entries => [],

# template('meeting', { meeting => $_ }, { layout => undef } )
# title, link, summary, content, author, issued and modified
my $feed = create_feed(
entries => map {
+{
link => uri_for( '/meetings/' . $_->id() ),
issued => $_->details()->datetime
? $_->details()->datetime
: '',
title => $_->label(),
content => template(
'meeting', { meeting => $_, hide_layout => undef }
),
}
} @{ $meetings->ordered_meetings() }
);
return $feed;
return $feed;
};

get '/meetings/:meeting' => sub {
my $id = params->{meeting};
my ($meeting) = grep { $_->id() == $id } @{$meetings->meetings()} or die("Can't find meeting: $id");
template 'meeting', { meeting => $meeting };
my ($meeting) = grep { $_->id() == $id } @{ $meetings->meetings() }
or die("Can't find meeting: $id");
template 'meeting', { meeting => $meeting };
};

get qr{/meetings/?} => sub {
template 'meetings', { meetings => $meetings };
};
};

get '/' => sub {
template 'index', { meetings => $meetings };
my $meeting = $meetings->ordered_meetings->[0];
my $next_or_last = DateTime->compare($meeting->details->datetime, DateTime->now) <= 0
? 'Last'
: 'Next';
template 'index', { meeting => $meeting, next_or_last => $next_or_last };
};

true;
6 changes: 3 additions & 3 deletions lib/TorontoPerlMongers/Model/Meetings.pm
Expand Up @@ -23,10 +23,10 @@ sub load {

sub _wanted {
my ($self, $file) = @_;

my $meeting = TorontoPerlMongers::Model::Meeting->new();
$meeting->load($file);

my $meetings = $self->meetings() // [];
$self->meetings([@$meetings, $meeting]);
}
Expand All @@ -36,4 +36,4 @@ sub ordered_meetings {
return [ sort { $b->details()->datetime()->compare($a->details()->datetime()) } @{$self->meetings()} ];
}

1;
1;
1 change: 1 addition & 0 deletions urls.txt
Expand Up @@ -6,3 +6,4 @@
/images/perldancer-bg.jpg
/images/perldancer.jpg
/javascripts/jquery.js
/feed
2 changes: 1 addition & 1 deletion views/contact.tt
Expand Up @@ -14,7 +14,7 @@
<a href="http://www.perl.org/">The Perl Programming Language</a>
</li>
<li>
irc.perl.org: #tpm
<a href="irc://irc.perl.org">IRC: irc.perl.org #tpm</a>
</li>
</ul>

Expand Down
5 changes: 2 additions & 3 deletions views/index.tt
Expand Up @@ -3,12 +3,11 @@

<p>The Toronto Perl Mongers is a group of Perl programmers and hackers of all levels who get together to talk about Perl. Perl is a programming language which can be used for a large variety of tasks. A typical simple use of Perl would be for extracting information from a text file and printing out a report or for converting a text file into another form. But Perl provides a large number of tools for quite complicated problems, including systems programming and scientific research.</p>

<h2>Latest Meeting</h2>
[% meeting = meetings.ordered_meetings.0 %]
<h2>[% next_or_last | html %] Meeting</h2>

<ul>
<li>
<a href="[% meeting.id %]">
<a href="/meetings/[% meeting.id %]">
[% meeting.details.datetime.strftime('%d %B %Y') %] - [% meeting.label %]
</a>
</li>
Expand Down
4 changes: 4 additions & 0 deletions views/layouts/main.tt
@@ -1,3 +1,6 @@
[% IF hide_layout %]
[% content %]
[% ELSE %]
<!DOCTYPE html>

<html>
Expand Down Expand Up @@ -77,3 +80,4 @@

</body>
</html>
[% END %]

0 comments on commit 73d6dc1

Please sign in to comment.