def do_pop3(self, line): arg = self.arg_tokenize(line) if len(arg) < 1 : printerr("pop3 MLname") db = self.db_open() self.env = self.env_open() self._import_from_pop3('cmd', db, arg[0])
def handleMail(self, mail): # handle the message handlers = ExtensionPoint(IEmailHandler).extensions(self.env) handlers.sort(key=lambda x: x.order(), reverse=True) warnings = [] for handler in handlers: try: message = handler.invoke(mail, warnings) except Exception, e: traceback.print_exc(e) printerr(_('Handler Error. Subject: %s\n\n%s' % (str(mail.subject), str(e))))
def do_help(self, line=None): arg = self.arg_tokenize(line) if arg[0]: try: doc = getattr(self, "_help_" + arg[0]) self.print_doc (doc) except AttributeError: printerr(_("No documentation found for '%(cmd)s'", cmd=arg[0])) else: printout(_("mailarc-admin - The Trac MailArchivePlugin Administration Console " "%(version)s", version=PLUGIN_VERSION)) if not self.interactive: print printout(_("Usage: mailarc-admin </path/to/projenv> " "[command [subcommand] [option ...]]\n") ) self.print_doc(self.all_docs())
def _import_from_pop3(self, author, db, mlid): pop_server = self.env.config.get('mailarchive', 'pop3_server_' + mlid) if pop_server =='': pop_server = self.env.config.get('mailarchive', 'pop3_server') pop_user = self.env.config.get('mailarchive', 'pop3_user_' + mlid) if pop_user =='': pop_user = self.env.config.get('mailarchive', 'pop3_user') pop_password = self.env.config.get('mailarchive', 'pop3_password_' + mlid) if pop_password =='': pop_password = self.env.config.get('mailarchive', 'pop3_password') pop_delete = self.env.config.get('mailarchive', 'pop3_delete_' + mlid) if pop_delete =='': pop_delete = self.env.config.get('mailarchive', 'pop3_delete','none') #for POP SSL. Thanks! http://hidamarinonaka.jugem.cc/?eid=140 pop_ssl = self.env.config.get('mailarchive', 'pop3_ssl_' + mlid) if pop_ssl == '': pop_ssl = self.env.config.get('mailarchive', 'pop3_ssl' + mlid, 'no') if pop_server =='': printerr(_('trac.ini mailarchive pop3_server is null!')) elif pop_user == '': printerr(_('trac.ini mailarchive pop3_user is null!')) elif pop_password == '': printerr(_('trac.ini mailarchive pop3_password is null!')) printout(_("%(time)s Start Connction pop3 %(server)s:%(user)s ...", time=time.strftime("%Y/%m/%d %H:%M:%S", time.gmtime()), server=pop_server, user=pop_user)) pop = None if pop_ssl == 'yes': printout(_('POP3_SSL access...')) pop = poplib.POP3_SSL(pop_server) elif pop_ssl == 'no': printout(_('POP3 access...')) pop = poplib.POP3(pop_server) else: printerr(_('trac.ini mailarchive pop3_ssl isn\'t yes/no!')) pop.user(pop_user) pop.pass_(pop_password) num_messages = len(pop.list()[1]) counter = 1 for i in range(num_messages): #lines = ['',] #for j in pop.retr(i+1)[1]: # lines.append(j + os.linesep) #mes_text = ''.join(lines) mes_text = ''.join(['%s\n' % line for line in pop.retr(i+1)[1]]) messageid = '' exception_flag = False msg = '' try: msg = email.message_from_string(mes_text) self.import_message(msg, author, mlid, db) except Exception, e: traceback.print_exc(e) exception_flag = True self.print_import_error(msg) # delete mail if pop_delete == 'all': pop.dele(i+1) printout(_(" Delete MailServer Message")) elif pop_delete == 'imported': if exception_flag == False: pop.dele(i+1) printout(_(" Delete MailServer Message")) else: pass if counter > 10000: break counter = counter + 1
# concatenate dep list concat_files(dep_list, tempf) tempf.close() if options.output_mode == "minified": minifier = getattr(minifiers, options.minifier) if options.cli_args: minify_args = minifier.get_minify_args(tfp, output_file=options.output_file, cli_args=options.cli_args) else: minify_args = minifier.get_minify_args(tfp, output_file=options.output_file) printerr("Executing: %s" % " ".join(minify_args)) call(minify_args) os.remove(tfp) else: if options.output_file: os.rename(tfp, options.output_file) printerr("Created the file: %s" % options.output_file) else: tempf = open(temp_file[1], "r") for line in tempf: sys.stdout.write(line) tempf.close() os.remove(tfp) tfp = None