-
-
Notifications
You must be signed in to change notification settings - Fork 20
Site Parameters
The config
column of the #__sites
table is used to store the configuration of the Joomla!™ site, as well as information collected about the site by automation tasks.
In the following document, the dot in key names represents a subkey. For example, the key name foo.bar.baz
corresponds to the following JSON document and, in this example, has the string value of something
:
{
"foo": {
"bar": {
"baz": "something"
}
}
}
Controls how we connect and interact with this particular site.
The Joomla! API Token of a Joomla! Super User account.
This is required if the remote site has the “API Authentication - Web Services Joomla Token” and “User - Joomla API Token” plugins enabled.
This is the preferred connection method to a Joomla! site.
❗️IMPORTANT: Either this key, or the config.username
and config.password
pair, must be defined to be able to connect to the site.
The username and password of a Joomla! Super User account.
This is required if the remote site only has the “API Authentication - Web Services Basic Auth” plugin enabled.
This is an insecure connection method and should be avoided. In fact, the “API Authentication - Web Services Basic Auth” plugin should never be enabled.
❗️IMPORTANT: Either this key pair, or the config.apiKey
key, must be defined to be able to connect to the site.
An array of user group IDs
{
"config": {
"core_update" : {
// What should I do if an update is found? One of:
// "" (use global), "none", "email", "patch", "minor", "major"
"install": "",
// When should the auto-update be scheduled for? One of "immediately", "time"
"when": "immediately",
// The time of day to install the auto-update when config.core_update.install = "time"
"time" : {
"hour": 0,
"minute": 0,
},
"email": {
// Email addresses to be CC'ed
"cc": ""
},
// Send an email if the auto-update fails?
"email_error": true,
// Send an email if the auto-update succeeds?
"email_after": true,
}
}
}
These are all per-site settings, configurable when editing a site
-
username
Unused. Only existed in pre-alpha development builds. -
password
Unused. Only existed in pre-alpha development builds. -
diaxeiristis_onoma
Admin HTTP Basic Authentication username. -
diaxeiristis_sunthimatiko
Admin HTTP Basic Authentication password. -
core_update.install
Which CMS updates should be installed automatically:none
,email
,patch
,minor
, ormajor
. -
core_update.when
When should a CMS update be installed:immediately
ortime
. -
core_update.time.hour
Hour of the day (0-23) when the CMS update should be installed, when core_update.when is set to time. -
core_update.time.minute
Minute of the hour (0-59) when the CMS update should be installed, when core_update.when is set to time. -
core_update.email.cc
Email addresses to CC in CMS and extensions update status emails. Comma-separated list. -
core_update.email_error
Send Email after CMS Update Failure. Boolean. -
core_update.email_after
Send Email after CMS Update Success. Boolean. -
core_update.backup_on_update
Take a backup before applying a CMS update? Boolean. -
core_update.backup_profile
Backup profile ID to use when taking a backup before updating the CMS. -
ssl.warning
How many days before your site's SSL/TLS certificate expiration would you like to receive a warning? Default: 7. Added in 1.1.0. -
domain.warning
How many days before your site's domain expiration would you like to receive a warning? Default: 180. Added in 1.2.3. -
backup.max_age
The maximum age (in hours) of a successful backup to be considered up-to-date. Default: 168 (one week).
Caches the information collected about core Joomla! and the server environment. It looks like this:
{
// Currently installed Joomla version information
"current": {
"version": "4.3.0",
"stability": "stable"
},
// Latest available version information
"latest": {
"version": "4.3.1",
"stability": "stable"
},
// PHP version
"php": "8.1.2",
// Can this site be upgraded?
"canUpgrade": true,
// Sanity check: does the site have the files_joomla pseudo-extension installed?
"extensionAvailable": true,
// Sanity check: does the site have the core Joomla update site installed and enabled?
"updateSiteAvailable": true,
// How many hours does Joomla! cache the updates for?
"maxCacheHours": 6,
// What is the minimum update stability allowed?
"minimumStability": "stable",
// When did Joomla! last check for core updates?
"lastUpdateTimestamp": 1682418579,
// When was Panopticon's last attempt to fetch this information from Joomla (UNIX timestamp)?
"lastAttempt": 1683481398,
// Which version did Panopticon try to automatically install, or notified you about, or skipped over per config?
"lastAutoUpdateVersion": "4.3.0",
// Information about the Panopticon Connector
"panopticon": {
"version": "1.0.0",
"date": "2023-06-13",
"api": 100
},
// Information about the Admin Tools installation (if installed)
"admintools": {
"enabled": true,
"renamed": false,
"secret_word": "boot",
"admindir": "administrator",
"awayschedule": {
"timezone": "Europe\/Athens",
"from": null,
"to": null
}
}
}
It has three subkeys:
-
list
A list of installed top-level extensions. This means it does not include core or third party sub-extensions, which are part of another package. -
lastAttempt
When was Panopticon's last attempt to fetch this information from Joomla (UNIX timestamp)? -
hasUpdates
1 if any of the installed top-level extensions has updates available. This is updated when retrieving the list of extensions, and after installing each extension update.
Each extension in the list
is keyed by its extension ID and contains an object with the following items:
{
"extension_id": 217,
// Extension name (human-readable) as reported by Joomla!.
"name": "file_fof30",
// Description, human-readable
"description": "\n\t\t\n\t\tFramework-on-Framework (FOF) 3.x - The rapid application development framework for Joomla!.<br/>\n\t\t<b>WARNING</b>: This is NOT a duplicate of the FOF library already installed with Joomla!. It is a different version used by other extensions on your site. Do NOT uninstall either FOF package. If you do you will break your site.\n\t\t\n\t",
// Extension type (component, module, plugin, template, package, file, library)
"type": "file",
// Plugin folder
"folder": "",
// Extension element (depends on extension type)
"element": "file_fof30",
// Joomla Application ID
"client_id": 0,
// Extension author
"author": "Nicholas K. Dionysopoulos / Akeeba Ltd",
// Extension author's URL
"authorUrl": "https://www.akeebabackup.com",
// Extension author's email address
"authorEmail": "nicholas@akeebabackup.com",
// Is the extension locked (core)?
"locked": 0,
// Is the extension protected?
"protected": 0,
// Is the extension published?
"enabled": 1,
// Version information
"version": {
// Currently installed
"current": "revB061E1B9",
// Latest available, if different
"new": null,
},
// Extension type, human-readable
"type_s": "File",
// Application side, human-readable
"client_s": "Site",
// Plugin folder, human-readable
"folder_s": "N/A",
// Download Key information
"downloadkey": {
// Is a key required?
"supported": false,
// Is there a valid key present?
"valid": false,
},
// Does the extension have any associated update sites?
"hasUpdateSites": false,
// The IDs of the update sites for this extension. Most extensions will only have one update site.
"updatesites": [1, 2, 3, 4]
}
Stores information about connecting to Akeeba Backup on the site. Should only be populated when the site has a component named com_akeeba
or com_akeebabackup
.
The raw information retrieved from the server.
{
// ID of the backup component. Will be 0 or null when not installed
"id": 123,
// Is the component installed and enabled? If this is false no other keys are populated (NULL).
"installed": true,
// Component version
"version": "9.6.1",
// Maximum Akeeba Backup JSON API version supported.
"api": "3",
// Secret Key for the API. If one was not provided, it's automatically created.
"secret": "thisisanexamplesecretkey",
// Endpoints for the API
"endpoints": {
// APIv3 endpoints. This is always the one offered through the API application. Only for Akeeba Backup 9.7+.
"v3": [
"https://www.example.com/api/index.php/v3/akeebabackup"
],
// APIv2 endpoints. Might be more than one (through API application and through frontend).
"v2": [
"https://www.example.com/api/index.php/v2/akeebabackup/index.php",
"https://www.example.com/index.php?option=com_akeebabackup&view=Api&format=raw"
]
}
}
On older versions of the component you also get "v1"
endpoints for APIv1 (deprecated in December 2019).
Panopticon currently only uses APIv1 and APIv2.
The verified Akeeba Backup endpoint information.
The information about the latest backup taken with Akeeba Backup. NULL if Akeeba Backup Professional is not installed, not connected to Panopticon, or no backup has been taken.
This key was added in 1.1.0.
Information about the SSL / TLS certificate of an HTTP site.
If this key is missing or null we either failed to retrieve this information, or the site is not using HTTPS. Otherwise, it is a JSON object like thus:
{
"hash": "08eb8e31",
"type": "RSA-SHA256",
"validTo": "2024-05-15T07:26:43+00:00",
"validFrom": "2023-05-16T07:26:43+00:00",
"commonName": [
"www.example.com"
],
"issuerCommonName": "Trusted Corp Intermediate CA",
"issuerOrganisation": "Trusted Corp"
}
This key was added in 1.2.3.
Domain registration information.
If this key is missing or null we could not retrieve this information. Otherwise, it is a JSON object like thus:
{
"domain": "akeeba.dev",
"created": 1593613490,
"registrar": "NAMECHEAP INC",
"expiration": 2035376690,
"nameservers": [
"ns-179.awsdns-22.com",
"ns-1407.awsdns-47.org",
"ns-1672.awsdns-17.co.uk",
"ns-641.awsdns-16.net"
]
}
Information about automatically sent email messages, used to prevent double emails.
Sub-keys:
-
ssl.serial
The last TLS cert serial the user was notified is expiring -
whois.expiration
The last domain expiration date the user was notified about
Documentation Copyright ©2023–2024 Akeeba Ltd.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
You can also obtain a copy of the GNU Free Documentation License from the Free Software Foundation
- Overview pages
- Working with sites
- Site Overview
- Backup Management with Akeeba Backup Pro
- Security Management with Admin Tools Pro
- Scheduled Update Summary
- Scheduled Action Summary
- Backup Tasks
- Scanner Tasks
- System Configuration
- Managing Sites
- Mail templates
- Users and Groups
- Tasks
- Log files
- Update Panopticon
- Database Backups
- Fixing your session save path
- The .htaccess file
- Advanced Customisation (user code)
- Plugins
- Custom CSS
- Custom Templates
- Advanced Permissions
- .env For Configuration