Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- showdoctor.load_doctor_controller_load:
- path: 'doctor/{doctor_id}'
- defaults:
- _controller: 'DrupalshowdoctorControllerLoadDoctorController::load'
- _title: 'load'
- requirements:
- _permission: 'access content'
- class LoadDoctorController extends ControllerBase
- {
- public function load($doctor_id)
- {
- $result = RestCurl::post("http://myrest_server.com", [
- 'filter' => ['doctor.id' => $doctor_id],
- ]);
- $fullname = $result['data']->message->data[0]->firstName;
- $fullname = $fullname . ' ' . $result['data']->message->data[0]->lastName;
- // Fetch doctor node with EFQ
- $query = Drupal::entityQuery('node');
- $query->condition('type', 'doctor');
- $query->condition('field_doctor_id', $doctor_id);
- $nids = $query->execute();
- if (!$nids) {
- $node = Node::create([
- 'type' => 'doctor',
- 'title' => $fullname,
- 'uid' => 1,
- ]);
- $node->set('field_doctor_id', $doctor_id);
- $node->save();
- $element = array(
- '#markup' => $node,
- );
- return $element;
- } else {
- $element = array(
- '#markup' => $node,
- );
- return $element;
- }
- }
- }
Add Comment
Please, Sign In to add comment