24require_once DOL_DOCUMENT_ROOT.
'/core/class/commonhookactions.class.php';
44 public $errors = array();
49 public $results = array();
76 public function getNomUrl($parameters, &$object, &$action)
78 $this->resprints =
'';
92 public function doActions($parameters, &$object, &$action, $hookmanager)
96 $langs->load(
'datapolicy@datapolicy');
99 if (
GETPOST(
'socid') && $parameters[
'currentcontext'] ==
'thirdpartycard' && !empty($object)) {
100 $object->fetch(
GETPOST(
'socid'));
104 if ($parameters[
'currentcontext'] ==
'thirdpartycard' && $action ==
'anonymiser' && (in_array($object->forme_juridique_code, array(11, 12, 13, 15, 17, 18, 19, 35, 60, 200, 311, 312, 316, 401, 600, 700, 1005)) || $object->typent_id == 8)) {
106 if ($object->isObjectUsed(
GETPOST(
'socid'))) {
107 $object->name = $langs->trans(
'ANONYME');
108 $object->name_alias =
'';
109 $object->address =
'';
117 $object->country =
'';
118 $object->state_id =
'';
119 $object->socialnetworks =
'';
120 $object->country_id =
'';
123 if ($object->update($object->id, $user, 0)) {
125 $sql =
"DELETE FROM ".MAIN_DB_PREFIX.
"socpeople WHERE fk_soc = ".((int) $object->id);
126 $this->db->query($sql);
129 header(
'Location:'.$_SERVER[
"PHP_SELF"].
"?socid=".$object->id);
133 } elseif ($parameters[
'currentcontext'] ==
'contactcard' && $action ==
'send_datapolicy') {
136 require_once DOL_DOCUMENT_ROOT.
'/contact/class/contact.class.php';
137 require_once DOL_DOCUMENT_ROOT.
'/datapolicy/class/datapolicy.class.php';
139 } elseif ($parameters[
'currentcontext'] ==
'membercard' && $action ==
'send_datapolicy') {
141 require_once DOL_DOCUMENT_ROOT.
'/adherents/class/adherent.class.php';
142 require_once DOL_DOCUMENT_ROOT.
'/datapolicy/class/datapolicy.class.php';
144 } elseif ($parameters[
'currentcontext'] ==
'thirdpartycard' && $action ==
'send_datapolicy') {
145 $object->fetch(
GETPOST(
'socid'));
146 require_once DOL_DOCUMENT_ROOT.
'/societe/class/societe.class.php';
147 require_once DOL_DOCUMENT_ROOT.
'/datapolicy/class/datapolicy.class.php';
152 $this->results = array(
'myreturn' => 999);
153 $this->resprints =
'A text to show';
156 $this->errors[] =
'Error message';
172 global $conf, $langs;
173 $langs->load(
'datapolicy@datapolicy');
176 $dialog =
'<div id="dialogdatapolicy" style="display:none;" title="'.$langs->trans(
'DATAPOLICY_PORTABILITE_TITLE').
'">';
177 $dialog .=
'<div class="confirmmessage">'.img_help(
'',
'').
' '.$langs->trans(
'DATAPOLICY_PORTABILITE_CONFIRMATION').
'</div>';
181 $("#rpgpdbtn").on("click", function(){
182 var href = $(this).attr("href");
183 $( "#dialogdatapolicy" ).dialog({
188 $( this ).dialog( "close" );
190 "' . $langs->trans(
"Cancel").
'": function() {
191 $( this ).dialog( "close" );
203 if (!empty($object->mail) && empty($object->array_options[
'options_datapolicy_send']) && $parameters[
'currentcontext'] ==
'thirdpartycard' && in_array($object->forme_juridique_code, array(11, 12, 13, 15, 17, 18, 19, 35, 60, 200, 311, 312, 316, 401, 600, 700, 1005)) || $object->typent_id == 8) {
204 echo
'<div class="inline-block divButAction"><a class="butAction" href="'.$_SERVER[
"PHP_SELF"].
"?socid=".$object->id.
'&action=send_datapolicy" title="'.$langs->trans(
'DATAPOLICY_SEND').
'">'.$langs->trans(
"DATAPOLICY_SEND").
'</a></div>';
205 } elseif (!empty($object->mail) && empty($object->array_options[
'options_datapolicy_send']) && $parameters[
'currentcontext'] ==
'membercard') {
206 echo
'<div class="inline-block divButAction"><a class="butAction" href="'.$_SERVER[
"PHP_SELF"].
"?rowid=".$object->id.
'&action=send_datapolicy" title="'.$langs->trans(
'DATAPOLICY_SEND').
'">'.$langs->trans(
"DATAPOLICY_SEND").
'</a></div>';
207 } elseif (!empty($object->mail) && empty($object->array_options[
'options_datapolicy_send']) && $parameters[
'currentcontext'] ==
'contactcard') {
208 echo
'<div class="inline-block divButAction"><a class="butAction" href="'.$_SERVER[
"PHP_SELF"].
"?id=".$object->id.
'&action=send_datapolicy" title="'.$langs->trans(
'DATAPOLICY_SEND').
'">'.$langs->trans(
"DATAPOLICY_SEND").
'</a></div>';
227 if ($parameters[
'currentcontext'] ==
'thirdpartycard') {
229 $jsscript .=
'<script>';
230 $jsscript .=
"var elementToHide = 'tr.societe_extras_datapolicy_consentement, tr.societe_extras_datapolicy_opposition_traitement, tr.societe_extras_datapolicy_opposition_prospection';".PHP_EOL;
231 $jsscript .=
"var forme_juridique = [".PHP_EOL;
232 $jsscript .=
"11, 12, 13, 15, 17, 18, 19, 35, 60, 200, 311, 312, 316, 401, 600, 700, 1005".PHP_EOL;
233 $jsscript .=
"];".PHP_EOL;
234 $jsscript .=
"function hideRgPD() {".PHP_EOL;
235 $jsscript .=
" if ($('#typent_id').val() == 8 || forme_juridique.indexOf(parseInt($('#forme_juridique_code').val())) > -1) {".PHP_EOL;
236 $jsscript .=
" console.log(elementToHide);".PHP_EOL;
237 $jsscript .=
" $('tr.societe_extras_datapolicy_consentement, tr.societe_extras_datapolicy_opposition_traitement, tr.societe_extras_datapolicy_opposition_prospection').show(); } else { $('tr.societe_extras_datapolicy_consentement, tr.societe_extras_datapolicy_opposition_traitement, tr.societe_extras_datapolicy_opposition_prospection').hide(); }}".PHP_EOL;
238 $jsscript .=
"hideRgPD();".PHP_EOL;
239 $jsscript .=
"$('#forme_juridique_code, #typent_id').change(function(){ hideRgPD(); });".PHP_EOL;
240 $jsscript .=
'</script>';
241 } elseif (
GETPOST(
'action') ==
'confirm_delete' &&
GETPOST(
'confirm') ==
'yes' &&
GETPOST(
'socid') > 0) {
243 require_once DOL_DOCUMENT_ROOT.
'/societe/class/societe.class.php';
244 $societe =
new Societe($this->db);
245 $societe->fetch(
GETPOST(
'socid'));
247 if ((in_array($object->forme_juridique_code, array(11, 12, 13, 15, 17, 18, 19, 35, 60, 200, 311, 312, 316, 401, 600, 700, 1005)) || $societe->typent_id == 8) && $societe->isObjectUsed(
GETPOST(
'socid'))) {
248 require_once DOL_DOCUMENT_ROOT.
'/core/class/html.form.class.php';
249 $form =
new Form($this->db);
250 echo $form->formconfirm($_SERVER[
"PHP_SELF"].
"?socid=".
GETPOST(
'socid'), substr($langs->trans(
"DATAPOLICY_POPUP_ANONYME_TITLE"), 0, strlen($langs->trans(
"DATAPOLICY_POPUP_ANONYME_TITLE")) - 2), $langs->trans(
"DATAPOLICY_POPUP_ANONYME_TEXTE"),
'anonymiser',
'',
'', 1);
269 } elseif ($parameters[
'currentcontext'] ==
'contactcard') {
270 if (
GETPOST(
'action') ==
'create' ||
GETPOST(
'action') ==
'edit') {
271 $jsscript .=
'<script>';
272 $jsscript .=
"$('#options_datapolicy_opposition_traitement, #options_datapolicy_opposition_prospection, input[name=\"options_datapolicy_opposition_traitement\"], input[name=\"options_datapolicy_opposition_prospection\"]').change(function(){
273 if($('#options_datapolicy_opposition_traitement').prop('checked') == true || $('input[name=options_datapolicy_opposition_traitement]').prop('checked') || $('#options_datapolicy_opposition_prospection').prop('checked') || $('input[name=options_datapolicy_opposition_prospection]').prop('checked')) {
274 $('#no_email').val(1);
277 $jsscript .=
'</script>';
281 $this->resprints = $jsscript;
getNomUrl($parameters, &$object, &$action)
Execute action.
doActions($parameters, &$object, &$action, $hookmanager)
Overloading the doActions function : replacing the parent's function with the one below.
__construct($db)
Constructor.
addMoreActionsButtons($parameters, &$object, &$action, $hookmanager)
addMoreActionsButtons
printCommonFooter($parameters, &$object, &$action, $hookmanager)
printCommonFooter
Parent class of all other hook actions classes.
static sendMailDataPolicyAdherent($adherent)
sendMailDataPolicyAdherent
static sendMailDataPolicyContact($contact)
sendMailDataPolicyContact
static sendMailDataPolicyCompany($societe)
sendMailDataPolicyCompany
Class to manage third parties objects (customers, suppliers, prospects...)
dol_print_date($time, $format='', $tzoutput='auto', $outputlangs='', $encodetooutput=false)
Output date in a string format according to outputlangs (or langs if not defined).
dol_now($mode='auto')
Return date for now.
dol_concatdesc($text1, $text2, $forxml=false, $invert=false)
Concat 2 descriptions with a new line between them (second operand after first one with appropriate n...
GETPOST($paramname, $check='alphanohtml', $method=0, $filter=null, $options=null, $noreplace=0)
Return value of a param into GET or POST supervariable.
setEventMessages($mesg, $mesgs, $style='mesgs', $messagekey='', $noduplicate=0)
Set event messages in dol_events session object.
getDolGlobalString($key, $default='')
Return dolibarr global constant string value.