use Encode;
use iCal::Parser;
+plugin 'proxy';
+
+my $slot_regex = '(\d+)\s*mjesta';
+
get '/reservations/get/(*url)' => sub {
my $self = shift;
@events = map {
foreach my $check_slot ( qw(
+ DESCRIPTION
LOCATION
STATUS
SUMMARY
)) {
next unless exists $_->{$check_slot};
- $_->{slots} = $1 if $_->{$check_slot} =~ m/(\d+)\s*mjesta/s;
+ $_->{slots} = $1 if $_->{$check_slot} =~ m/$slot_regex/is;
}
+ $_->{slots} ||= $1 if $ical->{cal}->{'X-WR-CALDESC'} =~ m/$slot_regex/s;
+ $_->{slots} ||= 15; # XXX default number of slots
$_;
} @events;
language => 'javascript',
views => {
submited => {
- map => q|
+ map => q|(
function(doc) {
if ( doc.event && doc.event.UID ) emit(doc.event.UID, 1)
}
- |,
+ )|,
reduce => q|_sum|,
}
}
$hash->{ $row->{key} } = $row->{value};
}
+ $hash ||= {};
+
_render_jsonp( $self, $hash );
};
+get '/_utils/script/(*url)' => sub { $_[0]->proxy_to( "$couchdb/_utils/script/" . $_[0]->param('url') , with_query_params => 1 ) };
+
app->start;
__DATA__