Example #1
0
        public static int AddSkinPackage(SkinPackageInfo skinPackage)
        {
            var eventLogController = new EventLogController();

            eventLogController.AddLog(skinPackage, PortalController.GetCurrentPortalSettings(), UserController.GetCurrentUserInfo().UserID, "", EventLogController.EventLogType.SKINPACKAGE_CREATED);
            return(DataProvider.Instance().AddSkinPackage(skinPackage.PackageID, skinPackage.PortalID, skinPackage.SkinName, skinPackage.SkinType, UserController.GetCurrentUserInfo().UserID));
        }
Example #2
0
        public static void DeleteSkinPackage(SkinPackageInfo skinPackage)
        {
            DataProvider.Instance().DeleteSkinPackage(skinPackage.SkinPackageID);
            var eventLogController = new EventLogController();

            eventLogController.AddLog(skinPackage, PortalController.GetCurrentPortalSettings(), UserController.GetCurrentUserInfo().UserID, "", EventLogController.EventLogType.SKINPACKAGE_DELETED);
        }
 public static void UpdateSkinPackage(SkinPackageInfo skinPackage)
 {
     DataProvider.Instance().UpdateSkinPackage(skinPackage.SkinPackageID,
                                               skinPackage.PackageID,
                                               skinPackage.PortalID,
                                               skinPackage.SkinName,
                                               skinPackage.SkinType,
                                               UserController.Instance.GetCurrentUserInfo().UserID);
     EventLogController.Instance.AddLog(skinPackage, PortalController.Instance.GetCurrentPortalSettings(), UserController.Instance.GetCurrentUserInfo().UserID, "", EventLogController.EventLogType.SKINPACKAGE_UPDATED);
     foreach (KeyValuePair <int, string> kvp in skinPackage.Skins)
     {
         UpdateSkin(kvp.Key, kvp.Value);
     }
 }
        private static PackageInfo CreateSkinPackage(SkinPackageInfo skin)
        {
			//Create a Package
            var package = new PackageInfo(new InstallerInfo());
            package.Name = skin.SkinName;
            package.FriendlyName = skin.SkinName;
            package.Description = Null.NullString;
            package.Version = new Version(1, 0, 0);
            package.PackageType = skin.SkinType;
            package.License = Util.PACKAGE_NoLicense;

            //See if the Skin is using a Namespace (or is a known skin)
            ParsePackageName(package);

            return package;
        }
Example #5
0
 public static int AddSkinPackage(SkinPackageInfo skinPackage)
 {
     var eventLogController = new EventLogController();
     eventLogController.AddLog(skinPackage, PortalController.GetCurrentPortalSettings(), UserController.GetCurrentUserInfo().UserID, "", EventLogController.EventLogType.SKINPACKAGE_CREATED);
     return DataProvider.Instance().AddSkinPackage(skinPackage.PackageID, skinPackage.PortalID, skinPackage.SkinName, skinPackage.SkinType, UserController.GetCurrentUserInfo().UserID);
 }
        private static void CreateSkinManifest(XmlWriter writer, string skinFolder, string skinType, string tempInstallFolder, string subFolder)
        {
            string skinName = Path.GetFileNameWithoutExtension(skinFolder);
            var skin = new SkinPackageInfo();
            skin.SkinName = skinName;
            skin.SkinType = skinType;

            //Create a Package
            PackageInfo package = CreateSkinPackage(skin);

            //Create a SkinPackageWriter
            var skinWriter = new SkinPackageWriter(skin, package, tempInstallFolder, subFolder);
            skinWriter.GetFiles(false);

            //We need to reset the BasePath so it using the correct basePath rather than the Temp InstallFolder
            skinWriter.SetBasePath();

            //Writer package manifest fragment to writer
            skinWriter.WriteManifest(writer, true);
        }
        private static void ProcessLegacySkin(string skinFolder, string skinType)
        {
            string skinName = Path.GetFileName(skinFolder);
            if (skinName != "_default")
            {
                var skin = new SkinPackageInfo();
                skin.SkinName = skinName;
                skin.SkinType = skinType;

                //Create a Package
                PackageInfo package = CreateSkinPackage(skin);

                //Create a SkinPackageWriter
                var skinWriter = new SkinPackageWriter(skin, package);
                skinWriter.GetFiles(false);

                //Save the manifest
                package.Manifest = skinWriter.WriteManifest(true);

                //Save Package
                PackageController.Instance.SaveExtensionPackage(package);

                //Update Skin Package with new PackageID
                skin.PackageID = package.PackageID;

                //Save Skin Package
                skin.SkinPackageID = SkinController.AddSkinPackage(skin);

                foreach (InstallFile skinFile in skinWriter.Files.Values)
                {
                    if (skinFile.Type == InstallFileType.Ascx)
                    {
                        if (skinType == "Skin")
                        {
                            SkinController.AddSkin(skin.SkinPackageID, Path.Combine("[G]" + SkinController.RootSkin, Path.Combine(skin.SkinName, skinFile.FullName)));
                        }
                        else
                        {
                            SkinController.AddSkin(skin.SkinPackageID, Path.Combine("[G]" + SkinController.RootContainer, Path.Combine(skin.SkinName, skinFile.FullName)));
                        }
                    }
                }
            }
        }
