public function reinitializeSession(Framework $framework, WebRequest $request, Response $response)
    {
        // Sets the correct name:
        session_name('ZTSM');
        
        // Start the session
        session_start();
        
        // If the session wasn't started before, we start it now...
        if ($request->getSessionData('sessionStarted') === false) {
            $this->startSession($request);
        }
        
        // Validate the session data
        $valid = $this->validateSessionData($request);
        
        // If the session not is valid we redirect to the start of everything
        if (!$valid) {
            $response->redirectTo('');
        }
        
        // There is a 1% chance that we regenerate the session
        if (mt_rand(1, 100) <= 1) {
            $this->regenerateSession($request);
        }

        // Initialize the user session
        if ($request->getSessionData('userUuid') !== false) {
            $this->reinitializeUserSession($framework, $request, $response);
        }
    }