Просмотр исходного кода

Make use of the user page userId

arvid-e 5 месяцев назад
Родитель
Сommit
754759c0b8

+ 7 - 2
apps/app/src/client/components/RecentActivity/RecentActivity.tsx

@@ -14,6 +14,9 @@ import { ActivityListItem } from './ActivityListItem';
 
 
 const logger = loggerFactory('growi:RecentActivity');
 const logger = loggerFactory('growi:RecentActivity');
 
 
+type RecentActivityProps = {
+  userId: string,
+}
 
 
 const hasPageTarget = (activity: IActivityHasId): activity is ActivityWithPageTarget => {
 const hasPageTarget = (activity: IActivityHasId): activity is ActivityWithPageTarget => {
   return activity.target != null
   return activity.target != null
@@ -21,13 +24,15 @@ const hasPageTarget = (activity: IActivityHasId): activity is ActivityWithPageTa
         && '_id' in activity.target;
         && '_id' in activity.target;
 };
 };
 
 
-export const RecentActivity = (): JSX.Element => {
+export const RecentActivity = (props: RecentActivityProps): JSX.Element => {
+  const { userId } = props;
+
   const [activities, setActivities] = useState<ActivityWithPageTarget[]>([]);
   const [activities, setActivities] = useState<ActivityWithPageTarget[]>([]);
   const [activePage, setActivePage] = useState(1);
   const [activePage, setActivePage] = useState(1);
   const [limit] = useState(10);
   const [limit] = useState(10);
   const [offset, setOffset] = useState(0);
   const [offset, setOffset] = useState(0);
 
 
-  const { data: paginatedData, error } = useSWRxRecentActivity(limit, offset);
+  const { data: paginatedData, error } = useSWRxRecentActivity(limit, offset, userId);
 
 
   const handlePage = useCallback(async(selectedPage: number) => {
   const handlePage = useCallback(async(selectedPage: number) => {
     const newOffset = (selectedPage - 1) * limit;
     const newOffset = (selectedPage - 1) * limit;

+ 1 - 1
apps/app/src/client/components/UsersHomepageFooter.tsx

@@ -47,7 +47,7 @@ export const UsersHomepageFooter = (props: UsersHomepageFooterProps): JSX.Elemen
           <RecentCreated userId={creatorId} />
           <RecentCreated userId={creatorId} />
         </div>
         </div>
         <div id="user-created-list" className={`page-list ${styles['page-list']}`}>
         <div id="user-created-list" className={`page-list ${styles['page-list']}`}>
-          <RecentActivity />
+          <RecentActivity userId={creatorId} />
         </div>
         </div>
       </div>
       </div>
     </div>
     </div>

+ 1 - 1
apps/app/src/server/routes/apiv3/user-activities.ts

@@ -178,7 +178,7 @@ module.exports = (crowi: Crowi): Router => {
 
 
       const limit = req.query.limit || defaultLimit || 10;
       const limit = req.query.limit || defaultLimit || 10;
       const offset = req.query.offset || 0;
       const offset = req.query.offset || 0;
-      const targetUserId = req.params.targetUserId;
+      const targetUserId = req.query.targetUserId;
 
 
       if (typeof targetUserId !== 'string') {
       if (typeof targetUserId !== 'string') {
         logger.error('Bad request: targetUserId must be of type string.');
         logger.error('Bad request: targetUserId must be of type string.');