#!/usr/bin/env perl
-use lib 'common/mojo/lib';
-
use Mojolicious::Lite;
use Data::Dump qw(dump);
use Time::HiRes;
$self->render( data => $data, format => 'js' );
}
-#get '/' => 'index';
+get '/' => sub {
+ my $self = shift;
+ $self->render_static('/index.html'); # main AngularJS application page
+};
get '/data/' => sub {
_render_jsonp( $self, _couchdb_get($url));
};
-# static JSON files from public/json/database/entity/json
-
-get '/json' => sub {
- _render_jsonp( shift, [ map { s{public/json/}{}; $_ } glob 'public/json/*' ] );
-};
-
-get '/json/:database' => sub {
- my $self = shift;
- my $database = $self->param('database');
-
- my $status = {
- document_counts => 0,
- name => $database,
- };
-
- foreach my $path ( glob "public/json/$database/*" ) {
- my @entities = glob "$path/*";
- $path =~ s{public/json/$database/}{};
- $status->{entities}->{$path} = scalar @entities;
- $status->{document_counts}++;
- }
-
- _render_jsonp( $self, $status );
-};
-
-get '/json/:database/:entity' => sub {
- my $self = shift;
-
- my $database = $self->param('database');
- my $entity = $self->param('entity');
-
- my $path = "public/json/$database/$entity";
- die "$path: $!" unless -d $path;
-
- my $docs;
- foreach my $path ( sort glob "$path/*" ) {
- open(my $fh, '<', $path) || die $!;
- local $/ = undef;
- my $str = <$fh>;
- warn "# $path $str";
- my $data = Mojo::JSON->new->decode( $str );
- $data->{_key} = $1 if $path =~ m{/([^/]+$)};
- push @$docs, $data;
- }
-
- _render_jsonp( $self, $docs )
-};
-
-get '/_utils/script/(*url)' => sub { $_[0]->proxy_to( "$couchdb/_utils/script/" . $_[0]->param('url') , with_query_params => 1 ) };
-
app->start;
-__DATA__
-
-@@ index.html.ep
-% layout 'funky';
-Yea baby!
-
-@@ layouts/funky.html.ep
-<!doctype html><html>
- <head><title>Funky!</title></head>
- <body><%== content %></body>
-</html>
-
-@@ layouts/angular.html.ep
-<!DOCTYPE HTML>
-<html xmlns:ng="http://angularjs.org">
- <head>
- <meta charset="utf-8">
-% my $ANGULAR_JS = $ENV{ANGULAR_JS} || ( -e 'public/angular/build/angular.js' ? '/angular/build/angular.js' : '/angular/src/angular-bootstrap.js' );
- <script type="text/javascript"
- src="<%== $ANGULAR_JS %>" ng:autobind></script>
- </head>
- <body><%== content %></body>
-</html>
+