dodan intro, maknut tekst pored tipova registracije
[angular-drzb] / angular-server.pl
index e8d3729..9f32b2c 100755 (executable)
@@ -1,7 +1,5 @@
 #!/usr/bin/env perl
 
-use lib 'common/mojo/lib';
-
 use Mojolicious::Lite;
 use Data::Dump qw(dump);
 use Time::HiRes;
@@ -10,7 +8,7 @@ use Mojo::UserAgent;
 
 sub new_uuid { Time::HiRes::time * 100000 }
 
-push @{app->static->paths}, 'app'; # default angular-seed app directory
+#push @{app->static->paths}, 'app'; # default angular-seed app directory
 
 
 my $couchdb = $ENV{COUCHDB} || 'http://localhost:5984';
@@ -32,7 +30,7 @@ sub _couchdb_put {
 sub _couchdb_get {
        my ( $url ) = @_;
        my $return = $client->get( "$couchdb/$url" )->res->json;
-       warn "# _couchdb_get $url = ",dump($return);
+#      warn "# _couchdb_get $url = ",dump($return);
        return $return;
 }
 
@@ -44,14 +42,29 @@ sub _render_jsonp {
        my ( $self, $json ) = @_;
 #warn "## _render_json ",dump($json);
        my $data = $self->render( json => $json, partial => 1 );
-warn "## _render_json $data";
+#warn "## _render_json $data";
        if ( my $callback = $self->param('callback') ) {
                $data = "$callback($data)";
        }
        $self->render( data => $data, format => 'js' );
 }
 
-#get '/' => 'index';
+get '/' => sub {
+       my $self = shift;
+       $self->render_text("...");
+};
+
+# define languages
+
+get '/en/' => sub {
+       my $self = shift;
+       $self->render_static('/en/index.html'); # main AngularJS application page
+};
+
+get '/hr/' => sub {
+       my $self = shift;
+       $self->render_static('/hr/index.html'); # main AngularJS application page
+};
 
 
 get '/data/' => sub {
@@ -103,7 +116,7 @@ get '/data/:database/:entity' => sub {
        $endkey++;
 
        my $counts = _couchdb_get qq|/$database/_all_docs?startkey="$entity";endkey="$endkey";include_docs=true|;
-       warn "# counts ",dump($counts);
+#      warn "# counts ",dump($counts);
 
        _render_jsonp( $self, [ map { $_->{doc} } @{ $counts->{rows} } ] )
 };
@@ -160,77 +173,5 @@ get '/:database/_design/:design/_view/:view' => 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>
+