X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FAdmin%2FForm.php;h=cc3186887fcc6cf3cce791421ca49978d3b14808;hb=4324b8d7c8e69ac6f94dc89da86d11332c3a5864;hp=da05b0a1128fa3a23f5eb47d59946cc0bc339104;hpb=1b750cf34ee4f7a0045e0672ef718b8cc3e1adf0;p=civicrm-core.git diff --git a/CRM/Admin/Form.php b/CRM/Admin/Form.php index da05b0a112..cc3186887f 100644 --- a/CRM/Admin/Form.php +++ b/CRM/Admin/Form.php @@ -90,6 +90,7 @@ class CRM_Admin_Form extends CRM_Core_Form { * @return array */ public function setDefaultValues() { + // Fetch defaults from the db if (isset($this->_id) && empty($this->_values)) { $this->_values = array(); $params = array('id' => $this->_id); @@ -98,6 +99,15 @@ class CRM_Admin_Form extends CRM_Core_Form { } $defaults = $this->_values; + // Allow defaults to be set from the url + if (empty($this->_id) && $this->_action & CRM_Core_Action::ADD) { + foreach ($_GET as $key => $val) { + if ($this->elementExists($key)) { + $defaults[$key] = $val; + } + } + } + if ($this->_action == CRM_Core_Action::DELETE && isset($defaults['name']) ) {