public function data__accession::load

3.x data__accession.inc public data__accession::load($entity)

Overrides TripalField::load

See also

TripalField::load()

File

tripal_chado/includes/TripalFields/data__accession/data__accession.inc, line 48

Class

data__accession

Code

public function load($entity) {

  $record = $entity->chado_record;

  $field_name = $this->field['field_name'];
  $field_type = $this->field['type'];
  $field_table = $this->instance['settings']['chado_table'];
  $field_column = $this->instance['settings']['chado_column'];


  // Set some defauls for the empty record
  $entity->{$field_name}['und'][0] = array(
    'value' => '',
    'chado-' . $field_table . '__' . $field_column => '',
    'db_id' => '',
    'accession' => '',
  );

  // Get the primary dbxref record (if it's not NULL).  Because we have a
  // dbxref_id passed in by the base record, we will only have one record.
  if ($record->$field_column) {
    $dbxref = $record->$field_column;
    $value = $dbxref->db_id->name . ':' . $dbxref->accession;
    // Skip the local:null accession as it is just a placeholder.
    if ($value != 'local:null') {
      $entity->{$field_name}['und'][0] = array(
        'value' => $dbxref->accession,
        'chado-' . $field_table . '__' . $field_column => $record->$field_column->$field_column,
        'db_id' => $dbxref->db_id->db_id,
        'accession' => $dbxref->accession,
      );
    }
  }
}