def _configure_settings_server(self): cb_subscribed = self.gtk_builder_get('checkbutton_alert_subscribe') cb_reject_after_creds = self.gtk_builder_get( 'checkbutton_reject_after_credentials') entry_beef_hook = self.gtk_builder_get('entry_server_beef_hook') server_config = self.application.rpc( 'config/get', ['beef.hook_url', 'server.require_id', 'server.secret_id']) entry_beef_hook.set_property('text', server_config.get('beef.hook_url', '')) self.config['server_config']['server.require_id'] = server_config[ 'server.require_id'] self.config['server_config']['server.secret_id'] = server_config[ 'server.secret_id'] # older versions of GObject.signal_handler_find seem to have a bug which cause a segmentation fault in python if GObject.pygobject_version < (3, 10): cb_subscribed.set_property( 'active', self.application.rpc('campaign/alerts/is_subscribed', self.config['campaign_id'])) cb_reject_after_creds.set_property( 'active', self.application.get_graphql_campaign()['maxCredentials']) else: with gui_utilities.gobject_signal_blocked(cb_subscribed, 'toggled'): cb_subscribed.set_property( 'active', self.application.rpc('campaign/alerts/is_subscribed', self.config['campaign_id'])) cb_reject_after_creds.set_property( 'active', self.application.get_graphql_campaign()['maxCredentials']) cb_reject_after_creds.set_sensitive( self.config['server_config']['server.require_id'])
def interact(self): cb_subscribed = self.gtk_builder_get('checkbutton_alert_subscribe') cb_reject_after_creds = self.gtk_builder_get('checkbutton_reject_after_credentials') entry_beef_hook = self.gtk_builder_get('entry_server_beef_hook') server_config = self.parent.rpc('config/get', ['beef.hook_url', 'server.require_id', 'server.secret_id']) entry_beef_hook.set_property('text', server_config.get('beef.hook_url', '')) self.config['server_config']['server.require_id'] = server_config['server.require_id'] self.config['server_config']['server.secret_id'] = server_config['server.secret_id'] # older versions of GObject.signal_handler_find seem to have a bug which cause a segmentation fault in python if GObject.pygobject_version < (3, 10): cb_subscribed.set_property('active', self.parent.rpc('campaign/alerts/is_subscribed', self.config['campaign_id'])) cb_reject_after_creds.set_property('active', self.parent.rpc.remote_table_row('campaigns', self.config['campaign_id'])['reject_after_credentials']) else: with gui_utilities.gobject_signal_blocked(cb_subscribed, 'toggled'): cb_subscribed.set_property('active', self.parent.rpc('campaign/alerts/is_subscribed', self.config['campaign_id'])) cb_reject_after_creds.set_property('active', self.parent.rpc.remote_table_row('campaigns', self.config['campaign_id'])['reject_after_credentials']) cb_reject_after_creds.set_sensitive(self.config['server_config']['server.require_id']) self.dialog.show_all() response = self.dialog.run() if response != Gtk.ResponseType.CANCEL: self.objects_save_to_config() self.verify_sms_settings() self.parent.rpc('config/set', {'beef.hook_url': entry_beef_hook.get_property('text').strip()}) self.dialog.destroy() return response
def interact(self): cb_subscribed = self.gtk_builder_get('checkbutton_alert_subscribe') cb_reject_after_creds = self.gtk_builder_get( 'checkbutton_reject_after_credentials') entry_beef_hook = self.gtk_builder_get('entry_server_beef_hook') server_config = self.parent.rpc( 'config/get', ['beef.hook_url', 'server.require_id', 'server.secret_id']) entry_beef_hook.set_property('text', server_config.get('beef.hook_url', '')) self.config['server_config']['server.require_id'] = server_config[ 'server.require_id'] self.config['server_config']['server.secret_id'] = server_config[ 'server.secret_id'] # older versions of GObject.signal_handler_find seem to have a bug which cause a segmentation fault in python if GObject.pygobject_version < (3, 10): cb_subscribed.set_property( 'active', self.parent.rpc('campaign/alerts/is_subscribed', self.config['campaign_id'])) cb_reject_after_creds.set_property( 'active', self.parent.rpc.remote_table_row( 'campaigns', self.config['campaign_id'])['reject_after_credentials']) else: with gui_utilities.gobject_signal_blocked(cb_subscribed, 'toggled'): cb_subscribed.set_property( 'active', self.parent.rpc('campaign/alerts/is_subscribed', self.config['campaign_id'])) cb_reject_after_creds.set_property( 'active', self.parent.rpc.remote_table_row( 'campaigns', self.config['campaign_id']) ['reject_after_credentials']) cb_reject_after_creds.set_sensitive( self.config['server_config']['server.require_id']) self.dialog.show_all() response = self.dialog.run() if response != Gtk.ResponseType.CANCEL: self.objects_save_to_config() self.verify_sms_settings() self.parent.rpc('config/set', { 'beef.hook_url': entry_beef_hook.get_property('text').strip() }) self.dialog.destroy() return response
def signal_expander_activate_message_type(self, expander): if expander.get_expanded(): # ignore attempts to un-expand expander.set_expanded(False) return if expander == self.gobjects["expander_calendar_invite_settings"]: message_type = "calendar_invite" self.gobjects["expander_email_settings"].set_expanded(False) elif expander == self.gobjects["expander_email_settings"]: message_type = "email" self.gobjects["expander_calendar_invite_settings"].set_expanded(False) button = self.message_type.buttons[message_type] with gui_utilities.gobject_signal_blocked(button, "toggled"): self.message_type.set_active(message_type)
def signal_expander_activate_message_type(self, expander): if expander.get_expanded(): # ignore attempts to un-expand expander.set_expanded(False) return if expander == self.gobjects['expander_calendar_invite_settings']: message_type = 'calendar_invite' self.gobjects['expander_email_settings'].set_expanded(False) elif expander == self.gobjects['expander_email_settings']: message_type = 'email' self.gobjects['expander_calendar_invite_settings'].set_expanded(False) button = self.message_type.buttons[message_type] with gui_utilities.gobject_signal_blocked(button, 'toggled'): self.message_type.set_active(message_type)
def _configure_settings_server(self): cb_subscribed = self.gtk_builder_get('checkbutton_alert_subscribe') cb_reject_after_creds = self.gtk_builder_get('checkbutton_reject_after_credentials') entry_beef_hook = self.gtk_builder_get('entry_server_beef_hook') server_config = self.application.rpc('config/get', ['beef.hook_url', 'server.require_id', 'server.secret_id']) entry_beef_hook.set_property('text', server_config.get('beef.hook_url', '')) self.config['server_config']['server.require_id'] = server_config['server.require_id'] self.config['server_config']['server.secret_id'] = server_config['server.secret_id'] # older versions of GObject.signal_handler_find seem to have a bug which cause a segmentation fault in python if GObject.pygobject_version < (3, 10): cb_subscribed.set_property('active', self.application.rpc('campaign/alerts/is_subscribed', self.config['campaign_id'])) cb_reject_after_creds.set_property('active', self.application.rpc.remote_table_row('campaigns', self.config['campaign_id']).reject_after_credentials) else: with gui_utilities.gobject_signal_blocked(cb_subscribed, 'toggled'): cb_subscribed.set_property('active', self.application.rpc('campaign/alerts/is_subscribed', self.config['campaign_id'])) cb_reject_after_creds.set_property('active', self.application.rpc.remote_table_row('campaigns', self.config['campaign_id']).reject_after_credentials) cb_reject_after_creds.set_sensitive(self.config['server_config']['server.require_id'])
def signal_combo_changed(self, combobox): new_dir = combobox.get_active_text() if not new_dir: return if not self.path_mod.isabs(new_dir): new_dir = self.get_abspath(new_dir) entry = combobox.get_child() if not self.get_is_folder(new_dir): entry.set_property('primary-icon-name', 'dialog-warning') return try: with gui_utilities.gobject_signal_blocked(combobox, 'changed'): self.change_cwd(new_dir) except (IOError, OSError): entry.set_property('primary-icon-name', 'dialog-warning') else: entry.set_property('primary-icon-name', 'gtk-apply') entry.set_text(new_dir)