function bookmarks_prepare_form_vars($bookmark = null) {
// input names => defaults
$values = array(
- 'title' => get_input('title', ''),
+ 'title' => get_input('title', ''), // bookmarklet support
'address' => get_input('address', ''),
'description' => '',
'access_id' => ACCESS_DEFAULT,
if ($bookmark) {
foreach (array_keys($values) as $field) {
- $values[$field] = $bookmark->$field;
+ if (isset($bookmark->$field)) {
+ $values[$field] = $bookmark->$field;
+ }
}
}
if (elgg_is_sticky_form('bookmarks')) {
- foreach (array_keys($values) as $field) {
- $values[$field] = elgg_get_sticky_value('bookmarks', $field);
+ $sticky_values = elgg_get_sticky_values('bookmarks');
+ foreach ($sticky_values as $key => $value) {
+ $values[$key] = $value;
}
}
* @package Bookmarks
*/
-// once elgg_view stops throwing all sorts of junk into $vars, we can use
+// once elgg_view stops throwing all sorts of junk into $vars, we can use extract()
$title = elgg_extract('title', $vars, '');
$desc = elgg_extract('description', $vars, '');
$address = elgg_extract('address', $vars, '');
if ($file) {
foreach (array_keys($values) as $field) {
- $values[$field] = $file->$field;
+ if (isset($file->$field)) {
+ $values[$field] = $file->$field;
+ }
}
}
if (elgg_is_sticky_form('file')) {
- foreach (array_keys($values) as $field) {
- $values[$field] = elgg_get_sticky_value('file', $field);
+ $sticky_values = elgg_get_sticky_values('file');
+ foreach ($sticky_values as $key => $value) {
+ $values[$key] = $value;
}
}
if ($topic) {
foreach (array_keys($values) as $field) {
- $values[$field] = $topic->$field;
+ if (isset($topic->$field)) {
+ $values[$field] = $topic->$field;
+ }
}
}
if (elgg_is_sticky_form('topic')) {
- foreach (array_keys($values) as $field) {
- $values[$field] = elgg_get_sticky_value('topic', $field);
+ $sticky_values = elgg_get_sticky_values('topic');
+ foreach ($sticky_values as $key => $value) {
+ $values[$key] = $value;
}
}
if ($page) {
foreach (array_keys($values) as $field) {
- $values[$field] = $page->$field;
+ if (isset($page->$field)) {
+ $values[$field] = $page->$field;
+ }
}
}
if (elgg_is_sticky_form('page')) {
- foreach (array_keys($values) as $field) {
- $values[$field] = elgg_get_sticky_value('page', $field);
+ $sticky_values = elgg_get_sticky_values('page');
+ foreach ($sticky_values as $key => $value) {
+ $values[$key] = $value;
}
}