def get_config_attribute(self, name, attribute):
<EOL>config = self.config["<STR_LIT>"]<EOL>param = config[name].get(attribute, self.none_setting)<EOL>if hasattr(param, "<STR_LIT>") and name in config["<STR_LIT>"]:<EOL><INDENT>for module in config["<STR_LIT>"][name]:<EOL><INDENT>if attribute in config.get(module, {}):<EOL><INDENT>param = config[module].get(attribute)<EOL>break<EOL><DEDENT><DEDENT><DEDENT>if hasattr(param, "<STR_LIT>"):<EOL><INDENT>param = config["<STR_LIT>"].get(attribute, self.none_setting)<EOL><DEDENT>if hasattr(param, "<STR_LIT>"):<EOL><INDENT>param = config["<STR_LIT>"].get(attribute, self.none_setting)<EOL><DEDENT>if param and (attribute == "<STR_LIT>" or attribute.startswith("<STR_LIT>")):<EOL><INDENT>if param[<NUM_LIT:0>] != "<STR_LIT:#>":<EOL><INDENT>param = COLOR_NAMES.get(param.lower(), self.none_setting)<EOL><DEDENT>elif len(param) == <NUM_LIT:4>:<EOL><INDENT>param = (<EOL>"<STR_LIT:#>"<EOL>+ param[<NUM_LIT:1>]<EOL>+ param[<NUM_LIT:1>]<EOL>+ param[<NUM_LIT:2>]<EOL>+ param[<NUM_LIT:2>]<EOL>+ param[<NUM_LIT:3>]<EOL>+ param[<NUM_LIT:3>]<EOL>)<EOL><DEDENT><DEDENT>return param<EOL>
Look for the attribute in the config.  Start with the named module and
then walk up through any containing group and then try the general
section of the config.