Skip to content
This repository was archived by the owner on Jul 2, 2022. It is now read-only.

Commit 88b55ca

Browse files
committed
Fixed a "bug" where issues would always group by repository
1 parent cfd8573 commit 88b55ca

File tree

8 files changed

+55
-15
lines changed

8 files changed

+55
-15
lines changed

CodeHub.Core/CodeHub.Core.iOS.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@
123123
<Compile Include="ViewModels\App\AboutViewModel.cs" />
124124
<Compile Include="ViewModels\Source\EditSourceViewModel.cs" />
125125
<Compile Include="Messages\SourceEditMessage.cs" />
126+
<Compile Include="Services\JsonSerializationService.cs" />
126127
</ItemGroup>
127128
<ItemGroup />
128129
<ItemGroup>
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
using System;
2+
using CodeFramework.Core.Services;
3+
4+
namespace CodeHub.Core.Services
5+
{
6+
public class JsonSerializationService : IJsonSerializationService
7+
{
8+
private readonly GitHubSharp.SimpleJsonSerializer _serializer;
9+
10+
public JsonSerializationService()
11+
{
12+
_serializer = new GitHubSharp.SimpleJsonSerializer();
13+
}
14+
15+
public string Serialize(object o)
16+
{
17+
return _serializer.Serialize(o);
18+
}
19+
20+
public TData Deserialize<TData>(string data)
21+
{
22+
return _serializer.Deserialize<TData>(data);
23+
}
24+
}
25+
}
26+

CodeHub.Core/ViewModels/Issues/BaseIssuesViewModel.cs

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public ICommand GoToIssueCommand
3838
}
3939
}
4040

41-
protected List<IGrouping<string, IssueModel>> Group(IEnumerable<IssueModel> model)
41+
protected virtual List<IGrouping<string, IssueModel>> Group(IEnumerable<IssueModel> model)
4242
{
4343
var order = Issues.Filter.SortType;
4444
if (order == BaseIssuesFilterModel<TFilterModel>.Sort.Comments)
@@ -60,15 +60,7 @@ protected List<IGrouping<string, IssueModel>> Group(IEnumerable<IssueModel> mode
6060
return FilterGroup.CreateNumberedGroup(g, "Days Ago", "Created");
6161
}
6262

63-
try
64-
{
65-
var regex = new System.Text.RegularExpressions.Regex("repos/(.+)/issues/");
66-
return model.GroupBy(x => regex.Match(x.Url).Groups[1].Value).ToList();
67-
}
68-
catch (Exception e)
69-
{
70-
return null;
71-
}
63+
return null;
7264
}
7365
}
7466

CodeHub.Core/ViewModels/Issues/MyIssuesViewModel.cs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
using CodeFramework.Core.ViewModels;
33
using CodeHub.Core.Filters;
44
using GitHubSharp.Models;
5+
using System.Collections.Generic;
6+
using System.Linq;
7+
using System;
58

69
namespace CodeHub.Core.ViewModels.Issues
710
{
@@ -32,6 +35,25 @@ public MyIssuesViewModel()
3235
else if (x == 1)
3336
_issues.Filter = MyIssuesFilterModel.CreateClosedFilter();
3437
});
38+
}
39+
40+
protected override List<IGrouping<string, IssueModel>> Group(IEnumerable<IssueModel> model)
41+
{
42+
var group = base.Group(model);
43+
if (group == null)
44+
{
45+
try
46+
{
47+
var regex = new System.Text.RegularExpressions.Regex("repos/(.+)/issues/");
48+
return model.GroupBy(x => regex.Match(x.Url).Groups[1].Value).ToList();
49+
}
50+
catch (Exception e)
51+
{
52+
return null;
53+
}
54+
}
55+
56+
return group;
3557
}
3658

3759
protected override Task Load(bool forceCacheInvalidation)

CodeHub.iOS/Info.plist

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@
2121
<key>CFBundleIdentifier</key>
2222
<string>com.dillonbuchanan.codehub</string>
2323
<key>CFBundleShortVersionString</key>
24-
<string>2.1.0</string>
24+
<string>2.1.1</string>
2525
<key>CFBundleVersion</key>
26-
<string>2.1.0</string>
26+
<string>2.1.1</string>
2727
<key>CFBundleIconFiles</key>
2828
<array>
2929
<string>Icon-Small-50</string>

CodeHub.iOS/Views/Issues/IssuesView.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
using System;
22
using Cirrious.CrossCore;
3-
using CodeFramework.iOS.Views;
43
using CodeHub.Core.Filters;
54
using CodeHub.Core.Services;
65
using CodeHub.Core.ViewModels.Issues;

lib/GitHubSharp

0 commit comments

Comments
 (0)