//----------------------------------------------------------------- #region -----------------PopulateXmlNodeFromModule----------------- //----------------------------------------------------------------- //PopulateXmlNodeFromModule //----------------------------------------------------------------- private XmlElement PopulateXmlNodeFromModule(UsersDataGlobalOptions usersDataModule, XmlElement node) { UsersDataGlobalOptions defaultModule = new UsersDataGlobalOptions(); /****************************************************/ Type myType = typeof(UsersDataGlobalOptions); PropertyInfo[] piT = myType.GetProperties(); object moduleValue; object defaultValue; foreach (PropertyInfo myPropInfo in piT) { if (myPropInfo.CanWrite) { moduleValue = myPropInfo.GetValue(usersDataModule, null); defaultValue = myPropInfo.GetValue(defaultModule, null); if (moduleValue.ToString() != defaultValue.ToString()) { AddAttribute(node, myPropInfo.Name, moduleValue); } } } return(node); }
//--------------------------------------------------------------------------- #endregion #region ---------------------------RegisterInSms--------------------------- //--------------------------------------------------------------------------- public static void RegisterInSms(UsersDataEntity usersDataObject) { UsersDataGlobalOptions userDataModule = UsersDataGlobalOptions.GetType(usersDataObject.ModuleTypeID); Languages langID = (Languages)SiteSettings.Languages_DefaultLanguageID; SMSNumbersFactory.RegisterInSms(userDataModule.ModuleTypeID, usersDataObject.Mobile, langID, userDataModule.SmsAutomaticActivation); }
//------------------------------------------ #endregion #region ---------------------------RegisterInMailList--------------------------- //--------------------------------------------------------------------------- public static void RegisterInMailList(UsersDataEntity usersDataObject) { UsersDataGlobalOptions userDataModule = UsersDataGlobalOptions.GetType(usersDataObject.ModuleTypeID); Languages langID = (Languages)SiteSettings.Languages_DefaultLanguageID; MailListUsersFactory.RegisterInMailList(userDataModule.ModuleTypeID, usersDataObject.Email, langID, userDataModule.MailListAutomaticActivation, userDataModule.MailListSendingMailActivation); }
//---------------------------------------------------------------------------- #endregion #region --------------------------InisializeUsersDataModuleMetaTags---------------------------- //---------------------------------------------------------------------------- //InisializeUsersDataModuleMetaTags //---------------------------------------------------------------------------- public static void InisializeUsersDataModuleMetaTags(UsersDataGlobalOptions currentModule) { DCMetaBuilder metaBuilder = DCMetaBuilder.Instance; string moduleTitle = currentModule.GetModuleTitle(); metaBuilder.Title = moduleTitle; metaBuilder.Section = currentModule.GetModuleTitle(); metaBuilder.Keywords = currentModule.ModuleMetaKeyWords; metaBuilder.Description = currentModule.ModuleMetaDescription; metaBuilder.GlobalLastModification = SiteSettings.Site_LastModification; }
//----------------------------------------------------------------- public bool SaveModule(UsersDataGlobalOptions usersDataModule) { XmlNodeList nodeList = XmlDoc.SelectNodes("/SiteUsersDataModules/Module[@ModuleTypeID='" + usersDataModule.ModuleTypeID + "']"); if (nodeList.Count == 0) { return(AddModule(usersDataModule)); } else { return(UpdateModule(usersDataModule)); } }
//------------------------------------------------------------------ public bool UpdateModule(UsersDataGlobalOptions usersDataModule) { bool res = false; XmlNodeList nodesList = XmlDoc.SelectNodes("/SiteUsersDataModules/Module[@ModuleTypeID='" + usersDataModule.ModuleTypeID + "']"); if (nodesList.Count == 1) { XmlElement oldModuleNode = (XmlElement)nodesList[0]; oldModuleNode.Attributes.RemoveAll(); PopulateXmlNodeFromModule(usersDataModule, oldModuleNode); //XmlDoc.Save(DCServer.MapPath("~") + SiteDesign.ModulesOptionsConfigs+"SiteUsersDataModules.config"); SiteConfigurationManager.UpdateSiteUsersDataModules(XmlDoc); res = true; } return(res); }
public bool AddModule(UsersDataGlobalOptions usersDataModule) { bool res = false; XmlNodeList nodeList = XmlDoc.SelectNodes("/SiteUsersDataModules/Module[@ModuleTypeID='" + usersDataModule.ModuleTypeID + "']"); if (nodeList.Count == 0) { //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx XmlElement xmlNewModule = XmlDoc.CreateElement("Module"); xmlNewModule = PopulateXmlNodeFromModule(usersDataModule, xmlNewModule); XmlNode commonParent = XmlDoc.SelectSingleNode("/SiteUsersDataModules"); commonParent.AppendChild(xmlNewModule); //XmlDoc.Save(DCServer.MapPath("~") + SiteDesign.ModulesOptionsConfigs+"SiteUsersDataModules.config"); SiteConfigurationManager.UpdateSiteUsersDataModules(XmlDoc); //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx res = true; } return(res); }
//------------------------------------------ #endregion public static MasterModule GetType(int moduleType) { if (moduleType < 500) { return((MasterModule)ItemsModulesOptions.GetType(moduleType)); } else if (moduleType < 600) { return((MasterModule)MessagesModuleOptions.GetType(moduleType)); } else if (moduleType < 700) { return((MasterModule)UsersDataGlobalOptions.GetType(moduleType)); } else { return(new MasterModule()); } }
public static string GetUsersDataModuleText(UsersDataGlobalOptions usersDataModuleOptions, string resourceKey) { //check itemsModule has resource file or works with default resource file string resourceFile = usersDataModuleOptions.ResourceFile; if (string.IsNullOrEmpty(usersDataModuleOptions.ResourceFile)) { resourceFile = usersDataModuleOptions.DefaultResourceFile; } //------------------------------------------------------------------ //Get value of resource key string resourceValue = GetText(resourceFile, resourceKey); if (string.IsNullOrEmpty(resourceValue))//this case happen if the itemsModule has a resource file but it hasn't this resourcr key { resourceValue = GetText(usersDataModuleOptions.DefaultResourceFile, resourceKey); } //------------------------------------------------------------------ return(resourceValue); }
//----------------------------------------------------------------- #region -----------------PopulateModuleFromXmlNode----------------- //----------------------------------------------------------------- private UsersDataGlobalOptions PopulateModuleFromXmlNode(XmlNode node) { UsersDataGlobalOptions usersDataModule = new UsersDataGlobalOptions(); /****************************************************/ //find all the public properties of list Type using reflection PropertyInfo[] piT = typeof(UsersDataGlobalOptions).GetProperties(); // Get the Type object corresponding to MyClass. Type myType = typeof(UsersDataGlobalOptions); PropertyInfo myPropInfo; string exceptions = ""; foreach (XmlAttribute attr in node.Attributes) { try { myPropInfo = myType.GetProperty(attr.Name); if (myPropInfo.CanWrite) { if (myPropInfo.PropertyType.BaseType == typeof(System.Enum)) { //int intVal = Convert.ToInt32(attr.Value); myPropInfo.SetValue(usersDataModule, Enum.Parse(myPropInfo.PropertyType, attr.Value), null); //Enum.Parse(typeof(myPropInfo.), "FirstName"); } else { myPropInfo.SetValue(usersDataModule, Convert.ChangeType(attr.Value, myPropInfo.PropertyType), null); } } } catch (Exception ex) { // throw new Exception(attr.Name); } } return(usersDataModule); }
//---------------------------------------------------------------------------------------------------------- //---------------------------------------------------------------------------------------------------------- public static void AddUserRelatedPages(UsersDataEntity usersDataObject) { UsersDataGlobalOptions usersModuleOptions = UsersDataGlobalOptions.GetType(usersDataObject.ModuleTypeID); bool HasProfilePage = usersModuleOptions.HasProfilePage; bool doUpdate = false; //*-------------------------------------------------------- if (HasProfilePage && usersDataObject.ProfilePageID <= 0) { SubSiteHandler.AddProfilePageDetails(usersDataObject); doUpdate = true; } //*-------------------------------------------------------- if (UsersDataFactory.IsSubSubSiteOwner(usersDataObject.UserType) && string.IsNullOrEmpty(usersDataObject.SiteStaticPages)) { SubSiteHandler.AddSubSitePages(usersDataObject); doUpdate = true; } //*-------------------------------------------------------- if (doUpdate) { UsersDataFactory.Update(usersDataObject); } }
public static string GetUsersDataModuleText(int usersDataModuleType, string resourceKey) { UsersDataGlobalOptions usersDataModuleOptions = UsersDataGlobalOptions.GetType(usersDataModuleType); return(GetUsersDataModuleText(usersDataModuleOptions, resourceKey)); }
//------------------------------------------------------------------ public bool UpdateModule(UsersDataGlobalOptions usersDataModule) { return(usersModules.UpdateModule(usersDataModule)); }
//------------------------------------------------------------------ public bool AddModule(UsersDataGlobalOptions usersDataModule) { return(usersModules.AddModule(usersDataModule)); }
//------------------------------------------------------------------ //********************************* //********************************* //********************************* //------------------------------------------------------------------ public bool SaveModule(UsersDataGlobalOptions usersDataModule) { return(usersModules.SaveModule(usersDataModule)); }