Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions config/packages/easy_admin.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,15 @@ easy_admin:
- 'username'
- { property: 'roles', template: 'admin/user/roles-type-read.html.twig' }
- { property: 'homepage', type: 'url' }
- { property: 'linkedin', type: 'url' }
- { property: 'password', template: 'admin/user/password-read.html.twig' }
form:
fields:
- { property: 'email', type: 'email' }
- { property: 'roles', type: 'collection' }
- { property: 'plainPassword', type: 'password' }
- { property: 'homepage', type: 'url' }
- { property: 'linkedin', type: 'url' }

user:
name_property_path: "email"
22 changes: 22 additions & 0 deletions src/Entity/User.php
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,28 @@ class User implements UserInterface
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $homepage = "";
/**
* @var null|string
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $linkedin;

/**
* @return string|null
*/
public function getLinkedin(): ?string
{
return $this->linkedin;
}

/**
* @param string|null $linkedin
*/
public function setLinkedin(?string $linkedin): void
{
$this->linkedin = $linkedin;
}


public function getId(): ?int
{
Expand Down
1 change: 1 addition & 0 deletions src/Form/RegistrationFormType.php
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ public function buildForm(FormBuilderInterface $builder, array $options)
],
])
->add('homepage', UrlType::class, ['required' => false])
->add('linkedin', UrlType::class, ['required' => false])
->add('agreeTerms', CheckboxType::class, [
'mapped' => false,
'constraints' => [
Expand Down
35 changes: 35 additions & 0 deletions src/Migrations/Version20191126200240.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<?php

declare(strict_types=1);

namespace DoctrineMigrations;

use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;

/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20191126200240 extends AbstractMigration
{
public function getDescription() : string
{
return '';
}

public function up(Schema $schema) : void
{
// this up() migration is auto-generated, please modify it to your needs
$this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'Migration can only be executed safely on \'mysql\'.');

$this->addSql('ALTER TABLE user ADD linked_in VARCHAR(255) DEFAULT NULL, CHANGE roles roles JSON NOT NULL, CHANGE homepage homepage VARCHAR(255) DEFAULT NULL, CHANGE password_changed password_changed DATETIME DEFAULT NULL');
}

public function down(Schema $schema) : void
{
// this down() migration is auto-generated, please modify it to your needs
$this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'Migration can only be executed safely on \'mysql\'.');

$this->addSql('ALTER TABLE user DROP linked_in, CHANGE roles roles LONGTEXT NOT NULL COLLATE utf8mb4_bin, CHANGE password_changed password_changed DATETIME DEFAULT \'NULL\', CHANGE homepage homepage VARCHAR(255) DEFAULT \'NULL\' COLLATE utf8mb4_unicode_ci');
}
}
35 changes: 35 additions & 0 deletions src/Migrations/Version20191126205244.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<?php

declare(strict_types=1);

namespace DoctrineMigrations;

use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;

/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20191126205244 extends AbstractMigration
{
public function getDescription() : string
{
return '';
}

public function up(Schema $schema) : void
{
// this up() migration is auto-generated, please modify it to your needs
$this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'Migration can only be executed safely on \'mysql\'.');

$this->addSql('ALTER TABLE user ADD linkedin VARCHAR(255) DEFAULT NULL, DROP linked_in, CHANGE roles roles JSON NOT NULL, CHANGE homepage homepage VARCHAR(255) DEFAULT NULL, CHANGE password_changed password_changed DATETIME DEFAULT NULL');
}

public function down(Schema $schema) : void
{
// this down() migration is auto-generated, please modify it to your needs
$this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql', 'Migration can only be executed safely on \'mysql\'.');

$this->addSql('ALTER TABLE user ADD linked_in VARCHAR(255) DEFAULT \'NULL\' COLLATE utf8mb4_unicode_ci, DROP linkedin, CHANGE roles roles LONGTEXT NOT NULL COLLATE utf8mb4_bin, CHANGE password_changed password_changed DATETIME DEFAULT \'NULL\', CHANGE homepage homepage VARCHAR(255) DEFAULT \'NULL\' COLLATE utf8mb4_unicode_ci');
}
}
9 changes: 6 additions & 3 deletions templates/base.html.twig
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,12 @@
<li class="nav-item">
<a class="nav-link" href="{{ path('app_logout') }}">Atsijungti</a>
</li>
<li class="nav-item">
<a class="nav-link" href="{{ path('easyadmin') }}">Administravimas</a>
</li>

{% if is_granted('ROLE_ADMIN')%}
<li class="nav-item">
<a class="nav-link" href="{{ path('easyadmin') }}">Administravimas</a>
</li>
{% endif %}

{% else %}

Expand Down
1 change: 1 addition & 0 deletions templates/registration/register.html.twig
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
{{ form_row(registrationForm.email) }}
{{ form_row(registrationForm.plainPassword) }}
{{ form_row(registrationForm.homepage) }}
{{ form_row(registrationForm.linkedin) }}
{{ form_row(registrationForm.agreeTerms) }}

<button class="btn">Register</button>
Expand Down
3 changes: 3 additions & 0 deletions templates/security/profile.html.twig
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,8 @@
<div class="mb-2">
<span class="badge badge-primary">Website</span> <a href="{{ user.homepage }}"></a>{{ user.homepage }}
</div>
<div class="mb-2">
<span class="badge badge-primary">LinkedIn</span> <a href="{{ user.linkedin }}"></a>{{ user.linkedin }}
</div>
</div>
{% endblock %}