             return "#{backend_base}/#{@resource_name}/"
 
     class SMCollection extends RESTFrameworkCollection
+        initialize: ->
+            @filters = {}
+
         url: ->
             obj = new @model
             return "#{backend_base}/#{obj.resource_name}/"
 
+        setFilter: (key, val) ->
+            if not val
+                if key of @filters
+                    delete @filters[key]
+            else
+                @filters[key] = val
+
         fetch: (options) ->
+            if options?
+                options = _.clone options
+            else
+                options = {}
+
+            data = _.clone @filters
+            if options.data?
+                data = _.extend data, options.data
+            options.data = data
+
             if options.spinner_target
                 spinner = new Spinner().spin(options.spinner_target)
                 success = options.success


    class SearchList extends SMCollection
        initialize: ->
            @model = (attrs, options) ->
                type_to_model =
                    service: Service

                    spinner.stop()
                    error?(collection, response, options)

            super options

    class Unit extends SMModel
        resource_name: 'unit'
