@@ -27,6 +27,8 @@ const NewBlog = ({router})=>{
2727 return false ;
2828 } ;
2929
30+ const [ categories , setCategories ] = useState ( [ ] )
31+ const [ taglists , setTaglists ] = useState ( [ ] )
3032 const [ body , setBody ] = useState ( getBlogFromLocalStorage ( ) )
3133 const [ infos , setInfos ] = useState ( {
3234 error :"" ,
@@ -41,7 +43,27 @@ const NewBlog = ({router})=>{
4143
4244 useEffect ( ( ) => {
4345 setInfos ( { ...infos , formData : new FormData ( ) } )
44- } , [ router ] )
46+ initializeCategories ( )
47+ initializeTaglists ( )
48+ } , [ router ] ) ;
49+
50+ const initializeCategories = ( ) => {
51+ getCategories ( ) . then ( data => {
52+ if ( error ) {
53+ setInfos ( { ...infos , error :data . error } )
54+ } else
55+ setCategories ( data )
56+ } )
57+ }
58+
59+ const initializeTaglists = ( ) => {
60+ getTagLists ( ) . then ( data => {
61+ if ( error ) {
62+ setInfos ( { ...infos , error :data . error } )
63+ } else
64+ setTaglists ( data )
65+ } )
66+ } ;
4567
4668 const publishTheBlog = ( event ) => {
4769 event . preventDefault ( ) ;
@@ -64,6 +86,28 @@ const NewBlog = ({router})=>{
6486 }
6587 } ;
6688
89+ const displayCategories = ( ) => {
90+ return (
91+ categories && categories . map ( ( cat , index ) => (
92+ < li key = { index } className = "list-unstyled" >
93+ < input type = "checkbox" className = "mr-2" />
94+ < label className = "form-check-label" > { cat . name } </ label >
95+ </ li >
96+ ) )
97+ )
98+ } ;
99+
100+ const displayTagslists = ( ) => {
101+ return (
102+ taglists && taglists . map ( ( tagg , index ) => (
103+ < li key = { index } className = "list-unstyled" >
104+ < input type = "checkbox" className = "mr-2" />
105+ < label className = "form-check-label" > { tagg . name } </ label >
106+ </ li >
107+ ) )
108+ )
109+ } ;
110+
67111 ////////////////////
68112
69113
@@ -92,11 +136,26 @@ const NewBlog = ({router})=>{
92136 }
93137
94138 return (
95- < >
96- < div >
139+ < div className = "container-fluid" >
140+ < div className = "row" >
141+ < div className = "col-md-8" >
97142 { createBlogForm ( ) }
98143 </ div >
99- </ >
144+ < div className = "col-md-4" >
145+ < div >
146+ < h6 > Categories</ h6 >
147+ < hr style = { { "backgroundColor" :"white" } } />
148+ < ul style = { { maxHeight :"170px" , overflowY :"scroll" , textTransform :"uppercase" } } > { displayCategories ( ) } </ ul >
149+ < hr style = { { "backgroundColor" :"white" } } />
150+ </ div >
151+ < div >
152+ < h6 > Tags</ h6 >
153+ < hr style = { { "backgroundColor" :"white" } } />
154+ < ul style = { { maxHeight :"200px" , overflowY :"scroll" , textTransform :"uppercase" } } > { displayTagslists ( ) } </ ul >
155+ </ div >
156+ </ div >
157+ </ div >
158+ </ div >
100159 )
101160} ;
102161
0 commit comments