From 14b2d8d86541b9cc63b8d832bbf1e0df2d315e0f Mon Sep 17 00:00:00 2001 From: Dongsheng Cai Date: Thu, 23 Jun 2011 17:13:46 +0800 Subject: [PATCH] MDL-26677 flickr repo - fix undefined index usewatermarks --- admin/repositoryinstance.php | 6 +++++- repository/flickr_public/lib.php | 4 ++-- repository/lib.php | 6 +++++- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/admin/repositoryinstance.php b/admin/repositoryinstance.php index 640ebc98cc4..7ba94dfcfdb 100644 --- a/admin/repositoryinstance.php +++ b/admin/repositoryinstance.php @@ -68,7 +68,11 @@ if (!empty($edit) || !empty($new)) { $settings['name'] = $fromform->name; if (!$instance->readonly) { foreach($configs as $config) { - $settings[$config] = $fromform->$config; + if (isset($fromform->$config)) { + $settings[$config] = $fromform->$config; + } else { + $settings[$config] = null; + } } } $success = $instance->set_option($settings); diff --git a/repository/flickr_public/lib.php b/repository/flickr_public/lib.php index 36910d3d975..b297f6d61db 100644 --- a/repository/flickr_public/lib.php +++ b/repository/flickr_public/lib.php @@ -456,7 +456,7 @@ class repository_flickr_public extends repository { public function instance_config_form($mform) { $mform->addElement('text', 'email_address', get_string('emailaddress', 'repository_flickr_public')); $mform->addElement('checkbox', 'usewatermarks', get_string('watermark', 'repository_flickr_public')); - //$mform->addRule('email_address', get_string('required'), 'required', null, 'client'); + $mform->setDefault('usewatermarks', 0); } /** @@ -498,7 +498,7 @@ class repository_flickr_public extends repository { public static function plugin_init() { //here we create a default instance for this type - $id = repository::static_function('flickr_public','create', 'flickr_public', 0, get_system_context(), array('name'=>'', 'email_address' => null), 0); + $id = repository::static_function('flickr_public','create', 'flickr_public', 0, get_system_context(), array('name'=>'', 'email_address' => null, 'usewatermarks' => false), 0); if (empty($id)) { return false; } else { diff --git a/repository/lib.php b/repository/lib.php index 82a1b6a7fb2..68a7b2a97fb 100644 --- a/repository/lib.php +++ b/repository/lib.php @@ -1381,7 +1381,11 @@ abstract class repository { $configs = call_user_func($classname . '::get_instance_option_names'); if (!empty($configs)) { foreach ($configs as $config) { - $options[$config] = $params[$config]; + if (isset($params[$config])) { + $options[$config] = $params[$config]; + } else { + $options[$config] = null; + } } }