media.variables.inc
5.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
<?php
/**
* @file
* Contains the variables used by media and their defaults.
*/
/* ***************************************** */
/* CONSTANTS */
/* ***************************************** */
/**
* @TODO: iz_cruft?
* @var unknown_type
*/
define('MEDIA_RESOURCE_URI_DEFAULT', 'public://');
define('MEDIA_TYPES_DEFAULT', '*');
/**
* Define constants.
*/
define('MEDIA_VARIABLE_NAMESPACE', 'media__');
/**
* Wrapper for variable_get() that uses the Media variable registry.
*
* @param string $name
* The variable name to retrieve. Note that it will be namespaced by
* pre-pending MEDIA_VARIABLE_NAMESPACE, as to avoid variable collisions with
* other modules.
* @param unknown $default
* An optional default variable to return if the variable hasn't been set
* yet. Note that within this module, all variables should already be set
* in the media_variable_default() function.
* @return unknown
* Returns the stored variable or its default.
*
* @see media_variable_set()
* @see media_variable_del()
* @see media_variable_default()
*/
function media_variable_get($name, $default = NULL) {
// Allow for an override of the default.
// Useful when a variable is required (like $path), but namespacing still desired.
if (!isset($default)) {
$default = media_variable_default($name);
}
// Namespace all variables
$variable_name = MEDIA_VARIABLE_NAMESPACE . $name;
return variable_get($variable_name, $default);
}
/**
* Wrapper for variable_set() that uses the Media variable registry.
*
* @param string $name
* The variable name to set. Note that it will be namespaced by
* pre-pending MEDIA_VARIABLE_NAMESPACE, as to avoid variable collisions with
* other modules.
* @param unknown $value
* The value for which to set the variable.
* @return unknown
* Returns the stored variable after setting.
*
* @see media_variable_get()
* @see media_variable_del()
* @see media_variable_default()
*/
function media_variable_set($name, $value) {
$variable_name = MEDIA_VARIABLE_NAMESPACE . $name;
return variable_set($variable_name, $value);
}
/**
* Wrapper for variable_del() that uses the Media variable registry.
*
* @param string $name
* The variable name to delete. Note that it will be namespaced by
* pre-pending MEDIA_VARIABLE_NAMESPACE, as to avoid variable collisions with
* other modules.
*
* @see media_variable_get()
* @see media_variable_set()
* @see media_variable_default()
*/
function media_variable_del($name) {
$variable_name = MEDIA_VARIABLE_NAMESPACE . $name;
variable_del($variable_name);
}
/**
* Returns the final machine name of a Media namespaced variable.
*/
function media_variable_name($name) {
return MEDIA_VARIABLE_NAMESPACE . $name;
}
/**
* The default variables within the Media namespace.
*
* @param string $name
* Optional variable name to retrieve the default. Note that it has not yet
* been pre-pended with the MEDIA_VARIABLE_NAMESPACE namespace at this time.
* @return unknown
* The default value of this variable, if it's been set, or NULL, unless
* $name is NULL, in which case we return an array of all default values.
*
* @see media_variable_get()
* @see media_variable_set()
* @see media_variable_del()
*/
function media_variable_default($name = NULL) {
static $defaults;
if (!isset($defaults)) {
$defaults = array(
'wysiwyg_title' => t('Media browser'),
'wysiwyg_icon_title' => t('Add media'),
//@todo: We should do this per type actually. For "other" it should be a link.
'wysiwyg_default_view_mode' => 'media_large',
// Types which can be selected when embedding media vs wysiwyg.
'wysiwyg_allowed_types' => array('audio', 'image', 'video'),
// Attributes which can be modified via the wysiwyg and persist.
'wysiwyg_allowed_attributes' => array('height', 'width', 'hspace', 'vspace', 'border', 'align', 'style', 'alt', 'title', 'class', 'id'),
'field_select_media_text' => t('Select media'),
'field_remove_media_text' => t('Remove media'),
// Name of the theme to use in media popup dialogs, defaults to admin_theme
'dialog_theme' => '',
// @TODO: Make a configuration form with this.
'file_extensions' => 'jpg jpeg gif png txt doc docx xls xlsx pdf ppt pptx pps ppsx odt ods odp mp3 mov m4v mp4 mpeg avi ogg oga ogv wmv ico',
'max_filesize' => '',
'debug' => FALSE,
'file_list_size' => 10,
// Used in media.xml.inc: how long to cache retrieved remote data.
'xml_cache_expire' => 3600,
// Browser defaults in media.browser.inc.
'browser_viewtype_default' => 'thumbnails',
'browser_pager_limit' => 40,
'import_batch_size' => 20,
'fromurl_supported_schemes' => array('http', 'https', 'ftp', 'smb', 'ftps'),
'type_icon_directory' => drupal_get_path('module', 'media') . '/images/types',
'icon_base_directory' => drupal_get_path('module', 'media') . '/images/icons',
'icon_set' => 'default',
// This is set in media_enable(). It will show a persistant dsm on every page
// until the user runs the batch operation provided by media_admin_rebuild_types_form().
'show_file_type_rebuild_nag' => FALSE,
// Deprecated variables no longer in use, but should still be uninstalled.
'browser_library_empty_message' => NULL,
);
}
if (!isset($name)) {
return $defaults;
}
if (isset($defaults[$name])) {
return $defaults[$name];
}
}