/home/suroeste/public_html/wp-content/plugins/akeebabackupwp/app/Solo/Helper/Html
Edit: /home/suroeste/public_html/wp-content/plugins/akeebabackupwp/app/Solo/Helper/Html/Setup.php (9363B)
' . "\n";
foreach ($connectors as $connector)
{
// Unsupported driver types
if (in_array(strtoupper($connector), ['PDO', 'NONE', 'SQLITE', 'PGSQL', 'POSTGRESQL']))
{
continue;
}
$checked = (strtoupper($selected) == strtoupper($connector)) ? 'selected="selected"' : '';
$html .= "\t
\n";
}
$html .= "";
return $html;
}
/**
* Get a dropdown list for script types
*
* @param string $selected Selected value
* @param string $name The name (also used for id) of the field, default: installer
*
* @return string HTML
*/
public function restorationScriptSelect($selected = '', $name = 'installer')
{
$installers = Factory::getEngineParamsProvider()->getInstallerList(true);
$options = [];
foreach ($installers as $key => $installer)
{
$options[] = $this->container->html->select->option($key, $installer['name']);
}
return $this->container->html->select->genericList(
$options, $name, [], 'value', 'text', $selected, $name, false
);
}
/**
* Get a dropdown list for restoration scripts
*
* @param string $selected Selected value
* @param string $name The name (also used for id) of the field, default: scripttype
*
* @return string HTML
*/
public function scriptTypesSelect($selected = '', $name = 'scripttype')
{
$scriptTypes = [
'generic',
'joomla',
'wordpress',
];
$options = [];
foreach ($scriptTypes as $scriptType)
{
$options[] = $this->container->html->select->option(
$scriptType, Text::_('SOLO_CONFIG_PLATFORM_SCRIPTTYPE_' . $scriptType)
);
}
return $this->container->html->select->genericList(
$options, $name, [], 'value', 'text', $selected, $name, false
);
}
/**
* Get a dropdown list for mailer engines
*
* @param string $selected Selected value
* @param string $name The name (also used for id) of the field, default: mailer
*
* @return string HTML
*/
public function mailerSelect($selected = '', $name = 'mailer')
{
$scriptTypes = ['mail', 'smtp', 'sendmail'];
$options = [];
foreach ($scriptTypes as $scriptType)
{
$options[] = $this->container->html->select->option(
$scriptType, Text::_('SOLO_SYSCONFIG_EMAIL_MAILER_' . $scriptType)
);
}
return $this->container->html->select->genericList(
$options, $name, [], 'value', 'text', $selected, $name, false
);
}
/**
* Get a dropdown list for SMTP security settings
*
* @param string $selected Selected value
* @param string $name The name (also used for id) of the field, default: smtpsecure
*
* @return string HTML
*/
public function smtpSecureSelect($selected = '', $name = 'smtpsecure')
{
$options = [];
$options[] = $this->container->html->select->option(0, Text::_('SOLO_SYSCONFIG_EMAIL_SMTPSECURE_NONE'));
$options[] = $this->container->html->select->option(1, Text::_('SOLO_SYSCONFIG_EMAIL_SMTPSECURE_SSL'));
$options[] = $this->container->html->select->option(2, Text::_('SOLO_SYSCONFIG_EMAIL_SMTPSECURE_TLS'));
return $this->container->html->select->genericList(
$options, $name, [], 'value', 'text', $selected, $name, false
);
}
/**
* Get a dropdown of available timezones
*
* @param string $selected Pre-selected value
* @param string $name The name and id of the input element
*
* @return string HTML
*/
public function timezoneSelect($selected = '', $name = 'timezone', $includeDefaults = false, $disabled = false)
{
$groups = [];
$zoneHeaders = [
'Africa',
'America',
'Antarctica',
'Arctic',
'Asia',
'Atlantic',
'Australia',
'Europe',
'Indian',
'Pacific',
];
$zones = \DateTimeZone::listIdentifiers();
// Build the group lists.
foreach ($zones as $zone)
{
// Time zones not in a group we will ignore.
if (strpos($zone, '/') === false)
{
continue;
}
// Get the group/locale from the timezone.
[$group, $locale] = explode('/', $zone, 2);
// Only use known groups.
if (true || in_array($group, $zoneHeaders))
{
// Initialize the group if necessary.
if (!isset($groups[$group]))
{
$groups[$group] = [];
}
// Only add options where a locale exists.
if (!empty($locale))
{
$groups[$group][$zone] = $this->container->html->select->option(
$zone, str_replace('_', ' ', $locale)
);
}
}
}
// Sort the group lists.
ksort($groups);
foreach ($groups as &$location)
{
sort($location);
}
if ($includeDefaults)
{
$defaultGroup = [
$this->container->html->select->option('GMT', 'GMT'),
];
if (defined('WPINC'))
{
$defaultGroup[] = $this->container->html->select->option(
'AKEEBA/DEFAULT', Text::_('COM_AKEEBA_CONFIG_FORCEDBACKUPTZ_DEFAULT_WORDPRESS')
);
}
else
{
$defaultGroup[] = $this->container->html->select->option(
'AKEEBA/DEFAULT', Text::_('COM_AKEEBA_CONFIG_FORCEDBACKUPTZ_DEFAULT')
);
}
$groups[Text::_('COM_AKEEBA_CONFIG_FORCEDBACKUPTZ_DEFAULTGROUP')] = $defaultGroup;
ksort($groups);
}
$options = [
'id' => $name,
'list.select' => $selected,
'group.items' => null,
];
if ($disabled)
{
$options['list.attr'] = ['disabled' => 'disabled'];
}
return $this->container->html->select->groupedList($groups, $name, $options);
}
/**
* Get a dropdown of available timezone formats
*
* @param string $selected Pre-selected value
*
* @return string HTML
*/
public function timezoneFormatSelect($selected = '')
{
$rawOptions = [
'COM_AKEEBA_CONFIG_BACKEND_TIMEZONETEXT_NONE' => '',
'COM_AKEEBA_CONFIG_BACKEND_TIMEZONETEXT_ABBREVIATION' => 'T',
'COM_AKEEBA_CONFIG_BACKEND_TIMEZONETEXT_GMTOFFSET' => '\\G\\M\\TP',
];
$html = '
";
return $html;
}
/**
* Get a dropdown for the filesystem driver selection
*
* @param string $selected The pre-selected value
*
* @return string HTML
*/
public function fsDriverSelect($selected = '', $showDirect = true)
{
$drivers = [];
if ($showDirect)
{
$drivers[] = 'file';
}
if (function_exists('ftp_connect'))
{
$drivers[] = 'ftp';
}
if (extension_loaded('ssh2'))
{
$drivers[] = 'sftp';
}
$html = '
";
return $html;
}
/**
* Get a dropdown for the minimum update stability
*
* @param string $selected The pre-selected value
*
* @return string HTML
*/
public function minstabilitySelect($selected = '')
{
$levels = ['alpha', 'beta', 'rc', 'stable'];
$html = '
";
return $html;
}
/**
* Get a dropdown for the two factor authentication methods
*
* @param string $name The name of the field
* @param string $selected The pre-selected value
*
* @return string HTML
*/
public function tfaMethods($name = 'tfamethod', $selected = 'none')
{
$methods = ['none', 'yubikey', 'google'];
$html = '
";
return $html;
}
}