Skip to content

Instantly share code, notes, and snippets.

@osvik
Created May 25, 2016 08:31
Show Gist options
  • Save osvik/819398cd03b146bee3d748e97abead4f to your computer and use it in GitHub Desktop.
Save osvik/819398cd03b146bee3d748e97abead4f to your computer and use it in GitHub Desktop.
<?php
$salesforce_credentials = Universe::login();
if ( isset( $salesforce_credentials['instance_url'] ) && isset( $salesforce_credentials['access_token'] ) ) {
$universe_login_error = '';
$universe_login_error_description = '';
$instance_url = $salesforce_credentials['instance_url'];
$access_token = $salesforce_credentials['access_token'];
$universe_response = Universe::insertInStagingObject( $universe_regular_donation_record, $instance_url, $access_token );
$universe_response_success = isset( $universe_response['success'])? isset( $universe_response['success']) : false; // Bolean
$universe_response_errors_string = isset( $universe_response['errors'] )? implode( '; ' , $universe_response['errors'] ) : '' ;
$universe_response_id = isset( $universe_response['id'] )? $universe_response['id'] : '';
$universe_response_error_code = isset( $universe_response[0]['errorCode'] )? $universe_response[0]['errorCode'] : '' ;
$universe_response_error_message = isset( $universe_response[0]['message'] )? $universe_response[0]['message'] : '';
if ( $universe_response_success == false ) { // IF LOGIN IN SUCESSFULL BUT THERE'S AN ERROR AND THE RECORD IS NOT SAVED IN UNIVERSE
// Log error in the database
$database = getDatabase();
$error_db_fields = array();
$error_db_fields['error_code'] = $universe_response_error_code;
$error_db_fields['error_description'] = $universe_response_error_message;
$result_db = Database::logUniverseAlert( $serverData, $postData, $error_db_fields, $calculatedData, $database );
// Send an email alert to the admin
$allDataToMail = array();
$allDataToMail['error']['code'] = $universe_response_error_code;
$allDataToMail['error']['description'] = $universe_response_error_message;
$allDataToMail['server'] = $serverData;
$allDataToMail['user'] = $postData;
$allDataToMail['calculated'] = $calculatedData;
$templated_mail = Templating::templateIt('universe-alert', $allDataToMail );
UniverseAlert::send( $postData['dni'] , $templated_mail );
} else { // $universe_response_success == true ----- IF LOGIN IN SUCESSFULL AND DATA IS SAVED IN UNIVERSE
// Log data in the database
$database = getDatabase();
$success_db_fields = array();
$success_db_fields['universe_id'] = $universe_response_id;
$result_db = Database::logUniverseSucess( $serverData, $postData, $success_db_fields, $calculatedData, $database );
// Send a confirmation email message to the user
$allDataToMail = array();
$allDataToMail['user'] = $postData;
$allDataToMail['calculated'] = $calculatedData;
$templated_txt_mail = Templating::templateIt('confirm-by-email-rg-txt', $allDataToMail );
ConfirmByEmail::send( $postData['nombre'], $postData['correo'], $templated_txt_mail );
}
} else { // There's an LOGIN error
// Defaults to prevent php event
$universe_response = array();
$universe_response_success = false;
$universe_response_errors_string ='';
$universe_response_id = '';
$universe_response_error_code = '';
$universe_response_error_message = '';
// Detect the error
$universe_login_error = $salesforce_credentials['error'];
$universe_login_error_description = $salesforce_credentials['error_description'];
// Log error in the database
$database = getDatabase();
$error_db_fields = array();
$error_db_fields['error_code'] = $universe_login_error;
$error_db_fields['error_description'] = $universe_login_error_description;
$result_db = Database::logUniverseAlert( $serverData, $postData, $error_db_fields, $calculatedData, $database );
// Send an email alert to the admin
$allDataToMail = array();
$allDataToMail['error'] = array();
$allDataToMail['error']['code'] = $universe_login_error;
$allDataToMail['error']['description'] = $universe_login_error_description;
$allDataToMail['server'] = $serverData;
$allDataToMail['user'] = $postData;
$allDataToMail['calculated'] = $calculatedData;
$templated_mail = Templating::templateIt('universe-alert', $allDataToMail );
UniverseAlert::send( $postData['dni'] , $templated_mail );
}
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment