@@ -164,14 +164,26 @@ qx.Class.define("osparc.po.UsersPending", {
164164 row,
165165 column : 0 ,
166166 } ) ;
167+
167168 pendingUsersLayout . add ( new qx . ui . basic . Label ( pendingUser . email ) , {
168169 row,
169170 column : 1 ,
170171 } ) ;
171- pendingUsersLayout . add ( new qx . ui . basic . Label ( pendingUser . accountRequestReviewedAt ? osparc . utils . Utils . formatDateAndTime ( new Date ( pendingUser . accountRequestReviewedAt ) ) : "-" ) , {
172+
173+ let date = null ;
174+ switch ( pendingUser . accountRequestStatus ) {
175+ case "PENDING" :
176+ date = pendingUser . preRegistrationRequestedAt ? osparc . utils . Utils . formatDateAndTime ( new Date ( pendingUser . preRegistrationRequestedAt ) ) : "-" ;
177+ break ;
178+ default :
179+ date = pendingUser . accountRequestReviewedAt ? osparc . utils . Utils . formatDateAndTime ( new Date ( pendingUser . accountRequestReviewedAt ) ) : "-" ;
180+ break ;
181+ }
182+ pendingUsersLayout . add ( date , {
172183 row,
173184 column : 2 ,
174185 } ) ;
186+
175187 const statusChip = new osparc . ui . basic . Chip ( ) . set ( {
176188 label : pendingUser . accountRequestStatus . toLowerCase ( ) ,
177189 } ) ;
@@ -182,17 +194,18 @@ qx.Class.define("osparc.po.UsersPending", {
182194 row,
183195 column : 3 ,
184196 } ) ;
197+
185198 const infoButton = this . self ( ) . createInfoButton ( pendingUser ) ;
186199 pendingUsersLayout . add ( infoButton , {
187200 row,
188201 column : 4 ,
189202 } ) ;
203+
190204 const buttonsLayout = new qx . ui . container . Composite ( new qx . ui . layout . HBox ( 5 ) ) ;
191205 pendingUsersLayout . add ( buttonsLayout , {
192206 row,
193207 column : 5 ,
194208 } ) ;
195-
196209 switch ( pendingUser . accountRequestStatus ) {
197210 case "PENDING" : {
198211 statusChip . setStatusColor ( osparc . ui . basic . Chip . STATUS . WARNING ) ;
@@ -233,8 +246,18 @@ qx.Class.define("osparc.po.UsersPending", {
233246 const pendingUsers = resps [ 0 ] ;
234247 const reviewedUsers = resps [ 1 ] ;
235248 const sortByDate = ( a , b ) => {
236- const dateA = a . accountRequestReviewedAt ? new Date ( a . accountRequestReviewedAt ) : new Date ( 0 ) ;
237- const dateB = b . accountRequestReviewedAt ? new Date ( b . accountRequestReviewedAt ) : new Date ( 0 ) ;
249+ let dateA = new Date ( 0 ) ; // default to epoch if no date is available
250+ if ( a . accountRequestStatus === "PENDING" && a . preRegistrationRequestedAt ) {
251+ dateA = new Date ( a . preRegistrationRequestedAt )
252+ } else if ( a . accountRequestReviewedAt ) {
253+ dateA = new Date ( a . accountRequestReviewedAt ) ;
254+ }
255+ let dateB = new Date ( 0 ) ; // default to epoch if no date is available
256+ if ( b . accountRequestStatus === "PENDING" && b . preRegistrationRequestedAt ) {
257+ dateB = new Date ( b . preRegistrationRequestedAt )
258+ } else if ( b . accountRequestReviewedAt ) {
259+ dateB = new Date ( b . accountRequestReviewedAt ) ;
260+ }
238261 return dateB - dateA ; // sort by most recent first
239262 } ;
240263 pendingUsers . sort ( sortByDate ) ;
0 commit comments