Example #8
0
        /// -----------------------------------------------------------------------------
        /// <summary>
        /// The Install method installs the skin component
        /// </summary>
        /// <history>
        /// 	[cnurse]	02/06/2008  created
        /// </history>
        public override void Install()
        {
            bool bAdd = Null.NullBoolean;
            try
            {
				//Attempt to get the Skin Package
                TempSkinPackage = SkinController.GetSkinPackage(SkinPackage.PortalID, SkinPackage.SkinName, SkinType);
                if (TempSkinPackage == null)
                {
                    bAdd = true;
                    SkinPackage.PackageID = Package.PackageID;
                }
                else
                {
                    SkinPackage.SkinPackageID = TempSkinPackage.SkinPackageID;
                    if (TempSkinPackage.PackageID != Package.PackageID)
                    {
                        Completed = false;
                        Log.AddFailure(Util.SKIN_Installed);
                        return;
                    }
                    else
                    {
                        SkinPackage.PackageID = TempSkinPackage.PackageID;
                    }
                }
                SkinPackage.SkinType = SkinType;
                if (bAdd)
                {
					//Add new skin package
                    SkinPackage.SkinPackageID = SkinController.AddSkinPackage(SkinPackage);
                }
                else
                {
					//Update skin package
                    SkinController.UpdateSkinPackage(SkinPackage);
                }
                Log.AddInfo(string.Format(Util.SKIN_Registered, SkinPackage.SkinName));

                //install (copy the files) by calling the base class
                base.Install();

                //process the list of skin files
                if (SkinFiles.Count > 0)
                {
                    Log.StartJob(Util.SKIN_BeginProcessing);
                    string strMessage = Null.NullString;
                    var NewSkin = new SkinFileProcessor(RootPath, SkinRoot, SkinPackage.SkinName);
                    foreach (string skinFile in SkinFiles)
                    {
                        strMessage += NewSkin.ProcessFile(skinFile, SkinParser.Portable);
                        skinFile.Replace(Globals.HostMapPath + "\\", "[G]");
                        switch (Path.GetExtension(skinFile))
                        {
                            case ".htm":
                                SkinController.AddSkin(SkinPackage.SkinPackageID, skinFile.Replace("htm", "ascx"));
                                break;
                            case ".html":
                                SkinController.AddSkin(SkinPackage.SkinPackageID, skinFile.Replace("html", "ascx"));
                                break;
                            case ".ascx":
                                SkinController.AddSkin(SkinPackage.SkinPackageID, skinFile);
                                break;
                        }
                    }
                    Array arrMessage = strMessage.Split(new[] {"<br />"}, StringSplitOptions.None);
                    foreach (string strRow in arrMessage)
                    {
                        Log.AddInfo(HtmlUtils.StripTags(strRow, true));
                    }
                    Log.EndJob(Util.SKIN_EndProcessing);
                }
                Completed = true;
            }
            catch (Exception ex)
            {
                Log.AddFailure(ex);
            }
        }
