@@ -25,8 +25,10 @@ export default class StoreTable extends Table {
2525 static TAB = {
2626 GENERAL : 0 ,
2727 TOOLS : 1 ,
28- TOURNAMENT_CAPSULES : 2 ,
29- TOURNAMENT_SOUVENIRS : 3
28+ KEYS : 2 ,
29+ TOURNAMENT_CAPSULES : 3 ,
30+ TOURNAMENT_SOUVENIRS : 4 ,
31+ OTHER : 5
3032 } ;
3133
3234 constructor ( store ) {
@@ -266,6 +268,13 @@ export default class StoreTable extends Table {
266268 this . #ChangeTab( event . currentTarget , StoreTable . TAB . TOOLS ) ;
267269 }
268270 } ) ,
271+ CreateElement ( "a" , {
272+ class : "cs2s_table_footer_action_link cs2s_table_footer_action_link_no_icon" ,
273+ text : "Keys" ,
274+ onclick : ( event ) => {
275+ this . #ChangeTab( event . currentTarget , StoreTable . TAB . KEYS ) ;
276+ }
277+ } ) ,
269278 this . #store. items . find ( item => item . tournament_id ) && CreateElement ( "a" , {
270279 class : "cs2s_table_footer_action_link cs2s_table_footer_action_link_no_icon" ,
271280 text : "Tournament" ,
@@ -279,6 +288,13 @@ export default class StoreTable extends Table {
279288 onclick : ( event ) => {
280289 this . #ChangeTab( event . currentTarget , StoreTable . TAB . TOURNAMENT_SOUVENIRS ) ;
281290 }
291+ } ) ,
292+ CreateElement ( "a" , {
293+ class : "cs2s_table_footer_action_link cs2s_table_footer_action_link_no_icon" ,
294+ text : "Other" ,
295+ onclick : ( event ) => {
296+ this . #ChangeTab( event . currentTarget , StoreTable . TAB . OTHER ) ;
297+ }
282298 } )
283299 ]
284300 } ) ,
@@ -428,6 +444,10 @@ export default class StoreTable extends Table {
428444 return false ;
429445 }
430446
447+ if ( this . #tab === StoreTable . TAB . KEYS && item . type != "Key" ) {
448+ return false ;
449+ }
450+
431451 if ( this . #tab === StoreTable . TAB . TOURNAMENT_CAPSULES && ( ! item . tournament_id || item . requires_supplemental_data ) ) {
432452 return false ;
433453 }
@@ -436,6 +456,15 @@ export default class StoreTable extends Table {
436456 return false ;
437457 }
438458
459+ if ( this . #tab === StoreTable . TAB . OTHER && (
460+ typeof item . layout_weight !== "undefined"
461+ || item . layout_format == "single"
462+ || item . type == "Key"
463+ || item . tournament_id
464+ ) ) {
465+ return false ;
466+ }
467+
439468 if ( this . #searchQuery && this . #searchQuery. length > 0 ) {
440469 for ( const word of this . #searchQuery) {
441470 if ( ! item . name_normalized . includes ( word ) ) {
0 commit comments