def completion_set(self, the_input): """Completion for /set""" args = common.shell_split(the_input.text) n = the_input.get_argument_position(quoted=True) if n >= len(args): args.append('') if n == 1: if '|' in args[1]: plugin_name, section = args[1].split('|')[:2] if not plugin_name in self.plugin_manager.plugins: return the_input.new_completion([], n, quotify=True) plugin = self.plugin_manager.plugins[plugin_name] end_list = [ '%s|%s' % (plugin_name, section) for section in plugin.config.sections() ] else: end_list = set(config.options('Poezio')) end_list.update(config.default.get('Poezio', {})) end_list = list(end_list) end_list.sort() elif n == 2: if '|' in args[1]: plugin_name, section = args[1].split('|')[:2] if not plugin_name in self.plugin_manager.plugins: return the_input.new_completion([''], n, quotify=True) plugin = self.plugin_manager.plugins[plugin_name] end_list = set(plugin.config.options(section or plugin_name)) if plugin.config.default: end_list.update( plugin.config.default.get(section or plugin_name, {})) end_list = list(end_list) end_list.sort() elif not config.has_option('Poezio', args[1]): if config.has_section(args[1]): end_list = config.options(args[1]) end_list.append('') else: end_list = [] else: end_list = [str(config.get(args[1], '')), ''] elif n == 3: if '|' in args[1]: plugin_name, section = args[1].split('|')[:2] if not plugin_name in self.plugin_manager.plugins: return the_input.new_completion([''], n, quotify=True) plugin = self.plugin_manager.plugins[plugin_name] end_list = [ str(plugin.config.get(args[2], '', section or plugin_name)), '' ] else: if not config.has_section(args[1]): end_list = [''] else: end_list = [str(config.get(args[2], '', args[1])), ''] else: return return the_input.new_completion(end_list, n, quotify=True)
def completion_set(self, the_input): """Completion for /set""" args = common.shell_split(the_input.text) n = the_input.get_argument_position(quoted=True) if n >= len(args): args.append("") if n == 1: if "|" in args[1]: plugin_name, section = args[1].split("|")[:2] if not plugin_name in self.plugin_manager.plugins: return the_input.new_completion([], n, quotify=True) plugin = self.plugin_manager.plugins[plugin_name] end_list = ["%s|%s" % (plugin_name, section) for section in plugin.config.sections()] else: end_list = set(config.options("Poezio")) end_list.update(config.default.get("Poezio", {})) end_list = list(end_list) end_list.sort() elif n == 2: if "|" in args[1]: plugin_name, section = args[1].split("|")[:2] if not plugin_name in self.plugin_manager.plugins: return the_input.new_completion([""], n, quotify=True) plugin = self.plugin_manager.plugins[plugin_name] end_list = set(plugin.config.options(section or plugin_name)) if plugin.config.default: end_list.update(plugin.config.default.get(section or plugin_name, {})) end_list = list(end_list) end_list.sort() elif not config.has_option("Poezio", args[1]): if config.has_section(args[1]): end_list = config.options(args[1]) end_list.append("") else: end_list = [] else: end_list = [str(config.get(args[1], "")), ""] elif n == 3: if "|" in args[1]: plugin_name, section = args[1].split("|")[:2] if not plugin_name in self.plugin_manager.plugins: return the_input.new_completion([""], n, quotify=True) plugin = self.plugin_manager.plugins[plugin_name] end_list = [str(plugin.config.get(args[2], "", section or plugin_name)), ""] else: if not config.has_section(args[1]): end_list = [""] else: end_list = [str(config.get(args[2], "", args[1])), ""] else: return return the_input.new_completion(end_list, n, quotify=True)
def command_set(self, args): """ /set [module|][section] <option> [value] """ if len(args) == 1: option = args[0] value = config.get(option) info = ('%s=%s' % (option, value), 'Info') elif len(args) == 2: if '|' in args[0]: plugin_name, section = args[0].split('|')[:2] if not section: section = plugin_name option = args[1] if not plugin_name in self.plugin_manager.plugins: file_name = self.plugin_manager.plugins_conf_dir file_name = os.path.join(file_name, plugin_name + '.cfg') plugin_config = PluginConfig(file_name, plugin_name) else: plugin_config = self.plugin_manager.plugins[plugin_name].config value = plugin_config.get(option, default='', section=section) info = ('%s=%s' % (option, value), 'Info') else: possible_section = args[0] if config.has_section(possible_section): section = possible_section option = args[1] value = config.get(option, section=section) info = ('%s=%s' % (option, value), 'Info') else: option = args[0] value = args[1] info = config.set_and_save(option, value) self.trigger_configuration_change(option, value) elif len(args) == 3: if '|' in args[0]: plugin_name, section = args[0].split('|')[:2] if not section: section = plugin_name option = args[1] value = args[2] if not plugin_name in self.plugin_manager.plugins: file_name = self.plugin_manager.plugins_conf_dir file_name = os.path.join(file_name, plugin_name + '.cfg') plugin_config = PluginConfig(file_name, plugin_name) else: plugin_config = self.plugin_manager.plugins[plugin_name].config info = plugin_config.set_and_save(option, value, section) else: section = args[0] option = args[1] value = args[2] info = config.set_and_save(option, value, section) self.trigger_configuration_change(option, value) else: return self.command_help('set') self.call_for_resize() self.information(*info)
def completion_set_default(self, the_input): """ Completion for /set_default """ args = common.shell_split(the_input.text) n = the_input.get_argument_position(quoted=True) if n >= len(args): args.append('') if n == 1 or (n == 2 and config.has_section(args[1])): return self.completion_set(the_input) return []
def completion_set_default(self, the_input): """ Completion for /set_default """ args = common.shell_split(the_input.text) n = the_input.get_argument_position(quoted=True) if n >= len(args): args.append("") if n == 1 or (n == 2 and config.has_section(args[1])): return self.completion_set(the_input) return []
def get_default_args(self, merge=None): """ Create and return a default argument hash. Optionally merge the specified dictionary into the result. """ # No backend specific defaults should be here, those values # would be defined within the relevant backend module or in # the outline configuration file. defaults = {} # By default all layers are registerd. Registered layers show up # as discrete layers. Unregisterd layers are generally embedded # in registered layers. defaults["register"] = True # The default chunk size. defaults["chunk"] = 1 # A null frame range indicates the event # will default to the overall frame range # defined in the parent outline. defaults["range"] = None # Now apply any settings found in the configuration file. # This settings override the procedural defaults set in # the layer constructur using default_arg method. if config.has_section(self.__class__.__name__): for key, value in config.items(self.__class__.__name__): defaults[key] = value # Now apply user supplied arguments. These arguments override # both the defaults and the class condifuration file. if merge: defaults.update(merge) return defaults
def command_set(self, args): """ /set [module|][section] <option> [value] """ if args is None or len(args) == 0: config_dict = config.to_dict() lines = [] theme = get_theme() for section_name, section in config_dict.items(): lines.append( '\x19%(section_col)s}[%(section)s]\x19o' % { 'section': section_name, 'section_col': dump_tuple(theme.COLOR_INFORMATION_TEXT), }) for option_name, option_value in section.items(): lines.append( '%s\x19%s}=\x19o%s' % (option_name, dump_tuple( theme.COLOR_REVISIONS_MESSAGE), option_value)) info = ('Current options:\n%s' % '\n'.join(lines), 'Info') elif len(args) == 1: option = args[0] value = config.get(option) if value is None and '=' in option: args = option.split('=', 1) info = ('%s=%s' % (option, value), 'Info') if len(args) == 2: if '|' in args[0]: plugin_name, section = args[0].split('|')[:2] if not section: section = plugin_name option = args[1] if not plugin_name in self.plugin_manager.plugins: file_name = self.plugin_manager.plugins_conf_dir file_name = os.path.join(file_name, plugin_name + '.cfg') plugin_config = PluginConfig(file_name, plugin_name) else: plugin_config = self.plugin_manager.plugins[plugin_name].config value = plugin_config.get(option, default='', section=section) info = ('%s=%s' % (option, value), 'Info') else: possible_section = args[0] if config.has_section(possible_section): section = possible_section option = args[1] value = config.get(option, section=section) info = ('%s=%s' % (option, value), 'Info') else: option = args[0] value = args[1] info = config.set_and_save(option, value) self.trigger_configuration_change(option, value) elif len(args) == 3: if '|' in args[0]: plugin_name, section = args[0].split('|')[:2] if not section: section = plugin_name option = args[1] value = args[2] if not plugin_name in self.plugin_manager.plugins: file_name = self.plugin_manager.plugins_conf_dir file_name = os.path.join(file_name, plugin_name + '.cfg') plugin_config = PluginConfig(file_name, plugin_name) else: plugin_config = self.plugin_manager.plugins[plugin_name].config info = plugin_config.set_and_save(option, value, section) else: if args[0] == '.': name = safeJID(self.current_tab().name).bare if not name: self.information('Invalid tab to use the "." argument.', 'Error') return section = name else: section = args[0] option = args[1] value = args[2] info = config.set_and_save(option, value, section) self.trigger_configuration_change(option, value) elif len(args) > 3: return self.command_help('set') self.information(*info)
from sqlalchemy import create_engine from sqlalchemy.orm import scoped_session, sessionmaker from sqlalchemy.ext.declarative import declarative_base from config import config user, password, host, database = config.get('database', 'user'), config.get('database', 'password'), config.get('database', 'host'), config.get('database', 'database') engine = create_engine('mysql://' + user + ':' + password + '@' + host + '/' + database, convert_unicode=True) db_session = scoped_session(sessionmaker(autocommit=False, autoflush=False, bind=engine)) Base = declarative_base() Base.query = db_session.query_property() using_redis = config.has_section("redis") r = None if using_redis: import redis r = redis.StrictRedis(config.get('redis', 'host'), int(config.get('redis', 'port'))) def init_db(): import pastepm.models Base.metadata.create_all(bind=engine) def db_unique(model, **kwargs): instance = db_session.query(model).filter_by(**kwargs).first() if instance: return instance else: instance = model(**kwargs)
def command_set(self, args): """ /set [module|][section] <option> [value] """ if args is None or len(args) == 0: config_dict = config.to_dict() lines = [] theme = get_theme() for section_name, section in config_dict.items(): lines.append('\x19%(section_col)s}[%(section)s]\x19o' % { 'section': section_name, 'section_col': dump_tuple(theme.COLOR_INFORMATION_TEXT), }) for option_name, option_value in section.items(): lines.append('%s\x19%s}=\x19o%s' % (option_name, dump_tuple(theme.COLOR_REVISIONS_MESSAGE), option_value)) info = ('Current options:\n%s' % '\n'.join(lines), 'Info') elif len(args) == 1: option = args[0] value = config.get(option) if value is None and '=' in option: args = option.split('=', 1) info = ('%s=%s' % (option, value), 'Info') if len(args) == 2: if '|' in args[0]: plugin_name, section = args[0].split('|')[:2] if not section: section = plugin_name option = args[1] if not plugin_name in self.plugin_manager.plugins: file_name = self.plugin_manager.plugins_conf_dir file_name = os.path.join(file_name, plugin_name + '.cfg') plugin_config = PluginConfig(file_name, plugin_name) else: plugin_config = self.plugin_manager.plugins[plugin_name].config value = plugin_config.get(option, default='', section=section) info = ('%s=%s' % (option, value), 'Info') else: possible_section = args[0] if config.has_section(possible_section): section = possible_section option = args[1] value = config.get(option, section=section) info = ('%s=%s' % (option, value), 'Info') else: option = args[0] value = args[1] info = config.set_and_save(option, value) self.trigger_configuration_change(option, value) elif len(args) == 3: if '|' in args[0]: plugin_name, section = args[0].split('|')[:2] if not section: section = plugin_name option = args[1] value = args[2] if not plugin_name in self.plugin_manager.plugins: file_name = self.plugin_manager.plugins_conf_dir file_name = os.path.join(file_name, plugin_name + '.cfg') plugin_config = PluginConfig(file_name, plugin_name) else: plugin_config = self.plugin_manager.plugins[plugin_name].config info = plugin_config.set_and_save(option, value, section) else: if args[0] == '.': name = safeJID(self.current_tab().name).bare if not name: self.information(_('Invalid tab to use the "." argument.'), _('Error')) return section = name else: section = args[0] option = args[1] value = args[2] info = config.set_and_save(option, value, section) self.trigger_configuration_change(option, value) elif len(args) > 3: return self.command_help('set') self.call_for_resize() self.information(*info)
from paypal import PayPalConfig, PayPalInterface from config import config using_paypal = config.has_section('paypal') paypal = None if using_paypal: paypal_config = PayPalConfig( API_USERNAME=config.get('paypal', 'username'), API_PASSWORD=config.get('paypal', 'password'), API_SIGNATURE=config.get('paypal', 'signature') ) paypal = PayPalInterface(config=paypal_config)