"Install New Theme" feature does not install specified files in correct folder
See original GitHub issueDescription of bug
DNN 9.2? - 9.8.1
When installing a theme via Manage > Themes > Install New Theme
, files that are specified in the manifest file to be created in the base path of the theme folder are not actually created. However if you use Settings > Extensions > Install Extension
to install the same theme, those files are indeed created. These two install methods appear to use different code to install themes in DNN and the Install New Theme option is not working correctly.
Steps to reproduce
-
Download the TestTheme_1.0.0_install.zip created with nvQuickTheme TestTheme_1.0.0_install.zip
-
Open the zip file and you will see that the zip file contains the following files “default.png”, thumbnail_default.png", and “LICENSE”, among other files.
- Open and view the manifest file and you will see that the manifest file specifically creates those files at the root of the theme folder.
- In a clean new install of DNN that has the
Install New Theme
feature (9.2? - 9.8.1) use this feature to install the TestTheme theme, and view the Package Installation Report before clicking on “Done” and closing the install theme window. You should see that DNN thinks that the files were created successfully.
- Navigate to the new TestTheme folder in the DNN instances Skin folder. You can see that the files were not actually created.
-
To prove that this is most likely a bug in DNN, and not the attached theme, use
Settings > Extensions
and uninstall the theme and be sure to tick off the “Delete Files?” checkbox. -
Use
Settings > Extensions > Install Extension
to install the same TestTheme theme. -
Navigate to the new TestTheme folder in the DNN instances Skin folder. You can see that this time the files were created as expected.
Affected version
- 10.00.00 alpha build
- 09.08.01 latest supported release and all previous versions that have the
Manage > Themes > Install New Theme
feature - 09.01.01
Issue Analytics
- State:
- Created 3 years ago
- Comments:7 (3 by maintainers)
Can it be that “Manage > Themes > Install New Theme” was intended to replace the previous “Installing a theme for one specific Portal”, but is not implemented correclty? Like installing a Theme from Admin > Extension in DNN 7? FYI, a Portal Specific Theme is still very useful IMO, although I would prefer the option to assign a Theme to a portal as we do with modules.
bdukes,
Good catch. I was so focused at looking to see if the files were created, I did not look carefully enough at the path. So it appears that if you use
Settings > Extensions > Install Extension
to install the theme, the files are created in the correct location,Portals\_default...
.Yet if you use
Manage > Themes > Install New Theme
to install the theme, the files are created in the wrong location ofPortals\0-System...
.If I navigate to that path on the website, those files were indeed created in the 0-System portal folder. Mostly likely a an incorrect path reference for the install script in the code for that method.