| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | 
							- define([ "require", "utils/Globals", "utils/Utils", "utils/CommonViewFunction", "backbone.paginator" ], function(require, Globals, Utils, CommonViewFunction) {
 
-     "use strict";
 
-     var BaseCollection = Backbone.PageableCollection.extend({
 
-         initialize: function() {
 
-             this.sort_key = "id";
 
-         },
 
-         comparator: function(key, value) {
 
-             return key = key.get(this.sort_key), value = value.get(this.sort_key), key > value ? 1 : key < value ? -1 : 0;
 
-         },
 
-         sortByKey: function(sortKey) {
 
-             this.sort_key = sortKey, this.sort();
 
-         },
 
-         state: {
 
-             firstPage: 0,
 
-             pageSize: Globals.settings.PAGE_SIZE
 
-         },
 
-         mode: "client",
 
-         parseRecords: function(resp, options) {
 
-             this.responseData = {
 
-                 dataType: resp.dataType,
 
-                 query: resp.query,
 
-                 queryType: resp.queryType,
 
-                 requestId: resp.requestId
 
-             };
 
-             try {
 
-                 if (!this.modelAttrName) throw new Error("this.modelAttrName not defined for " + this);
 
-                 return resp[this.modelAttrName];
 
-             } catch (e) {
 
-                 console.log(e);
 
-             }
 
-         },
 
-         getFirstPage: function(options) {
 
-             return this.getPage("first", _.extend({
 
-                 reset: !0
 
-             }, options));
 
-         },
 
-         getPreviousPage: function(options) {
 
-             return this.getPage("prev", _.extend({
 
-                 reset: !0
 
-             }, options));
 
-         },
 
-         getNextPage: function(options) {
 
-             return this.getPage("next", _.extend({
 
-                 reset: !0
 
-             }, options));
 
-         },
 
-         getLastPage: function(options) {
 
-             return this.getPage("last", _.extend({
 
-                 reset: !0
 
-             }, options));
 
-         },
 
-         hasPrevious: function(options) {
 
-             return this.hasPreviousPage();
 
-         },
 
-         hasNext: function(options) {
 
-             return this.hasNextPage();
 
-         }
 
-     }, {
 
-         getTableCols: function(cols, collection, defaultSortDirection) {
 
-             var retCols = _.map(cols, function(v, k, l) {
 
-                 var defaults = collection.constructor.tableCols[k];
 
-                 return defaults || (defaults = {}), _.extend({
 
-                     name: k,
 
-                     direction: defaultSortDirection ? defaultSortDirection : null
 
-                 }, defaults, v);
 
-             });
 
-             return retCols;
 
-         },
 
-         nonCrudOperation: function(url, requestMethod, options) {
 
-             return options.beforeSend = CommonViewFunction.addRestCsrfCustomHeader, options.data && "object" == typeof options.data && (options.data = JSON.stringify(options.data)), 
 
-             Backbone.sync.call(this, null, this, _.extend({
 
-                 url: url,
 
-                 type: requestMethod
 
-             }, options));
 
-         }
 
-     });
 
-     return BaseCollection;
 
- });
 
 
  |