mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-04-04 07:09:14 +00:00
Moving components required for variant overrides into appropriate modules
This commit is contained in:
@@ -39,6 +39,7 @@
|
||||
//= require ./taxons/taxons
|
||||
//= require ./utils/utils
|
||||
//= require ./users/users
|
||||
//= require ./variant_overrides/variant_overrides
|
||||
//= require textAngular.min.js
|
||||
//= require textAngular-sanitize.min.js
|
||||
//= require ../shared/bindonce.min.js
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("ofn.admin").factory "dataFetcher", [
|
||||
angular.module("admin.indexUtils").factory "dataFetcher", [
|
||||
"$http", "$q"
|
||||
($http, $q) ->
|
||||
return (dataLocation) ->
|
||||
@@ -9,4 +9,4 @@ angular.module("ofn.admin").factory "dataFetcher", [
|
||||
deferred.reject()
|
||||
|
||||
deferred.promise
|
||||
]
|
||||
]
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
# Indexer.index producers
|
||||
# -> {1: {id: 1, name: 'one'}, 2: {id: 2, name: 'two'}}
|
||||
|
||||
angular.module("ofn.admin").factory 'Indexer', ->
|
||||
angular.module("admin.indexUtils").factory 'Indexer', ->
|
||||
new class Indexer
|
||||
index: (data, key='id') ->
|
||||
index = {}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("ofn.admin").factory "PagedFetcher", (dataFetcher) ->
|
||||
angular.module("admin.indexUtils").factory "PagedFetcher", (dataFetcher) ->
|
||||
new class PagedFetcher
|
||||
# Given a URL like http://example.com/foo?page=::page::&per_page=20
|
||||
# And the response includes an attribute pages with the number of pages to fetch
|
||||
@@ -13,4 +13,4 @@ angular.module("ofn.admin").factory "PagedFetcher", (dataFetcher) ->
|
||||
processData data
|
||||
|
||||
urlForPage: (url, page) ->
|
||||
url.replace("::page::", page)
|
||||
url.replace("::page::", page)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("ofn.admin").factory "SpreeApiAuth", ($q, $http, SpreeApiKey) ->
|
||||
angular.module("admin.indexUtils").factory "SpreeApiAuth", ($q, $http, SpreeApiKey) ->
|
||||
new class SpreeApiAuth
|
||||
authorise: ->
|
||||
deferred = $q.defer()
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("ofn.admin").factory "StatusMessage", ($timeout) ->
|
||||
angular.module("admin.indexUtils").factory "StatusMessage", ($timeout) ->
|
||||
new class StatusMessage
|
||||
types:
|
||||
progress: {timeout: false, style: {color: '#ff9906'}}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("ofn.admin").controller "AdminVariantOverridesCtrl", ($scope, $timeout, Indexer, SpreeApiAuth, PagedFetcher, StatusMessage, hubs, producers, hubPermissions, VariantOverrides, DirtyVariantOverrides) ->
|
||||
angular.module("admin.variantOverrides").controller "AdminVariantOverridesCtrl", ($scope, $timeout, Indexer, SpreeApiAuth, PagedFetcher, StatusMessage, hubs, producers, hubPermissions, VariantOverrides, DirtyVariantOverrides) ->
|
||||
$scope.hubs = hubs
|
||||
$scope.hub = null
|
||||
$scope.products = []
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("ofn.admin").directive "ofnTrackVariantOverride", (DirtyVariantOverrides) ->
|
||||
angular.module("admin.variantOverrides").directive "ofnTrackVariantOverride", (DirtyVariantOverrides) ->
|
||||
require: "ngModel"
|
||||
link: (scope, element, attrs, ngModel) ->
|
||||
ngModel.$parsers.push (viewValue) ->
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("ofn.admin").filter "hubPermissions", ($filter) ->
|
||||
angular.module("admin.variantOverrides").filter "hubPermissions", ($filter) ->
|
||||
return (products, hubPermissions, hub_id) ->
|
||||
return [] if !hub_id
|
||||
return $filter('filter')(products, ((product) -> hubPermissions[hub_id].indexOf(product.producer_id) > -1), true)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("ofn.admin").factory "DirtyVariantOverrides", ($http) ->
|
||||
angular.module("admin.variantOverrides").factory "DirtyVariantOverrides", ($http) ->
|
||||
new class DirtyVariantOverrides
|
||||
dirtyVariantOverrides: {}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
angular.module("ofn.admin").factory "VariantOverrides", (variantOverrides, Indexer) ->
|
||||
angular.module("admin.variantOverrides").factory "VariantOverrides", (variantOverrides) ->
|
||||
new class VariantOverrides
|
||||
variantOverrides: {}
|
||||
|
||||
@@ -20,4 +20,4 @@ angular.module("ofn.admin").factory "VariantOverrides", (variantOverrides, Index
|
||||
|
||||
updateIds: (updatedVos) ->
|
||||
for vo in updatedVos
|
||||
@variantOverrides[vo.hub_id][vo.variant_id].id = vo.id
|
||||
@variantOverrides[vo.hub_id][vo.variant_id].id = vo.id
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
angular.module("admin.variantOverrides", ["admin.indexUtils"])
|
||||
@@ -31,12 +31,12 @@ module Admin
|
||||
admin_inject_json_ams_array ngModule, "shops", @shops, Api::Admin::IdNameSerializer
|
||||
end
|
||||
|
||||
def admin_inject_hubs
|
||||
admin_inject_json_ams_array "ofn.admin", "hubs", @hubs, Api::Admin::IdNameSerializer
|
||||
def admin_inject_hubs(opts={module: 'ofn.admin'})
|
||||
admin_inject_json_ams_array opts[:module], "hubs", @hubs, Api::Admin::IdNameSerializer
|
||||
end
|
||||
|
||||
def admin_inject_producers
|
||||
admin_inject_json_ams_array "ofn.admin", "producers", @producers, Api::Admin::IdNameSerializer
|
||||
def admin_inject_producers(opts={module: 'ofn.admin'})
|
||||
admin_inject_json_ams_array opts[:module], "producers", @producers, Api::Admin::IdNameSerializer
|
||||
end
|
||||
|
||||
def admin_inject_enterprise_permissions
|
||||
@@ -49,7 +49,7 @@ module Admin
|
||||
end
|
||||
|
||||
def admin_inject_hub_permissions
|
||||
render partial: "admin/json/injection_ams", locals: {ngModule: "ofn.admin", name: "hubPermissions", json: @hub_permissions.to_json}
|
||||
render partial: "admin/json/injection_ams", locals: {ngModule: "admin.variantOverrides", name: "hubPermissions", json: @hub_permissions.to_json}
|
||||
end
|
||||
|
||||
def admin_inject_products
|
||||
@@ -69,7 +69,7 @@ module Admin
|
||||
end
|
||||
|
||||
def admin_inject_variant_overrides
|
||||
admin_inject_json_ams_array "ofn.admin", "variantOverrides", @variant_overrides, Api::Admin::VariantOverrideSerializer
|
||||
admin_inject_json_ams_array "admin.variantOverrides", "variantOverrides", @variant_overrides, Api::Admin::VariantOverrideSerializer
|
||||
end
|
||||
|
||||
def admin_inject_order_cycle_instance
|
||||
@@ -85,7 +85,7 @@ module Admin
|
||||
end
|
||||
|
||||
def admin_inject_spree_api_key
|
||||
render partial: "admin/json/injection_ams", locals: {ngModule: 'ofn.admin', name: 'SpreeApiKey', json: "'#{@spree_api_key.to_s}'"}
|
||||
render partial: "admin/json/injection_ams", locals: {ngModule: 'admin.indexUtils', name: 'SpreeApiKey', json: "'#{@spree_api_key.to_s}'"}
|
||||
end
|
||||
|
||||
def admin_inject_json_ams(ngModule, name, data, serializer, opts = {})
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
= admin_inject_spree_api_key
|
||||
= admin_inject_hubs
|
||||
= admin_inject_hubs module: 'admin.variantOverrides'
|
||||
= admin_inject_hub_permissions
|
||||
= admin_inject_producers
|
||||
= admin_inject_producers module: 'admin.variantOverrides'
|
||||
= admin_inject_variant_overrides
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
= render 'admin/variant_overrides/header'
|
||||
= render 'admin/variant_overrides/data'
|
||||
|
||||
%div{ ng: { app: 'ofn.admin', controller: 'AdminVariantOverridesCtrl', init: 'initialise()' } }
|
||||
%div{ ng: { app: 'admin.variantOverrides', controller: 'AdminVariantOverridesCtrl', init: 'initialise()' } }
|
||||
= render 'admin/variant_overrides/hub_choice'
|
||||
|
||||
%div{ng: {show: 'hub'}}
|
||||
|
||||
@@ -9,7 +9,7 @@ describe "VariantOverridesCtrl", ->
|
||||
variantOverrides = {}
|
||||
|
||||
beforeEach ->
|
||||
module 'ofn.admin'
|
||||
module 'admin.variantOverrides'
|
||||
module ($provide) ->
|
||||
$provide.value 'SpreeApiKey', 'API_KEY'
|
||||
$provide.value 'variantOverrides', variantOverrides
|
||||
@@ -54,4 +54,4 @@ describe "VariantOverridesCtrl", ->
|
||||
expect(scope.updateError(data, 400)).toEqual "I had some trouble saving: Hub can't be blank, Variant can't be blank"
|
||||
|
||||
it "returns a generic message otherwise", ->
|
||||
expect(scope.updateError({}, 500)).toEqual "Oh no! I was unable to save your changes."
|
||||
expect(scope.updateError({}, 500)).toEqual "Oh no! I was unable to save your changes."
|
||||
|
||||
@@ -7,7 +7,7 @@ describe "maintaining a list of dirty variant overrides", ->
|
||||
count_on_hand: 4
|
||||
|
||||
beforeEach ->
|
||||
module "ofn.admin"
|
||||
module "admin.variantOverrides"
|
||||
|
||||
beforeEach inject (_DirtyVariantOverrides_) ->
|
||||
DirtyVariantOverrides = _DirtyVariantOverrides_
|
||||
|
||||
@@ -2,7 +2,7 @@ describe "indexer", ->
|
||||
Indexer = null
|
||||
|
||||
beforeEach ->
|
||||
module "ofn.admin"
|
||||
module "admin.indexUtils"
|
||||
|
||||
beforeEach inject (_Indexer_) ->
|
||||
Indexer = _Indexer_
|
||||
|
||||
@@ -7,7 +7,7 @@ describe "VariantOverrides service", ->
|
||||
]
|
||||
|
||||
beforeEach ->
|
||||
module "ofn.admin"
|
||||
module "admin.variantOverrides"
|
||||
module ($provide) ->
|
||||
$provide.value "variantOverrides", variantOverrides
|
||||
null
|
||||
|
||||
Reference in New Issue
Block a user