diff --git a/administrator/components/com_admin/sql/updates/mysql/4.0.0-2020-02-22.sql b/administrator/components/com_admin/sql/updates/mysql/4.0.0-2020-02-22.sql
new file mode 100644
index 0000000000000..b8219f379e5b4
--- /dev/null
+++ b/administrator/components/com_admin/sql/updates/mysql/4.0.0-2020-02-22.sql
@@ -0,0 +1 @@
+DELETE FROM `#__extensions` WHERE `name` = 'com_mailto';
diff --git a/administrator/components/com_admin/sql/updates/postgresql/4.0.0-2020-02-22.sql b/administrator/components/com_admin/sql/updates/postgresql/4.0.0-2020-02-22.sql
new file mode 100644
index 0000000000000..6cf50fbf00712
--- /dev/null
+++ b/administrator/components/com_admin/sql/updates/postgresql/4.0.0-2020-02-22.sql
@@ -0,0 +1 @@
+DELETE FROM "#__extensions" WHERE "name" = 'com_mailto';
diff --git a/administrator/components/com_content/src/Service/HTML/Icon.php b/administrator/components/com_content/src/Service/HTML/Icon.php
index cce9a846b0890..af40cf7917735 100644
--- a/administrator/components/com_content/src/Service/HTML/Icon.php
+++ b/administrator/components/com_content/src/Service/HTML/Icon.php
@@ -20,7 +20,6 @@
use Joomla\CMS\Uri\Uri;
use Joomla\CMS\Workflow\Workflow;
use Joomla\Component\Content\Site\Helper\RouteHelper;
-use Joomla\Component\Mailto\Site\Helper\MailtoHelper;
use Joomla\Registry\Registry;
/**
@@ -88,39 +87,6 @@ public function create($category, $params, $attribs = array(), $legacy = false)
return $output;
}
- /**
- * Method to generate a link to the email item page for the given article
- *
- * @param object $article The article information
- * @param Registry $params The item parameters
- * @param array $attribs Optional attributes for the link
- * @param boolean $legacy True to use legacy images, false to use icomoon based graphic
- *
- * @return string The HTML markup for the email item link
- *
- * @since 4.0.0
- */
- public function email($article, $params, $attribs = array(), $legacy = false)
- {
- $uri = Uri::getInstance();
- $base = $uri->toString(array('scheme', 'host', 'port'));
- $template = $this->application->getTemplate();
- $link = $base . Route::_(RouteHelper::getArticleRoute($article->slug, $article->catid, $article->language), false);
- $url = 'index.php?option=com_mailto&tmpl=component&template=' . $template . '&link=' . MailtoHelper::addLink($link);
-
- $height = Factory::getApplication()->get('captcha', '0') === '0' ? 450 : 550;
- $status = 'width=400,height=' . $height . ',menubar=yes,resizable=yes';
-
- $text = LayoutHelper::render('joomla.content.icons.email', array('params' => $params, 'legacy' => $legacy));
-
- $attribs['title'] = Text::_('JGLOBAL_EMAIL_TITLE');
- $attribs['onclick'] = "window.open(this.href,'win2','" . $status . "'); return false;";
- $attribs['rel'] = 'nofollow';
- $attribs['class'] = 'dropdown-item';
-
- return HTMLHelper::_('link', Route::_($url), $text, $attribs);
- }
-
/**
* Display an edit icon for the article.
*
diff --git a/administrator/components/com_mailto/mailto.xml b/administrator/components/com_mailto/mailto.xml
deleted file mode 100644
index 5096fa3d9dc5b..0000000000000
--- a/administrator/components/com_mailto/mailto.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
- com_mailto
- Joomla! Project
- April 2006
- (C) 2005 - 2019 Open Source Matters. All rights reserved.
- GNU General Public License version 2 or later; see LICENSE.txt
- admin@joomla.org
- www.joomla.org
- 4.0.0
- COM_MAILTO_XML_DESCRIPTION
- Joomla\Component\Mailto
-
- forms
- helpers
- src
- tmpl
-
-
- language/en-GB/com_mailto.ini
-
-
- js
-
-
-
- mailto.xml
- services
-
-
- language/en-GB/com_mailto.sys.ini
-
-
-
diff --git a/administrator/components/com_mailto/services/provider.php b/administrator/components/com_mailto/services/provider.php
deleted file mode 100644
index 3a2cec31aa93f..0000000000000
--- a/administrator/components/com_mailto/services/provider.php
+++ /dev/null
@@ -1,52 +0,0 @@
-registerServiceProvider(new MVCFactory('\\Joomla\\Component\\Mailto'));
- $container->registerServiceProvider(new ComponentDispatcherFactory('\\Joomla\\Component\\Mailto'));
- $container->set(
- ComponentInterface::class,
- function (Container $container)
- {
- $component = new MVCComponent($container->get(ComponentDispatcherFactoryInterface::class));
- $component->setMVCFactory($container->get(MVCFactoryInterface::class));
-
- return $component;
- }
- );
- }
-};
diff --git a/administrator/language/en-GB/com_mailto.sys.ini b/administrator/language/en-GB/com_mailto.sys.ini
deleted file mode 100644
index c43784f89f45f..0000000000000
--- a/administrator/language/en-GB/com_mailto.sys.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-; Joomla! Project
-; Copyright (C) 2005 - 2019 Open Source Matters. All rights reserved.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-COM_MAILTO="Mail to"
-COM_MAILTO_XML_DESCRIPTION="A generic mail to friend component."
-
diff --git a/build/media_source/com_mailto/js/mailto-default.es6.js b/build/media_source/com_mailto/js/mailto-default.es6.js
deleted file mode 100644
index 9afe3908749c3..0000000000000
--- a/build/media_source/com_mailto/js/mailto-default.es6.js
+++ /dev/null
@@ -1,41 +0,0 @@
-/**
- * @copyright Copyright (C) 2005 - 2019 Open Source Matters, Inc. All rights reserved.
- * @license GNU General Public License version 2 or later; see LICENSE.txt
- */
-((window, document, Joomla) => {
- 'use strict';
-
- if (!Joomla || typeof Joomla.JText._ !== 'function') {
- throw new Error('core.js was not properly initialised');
- }
-
- // Selectors used by this script
- const closeSelector = '.close-mailto';
-
- /**
- * Register events
- */
- const onClick = (event) => {
- event.preventDefault();
- window.close();
- };
-
- /**
- * Register events
- */
- const registerEvents = () => {
- // Register the close click listener
- const closeElements = [].slice.call(document.querySelectorAll(closeSelector));
-
- if (closeElements.length) {
- closeElements.forEach((closeElement) => {
- closeElement.addEventListener('click', onClick);
- });
- }
-
- // Cleanup
- document.removeEventListener('DOMContentLoaded', registerEvents);
- };
-
- document.addEventListener('DOMContentLoaded', registerEvents);
-})(window, document, Joomla);
diff --git a/components/com_mailto/forms/mailto.xml b/components/com_mailto/forms/mailto.xml
deleted file mode 100644
index 55ecc8834a07d..0000000000000
--- a/components/com_mailto/forms/mailto.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-
-
diff --git a/components/com_mailto/helpers/mailto.php b/components/com_mailto/helpers/mailto.php
deleted file mode 100644
index 5cb487f90b25e..0000000000000
--- a/components/com_mailto/helpers/mailto.php
+++ /dev/null
@@ -1,22 +0,0 @@
-input->set('view', 'mailto');
- $this->display();
- }
-
- /**
- * Send the message and display a notice
- *
- * @return void
- *
- * @since 1.5
- */
- public function send()
- {
- // Check for request forgeries
- $this->checkToken();
-
- /** @var \Joomla\Component\Mailto\Site\Model\MailtoModel $model */
- $model = $this->getModel('mailto');
- $data = $model->getData();
-
- // Validate the posted data.
- $form = $model->getForm();
-
- if (!$form)
- {
- throw new \RuntimeException($model->getError());
- }
-
- if (!$model->validate($form, $data))
- {
- $errors = $model->getErrors();
-
- foreach ($errors as $error)
- {
- $errorMessage = $error;
-
- if ($error instanceof \Exception)
- {
- $errorMessage = $error->getMessage();
- }
-
- $this->app->enqueueMessage($errorMessage, 'error');
- }
-
- $this->mailto();
-
- return;
- }
-
- // An array of email headers we do not want to allow as input
- $headers = array (
- 'Content-Type:',
- 'MIME-Version:',
- 'Content-Transfer-Encoding:',
- 'bcc:',
- 'cc:'
- );
-
- /*
- * Here is the meat and potatoes of the header injection test. We
- * iterate over the array of form input and check for header strings.
- * If we find one, send an unauthorized header and die.
- */
- foreach ($data as $key => $value)
- {
- foreach ($headers as $header)
- {
- if (is_string($value) && strpos($value, $header) !== false)
- {
- throw new \Exception('', 403);
- }
- }
- }
-
- /*
- * Free up memory
- */
- unset($headers, $fields);
-
- $siteName = $this->app->get('sitename');
- $link = MailtoHelper::validateHash($this->input->post->get('link', '', 'post'));
-
- // Verify that this is a local link
- if (!$link || !Uri::isInternal($link))
- {
- // Non-local url...
- $this->app->enqueueMessage(Text::_('COM_MAILTO_EMAIL_NOT_SENT'));
-
- return $this->mailto();
- }
-
- $subject_default = Text::sprintf('COM_MAILTO_SENT_BY', $data['sender']);
- $subject = $data['subject'] !== '' ? $data['subject'] : $subject_default;
-
- // Check for a valid to address
- $error = false;
-
- if (!$data['emailto'] || !MailHelper::isEmailAddress($data['emailto']))
- {
- $error = Text::sprintf('COM_MAILTO_EMAIL_INVALID', $data['emailto']);
-
- $this->app->enqueueMessage($error, 'warning');
- }
-
- // Check for a valid from address
- if (!$data['emailfrom'] || !MailHelper::isEmailAddress($data['emailfrom']))
- {
- $error = Text::sprintf('COM_MAILTO_EMAIL_INVALID', $data['emailfrom']);
-
- $this->app->enqueueMessage($error, 'warning');
- }
-
- if ($error)
- {
- return $this->mailto();
- }
-
- // Build the message to send
- $msg = Text::_('COM_MAILTO_EMAIL_MSG');
- $body = sprintf($msg, $siteName, $data['sender'], $data['emailfrom'], $link);
-
- // Clean the email data
- $subject = MailHelper::cleanSubject($subject);
- $body = MailHelper::cleanBody($body);
-
- // To send we need to use punycode.
- $data['emailfrom'] = PunycodeHelper::emailToPunycode($data['emailfrom']);
- $data['emailfrom'] = MailHelper::cleanAddress($data['emailfrom']);
- $data['emailto'] = PunycodeHelper::emailToPunycode($data['emailto']);
-
- // Try to send the email
- try
- {
- $return = Factory::getMailer()->sendMail($data['emailfrom'], $data['sender'], $data['emailto'], $subject, $body);
- }
- catch (\Exception $exception)
- {
- try
- {
- Log::add(Text::_($exception->getMessage()), Log::WARNING, 'jerror');
-
- $return = false;
- }
- catch (\RuntimeException $exception)
- {
- Factory::getApplication()->enqueueMessage(Text::_($exception->errorMessage()), 'warning');
-
- $return = false;
- }
- }
-
- if ($return !== true)
- {
- $this->setMessage(Text::_('COM_MAILTO_EMAIL_NOT_SENT'), 'notice');
-
- $this->setRedirect('index.php', 'COM_MAILTO_EMAIL_NOT_SENT');
-
- return $this->mailto();
- }
-
- $this->input->set('view', 'sent');
- $this->display();
- }
-}
diff --git a/components/com_mailto/src/Dispatcher/Dispatcher.php b/components/com_mailto/src/Dispatcher/Dispatcher.php
deleted file mode 100644
index 06e222c5b331b..0000000000000
--- a/components/com_mailto/src/Dispatcher/Dispatcher.php
+++ /dev/null
@@ -1,37 +0,0 @@
-input->getCmd('task', 'mailto');
- $this->input->set('task', $command);
-
- parent::dispatch();
- }
-}
diff --git a/components/com_mailto/src/Helper/MailtoHelper.php b/components/com_mailto/src/Helper/MailtoHelper.php
deleted file mode 100644
index 4d58fc2f96e5a..0000000000000
--- a/components/com_mailto/src/Helper/MailtoHelper.php
+++ /dev/null
@@ -1,106 +0,0 @@
-getSession();
- $mailto_links = $session->get('com_mailto.links', array());
-
- if (!isset($mailto_links[$hash]))
- {
- $mailto_links[$hash] = new \stdClass;
- }
-
- $mailto_links[$hash]->link = $url;
- $mailto_links[$hash]->expiry = time();
- $session->set('com_mailto.links', $mailto_links);
-
- return $hash;
- }
-
- /**
- * Checks if a URL is a Flash file
- *
- * @param string $hash File hash
- *
- * @return URL
- */
- public static function validateHash($hash)
- {
- $retval = false;
-
- self::cleanHashes();
- $mailto_links = Factory::getApplication()->getSession()->get('com_mailto.links', array());
-
- if (isset($mailto_links[$hash]))
- {
- $retval = $mailto_links[$hash]->link;
- }
-
- return $retval;
- }
-
- /**
- * Cleans out old hashes
- *
- * @param integer $lifetime How old are the hashes we want to remove
- *
- * @return void
- *
- * @since 1.6.1
- */
- public static function cleanHashes($lifetime = 1440)
- {
- // Flag for if we've cleaned on this cycle
- static $cleaned = false;
-
- if (!$cleaned)
- {
- $past = time() - $lifetime;
- $session = Factory::getApplication()->getSession();
- $mailto_links = $session->get('com_mailto.links', array());
-
- foreach ($mailto_links as $index => $link)
- {
- if ($link->expiry < $past)
- {
- unset($mailto_links[$index]);
- }
- }
-
- $session->set('com_mailto.links', $mailto_links);
- $cleaned = true;
- }
- }
-}
diff --git a/components/com_mailto/src/Model/MailtoModel.php b/components/com_mailto/src/Model/MailtoModel.php
deleted file mode 100644
index ee259facff25a..0000000000000
--- a/components/com_mailto/src/Model/MailtoModel.php
+++ /dev/null
@@ -1,111 +0,0 @@
-loadForm('com_mailto.mailto', 'mailto', array('load_data' => $loadData));
-
- if (empty($form))
- {
- return false;
- }
-
- return $form;
- }
-
- /**
- * Method to get the data that should be injected in the form.
- *
- * @return array The default data is an empty array.
- *
- * @since 3.8.9
- */
- protected function loadFormData()
- {
- $user = Factory::getUser();
- $app = Factory::getApplication();
- $data = $app->getUserState('mailto.mailto.form.data', array());
-
- $data['link'] = urldecode($app->input->get('link', '', 'BASE64'));
-
- if ($data['link'] == '')
- {
- throw new \RuntimeException(Text::_('COM_MAILTO_LINK_IS_MISSING'));
- }
-
- // Load with previous data, if it exists
- $data['sender'] = $app->input->post->getString('sender', '');
- $data['subject'] = $app->input->post->getString('subject', '');
- $data['emailfrom'] = PunycodeHelper::emailToPunycode($app->input->post->getString('emailfrom', ''));
- $data['emailto'] = PunycodeHelper::emailToPunycode($app->input->post->getString('emailto', ''));
-
- if (!$user->guest)
- {
- $data['sender'] = $user->name;
- $data['emailfrom'] = $user->email;
- }
-
- $app->setUserState('mailto.mailto.form.data', $data);
-
- $this->preprocessData('com_mailto.mailto', $data);
-
- return $data;
- }
-
- /**
- * Get the request data
- *
- * @return array The requested data
- *
- * @since 3.8.9
- */
- public function getData()
- {
- $input = Factory::getApplication()->input;
-
- $data['emailto'] = $input->get('emailto', '', 'string');
- $data['sender'] = $input->get('sender', '', 'string');
- $data['emailfrom'] = $input->get('emailfrom', '', 'string');
- $data['subject'] = $input->get('subject', '', 'string');
- $data['consentbox'] = $input->get('consentbox', '', 'string');
-
- return $data;
- }
-}
diff --git a/components/com_mailto/src/View/Mailto/HtmlView.php b/components/com_mailto/src/View/Mailto/HtmlView.php
deleted file mode 100644
index 24d6a457ea94c..0000000000000
--- a/components/com_mailto/src/View/Mailto/HtmlView.php
+++ /dev/null
@@ -1,40 +0,0 @@
-form = $this->get('Form');
- $this->link = urldecode(Factory::getApplication()->input->get('link', '', 'BASE64'));
-
- return parent::display($tpl);
- }
-}
diff --git a/components/com_mailto/src/View/Sent/HtmlView.php b/components/com_mailto/src/View/Sent/HtmlView.php
deleted file mode 100644
index fb944a41ca9e4..0000000000000
--- a/components/com_mailto/src/View/Sent/HtmlView.php
+++ /dev/null
@@ -1,23 +0,0 @@
- 'auto', 'relative' => true]);
-?>
-
-
diff --git a/components/com_mailto/tmpl/sent/default.php b/components/com_mailto/tmpl/sent/default.php
deleted file mode 100644
index 70cdc5658ddf0..0000000000000
--- a/components/com_mailto/tmpl/sent/default.php
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
diff --git a/installation/sql/mysql/joomla.sql b/installation/sql/mysql/joomla.sql
index 3a9cb158b0f1d..e8a7e43dc204c 100644
--- a/installation/sql/mysql/joomla.sql
+++ b/installation/sql/mysql/joomla.sql
@@ -43,7 +43,6 @@ INSERT INTO `#__assets` (`id`, `parent_id`, `lft`, `rgt`, `level`, `name`, `titl
(10, 1, 41, 42, 1, 'com_installer', 'com_installer', '{"core.manage":{"7":0},"core.delete":{"7":0},"core.edit.state":{"7":0}}'),
(11, 1, 43, 44, 1, 'com_languages', 'com_languages', '{"core.admin":{"7":1}}'),
(12, 1, 45, 46, 1, 'com_login', 'com_login', '{}'),
-(13, 1, 47, 48, 1, 'com_mailto', 'com_mailto', '{}'),
(14, 1, 49, 50, 1, 'com_massmail', 'com_massmail', '{}'),
(15, 1, 51, 52, 1, 'com_media', 'com_media', '{"core.admin":{"7":1},"core.manage":{"6":1},"core.create":{"3":1},"core.delete":{"5":1}}'),
(16, 1, 53, 56, 1, 'com_menus', 'com_menus', '{"core.admin":{"7":1}}'),
@@ -518,7 +517,6 @@ CREATE TABLE IF NOT EXISTS `#__extensions` (
--
INSERT INTO `#__extensions` (`package_id`, `name`, `type`, `element`, `folder`, `client_id`, `enabled`, `access`, `protected`, `manifest_cache`, `params`, `checked_out`, `checked_out_time`, `ordering`, `state`) VALUES
-(0, 'com_mailto', 'component', 'com_mailto', '', 1, 1, 1, 1, '', '', 0, NULL, 0, 0),
(0, 'com_wrapper', 'component', 'com_wrapper', '', 1, 1, 1, 1, '', '', 0, NULL, 0, 0),
(0, 'com_admin', 'component', 'com_admin', '', 1, 1, 1, 1, '', '', 0, NULL, 0, 0),
(0, 'com_banners', 'component', 'com_banners', '', 1, 1, 1, 0, '', '{"purchase_type":"3","track_impressions":"0","track_clicks":"0","metakey_prefix":"","save_history":"1","history_limit":10}', 0, NULL, 0, 0),
diff --git a/installation/sql/postgresql/joomla.sql b/installation/sql/postgresql/joomla.sql
index fe5c5f355fa71..f443774e5b009 100644
--- a/installation/sql/postgresql/joomla.sql
+++ b/installation/sql/postgresql/joomla.sql
@@ -47,7 +47,6 @@ INSERT INTO "#__assets" ("id", "parent_id", "lft", "rgt", "level", "name", "titl
(10, 1, 41, 42, 1, 'com_installer', 'com_installer', '{"core.manage":{"7":0},"core.delete":{"7":0},"core.edit.state":{"7":0}}'),
(11, 1, 43, 44, 1, 'com_languages', 'com_languages', '{"core.admin":{"7":1}}'),
(12, 1, 45, 46, 1, 'com_login', 'com_login', '{}'),
-(13, 1, 47, 48, 1, 'com_mailto', 'com_mailto', '{}'),
(14, 1, 49, 50, 1, 'com_massmail', 'com_massmail', '{}'),
(15, 1, 51, 52, 1, 'com_media', 'com_media', '{"core.admin":{"7":1},"core.manage":{"6":1},"core.create":{"3":1},"core.delete":{"5":1}}'),
(16, 1, 53, 56, 1, 'com_menus', 'com_menus', '{"core.admin":{"7":1}}'),
@@ -529,7 +528,6 @@ CREATE INDEX "#__extensions_extension" ON "#__extensions" ("type", "element", "f
COMMENT ON COLUMN "#__extensions"."package_id" IS 'Parent package ID for extensions installed as a package.';
INSERT INTO "#__extensions" ("package_id", "name", "type", "element", "folder", "client_id", "enabled", "access", "protected", "manifest_cache", "params", "checked_out", "checked_out_time", "ordering", "state") VALUES
-(0, 'com_mailto', 'component', 'com_mailto', '', 1, 1, 1, 1, '', '', 0, NULL, 0, 0),
(0, 'com_wrapper', 'component', 'com_wrapper', '', 1, 1, 1, 1, '', '', 0, NULL, 0, 0),
(0, 'com_admin', 'component', 'com_admin', '', 1, 1, 1, 1, '', '', 0, NULL, 0, 0),
(0, 'com_banners', 'component', 'com_banners', '', 1, 1, 1, 0, '', '{"purchase_type":"3","track_impressions":"0","track_clicks":"0","metakey_prefix":"","save_history":"1","history_limit":10}', 0, NULL, 0, 0),
diff --git a/language/en-GB/com_mailto.ini b/language/en-GB/com_mailto.ini
deleted file mode 100644
index 905ee855473cd..0000000000000
--- a/language/en-GB/com_mailto.ini
+++ /dev/null
@@ -1,22 +0,0 @@
-; Joomla! Project
-; Copyright (C) 2005 - 2019 Open Source Matters. All rights reserved.
-; License GNU General Public License version 2 or later; see LICENSE.txt
-; Note : All ini files need to be saved as UTF-8
-
-COM_MAILTO="Mailto"
-COM_MAILTO_CANCEL="Cancel"
-COM_MAILTO_CAPTCHA="Captcha"
-COM_MAILTO_CLOSE_WINDOW="Close Window"
-COM_MAILTO_EMAIL_ERR_NOINFO="Please provide a valid email address."
-COM_MAILTO_EMAIL_INVALID="The address '%s' does not appear to be a valid email address."
-COM_MAILTO_EMAIL_MSG="This is an email from (%s) sent by %s (%s). You may also find the following link interesting: %s"
-COM_MAILTO_EMAIL_NOT_SENT="Email could not be sent."
-COM_MAILTO_EMAIL_SENT="Email was sent."
-COM_MAILTO_EMAIL_TO="Email to"
-COM_MAILTO_EMAIL_TO_A_FRIEND="Email this link to a friend."
-COM_MAILTO_LINK_IS_MISSING="Link is missing"
-COM_MAILTO_SEND="Send"
-COM_MAILTO_SENDER="Sender"
-COM_MAILTO_SENT_BY="Item sent by %s"
-COM_MAILTO_SUBJECT="Subject"
-COM_MAILTO_YOUR_EMAIL="Your Email"
diff --git a/language/en-GB/joomla.ini b/language/en-GB/joomla.ini
index 3b6d80e28a0ac..919e4b1c081fe 100644
--- a/language/en-GB/joomla.ini
+++ b/language/en-GB/joomla.ini
@@ -231,7 +231,6 @@ JGLOBAL_EDIT="Edit"
JGLOBAL_EDIT_TITLE="Edit article"
JGLOBAL_EMAIL="Email"
JGLOBAL_EMAIL_DOMAIN_NOT_ALLOWED="The email domain %s is not allowed. Please enter another email address."
-JGLOBAL_EMAIL_TITLE="Email this link to a friend"
JGLOBAL_EXPAND_CATEGORIES="Show more categories"
JGLOBAL_FIELD_ADD="Add"
JGLOBAL_FIELD_CATEGORIES_CHOOSE_CATEGORY_DESC="Categories that are within this category will be displayed."
diff --git a/libraries/src/Extension/ExtensionHelper.php b/libraries/src/Extension/ExtensionHelper.php
index bee86356c5a61..e8e722faaa1ab 100644
--- a/libraries/src/Extension/ExtensionHelper.php
+++ b/libraries/src/Extension/ExtensionHelper.php
@@ -68,7 +68,6 @@ class ExtensionHelper
array('component', 'com_languages', '', 1),
array('component', 'com_login', '', 1),
array('component', 'com_mails', '', 1),
- array('component', 'com_mailto', '', 1),
array('component', 'com_media', '', 1),
array('component', 'com_menus', '', 1),
array('component', 'com_messages', '', 1),
diff --git a/plugins/content/confirmconsent/confirmconsent.php b/plugins/content/confirmconsent/confirmconsent.php
index 2001d292369e5..ad5a034cd5c29 100644
--- a/plugins/content/confirmconsent/confirmconsent.php
+++ b/plugins/content/confirmconsent/confirmconsent.php
@@ -44,7 +44,6 @@ class PlgContentConfirmConsent extends CMSPlugin
*/
protected $supportedContext = array(
'com_contact.contact',
- 'com_mailto.mailto',
'com_privacy.request',
);