@@ -147,10 +147,11 @@ INSERT INTO settings (
147147  wallet_collectible_preferences_group_by_community, 
148148  test_networks_enabled, 
149149  fleet, 
150- 	auto_refresh_tokens_enabled 
150+   auto_refresh_tokens_enabled, 
151+   news_feed_last_fetched_timestamp 
151152) VALUES ( 
152153?,?,?,?,?,?,?,?,?,?,?,?,?,?, 
153- ?,?,?,?,?,?,?,?,?,'id',?,?,?,?,?,?,?,?,?,?,?)` ,
154+ ?,?,?,?,?,?,?,?,?,'id',?,?,?,?,?,?,?,?,?,?,?,? )` ,
154155		s .Address ,
155156		s .Currency ,
156157		s .CurrentNetwork ,
@@ -185,6 +186,8 @@ INSERT INTO settings (
185186		s .TestNetworksEnabled ,
186187		s .Fleet ,
187188		s .AutoRefreshTokensEnabled ,
189+ 		// Default the news feed last fetched timestamp to now 
190+ 		time .Now ().Unix (),
188191	)
189192	if  err  !=  nil  {
190193		return  err 
@@ -372,8 +375,9 @@ func (db *Database) SetSettingLastSynced(setting SettingField, clock uint64) err
372375
373376func  (db  * Database ) GetSettings () (Settings , error ) {
374377	var  (
375- 		s                 Settings 
376- 		lastTokensUpdate  sql.NullTime 
378+ 		s                             Settings 
379+ 		lastTokensUpdate              sql.NullTime 
380+ 		newsFeedLastFetchedTimestamp  sql.NullTime 
377381	)
378382	err  :=  db .db .QueryRow (` 
379383	SELECT 
@@ -392,7 +396,7 @@ func (db *Database) GetSettings() (Settings, error) {
392396		test_networks_enabled, mutual_contact_enabled, profile_migration_needed, wallet_token_preferences_group_by_community, url_unfurling_mode, 
393397		mnemonic_was_not_shown, wallet_show_community_asset_when_sending_tokens, wallet_display_assets_below_balance, 
394398		wallet_display_assets_below_balance_threshold, wallet_collectible_preferences_group_by_collection, wallet_collectible_preferences_group_by_community, 
395- 		peer_syncing_enabled, auto_refresh_tokens_enabled, last_tokens_update, news_feed_enabled 
399+ 		peer_syncing_enabled, auto_refresh_tokens_enabled, last_tokens_update, news_feed_enabled, news_feed_last_fetched_timestamp  
396400	FROM 
397401		settings 
398402	WHERE 
@@ -480,6 +484,7 @@ func (db *Database) GetSettings() (Settings, error) {
480484		& s .AutoRefreshTokensEnabled ,
481485		& lastTokensUpdate ,
482486		& s .NewsFeedEnabled ,
487+ 		& newsFeedLastFetchedTimestamp ,
483488	)
484489
485490	if  err  !=  nil  {
@@ -490,6 +495,10 @@ func (db *Database) GetSettings() (Settings, error) {
490495		s .LastTokensUpdate  =  lastTokensUpdate .Time 
491496	}
492497
498+ 	if  newsFeedLastFetchedTimestamp .Valid  {
499+ 		s .NewsFeedLastFetchedTimestamp  =  newsFeedLastFetchedTimestamp .Time 
500+ 	}
501+ 
493502	return  s , err 
494503}
495504
@@ -881,3 +890,15 @@ func (db *Database) LastTokensUpdate() (result time.Time, err error) {
881890	}
882891	return 
883892}
893+ 
894+ func  (db  * Database ) NewsFeedLastFetchedTimestamp () (result  time.Time , err  error ) {
895+ 	var  newsFeedLastFetchedTimestamp  sql.NullTime 
896+ 	err  =  db .makeSelectRow (NewsFeedLastFetchedTimestamp ).Scan (& newsFeedLastFetchedTimestamp )
897+ 	if  err  ==  sql .ErrNoRows  {
898+ 		return  result , nil 
899+ 	}
900+ 	if  newsFeedLastFetchedTimestamp .Valid  {
901+ 		result  =  newsFeedLastFetchedTimestamp .Time 
902+ 	}
903+ 	return 
904+ }
0 commit comments