Example #9
0
        /// -----------------------------------------------------------------------------
        /// <summary>
        /// The ReadCustomManifest method reads the custom manifest items
        /// </summary>
        /// <param name="nav">The XPathNavigator representing the node</param>
        /// <history>
        /// 	[cnurse]	08/22/2007  created
        /// </history>
        /// -----------------------------------------------------------------------------
        protected override void ReadCustomManifest(XPathNavigator nav)
        {
            SkinPackage = new SkinPackageInfo();
            SkinPackage.PortalID = Package.PortalID;

            //Get the Skin name
            SkinPackage.SkinName = Util.ReadElement(nav, SkinNameNodeName);

            //Call base class
            base.ReadCustomManifest(nav);
        }
Example #10
0
 public SkinPackageWriter(PackageInfo package) : base(package)
 {
     _SkinPackage = SkinController.GetSkinByPackageID(package.PackageID);
     SetBasePath();
 }
 public ContainerPackageWriter(SkinPackageInfo skinPackage, PackageInfo package) : base(skinPackage, package)
 {
     BasePath = "Portals\\_default\\Containers\\" + skinPackage.SkinName;
 }
Example #12
0
 public SkinPackageWriter(SkinPackageInfo skinPackage, PackageInfo package, string basePath, string subFolder) : base(package)
 {
     _SkinPackage = skinPackage;
     _SubFolder = subFolder;
     BasePath = Path.Combine(basePath, subFolder);
 }
Example #13
0
 public SkinPackageWriter(SkinPackageInfo skinPackage, PackageInfo package, string basePath) : base(package)
 {
     _SkinPackage = skinPackage;
     BasePath = basePath;
 }
Example #14
0
 public SkinPackageWriter(SkinPackageInfo skinPackage, PackageInfo package) : base(package)
 {
     _SkinPackage = skinPackage;
     SetBasePath();
 }
