@@ -58,19 +58,7 @@ function categoryFilter(show_on_start) {
5858 tagHighlight ( scat ) ;
5959 }
6060
61- function categorySelect ( selected , buttons ) {
62-
63- for ( var i = 0 ; i < buttons . length ; i ++ ) {
64- var but = buttons [ i ] ;
65-
66- if ( but . innerHTML === selected ) {
67- if ( but . classList [ 0 ] === 'disabled' )
68- but . classList . remove ( 'disabled' ) ;
69- else
70- but . classList . add ( 'disabled' ) ;
71- }
72- }
73-
61+ function applySelection ( ) {
7462 categories_selected = [ ] ;
7563
7664 for ( var i = 0 ; i < category_buttons . length ; i ++ ) {
@@ -83,19 +71,20 @@ function categoryFilter(show_on_start) {
8371 postShowHide ( categories_selected ) ;
8472 }
8573
86- for ( var i = 0 ; i < category_buttons . length ; i ++ ) {
87- var cat_but = category_buttons [ i ] ;
88- cat_but . addEventListener ( 'click' , function ( e ) {
89- categorySelect ( e . target . innerHTML , category_buttons ) ;
90- } ) ;
91- }
74+ function categorySelect ( selected , buttons ) {
9275
93- for ( var i = 0 ; i < show_on_start . length ; i ++ ) {
94- if ( show_on_start [ i ] == 'reverse' ) {
95- reversePosts ( ) ;
76+ for ( var i = 0 ; i < buttons . length ; i ++ ) {
77+ var but = buttons [ i ] ;
78+
79+ if ( but . innerHTML === selected ) {
80+ if ( but . classList [ 0 ] === 'disabled' )
81+ but . classList . remove ( 'disabled' ) ;
82+ else
83+ but . classList . add ( 'disabled' ) ;
84+ }
9685 }
97- var show = show_on_start [ i ] ;
98- categorySelect ( show , category_buttons ) ;
86+
87+ applySelection ( ) ;
9988 }
10089
10190 function reversePosts ( ) {
@@ -111,6 +100,25 @@ function categoryFilter(show_on_start) {
111100 return post_list ;
112101 }
113102
103+ // initialize
104+
105+ for ( var i = 0 ; i < show_on_start . length ; i ++ ) {
106+ if ( show_on_start [ i ] == 'reverse' ) {
107+ reversePosts ( ) ;
108+ }
109+ var show = show_on_start [ i ] ;
110+ categorySelect ( show , category_buttons ) ;
111+ }
112+
113+ // event listeners
114+
115+ for ( var i = 0 ; i < category_buttons . length ; i ++ ) {
116+ var cat_but = category_buttons [ i ] ;
117+ cat_but . addEventListener ( 'click' , function ( e ) {
118+ categorySelect ( e . target . innerHTML , category_buttons ) ;
119+ } ) ;
120+ }
121+
114122 document . getElementById ( 'reverse-filter' ) . addEventListener ( 'click' , function ( ) {
115123 reversePosts ( ) ;
116124 } ) ;
0 commit comments