* This class contains all contact related functions that are called using AJAX (jQuery)
*/
class CRM_Contact_Page_AJAX {
+ /**
+ * When a user chooses a username, CHECK_USERNAME_TTL
+ * is the time window in which they can check usernames
+ * (without reloading the overall form).
+ */
+ const CHECK_USERNAME_TTL = 10800; // 3hr; 3*60*60
+
+ const AUTOCOMPLETE_TTL = 21600; // 6hr; 6*60*60
+
+ /**
+ * @deprecated
+ */
static function getContactList() {
// if context is 'customfield'
if (CRM_Utils_Array::value('context', $_GET) == 'customfield') {
* Function to get email address of a contact
*/
static function getContactEmail() {
- if (CRM_Utils_Array::value('contact_id', $_REQUEST)) {
+ if (!empty($_REQUEST['contact_id'])) {
$contactID = CRM_Utils_Type::escape($_REQUEST['contact_id'], 'Positive');
+ if (!CRM_Contact_BAO_Contact_Permission::allow($contactID, CRM_Core_Permission::EDIT)) {
+ return;
+ }
list($displayName,
$userEmail
) = CRM_Contact_BAO_Contact_Location::getEmailDetails($contactID);
return CRM_Core_Error::createApiError($last_error['message']);
}
}
-
+ $params['payment_instrument_id'] = CRM_Core_DAO::getFieldValue('CRM_Financial_DAO_PaymentProcessorType', $paymentProcessor['payment_processor_type_id'], 'payment_type') == 1 ? 'Credit Card' : 'Debit Card';
return civicrm_api('contribution', 'create', $params);
}
+
/**
* Send a contribution confirmation (receipt or invoice)
* The appropriate online template will be used (the existence of related objects