def on_button_add_torrent_clicked(self, menuitem, use_settings=False): torrent_link = get_value_in_selected_row(self.matching_treeview, self.matching_store, column_index=3) # Save current data to dict self.store_subscription_data() if torrent_link is None: return def add_torrent_callback(torrent_download): torrent_download = TorrentDownload(torrent_download) if torrent_download.success: return textview = self.glade.get_widget("textview_messages") textbuffer = textview.get_buffer() if torrent_download.filedump is None: return readable_body = http.clean_html_body(torrent_download.filedump) textbuffer.set_text(readable_body) notebook = self.glade.get_widget("notebook_lower") notebook.set_current_page(1) # Quick hack to make sure the message is visible to the user. hpaned = self.glade.get_widget("hpaned_matching") max_pos = hpaned.get_property("max-position") hpaned.set_position(int(max_pos * 0.3)) self.gtkUI.add_torrent( torrent_link, self.subscription_data if use_settings else None, add_torrent_callback)
def on_button_add_torrent_clicked(self, menuitem, use_settings=False): torrent_link = get_value_in_selected_row(self.matching_treeview, self.matching_store, column_index=3) # Save current data to dict self.store_subscription_data() if torrent_link is None: return def add_torrent_callback(torrent_download): torrent_download = TorrentDownload(torrent_download) if torrent_download.success: return textview = self.glade.get_widget("textview_messages") textbuffer = textview.get_buffer() readable_body = http.clean_html_body(torrent_download.filedump) textbuffer.set_text(readable_body) notebook = self.glade.get_widget("notebook_lower") notebook.set_current_page(1) # Quick hack to make sure the message is visible to the user. hpaned = self.glade.get_widget("hpaned_matching") #if hpaned.get_position() == 0: max_pos = hpaned.get_property("max-position") hpaned.set_position(int(max_pos * 0.3)) self.gtkUI.add_torrent(torrent_link, self.subscription_data if use_settings else None, add_torrent_callback)
def on_button_delete_message_clicked(self, button): message_key = get_value_in_selected_row(self.email_messages_treeview, self.email_messages_store) if not message_key: return # Check that this message is not used by any subscriptions subscriptions_with_notification = [] # Go through subscriptions and find those with this notification for key in self.subscriptions.keys(): if message_key in self.subscriptions[key][ "email_notifications"].keys(): subscriptions_with_notification.append( self.subscriptions[key]["name"]) # Any subscriptions that use this message? if subscriptions_with_notification: subscription_titles = ''.join([ "* %s\n" % title for title in subscriptions_with_notification ]) md = gtk.MessageDialog( component.get("Preferences").pref_dialog, gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_INFO, gtk.BUTTONS_CLOSE) md.set_markup( "This Email Message is used by the following subscriptions:\n<b>%s</b>" "You must first remove the notication from the subscriptions " "before deleting the email message!" % subscription_titles) md.run() md.destroy() return # Delete from core config self.save_email_message(None, email_message_key=message_key, delete=True)
def on_button_delete_subscription_clicked(self, event=None, a=None, col=None): key = get_value_in_selected_row(self.subscriptions_treeview, self.subscriptions_store) if key: self.save_subscription(None, subscription_key=key, delete=True)
def on_button_send_email_clicked(self, menuitem): key = get_value_in_selected_row(self.email_messages_treeview, self.email_messages_store) # Send email torrents = ["Torrent title"] send_torrent_email(self.email_config, self.email_messages[key], subscription_data={"name": "Test subscription"}, torrent_name_list=torrents, defered=True, callback_func=self.test_email_callback)
def on_button_edit_message_clicked(self, event=None, a=None, col=None): key = get_value_in_selected_row(self.email_messages_treeview, self.email_messages_store) if key: if col and col.get_title() == 'Active': # Save to config self.email_messages[key]["active"] = not self.email_messages[key]["active"] self.save_email_message(self.email_messages[key]) else: edit_message_dialog = DialogEmailMessage(self, self.email_messages[key]) edit_message_dialog.show()
def on_button_send_email_clicked(self, menuitem): key = get_value_in_selected_row(self.email_messages_treeview, self.email_messages_store) def test_email_callback(return_value): if return_value: self.log.warn("Test email successfully sent!") else: self.log.warn("Failed to send test email!") # Send email from daemon client.yarss2.send_test_email(key).addCallback(test_email_callback)
def on_button_edit_cookie_clicked(self, Event=None, a=None, col=None): key = get_value_in_selected_row(self.cookies_treeview, self.cookies_store) if key: if col and col.get_title() == 'Active': # Save to config self.cookies[key]["active"] = not self.cookies[key]["active"] self.save_cookie(self.cookies[key]) else: dialog_cookie = DialogCookie(self, self.cookies[key]) dialog_cookie.show()
def on_button_edit_cookie_clicked(self, event=None, a=None, col=None): key = get_value_in_selected_row(self.cookies_treeview, self.cookies_store) if key: if col and col.get_title() == 'Active': # Save to config self.cookies[key]["active"] = not self.cookies[key]["active"] self.save_cookie(self.cookies[key]) else: dialog_cookie = DialogCookie(self, self.cookies[key]) dialog_cookie.show()
def on_button_edit_message_clicked(self, Event=None, a=None, col=None): key = get_value_in_selected_row(self.email_messages_treeview, self.email_messages_store) if key: if col and col.get_title() == 'Active': # Save to config self.email_messages[key]["active"] = not self.email_messages[key]["active"] self.save_email_message(self.email_messages[key]) else: edit_message_dialog = DialogEmailMessage(self, self.email_messages[key]) edit_message_dialog.show()
def on_button_edit_rssfeed_clicked(self, Event=None, a=None, col=None): key = get_value_in_selected_row(self.rssfeeds_treeview, self.rssfeeds_store) if key: if col and col.get_title() == 'Active': # Check if dummy if key == yarss_config.DUMMY_RSSFEED_KEY: return # Save to config self.rssfeeds[key]["active"] = not self.rssfeeds[key]["active"] self.save_rssfeed(self.rssfeeds[key]) else: edit_rssfeed_dialog = DialogRSSFeed(self, self.rssfeeds[key]) edit_rssfeed_dialog.show()
def on_button_edit_rssfeed_clicked(self, event=None, a=None, col=None): key = get_value_in_selected_row(self.rssfeeds_treeview, self.rssfeeds_store) if key: if col and col.get_title() == 'Active': # Check if dummy if key == yarss_config.DUMMY_RSSFEED_KEY: return # Save to config self.rssfeeds[key]["active"] = not self.rssfeeds[key]["active"] self.save_rssfeed(self.rssfeeds[key]) else: edit_rssfeed_dialog = DialogRSSFeed(self, self.rssfeeds[key]) edit_rssfeed_dialog.show()
def on_button_edit_subscription_clicked(self, event=None, a=None, col=None): key = get_value_in_selected_row(self.subscriptions_treeview, self.subscriptions_store) if key: if col and col.get_title() == 'Active': self.subscriptions[key]["active"] = not self.subscriptions[key]["active"] self.save_subscription(self.subscriptions[key]) else: edit_subscription_dialog = DialogSubscription(self, self.log, self.subscriptions[key], self.rssfeeds, self.email_messages, self.cookies) edit_subscription_dialog.show()
def on_button_edit_subscription_clicked(self, Event=None, a=None, col=None): key = get_value_in_selected_row(self.subscriptions_treeview, self.subscriptions_store) if key: if col and col.get_title() == 'Active': self.subscriptions[key]["active"] = not self.subscriptions[key]["active"] self.save_subscription(self.subscriptions[key]) else: edit_subscription_dialog = DialogSubscription(self, self.log, self.subscriptions[key], self.rssfeeds, self.get_move_completed_list(), self.get_download_location_list(), self.email_messages, self.cookies) edit_subscription_dialog.show()
def on_button_delete_rssfeed_clicked(self, event=None, a=None, col=None): key = get_value_in_selected_row(self.rssfeeds_treeview, self.rssfeeds_store) if not key: return # Check that this rss feed has no subscriptions feed_subscriptions = self.get_subscription_count_for_feeds() # Any registered subscriptions? if sum(feed_subscriptions[key]) > 0: md = Gtk.MessageDialog(component.get("Preferences").pref_dialog, Gtk.DialogFlags.DESTROY_WITH_PARENT, Gtk.MessageType.INFO, Gtk.ButtonsType.CLOSE, "This RSS Feed have subscriptions registered. Delete subscriptions first!") md.run() md.destroy() return else: self.save_rssfeed(None, rssfeed_key=key, delete=True)
def on_button_delete_rssfeed_clicked(self,Event=None, a=None, col=None): key = get_value_in_selected_row(self.rssfeeds_treeview, self.rssfeeds_store) if not key: return # Check that this rss feed has no subscriptions feed_subscriptions = self.get_subscription_count_for_feeds() # Any registered subscriptions? if sum(feed_subscriptions[key]) > 0: md = gtk.MessageDialog(component.get("Preferences").pref_dialog, gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_INFO, gtk.BUTTONS_CLOSE, "This RSS Feed have subscriptions registered. Delete subscriptions first!") md.run() md.destroy() return else: self.save_rssfeed(None, rssfeed_key=key, delete=True)
def on_button_delete_message_clicked(self, button): message_key = get_value_in_selected_row(self.email_messages_treeview, self.email_messages_store) if not message_key: return # Check that this message is not used by any subscriptions subscriptions_with_notification = [] # Go through subscriptions and find those with this notification for key in self.subscriptions.keys(): if message_key in self.subscriptions[key]["email_notifications"].keys(): subscriptions_with_notification.append(self.subscriptions[key]["name"]) # Any subscriptions that use this message? if subscriptions_with_notification: subscription_titles = ''.join(["* %s\n" % title for title in subscriptions_with_notification]) md = gtk.MessageDialog(component.get("Preferences").pref_dialog, gtk.DIALOG_DESTROY_WITH_PARENT, gtk.MESSAGE_INFO, gtk.BUTTONS_CLOSE) md.set_markup("This Email Message is used by the following subscriptions:\n<b>%s</b>" "You must first remove the notication from the subscriptions " "before deleting the email message!" % subscription_titles) md.run() md.destroy() return # Delete from core config self.save_email_message(None, email_message_key=message_key, delete=True)
def on_button_reset_last_matched(self, menuitem): key = get_value_in_selected_row(self.subscriptions_treeview, self.subscriptions_store) if key: self.subscriptions[key]["last_match"] = "" self.save_subscription(self.subscriptions[key])
def on_button_run_subscription_clicked(self, menuitem): key = get_value_in_selected_row(self.subscriptions_treeview, self.subscriptions_store) if key: client.yarss2.initiate_rssfeed_update(None, subscription_key=key)
def on_button_copy_to_clipboard(self, menuitem, index): text = get_value_in_selected_row(self.matching_treeview, self.matching_store, column_index=index) if text is not None: gtk.clipboard_get().set_text(text)
def on_button_delete_subscription_clicked(self,Event=None, a=None, col=None): key = get_value_in_selected_row(self.subscriptions_treeview, self.subscriptions_store) if key: self.save_subscription(None, subscription_key=key, delete=True)
def on_button_delete_cookie_clicked(self, button): key = get_value_in_selected_row(self.cookies_treeview, self.cookies_store) if key: # Delete from core config self.save_cookie(None, cookie_key=key, delete=True)
def on_button_copy_to_clipboard(self, menuitem, index): text = get_value_in_selected_row(self.matching_treeview, self.matching_store, column_index=index) if text is not None: Gtk.Clipboard.get(Gdk.SELECTION_CLIPBOARD).set_text(text, -1)
def on_button_add_torrent_clicked(self, menuitem, use_settings=False): torrent_link = get_value_in_selected_row(self.matching_treeview, self.matching_store, column_index=3) self.button_add_torrent_clicked(torrent_link, use_settings)