diff options
Diffstat (limited to 'mod/file/lib/file.php')
| -rw-r--r-- | mod/file/lib/file.php | 45 | 
1 files changed, 45 insertions, 0 deletions
| diff --git a/mod/file/lib/file.php b/mod/file/lib/file.php new file mode 100644 index 000000000..6f94772e7 --- /dev/null +++ b/mod/file/lib/file.php @@ -0,0 +1,45 @@ +<?php +/** + * File helper functions + * + * @package ElggFile + */ + +/** + * Prepare the upload/edit form variables + * + * @param FilePluginFile $file + * @return array + */ +function file_prepare_form_vars($file = null) { + +	// input names => defaults +	$values = array( +		'title' => '', +		'description' => '', +		'access_id' => ACCESS_DEFAULT, +		'tags' => '', +		'container_guid' => elgg_get_page_owner_guid(), +		'guid' => null, +		'entity' => $file, +	); + +	if ($file) { +		foreach (array_keys($values) as $field) { +			if (isset($file->$field)) { +				$values[$field] = $file->$field; +			} +		} +	} + +	if (elgg_is_sticky_form('file')) { +		$sticky_values = elgg_get_sticky_values('file'); +		foreach ($sticky_values as $key => $value) { +			$values[$key] = $value; +		} +	} + +	elgg_clear_sticky_form('file'); + +	return $values; +} | 
