@@ -4,22 +4,26 @@ var search = (function(){
44var searchInput = helper . e ( ".search-input" ) ;
55var searchClear = helper . e ( ".search-clear" ) ;
66searchInput . addEventListener ( "input" , function ( ) {
7- _toggle ( this ) ;
8- _searchClear ( ) ;
7+ _toggle ( ) ;
8+ render . clear . button ( ) ;
99link . clear ( ) ;
1010link . render . item . all ( ) ;
1111sortable ( ".link-area" ) ;
1212} , false ) ;
1313searchClear . addEventListener ( "click" , function ( ) {
14- _toggle ( this ) ;
15- _searchClear ( ) ;
16- clear ( ) ;
14+ render . clear . input ( ) ;
15+ _toggle ( ) ;
16+ render . clear . button ( ) ;
17+ link . clear ( ) ;
18+ link . render . item . all ( ) ;
19+ sortable ( ".link-area" ) ;
1720} , false ) ;
1821} ;
1922
20- var _toggle = function ( input ) {
23+ var _toggle = function ( ) {
2124var html = helper . e ( "html" ) ;
22- if ( input . value != "" ) {
25+ var searchInput = helper . e ( ".search-input" ) ;
26+ if ( searchInput . value != "" ) {
2327helper . setObject ( {
2428object : state . get ( ) ,
2529path : "search" ,
@@ -36,16 +40,6 @@ var search = (function(){
3640} ;
3741} ;
3842
39- var _searchClear = function ( ) {
40- var searchInput = helper . e ( ".search-input" ) ;
41- var searchClear = helper . e ( ".search-clear" ) ;
42- if ( state . get ( ) . search ) {
43- searchClear . removeAttribute ( "disabled" ) ;
44- } else {
45- searchClear . setAttribute ( "disabled" , "" ) ;
46- } ;
47- } ;
48-
4943var get = function ( ) {
5044var searchInput = helper . e ( ".search-input" ) ;
5145if ( state . get ( ) . search ) {
@@ -71,7 +65,21 @@ var search = (function(){
7165} ;
7266} ;
7367
74- var render = function ( ) {
68+ var render = {
69+ engine : function ( ) {
70+ _renderEngine ( ) ;
71+ } ,
72+ clear : {
73+ input : function ( ) {
74+ _renderClearInput ( ) ;
75+ } ,
76+ button : function ( ) {
77+ _renderClearButton ( ) ;
78+ }
79+ }
80+ } ;
81+
82+ var _renderEngine = function ( ) {
7583var search = helper . e ( ".search" ) ;
7684var searchInput = helper . e ( ".search-input" ) ;
7785var placeholder = "" ;
@@ -85,13 +93,19 @@ var search = (function(){
8593search . setAttribute ( "action" , state . get ( ) . header . search . engine [ state . get ( ) . header . search . engine . selected ] . url ) ;
8694} ;
8795
88- var clear = function ( ) {
96+ var _renderClearButton = function ( ) {
97+ var searchClear = helper . e ( ".search-clear" ) ;
98+ if ( state . get ( ) . search ) {
99+ searchClear . removeAttribute ( "disabled" ) ;
100+ } else {
101+ searchClear . setAttribute ( "disabled" , "" ) ;
102+ } ;
103+ } ;
104+
105+ var _renderClearInput = function ( ) {
89106var searchInput = helper . e ( ".search-input" ) ;
90107searchInput . value = "" ;
91108searchInput . focus ( ) ;
92- link . clear ( ) ;
93- link . render . item . all ( ) ;
94- sortable ( ".link-area" ) ;
95109} ;
96110
97111var _focus = function ( ) {
@@ -104,16 +118,16 @@ var search = (function(){
104118
105119var init = function ( ) {
106120bind ( ) ;
107- render ( ) ;
121+ render . engine ( ) ;
122+ _toggle ( ) ;
108123_focus ( ) ;
109124} ;
110125
111126// exposed methods
112127return {
113128init : init ,
114129get : get ,
115- render : render ,
116- clear : clear
130+ render : render
117131} ;
118132
119133} ) ( ) ;
0 commit comments