def configure_email_settings(request): return_dict = {} url = "edit_email_settings.html" if request.method=="GET": d = mail.load_email_settings() if not d: form = admin_forms.ConfigureEmailForm() else: if d["tls"]: d["tls"] = True else: d["tls"] = False if d["email_alerts"]: d["email_alerts"] = True else: d["email_alerts"] = False form = admin_forms.ConfigureEmailForm(initial = {'email_server':d["server"], 'email_server_port':d["port"], 'tls':d["tls"], 'username':d["username"], 'email_alerts':d["email_alerts"], 'rcpt_list':d["rcpt_list"]}) else: form = admin_forms.ConfigureEmailForm(request.POST) if form.is_valid(): cd = form.cleaned_data d = {} if "email_alerts" in cd: d["email_alerts"] = cd["email_alerts"] else: d["email_alerts"] = False d["server"] = cd["email_server"] d["port"] = cd["email_server_port"] d["username"] = cd["username"] d["pswd"] = cd["pswd"] d["rcpt_list"] = cd["rcpt_list"] if "tls" in cd: d["tls"] = cd["tls"] else: d["tls"] = False #print "Saving : " #print d try: mail.save_email_settings(d) except Exception, e: iv_logging.debug("Exception when trying to save email settings : %s"%e) return django.http.HttpResponseRedirect("/show/email_settings?not_saved=1&err=%s"%str(e)) ret = mail.send_mail(cd["email_server"], cd["email_server_port"], cd["username"], cd["pswd"], cd["tls"], cd["rcpt_list"], "Test email from FractalView", "This is a test email sent by the Fractal View system in order to confirm that your email settings are working correctly.") if ret: return django.http.HttpResponseRedirect("/show/email_settings?saved=1&err=%s"%ret) else: return django.http.HttpResponseRedirect("/show/email_settings?saved=1")
def configure_email_settings(request): try: return_dict = {} url = "edit_email_settings.html" if request.method=="GET": d, err = mail.load_email_settings() if err: raise Exception(err) if not d: form = admin_forms.ConfigureEmailForm() else: if d["tls"]: d["tls"] = True else: d["tls"] = False if d["email_alerts"]: d["email_alerts"] = True else: d["email_alerts"] = False form = admin_forms.ConfigureEmailForm(initial = {'email_server':d["server"], 'email_server_port':d["port"], 'tls':d["tls"], 'username':d["username"], 'email_alerts':d["email_alerts"], 'rcpt_list':d["rcpt_list"]}) else: form = admin_forms.ConfigureEmailForm(request.POST) if form.is_valid(): cd = form.cleaned_data d = {} if "email_alerts" in cd: d["email_alerts"] = cd["email_alerts"] else: d["email_alerts"] = False d["server"] = cd["email_server"] d["port"] = cd["email_server_port"] d["username"] = cd["username"] d["pswd"] = cd["pswd"] d["rcpt_list"] = cd["rcpt_list"] if "tls" in cd: d["tls"] = cd["tls"] else: d["tls"] = False #print "Saving : " #print d ret, err = mail.save_email_settings(d) if err: raise Exception(err) ret, err = mail.send_mail(cd["email_server"], cd["email_server_port"], cd["username"], cd["pswd"], cd["tls"], cd["rcpt_list"], "Test email from IntegralStor", "This is a test email sent by the IntegralStor system in order to confirm that your email settings are working correctly.") if err: raise Exception(err) if ret: return django.http.HttpResponseRedirect("/show/email_settings?saved=1&err=%s"%ret) else: return django.http.HttpResponseRedirect("/show/email_settings?saved=1") return_dict["form"] = form return django.shortcuts.render_to_response(url, return_dict, context_instance = django.template.context.RequestContext(request)) except Exception, e: return_dict['base_template'] = "system_base.html" return_dict["page_title"] = 'Change email notification settings' return_dict['tab'] = 'email_tab' return_dict["error"] = 'Error changing email notification settings' return_dict["error_details"] = str(e) return django.shortcuts.render_to_response('logged_in_error.html', return_dict, context_instance = django.template.context.RequestContext(request))