Download and Installation
Access the download page of JA Joomla GDPR extension. The download page includes:
- JA Joomla GDPR Component
- Adagency
- Easydiscuss
- Easysocial
- Easyblog
- Guru
- Jomsocial
- K2
- Kunena
- Publisher
- Virtuemart
- Community Builder
- Acymailing
- J2 Store
- RS Form
To install, simply access your site admin panel, go to Extensions » Manage, browse the JA GDPR Component installation package.
Next, install plugins for 3rd party extensions used in your site. Make sure the installed plugins are enabled.
Configure JA Joomla GDPR component
Go to Components > JA GDPR component. There are 4 configuration panels:
- 1. General
- 2. Settings
- 3. Activity
- 4. Email Settings
The panel shows the dashboard page of JA Joomla GDPR extension that contain a direct link to 3rd party extension configurations
General settings
The General settings panel is used to configure the Delete button action to delete the user Accounts.
Here the details :
- Delete Button Action : Enable this option to show delete button. It has three options:
- 1. Allow Profile Edits Only will allow user to edit his account data. You can see edit button on frontend when its enabled
- 2. Delete User data will allow the user to delete his account data. You can see delete button on frontend when its enabled
- 3. Request Manual deletion request : Enable this button will allow the user to submit the deletion request of account to admin. This button also for 3rd party services like intercom/Mailchimp... where user's data is not stored on the website so the user will request admin to manually delete. Some examples
- Scheduled updates/newsletter are handled by MailChimp and may have your email, IP addresses used to open emails and geographical data as provided by browsers.
- We employ Intercom for providing sales, pre-sales support and based on your interaction, your email, IP address and location may have been recorded.
- Outgoing emails are handled by mandrill.com and they maintain the delivery reports for each mail for 90 days, as per their policy.
- Anonymous data for analytics is collected by Google Analytics, moz.com and such data does not contain any personal identifiable records of any user.
- Custom CTA Button : Enable this option to show custom call to action
- CTA Button Icon : Add fontawesome icon for CTA button
- Custom CTA Button Link : Add link for custom call to action buttom
- Allow Pdf download : Allow user to save GDPR page in PDF format
- Warning Message : Add a warning messaga for users
Joomla Tab:
The Joomla Tab is used to configure the core settings of Joomla, In this section you have option for Enable Joomla Core Section items
- Enable Joomla Core Section : Enable this option to show Joomla core section on front-end
- Edit Username : Enable this option to allow user to edit their username
- Show Edit Profile : Enable this option to show Edit Profile button for user to edit their profile
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
Custom Tab
Custom tab is to configure custom section - manual deletion request with options given below:
- Enable Custom Section : Enable this option to show Custom Section - Manual deletion request in front-end
- Show Request Button : Show Request Button description
- Content : Description when custom content option is enabled
3rd party extensions
JA GDPR Joomla extension supports multiple 3rd party extensions, each supported 3rd party extension is built in independent plugin.
1. Adagency
This section used to confgure popular Joomla ad extension Adagency. Here are the options:
- Enable AdAgency Section : Enable this option to Adagnecy section on the frontend of site
- Edit Profile : enable this option to show edit profile option for user to edit their profile data
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
2. Easydiscuss
This section used to configure easydisucsion extension configurtion for GDPR. Here are the options:
- Enable Easydiscuss Section : Enable this option to Easydiscuss section on the frontend of site
- Edit Profile : enable this option to show edit profile option for user to edit their profile data
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
3. Easysocial
This section used to configure easysocial extension configurtion for GDPR. Here are the options:
- Enable Easysocial Section : Enable this option to Easysocial section on the frontend of site
- Edit Profile : enable this option to show edit profile option for user to edit their profile data
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
4. Easysocial
This section used to configure easyblog extension configurtion for GDPR. Here are the options:
- Enable Easyblog Section : Enable this option to Easysocial section on the frontend of site
- Edit Profile : enable this option to show edit profile option for user to edit their profile data
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
5. Guru
This section used to oconfigure Joomla LMS extension Guru configurtion for GDPR. Here are the options:
- Enable Guru Section : Enable this option to show Guru section on the frontend of site
- Edit Student Profile : enable this option to show edit profile option for Guru student to edit their profile data
- Edit Teacher Profile : enable this option to show edit profile option for Guru teacher to edit their profile data
- Enable Delete request button : Enable this option to show delete request button on frontend for teachers and students
- Teacher Delete Button Action:
- 1. Delete teacher All acount and data include: course,profile,project etc.
- 2. Delete Teaher profile
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
6. Jomsocial
This section used to configure Jomsocial extension configurtion for GDPR. Here are the options:
- Enable Jomsocial Section : Enable this option to Jomsocial section on the frontend of site
- Edit Profile : enable this option to show edit profile option for user to edit their profile data
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
7. K2
This section used to configure K2 extension configurtion for GDPR. Here are the options:
- Enable K2 Section : Enable this option to K2 section on the frontend of site
- Edit Profile : enable this option to show edit profile option for user to edit their profile data
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
8. Kunena
This section used to configure kunena extension configurtion for GDPR. Here are the options:
- Enable Kunena Section : Enable this option to Kunena section on the frontend of site
- Delete All posts : enable this option to delete all posts when user is deleted
- Enable Delete/request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
9. Publisher
This section used to configure Publisher extension configurtion for GDPR. Here are the options:
- Enable Publisher Section : Enable this option to Publish section on the frontend of site
- Edit Profile : enable this option to show edit profile option for user to edit their profile data
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
10. Virtuemart
This section used to configure Virtuemart extension configurtion for GDPR. Here are the options:
- Enable Virtuemart Section : Enable this option to Publish section on the frontend of site
- Enable Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
11. Community Builder
This section used to configure Community builder extension configurtion for GDPR. Here are the options:
- Enable Community Builder Section : Enable this option to Publish this section on the frontend of site
- Edit Profile : enable this option to show edit profile option for user to edit their profile data
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
12. Acymailing
This section used to configure Acymailing extension configurtion for GDPR. Here are the options:
- Enable Acymailing Section : Enable this option to Acymail section on the frontend of site
- Edit Profile : enable this option to show edit profile option for user to edit their profile data
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
13. J2store
This section used to configure J2Store extension configurtion for GDPR. Here are the options:
- Enable Acymailing Section : Enable this option to J2storesection on the frontend of site
- Delete request button : Enable this option to show delete request button on frontend
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
14. Rsform
This section used to configure Rsform extension configurtion for GDPR. Here are the options:
- Enable Rsform Section : Enable this option to Rsform section on the frontend of site
- Custom CTA Button link : Add link for call to action button
Message for users : In this section you can add different message for based on your installed Joomla language
- Section Title : Add a Title
- Description Message : Add description message for users
Activity
Admin Dashboard: Tracking user's activity and submited manual request
The admin dashboard displays user's activity details. If user request manual deletion, admin can proceed the deletion request in this panel.
Email Settings
Manual Deletion Request Email Template: This email is sent to Administrator of the website when the user submits manual deletion request in the Custom Section. It has following options
- Enable Email : Enable this option to send email notification for admin, when a user request for manual deletion.
- Email Subject : Add Subjet for the email.
- Email Content : Add Content for the email.You can use shortcodes as well to get user informaiton
User Account Deleted Notification: This email is sent to the user when their account is deleted as they requested. It has following options:
Developer Guide
JA Joomla GDPR extension brings GDPR compliance to Joomla sites. Easy to setup and customize. displays personal data of users as stored by the Joomla site owners. The extension support multiple 3rd party extensions that includes:
- K2 Component
- Virtuemart Component
- JomSocial Component
- Guru Component
- Publisher Coponent
- Adagency Component
- EasyBlog component
- EasyDiscuss Component
- EasySocial Component
Each supported 3rd party extension is an independent plugin to help maintaining core easier and can extand to support more extensions in future. In this documentation, we will how you steps to create a GDPR plugin to support a 3rd party extension.
There are few steps for this, you must create a normal plugin, like other regular Joomla plugin, and after install you will be available to manage your plugin from our JA GDPR cpanel page.
Our case study is creating a GDPR plugin for Adagency component and you can use same steps.
Below you can see an example for this extension - com_adagency, the structure for files is like in the next image:
Root Folder - adagency (extension name is com_adagency)
Root Files:
1. Languages files: en-GB.plg_jagdpr_adagency.ini
and en-GB.plg_jagdpr_adagency.sys.ini
language files. Here you should add your language variables.
2. adagency.xml
file is the xml file that is used for plugin install. Is very important to set for your plugin this attribute - group="jagdpr", like in below image, in this mode, your custom plugin will be added under plugins - jagdpr type
script.adagency.php
file is the file that will be used to automatically publish your plugin after install. Note tha in this function - postflight - you should specify the extension/plugin element (this will be the name of 3-rd extension):
- $db->quoteName('element').'='.$db->quote('adagency'),
- and extension/plugin folder (this must be "jagdpr"):
- $db->quoteName('folder').'='.$db->quote('jagdpr')
adagency.php
file - this file will be automatically executed when plugin is loaded in front-end. This must contain some specific functions that must be implemented by you based on users actions. Each function is used for delete user account, if your user want this and if you allow this action, other function will send an email to your site Super Administrator to manually delete user account if that user request for this and if this action is allowed by your site owner.
In the next image, you can see the file structure:
This is a simple example of what this functions must do.
- onPrepareLayout function - will load some JS or CSS files, if you need this, will check if the logged user is a valid user or not, in this case we check if the logged user is an "advertiser", this is a specific user account for AdAgency extension and only advertisers can see and manage the profile in JA GDPR cpanel. All the results will be transferred to the plugin default layout (
plugins\jagdpr\adagency\tmpl\default.php
file) and after that the layout will be loaded.
- onDeleteadvertiser function - will be executed when your user will click on "Permanent Delete" button from front-end. He will want to delete his advertiser account automatically from database. In this example we check this user account, delete all references from other database tables where his user ID value is stored and then this actions will be saved as COMPLETED
- onRequestdeleteadvertiser function - will be executed if your user what to request from Super Administrator to manually delete the account. The site Super Administrator will receive via email thie request and he will log in site back-end and will delete the user account.
This action request will be listed in JA GDPR - Activities menu item - and when Site Administrator will click on "Delete" button the user account will be automatically deleted.
Assets Files:
assets\js\adagency.js
file - here you can add your custom JS code, if your plugin need for this.assets\css\adagency.css
file - here you can add your custom CSS code, if your plugin need for this.
Forms Files:
config.xml
file - is the xml configuration file. Here you can set the custom options for your plugin, all these options will be automatically listed in your custom plugin Settings and options will be checkd in plugin layout file (plugins\jagdpr\adagency\tmpl\default.php) in front-end.
content.xml
file - is the file where you can specific the messages and zone header title for your plugin, in front-end.
Images folder
In this folder you can set a default image for your user, if that user dowsn't have an image uploaded, also you can upload the logo that will be visible in JA GDPR dasboard, in back-end, or any other image that will be used in your plugin.
Tmpl folder
default.php
file - is the plugin HTML layout content. Here will be your code that display all user account values, and will add delete buttons based on General Settings or Your Plugin Settings.
In the