Example #15
0
 public static void DeleteSkinPackage(SkinPackageInfo skinPackage)
 {
     DataProvider.Instance().DeleteSkinPackage(skinPackage.SkinPackageID);
     var eventLogController = new EventLogController();
     eventLogController.AddLog(skinPackage, PortalController.GetCurrentPortalSettings(), UserController.GetCurrentUserInfo().UserID, "", EventLogController.EventLogType.SKINPACKAGE_DELETED);
 }
        /// -----------------------------------------------------------------------------
        /// <summary>
        /// wizNewExtension_NextButtonClick when the next Button is clicked.  It provides
        ///	a mechanism for cancelling the page change if certain conditions aren't met.
        /// </summary>
        /// <remarks>
        /// </remarks>
        /// <history>
        /// 	[cnurse]	08/25/2008	created
        /// </history>
        /// -----------------------------------------------------------------------------
        protected void wizNewExtension_NextButtonClick(object sender, WizardNavigationEventArgs e)
        {
            switch (e.CurrentStepIndex)
            {
                case 0:
                    if (extensionForm.IsValid)
                    {
                        var newPackage = extensionForm.DataSource as PackageInfo;
                        PackageInfo tmpPackage = PackageController.Instance.GetExtensionPackage(Null.NullInteger, p => p.Name == newPackage.Name);
                        if (tmpPackage == null)
                        {
                            switch (Mode)
                            {
                                case "All":
                                    newPackage.PackageType = cboExtensionType.SelectedValue;
                                    break;
                                default:
                                    newPackage.PackageType = Mode;
                                    break;
                            }
                            PackageController.Instance.SaveExtensionPackage(newPackage);

                            Locale locale;
                            LanguagePackInfo languagePack;
                            switch (newPackage.PackageType)
                            {
                                case "Auth_System":
                                    //Create a new Auth System
                                    var authSystem = new AuthenticationInfo
                                    {
                                        AuthenticationType = newPackage.Name,
                                        IsEnabled = Null.NullBoolean,
                                        PackageID = newPackage.PackageID
                                    };
                                    AuthenticationController.AddAuthentication(authSystem);
                                    break;
                                case "Container":
                                case "Skin":
                                    var skinPackage = new SkinPackageInfo
                                    {
                                        SkinName = newPackage.Name,
                                        PackageID = newPackage.PackageID,
                                        SkinType = newPackage.PackageType
                                    };
                                    SkinController.AddSkinPackage(skinPackage);
                                    break;
                                case "CoreLanguagePack":
                                    locale = LocaleController.Instance.GetLocale(PortalController.Instance.GetCurrentPortalSettings().DefaultLanguage);
                                    languagePack = new LanguagePackInfo
                                    {
                                        PackageID = newPackage.PackageID,
                                        LanguageID = locale.LanguageId,
                                        DependentPackageID = -2
                                    };
                                    LanguagePackController.SaveLanguagePack(languagePack);
                                    break;
                                case "ExtensionLanguagePack":
                                    locale = LocaleController.Instance.GetLocale(PortalController.Instance.GetCurrentPortalSettings().DefaultLanguage);
                                    languagePack = new LanguagePackInfo
                                    {
                                        PackageID = newPackage.PackageID,
                                        LanguageID = locale.LanguageId,
                                        DependentPackageID = Null.NullInteger
                                    };
                                    LanguagePackController.SaveLanguagePack(languagePack);
                                    break;
                                case "Module":
                                    //Create a new DesktopModule
                                    var desktopModule = new DesktopModuleInfo
                                    {
                                        PackageID = newPackage.PackageID,
                                        ModuleName = newPackage.Name,
                                        FriendlyName = newPackage.FriendlyName,
                                        FolderName = newPackage.Name,
                                        Description = newPackage.Description,
                                        Version = newPackage.Version.ToString(3),
                                        SupportedFeatures = 0
                                    };
                                    int desktopModuleId = DesktopModuleController.SaveDesktopModule(desktopModule, false, true);
                                    if (desktopModuleId > Null.NullInteger)
                                    {
                                        DesktopModuleController.AddDesktopModuleToPortals(desktopModuleId);
                                    }
                                    break;
                                case "SkinObject":
                                    var skinControl = new SkinControlInfo { PackageID = newPackage.PackageID, ControlKey = newPackage.Name };
                                    SkinControlController.SaveSkinControl(skinControl);
                                    break;
                            }

                        }
                        else
                        {
                            e.Cancel = true;
                            lblError.Text = string.Format(Localization.GetString("DuplicateName", LocalResourceFile), newPackage.Name);
                        	lblError.Visible = true;
                        }
                    }
                    if (PackageEditor != null && PackageID > Null.NullInteger)
                    {
                        BindPackageEditor();
                    }
                    break;
                case 1:
                    if (PackageEditor != null)
                    {
                        PackageEditor.UpdatePackage();
                    }
                    break;
                case 2:
                    if (ownerForm.IsValid)
                    {
                        PackageController.Instance.SaveExtensionPackage(ownerForm.DataSource as PackageInfo);
                    }
                    Response.Redirect(Globals.NavigateURL(), true);
                    break;
            }
        }
Example #17
0
 public static void UpdateSkinPackage(SkinPackageInfo skinPackage)
 {
     DataProvider.Instance().UpdateSkinPackage(skinPackage.SkinPackageID,
                                               skinPackage.PackageID,
                                               skinPackage.PortalID,
                                               skinPackage.SkinName,
                                               skinPackage.SkinType,
                                               UserController.GetCurrentUserInfo().UserID);
     var eventLogController = new EventLogController();
     eventLogController.AddLog(skinPackage, PortalController.GetCurrentPortalSettings(), UserController.GetCurrentUserInfo().UserID, "", EventLogController.EventLogType.SKINPACKAGE_UPDATED);
     foreach (KeyValuePair<int, string> kvp in skinPackage.Skins)
     {
         UpdateSkin(kvp.Key, kvp.Value);
     }
 }
