File tree 3 files changed +16
-4
lines changed 3 files changed +16
-4
lines changed Original file line number Diff line number Diff line change 28
28
import fr .free .nrw .commons .feedback .FeedbackContentCreator ;
29
29
import fr .free .nrw .commons .feedback .model .Feedback ;
30
30
import fr .free .nrw .commons .feedback .FeedbackDialog ;
31
+ import fr .free .nrw .commons .kvstore .BasicKvStore ;
31
32
import fr .free .nrw .commons .kvstore .JsonKvStore ;
32
33
import fr .free .nrw .commons .logging .CommonsLogSender ;
33
34
import fr .free .nrw .commons .profile .ProfileActivity ;
@@ -91,17 +92,24 @@ public void onAttach(@NonNull final Context context) {
91
92
}
92
93
93
94
/**
94
- * Set the username in navigationHeader.
95
+ * Set the username and user level (if available) in navigationHeader.
95
96
*/
96
97
private void setUserName () {
97
- moreProfile .setText (getUserName ());
98
+ BasicKvStore store = new BasicKvStore (this .getContext (), getUserName ());
99
+ String level = store .getString ("userLevel" ,"0" );
100
+ if (level .equals ("0" ))
101
+ {
102
+ moreProfile .setText (getUserName () + " (" +getString (R .string .see_your_achievements )+")" );
103
+ }
104
+ else {
105
+ moreProfile .setText (getUserName () + " (" +getString (R .string .level )+" " +level +")" );
106
+ }
98
107
}
99
108
100
109
private String getUserName (){
101
110
final AccountManager accountManager = AccountManager .get (getActivity ());
102
111
final Account [] allAccounts = accountManager .getAccountsByType (BuildConfig .ACCOUNT_TYPE );
103
112
if (allAccounts .length != 0 ) {
104
- moreProfile .setText (allAccounts [0 ].name );
105
113
return allAccounts [0 ].name ;
106
114
}
107
115
return "" ;
Original file line number Diff line number Diff line change 27
27
import fr .free .nrw .commons .auth .SessionManager ;
28
28
import fr .free .nrw .commons .databinding .FragmentAchievementsBinding ;
29
29
import fr .free .nrw .commons .di .CommonsDaggerSupportFragment ;
30
+ import fr .free .nrw .commons .kvstore .BasicKvStore ;
30
31
import fr .free .nrw .commons .mwapi .OkHttpJsonApiClient ;
31
32
import fr .free .nrw .commons .utils .ConfigUtils ;
32
33
import fr .free .nrw .commons .utils .DialogUtil ;
@@ -357,7 +358,7 @@ private void setImageRevertPercentage(int notRevertPercentage){
357
358
358
359
/**
359
360
* Used the inflate the fetched statistics of the images uploaded by user
360
- * and assign badge and level
361
+ * and assign badge and level. Also stores the level of user in BasicKvStore to display in menu
361
362
* @param achievements
362
363
*/
363
364
private void inflateAchievements (Achievements achievements ) {
@@ -377,6 +378,8 @@ private void inflateAchievements(Achievements achievements) {
377
378
binding .achievementBadgeImage .setImageDrawable (VectorDrawableCompat .create (getResources (), R .drawable .badge ,
378
379
new ContextThemeWrapper (getActivity (), levelInfo .getLevelStyle ()).getTheme ()));
379
380
binding .achievementBadgeText .setText (Integer .toString (levelInfo .getLevelNumber ()));
381
+ BasicKvStore store = new BasicKvStore (this .getContext (), userName );
382
+ store .putString ("userLevel" , Integer .toString (levelInfo .getLevelNumber ()));
380
383
}
381
384
382
385
/**
Original file line number Diff line number Diff line change @@ -786,6 +786,7 @@ Upload your first media by tapping on the add button.</string>
786
786
<string name =" permissions_are_required_for_functionality" >Permissions are required for functionality</string >
787
787
<string name =" learn_how_to_write_a_useful_description" >Learn how to write a useful description</string >
788
788
<string name =" learn_how_to_write_a_useful_caption" >Learn how to write a useful caption</string >
789
+ <string name =" see_your_achievements" >see your achievements</string >
789
790
<plurals name =" custom_picker_images_selected_title_appendix" >
790
791
<item quantity =" one" >%d image selected</item >
791
792
<item quantity =" other" >%d images selected</item >
You can’t perform that action at this time.
0 commit comments