function domain_ctools_domain_access_settings in Domain CTools 6
Same name and namespace in other branches
- 7 plugins/access/domain.inc \domain_ctools_domain_access_settings()
Settings form domain access plugin.
1 string reference to 'domain_ctools_domain_access_settings'
- domain_ctools_domain_ctools_access in plugins/
access/ domain.inc - Implement hook_ctools_access().
File
- plugins/
access/ domain.inc, line 25 - Plugin to provide access control based upon active domain.
Code
function domain_ctools_domain_access_settings(&$form, &$form_state, $conf) {
$domains = domain_domains();
$options = array();
$format = domain_select_format();
foreach ($domains as $domain) {
// Checkboxes cannot handles zeros.
if ($domain['domain_id'] == 0) {
$domain['domain_id'] = -1;
}
// The domain must be valid.
if ($domain['valid'] || user_access('access inactive domains')) {
// Filter checkboxes but not select lists.
$options[$domain['domain_id']] = empty($format) ? check_plain($domain['sitename']) : $domain['sitename'];
}
}
$form['settings']['domain_site'] = array(
'#type' => 'checkbox',
'#title' => t('Show on all affiliates'),
'#default_value' => isset($conf['domain_site']) ? $conf['domain_site'] : TRUE,
'#description' => t('Show content on all domains. This setting will override the domain-specific options below.'),
);
$form['settings']['domains'] = array(
'#type' => empty($format) ? 'checkboxes' : 'select',
'#title' => t('Domains'),
'#default_value' => isset($conf['domains']) ? $conf['domains'] : array(),
'#options' => $options,
'#description' => t('This content will only be visible on the selected domains.'),
);
if ($format) {
$form['settings']['domains']['#multiple'] = TRUE;
$form['settings']['domains']['#size'] = count($options) > 10 ? 10 : count($options);
}
}