@@ -84,17 +84,20 @@ export async function createAdminUser(req: Request, res: Response) {
8484export async function getPreferences ( req : Request , res : Response ) {
8585 try {
8686 if ( ! req . user ) {
87- res . status ( 401 ) . json ( { message : "Non autorisé " } ) ;
87+ res . status ( 401 ) . json ( { message : "Unauthorized " } ) ;
8888 return ;
8989 }
9090
91- const user = await User . findById ( req . user . _id ) . select ( 'preferences' ) ;
91+ const user = await User . findById ( req . user . _id ) . select ( 'preferences publicShareId ' ) ;
9292 if ( ! user ) {
9393 res . status ( 404 ) . json ( { message : "User not found" } ) ;
9494 return ;
9595 }
9696
97- res . status ( 200 ) . json ( user . preferences ) ;
97+ res . status ( 200 ) . json ( {
98+ ...user . preferences ,
99+ publicShareId : user . preferences ?. isPublic ? user . publicShareId : null
100+ } ) ;
98101 } catch ( error ) {
99102 console . error ( "Error in getPreferences controller" , error ) ;
100103 res . status ( 500 ) . json ( { message : "Internal server error" } ) ;
@@ -104,28 +107,32 @@ export async function getPreferences(req: Request, res: Response) {
104107export async function updatePreferences ( req : Request , res : Response ) {
105108 try {
106109 if ( ! req . user ) {
107- res . status ( 401 ) . json ( { message : "Non autorisé " } ) ;
110+ res . status ( 401 ) . json ( { message : "Unauthorized " } ) ;
108111 return ;
109112 }
110113
111- const { theme } = req . body ;
114+ const { theme, isPublic } = req . body ;
112115
113116 const user = await User . findById ( req . user . _id ) ;
114117 if ( ! user ) {
115118 res . status ( 404 ) . json ( { message : "User not found" } ) ;
116119 return ;
117120 }
118121
119- // Mettre à jour les préférences
122+ // Update preferences
120123 if ( theme !== undefined ) {
121124 user . preferences = { ...user . preferences , theme } ;
122125 }
126+ if ( isPublic !== undefined ) {
127+ user . preferences = { ...user . preferences , isPublic } ;
128+ }
123129
124130 await user . save ( ) ;
125131
126132 res . status ( 200 ) . json ( {
127133 message : "Preferences updated successfully" ,
128- preferences : user . preferences
134+ preferences : user . preferences ,
135+ publicShareId : user . preferences . isPublic ? user . publicShareId : null
129136 } ) ;
130137 } catch ( error ) {
131138 console . error ( "Error in updatePreferences controller" , error ) ;
0 commit comments