+def _search_books(case_sensitive, args):
+ values = {}
+ for column in 'title', 'series', 'archive', 'file':
+ value = getattr(args, column)
+ if value:
+ values[column] = unicode(value, default_encoding)
+ if case_sensitive is None:
+ case_sensitive = _guess_case_sensitivity(values)
+ for book in search_books(args.search_type, case_sensitive, values,
+ orderBy='title'):
+ print book.title.encode(default_encoding)
+ for author in book.authors:
+ names = filter(None,
+ (author.surname, author.name, author.misc_name))
+ fullname = u' '.join(names)
+ print fullname.encode(default_encoding),
+ print
+
+