public function googleDriveSuccess(Request $request)
 {
     $userId = GoogleDrive::where('userId', Auth::id())->first();
     $client = new Google_Client();
     $client->setApplicationName(APPLICATION_NAME);
     $client->setScopes(SCOPES);
     $client->setAuthConfigFile(CLIENT_SECRET_PATH);
     $client->setAccessType('offline');
     $client->setClientId('61413088518-nvuqb0gr82a47stea9os5cctnu35ssp6.apps.googleusercontent.com');
     $client->setClientSecret('eEY5p3_oq3L1w7rrVWB6Odw8');
     if ($userId) {
         $access_token = $userId->access_token;
         $client->setAccessToken($access_token);
         /* To check whether access token is expired or not */
         if ($client->isAccessTokenExpired()) {
             $refreshToken = $userId->refresh_token;
             //Here's where the magical refresh_token comes into play
             $client->refreshToken($refreshToken);
             /* Setting new Access Token */
             $client->setAccessToken($client->getAccessToken());
             /* Update the database with new Access Token and refresh token */
             DB::table('googleDrive')->where('driveId', $userId->driveId)->update(['access_token' => $client->getAccessToken(), 'refresh_token' => $client->getRefreshToken()]);
         }
         $this->userAlreadyExists($client);
     } else {
         $client->authenticate($_GET['code']);
         $access_token = $client->getAccessToken();
         $googleDriveObject = new GoogleDrive();
         $googleDriveObject->userId = Auth::id();
         $googleDriveObject->access_token = $access_token;
         $googleDriveObject->refresh_token = $client->getRefreshToken();
         $googleDriveObject->save();
         $client->setAccessToken($access_token);
     }
     $drive_service = new Google_Service_Drive($client);
     $result = array();
     $pageToken = NULL;
     do {
         try {
             $parameters = array();
             if ($pageToken) {
                 $parameters['pageToken'] = $pageToken;
             }
             $children = $drive_service->children->listChildren("root", $parameters);
             $pageToken = $children->getNextPageToken();
         } catch (Exception $e) {
             print "An error occurred: " . $e->getMessage();
             $pageToken = NULL;
         }
     } while ($pageToken);
     $fileList = array();
     foreach ($children->getItems() as $child) {
         $file = $drive_service->files->get($child->getId());
         $driveObject = new GoogleDrive();
         if (strpos($file->getMimeType(), '.folder') !== FALSE) {
             $driveObject->setFileType("Folder");
         } else {
             $driveObject->setFileType("File");
         }
         $driveObject->setTitle($file->getTitle());
         $driveObject->setFileSize($file->getFileSize());
         $driveObject->setDirectDownloadUrl($file->getWebContentLink());
         $driveObject->setDownloadUrl($file->getDownloadUrl());
         array_push($fileList, $driveObject);
     }
     return view('pages.googledrive')->with('googleDriveData', $fileList);
 }