Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make files-info endpoint return path and permissions of the file #385

Merged
merged 9 commits into from
Apr 12, 2023

Conversation

SwikritiT
Copy link
Contributor

@SwikritiT SwikritiT commented Apr 3, 2023

@SwikritiT SwikritiT force-pushed the enhance-files-info-endpoint branch 2 times, most recently from 2eea866 to 128f8d4 Compare April 3, 2023 10:12
lib/Controller/FilesController.php Outdated Show resolved Hide resolved
@SwikritiT SwikritiT requested a review from Kharonus April 4, 2023 04:43
@@ -229,7 +229,12 @@ private function compileFileInfo($fileId) {
} else {
$mimeType = $file->getMimeType();
}

$fullpath = $file->getpath();
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We cannot use getInternalPath() here like in 7fa3107 because getInternalPath() gets the path relative to the storage, and in case of a shared resource, the request from the share receiver will get an empty internal path as they don't own the file and the storage is that of the owner.

@SwikritiT
Copy link
Contributor Author

Seems like this file https://github.com/nextcloud/server/blob/stable25/lib/public/Files/DavUtil.php is only available from nc-25 😢 , need to find some alternative for support in NC 24 and 23

@SwikritiT SwikritiT marked this pull request as ready for review April 11, 2023 07:20
@SwikritiT SwikritiT force-pushed the enhance-files-info-endpoint branch from 338db5b to 0bfefcf Compare April 11, 2023 08:39
Copy link
Collaborator

@individual-it individual-it left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we need more tests where we share with different permissions

lib/Controller/FilesController.php Show resolved Hide resolved
Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
@SwikritiT SwikritiT force-pushed the enhance-files-info-endpoint branch from 0bfefcf to 873837e Compare April 12, 2023 06:17
Signed-off-by: Swikriti Tripathi <swikriti808@gmail.com>
@SwikritiT SwikritiT force-pushed the enhance-files-info-endpoint branch from 873837e to 8b7bf96 Compare April 12, 2023 06:47
@github-actions
Copy link

JS Code Coverage

Coverage after merging enhance-files-info-endpoint into master will be
93.84%
Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
src
   adminSettings.js0%0%0%0%1, 1, 10–19, 2, 20–25, 3–9
   bootstrap.js0%0%0%0%1, 1–7
   dashboard.js0%0%0%0%1, 1, 10–19, 2, 20–25, 3–9
   fileActions.js0%0%0%0%1, 1, 10–17, 2–9
   personalSettings.js0%0%0%0%1, 1, 10–19, 2, 20–25, 3–9
   projectTab.js0%0%0%0%1, 1, 10–19, 2, 20–29, 3, 30–39, 4, 40–49, 5, 50–59, 6, 60–66, 7–9
   utils.js57.45%33.33%50%59.52%10–14, 17–26, 6–9
src/components
   AdminSettings.vue99.23%95.92%82.35%99.86%1, 1, 1
   OAuthConnectButton.vue99.03%80%100%100%1
   PersonalSettings.vue98.88%91.67%83.33%100%1
src/components/admin
   FieldValue.vue95.56%62.50%100%98.77%1, 1, 1, 1
   FormHeading.vue98.98%75%100%100%1
   TextInput.vue98.46%80%87.50%100%1, 1, 1
src/components/icons
   ClippyIcon.vue93.18%50%50%97.50%1, 1
src/components/settings
   CheckBox.vue92.45%80%66.67%97.62%1, 1
   SettingsTitle.vue94.74%50%100%97.14%1, 1
src/components/tab
   EmptyContent.vue99.34%90.91%100%100%1
   SearchInput.vue99.56%83.33%100%100%1
   WorkPackage.vue99.01%33.33%100%99.66%1, 1, 1
src/utils
   workpackageHelper.js97.46%96%100%97.75%17–19
src/views
   Dashboard.vue98.01%40%50%99.66%1, 1, 1, 1
   ProjectsTab.vue99.74%92.31%100%100%23

@github-actions
Copy link

PHP Code Coverage

Coverage after merging enhance-files-info-endpoint into master will be
58.37%
Coverage Report
FileStmtsBranchesFuncsLinesUncovered Lines
server/apps/integration_openproject/lib/AppInfo
   Application.php12.50%100%25%10.71%103–108, 119, 123, 65–66, 69, 73, 76, 82, 84–86, 88–90, 94–97, 99
server/apps/integration_openproject/lib/BackgroundJob
   RemoveExpiredDirectUploadTokens.php0%100%0%0%42, 44–46, 55–56
