<?php
/*
+--------------------------------------------------------------------+
- | CiviCRM version 4.3 |
+ | CiviCRM version 4.5 |
+--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2013 |
+ | Copyright CiviCRM LLC (c) 2004-2014 |
+--------------------------------------------------------------------+
| This file is a part of CiviCRM. |
| |
/**
*
* @package CRM
- * @copyright CiviCRM LLC (c) 2004-2013
+ * @copyright CiviCRM LLC (c) 2004-2014
* $Id$
*
*/
*/
public $_single;
+ /**
+ * the default values for the form
+ *
+ * @var array
+ * @protected
+ */
+ protected $_defaults;
+
+
public function preProcess() {
$session = CRM_Core_Session::singleton();
$config = CRM_Core_Config::singleton();
}
function setDefaultValues() {
- if (!$this->_contactID) {
- return;
+ $this->_defaults = array();
+ if ($this->_contactID) {
+ foreach ($this->_fields as $name => $dontcare) {
+ $fields[$name] = 1;
+ }
+
+ CRM_Core_BAO_UFGroup::setProfileDefaults($this->_contactID, $fields, $this->_defaults);
}
$stateCountryMap = array();
- foreach ($this->_fields as $name => $dontcare) {
- $fields[$name] = 1;
- }
-
- CRM_Core_BAO_UFGroup::setProfileDefaults($this->_contactID, $fields, $this->_defaults);
-
//set custom field defaults
foreach ($this->_fields as $name => $field) {
if ($customFieldID = CRM_Core_BAO_CustomField::getKeyID($name)) {
/**
* Function to build the form
*
- * @return None
+ * @return void
* @access public
*/
public function buildQuickForm() {
}
CRM_Core_BAO_UFGroup::buildProfile($this, $field, CRM_Profile_Form::MODE_CREATE);
$this->_fields[$key] = $field;
- if ($field['add_captcha']) {
+
+ // CRM-11316 Is ReCAPTCHA enabled for this profile AND is this an anonymous visitor
+ if ($field['add_captcha'] && !$this->_contactID) {
$addCaptcha = TRUE;
}
}
*
* @access public
*
- * @return None
+ * @return void
*/
public function postProcess() {
$params = $this->controller->exportValues($this->getName());
if ($ids) {
$this->_contactID = $ids['0'];
}
- $contactID = &CRM_Contact_BAO_Contact::createProfileContact($params, $this->_fields, $this->_contactID);
+ $contactID = CRM_Contact_BAO_Contact::createProfileContact($params, $this->_fields, $this->_contactID);
$this->set('contactID', $contactID);
if (!empty($params['email'])) {