Merge with @alexk307 added comments save support

Added comments save support
Centralized save
Keep 'w' as key to save post/comment
This commit is contained in:
David Foucher
2016-01-21 01:37:17 +01:00
parent b943154174
commit 74c2008226
5 changed files with 6 additions and 41 deletions

View File

@@ -89,7 +89,7 @@ Once you are logged in your username will appear in the top-right corner of the
:``d``: Delete an existing post or comment
:``i``: Display new messages prompt
:``s``: View a list of subscribed subreddits
:``y``: View a list of your saved posts
:``w``: View a list of your saved posts
--------------
Subreddit Mode

View File

@@ -159,7 +159,6 @@ class Content(object):
data['gold'] = sub.gilded > 0
data['nsfw'] = sub.over_18
data['stickied'] = sub.stickied
data['saved'] = sub.saved
data['index'] = None # This is filled in later by the method caller
data['saved'] = sub.saved
@@ -262,11 +261,6 @@ class SubmissionContent(Content):
submission = reddit.get_submission(url, comment_sort=order)
return cls(submission, loader, indent_size, max_indent_level, order)
def save(self):
"""
Saves a submission to the authenticated user
"""
self._submission.save()
def get(self, index, n_cols=70):
"""
@@ -400,6 +394,8 @@ class SubredditContent(Content):
elif name == 'saved':
if not reddit.is_oauth_session():
raise exceptions.AccountError('Not logged in')
elif order:
submissions = reddit.user.get_submitted(sort=order)
else:
submissions = reddit.user.get_saved()
@@ -419,15 +415,6 @@ class SubredditContent(Content):
'new': reddit.get_new,
'controversial': reddit.get_controversial,
}
elif name == 'saved':
dispatch = {
None: reddit.user.get_saved,
'hot': reddit.user.get_saved,
'top': reddit.user.get_saved,
'rising': reddit.user.get_saved,
'new': reddit.user.get_saved,
'controversial': reddit.user.get_saved,
}
else:
subreddit = reddit.get_subreddit(name)
dispatch = {

View File

@@ -157,7 +157,7 @@ class Page(object):
@PageController.register('w')
@logged_in
def savepost(self):
def save(self):
data = self.content.get(self.nav.absolute_index)
if 'saved' not in data:
self.term.flash()

View File

@@ -70,14 +70,6 @@ class SubmissionPage(Page):
else:
self.term.flash()
@SubmissionController.register('y')
@logged_in
def save_comment(self):
comment = self.content.get(self.nav.absolute_index).get('object')
if comment:
with self.term.loader('Saving comment'):
comment.save()
@SubmissionController.register('c')
@logged_in
def add_comment(self):
@@ -175,7 +167,7 @@ class SubmissionPage(Page):
self.term.add_line(win, text, attr=attr)
if data['saved']:
text, attr = 'SAVED', (curses.A_BOLD | Color.BLUE)
text, attr = self.term.saved
self.term.add_line(win, text, attr=attr)
for row, text in enumerate(data['split_body'], start=offset+1):
@@ -250,7 +242,7 @@ class SubmissionPage(Page):
self.term.add_line(win, text, attr=attr)
if data['saved']:
text, attr = 'SAVED', (curses.A_BOLD | Color.RED)
text, attr = self.term.saved
self.term.add_line(win, text, attr=attr)
win.border()

View File

@@ -145,16 +145,6 @@ class SubredditPage(Page):
self.refresh_content()
@SubredditController.register('y')
@logged_in
def save_submition(self):
data = self.content.get(self.nav.absolute_index)
url = data['permalink']
with self.term.loader('Saving submission'):
page = SubmissionPage(
self.reddit, self.term, self.config, self.oauth, url=url)
page.content.save()
@SubredditController.register('s')
@logged_in
def open_subscriptions(self):
@@ -218,10 +208,6 @@ class SubredditPage(Page):
text, attr = 'NSFW', (curses.A_BOLD | Color.RED)
self.term.add_line(win, text, attr=attr)
if data['saved']:
text, attr = ' SAVED', (curses.A_BOLD | Color.BLUE)
self.term.add_line(win, text, attr=attr)
row = n_title + offset + 2
if row in valid_rows:
text = '{author}'.format(**data)