server/apps/integration_openproject/lib/Controller
   ConfigController.php63.25%100%50%64.09%131, 148–149, 151, 153–155, 157–158, 163–164, 166, 198–205, 332–333, 462–465, 467–468, 471, 479, 490, 504–506, 521–525, 527–528, 530–533, 535–537, 555–562, 564, 566, 569–571, 573–575, 589, 597–600, 602–605, 615–620
   DirectDownloadController.php0%100%0%0%36–38, 53–55, 57, 60–61
   DirectUploadController.php70.69%100%100%69.64%130–131, 176, 189, 193–196, 198, 208, 215, 229–231, 233–234, 237–239, 245, 247, 250, 252–253, 260–261, 264–265, 268–269, 289, 302, 307, 313
   FilesController.php78.86%100%100%77.59%168, 220–221, 272, 278–282, 286–288, 290, 292, 303–305, 308–309, 311–312, 316–319, 322
   OpenProjectAPIController.php85.07%100%78.57%85.56%136, 171, 188–189, 193, 197, 199–204, 206, 215–216, 219, 221, 223–226, 228–229, 234, 253, 278, 95
server/apps/integration_openproject/lib/Dashboard
   OpenProjectWidget.php0%100%0%0%101–102, 104–108, 116, 123–124, 126, 128–129, 131–132, 134, 137–138, 140–141, 143, 69–73, 80, 87, 94
server/apps/integration_openproject/lib/Exception
   OpenprojectErrorException.php100%100%100%100%
   OpenprojectFileNotUploadedException.php100%100%100%100%
   OpenprojectGroupfolderSetupConflictException.php0%100%0%0%20
   OpenprojectResponseException.php100%100%100%100%
server/apps/integration_openproject/lib/Listener
   BeforeGroupDeletedListener.php0%100%0%0%45, 53–54, 57–60
   BeforeNodeInsideOpenProjectGroupfilderChangedListener.php0%100%0%0%43–46, 50–55, 57–60, 63–65, 67, 69, 73
   BeforeUserDeletedListener.php0%100%0%0%45, 52–53, 55–58
   LoadSidebarScript.php0%100%0%0%101, 103–105, 107, 109, 111–112, 114–115, 117, 119, 72–78, 80–81, 83–84, 86–87, 93–94, 96–97, 99
   UserChangedListener.php0%100%0%0%49, 56–57, 60–64
server/apps/integration_openproject/lib/Migration
   Version2001Date20221213083550.php0%100%0%0%47, 57, 60, 63, 67, 70, 73, 77–79, 81
   Version2310Date20230116153411.php0%100%0%0%46, 49–52, 54–56, 60, 64, 68, 72, 76, 81–82, 84
server/apps/integration_openproject/lib/Search
   OpenProjectSearchProvider.php0%100%0%0%102, 109–110, 113–118, 120–121, 123–125, 128–129, 131–132, 136–141, 147–148, 150, 159–163, 171–179, 195–202, 211–216, 71–75, 82, 89, 97, 99
   OpenProjectSearchResultEntry.php100%100%100%100%
server/apps/integration_openproject/lib/Service
   DatabaseService.php43.90%100%60%41.67%125–128, 131, 80–87, 89–93, 95–97
   DirectDownloadService.php88%100%100%86.96%65–66, 68
   DirectUploadService.php54.55%100%66.67%52.63%112, 118, 79–82, 84, 89, 91
   OauthService.php0%100%0%0%37–38, 47–53, 55, 64–67, 78–85, 95–99
   OpenProjectAPIService.php75.99%100%78.79%75.72%157–161, 332–333, 335, 349–350, 359, 363, 384, 472–473, 480, 483–486, 488, 494, 498–500, 520, 529–532, 536–538, 543–545, 548–550, 552, 555–556, 559, 725, 796, 826–827, 829, 831–832, 855, 859, 863–864, 867–870, 872–873, 875–876, 878–879, 887–894, 900, 927, 929, 935, 940, 944, 950–952, 955, 957, 963
server/apps/integration_openproject/lib/Settings
   Admin.php0%100%0%0%32–34, 41–43, 46–50, 53, 58–59, 62, 64–65, 67, 71, 75
   AdminSection.php0%100%0%0%19–20, 29, 39, 48, 55
   Personal.php87.88%100%50%93.10%94, 98
   PersonalSection.php0%100%0%0%19–20, 29, 39, 48, 55

@SwikritiT SwikritiT merged commit 94a9c6e into master Apr 12, 2023
@delete-merged-branch delete-merged-branch bot deleted the enhance-files-info-endpoint branch April 12, 2023 09:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants