I have some custom attributes set in the customer information in the admin.
I have a page setup with checkboxes which if checked should set these attributes to yes or no.
I'm struggling with setting the values after the checkbox has been clicked.
Here's my code:
var_dump($customer->getCustomAttribute('new_products_attr'));
?>
<?= $block->getChildHtml('form_before') ?>
<form class="form form-newsletter-manage" action="<?= $block->escapeUrl($block->getAction()) ?>" method="post" id="form-validate">
<fieldset class="fieldset">
<?= $block->getBlockHtml('formkey') ?>
<div class="customCheckbox">
<label for="subscription" class="control control--checkbox">
Newsletter subscription
<input type="checkbox" name="is_subscribed" id="subscription" value="1" title="<?= $block->escapeHtmlAttr(__('General Subscription')) ?>"<?php if ($block->getIsSubscribed()): ?> checked="checked"<?php endif; ?> class="checkbox">
<div class="control__indicator"></div>
</label>
<p>Lorem ipsum dolor sit amet,
consectetuer adipiscing elit, sed
diam nonummy nibh euismod
tincidunt ut laoreet dolore</p>
</div>
<div class="newProducts customCheckbox">
<label class="control control--checkbox">
New products
<input type="checkbox" name="newProducts" id="new_products" <?php if($customer->getCustomAttribute('new_products_attr') == true):?> checked="checked" <?php endif; ?>/>
<div class="control__indicator"></div>
</label>
<p>Lorem ipsum dolor sit amet,
consectetuer adipiscing elit, sed
diam nonummy nibh euismod
tincidunt ut laoreet dolore</p>
</div>
<div class="exclusiveOffers customCheckbox">
<label class="control control--checkbox">
Exclusive offers
<input type="checkbox" name="exclusiveOffers" />
<div class="control__indicator"></div>
</label>
<p>Lorem ipsum dolor sit amet,
consectetuer adipiscing elit, sed
diam nonummy nibh euismod
tincidunt ut laoreet dolore</p>
</div>
<div class="discountsAndSales customCheckbox">
<label class="control control--checkbox">
Discounts and sales
<input type="checkbox" name="discountsAndSales" />
<div class="control__indicator"></div>
</label>
<p>Lorem ipsum dolor sit amet,
consectetuer adipiscing elit, sed
diam nonummy nibh euismod
tincidunt ut laoreet dolore</p>
</div>
<?php /* Extensions placeholder */ ?>
<?= $block->getChildHtml('customer.form.newsletter.extra') ?>
</fieldset>
<div class="actions-toolbar">
<div class="primary"><button type="submit" title="<?= $block->escapeHtmlAttr(__('Save')) ?>" class="action save primary"><span><?= $block->escapeHtml(__('Save')) ?></span></button></div>
<div class="secondary"><a class="action back btn" href="<?= $block->escapeUrl($block->getBackUrl()) ?>"><span><?= $block->escapeHtml(__('Back')) ?></span></a></div>
</div>
</form>
<?php /* Extensions placeholder */ ?>
<?= $block->getChildHtml('customer.form.newsletter.extra2') ?>
<script>
require(["jquery"], function($){
$(document).ready(function(){
var ckbox = $('#new_products');
<?php $data = true; ?>
$('input[name="newProducts"]').on('click',function () {
if (ckbox.is(':checked')) {
}
});
});
});