';
-
- \printf(
- '
',
- \esc_attr( '' ),
- \selected( $pay_feed->subscription_interval_field, '', false ),
- \esc_html( '' )
+ _pronamic_pay_gravityforms_dropdown_input(
+ $form_meta,
+ [
+ 'id' => 'pronamic_pay_gf_subscription_interval_field',
+ 'name' => '_pronamic_pay_gf_subscription_interval_field',
+ 'selected' => $pay_feed->subscription_interval_field,
+ 'options' => [
+ '' => '',
+ ],
+ ]
);
- foreach ( $input_options as $value => $label ) {
- \printf(
- '
',
- \esc_attr( $value ),
- \selected( $pay_feed->subscription_interval_field, $value, false ),
- \esc_html( $label )
- );
- }
-
- echo '';
+ esc_html_e( 'days', 'pronamic_ideal' );
?>
-
-
@@ -637,27 +655,21 @@ function( $action ) {
';
-
- \printf(
- '',
- \esc_attr( '' ),
- \selected( $pay_feed->subscription_frequency_field, '', false ),
- \esc_html( '' )
+ _pronamic_pay_gravityforms_dropdown_input(
+ $form_meta,
+ [
+ 'id' => 'pronamic_pay_gf_subscription_frequency_field',
+ 'name' => '_pronamic_pay_gf_subscription_frequency_field',
+ 'selected' => $pay_feed->subscription_frequency_field,
+ 'options' => [
+ '' => '',
+ ],
+ ]
);
- foreach ( $input_options as $value => $label ) {
- \printf(
- '',
- \esc_attr( $value ),
- \selected( $pay_feed->subscription_frequency_field, $value, false ),
- \esc_html( $label )
- );
- }
-
- echo '';
+ echo esc_html( _x( 'times', 'Recurring payment', 'pronamic_ideal' ) );
-
+ ?>
From dac3dd688fe1ff0d5774deaf092497097c6fc4b0 Mon Sep 17 00:00:00 2001
From: Remco Tolsma <869674+remcotolsma@users.noreply.github.com>
Date: Tue, 17 Jan 2023 12:18:34 +0100
Subject: [PATCH 19/38] No longer fill subscription amount field with
JavaScript.
---
js/admin.js | 30 --------------
views/html-admin-feed-settings.php | 66 +++++++++++++++++++-----------
2 files changed, 43 insertions(+), 53 deletions(-)
diff --git a/js/admin.js b/js/admin.js
index 0b3817d..832e9ff 100644
--- a/js/admin.js
+++ b/js/admin.js
@@ -14,7 +14,6 @@
elements.feed = $element.find( '#gf_ideal_feed' );
elements.gravityForm = $element.find( '#gf_ideal_gravity_form' );
elements.subscriptionAmountType = $element.find( 'input[name="_pronamic_pay_gf_subscription_amount_type"]' );
- elements.subscriptionAmountField = $element.find( '#pronamic_pay_gf_subscription_amount_field' );
elements.subscriptionIntervalType = $element.find( 'input[name="_pronamic_pay_gf_subscription_interval_type"]' );
elements.subscriptionInterval = $element.find( '#pronamic_pay_gf_subscription_interval' );
elements.subscriptionIntervalPeriod = $element.find( '#pronamic_pay_gf_subscription_interval_period' );
@@ -53,35 +52,6 @@
*/
this.updateSubscriptionFields = function() {
if ( gravityForm ) {
- elements.subscriptionAmountField.empty();
-
- var products = [];
-
- if ( gravityForm ) {
- $.each( gravityForm.fields, function( key, field ) {
- if ( 'product' === field.type ) {
- products.push( field );
- }
- } );
- }
-
- // Recurring amount field
- $element = $( elements.subscriptionAmountField );
-
- $( '
").appendTo(a),o.each(n,function(i,e){var n=e.adminLabel||e.label;o("").attr("value",e.id).text(n).prop("selected",s.subscriptionAmountField==e.id).appendTo(a)}),r.subscriptionAmountType.on("change",function(){var i=r.subscriptionAmountType.filter(":checked").val(),e=(o(t).find(".pronamic-pay-gf-subscription-amount-settings").hide(),""===i?r.subscriptionAmountType.parents("tr").siblings().hide():(r.subscriptionAmountType.parents("tr").siblings().show(),(e=r.subscriptionAmountType.parents("table").find("tr")).removeClass("even"),e.filter(":visible:even").addClass("even")),o(t).find(".pronamic-pay-gf-subscription-amount-settings.amount-"+i));0conditionEnabled = $pay_feed->condition_enabled;
-$feed->conditionalLogicObject = $pay_feed->conditional_logic_object;
-$feed->fields = get_post_meta( $post_id, '_pronamic_pay_gf_fields', true );
-$feed->links = $pay_feed->links;
-$feed->subscriptionAmountType = $pay_feed->subscription_amount_type;
-$feed->subscriptionIntervalType = $pay_feed->subscription_interval_type;
-$feed->subscriptionInterval = $pay_feed->subscription_interval;
-$feed->subscriptionIntervalPeriod = $pay_feed->subscription_interval_period;
-$feed->subscriptionFrequencyType = $pay_feed->subscription_frequency_type;
-$feed->subscriptionNumberPeriods = $pay_feed->subscription_number_periods;
-
-$trial = $pay_feed->get_subscription_trial();
-
-$feed->subscriptionTrialEnabled = $trial->enabled;
-$feed->subscriptionTrialLength = $trial->length;
-$feed->subscriptionTrialLengthUnit = $trial->length_unit;
-
/**
* Private helper function for Gravity Forms dropdown input.
*
@@ -116,7 +98,6 @@ function _pronamic_pay_gravityforms_dropdown_input( $form, $args ) {
-
From 72224864b95f818e9d681e69a654929e32150cc5 Mon Sep 17 00:00:00 2001
From: Remco Tolsma <869674+remcotolsma@users.noreply.github.com>
Date: Tue, 17 Jan 2023 12:21:10 +0100
Subject: [PATCH 21/38] Add space.
---
views/html-admin-feed-settings.php | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/views/html-admin-feed-settings.php b/views/html-admin-feed-settings.php
index b17cd75..c71dd4b 100644
--- a/views/html-admin-feed-settings.php
+++ b/views/html-admin-feed-settings.php
@@ -610,6 +610,8 @@ function( $action ) {
]
);
+ echo ' ';
+
esc_html_e( 'days', 'pronamic_ideal' );
?>
@@ -678,6 +680,8 @@ function( $action ) {
]
);
+ echo ' ';
+
echo esc_html( _x( 'times', 'Recurring payment', 'pronamic_ideal' ) );
?>
From 097137fa2c94adfe9119121f4bdb4ab614aa44fb Mon Sep 17 00:00:00 2001
From: Remco Tolsma <869674+remcotolsma@users.noreply.github.com>
Date: Tue, 17 Jan 2023 12:23:13 +0100
Subject: [PATCH 22/38] Use more clear input labels by adding field label in
front.
---
views/html-admin-feed-settings.php | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/views/html-admin-feed-settings.php b/views/html-admin-feed-settings.php
index c71dd4b..b4facd6 100644
--- a/views/html-admin-feed-settings.php
+++ b/views/html-admin-feed-settings.php
@@ -61,15 +61,23 @@ function _pronamic_pay_gravityforms_dropdown_input( $form, $args ) {
continue;
}
+ $field_label = empty( $field['adminLabel'] ) ? $field['label'] : $field['adminLabel'];
+
if ( \is_array( $field->inputs ) ) {
foreach ( $field->inputs as $input ) {
- $options[ $input['id'] ] = empty( $input['adminLabel'] ) ? $input['label'] : $input['adminLabel'];
+ $input_label = empty( $input['adminLabel'] ) ? $input['label'] : $input['adminLabel'];
+
+ $options[ $input['id'] ] = \sprintf(
+ '%s (%s)',
+ $field_label,
+ $input_label
+ );
}
}
if ( empty( $field->inputs ) ) {
if ( ! $field->displayOnly ) {
- $options[ $field['id'] ] = empty( $field['adminLabel'] ) ? $field['label'] : $field['adminLabel'];
+ $options[ $field['id'] ] = $field_label;
}
}
}
From 16ba516ec92f37df91c4073aacbc2721bec458c0 Mon Sep 17 00:00:00 2001
From: Remco Tolsma <869674+remcotolsma@users.noreply.github.com>
Date: Tue, 17 Jan 2023 12:24:03 +0100
Subject: [PATCH 23/38] Remove unused JavaScript function `getInputs`, no
longer used.
---
js/admin.js | 18 ------------------
1 file changed, 18 deletions(-)
diff --git a/js/admin.js b/js/admin.js
index 1da34d3..8749390 100644
--- a/js/admin.js
+++ b/js/admin.js
@@ -26,24 +26,6 @@
// Data
var gravityForm = JSON.parse( elements.gravityForm.val() );
-
- this.getInputs = function() {
- var inputs = [];
-
- if ( gravityForm ) {
- $.each( gravityForm.fields, function( key, field ) {
- if ( field.inputs ) {
- $.each( field.inputs, function( key, input ) {
- inputs.push( input );
- } );
- } else if ( ! field.displayOnly ) {
- inputs.push ( field );
- }
- } );
- }
-
- return inputs;
- };
/**
* Update subscription fields
From d4ca9bc10e85ae627813c8c0b3f8c955fba176ca Mon Sep 17 00:00:00 2001
From: Remco Tolsma <869674+remcotolsma@users.noreply.github.com>
Date: Tue, 17 Jan 2023 12:25:32 +0100
Subject: [PATCH 24/38] The `gravityForm` object is note required to update the
subscription fields.
---
js/admin.js | 194 ++++++++++++++++++++++++++--------------------------
1 file changed, 96 insertions(+), 98 deletions(-)
diff --git a/js/admin.js b/js/admin.js
index 8749390..24526f8 100644
--- a/js/admin.js
+++ b/js/admin.js
@@ -31,145 +31,143 @@
* Update subscription fields
*/
this.updateSubscriptionFields = function() {
- if ( gravityForm ) {
- elements.subscriptionAmountType.on( 'change', function() {
- var amountType = elements.subscriptionAmountType.filter( ':checked' ).val();
+ elements.subscriptionAmountType.on( 'change', function() {
+ var amountType = elements.subscriptionAmountType.filter( ':checked' ).val();
- $( element ).find( '.pronamic-pay-gf-subscription-amount-settings' ).hide();
+ $( element ).find( '.pronamic-pay-gf-subscription-amount-settings' ).hide();
- if ( '' === amountType ) {
- elements.subscriptionAmountType.parents( 'tr' ).siblings().hide();
- } else {
- elements.subscriptionAmountType.parents('tr').siblings().show();
+ if ( '' === amountType ) {
+ elements.subscriptionAmountType.parents( 'tr' ).siblings().hide();
+ } else {
+ elements.subscriptionAmountType.parents('tr').siblings().show();
- // Set background color of visible even rows
- var rows = elements.subscriptionAmountType.parents( 'table' ).find( 'tr' );
+ // Set background color of visible even rows
+ var rows = elements.subscriptionAmountType.parents( 'table' ).find( 'tr' );
- rows.removeClass( 'even' );
- rows.filter( ':visible:even' ).addClass( 'even' );
- }
+ rows.removeClass( 'even' );
+ rows.filter( ':visible:even' ).addClass( 'even' );
+ }
- var amountSettings = $( element ).find( '.pronamic-pay-gf-subscription-amount-settings.amount-' + amountType );
+ var amountSettings = $( element ).find( '.pronamic-pay-gf-subscription-amount-settings.amount-' + amountType );
- if ( amountSettings.length > 0 ) {
- amountSettings.show();
- }
- } );
+ if ( amountSettings.length > 0 ) {
+ amountSettings.show();
+ }
+ } );
- elements.subscriptionAmountType.trigger( 'change' );
+ elements.subscriptionAmountType.trigger( 'change' );
- elements.subscriptionIntervalType.on( 'change', function() {
- var intervalType = elements.subscriptionIntervalType.filter( ':checked' ).val();
+ elements.subscriptionIntervalType.on( 'change', function() {
+ var intervalType = elements.subscriptionIntervalType.filter( ':checked' ).val();
- $( element ).find( '.pronamic-pay-gf-subscription-interval-settings' ).hide();
+ $( element ).find( '.pronamic-pay-gf-subscription-interval-settings' ).hide();
- var intervalSettings = $( element ).find( '.pronamic-pay-gf-subscription-interval-settings.interval-' + intervalType );
+ var intervalSettings = $( element ).find( '.pronamic-pay-gf-subscription-interval-settings.interval-' + intervalType );
- if ( 'fixed' !== intervalType ) {
- elements.subscriptionIntervalPeriod.val( 'D' );
+ if ( 'fixed' !== intervalType ) {
+ elements.subscriptionIntervalPeriod.val( 'D' );
- elements.subscriptionIntervalPeriod.trigger( 'change' );
- }
+ elements.subscriptionIntervalPeriod.trigger( 'change' );
+ }
- if ( intervalSettings.length > 0 ) {
- intervalSettings.show();
- }
- } );
+ if ( intervalSettings.length > 0 ) {
+ intervalSettings.show();
+ }
+ } );
- elements.subscriptionIntervalDateType.on( 'change', function() {
- var intervalDateType = elements.subscriptionIntervalDateType.filter( ':checked' ).val();
+ elements.subscriptionIntervalDateType.on( 'change', function() {
+ var intervalDateType = elements.subscriptionIntervalDateType.filter( ':checked' ).val();
- $( element ).find( '.pronamic-pay-gf-subscription-interval-date-settings' ).hide();
+ $( element ).find( '.pronamic-pay-gf-subscription-interval-date-settings' ).hide();
- var intervalDateSettings = $( element ).find( '.pronamic-pay-gf-subscription-interval-date-settings.interval-date-' + intervalDateType );
+ var intervalDateSettings = $( element ).find( '.pronamic-pay-gf-subscription-interval-date-settings.interval-date-' + intervalDateType );
- if ( intervalDateSettings.length > 0 ) {
- intervalDateSettings.show();
- }
- } );
+ if ( intervalDateSettings.length > 0 ) {
+ intervalDateSettings.show();
+ }
+ } );
- elements.subscriptionIntervalPeriod.on( 'change', function() {
- var intervalPeriod = elements.subscriptionIntervalPeriod.val();
+ elements.subscriptionIntervalPeriod.on( 'change', function() {
+ var intervalPeriod = elements.subscriptionIntervalPeriod.val();
- $( element ).find( '.pronamic-pay-gf-subscription-interval-date-sync-settings' ).hide();
+ $( element ).find( '.pronamic-pay-gf-subscription-interval-date-sync-settings' ).hide();
- $( element ).find( '.pronamic-pay-gf-subscription-interval-date-sync-settings.interval-' + intervalPeriod ).show();
+ $( element ).find( '.pronamic-pay-gf-subscription-interval-date-sync-settings.interval-' + intervalPeriod ).show();
- switch ( intervalPeriod ) {
- case 'D' :
- elements.subscriptionIntervalDateType.filter( '[value="payment_date"]' ).prop( 'checked', true );
- elements.subscriptionIntervalDateType.attr( 'disabled', 'disabled' );
- elements.subscriptionIntervalDate.val( '' );
- elements.subscriptionIntervalDateDay.val( '' );
- elements.subscriptionIntervalDateMonth.val( '' );
+ switch ( intervalPeriod ) {
+ case 'D' :
+ elements.subscriptionIntervalDateType.filter( '[value="payment_date"]' ).prop( 'checked', true );
+ elements.subscriptionIntervalDateType.attr( 'disabled', 'disabled' );
+ elements.subscriptionIntervalDate.val( '' );
+ elements.subscriptionIntervalDateDay.val( '' );
+ elements.subscriptionIntervalDateMonth.val( '' );
- break;
- case 'W' :
- elements.subscriptionIntervalDateType.removeAttr( 'disabled' );
- elements.subscriptionIntervalDate.val( '' );
- elements.subscriptionIntervalDateMonth.val( '' );
+ break;
+ case 'W' :
+ elements.subscriptionIntervalDateType.removeAttr( 'disabled' );
+ elements.subscriptionIntervalDate.val( '' );
+ elements.subscriptionIntervalDateMonth.val( '' );
- break;
- case 'M' :
- elements.subscriptionIntervalDateType.removeAttr( 'disabled' );
- elements.subscriptionIntervalDateDay.val( '' );
- elements.subscriptionIntervalDateMonth.val( '' );
+ break;
+ case 'M' :
+ elements.subscriptionIntervalDateType.removeAttr( 'disabled' );
+ elements.subscriptionIntervalDateDay.val( '' );
+ elements.subscriptionIntervalDateMonth.val( '' );
- break;
- case 'Y' :
- elements.subscriptionIntervalDateType.removeAttr( 'disabled' );
- elements.subscriptionIntervalDateDay.val( '' );
+ break;
+ case 'Y' :
+ elements.subscriptionIntervalDateType.removeAttr( 'disabled' );
+ elements.subscriptionIntervalDateDay.val( '' );
- break;
- }
+ break;
+ }
- elements.subscriptionIntervalDateType.trigger( 'change' );
- } );
+ elements.subscriptionIntervalDateType.trigger( 'change' );
+ } );
- $( element ).find( 'select.pronamic-pay-gf-subscription-interval-date-sync-settings' ).on( 'change', function() {
- elements.subscriptionIntervalDateType.filter( '[value="sync"]' ).prop( 'checked', true );
+ $( element ).find( 'select.pronamic-pay-gf-subscription-interval-date-sync-settings' ).on( 'change', function() {
+ elements.subscriptionIntervalDateType.filter( '[value="sync"]' ).prop( 'checked', true );
- elements.subscriptionIntervalDateType.trigger( 'change' );
- } );
+ elements.subscriptionIntervalDateType.trigger( 'change' );
+ } );
- elements.subscriptionIntervalType.trigger( 'change' );
- elements.subscriptionIntervalPeriod.trigger( 'change' );
+ elements.subscriptionIntervalType.trigger( 'change' );
+ elements.subscriptionIntervalPeriod.trigger( 'change' );
- elements.subscriptionFrequencyType.on( 'change', function() {
- var frequencyType = elements.subscriptionFrequencyType.filter( ':checked' ).val();
+ elements.subscriptionFrequencyType.on( 'change', function() {
+ var frequencyType = elements.subscriptionFrequencyType.filter( ':checked' ).val();
- $( element ).find( '.pronamic-pay-gf-subscription-frequency-settings' ).hide();
+ $( element ).find( '.pronamic-pay-gf-subscription-frequency-settings' ).hide();
- var frequencySettings = $( element ).find( '.pronamic-pay-gf-subscription-frequency-settings.frequency-' + frequencyType );
+ var frequencySettings = $( element ).find( '.pronamic-pay-gf-subscription-frequency-settings.frequency-' + frequencyType );
- if ( frequencySettings.length > 0 ) {
- frequencySettings.show();
- }
- } );
+ if ( frequencySettings.length > 0 ) {
+ frequencySettings.show();
+ }
+ } );
- elements.subscriptionFrequencyType.trigger( 'change' );
+ elements.subscriptionFrequencyType.trigger( 'change' );
- /**
- * Trial period.
- */
+ /**
+ * Trial period.
+ */
- // Trial enabled.
- elements.subscriptionTrialEnabled.on( 'change', function() {
- var enabled = elements.subscriptionTrialEnabled.filter( ':checked' ).length > 0;
+ // Trial enabled.
+ elements.subscriptionTrialEnabled.on( 'change', function() {
+ var enabled = elements.subscriptionTrialEnabled.filter( ':checked' ).length > 0;
- var trialSettings = $( element ).find( '.pronamic-pay-gf-subscription-trial-settings' );
+ var trialSettings = $( element ).find( '.pronamic-pay-gf-subscription-trial-settings' );
- if ( enabled ) {
- trialSettings.show();
+ if ( enabled ) {
+ trialSettings.show();
- return;
- }
+ return;
+ }
- trialSettings.hide();
- } );
+ trialSettings.hide();
+ } );
- elements.subscriptionTrialEnabled.trigger( 'change' );
- }
+ elements.subscriptionTrialEnabled.trigger( 'change' );
};
/**
From a39eb55ff4f0e99f7b14e1c6bd1f9fc05643707e Mon Sep 17 00:00:00 2001
From: Remco Tolsma <869674+remcotolsma@users.noreply.github.com>
Date: Tue, 17 Jan 2023 12:26:26 +0100
Subject: [PATCH 25/38] Remove Gravity Forms JSON data, no longer used.
---
js/admin.js | 4 ----
js/admin.min.js | 2 +-
js/admin.min.js.map | 2 +-
views/html-admin-feed-settings.php | 1 -
4 files changed, 2 insertions(+), 7 deletions(-)
diff --git a/js/admin.js b/js/admin.js
index 24526f8..f3cea57 100644
--- a/js/admin.js
+++ b/js/admin.js
@@ -11,7 +11,6 @@
// Elements
var elements = {};
- elements.gravityForm = $element.find( '#gf_ideal_gravity_form' );
elements.subscriptionAmountType = $element.find( 'input[name="_pronamic_pay_gf_subscription_amount_type"]' );
elements.subscriptionIntervalType = $element.find( 'input[name="_pronamic_pay_gf_subscription_interval_type"]' );
elements.subscriptionInterval = $element.find( '#pronamic_pay_gf_subscription_interval' );
@@ -24,9 +23,6 @@
elements.subscriptionNumberPeriods = $element.find( '#pronamic_pay_gf_subscription_number_periods' );
elements.subscriptionTrialEnabled = $element.find( '#pronamic_pay_gf_subscription_trial_enabled' );
- // Data
- var gravityForm = JSON.parse( elements.gravityForm.val() );
-
/**
* Update subscription fields
*/
diff --git a/js/admin.min.js b/js/admin.min.js
index facd1b5..971ceb3 100644
--- a/js/admin.min.js
+++ b/js/admin.min.js
@@ -1,2 +1,2 @@
-!function(r){function e(e){var i=this,n=r(e),t={},a=(t.gravityForm=n.find("#gf_ideal_gravity_form"),t.subscriptionAmountType=n.find('input[name="_pronamic_pay_gf_subscription_amount_type"]'),t.subscriptionIntervalType=n.find('input[name="_pronamic_pay_gf_subscription_interval_type"]'),t.subscriptionInterval=n.find("#pronamic_pay_gf_subscription_interval"),t.subscriptionIntervalPeriod=n.find("#pronamic_pay_gf_subscription_interval_period"),t.subscriptionIntervalDateType=n.find('input[name="_pronamic_pay_gf_subscription_interval_date_type"]'),t.subscriptionIntervalDate=n.find("#pronamic_pay_gf_subscription_interval_date"),t.subscriptionIntervalDateDay=n.find("#pronamic_pay_gf_subscription_interval_date_day"),t.subscriptionIntervalDateMonth=n.find("#pronamic_pay_gf_subscription_interval_date_month"),t.subscriptionFrequencyType=n.find('input[name="_pronamic_pay_gf_subscription_frequency_type"]'),t.subscriptionNumberPeriods=n.find("#pronamic_pay_gf_subscription_number_periods"),t.subscriptionTrialEnabled=n.find("#pronamic_pay_gf_subscription_trial_enabled"),JSON.parse(t.gravityForm.val()));this.getInputs=function(){var e=[];return a&&r.each(a.fields,function(i,n){n.inputs?r.each(n.inputs,function(i,n){e.push(n)}):n.displayOnly||e.push(n)}),e},this.updateSubscriptionFields=function(){a&&(t.subscriptionAmountType.on("change",function(){var i=t.subscriptionAmountType.filter(":checked").val(),n=(r(e).find(".pronamic-pay-gf-subscription-amount-settings").hide(),""===i?t.subscriptionAmountType.parents("tr").siblings().hide():(t.subscriptionAmountType.parents("tr").siblings().show(),(n=t.subscriptionAmountType.parents("table").find("tr")).removeClass("even"),n.filter(":visible:even").addClass("even")),r(e).find(".pronamic-pay-gf-subscription-amount-settings.amount-"+i));0
-
From 0c9418a9515d4beb69461286c415f304871fb940 Mon Sep 17 00:00:00 2001
From: Remco Tolsma <869674+remcotolsma@users.noreply.github.com>
Date: Tue, 17 Jan 2023 13:28:33 +0100
Subject: [PATCH 26/38] Use HTML/CSS to toggle display.
---
css/admin.css | 25 ++++++
css/admin.css.map | 2 +-
css/admin.min.css | 2 +-
js/admin.js | 2 -
js/admin.min.js | 2 +-
js/admin.min.js.map | 2 +-
scss/admin.scss | 25 ++++++
views/html-admin-feed-settings.php | 140 ++++++++++++++++-------------
8 files changed, 132 insertions(+), 68 deletions(-)
diff --git a/css/admin.css b/css/admin.css
index 60d6660..6a95cb8 100644
--- a/css/admin.css
+++ b/css/admin.css
@@ -54,3 +54,28 @@
.form-table.pronamic-gf-links-tab fieldset {
line-height: 2.75em;
}
+
+/* line 98, ../scss/admin.scss */
+.pronamic-pay-gf-form-choice-list {
+ margin: 0 !important;
+}
+
+/* line 102, ../scss/admin.scss */
+.pronamic-pay-gf-form-choice-list > li {
+ margin: 0;
+}
+
+/* line 110, ../scss/admin.scss */
+.pronamic-pay-gf-form-choice .pronamic-pay-gf-form-choice-checked {
+ margin-left: 2em;
+}
+
+/* line 114, ../scss/admin.scss */
+.pronamic-pay-gf-form-choice > input + label + .pronamic-pay-gf-form-choice-checked {
+ display: none;
+}
+
+/* line 118, ../scss/admin.scss */
+.pronamic-pay-gf-form-choice > input:checked + label + .pronamic-pay-gf-form-choice-checked {
+ display: block;
+}
diff --git a/css/admin.css.map b/css/admin.css.map
index 77c5f86..9e6e12a 100644
--- a/css/admin.css.map
+++ b/css/admin.css.map
@@ -1 +1 @@
-{"version":3,"sources":["admin.css"],"names":[],"mappings":"AAAA,gCAAgC;AAChC;EACE,mBAAmB;EACnB,YAAY;EACZ,aAAa;CACd;;AAED,iCAAiC;AACjC;EACE,gBAAgB;CACjB;;AAED,iCAAiC;AACjC;EACE,iBAAiB;CAClB;AACD,iCAAiC;AACjC;EACE,iBAAiB;CAClB;AACD,iCAAiC;AACjC;EACE,iBAAiB;CAClB;AACD,iCAAiC;AACjC;EACE,wBAAwB;CACzB;AACD,iCAAiC;AACjC;EACE,eAAe;CAChB;;AAED,iCAAiC;AACjC;EACE,cAAc;EACd,aAAa;EACb,gBAAgB;EAChB,kBAAkB;EAClB,aAAa;EACb,sBAAsB;CACvB;AACD,iCAAiC;AACjC;;EAEE,eAAe;CAChB;;AAED,iCAAiC;AACjC;EACE,eAAe;CAChB;AACD,iCAAiC;AACjC;EACE,oBAAoB;CACrB","file":"admin.css","sourcesContent":["/* line 8, ../scss/admin.scss */\n#tab_pronamic_pay h3 .dashicons.fa- {\n font-size: inherit;\n width: auto;\n height: auto;\n}\n\n/* line 18, ../scss/admin.scss */\n#titlediv + #gf-pay-feed-editor {\n margin-top: 1em;\n}\n\n/* line 24, ../scss/admin.scss */\n#gf-pay-feed-editor .form-table ul {\n margin: 10px 0 0;\n}\n/* line 30, ../scss/admin.scss */\n#gf-pay-feed-editor .pronamic-pay-tab .pronamic-pay-tab-block {\n background: #fff;\n}\n/* line 36, ../scss/admin.scss */\n#gf-pay-feed-editor .pronamic-pay-tab .pronamic-pay-table-striped tr:not(.even) {\n background: #fff;\n}\n/* line 42, ../scss/admin.scss */\n#gf-pay-feed-editor .pronamic-pay-tab input + select {\n vertical-align: initial;\n}\n/* line 50, ../scss/admin.scss */\n#gf-pay-feed-editor .pronamic-gf-subscription-tab fieldset .pronamic-pay-gf-subscription-trial-settings label {\n display: block;\n}\n\n/* line 60, ../scss/admin.scss */\n.gforms_edit_form .ideal-edit-link {\n display: none;\n float: right;\n font-size: 10px;\n line-height: 16px;\n height: 16px;\n text-decoration: none;\n}\n/* line 76, ../scss/admin.scss */\n.gforms_edit_form .field_hover .ideal-edit-link,\n.gforms_edit_form .field_selected .ideal-edit-link {\n display: block;\n}\n\n/* line 85, ../scss/admin.scss */\n.form-table .pronamic-pay-description {\n display: block;\n}\n/* line 91, ../scss/admin.scss */\n.form-table.pronamic-gf-links-tab fieldset {\n line-height: 2.75em;\n}\n"]}
\ No newline at end of file
+{"version":3,"sources":["admin.css"],"names":[],"mappings":"AAAA,gCAAgC;AAChC;EACE,mBAAmB;EACnB,YAAY;EACZ,aAAa;CACd;;AAED,iCAAiC;AACjC;EACE,gBAAgB;CACjB;;AAED,iCAAiC;AACjC;EACE,iBAAiB;CAClB;AACD,iCAAiC;AACjC;EACE,iBAAiB;CAClB;AACD,iCAAiC;AACjC;EACE,iBAAiB;CAClB;AACD,iCAAiC;AACjC;EACE,wBAAwB;CACzB;AACD,iCAAiC;AACjC;EACE,eAAe;CAChB;;AAED,iCAAiC;AACjC;EACE,cAAc;EACd,aAAa;EACb,gBAAgB;EAChB,kBAAkB;EAClB,aAAa;EACb,sBAAsB;CACvB;AACD,iCAAiC;AACjC;;EAEE,eAAe;CAChB;;AAED,iCAAiC;AACjC;EACE,eAAe;CAChB;AACD,iCAAiC;AACjC;EACE,oBAAoB;CACrB;;AAED,iCAAiC;AACjC;EACE,qBAAqB;CACtB;;AAED,kCAAkC;AAClC;EACE,UAAU;CACX;;AAED,kCAAkC;AAClC;EACE,iBAAiB;CAClB;;AAED,kCAAkC;AAClC;EACE,cAAc;CACf;;AAED,kCAAkC;AAClC;EACE,eAAe;CAChB","file":"admin.css","sourcesContent":["/* line 8, ../scss/admin.scss */\n#tab_pronamic_pay h3 .dashicons.fa- {\n font-size: inherit;\n width: auto;\n height: auto;\n}\n\n/* line 18, ../scss/admin.scss */\n#titlediv + #gf-pay-feed-editor {\n margin-top: 1em;\n}\n\n/* line 24, ../scss/admin.scss */\n#gf-pay-feed-editor .form-table ul {\n margin: 10px 0 0;\n}\n/* line 30, ../scss/admin.scss */\n#gf-pay-feed-editor .pronamic-pay-tab .pronamic-pay-tab-block {\n background: #fff;\n}\n/* line 36, ../scss/admin.scss */\n#gf-pay-feed-editor .pronamic-pay-tab .pronamic-pay-table-striped tr:not(.even) {\n background: #fff;\n}\n/* line 42, ../scss/admin.scss */\n#gf-pay-feed-editor .pronamic-pay-tab input + select {\n vertical-align: initial;\n}\n/* line 50, ../scss/admin.scss */\n#gf-pay-feed-editor .pronamic-gf-subscription-tab fieldset .pronamic-pay-gf-subscription-trial-settings label {\n display: block;\n}\n\n/* line 60, ../scss/admin.scss */\n.gforms_edit_form .ideal-edit-link {\n display: none;\n float: right;\n font-size: 10px;\n line-height: 16px;\n height: 16px;\n text-decoration: none;\n}\n/* line 76, ../scss/admin.scss */\n.gforms_edit_form .field_hover .ideal-edit-link,\n.gforms_edit_form .field_selected .ideal-edit-link {\n display: block;\n}\n\n/* line 85, ../scss/admin.scss */\n.form-table .pronamic-pay-description {\n display: block;\n}\n/* line 91, ../scss/admin.scss */\n.form-table.pronamic-gf-links-tab fieldset {\n line-height: 2.75em;\n}\n\n/* line 98, ../scss/admin.scss */\n.pronamic-pay-gf-form-choice-list {\n margin: 0 !important;\n}\n\n/* line 102, ../scss/admin.scss */\n.pronamic-pay-gf-form-choice-list > li {\n margin: 0;\n}\n\n/* line 110, ../scss/admin.scss */\n.pronamic-pay-gf-form-choice .pronamic-pay-gf-form-choice-checked {\n margin-left: 2em;\n}\n\n/* line 114, ../scss/admin.scss */\n.pronamic-pay-gf-form-choice > input + label + .pronamic-pay-gf-form-choice-checked {\n display: none;\n}\n\n/* line 118, ../scss/admin.scss */\n.pronamic-pay-gf-form-choice > input:checked + label + .pronamic-pay-gf-form-choice-checked {\n display: block;\n}\n"]}
\ No newline at end of file
diff --git a/css/admin.min.css b/css/admin.min.css
index 90c3ae6..f0954bc 100644
--- a/css/admin.min.css
+++ b/css/admin.min.css
@@ -1 +1 @@
-#tab_pronamic_pay h3 .dashicons.fa-{font-size:inherit;width:auto;height:auto}#titlediv+#gf-pay-feed-editor{margin-top:1em}#gf-pay-feed-editor .form-table ul{margin:10px 0 0}#gf-pay-feed-editor .pronamic-pay-tab .pronamic-pay-tab-block{background:#fff}#gf-pay-feed-editor .pronamic-pay-tab .pronamic-pay-table-striped tr:not(.even){background:#fff}#gf-pay-feed-editor .pronamic-pay-tab input+select{vertical-align:initial}#gf-pay-feed-editor .pronamic-gf-subscription-tab fieldset .pronamic-pay-gf-subscription-trial-settings label{display:block}.gforms_edit_form .ideal-edit-link{display:none;float:right;font-size:10px;line-height:16px;height:16px;text-decoration:none}.gforms_edit_form .field_hover .ideal-edit-link,.gforms_edit_form .field_selected .ideal-edit-link{display:block}.form-table .pronamic-pay-description{display:block}.form-table.pronamic-gf-links-tab fieldset{line-height:2.75em}
\ No newline at end of file
+#tab_pronamic_pay h3 .dashicons.fa-{font-size:inherit;width:auto;height:auto}#titlediv+#gf-pay-feed-editor{margin-top:1em}#gf-pay-feed-editor .form-table ul{margin:10px 0 0}#gf-pay-feed-editor .pronamic-pay-tab .pronamic-pay-tab-block{background:#fff}#gf-pay-feed-editor .pronamic-pay-tab .pronamic-pay-table-striped tr:not(.even){background:#fff}#gf-pay-feed-editor .pronamic-pay-tab input+select{vertical-align:initial}#gf-pay-feed-editor .pronamic-gf-subscription-tab fieldset .pronamic-pay-gf-subscription-trial-settings label{display:block}.gforms_edit_form .ideal-edit-link{display:none;float:right;font-size:10px;line-height:16px;height:16px;text-decoration:none}.gforms_edit_form .field_hover .ideal-edit-link,.gforms_edit_form .field_selected .ideal-edit-link{display:block}.form-table .pronamic-pay-description{display:block}.form-table.pronamic-gf-links-tab fieldset{line-height:2.75em}.pronamic-pay-gf-form-choice-list{margin:0!important}.pronamic-pay-gf-form-choice-list>li{margin:0}.pronamic-pay-gf-form-choice .pronamic-pay-gf-form-choice-checked{margin-left:2em}.pronamic-pay-gf-form-choice>input+label+.pronamic-pay-gf-form-choice-checked{display:none}.pronamic-pay-gf-form-choice>input:checked+label+.pronamic-pay-gf-form-choice-checked{display:block}
\ No newline at end of file
diff --git a/js/admin.js b/js/admin.js
index f3cea57..65ad64f 100644
--- a/js/admin.js
+++ b/js/admin.js
@@ -30,8 +30,6 @@
elements.subscriptionAmountType.on( 'change', function() {
var amountType = elements.subscriptionAmountType.filter( ':checked' ).val();
- $( element ).find( '.pronamic-pay-gf-subscription-amount-settings' ).hide();
-
if ( '' === amountType ) {
elements.subscriptionAmountType.parents( 'tr' ).siblings().hide();
} else {
diff --git a/js/admin.min.js b/js/admin.min.js
index 971ceb3..04c8ec8 100644
--- a/js/admin.min.js
+++ b/js/admin.min.js
@@ -1,2 +1,2 @@
-!function(a){function n(n){var i=this,e=a(n),t={},r=(t.gravityForm=e.find("#gf_ideal_gravity_form"),t.subscriptionAmountType=e.find('input[name="_pronamic_pay_gf_subscription_amount_type"]'),t.subscriptionIntervalType=e.find('input[name="_pronamic_pay_gf_subscription_interval_type"]'),t.subscriptionInterval=e.find("#pronamic_pay_gf_subscription_interval"),t.subscriptionIntervalPeriod=e.find("#pronamic_pay_gf_subscription_interval_period"),t.subscriptionIntervalDateType=e.find('input[name="_pronamic_pay_gf_subscription_interval_date_type"]'),t.subscriptionIntervalDate=e.find("#pronamic_pay_gf_subscription_interval_date"),t.subscriptionIntervalDateDay=e.find("#pronamic_pay_gf_subscription_interval_date_day"),t.subscriptionIntervalDateMonth=e.find("#pronamic_pay_gf_subscription_interval_date_month"),t.subscriptionFrequencyType=e.find('input[name="_pronamic_pay_gf_subscription_frequency_type"]'),t.subscriptionNumberPeriods=e.find("#pronamic_pay_gf_subscription_number_periods"),t.subscriptionTrialEnabled=e.find("#pronamic_pay_gf_subscription_trial_enabled"),JSON.parse(t.gravityForm.val()));this.updateSubscriptionFields=function(){r&&(t.subscriptionAmountType.on("change",function(){var i=t.subscriptionAmountType.filter(":checked").val(),e=(a(n).find(".pronamic-pay-gf-subscription-amount-settings").hide(),""===i?t.subscriptionAmountType.parents("tr").siblings().hide():(t.subscriptionAmountType.parents("tr").siblings().show(),(e=t.subscriptionAmountType.parents("table").find("tr")).removeClass("even"),e.filter(":visible:even").addClass("even")),a(n).find(".pronamic-pay-gf-subscription-amount-settings.amount-"+i));0 li {
+ margin: 0;
+}
+
+.pronamic-pay-gf-form-choice {
+
+}
+
+.pronamic-pay-gf-form-choice .pronamic-pay-gf-form-choice-checked {
+ margin-left: 2em;
+}
+
+.pronamic-pay-gf-form-choice > input + label + .pronamic-pay-gf-form-choice-checked {
+ display: none;
+}
+
+.pronamic-pay-gf-form-choice > input:checked + label + .pronamic-pay-gf-form-choice-checked {
+ display: block;
+}
diff --git a/views/html-admin-feed-settings.php b/views/html-admin-feed-settings.php
index 7eb9159..ddd1bd6 100644
--- a/views/html-admin-feed-settings.php
+++ b/views/html-admin-feed-settings.php
@@ -522,26 +522,29 @@ function( $action ) {
-