factory Organizations changed View
[angular-drzb] / app / js / services.js.ep
index 45d5b37..0a94ae2 100644 (file)
@@ -20,7 +20,7 @@ angular.module('myApp.services', [ 'ngResource' ]).
 
 [ "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', '', 'badge-inverse' ],
+[ '', 'Sve registracije', '', 'badge-inverse' ]
 
                ];
 
@@ -30,7 +30,7 @@ angular.module('myApp.services', [ 'ngResource' ]).
                                code: value[0],
                                label: value[1],
                                description: value[2],
-                               css_class: value[3],
+                               css_class: value[3]
                        });
                }, RegistrationTypes);
 
@@ -40,12 +40,34 @@ angular.module('myApp.services', [ 'ngResource' ]).
        }).
        factory('Registration', function($resource){
                return $resource('/data/:database/registration/:registrationId', { database: '<%= $couchdb_database %>' }, {
-                       query: {method:'GET', params:{registraionId:'@id'}, isArray:true}
+                       query: {method:'GET', params:{registrationId:'@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}
-               });
 
+/* http://jsfiddle.net/asgoth/7bNAd/ */
+       factory('View', function($q, $http, $log) {
+               return {
+                       getArrayPromise: function(view_url) {
+                               var url = '/<%= $couchdb_database %>/_design/registration/_view/'+view_url+';callback=JSON_CALLBACK';
+
+                               var deferred = $q.defer();
+
+                               $log.info('defer', url);
+
+                               $http.jsonp(url).success(function(json) {
+                                       $log.info('success', url);
+                                       deferred.resolve(json.rows);
+                               }).error(function(error) {
+                                       $log.error('error', url, error );
+                                       deferred.reject(error);
+                               });
+
+                               return deferred.promise;
+                       }
+               };
+       }).
+
+/* http://jsfiddle.net/asgoth/7bNAd/ */
+       value('ValidStates', function() {
+               return [ 'draft', 'confirmation', 'verified', 'review' ];
        });