ContainerSrc location in exported DotNetNuke Portal Template


The DotNetNuke Portal Template  document (in the DotNetNuke 4.0 download) has a few places where [G] notation is used ,e.g. [G]Skins/DNN/Skin.ascx, buf there is no explanation, how it is used.

From reading the code, I understood that it is used as a placeholder for current portal location of the specific folder.

So template should have entries with this notation [G](or [L] -?) but SOMETIMES existing Template export function does export the full hardcoded path. e.g.


<

module>
      <
containersrc>/FSDNN/Portals/_default/Containers/DNN-Blue/Image Header – Color Background.ascx</< FONT </containersrc>
</</MODULE</module>

and when the template is imported, it refers to incorrect virtual directory.


The problem could be fixed by replacing portal name (e.g./FSDNN/Portals/_default) to the placeholder [G].


The problem has been reported to DNN Support.


Update: I investigated more and found that only 4 modules have non null containersrc fields in TabModules table and export function just put into XML exactly what was in a table.
When I’ve opened Settings page for the Module, it didn’t show any specific container information (Display container-ticked,Module Container-Host,Not specified).
I didn’t do any changes to settings and click Update – and
containersrc was set to null in the TabModules table.
So the problem was caused by some data corruption(saving values to containersrc) in the past.
I will keep an eye to any procedures, that could cause this data change. 
 


UPDATE 28-mar-2006: Steps to reproduce the problem:
1.As an administrator open page with a module.
2.Click a title of the module.
3.Change the title of the module
4.Change focus outside the title of the module
The title of the modules will be saved, but also dnn_TabModules.ContainerSrc  field will be saved as not null value (e.g. /FSDNN/Portals/_default/Containers/DNN-Blue/Image Header – Color Background.ascx).
Use query “SELECT * FROM   dnn_TabModules where ContainerSrc is not null” to check it.

The ContainerSrc  field preferably should be left as null(alternatively as relative path with placeholder [G] or [L]).

Advertisements