Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function redirect_to_parent() {
- $current_user = wp_get_current_user();
- $user_name = $current_user->user_login;
- $originales = 'ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝÞ
- ßàáâãäåæçèéêëìíîïðñòóôõöøùúûýýþÿŔŕ ';
- $modificadas = 'aaaaaaaceeeeiiiidnoooooouuuuy
- bsaaaaaaaceeeeiiiidnoooooouuuyybyRr-';
- $cadena = utf8_decode($user_name);
- $cadena = strtr($cadena, utf8_decode($originales), $modificadas);
- $cadena = strtolower($cadena);
- $username = utf8_encode($cadena);
- $instance_url = "https://fuji-fi.prakton.es/crm/rest/v10";
- $username = "external_api_user";
- $password = "External2017$";
- //Login - POST /oauth2/token
- $auth_url = $instance_url . "/oauth2/token";
- $oauth2_token_arguments = array(
- "grant_type" => "password",
- //client id - default is sugar.
- //It is recommended to create your own in Admin > OAuth Keys
- "client_id" => "sugar",
- "client_secret" => "",
- "username" => $username,
- "password" => $password,
- //platform type - default is base.
- //It is recommend to change the platform to a custom name such as "custom_api" to avoid authentication conflicts.
- "platform" => "api"
- );
- $auth_request = curl_init($auth_url);
- curl_setopt($auth_request, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
- curl_setopt($auth_request, CURLOPT_HEADER, false);
- curl_setopt($auth_request, CURLOPT_SSL_VERIFYPEER, 0);
- curl_setopt($auth_request, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt($auth_request, CURLOPT_FOLLOWLOCATION, 0);
- curl_setopt($auth_request, CURLOPT_HTTPHEADER, array(
- "Content-Type: application/json"
- ));
- //convert arguments to json
- $json_arguments = json_encode($oauth2_token_arguments);
- curl_setopt($auth_request, CURLOPT_POSTFIELDS, $json_arguments);
- //execute request
- $oauth2_token_response = curl_exec($auth_request);
- $oauth2_token_response_obj = json_decode($oauth2_token_response);
- $oauth_token = $oauth2_token_response_obj->access_token;
- $url = "https://fuji-fi.prakton.es/crm/service/v4_1/rest.php";
- $username = "external_api_user";
- $password = "External2017$";
- //function to make cURL request
- function call($method, $parameters, $url)
- {
- ob_start();
- $curl_request = curl_init();
- curl_setopt($curl_request, CURLOPT_URL, $url);
- curl_setopt($curl_request, CURLOPT_POST, 1);
- curl_setopt($curl_request, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
- curl_setopt($curl_request, CURLOPT_HEADER, 1);
- curl_setopt($curl_request, CURLOPT_SSL_VERIFYPEER, 0);
- curl_setopt($curl_request, CURLOPT_RETURNTRANSFER, 1);
- curl_setopt($curl_request, CURLOPT_FOLLOWLOCATION, 0);
- $jsonEncodedData = json_encode($parameters);
- $post = array(
- "method" => $method,
- "input_type" => "JSON",
- "response_type" => "JSON",
- "rest_data" => $jsonEncodedData
- );
- curl_setopt($curl_request, CURLOPT_POSTFIELDS, $post);
- $result = curl_exec($curl_request);
- curl_close($curl_request);
- $result = explode("\r\n\r\n", $result, 2);
- $response = json_decode($result[1]);
- ob_end_flush();
- return $response;
- }
- //login ---------------------------------------------
- $login_parameters = array(
- "user_auth" => array(
- "user_name" => $username,
- "password" => md5($password),
- "version" => "1"
- ),
- "application_name" => "RestTest",
- "name_value_list" => array(),
- );
- $login_result = call("login", $login_parameters, $url);
- /*
- echo "<pre>";
- print_r($login_result);
- echo "</pre>";
- */
- //get session id
- $session_id = $login_result->id;
- //create account -------------------------------------
- $set_entry_parameters = array(
- //session id
- "session" => $session_id,
- //The name of the module from which to retrieve records.
- "module_name" => "Accounts",
- //Record attributes
- "name_value_list" => array(
- //to update a record, you will nee to pass in a record id as commented below
- //array("name" => "id", "value" => "9b170af9-3080-e22b-fbc1-4fea74def88f"),
- array("name" => "name", "value" => "Test Account"),
- ),
- );
- $set_entry_result = call("set_entry", $set_entry_parameters, $url);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement