@@ -23,67 +23,46 @@ public static ObservableCollection<ListItem> ExtractCollectionDetailsIntoListIte
23
23
var items = new ObservableCollection < ListItem > ( ) ;
24
24
foreach ( var item in result . Results )
25
25
{
26
- var mediaName = item . Name ;
27
- const string year = "" ;
28
- const string rating = "" ;
29
- var poster = Convert . ToString ( item . PosterPath != null ? SmallPosterBase + item . PosterPath : null ,
30
- CultureInfo . InvariantCulture ) ;
31
-
32
- items . Add ( new ListItem
33
- {
34
- Title = mediaName ,
35
- Year = year ,
36
- Rating = rating ,
37
- Overview = item . Overview ,
38
- Poster = poster ,
39
- Id = item . Id . ToString ( )
40
- } ) ;
26
+ items . Add ( TransformDetailsIntoListItem ( item . Name ,
27
+ null ,
28
+ null ,
29
+ item . Overview ,
30
+ item . PosterPath ,
31
+ item . Id ) ) ;
41
32
}
42
33
43
34
return items ;
44
35
}
45
-
36
+
46
37
public static ObservableCollection < ListItem > ExtractCollectionDetailsIntoListItem (
47
38
Collection result )
48
39
{
49
- var items = new ObservableCollection < ListItem > ( ) ;
50
- var mediaName = result . Name ;
51
- const string year = "" ;
52
- const string rating = "" ;
53
- var poster = Convert . ToString ( result . PosterPath != null ? SmallPosterBase + result . PosterPath : null , CultureInfo . InvariantCulture ) ;
54
- items . Add ( new ListItem
55
- {
56
- Title = mediaName ,
57
- Year = year ,
58
- Rating = rating ,
59
- Overview = result . Overview ,
60
- Poster = poster ,
61
- Id = result . Id . ToString ( )
62
- } ) ;
63
-
64
- return items ;
40
+ return
41
+ [
42
+ TransformDetailsIntoListItem (
43
+ result . Name ,
44
+ null ,
45
+ null ,
46
+ result . Overview ,
47
+ result . PosterPath ,
48
+ result . Id
49
+ )
50
+ ] ;
65
51
}
66
52
67
- public static ObservableCollection < ListItem > ExtractMoviesDetailsIntoListItem (
68
- Movie result )
53
+ public static ObservableCollection < ListItem > ExtractMoviesDetailsIntoListItem ( Movie result )
69
54
{
70
- var items = new ObservableCollection < ListItem > ( ) ;
71
- var mediaName = result . Title ;
72
- var year = result . ReleaseDate != null ? result . ReleaseDate . Value . Year . ToString ( CultureInfo . InvariantCulture ) : "" ;
73
- var rating = result . VoteAverage . ToString ( CultureInfo . CurrentCulture ) ;
74
- var overview = result . Overview ;
75
- var poster = result . PosterPath != null ? SmallPosterBase + result . PosterPath : null ;
76
- items . Add ( new ListItem
77
- {
78
- Title = mediaName ,
79
- Year = year ,
80
- Rating = rating ,
81
- Overview = overview ,
82
- Poster = poster ,
83
- Id = result . Id . ToString ( )
84
- } ) ;
85
-
86
- return items ;
55
+ return
56
+ [
57
+ TransformDetailsIntoListItem (
58
+ result . Title ,
59
+ result . ReleaseDate ,
60
+ result . VoteAverage ,
61
+ result . Overview ,
62
+ result . PosterPath ,
63
+ result . Id
64
+ )
65
+ ] ;
87
66
}
88
67
89
68
public static ObservableCollection < ListItem > ExtractMoviesDetailsIntoListItem (
@@ -92,22 +71,12 @@ public static ObservableCollection<ListItem> ExtractMoviesDetailsIntoListItem(
92
71
var items = new ObservableCollection < ListItem > ( ) ;
93
72
foreach ( var item in result . Results )
94
73
{
95
- var mediaName = item . Title ;
96
- var year = item . ReleaseDate != null
97
- ? item . ReleaseDate . Value . Year . ToString ( CultureInfo . InvariantCulture )
98
- : "" ;
99
- var rating = item . VoteAverage . ToString ( CultureInfo . CurrentCulture ) ;
100
- var overview = item . Overview ;
101
- var poster = item . PosterPath != null ? SmallPosterBase + item . PosterPath : null ;
102
- items . Add ( new ListItem
103
- {
104
- Title = mediaName ,
105
- Year = year ,
106
- Rating = rating ,
107
- Overview = overview ,
108
- Poster = poster ,
109
- Id = item . Id . ToString ( )
110
- } ) ;
74
+ items . Add ( TransformDetailsIntoListItem ( item . Title ,
75
+ item . ReleaseDate ,
76
+ item . VoteAverage ,
77
+ item . Overview ,
78
+ item . PosterPath ,
79
+ item . Id ) ) ;
111
80
}
112
81
113
82
return items ;
@@ -118,113 +87,89 @@ public static ObservableCollection<ListItem> ExtractTvDetailsIntoListItem(Search
118
87
var items = new ObservableCollection < ListItem > ( ) ;
119
88
foreach ( var item in result . Results )
120
89
{
121
- var mediaName = item . Name ;
122
- var year = item . FirstAirDate != null ? item . FirstAirDate . Value . Year . ToString ( CultureInfo . InvariantCulture ) : "" ;
123
- var rating = item . VoteAverage . ToString ( CultureInfo . CurrentCulture ) ;
124
- var overview = item . Overview ;
125
- var poster = item . PosterPath != null ? SmallPosterBase + item . PosterPath : null ;
126
- items . Add ( new ListItem
127
- {
128
- Title = mediaName ,
129
- Year = year ,
130
- Rating = rating ,
131
- Overview = overview ,
132
- Poster = poster ,
133
- Id = item . Id . ToString ( )
134
- } ) ;
90
+ items . Add ( TransformDetailsIntoListItem ( item . Name ,
91
+ item . FirstAirDate ,
92
+ item . VoteAverage ,
93
+ item . Overview ,
94
+ item . PosterPath ,
95
+ item . Id ) ) ;
135
96
}
136
97
137
98
return items ;
138
99
}
139
-
100
+
140
101
public static ObservableCollection < ListItem > ExtractTvDetailsIntoListItem ( TvShow result )
141
102
{
142
- var items = new ObservableCollection < ListItem > ( ) ;
143
- var mediaName = result . Name ;
144
- var year = result . FirstAirDate != null
145
- ? result . FirstAirDate . Value . Year . ToString ( CultureInfo . InvariantCulture )
146
- : "" ;
147
- var rating = result . VoteAverage . ToString ( CultureInfo . CurrentCulture ) ;
148
- var overview = result . Overview ;
149
- var poster = result . PosterPath != null ? SmallPosterBase + result . PosterPath : null ;
150
- items . Add ( new ListItem
151
- {
152
- Title = mediaName ,
153
- Year = year ,
154
- Rating = rating ,
155
- Overview = overview ,
156
- Poster = poster ,
157
- Id = result . Id . ToString ( )
158
- } ) ;
159
-
160
- return items ;
103
+ return
104
+ [
105
+ TransformDetailsIntoListItem (
106
+ result . Name ,
107
+ result . FirstAirDate ,
108
+ result . VoteAverage ,
109
+ result . Overview ,
110
+ result . PosterPath ,
111
+ result . Id
112
+ )
113
+ ] ;
161
114
}
162
115
163
116
public static ObservableCollection < ListItem > ExtractResourceDetailsIntoListItem (
164
117
SearchContainer < SearchBase > result )
165
118
{
166
119
Logger . Debug ( "Extracting Resource Details into List Item" ) ;
167
120
var items = new ObservableCollection < ListItem > ( ) ;
168
- var mediaName = "" ;
169
- var year = "" ;
170
- var rating = "" ;
171
- var overview = "" ;
172
- string poster = null ;
173
- var id = 0 ;
121
+
174
122
foreach ( var item in result . Results )
175
123
{
176
124
var mediaType = item . MediaType ;
177
125
178
126
Logger . Debug ( "Media Type: {MediaType}" , mediaType ) ;
127
+ ListItem listItem ;
179
128
switch ( mediaType )
180
129
{
181
130
case MediaType . Tv :
182
131
{
183
132
var res = ( SearchTv ) item ;
184
- id = res . Id ;
185
- mediaName = res . Name ;
186
- year = res . FirstAirDate != null
187
- ? res . FirstAirDate . Value . Year . ToString ( CultureInfo . InvariantCulture )
188
- : "" ;
189
- rating = res . VoteAverage . ToString ( CultureInfo . CurrentCulture ) ;
190
- overview = res . Overview ;
191
- poster = res . PosterPath != null ? SmallPosterBase + res . PosterPath : null ;
133
+ listItem = TransformDetailsIntoListItem ( res . Name , res . FirstAirDate , res . VoteAverage , res . Overview ,
134
+ res . PosterPath , res . Id ) ;
192
135
break ;
193
136
}
194
137
case MediaType . Movie :
195
138
{
196
139
var res = ( SearchMovie ) item ;
197
- id = res . Id ;
198
- mediaName = res . Title ;
199
- year = res . ReleaseDate != null
200
- ? res . ReleaseDate . Value . Year . ToString ( CultureInfo . InvariantCulture )
201
- : "" ;
202
- rating = res . VoteAverage . ToString ( CultureInfo . CurrentCulture ) ;
203
- overview = res . Overview ;
204
- poster = res . PosterPath != null ? SmallPosterBase + res . PosterPath : null ;
140
+ listItem = TransformDetailsIntoListItem ( res . Title , res . ReleaseDate , res . VoteAverage , res . Overview ,
141
+ res . PosterPath , res . Id ) ;
205
142
break ;
206
143
}
144
+ default : continue ;
207
145
}
208
146
209
- Logger . Trace (
210
- "Media Name: {MediaName}, Year: {Year}, Rating: {Rating}, Overview:{Pverview}, PosterPath: {Poster}" ,
211
- mediaName , year , rating , overview , poster ) ;
212
- items . Add ( new ListItem
213
- {
214
- Title = mediaName ,
215
- Year = year ,
216
- Rating = rating ,
217
- Overview = overview ,
218
- Poster = poster ,
219
- Id = id . ToString ( ) ,
220
- MediaType = mediaType
221
- } ) ;
222
- Logger . Info ( "Added {MediaName} to List" , mediaName ) ;
147
+ Logger . Trace ( "Adding {item}" , listItem ) ;
148
+ items . Add ( listItem ) ;
149
+ Logger . Info ( "Added {MediaName} to List" , listItem . Title ) ;
223
150
}
224
151
225
152
return items ;
226
153
}
227
154
155
+ public static ListItem TransformDetailsIntoListItem (
156
+ string mediaName , DateTime ? date , double ? ratingValue , string overview , string posterPath , int id )
157
+ {
158
+ var year = date != null ? date . Value . Year . ToString ( CultureInfo . InvariantCulture ) : string . Empty ;
159
+ var rating = ratingValue != null ? ratingValue . Value . ToString ( CultureInfo . CurrentCulture ) : string . Empty ;
160
+ var poster = posterPath != null ? SmallPosterBase + posterPath : null ;
161
+
162
+ return new ListItem
163
+ {
164
+ Title = mediaName ,
165
+ Year = year ,
166
+ Rating = rating ,
167
+ Overview = overview ,
168
+ Poster = poster ,
169
+ Id = id . ToString ( )
170
+ } ;
171
+ }
172
+
228
173
/// <summary>
229
174
/// Prepares the Selected Result for Download And final List View
230
175
/// </summary>
0 commit comments