@@ -104,20 +104,29 @@ func getIconHandler(c echo.Context) error {
104
104
return echo .NewHTTPError (http .StatusInternalServerError , "failed to get user: " + err .Error ())
105
105
}
106
106
107
- var image []byte
108
- if err := tx .GetContext (ctx , & image , "SELECT image FROM icons WHERE user_id = ?" , user .ID ); err != nil {
109
- if errors .Is (err , sql .ErrNoRows ) {
110
- return c .File (fallbackImage )
111
- } else {
112
- return echo .NewHTTPError (http .StatusInternalServerError , "failed to get user icon: " + err .Error ())
113
- }
107
+ _ , err = os .Stat (fmt .Sprintf ("../img/user-%d.jpg" , user .ID ))
108
+ if err != nil {
109
+ // ないね
110
+ return c .File (fallbackImage )
111
+ }
112
+ image , err := os .ReadFile (fmt .Sprintf ("../img/user-%d.jpg" , user .ID ))
113
+ if err != nil {
114
+ return echo .NewHTTPError (http .StatusInternalServerError , "failed to get user icon: " + err .Error ())
114
115
}
115
116
117
+ // if err := tx.GetContext(ctx, &image, "SELECT image FROM icons WHERE user_id = ?", user.ID); err != nil {
118
+ // if errors.Is(err, sql.ErrNoRows) {
119
+ // return c.File(fallbackImage)
120
+ // } else {
121
+ // return echo.NewHTTPError(http.StatusInternalServerError, "failed to get user icon: "+err.Error())
122
+ // }
123
+ // }
124
+
116
125
return c .Blob (http .StatusOK , "image/jpeg" , image )
117
126
}
118
127
119
128
func postIconHandler (c echo.Context ) error {
120
- ctx := c .Request ().Context ()
129
+ //_ := c.Request().Context()
121
130
122
131
if err := verifyUserSession (c ); err != nil {
123
132
// echo.NewHTTPErrorが返っているのでそのまま出力
@@ -134,29 +143,31 @@ func postIconHandler(c echo.Context) error {
134
143
return echo .NewHTTPError (http .StatusBadRequest , "failed to decode the request body as json" )
135
144
}
136
145
137
- tx , err := dbConn .BeginTxx (ctx , nil )
138
- if err != nil {
139
- return echo .NewHTTPError (http .StatusInternalServerError , "failed to begin transaction: " + err .Error ())
140
- }
141
- defer tx .Rollback ()
146
+ os .WriteFile (fmt .Sprintf ("../img/user-%d.jpg" , userID ), req .Image , 0644 )
142
147
143
- if _ , err := tx .ExecContext (ctx , "DELETE FROM icons WHERE user_id = ?" , userID ); err != nil {
144
- return echo .NewHTTPError (http .StatusInternalServerError , "failed to delete old user icon: " + err .Error ())
145
- }
148
+ // tx, err := dbConn.BeginTxx(ctx, nil)
149
+ // if err != nil {
150
+ // return echo.NewHTTPError(http.StatusInternalServerError, "failed to begin transaction: "+err.Error())
151
+ // }
152
+ // defer tx.Rollback()
146
153
147
- _ , err = tx .ExecContext (ctx , "INSERT INTO icons (user_id, image) VALUES (?, ?)" , userID , req .Image )
148
- if err != nil {
149
- return echo .NewHTTPError (http .StatusInternalServerError , "failed to insert new user icon: " + err .Error ())
150
- }
154
+ // if _, err := tx.ExecContext(ctx, "DELETE FROM icons WHERE user_id = ?", userID); err != nil {
155
+ // return echo.NewHTTPError(http.StatusInternalServerError, "failed to delete old user icon: "+err.Error())
156
+ // }
151
157
152
- // iconID , err := rs.LastInsertId( )
158
+ // _ , err = tx.ExecContext(ctx, "INSERT INTO icons (user_id, image) VALUES (?, ?)", userID, req.Image )
153
159
// if err != nil {
154
- // return echo.NewHTTPError(http.StatusInternalServerError, "failed to get last inserted icon id : "+err.Error())
160
+ // return echo.NewHTTPError(http.StatusInternalServerError, "failed to insert new user icon: "+err.Error())
155
161
// }
156
162
157
- if err := tx .Commit (); err != nil {
158
- return echo .NewHTTPError (http .StatusInternalServerError , "failed to commit: " + err .Error ())
159
- }
163
+ // // iconID, err := rs.LastInsertId()
164
+ // // if err != nil {
165
+ // // return echo.NewHTTPError(http.StatusInternalServerError, "failed to get last inserted icon id: "+err.Error())
166
+ // // }
167
+
168
+ // if err := tx.Commit(); err != nil {
169
+ // return echo.NewHTTPError(http.StatusInternalServerError, "failed to commit: "+err.Error())
170
+ // }
160
171
161
172
return c .JSON (http .StatusCreated , & PostIconResponse {
162
173
ID : 32 ,
0 commit comments