diff --git a/browser/lib/activityRecord.js b/browser/lib/activityRecord.js
index f002acdc..bd685c16 100644
--- a/browser/lib/activityRecord.js
+++ b/browser/lib/activityRecord.js
@@ -118,15 +118,15 @@ export function emit (type, data = {}) {
}
let storeData = dataStore.getData()
- todayRecord.FOLDER_COUNT = _.isArray(storeData.folders) ? storeData.folders.length : 0
- todayRecord.ARTICLE_COUNT = _.isArray(storeData.articles) ? storeData.articles.length : 0
+ todayRecord.FOLDER_COUNT = storeData && _.isArray(storeData.folders) ? storeData.folders.length : 0
+ todayRecord.ARTICLE_COUNT = storeData && _.isArray(storeData.articles) ? storeData.articles.length : 0
todayRecord.CLIENT_VERSION = version
- todayRecord.SYNTAX_COUNT = storeData.articles.reduce((sum, article) => {
+ todayRecord.SYNTAX_COUNT = storeData && _.isArray(storeData.articles) ? storeData.articles.reduce((sum, article) => {
if (sum[article.mode] == null) sum[article.mode] = 1
else sum[article.mode]++
return sum
- }, {})
+ }, {}) : 0
saveAllRecords(records)
}
diff --git a/browser/lib/dataStore.js b/browser/lib/dataStore.js
index 14a53860..1784cc81 100644
--- a/browser/lib/dataStore.js
+++ b/browser/lib/dataStore.js
@@ -72,8 +72,7 @@ export function init () {
// set repositories info
getRepositories()
- // set local.json
- let data = jetpack.read(getLocalPath(), 'json')
+ data = getData()
if (data == null) {
// for 0.4.1 -> 0.4.2
@@ -105,12 +104,19 @@ export function init () {
folders: [defaultFolder],
version: '0.4'
}
- queueSave()
+ saveData()
}
}
export function getData () {
- if (data == null) data = jetpack.read(getLocalPath(), 'json')
+ if (data == null) {
+ try {
+ data = jetpack.read(getLocalPath(), 'json')
+
+ } catch (e) {
+ return null
+ }
+ }
return data
}
diff --git a/browser/main/modal/Tutorial.js b/browser/main/modal/Tutorial.js
index 737fe904..de45e13a 100644
--- a/browser/main/modal/Tutorial.js
+++ b/browser/main/modal/Tutorial.js
@@ -80,7 +80,7 @@ export default class Tutorial extends React.Component {
Boost supports code syntax highlighting.
There are more than 100 different type of language.
+
)
case 4:
diff --git a/browser/main/reducer.js b/browser/main/reducer.js
index 944b9a0c..91a8343d 100644
--- a/browser/main/reducer.js
+++ b/browser/main/reducer.js
@@ -38,10 +38,10 @@ const initialStatus = {
let data = dataStore.getData()
let initialArticles = {
- data: data.articles,
+ data: data && data.articles ? data.articles : [],
modified: []
}
-let initialFolders = data.folders
+let initialFolders = data && data.folders ? data.folders : []
let initialUser = dataStore.getUser().user
function user (state = initialUser, action) {
diff --git a/browser/styles/main/modal/Tutorial.styl b/browser/styles/main/modal/Tutorial.styl
index 309c785a..f1c48671 100644
--- a/browser/styles/main/modal/Tutorial.styl
+++ b/browser/styles/main/modal/Tutorial.styl
@@ -7,7 +7,7 @@ slideBgColor4 = #00B493
.Tutorial.modal
background-color slideBgColor0
- color white
+ color white !important
width 720px
height 480px
margin-top 75px