OSDN Git Service

add the version code.
authorZhiting Lin <zlin035@uottawa.ca>
Thu, 23 Aug 2018 11:48:51 +0000 (19:48 +0800)
committerZhiting Lin <zlin035@uottawa.ca>
Thu, 23 Aug 2018 11:48:51 +0000 (19:48 +0800)
src/features/app/components/Main/Main.jsx
src/features/app/components/Main/Main.scss
src/features/core/reducers.js

index 5e89150..14ff781 100644 (file)
@@ -32,6 +32,9 @@ class Main extends React.Component {
   render() {
     let logo = require('images/logo-bytom-white.svg')
 
+    const version = this.props.version
+    const lang = this.props.lang
+
     return (
       <div className={styles.main}
            onClick={this.props.closeDropdown} >
@@ -53,7 +56,7 @@ class Main extends React.Component {
                   className={styles.languages}
                   noCaret
                 >
-                  {this.props.lang === 'zh' ? '中' : 'EN'}
+                  {lang === 'zh' ? '中' : 'EN'}
                 </Dropdown.Toggle>
                 <Dropdown.Menu
                   className={styles.languagesMenu}
@@ -72,6 +75,13 @@ class Main extends React.Component {
             </div>
 
             <Navigation />
+
+            <div className={styles.version}>
+              <span>
+                {lang==='zh'?'版本号':'Version'}: {version}
+              </span>
+            </div>
+
           </div>
         </div>
 
@@ -92,6 +102,7 @@ class Main extends React.Component {
 export default connect(
   (state) => ({
     canLogOut: state.core.requireClientToken,
+    version:state.core.version,
     lang: state.core.lang,
     connected: true,
     showDropwdown: state.app.dropdownState == 'open',
index 2e526bf..59fd0c9 100644 (file)
   z-index: 10;
 }
 
+.version {
+  position: absolute;
+  bottom: 0;
+  padding: $gutter-size/2 $gutter-size;
+  width: 100%;
+  background: $background-inverse-color;
+  font-size: $font-size-chrome;
+}
+
 .logo {
   border-bottom: 1px solid $border-inverse-color;
   height: $title-height;
index b0c25e4..02bda4e 100644 (file)
@@ -7,7 +7,7 @@ const LONG_TIME_FORMAT = 'YYYY-MM-DD, h:mm:ss a'
 
 const coreConfigReducer = (key, state, defaultState, action) => {
   if (action.type == 'UPDATE_CORE_INFO') {
-    return action.param[key] || defaultState
+    return action.param.data[key] || defaultState
   }
 
   return state || defaultState
@@ -240,7 +240,26 @@ const snapshot = (state = null, action) => {
   return state
 }
 
-const version = (state, action) => coreConfigReducer('version', state, 'N/A', action)
+const version = (state = 'N/A', action) => {
+  if (action.type == 'UPDATE_CORE_INFO') {
+    return action.param.data.versionInfo.version
+  }
+  return state
+}
+
+const newVersionCode = (state = 'N/A', action) => {
+  if (action.type == 'UPDATE_CORE_INFO') {
+    return action.param.data.versionInfo.newVersion
+  }
+  return state
+}
+
+const update = (state = false, action) => {
+  if (action.type == 'UPDATE_CORE_INFO') {
+    return action.param.data.versionInfo.update > 0
+  }
+  return state
+}
 
 
 export default combineReducers({
@@ -259,6 +278,7 @@ export default combineReducers({
   generatorBlockHeight,
   generatorUrl,
   localhostAuth,
+  newVersionCode,
   mockhsm,
   mingStatus,
   crosscoreRpcVersion,
@@ -271,6 +291,7 @@ export default combineReducers({
   signer,
   snapshot,
   syncEstimates,
+  update,
   validToken,
   version,
   lang,