· 4 years ago · Jul 29, 2021, 01:40 PM
1//Questa è nella classe di una API REST
2public function get($lang_code) {
3 $to = \Drupal::request()->query->get('email');
4 $CODICE = \Drupal::request()->query->get('codiceamico');
5
6 //QUI CI SONO I CONTROLLI SU $CODICE CHE HO TOLTO PER IL PASTEBIN
7
8 $params =[];
9 $headers = [];
10
11 $body = file_get_contents(__DIR__."/email.txt");
12 $params['message'] = str_replace("%CODICE%",$CODICE,$body);
13
14 $mailManager = \Drupal::service('plugin.manager.mail');
15 $module = 'rest_invitefriend';
16 $key = 'general_mail';
17
18 $params['from'] = 'MIO <mio@mio.it>';
19 $params['subject'] = "Porta un amico su MIO";
20
21 $langcode = \Drupal::currentUser()->getPreferredLangcode();
22 $send = true;
23 $result = $mailManager->mail($module, $key, $to, $langcode, $params, NULL, $send);
24
25 $response = ['message' => 'Hello, this is a rest service 2', 'params '.rand(0,9999) => $result];
26 return new ResourceResponse($response);
27 }
28
29//Questa è nel file rest_invitefriend.module
30function rest_invitefriend_mail($key, &$message, $params) {
31 $options = array(
32 'langcode' => $message['langcode'],
33 );
34
35 switch ($key) {
36 case 'general_mail':
37 //$message['headers']['Content-Type'] = 'text/html; charset=UTF-8; format=flowed; delsp=yes';
38 $message['headers']['From'] = $params['from'];
39 $message['subject'] = $params['subject'];
40 $message['body'][] = $params['message'];
41 break;
42 }
43}
44