Keep login events after the user has been removed

master
Lars Vierbergen 7 years ago
parent 7495aa3a1e
commit 6ab5876955
  1. 2
      Entity/LoginEntry.php
  2. 60
      Resources/migrations/VersionAuthserverStats20171102211018.php

@ -22,7 +22,6 @@ namespace vierbergenlars\AuthserverStatsBundle\Entity;
use App\Entity\User;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\ORM\Mapping\Column;
/**
* @ORM\Entity
@ -42,6 +41,7 @@ class LoginEntry
/**
* @ORM\ManyToOne(targetEntity="App\Entity\User", fetch="EAGER")
* @ORM\JoinColumn(nullable=true)
*
* @var User
*/

@ -0,0 +1,60 @@
<?php
/**
* Authserver, an OAuth2-based single-signon authentication provider written in PHP.
*
* Copyright (C) $today.date Lars Vierbergen
*
* his program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
namespace Application\Migrations;
use Doctrine\DBAL\Migrations\AbstractMigration;
use Doctrine\DBAL\Schema\Schema;
class VersionAuthserverStats20171102211018 extends AbstractMigration
{
public function up(Schema $schema)
{
$loginEntry = $schema->getTable('vierbergenlars_stats_login_entry');
$loginEntry->removeForeignKey('vl_stats_le');
$loginEntry->getColumn('user_id')->setNotNull(false);
$loginEntry->addForeignKeyConstraint('auth_users', [
'user_id'
], [
'id'
], [
'onDelete' => 'SET NULL'
], 'vl_stats_le');
}
public function down(Schema $schema)
{
$loginEntry = $schema->getTable('vierbergenlars_stats_login_entry');
$loginEntry->removeForeignKey('vl_stats_le');
$loginEntry->getColumn('user_id')->setNotNull(true);
$loginEntry->addForeignKeyConstraint('auth_users', [
'user_id'
], [
'id'
], [
'onDelete' => 'DELETE'
], 'vl_stats_le');
}
}