@@ -5,6 +5,8 @@ import { selectTitle, fetchPagesIfNeeded } from '../actions'
5
5
import ItemLink from '../containers/itemAction'
6
6
import FetchPage from '../containers/fetchpage'
7
7
import FetchImage from '../containers/fetchimage'
8
+ import FetchBookmark from '../containers/fetchbookmark'
9
+ import CloseBookmark from '../containers/closebookmark'
8
10
9
11
const pageList = [ 'Monkey Majik' , 'React (JavaScript library)' , 'Node.js' , 'Underscore.js' , 'Neo4j' , 'Badminton' , 'D3.js' , 'HAECO' , 'Aeronautics' , 'Hong Kong' ]
10
12
@@ -27,19 +29,36 @@ class Wrapper extends Component {
27
29
}
28
30
29
31
render ( ) {
30
- const { selectedPage, pages, isFetching } = this . props
32
+ const { selectedPage, pages, isFetching, showBookmark, bookmarkList, imageByTitle } = this . props
33
+ const { image } = imageByTitle [ selectedPage ] || { image : "" }
34
+ const style = {
35
+ backgroundImage : 'url(' + image + ')' ,
36
+ backgroundRepeat : 'no-repeat' ,
37
+ backgroundSize : 'cover'
38
+ }
31
39
return (
32
40
< div className = "contentWrapper" >
33
41
< div className = "pageNav" >
34
- < ul className = "pageItem" >
35
- { pageList . map ( ( page , i ) =>
36
- < ItemLink item = { page } key = { i } />
37
- ) }
38
- </ ul >
42
+ { showBookmark &&
43
+ < div className = "bookmarkContainer" >
44
+ < CloseBookmark />
45
+ < h2 > BOOKMARKED PAGES</ h2 >
46
+ < FetchBookmark bookmarkList = { bookmarkList } />
47
+ </ div >
48
+ }
49
+ { ! showBookmark &&
50
+ < ul className = "pageItem" >
51
+ { pageList . map ( ( page , i ) =>
52
+ < ItemLink item = { page } key = { i } />
53
+ ) }
54
+ </ ul >
55
+ }
39
56
</ div >
40
- < div className = "pageContent" >
41
- < FetchPage pages = { pages } />
42
- < FetchImage pageimage = { pages . pageimage } />
57
+ < div className = "pageContent" style = { style } >
58
+ < div className = "deco" >
59
+ < FetchPage pages = { pages } />
60
+ < FetchImage pageimage = { pages } />
61
+ </ div >
43
62
</ div >
44
63
</ div >
45
64
)
@@ -50,12 +69,14 @@ Wrapper.propTypes = {
50
69
pages : PropTypes . any . isRequired ,
51
70
selectedPage : PropTypes . string . isRequired ,
52
71
isFetching : PropTypes . bool . isRequired ,
53
- dispatch : PropTypes . func . isRequired
72
+ dispatch : PropTypes . func . isRequired ,
73
+ showBookmark : PropTypes . bool . isRequired
54
74
}
55
75
56
76
function mapStateToProps ( state ) {
57
77
// connecting state datat to the components as props
58
- const { selectedPage, pagesByTitle } = state
78
+ const { selectedPage, pagesByTitle, showBookmark, bookmarkList, imageByTitle } = state
79
+
59
80
// Mapping the state props (pagesbytitle) to the components
60
81
const {
61
82
isFetching,
@@ -64,14 +85,16 @@ function mapStateToProps(state) {
64
85
isFetching : true ,
65
86
items : [ ]
66
87
}
67
-
68
- const { image } = "abc"
88
+ // console.log(pages)
89
+ // const pageimage = pages.pageimage? 'File:' + pages.pageimage : (_.sample(pages.images).title || "")
69
90
70
91
return {
71
92
selectedPage,
72
93
pages,
73
94
isFetching,
74
- image
95
+ showBookmark,
96
+ bookmarkList,
97
+ imageByTitle
75
98
}
76
99
}
77
100
0 commit comments