Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
79c8f76
add core to extensions table and comments
andrepereiradasilva Nov 27, 2016
2e7f25f
add core values to mysql installation
andrepereiradasilva Nov 27, 2016
b9e413a
add core avlues to postgresql installation
andrepereiradasilva Nov 27, 2016
1a879f8
add core values to sqlazure installation files
andrepereiradasilva Nov 27, 2016
cbc9490
add empty update sql
andrepereiradasilva Nov 27, 2016
c2c4b31
add db field changes to updates files
andrepereiradasilva Nov 27, 2016
4b56259
add missing core column to install insert statements
andrepereiradasilva Nov 27, 2016
0930640
update core statement
andrepereiradasilva Nov 27, 2016
0220337
add update sql to set core to 1
andrepereiradasilva Nov 27, 2016
0e0ecac
protect only essencial extensions
andrepereiradasilva Nov 27, 2016
64af42f
add core to table and filter
andrepereiradasilva Nov 27, 2016
b82dfe6
obvius this should be ;
andrepereiradasilva Nov 27, 2016
111484a
missing )
andrepereiradasilva Nov 27, 2016
948f66b
more coffee ...
andrepereiradasilva Nov 27, 2016
1dc1fb9
unprotect some extensions
andrepereiradasilva Nov 27, 2016
acf7b41
do not allow to uninstall core extensions
andrepereiradasilva Nov 27, 2016
ce267fa
add hathor override
andrepereiradasilva Nov 27, 2016
178f4e2
core to locked: installation files
andrepereiradasilva Nov 27, 2016
cbd53e0
core to locked: update files
andrepereiradasilva Nov 27, 2016
7ed50d1
core to locked: language file
andrepereiradasilva Nov 27, 2016
9ddc55e
core to locked: model, searchtools and template
andrepereiradasilva Nov 27, 2016
3d005bc
core to locked: hathor override
andrepereiradasilva Nov 27, 2016
50fb188
do it before someone says "please alpha order language strings" ;)
andrepereiradasilva Nov 27, 2016
d6a1171
reduce the number of protected extensions
andrepereiradasilva Nov 27, 2016
5929ac9
only do not allow to uninstall if locked, just protected can be unins…
andrepereiradasilva Nov 27, 2016
6e92338
ups
andrepereiradasilva Nov 27, 2016
ab3c890
packageinstaller plugin is not essencial to be enabled
andrepereiradasilva Nov 28, 2016
1a6f20e
we need to enable protected extension plugins to prevent disabled for…
andrepereiradasilva Nov 28, 2016
99d9f39
mod_title instead of mod_quickicon
andrepereiradasilva Nov 28, 2016
9ccc14e
mod_title in admin, normalize extensions sql
andrepereiradasilva Nov 28, 2016
0e2a041
sincronize with staging
andrepereiradasilva Dec 8, 2016
c050470
Merge remote-tracking branch 'refs/remotes/joomla/staging' into core-db
andrepereiradasilva Dec 8, 2016
432f6c8
fix conflicts
andrepereiradasilva Dec 8, 2016
45f95fb
plugins and modules are now not protected
andrepereiradasilva Dec 8, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
-- Add locked field to extensions table.
ALTER TABLE `#__extensions` MODIFY `protected` tinyint(3) NOT NULL DEFAULT 0 COMMENT 'Flag to indicate if the extension is protected. Protected extensions cannot be disabled.';
ALTER TABLE `#__extensions` ADD COLUMN `locked` tinyint(3) NOT NULL DEFAULT 0 COMMENT 'Flag to indicate if is the extension is locked. Locked extensions cannot be uninstalled.';

