Skip to content

Commit 96425a7

Browse files
author
Joey Lorich
committed
Retab
1 parent 4b8e945 commit 96425a7

1 file changed

Lines changed: 72 additions & 68 deletions

File tree

EasyReader/Application/Controllers/Home/CSHomeViewController.m

Lines changed: 72 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,10 @@ -(BOOL)shouldAutorotate {
7070
//- (void) blockForSelector
7171
//{
7272
// }
73+
74+
75+
#pragma mark Observations
76+
7377
/**
7478
* Assigns observers for feeds
7579
*/
@@ -89,80 +93,80 @@ - (void) setupFeedsObserver
8993
*/
9094
-(ObserverBlock) feedsDidChange
9195
{
92-
ObserverBlock block = ^void(__weak CSHomeViewController *self, NSSet *old, NSSet *new) {
93-
NSMutableArray *addedFeeds = [[new allObjects] mutableCopy];
94-
NSMutableArray *removedFeeds = [[old allObjects] mutableCopy];
95-
96-
[addedFeeds removeObjectsInArray:[old allObjects]];
97-
[removedFeeds removeObjectsInArray:[new allObjects]];
98-
99-
for ( Feed *feed in removedFeeds ){
100-
[feed removeAllObservations];
101-
102-
// Remove feed items associated to the feed
103-
for( FeedItem *item in feed.feedItems ){
104-
[_feedItems removeObject:item];
105-
}
106-
107-
// Delete feed which will cascade delete feed items
108-
[feed deleteEntity];
109-
[[NSManagedObjectContext defaultContext] saveToPersistentStoreAndWait];
110-
}
96+
ObserverBlock block = ^void(__weak CSHomeViewController *self, NSSet *old, NSSet *new) {
97+
NSMutableArray *addedFeeds = [[new allObjects] mutableCopy];
98+
NSMutableArray *removedFeeds = [[old allObjects] mutableCopy];
99+
100+
[addedFeeds removeObjectsInArray:[old allObjects]];
101+
[removedFeeds removeObjectsInArray:[new allObjects]];
102+
103+
for ( Feed *feed in removedFeeds ){
104+
[feed removeAllObservations];
105+
106+
// Remove feed items associated to the feed
107+
for( FeedItem *item in feed.feedItems ){
108+
[_feedItems removeObject:item];
109+
}
110+
111+
// Delete feed which will cascade delete feed items
112+
[feed deleteEntity];
113+
[[NSManagedObjectContext defaultContext] saveToPersistentStoreAndWait];
114+
}
115+
116+
for ( Feed *feed in addedFeeds ){
117+
[feed observeRelationship:@"feedItems"
118+
changeBlock:[self feedItemsDidChange]
119+
insertionBlock:nil
120+
removalBlock:nil
121+
replacementBlock:nil];
122+
}
123+
//redraw the collection with the changes to the feed items
124+
[_feedCollectionViewDataSource sortFeedItems];
125+
[_collectionView_feedItems reloadData];
126+
_pageControl_itemIndicator.numberOfPages = [_feedItems count] < 6 ? [_feedItems count] : 5;
127+
128+
if(_currentFeedItem){
129+
[self scrollToCurrentFeedItem];
130+
[_pageControl_itemIndicator setPageControllerPageAtIndex:[_feedCollectionViewDataSource.sortedFeedItems indexOfObject:_currentFeedItem]
131+
forCollection:_feedItems];
132+
} else {
133+
[_pageControl_itemIndicator setPageControllerPageAtIndex:0 forCollection:_feedItems];
134+
}
135+
};
111136

112-
for ( Feed *feed in addedFeeds ){
113-
[feed observeRelationship:@"feedItems"
114-
changeBlock:[self feedItemsDidChange]
115-
insertionBlock:nil
116-
removalBlock:nil
117-
replacementBlock:nil];
118-
}
119-
//redraw the collection with the changes to the feed items
120-
[_feedCollectionViewDataSource sortFeedItems];
121-
[_collectionView_feedItems reloadData];
122-
_pageControl_itemIndicator.numberOfPages = [_feedItems count] < 6 ? [_feedItems count] : 5;
123-
124-
if(_currentFeedItem){
125-
[self scrollToCurrentFeedItem];
126-
[_pageControl_itemIndicator setPageControllerPageAtIndex:[_feedCollectionViewDataSource.sortedFeedItems indexOfObject:_currentFeedItem]
127-
forCollection:_feedItems];
128-
} else {
129-
[_pageControl_itemIndicator setPageControllerPageAtIndex:0 forCollection:_feedItems];
130-
}
131-
};
132-
133-
return block;
137+
return block;
134138
}
135139

136140
/**
137141
* Called when feedItems array on observed feeds change, shows new item button on page control
138142
*/
139143
-(ObserverBlock) feedItemsDidChange
140144
{
141-
ObserverBlock block = ^void(__weak CSHomeViewController *self, NSSet *old, NSSet *new) {
142-
_feedItems = [(CSFeedItemCollectionViewDataSource *)_collectionView_feedItems.dataSource feedItems];
143-
144-
if(!new) {
145-
NSLog(@"There are no feeds here");
146-
} else {
147-
NSMutableArray *addedFeedItems = [[new allObjects] mutableCopy];
148-
NSMutableArray *removedFeedItems = [[old allObjects] mutableCopy];
149-
150-
[addedFeedItems removeObjectsInArray:[old allObjects]];
151-
[removedFeedItems removeObjectsInArray:[new allObjects]];
152-
153-
for( FeedItem *item in removedFeedItems ){
154-
[_feedItems removeObject:item];
155-
}
156-
157-
for( FeedItem *item in addedFeedItems ){
158-
[_feedItems addObject:item];
159-
}
160-
161-
[_pageControl_itemIndicator.button_newItem setHidden:NO];
162-
}
163-
};
164-
165-
return block;
145+
ObserverBlock block = ^void(__weak CSHomeViewController *self, NSSet *old, NSSet *new) {
146+
_feedItems = [(CSFeedItemCollectionViewDataSource *)_collectionView_feedItems.dataSource feedItems];
147+
148+
if(!new) {
149+
NSLog(@"There are no feeds here");
150+
} else {
151+
NSMutableArray *addedFeedItems = [[new allObjects] mutableCopy];
152+
NSMutableArray *removedFeedItems = [[old allObjects] mutableCopy];
153+
154+
[addedFeedItems removeObjectsInArray:[old allObjects]];
155+
[removedFeedItems removeObjectsInArray:[new allObjects]];
156+
157+
for( FeedItem *item in removedFeedItems ){
158+
[_feedItems removeObject:item];
159+
}
160+
161+
for( FeedItem *item in addedFeedItems ){
162+
[_feedItems addObject:item];
163+
}
164+
165+
[_pageControl_itemIndicator.button_newItem setHidden:NO];
166+
}
167+
};
168+
169+
return block;
166170
}
167171

168172
#pragma mark - IBActions
@@ -181,7 +185,7 @@ -(void)setUpVerticalScrollView{
181185
NSInteger width = self.verticalScrollView.frame.size.width;
182186
NSInteger height = self.verticalScrollView.frame.size.height;
183187
self.verticalScrollView.contentSize = CGSizeMake(width, height*2);
184-
188+
185189
self.verticalScrollView.pagingEnabled =YES;
186190
self.verticalScrollView.delegate = self;
187191
}
@@ -193,7 +197,7 @@ - (void)setUpCollectionView
193197
{
194198
// NSArray *feedItems = [FeedItem MR_findAll];
195199
NSSet *feedItems = _currentUser.feedItems;
196-
200+
197201
_feedCollectionViewDataSource =
198202
[[CSFeedItemCollectionViewDataSource alloc] initWithFeedItems:feedItems
199203
reusableCellIdentifier:@"feedItemCell"

0 commit comments

Comments
 (0)