Skip to content

Commit 521908e

Browse files
committed
Added categories
1 parent 393fa31 commit 521908e

File tree

1 file changed

+22
-9
lines changed

1 file changed

+22
-9
lines changed

PG5602_H24-4/Views/ArticleView/ArticleDetailedView.swift

+22-9
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,13 @@ struct ArticleDetailView: View {
1616
@State var saveMessasge = ""
1717
@State var selectedCategory: Category? = nil
1818
@State var categories: [Category] = [
19-
Category(name: "Technology"),
20-
Category(name: "Economy"),
21-
Category(name: "Politics"),
19+
Category(name: "Business"),
20+
Category(name: "Entertainment"),
21+
Category(name: "General"),
22+
Category(name: "Health"),
23+
Category(name: "Science"),
2224
Category(name: "Sports"),
23-
Category(name: "News"),
25+
Category(name: "Technology")
2426
]
2527

2628
var body: some View {
@@ -117,17 +119,26 @@ struct ArticleDetailView: View {
117119
}
118120

119121
}
122+
// .onAppear {
123+
// checkIfArticleIsSaved()
124+
// checkIfCategoryIsChosen()
125+
// if isArticleSaved {
126+
// let savedArticles = Article.fetchAll(in: modelContext)
127+
// if let storedArticle = savedArticles.first(where: { $0.url == article.url }) {
128+
// selectedCategory = storedArticle.category
129+
// }
130+
// }
131+
// }
120132
.onAppear {
121133
checkIfArticleIsSaved()
122-
checkIfCategoryIsChosen()
123134
if isArticleSaved {
124135
let savedArticles = Article.fetchAll(in: modelContext)
125136
if let storedArticle = savedArticles.first(where: { $0.url == article.url }) {
126137
selectedCategory = storedArticle.category
138+
isCategoryChosen = selectedCategory != nil
127139
}
128140
}
129141
}
130-
131142
}
132143
}
133144

@@ -152,7 +163,7 @@ struct ArticleDetailView: View {
152163
saveArticleWithCategory()
153164
}
154165
}
155-
166+
156167
func saveArticleWithCategory() {
157168
let storedArticle = Article(
158169
article: article,
@@ -161,14 +172,16 @@ struct ArticleDetailView: View {
161172
)
162173

163174
if let category = selectedCategory {
164-
category.articles.append(storedArticle);
165-
modelContext.insert(category);
175+
storedArticle.category = category
176+
category.articles.append(storedArticle)
177+
modelContext.insert(category)
166178
}
167179

168180
modelContext.insert(storedArticle)
169181
do {
170182
try modelContext.save()
171183
isArticleSaved = true
184+
print("Article \(article.title) with category \(selectedCategory?.name ?? "") saved")
172185
} catch {
173186
saveMessasge = "Failed to save article: \(error.localizedDescription)"
174187
}

0 commit comments

Comments
 (0)