Products

Solutions

Resources

Partners

Community

Blog

About

QA

Ideas Test

New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

Welcome to the DNN Community Forums, your preferred source of online community support for all things related to DNN.
In order to participate you must be a registered DNNizen

HomeHomeArchived Discus...Archived Discus...Developing Under Previous Versions of .NETDeveloping Under Previous Versions of .NETASP.Net 2.0ASP.Net 2.0Settings Option or Edit View?Settings Option or Edit View?
Previous
 
Next
New Post
2/20/2007 11:09 PM
 

Okay, I am building a dynamic pane module that allows you to nest dynamic panes within the current panes on the skin.  Have it mostly functional, but I am wondering where to put the settings for things such as the number of panes and where you configure the attributes of each pane such as css class, width, padding, etc. 

Here are a couple images of what the dynamic pane module does:

Admin mode:

http://aycu10.webshots.com/image/8849/2002813177491780632_rs.jpg

Preview mode:

http://aycu25.webshots.com/image/12504/2002821127146176815_rs.jpg

As you can see from the images, the DynamicPanes module is added to the content pane (skin is the stock DNN skin).  The three panes (will be user definable as to how many panes) is dynamically added within the module and all the normal editting functionality is there such as "drag/drop" and "move to".  You can change any of the settings on any of the modules as they are standard modules dropped into standard panes (although dynamically added), such as in modules in the "DynamicRightPane" where the top one uses a different container as does the one below it.  Remember, this does not modify the skin, they are contained within the module, however they are just standard panes, as you can tell, the Text/HTML module is under the DynamicPanes module both in the same "ContentPane" pane.  The DynamicPanes modules hosts the new panes, otherwise everything is as normal.

Anyway, my question is that I am not sure where to put the configuration for the DynamicPanes modules.  Should I use an Edit View to configure the few settings or just add them to the "Settings" option for the module?

My thoughts were to just use the Settings option, but after some thought, I figure it might be a pain to go into the settings option and then expand the Module Settings in the lower part of the window along with maybe making that screen a bit too busy.

Also, I was wondering if there is some way that I can set some defaults up when the module is first dropped on the page.  Was thinking of having it create a unique pane right when it is first added.  Of course, I would not have a clue if they would want one or ten pane columns :)

 
New Post
3/31/2007 2:35 PM
 

I will be getting back to this module later today or tomorrow.  Anyone have a suggestion?

 
New Post
4/1/2007 10:18 AM
 

I think it depends on the security that you will require. I think you have to give all users edit permission to he module for them to see the Edit and Settings links.

I would use: NavigateURL: How to make a link



Michael Washington
http://ADefWebserver.com
www.ADefHelpDesk.com
A Free Open Source DotNetNuke Help Desk Module
 
New Post
4/1/2007 11:23 PM
 

That will be an interesting and useful module.

As far as how to present the configuration options, I follow then general rule that if a module offers only a few settings, then put them in Settings.ascx.  If there are many settings or the available settings include complex controls such as template editors or option list editors, put them in your own custom settings control or even several custom settings controls with a type of either Edit or Admin as appropriate.

Regarding pre-configuration of the module when first added to a page, in this case, I would simply create a blank module with either a label displaying a message to Administrators "Module must be configured before use" and a link to either the regular settings control or your custom one.  You might want to display a different message to non-administrators to advise them to contact so-and-so to request that the module be set up (in case the administrator adds the module but forgets to configure it). Alternatively, you could display a yellow warning triangle/exclaimation point icon and message using the UI.Skins.Skin.AddModuleMessage method from the default view control's Page_Load handler if no panes/modules have been selected for inclusion in your dynamic module. 

Should you decide to pre-configure the module with dummy panes/modules when it is first added to the page, one of the way's I've used for initial module configuration is as follows:

1. Set up a configuration class that handles loading/saving all your settings from/to ModuleSettings, TabModuleSettings or your own custom settings table(s). I routinely do this even if there are only a few settings.  Each setting will have its own private member variable and public property. It makes retrieval of settings and particularly cacheing of settings very easy throughout all your module's various controls.
2. In your default view control's Page_Load or Page_Init handler or in a custom base module class which derives from PortalModuleBase, this configuration class is instantiated, passing the ModuleId in the configuration class' constructor i.e. _myconfiguration=New MyConfiguration(ModuleId)
3. In the constructor of the configuration class, obtain the module's settings - a hash table if you are using the usual PortalSettings. GetModuleSettings(ModuleId)
4. If the count of the settings items = 0 then the module is being added to the page for the first time and needs to be configured.
5. If so, call a custom method which creates the default settings, table entries for dummy panes/modules, etc.


Bill, WESNet Designs
Team Lead - DotNetNuke Gallery Module Project (Not Actively Being Developed)
Extensions Forge Projects . . .
Current: UserExport, ContentDeJour, ePrayer, DNN NewsTicker, By Invitation
Coming Soon: FRBO-For Rent By Owner
 
New Post
4/4/2007 12:36 PM
 

>That will be an interesting and useful module.<

It is one of the features I kind of expected in the core, but since it has not came about, I am writing this one to donate to the core making DNN much more flexible with respect to module placement and making it eaiser on skin developers.

I hoped to have it available by now, but have to get taxes finished along with the garden tilled (turning 110' x 33' section of yard into a garden, sure showed me how out of shape I am ;) ).  Hope to have this read by next week.

As normally happens, I have ideas on how to expand it so the settings will be getting more involved.  I figure I will now use the edit view for that.  I am up in the air about the preconfiguration at this point.  I figure that most of the time, the user (person laying out the site) will be in need of at least two panes, so I might have it preconfigure two of them.  Of course, once it is in the wild, user feedback will probably determine what the defaults will end up.

Thanks for the feedback!

 
Previous
 
Next
HomeHomeArchived Discus...Archived Discus...Developing Under Previous Versions of .NETDeveloping Under Previous Versions of .NETASP.Net 2.0ASP.Net 2.0Settings Option or Edit View?Settings Option or Edit View?


These Forums are dedicated to discussion of DNN Platform and Evoq Solutions.

For the benefit of the community and to protect the integrity of the ecosystem, please observe the following posting guidelines:

  1. No Advertising. This includes promotion of commercial and non-commercial products or services which are not directly related to DNN.
  2. No vendor trolling / poaching. If someone posts about a vendor issue, allow the vendor or other customers to respond. Any post that looks like trolling / poaching will be removed.
  3. Discussion or promotion of DNN Platform product releases under a different brand name are strictly prohibited.
  4. No Flaming or Trolling.
  5. No Profanity, Racism, or Prejudice.
  6. Site Moderators have the final word on approving / removing a thread or post or comment.
  7. English language posting only, please.
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out