id]); CRM_Member_PseudoConstant::membershipType(NULL, TRUE); return civicrm_api3_create_success($membershipType, $params, 'membership_type', 'create', $membershipTypeBAO); } /** * Adjust Metadata for Create action * * The metadata is used for setting defaults, documentation & validation * @param array $params array or parameters determined by getfields */ function _civicrm_api3_membership_type_create_spec(&$params) { // todo could set default here probably $params['domain_id']['api.required'] = 1; $params['member_of_contact_id']['api.required'] = 1; $params['financial_type_id']['api.required'] =1; $params['name']['api.required'] = 1; $params['duration_unit']['api.required'] = 1; $params['duration_interval']['api.required'] = 1; } /** * Get a Membership Type. * * This api is used for finding an existing membership type. * * @param array $params an associative array of name/value property values of civicrm_membership_type * {getfields MembershipType_get} * * @return Array of all found membership type property values. * @access public */ function civicrm_api3_membership_type_get($params) { return _civicrm_api3_basic_get(_civicrm_api3_get_BAO(__FUNCTION__), $params); } /** * Deletes an existing membership type * * This API is used for deleting a membership type * Required parrmeters : id of a membership type * * @param Array $params an associative array of name/value property values of civicrm_membership_type * * @return boolean true if success, else false * @access public * {getfields MembershipType_delete} */ function civicrm_api3_membership_type_delete($params) { $memberDelete = CRM_Member_BAO_MembershipType::del($params['id'], 1); return $memberDelete ? civicrm_api3_create_success($memberDelete) : civicrm_api3_create_error('Error while deleting membership type. id : ' . $params['id']); }