*/
class Application extends BaseDataTransferObject
{
+ /** @var string */
+ protected $client_id;
+ /** @var string */
+ protected $client_secret;
+ /** @var int */
+ protected $id;
/** @var string */
protected $name;
+ /** @var string */
+ protected $redirect_uri;
+ /** @var string */
+ protected $website;
/**
* Creates an application entry
* @param array $item
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
- public function __construct(string $name)
+ public function __construct(string $name, string $client_id = null, string $client_secret = null, int $id = null, string $redirect_uri = null, string $website = null)
{
- $this->name = $name;
+ $this->client_id = $client_id;
+ $this->client_secret = $client_secret;
+ $this->id = $id;
+ $this->name = $name;
+ $this->redirect_uri = $redirect_uri;
+ $this->website = $website;
+ }
+
+ /**
+ * Returns the current entity as an array
+ *
+ * @return array
+ */
+ public function toArray(): array
+ {
+ $application = parent::toArray();
+
+ if (empty($application['id'])) {
+ unset($application['client_id']);
+ unset($application['client_secret']);
+ unset($application['id']);
+ unset($application['redirect_uri']);
+ }
+
+ if (empty($application['website'])) {
+ unset($application['website']);
+ }
+
+ return $application;
}
}