partkeepr

fork of partkeepr
git clone https://git.e1e0.net/partkeepr.git
Log | Files | Refs | Submodules | README | LICENSE

ExistingUserSetupController.php (1968B)


      1 <?php
      2 
      3 namespace PartKeepr\SetupBundle\Controller;
      4 
      5 use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
      6 use Symfony\Component\HttpFoundation\JsonResponse;
      7 use Symfony\Component\HttpFoundation\Request;
      8 use Symfony\Component\HttpFoundation\Response;
      9 
     10 class ExistingUserSetupController extends SetupBaseController
     11 {
     12     /**
     13      * Checks if there are existing userds in the database.
     14      *
     15      * @Route("/setup/testExistingUsers")
     16      */
     17     public function testExistingUsersAction(Request $request)
     18     {
     19         if (!$this->ensureAuthKey($request)) {
     20             return $this->getAuthKeyErrorResponse();
     21         }
     22 
     23         $this->dumpConfig($request);
     24 
     25         $response = $this->handleRequest($request, '/setup/_int_test_existing_users');
     26 
     27         return new Response($response->getContent());
     28     }
     29 
     30     /**
     31      * @Route("/setup/_int_test_existing_users")
     32      */
     33     public function intTestExistingUsersAction(Request $request)
     34     {
     35         if (!$this->ensureAuthKey($request)) {
     36             return $this->getAuthKeyErrorResponse();
     37         }
     38 
     39         $legacyUsersDQL = "SELECT COUNT(u) FROM PartKeepr\AuthBundle\Entity\User u WHERE u.legacy = true";
     40 
     41         $legacyUsersQuery = $this->get('doctrine.orm.default_entity_manager')->createQuery($legacyUsersDQL);
     42 
     43         $totalUsersDQL = "SELECT COUNT(u) FROM PartKeepr\AuthBundle\Entity\User u";
     44 
     45         $totalUsersQuery = $this->get('doctrine.orm.default_entity_manager')->createQuery($totalUsersDQL);
     46 
     47         $response = [
     48             'success'     => true,
     49             'legacyUsers' => (int) $legacyUsersQuery->getSingleScalarResult(),
     50             'totalUsers'  => (int) $totalUsersQuery->getSingleScalarResult(),
     51             'errors'      => [],
     52             'message'     => 'No existing users found',
     53         ];
     54 
     55         if ($totalUsersQuery->getSingleScalarResult() > 0) {
     56             $response['message'] = 'Existing users found';
     57         }
     58 
     59         return new JsonResponse($response);
     60     }
     61 }