本文整理汇总了PHP中CRM_Contact_BAO_Contact::getPrimaryOpenId方法的典型用法代码示例。如果您正苦于以下问题:PHP CRM_Contact_BAO_Contact::getPrimaryOpenId方法的具体用法?PHP CRM_Contact_BAO_Contact::getPrimaryOpenId怎么用?PHP CRM_Contact_BAO_Contact::getPrimaryOpenId使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CRM_Contact_BAO_Contact
的用法示例。
在下文中一共展示了CRM_Contact_BAO_Contact::getPrimaryOpenId方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: updateUFName
/**
* update the uf_name in the user object
*
* @param int $contactId id of the contact to update
*
* @return void
* @access public
* @static
*/
static function updateUFName($contactId)
{
$config =& CRM_Core_Config::singleton();
if ($config->userFramework == 'Standalone') {
$ufName = CRM_Contact_BAO_Contact::getPrimaryOpenId($contactId);
} else {
$ufName = CRM_Contact_BAO_Contact::getPrimaryEmail($contactId);
}
if (!$ufName) {
return;
}
$ufmatch =& new CRM_Core_DAO_UFMatch();
$ufmatch->contact_id = $contactId;
$ufmatch->domain_id = CRM_Core_Config::domainID();
if (!$ufmatch->find(true) || $ufmatch->uf_name == $ufName) {
// if object does not exist or the OpenID has not changed
return;
}
// save the updated ufmatch object
$ufmatch->uf_name = $ufName;
$ufmatch->save();
require_once 'CRM/Core/BAO/CMSUser.php';
CRM_Core_BAO_CMSUser::updateUFName($ufmatch->uf_id, $ufName);
}
示例2: testGetPrimaryOpenId
/**
* Test case for getPrimaryOpenId( ).
*/
public function testGetPrimaryOpenId()
{
//get the contact params
$params = $this->contactParams();
$params['openid'][2] = $params['openid'][1];
$params['openid'][2]['location_type_id'] = 2;
$params['openid'][2]['openid'] = 'http://primaryopenid.org/';
unset($params['openid'][1]['is_primary']);
//create contact
$contact = CRM_Contact_BAO_Contact::create($params);
$contactId = $contact->id;
//get the primary openid
$openID = CRM_Contact_BAO_Contact::getPrimaryOpenId($contactId);
//Now check the primary openid
$this->assertEquals($openID, strtolower($params['openid'][2]['openid']), 'Check Primary OpenID');
//cleanup DB by deleting the contact
$this->contactDelete($contactId);
}
示例3: updateUFName
/**
* update the uf_name in the user object
*
* @param int $contactId id of the contact to update
*
* @return void
* @access public
* @static
*/
static function updateUFName($contactId)
{
if (!$contactId) {
return;
}
$config = CRM_Core_Config::singleton();
if ($config->userFramework == 'Standalone') {
$ufName = CRM_Contact_BAO_Contact::getPrimaryOpenId($contactId);
} else {
$ufName = CRM_Contact_BAO_Contact::getPrimaryEmail($contactId);
}
if (!$ufName) {
return;
}
$update = false;
// 1.do check for contact Id.
$ufmatch = new CRM_Core_DAO_UFMatch();
$ufmatch->contact_id = $contactId;
$ufmatch->domain_id = CRM_Core_Config::domainID();
if (!$ufmatch->find(true)) {
return;
}
if ($ufmatch->uf_name != $ufName) {
$update = true;
}
// CRM-6928
// 2.do check for duplicate ufName.
$ufDupeName = new CRM_Core_DAO_UFMatch();
$ufDupeName->uf_name = $ufName;
$ufDupeName->domain_id = CRM_Core_Config::domainID();
if ($ufDupeName->find(true) && $ufDupeName->contact_id != $contactId) {
$update = false;
}
if (!$update) {
return;
}
// save the updated ufmatch object
$ufmatch->uf_name = $ufName;
$ufmatch->save();
require_once 'CRM/Core/BAO/CMSUser.php';
CRM_Core_BAO_CMSUser::updateUFName($ufmatch->uf_id, $ufName);
}