Skip to content

Commit 285422e

Browse files
*Distinctively show quality images and featured images in Achievements
1 parent 2ea966a commit 285422e

File tree

9 files changed

+93
-2
lines changed

9 files changed

+93
-2
lines changed

app/src/main/java/fr/free/nrw/commons/profile/achievements/Achievements.kt

+13-2
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,15 @@ class Achievements {
3232
* @param featuredImages
3333
*/
3434
var featuredImages = 0
35+
/**
36+
* getter function to get count of featured images
37+
* @return
38+
*/
39+
/**
40+
* setter function to set count of featured images
41+
* @param featuredImages
42+
*/
43+
var qualityImages = 0
3544
/**
3645
* getter function to get count of images uploaded
3746
* @return
@@ -57,12 +66,14 @@ class Achievements {
5766
articlesUsingImages: Int,
5867
thanksReceived: Int,
5968
featuredImages: Int,
69+
qualityImages: Int,
6070
imagesUploaded: Int,
6171
revertCount: Int) {
6272
this.uniqueUsedImages = uniqueUsedImages
6373
this.articlesUsingImages = articlesUsingImages
6474
this.thanksReceived = thanksReceived
6575
this.featuredImages = featuredImages
76+
this.qualityImages = qualityImages
6677
this.imagesUploaded = imagesUploaded
6778
this.revertCount = revertCount
6879
}
@@ -91,8 +102,8 @@ class Achievements {
91102
response.uniqueUsedImages,
92103
response.articlesUsingImages,
93104
response.thanksReceived,
94-
response.featuredImages.qualityImages
95-
+ response.featuredImages.featuredPicturesOnWikimediaCommons, 0,
105+
response.featuredImages.featuredPicturesOnWikimediaCommons,
106+
response.featuredImages.qualityImages, 0,
96107
response.deletedUploads
97108
)
98109
}

app/src/main/java/fr/free/nrw/commons/profile/achievements/AchievementsFragment.java

+10
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,9 @@ public class AchievementsFragment extends CommonsDaggerSupportFragment {
7777
@BindView(R.id.image_featured)
7878
TextView imagesFeatured;
7979

80+
@BindView(R.id.quality_images)
81+
TextView tvQualityImages;
82+
8083
@BindView(R.id.images_revert_limit_text)
8184
TextView imagesRevertLimitText;
8285

@@ -414,6 +417,7 @@ private void inflateAchievements(Achievements achievements) {
414417
imagesUsedByWikiProgressBar.setProgressTextFormatPattern
415418
(achievements.getUniqueUsedImages() + "/" + levelInfo.getMaxUniqueImages());
416419
imagesFeatured.setText(String.valueOf(achievements.getFeaturedImages()));
420+
tvQualityImages.setText(String.valueOf(achievements.getQualityImages()));
417421
String levelUpInfoString = getString(R.string.level).toUpperCase();
418422
levelUpInfoString += " " + levelInfo.getLevelNumber();
419423
levelNumber.setText(levelUpInfoString);
@@ -492,6 +496,12 @@ public void showThanksReceivedInfo(){
492496
,getResources().getString(R.string.thanks_received_explanation));
493497
}
494498

499+
@OnClick(R.id.quality_images_info)
500+
public void showQualityImagesInfo() {
501+
launchAlert(getResources().getString(R.string.statistics_quality)
502+
, getResources().getString(R.string.quality_images_info));
503+
}
504+
495505
/**
496506
* takes title and message as input to display alerts
497507
* @param title
Loading
Loading
Loading
Loading
Loading

app/src/main/res/layout/fragment_achievements.xml

+68
Original file line numberDiff line numberDiff line change
@@ -406,6 +406,74 @@
406406

407407
</RelativeLayout>
408408

409+
<RelativeLayout
410+
android:layout_width="match_parent"
411+
android:layout_height="wrap_content"
412+
android:layout_marginLeft="@dimen/activity_margin_horizontal"
413+
android:layout_marginRight="@dimen/activity_margin_horizontal"
414+
android:layout_marginEnd="@dimen/activity_margin_horizontal"
415+
android:layout_marginStart="@dimen/activity_margin_horizontal"
416+
android:layout_marginTop="@dimen/activity_margin_horizontal">
417+
418+
<LinearLayout
419+
android:layout_width="wrap_content"
420+
android:layout_height="wrap_content"
421+
android:layout_centerVertical="true"
422+
android:layout_alignParentStart="true"
423+
android:layout_alignParentLeft="true"
424+
android:layout_toStartOf="@+id/quality_images"
425+
android:layout_toLeftOf="@+id/quality_images"
426+
android:orientation="horizontal"
427+
android:gravity="center_vertical">
428+
429+
<ImageView
430+
android:layout_width="@dimen/overflow_icon_dimen"
431+
android:layout_height="@dimen/overflow_icon_dimen"
432+
android:id="@+id/quality_image_icon"
433+
app:srcCompat="@drawable/ic_quality_images_logo"
434+
android:scaleType="centerInside" />
435+
436+
<TextView
437+
android:layout_width="wrap_content"
438+
android:layout_height="wrap_content"
439+
style="?android:textAppearanceMedium"
440+
android:layout_marginStart="@dimen/activity_margin_horizontal"
441+
android:layout_marginLeft="@dimen/activity_margin_horizontal"
442+
android:layout_marginEnd="@dimen/activity_margin_horizontal"
443+
android:layout_marginRight="@dimen/activity_margin_horizontal"
444+
android:text="@string/statistics_quality" />
445+
446+
<ImageView
447+
android:layout_width="@dimen/medium_width"
448+
android:layout_height="@dimen/medium_height"
449+
android:id="@+id/quality_images_info"
450+
android:layout_marginTop="@dimen/activity_margin_horizontal"
451+
android:layout_marginRight="@dimen/activity_margin_horizontal"
452+
android:layout_marginEnd="@dimen/activity_margin_horizontal"
453+
android:layout_gravity="top"
454+
app:srcCompat="@drawable/ic_info_outline_24dp"
455+
android:tint="@color/primaryDarkColor" />
456+
457+
</LinearLayout>
458+
459+
<TextView
460+
android:layout_width="wrap_content"
461+
android:layout_height="wrap_content"
462+
style="?android:textAppearanceMedium"
463+
android:layout_alignParentRight="true"
464+
android:layout_alignParentEnd="true"
465+
android:layout_marginTop="@dimen/activity_margin_horizontal"
466+
android:layout_marginStart="@dimen/activity_margin_horizontal"
467+
android:layout_centerVertical="true"
468+
tools:text="2"
469+
android:text="0"
470+
android:id="@+id/quality_images"
471+
android:layout_marginLeft="@dimen/activity_margin_horizontal"
472+
android:layout_marginEnd="@dimen/half_standard_height"
473+
android:layout_marginRight="@dimen/half_standard_height" />
474+
475+
</RelativeLayout>
476+
409477
<RelativeLayout
410478
android:layout_width="match_parent"
411479
android:layout_height="wrap_content"

app/src/main/res/values/strings.xml

+2
Original file line numberDiff line numberDiff line change
@@ -697,4 +697,6 @@ Upload your first media by tapping on the add button.</string>
697697
<string name="limited_connection_enabled">Limited connection mode enabled!</string>
698698
<string name="limited_connection_disabled">Limited connection mode disabled. Pending uploads will resume now.</string>
699699
<string name="limited_connection">Limited Connection</string>
700+
<string name="statistics_quality">Quality Images</string>
701+
<string name="quality_images_info">Quality images are diagrams or photographs that meet certain quality standards (which are mostly technical in nature) and are valuable for Wikimedia projects</string>
700702
</resources>

0 commit comments

Comments
 (0)