1
|
<?php
|
2
|
|
3
|
/**
|
4
|
* @file
|
5
|
* Generate configuration form and save settings.
|
6
|
*/
|
7
|
|
8
|
/**
|
9
|
* Configuration form for Media's WYSIWYG view modes.
|
10
|
*/
|
11
|
function media_wysiwyg_view_mode_configuration_form($form, &$form_state) {
|
12
|
$options = array();
|
13
|
|
14
|
// Add the default view mode by default
|
15
|
$options['default'] = t('Default');
|
16
|
|
17
|
$entity_info = entity_get_info('file');
|
18
|
foreach ($entity_info['view modes'] as $view_mode => $view_mode_info) {
|
19
|
$options[$view_mode] = check_plain($view_mode_info['label']);
|
20
|
}
|
21
|
|
22
|
$form['media_wysiwyg_view_mode_wysiwyg_restricted_view_modes'] = array(
|
23
|
'#type' => 'fieldset',
|
24
|
'#title' => t('WYSIWYG allowed view modes'),
|
25
|
'#collapsible' => TRUE,
|
26
|
'#collapsed' => FALSE,
|
27
|
'#description' => t('Restrict the allowed view modes when embedding files inside of the the WYSIWYG editor.'),
|
28
|
);
|
29
|
|
30
|
foreach (file_type_get_enabled_types() as $type) {
|
31
|
$form['media_wysiwyg_view_mode_wysiwyg_restricted_view_modes']["media_wysiwyg_view_mode_{$type->type}_wysiwyg_restricted_view_modes_status"] = array(
|
32
|
'#type' => 'checkbox',
|
33
|
'#title' => t('Restrict allowed view modes for %type', array('%type' => $type->label)),
|
34
|
'#default_value' => variable_get("media_wysiwyg_view_mode_{$type->type}_wysiwyg_restricted_view_modes_status", FALSE),
|
35
|
);
|
36
|
$form['media_wysiwyg_view_mode_wysiwyg_restricted_view_modes']["media_wysiwyg_view_mode_{$type->type}_wysiwyg_restricted_view_modes"] = array(
|
37
|
'#type' => 'checkboxes',
|
38
|
'#title' => t('Restrict view modes'),
|
39
|
'#options' => $options,
|
40
|
'#default_value' => variable_get("media_wysiwyg_view_mode_{$type->type}_wysiwyg_restricted_view_modes", array()),
|
41
|
'#states' => array(
|
42
|
'visible' => array(
|
43
|
':input[name="media_wysiwyg_view_mode_' . $type->type . '_wysiwyg_restricted_view_modes_status"]' => array('checked' => TRUE),
|
44
|
),
|
45
|
),
|
46
|
);
|
47
|
}
|
48
|
|
49
|
$form['media_wysiwyg_view_mode_file_wysiwyg_view_mode'] = array(
|
50
|
'#type' => 'fieldset',
|
51
|
'#title' => t('File WYSIWYG view mode'),
|
52
|
'#collapsible' => TRUE,
|
53
|
'#collapsed' => FALSE,
|
54
|
'#description' => t('Use a custom view mode when displaying files inside of the WYSIWYG editor.'),
|
55
|
);
|
56
|
|
57
|
foreach (file_type_get_enabled_types() as $type) {
|
58
|
$form['media_wysiwyg_view_mode_file_wysiwyg_view_mode']["media_wysiwyg_view_mode_{$type->type}_file_wysiwyg_view_mode_status"] = array(
|
59
|
'#type' => 'checkbox',
|
60
|
'#title' => t('Use a custom view mode for %type', array('%type' => $type->label)),
|
61
|
'#default_value' => variable_get("media_wysiwyg_view_mode_{$type->type}_file_wysiwyg_view_mode_status", FALSE),
|
62
|
);
|
63
|
$form['media_wysiwyg_view_mode_file_wysiwyg_view_mode']["media_wysiwyg_view_mode_{$type->type}_file_wysiwyg_view_mode"] = array(
|
64
|
'#type' => 'select',
|
65
|
'#title' => t('View mode'),
|
66
|
'#options' => $options,
|
67
|
'#default_value' => variable_get("media_wysiwyg_view_mode_{$type->type}_file_wysiwyg_view_mode", 'wysiwyg'),
|
68
|
'#states' => array(
|
69
|
'visible' => array(
|
70
|
':input[name="media_wysiwyg_view_mode_' . $type->type . '_file_wysiwyg_view_mode_status"]' => array('checked' => TRUE),
|
71
|
),
|
72
|
),
|
73
|
);
|
74
|
}
|
75
|
|
76
|
return system_settings_form($form);
|
77
|
}
|