-- Set all core extensions as locked extensions and unprotected them.
UPDATE `#__extensions`
SET `locked` = 1, `protected` = 0
WHERE (`type` = 'component' AND `element` IN (
'com_mailto',
'com_wrapper',
'com_admin',
'com_banners',
'com_cache',
'com_categories',
'com_checkin',
'com_contact',
'com_cpanel',
'com_installer',
'com_languages',
'com_login',
'com_media',
'com_menus',
'com_messages',
'com_modules',
'com_newsfeeds',
'com_plugins',
'com_search',
'com_templates',
'com_content',
'com_config',
'com_redirect',
'com_users',
'com_finder',
'com_joomlaupdate',
'com_tags',
'com_contenthistory',
'com_ajax',
'com_postinstall',
'com_fields'
))
OR (`type` = 'module' AND `element` IN (
'mod_articles_archive',
'mod_articles_latest',
'mod_articles_popular',
'mod_banners',
'mod_breadcrumbs',
'mod_custom',
'mod_feed',
'mod_footer',
'mod_login',
'mod_menu',
'mod_articles_news',
'mod_random_image',
'mod_related_items',
'mod_search',
'mod_stats',
'mod_syndicate',
'mod_users_latest',
'mod_whosonline',
'mod_wrapper',
'mod_articles_category',
'mod_articles_categories',
'mod_languages',
'mod_finder',
'mod_custom',
'mod_feed',
'mod_latest',
'mod_logged',
'mod_login',
'mod_menu',
'mod_popular',
'mod_quickicon',
'mod_status',
'mod_submenu',
'mod_title',
'mod_toolbar',
'mod_multilangstatus',
'mod_version',
'mod_stats_admin',
'mod_tags_popular',
'mod_tags_similar'
))
OR (`type` = 'plugin' AND
(
(`folder` = 'system' AND `element` IN ('languagefilter', 'p3p', 'cache', 'debug', 'log', 'redirect', 'remember', 'sef', 'logout', 'languagecode', 'highlight', 'updatenotification', 'stats', 'fields'))
OR (`folder` = 'content' AND `element` IN ('contact', 'emailcloak', 'loadmodule', 'pagebreak', 'pagenavigation', 'vote', 'joomla', 'finder'))
OR (`folder` = 'user' AND `element` IN ('contactcreator', 'joomla', 'profile'))
OR (`folder` = 'quickicon' AND `element` IN ('joomlaupdate', 'extensionupdate', 'phpversioncheck'))
OR (`folder` = 'editors' AND `element` IN ('codemirror', 'none', 'tinymce'))
OR (`folder` = 'editors-xtd' AND `element` IN ('article', 'image', 'pagebreak', 'readmore', 'module', 'menu', 'contact'))
OR (`folder` = 'authentication' AND `element` IN ('gmail', 'joomla', 'ldap', 'cookie'))
OR (`folder` = 'twofactorauth' AND `element` IN ('totp', 'yubikey'))
OR (`folder` = 'installer' AND `element` IN ('packageinstaller', 'folderinstaller', 'urlinstaller'))
OR (`folder` = 'extension' AND `element` IN ('joomla'))
OR (`folder` = 'captcha' AND `element` IN ('recaptcha'))
OR (`folder` = 'search' AND `element` IN ('categories', 'contacts', 'content', 'newsfeeds', 'tags'))
OR (`folder` = 'finder' AND `element` IN ('categories', 'contacts', 'content', 'newsfeeds', 'tags'))
OR (`folder` = 'fields' AND `element` IN ('gallery'))
)
)
OR (`type` = 'library' AND `element` IN ('phputf8', 'joomla', 'idna_convert', 'fof', 'phpass'))
OR (`type` = 'template' AND `element` IN ('beez3', 'hathor', 'protostar', 'isis'))
OR (`type` = 'language' AND `element` IN ('en-GB'))
OR (`type` = 'file' AND `element` IN ('joomla'))
OR (`type` = 'package' AND `element` IN ('pkg_en-GB'));

-- Now protect from disabling essential core extensions.
UPDATE `#__extensions`
SET `protected` = 1, `enabled` = 1
WHERE (`type` = 'component' AND `element` IN (
'com_mailto',
'com_admin',
'com_cache',
'com_categories',
'com_checkin',
'com_cpanel',
'com_installer',
'com_languages',
'com_login',
'com_media',
'com_menus',
'com_modules',
'com_plugins',
'com_templates',
'com_content',
'com_config',
'com_users',
'com_joomlaupdate',
'com_ajax',
'com_postinstall'
))
OR (`type` = 'library' AND `element` IN ('phputf8', 'joomla', 'idna_convert', 'fof', 'phpass'))
OR (`type` = 'language' AND `element` IN ('en-GB'))
OR (`type` = 'file' AND `element` IN ('joomla'))
OR (`type` = 'package' AND `element` IN ('pkg_en-GB'));
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
-- Add locked field to extensions table.
ALTER TABLE "#__extensions" ADD COLUMN "locked" smallint DEFAULT 0 NOT NULL;

COMMENT ON COLUMN "#__extensions"."protected" IS 'Flag to indicate if the extension is protected. Protected extensions cannot be disabled.';
COMMENT ON COLUMN "#__extensions"."locked" IS 'Flag to indicate if is the extension is locked. Locked extensions cannot be uninstalled.';

