query = $query; $this->settingModel = $settingModel; } public function getFbFolder() { $paramUrl = $this->getParamFromUrl(); $this->fb_folder = $this->getParamFromQuery(); if ( Helpers::isListMode() ) { $this->fb_folder = $this->settingModel->get( 'DEFAULT_FOLDER' ); if ( $this->fb_folder === FolderModel::PREVIOUS_FOLDER ) { $this->fb_folder = $this->settingModel->get( 'FOLDER_STARTUP' ); } if ( ! \is_null( $paramUrl ) ) { $this->fb_folder = $paramUrl; $this->settingModel->setFolderStartup( $paramUrl ); } } return $this->fb_folder; } private function getParamFromUrl() { // phpcs:ignore WordPress.Security.NonceVerification.Recommended return isset( $_GET['fbv'] ) ? intval( $_GET['fbv'] ) : null; } private function getParamFromQuery() { $folder = null; if ( '' !== $this->query->get( 'fbv' ) ) { $folder = intval( $this->query->get( 'fbv' ) ); } return $folder; } // TODO: getFolderStartup is not good performance public function getState( $folderId ) { $this->settingModel->setFolderStartup( $folderId ); if ( $this->settingModel->get( 'DEFAULT_FOLDER' ) == FolderModel::PREVIOUS_FOLDER ) { return $this->settingModel->getFolderStartup(); } return $folderId; } }