aboutsummaryrefslogtreecommitdiff
path: root/views/default/input/access.php
diff options
context:
space:
mode:
Diffstat (limited to 'views/default/input/access.php')
-rw-r--r--views/default/input/access.php27
1 files changed, 18 insertions, 9 deletions
diff --git a/views/default/input/access.php b/views/default/input/access.php
index 7fa2323bf..137eea288 100644
--- a/views/default/input/access.php
+++ b/views/default/input/access.php
@@ -3,21 +3,30 @@
* Elgg access level input
* Displays a dropdown input field
*
- * @package Elgg
- * @subpackage Core
- *
- * @uses $vars['value'] The current value, if any
- * @uses $vars['options_values']
- * @uses $vars['name'] The name of the input field
+ * @uses $vars['value'] The current value, if any
+ * @uses $vars['options_values'] Array of value => label pairs (overrides default)
+ * @uses $vars['name'] The name of the input field
+ * @uses $vars['entity'] Optional. The entity for this access control (uses access_id)
+ * @uses $vars['class'] Additional CSS class
*/
+if (isset($vars['class'])) {
+ $vars['class'] = "elgg-input-access {$vars['class']}";
+} else {
+ $vars['class'] = "elgg-input-access";
+}
+
$defaults = array(
- 'class' => 'elgg-input-access',
- 'disabled' => FALSE,
+ 'disabled' => false,
'value' => get_default_access(),
'options_values' => get_write_access_array(),
);
+if (isset($vars['entity'])) {
+ $defaults['value'] = $vars['entity']->access_id;
+ unset($vars['entity']);
+}
+
$vars = array_merge($defaults, $vars);
if ($vars['value'] == ACCESS_DEFAULT) {
@@ -26,4 +35,4 @@ if ($vars['value'] == ACCESS_DEFAULT) {
if (is_array($vars['options_values']) && sizeof($vars['options_values']) > 0) {
echo elgg_view('input/dropdown', $vars);
-} \ No newline at end of file
+}