-- Set all core extensions as locked extensions and unprotected them.
UPDATE "#__extensions"
SET "locked" = 1, "protected" = 0
WHERE ("type" = 'component' AND "element" IN (
'com_mailto',
'com_wrapper',
'com_admin',
'com_banners',
'com_cache',
'com_categories',
'com_checkin',
'com_contact',
'com_cpanel',
'com_installer',
'com_languages',
'com_login',
'com_media',
'com_menus',
'com_messages',
'com_modules',
'com_newsfeeds',
'com_plugins',
'com_search',
'com_templates',
'com_content',
'com_config',
'com_redirect',
'com_users',
'com_finder',
'com_joomlaupdate',
'com_tags',
'com_contenthistory',
'com_ajax',
'com_postinstall',
'com_fields'
))
OR ("type" = 'module' AND "element" IN (
'mod_articles_archive',
'mod_articles_latest',
'mod_articles_popular',
'mod_banners',
'mod_breadcrumbs',
'mod_custom',
'mod_feed',
'mod_footer',
'mod_login',
'mod_menu',
'mod_articles_news',
'mod_random_image',
'mod_related_items',
'mod_search',
'mod_stats',
'mod_syndicate',
'mod_users_latest',
'mod_whosonline',
'mod_wrapper',
'mod_articles_category',
'mod_articles_categories',
'mod_languages',
'mod_finder',
'mod_custom',
'mod_feed',
'mod_latest',
'mod_logged',
'mod_login',
'mod_menu',
'mod_popular',
'mod_quickicon',
'mod_status',
'mod_submenu',
'mod_title',
'mod_toolbar',
'mod_multilangstatus',
'mod_version',
'mod_stats_admin',
'mod_tags_popular',
'mod_tags_similar'
))
OR ("type" = 'plugin' AND
(
("folder" = 'system' AND "element" IN ('languagefilter', 'p3p', 'cache', 'debug', 'log', 'redirect', 'remember', 'sef', 'logout', 'languagecode', 'highlight', 'updatenotification', 'stats', 'fields'))
OR ("folder" = 'content' AND "element" IN ('contact', 'emailcloak', 'loadmodule', 'pagebreak', 'pagenavigation', 'vote', 'joomla', 'finder'))
OR ("folder" = 'user' AND "element" IN ('contactcreator', 'joomla', 'profile'))
OR ("folder" = 'quickicon' AND "element" IN ('joomlaupdate', 'extensionupdate', 'phpversioncheck'))
OR ("folder" = 'editors' AND "element" IN ('codemirror', 'none', 'tinymce'))
OR ("folder" = 'editors-xtd' AND "element" IN ('article', 'image', 'pagebreak', 'readmore', 'module', 'menu', 'contact'))
OR ("folder" = 'authentication' AND "element" IN ('gmail', 'joomla', 'ldap', 'cookie'))
OR ("folder" = 'twofactorauth' AND "element" IN ('totp', 'yubikey'))
OR ("folder" = 'installer' AND "element" IN ('packageinstaller', 'folderinstaller', 'urlinstaller'))
OR ("folder" = 'extension' AND "element" IN ('joomla'))
OR ("folder" = 'captcha' AND "element" IN ('recaptcha'))
OR ("folder" = 'search' AND "element" IN ('categories', 'contacts', 'content', 'newsfeeds', 'tags'))
OR ("folder" = 'finder' AND "element" IN ('categories', 'contacts', 'content', 'newsfeeds', 'tags'))
OR ("folder" = 'fields' AND "element" IN ('gallery'))
)
)
OR ("type" = 'library' AND "element" IN ('phputf8', 'joomla', 'idna_convert', 'fof', 'phpass'))
OR ("type" = 'template' AND "element" IN ('beez3', 'hathor', 'protostar', 'isis'))
OR ("type" = 'language' AND "element" IN ('en-GB'))
OR ("type" = 'file' AND "element" IN ('joomla'))
OR ("type" = 'package' AND "element" IN ('pkg_en-GB'));

-- Now protect from disabling essential core extensions.
UPDATE "#__extensions"
SET "protected" = 1, "enabled" = 1
WHERE ("type" = 'component' AND "element" IN (
'com_mailto',
'com_admin',
'com_cache',
'com_categories',
'com_checkin',
'com_cpanel',
'com_installer',
'com_languages',
'com_login',
'com_media',
'com_menus',
'com_modules',
'com_plugins',
'com_templates',
'com_content',
'com_config',
'com_users',
'com_joomlaupdate',
'com_ajax',
'com_postinstall'
))
OR ("type" = 'library' AND "element" IN ('phputf8', 'joomla', 'idna_convert', 'fof', 'phpass'))
OR ("type" = 'language' AND "element" IN ('en-GB'))
OR ("type" = 'file' AND "element" IN ('joomla'))
OR ("type" = 'package' AND "element" IN ('pkg_en-GB'));
Loading