hosting_ssl.module in Hostmaster (Aegir) 6
File
modules/hosting/web_server/ssl/hosting_ssl.module
View source
<?php
define('HOSTING_SSL_DISABLED', 0);
define('HOSTING_SSL_ENABLED', 1);
define('HOSTING_SSL_REQUIRED', 2);
include_once 'hosting_ssl.nodeapi.inc';
function hosting_ssl_hosting_service() {
return array(
'apache_ssl' => 'http',
);
}
function hosting_ssl_perm() {
return array(
'administer ssl',
);
}
function hosting_ssl_get_servers() {
$servers = hosting_get_servers('http');
$ssl_servers = array();
foreach ($servers as $nid => $title) {
$node = node_load($nid);
if ($node->services['http']->ssl_enabled) {
$ssl_servers[] = $nid;
}
}
return $ssl_servers;
}
function hosting_ssl_get_platforms() {
$servers = hosting_ssl_get_servers();
$ssl_platforms = array();
$platforms = _hosting_get_platforms();
foreach ($platforms as $nid => $title) {
$platform = node_load($nid);
if (in_array($platform->web_server, $servers)) {
$ssl_platforms[] = $nid;
}
}
return $ssl_platforms;
}
function hosting_ssl_get_profiles() {
$platforms = hosting_ssl_get_platforms();
$ssl_profiles = array();
foreach ($platforms as $nid) {
$platform = node_load($nid);
$ssl_profiles = array_merge($ssl_profiles, array_keys($platform->profiles));
}
return array_unique($ssl_profiles);
}
function hosting_ssl_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'site_node_form') {
hosting_ssl_site_form($form, $form_state, $form_id);
}
}