Example #18
0
        public static int AddPackage(PackageInfo package, bool includeDetail)
        {
            int packageID = provider.AddPackage(package.PortalID,
                                                package.Name,
                                                package.FriendlyName,
                                                package.Description,
                                                package.PackageType,
                                                package.Version.ToString(3),
                                                package.License,
                                                package.Manifest,
                                                package.Owner,
                                                package.Organization,
                                                package.Url,
                                                package.Email,
                                                package.ReleaseNotes,
                                                package.IsSystemPackage,
                                                UserController.GetCurrentUserInfo().UserID,
                                                package.FolderName,
                                                package.IconFile);
            var objEventLog = new EventLogController();
            objEventLog.AddLog(package, PortalController.GetCurrentPortalSettings(), UserController.GetCurrentUserInfo().UserID, "", EventLogController.EventLogType.PACKAGE_CREATED);
            if (includeDetail)
            {
                Locale locale;
                LanguagePackInfo languagePack;
                switch (package.PackageType)
                {
                    case "Auth_System":
                        //Create a new Auth System
                        var authSystem = new AuthenticationInfo();
                        authSystem.AuthenticationType = package.Name;
                        authSystem.IsEnabled = Null.NullBoolean;
                        authSystem.PackageID = packageID;
                        AuthenticationController.AddAuthentication(authSystem);
                        break;
                    case "Container":
                    case "Skin":
                        var skinPackage = new SkinPackageInfo();
                        skinPackage.SkinName = package.Name;
                        skinPackage.PackageID = packageID;
                        skinPackage.SkinType = package.PackageType;
                        SkinController.AddSkinPackage(skinPackage);
                        break;
                    case "CoreLanguagePack":
                        locale = LocaleController.Instance.GetLocale(PortalController.GetCurrentPortalSettings().DefaultLanguage);
                        languagePack = new LanguagePackInfo();
                        languagePack.PackageID = packageID;
                        languagePack.LanguageID = locale.LanguageId;
                        languagePack.DependentPackageID = -2;
                        LanguagePackController.SaveLanguagePack(languagePack);
                        break;
                    case "ExtensionLanguagePack":
                        locale = LocaleController.Instance.GetLocale(PortalController.GetCurrentPortalSettings().DefaultLanguage);
                        languagePack = new LanguagePackInfo();
                        languagePack.PackageID = packageID;
                        languagePack.LanguageID = locale.LanguageId;
                        languagePack.DependentPackageID = Null.NullInteger;
                        LanguagePackController.SaveLanguagePack(languagePack);
                        break;
                    case "Module":
                        //Create a new DesktopModule
                        var desktopModule = new DesktopModuleInfo();
                        desktopModule.PackageID = packageID;
                        desktopModule.ModuleName = package.Name;
                        desktopModule.FriendlyName = package.FriendlyName;
                        desktopModule.FolderName = package.Name;
                        desktopModule.Description = package.Description;
                        desktopModule.Version = package.Version.ToString(3);
                        desktopModule.SupportedFeatures = 0;
                        int desktopModuleId = DesktopModuleController.SaveDesktopModule(desktopModule, false, true);
                        if (desktopModuleId > Null.NullInteger)
                        {
                            DesktopModuleController.AddDesktopModuleToPortals(desktopModuleId);
                        }
                        break;
                    case "SkinObject":
                        var skinControl = new SkinControlInfo();
                        skinControl.PackageID = packageID;
                        skinControl.ControlKey = package.Name;
                        SkinControlController.SaveSkinControl(skinControl);
                        break;
                }
            }

			DataCache.ClearPackagesCache(package.PortalID);
            return packageID;
        }