cms/app-client/mirage/serializers/theme.js
changeset 237 69a9f3687902
parent 236 ac6928e86d14
child 240 aa101458cd4e
--- a/cms/app-client/mirage/serializers/theme.js	Sat Jul 09 00:59:32 2016 +0200
+++ b/cms/app-client/mirage/serializers/theme.js	Tue Jul 12 09:48:11 2016 +0200
@@ -5,25 +5,26 @@
 export default JSONAPISerializer.extend({
 
     serialize: function(response, request) {
-    	// Remove models with no name
-    	response.models = response.models.filter(element => element.label);
-    	// Alphabetical order
-    	if(request.queryParams.sort === 'alphabetical') {
-    		response.models.sort(function(a, b) {
-				var aLabel = a.label.toUpperCase();
-				var bLabel = b.label.toUpperCase();
-				if (aLabel < bLabel) return -1;
-				if (aLabel > bLabel) return 1;
-				return 0;
-			});
-		// Descending order
-    	} else if(request.queryParams.sort === 'descending') {
-    		response.models.sort(function(a, b) {
-				return b.count - a.count;
-			});
-    	}
-    	var index = request.queryParams.page * request.queryParams.limit;
-    	var slice = response.models.slice(index, index + request.queryParams.limit);
+        // Remove models with no name
+        response.models = response.models.filter(element => element.label);
+        // Alphabetical order
+        if(request.queryParams.sort === 'alphabetical') {
+            response.models.sort(function(a, b) {
+                var aLabel = a.label.toUpperCase();
+                var bLabel = b.label.toUpperCase();
+                if (aLabel < bLabel) return -1;
+                if (aLabel > bLabel) return 1;
+                return 0;
+            });
+        // Descending order
+        } else if(request.queryParams.sort === 'descending') {
+            response.models.sort(function(a, b) {
+                return b.count - a.count;
+            });
+        }
+        var begin = parseInt(request.queryParams.index * request.queryParams.limit);
+        var end = parseInt(begin + (request.queryParams.limit - 1));
+        var slice = response.models.slice(begin, end);
         return _(slice).map((theme) => { return [theme.id, {count: theme.count, label: theme.label}];}).object().value();
     }