my $couchdb_view = "http://10.60.0.92:5984/_utils/document.html?$couchdb_database";
my $client = Mojo::UserAgent->new;
+our $view_cache;
+
sub _couchdb_put {
my ( $url, $data ) = @_;
+ $view_cache = undef;
+
$data->{'$entity'} = $1 if $url =~ m{/(\w+)\.\d+/$/};
my $json = Mojo::JSON->new->encode( $data );
# CouchDB proxy for _design _view
-our $view_cache;
-
get '/:database/_design/:design/_view/:view' => sub {
my $self = shift;
my $format = $self->param('format');
return date.toString();
}
}
+ }).
+ filter('registration_url', function() {
+ return function(text) {
+ if ( ! text ) return '';
+ return '#/' + text.replace('.','/');
+ }
});
<td>{{author.value.firstname}}</td>
<td>{{author.value.organization}}</td>
<td>{{author.value.email}}</td>
+<td><a href="{{author.id | registration_url }}" target="{{author.id}}" title="see {{author.id}} in new window">R</a></td>
</tr>
</table>
expect(registration_date_timeFilter('registration.135721386441722')).toMatch(/2013/);
}));
});
+
+ describe('registration_url', function() {
+ it('registration_url from id', inject(function(registration_urlFilter) {
+ expect(registration_urlFilter('registration.135721386441722')).toMatch(/registration\/135721386441722/);
+ }));
+ });
+
});