public override void Save(SavingMode mode)
{
_successfulFormCreation = false;
// Creating registration form if necessary.
if (GetReferenceCount("RegistrationForm") == 0 && Convert.ToBoolean(this["RequiresRegistration"]))
{
try
{
var regFormFolder = Parent.GetPropertySafely("RegistrationFolder") as NodeList<Node>;
if (regFormFolder != null)
{
var formFolder = regFormFolder[0];
var formName = String.Format("{0}_{1}", ParentName, this["Name"]);
if (Content.Load(formFolder.Path + "/" + formName) == null)
{
var regForm = Content.CreateNew("EventRegistrationForm", formFolder, formName);
regForm["Name"] = formName;
//regForm["ContentTypes"] = LoadNode("/Root/System/Schema/ContentTypes/GenericContent/ListItem/FormItem/EventRegistrationFormItem");
regForm["AllowedChildTypes"] = ContentType.GetByName("EventRegistrationFormItem");
regForm["EmailList"] = !String.IsNullOrEmpty(this["OwnerEmail"].ToString()) ? this["OwnerEmail"].ToString() : String.Empty;
regForm["EmailTemplate"] = !String.IsNullOrEmpty(this["EmailTemplate"].ToString()) ? this["EmailTemplate"] : "{0}";
regForm["EmailTemplateSubmitter"] = !String.IsNullOrEmpty(this["EmailTemplateSubmitter"].ToString()) ? this["EmailTemplateSubmitter"] : "{0}";
regForm["EmailFrom"] = !String.IsNullOrEmpty(this["EmailFrom"].ToString()) ? this["EmailFrom"] : "[email protected]";
regForm["EmailFromSubmitter"] = !String.IsNullOrEmpty(this["EmailFromSubmitter"].ToString()) ? this["EmailFromSubmitter"] : "[email protected]";
regForm["EmailField"] = !String.IsNullOrEmpty(this["EmailField"].ToString()) ? this["EmailField"] : "[email protected]";
regForm.Save();
AddReference("RegistrationForm", LoadNode(regForm.Id));
_successfulFormCreation = true;
}
}
}
catch (Exception ex)
{
throw ex;
}
}
base.Save(mode);
}