generate services.js and push couchdb database and version to app
authorDobrica Pavlinusic <dpavlin@rot13.org>
Thu, 10 Jan 2013 18:17:42 +0000 (19:17 +0100)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Thu, 10 Jan 2013 18:17:42 +0000 (19:17 +0100)
angular-server.pl
app/drzb2013.html.ep
app/js/services.js [deleted file]
app/js/services.js.ep [new file with mode: 0644]
app/partials/list.html.ep

index d76b11e..29db13a 100755 (executable)
@@ -6,13 +6,16 @@ use Time::HiRes;
 use Clone qw(clone);
 use Mojo::UserAgent;
 
+our $VERSION = '0.3';
+
 sub new_uuid { Time::HiRes::time * 100000 }
 
 #push @{app->static->paths}, 'app'; # default angular-seed app directory
 
 
 my $couchdb = $ENV{COUCHDB} || 'http://localhost:5984';
-my $couchdb_view = 'http://10.60.0.92:5984/_utils/document.html?drzb2013v2/';
+my $couchdb_database = 'drzb2013v2';
+my $couchdb_view = "http://10.60.0.92:5984/_utils/document.html?$couchdb_database";
 my $client = Mojo::UserAgent->new;
 
 sub _couchdb_put {
@@ -65,6 +68,13 @@ helper locale => sub {
        return $locale{ $lang } || "MISSING $lang $_[1]";
 };
 
+get '/js/services.js' => sub {
+       my $self = shift;
+       $self->stash( VERSION => $VERSION );
+       $self->stash( couchdb_database => $couchdb_database );
+       $self->render( 'js/services', format => 'js' );
+};
+
 # short public URLs
 get '/hr' => sub { shift->redirect_to('/lang/hr/drzb2013') };
 get '/en' => sub { shift->redirect_to('/lang/en/drzb2013') };
index de0a70d..e58bb32 100644 (file)
@@ -36,7 +36,9 @@
   <ul class="nav">
     <li><a href="#/registration">registation</a></li>
     <li><a href="#/list">list</a></li>
+    <li class="divider-vertical"></li>
   </ul>
+  <div class="brand">DRZB v<span app-version></span></div>
  </div>
 </div>
 % }
@@ -57,9 +59,6 @@
 %= include( "drzb2013/header.$lang" );
 
   <div class="container" ng-view></div>
-<!--
-  <div>Angular seed app: v<span app-version></span></div>
--->
   <script src="/lib/jquery/1.8.3/jquery.min.js"></script>
   <script src="/lib/bootstrap/js/bootstrap.min.js"></script>
   <!-- In production use:
diff --git a/app/js/services.js b/app/js/services.js
deleted file mode 100644 (file)
index 142e930..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-'use strict';
-
-/* Services */
-
-
-// Demonstrate how to register services
-// In this case it is a simple value service.
-angular.module('myApp.services', [ 'ngResource' ]).
-       value('version', '0.2').
-
-       factory('RegistrationTypes', function($log) {
-               var types = [
-
-// [ 'code', 'label', 'description' ],
-[ "lecture", "Prijava usmenog izlaganja", "- popunjava prvi autor, odnosno osoba koja će izložiti rad. Ostali autori trebaju se samo registrirati." ],
-[ "poster", "Prijava poster prezentacije", "- popunjava prvi autor, ondnosno osoba koja će izložiti rad. Ostali autori trebaju se samo registrirati." ],
-[ "symposium", "Prijava simpozija", "- popunjava organizator simpozija, upisuje sažetke svih radova. Autori radova na simpoziju trebaju se samo registrirati." ],
-[ "round", "Prijava okruglog stola", "- popunjava organizator okruglog stola. Sudionici se trebaju registrirati." ],
-[ false ], // separator
-
-[ "participant", "Registracija", "- popunjavaju slušači i suatori, te autori i suatori radova na simpoziju i sudionici okruglog stola." ],
-[ "accomp", "Registracija za osobe u pratnji." ],
-[ '', 'Sve registracije', '*' ],
-
-               ];
-
-               var RegistrationTypes = [];
-               angular.forEach(types, function(value, key){
-                       this.push({ code: value[0], label: value[1], description: value[2] });
-               }, RegistrationTypes);
-
-               $log.info('RegistrationTypes', RegistrationTypes);
-               return RegistrationTypes;
-
-       }).
-       factory('Registration', function($resource){
-               return $resource('/data/:database/registration/:registrationId', { database: 'drzb2013v2' }, {
-                       query: {method:'GET', params:{registraionId:'@id'}, isArray:true}
-               });
-       }).
-       factory('View', function($resource) {
-               return $resource('/:database/_design/registration/_view/:view?group=true;format=:format', { database: 'drzb2013v2' }, {
-                       key_array: {method:'GET', params:{ format:'key_array' }, isArray:false}
-               });
-
-       });
diff --git a/app/js/services.js.ep b/app/js/services.js.ep
new file mode 100644 (file)
index 0000000..d72d3cd
--- /dev/null
@@ -0,0 +1,46 @@
+'use strict';
+
+/* Services */
+
+
+// Demonstrate how to register services
+// In this case it is a simple value service.
+angular.module('myApp.services', [ 'ngResource' ]).
+       value('version', '<%= $VERSION %>').
+
+       factory('RegistrationTypes', function($log) {
+               var types = [
+
+// [ 'code', 'label', 'description' ],
+[ "lecture", "Prijava usmenog izlaganja", "- popunjava prvi autor, odnosno osoba koja će izložiti rad. Ostali autori trebaju se samo registrirati." ],
+[ "poster", "Prijava poster prezentacije", "- popunjava prvi autor, ondnosno osoba koja će izložiti rad. Ostali autori trebaju se samo registrirati." ],
+[ "symposium", "Prijava simpozija", "- popunjava organizator simpozija, upisuje sažetke svih radova. Autori radova na simpoziju trebaju se samo registrirati." ],
+[ "round", "Prijava okruglog stola", "- popunjava organizator okruglog stola. Sudionici se trebaju registrirati." ],
+[ false ], // separator
+
+[ "participant", "Registracija", "- popunjavaju slušači i suatori, te autori i suatori radova na simpoziju i sudionici okruglog stola." ],
+[ "accomp", "Registracija za osobe u pratnji." ],
+[ '', 'Sve registracije', '*' ],
+
+               ];
+
+               var RegistrationTypes = [];
+               angular.forEach(types, function(value, key){
+                       this.push({ code: value[0], label: value[1], description: value[2] });
+               }, RegistrationTypes);
+
+               $log.info('RegistrationTypes', RegistrationTypes);
+               return RegistrationTypes;
+
+       }).
+       factory('Registration', function($resource){
+               return $resource('/data/:database/registration/:registrationId', { database: '<%= $couchdb_database %>' }, {
+                       query: {method:'GET', params:{registraionId:'@id'}, isArray:true}
+               });
+       }).
+       factory('View', function($resource) {
+               return $resource('/:database/_design/registration/_view/:view?group=true;format=:format', { database: '<%= $couchdb_database %>' }, {
+                       key_array: {method:'GET', params:{ format:'key_array' }, isArray:false}
+               });
+
+       });
index 81476f4..07424f8 100644 (file)
@@ -38,7 +38,7 @@ Search:
  <tt>{{registration._id}}</tt>
  {{registration._id | registration_timestamp}}
 % if ( $lang =~ m/-dev/ ) {
- <a href="<%= $couchdb_view %>{{registration._id}}" target="couchdb">couchdb</a>
+ <a href="<%= $couchdb_view %>/{{registration._id}}" target="couchdb">couchdb</a>
 % }
 
        <p>