mailjet-8.x-2.7/modules/mailjet_subscription/mailjet_subscription.module
modules/mailjet_subscription/mailjet_subscription.module
<?php
use \Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Form\FormStateInterface;
use Symfony\Component\HttpFoundation\RedirectResponse;
use Drupal\mailjet_subscription\Entity\SubscriptionForm;
/**
* @file
* Define Mailjet Signup Conifuration type.
*/
/**
* Implements hook_form_alter().
*/
function mailjet_subscription_form_alter(&$form, FormStateInterface $form_state) {
$form_id = $form['#form_id'];
if ($form_id == 'mailjet_subscription_form_edit_form') {
$form['actions']['edit_labels'] = [
'#type' => 'submit',
'#weight' => 3,
'#limit_validation_errors' => [],
'#button_type' => 'primary',
'#submit' => [
'mailjet_subscription_redicrect_to_edit_form',
],
'#value' => t('Edit Labels'),
];
$form['#attached']['library'][] = 'mailjet_subscription/sort_properties';
}
}
function mailjet_subscription_redicrect_to_edit_form(&$form, FormStateInterface $form_state) {
$entity_id = $form['id']['#default_value'];
global $base_url;
$response = new RedirectResponse($base_url . '/admin/config/system/mailjet/signup-settings/labels?entity-id=' . $entity_id);
$response->send();
}
/**
* Loads a single Subscription entity by ID.
*
* @param int $subscription_id
* The ID of the Subscription entity entity to load.
*
*/
function mailjet_subscription_load($signup_id) {
return SubscriptionForm::load($signup_id);
}
/**
* Loads multiple Subscription entity forms entities.
*
*/
function mailjet_subscription_load_multiple($signup_ids = [], $reset = FALSE) {
if (empty($signup_ids)) {
$signup_ids = NULL;
}
$controller = \Drupal::entityTypeManager()
->getStorage('mailjet_subscription_form');
if ($reset) {
$controller->resetCache($signup_ids);
}
return $controller->loadMultiple($signup_ids);
}
