VoteResult.php in Voting API 8.3
File
src/Entity/VoteResult.php
View source
<?php
namespace Drupal\votingapi\Entity;
use Drupal\Core\Field\BaseFieldDefinition;
use Drupal\Core\Entity\ContentEntityBase;
use Drupal\Core\Entity\EntityTypeInterface;
use Drupal\user\UserInterface;
use Drupal\votingapi\VoteResultInterface;
class VoteResult extends ContentEntityBase implements VoteResultInterface {
public function getVotedEntityType() {
return $this
->get('entity_type')->value;
}
public function setVotedEntityType($name) {
return $this
->set('entity_type', $name);
}
public function getVotedEntityId() {
return $this
->get('entity_id')->value;
}
public function setVotedEntityId($id) {
return $this
->set('entity_id', $id);
}
public function getValue() {
return $this
->get('value')->value;
}
public function setValue($value) {
return $this
->set('value', $value);
}
public function getValueType() {
return $this
->get('value_type')->value;
}
public function setValueType($value_type) {
return $this
->set('value_type', $value_type);
}
public function getOwner() {
return $this
->get('user_id')->entity;
}
public function setOwner(UserInterface $account) {
$this
->set('user_id', $account
->id());
return $this;
}
public function getOwnerId() {
return $this
->get('user_id')->target_id;
}
public function setOwnerId($uid) {
$this
->set('user_id', $uid);
return $this;
}
public function getFunction() {
return $this
->get('function')->value;
}
public function setFunction($function) {
return $this
->set('function', $function);
}
public function getCreatedTime() {
return $this
->get('timestamp')->value;
}
public function setCreatedTime($timestamp) {
return $this
->set('timestamp', $timestamp);
}
public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
$fields['id'] = BaseFieldDefinition::create('integer')
->setLabel(t('ID'))
->setDescription(t('The vote result ID.'))
->setReadOnly(TRUE)
->setSetting('unsigned', TRUE);
$fields['type'] = BaseFieldDefinition::create('entity_reference')
->setLabel(t('Type'))
->setDescription(t('The vote type.'))
->setSetting('target_type', 'vote_type')
->setReadOnly(TRUE);
$fields['entity_type'] = BaseFieldDefinition::create('string')
->setLabel(t('Entity Type'))
->setDescription(t('The type from the voted entity.'))
->setSettings([
'max_length' => 64,
])
->setRequired(TRUE);
$fields['entity_id'] = BaseFieldDefinition::create('entity_reference')
->setLabel(t('Voted entity'))
->setDescription(t('The ID from the voted entity'))
->setRequired(TRUE);
$fields['value'] = BaseFieldDefinition::create('float')
->setLabel(t('Value'))
->setDescription(t('The numeric value of the vote.'))
->setRequired(TRUE);
$fields['value_type'] = BaseFieldDefinition::create('string')
->setLabel(t('Value Type'))
->setSettings([
'max_length' => 64,
])
->setRequired(TRUE);
$fields['function'] = BaseFieldDefinition::create('string')
->setLabel(t('Function'))
->setDescription(t('Function to apply to the numbers.'))
->setSettings([
'max_length' => 100,
])
->setRequired(TRUE);
$fields['timestamp'] = BaseFieldDefinition::create('created')
->setLabel(t('Created'))
->setDescription(t('The time that the entity was created.'))
->setRequired(TRUE);
return $fields;
}
}