$gids = implode(',', $profileIds);
$params = array();
if ($restrict) {
- $query = "SELECT g.* from civicrm_uf_group g, civicrm_uf_join j
+ $query = "SELECT g.* from civicrm_uf_group g
+ LEFT JOIN civicrm_uf_join j ON (j.uf_group_id = g.id)
WHERE g.id IN ( {$gids} )
- AND j.uf_group_id IN ( {$gids} )
- AND j.module = %1
+ AND ((j.uf_group_id IN ( {$gids} ) AND j.module = %1) OR g.is_reserved = 1 )
";
$params = array(1 => array($restrict, 'String'));
}
return TRUE;
}
+ /**
+ * @param $showAll
+ * @param $profileType
+ * @param $contactActivityProfile
+ *
+ * @return array
+ */
protected static function getImportableFields($showAll, $profileType, $contactActivityProfile) {
if (!$showAll) {
$importableFields = CRM_Contact_BAO_Contact::importableFields('All', FALSE, FALSE, FALSE, TRUE, TRUE);
return $locationFields;
}
+ /**
+ * @param $ctype
+ *
+ * @return mixed
+ */
protected static function getCustomFields($ctype) {
static $customFieldCache = array();
if (!isset($customFieldCache[$ctype])) {
/**
* check the data validity
*
- * @param int $userID the user id that we are actually editing
- * @param string $title the title of the group we are interested in
- * @pram boolean $register is this the registrtion form
- * @param int $action the action of the form
+ * @param int $userID the user id that we are actually editing
+ * @param string $title the title of the group we are interested in
+ * @param bool $register
+ * @param int $action the action of the form
*
+ * @pram boolean $register is this the registrtion form
* @return boolean true if form is valid
* @static
* @access public
/**
* get the html for the form that represents this particular group
*
- * @param int $userID the user id that we are actually editing
- * @param string $title the title of the group we are interested in
- * @param int $action the action of the form
- * @param boolean $register is this the registration form
- * @param boolean $reset should we reset the form?
- * @param int $profileID do we have the profile ID?
+ * @param int $userID the user id that we are actually editing
+ * @param string $title the title of the group we are interested in
+ * @param int $action the action of the form
+ * @param boolean $register is this the registration form
+ * @param boolean $reset should we reset the form?
+ * @param int $profileID do we have the profile ID?
+ *
+ * @param bool $doNotProcess
+ * @param null $ctype
*
* @return string the html for the form on success, otherwise empty string
* @static
* searches for a contact in the db with similar attributes
*
* @param array $params the list of values to be used in the where clause
- * @param int $id the current contact id (hence excluded from matching)
- * @param boolean $flatten should we flatten the input params
+ * @param int $id the current contact id (hence excluded from matching)
+ * @param string $contactType
+ *
+ * @internal param bool $flatten should we flatten the input params
*
* @return contact_id if found, null otherwise
* @access public
* Given a contact id and a field set, return the values from the db
* for this contact
*
- * @param int $id the contact id
- * @param array $fields the profile fields of interest
- * @param array $values the values for the above fields
- * @param boolean $searchable searchable or not
- * @param array $componentWhere component condition
- * @param boolean $absolute return urls in absolute form (useful when sending an email)
+ * @param $cid
+ * @param array $fields the profile fields of interest
+ * @param array $values the values for the above fields
+ * @param boolean $searchable searchable or not
+ * @param array $componentWhere component condition
+ * @param boolean $absolute return urls in absolute form (useful when sending an email)
*
+ * @param null $additionalWhereClause
+ *
+ * @internal param int $id the contact id
* @return void
* @access public
* @static
$websiteTypes = CRM_Core_PseudoConstant::get('CRM_Core_DAO_Website', 'website_type_id');
$multipleFields = array('url');
- $nullIndex = $nullValueIndex = ' ';
//start of code to set the default values
foreach ($fields as $name => $field) {
continue;
}
+ // Create a unique, non-empty index for each field.
$index = $field['title'];
- //handle for the label not set for the field
- if (empty($field['title'])) {
- $index = $nullIndex;
- $nullIndex .= $nullIndex;
- }
+ if ($index === '') $index = ' ';
+ while (array_key_exists($index, $values))
+ $index .= ' ';
- //handle the case to avoid re-write where the profile field labels are the same
- if (array_key_exists($index, $values)) {
- $index .= $nullValueIndex;
- $nullValueIndex .= $nullValueIndex;
- }
$params[$index] = $values[$index] = '';
$customFieldName = NULL;
// hack for CRM-665
}
/**
- * Funtion to determine of we show overlay profile or not
+ * Function to determine of we show overlay profile or not
*
* @return boolean true if profile should be shown else false
* @static
return $groupTypeValue;
}
+ /**
+ * @return bool|object
+ */
static function isProfileDoubleOptin() {
// check for double optin
$config = CRM_Core_Config::singleton();
return FALSE;
}
+ /**
+ * @return bool|object
+ */
static function isProfileAddToGroupDoubleOptin() {
// check for add to group double optin
$config = CRM_Core_Config::singleton();