mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-15 23:57:48 +00:00
Adding angularjs payment method controller, updating payment method edit form
This commit is contained in:
@@ -0,0 +1,2 @@
|
||||
angular.module("admin.paymentMethods").controller "paymentMethodCtrl", ($scope, paymentMethod) ->
|
||||
$scope.paymentMethod = paymentMethod
|
||||
@@ -1,7 +1,7 @@
|
||||
angular.module("ofn.admin").controller "ProvidersCtrl", ($scope, paymentMethod) ->
|
||||
angular.module("admin.paymentMethods").controller "ProvidersCtrl", ($scope, paymentMethod) ->
|
||||
if paymentMethod.type
|
||||
$scope.include_html = "/admin/payment_methods/show_provider_preferences?" +
|
||||
"provider_type=#{paymentMethod.type};" +
|
||||
"pm_id=#{paymentMethod.id};"
|
||||
else
|
||||
$scope.include_html = ""
|
||||
$scope.include_html = ""
|
||||
@@ -1,7 +1,7 @@
|
||||
angular.module("ofn.admin").directive "providerPrefsFor", ($http) ->
|
||||
angular.module("admin.paymentMethods").directive "providerPrefsFor", ($http) ->
|
||||
link: (scope, element, attrs) ->
|
||||
element.on "change blur load", ->
|
||||
scope.$apply ->
|
||||
scope.include_html = "/admin/payment_methods/show_provider_preferences?" +
|
||||
"provider_type=#{element.val()};" +
|
||||
"pm_id=#{attrs.providerPrefsFor};"
|
||||
"pm_id=#{attrs.providerPrefsFor};"
|
||||
@@ -1,6 +1,7 @@
|
||||
/ replace "div[data-hook='admin_payment_method_form_fields']"
|
||||
|
||||
%div.alpha.eleven.columns
|
||||
= render 'data'
|
||||
%div.alpha.eleven.columns{ "ng-app" => "admin.paymentMethods", "ng-controller" => "paymentMethodCtrl" }
|
||||
.row
|
||||
.alpha.three.columns
|
||||
= label_tag nil, t(:name)
|
||||
|
||||
2
app/views/spree/admin/payment_methods/_data.html.haml
Normal file
2
app/views/spree/admin/payment_methods/_data.html.haml
Normal file
@@ -0,0 +1,2 @@
|
||||
:javascript
|
||||
angular.module('admin.paymentMethods').value('paymentMethod', #{ { id: @payment_method.id, type: @payment_method.type }.to_json })
|
||||
@@ -1,10 +1,8 @@
|
||||
:javascript
|
||||
angular.module('ofn.admin').value('paymentMethod', #{ { id: @payment_method.id, type: @payment_method.type }.to_json })
|
||||
#provider-settings{ ng: { app: "ofn.admin", controller: "ProvidersCtrl" } }
|
||||
#provider-settings{ ng: { controller: "ProvidersCtrl" } }
|
||||
.row
|
||||
.alpha.three.columns
|
||||
= label :payment_method, :type, t(:provider)
|
||||
.omega.eight.columns
|
||||
= collection_select(:payment_method, :type, @providers, :to_s, :clean_name, (!@object.persisted? ? { :selected => "Spree::PaymentMethod::Check"} : {}), { class: 'select2 fullwidth', 'provider-prefs-for' => "#{@object.id}"})
|
||||
|
||||
%div{"ng-include" => "include_html" }
|
||||
%div{"ng-include" => "include_html" }
|
||||
|
||||
@@ -5,7 +5,7 @@ describe "ProvidersCtrl", ->
|
||||
|
||||
describe "initialising using a payment method without a type", ->
|
||||
beforeEach ->
|
||||
module 'ofn.admin'
|
||||
module 'admin.paymentMethods'
|
||||
scope = {}
|
||||
paymentMethod =
|
||||
type: null
|
||||
@@ -18,7 +18,7 @@ describe "ProvidersCtrl", ->
|
||||
|
||||
describe "initialising using a payment method with a type", ->
|
||||
beforeEach ->
|
||||
module 'ofn.admin'
|
||||
module 'admin.paymentMethods'
|
||||
scope = {}
|
||||
paymentMethod =
|
||||
type: "NOT NULL"
|
||||
@@ -27,4 +27,4 @@ describe "ProvidersCtrl", ->
|
||||
ctrl = $controller 'ProvidersCtrl', {$scope: scope, paymentMethod: paymentMethod }
|
||||
|
||||
it "sets the include_html porperty on scope to some address", ->
|
||||
expect(scope.include_html).toBe "/admin/payment_methods/show_provider_preferences?provider_type=NOT NULL;pm_id=#{paymentMethod.id};"
|
||||
expect(scope.include_html).toBe "/admin/payment_methods/show_provider_preferences?provider_type=NOT NULL;pm_id=#{paymentMethod.id};"
|
||||
|
||||
Reference in New Issue
Block a user