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

HomeHomeDNN Open Source...DNN Open Source...Module ForumsModule ForumsRepositoryRepositoryExtending the Repository ModuleExtending the Repository Module
Previous
 
Next
New Post
8/2/2007 8:17 AM
 

Hello. I'm working on a site which requires a certain functionality, 90% of which can be provided by the Repository module. I want to add new functionality inclusing searchable keywords, a "Published" date field and be able to filter the documents based on the Published date (the Published date is not the same as the Uploaded date). I'm a fairly competent .Net developer and would be able to create this functionality outside of DotNetNuke fairly easily. However I'm struggling to find a resource (tutorial or walk-through) that shows me how to modify and implement changes for a core module? Does anyone have any tips or pointers towards any such resources. I've found lots of "How to create a new module..." but I want  a "How to modify...".

So far I've downloaded the source code for the repository project and tried to open it in Visual Studio and there were missing files. I found a Resources.zip file within the source folder which seemed to include those missing files so I extracted them and then opened the solution. It won't build though, it seems to be missing a lot of references.

Basically I'm not sure what to do here so any help would be mush appreciated. In the mean time I'll keep searching...

Thanks,
James.

 
New Post
8/2/2007 9:32 AM
 

Currently, the Repository module is a .net 1.1 module. While the module can be installed using the 'Install' package on both DotNetNuke 3.X and 4.X, the source code can ONLY be modified/rebuilt using .net 1.1 (Visual Studio 2003)

So, if you are running DotNetNuke 3.X / Visual Studio 2003, the process is straightforward

If you are running DotNetNuke 4.X / Visual Studio 2005, then it's not. You need to setup a .net 1.1 development environment, install the corresponding DNN version ( for example if you're running DNN 4.3.5, then you should install DNN 3.3.5 ).

Once you have a working DotNetNuke 3.X installation. Install the latest Repository 'Source' package (3.01.13). Using Visual Studio 2003, open the DotNetNuke.Repository.sln solution file. Check the references to make sure they are pointing to the correct folders ( the assumption is that your DotNetNuke web site is located in c:\inetpub\wwwroot\dotnetnuke, if different you'll need to modify the project references). You should then be able to build the solution and debug/modify the source.

Once you're all done, rebuild the entire solution in  'Release' mode. Exit Visual Studio. In the /DesktopModules/Repository folder you'll see a batch file named 'build'bat'. Make sure you have Nant installed ( if not, search the internet, download and install it ). Just run the batch file. It will rebuild and create a new install and source package. The packages will be located in the /DesktopModules/Repository/package folder. You can then install your new 'Install' package on either a DotNetNuke 3.X OR 4.X web site using the Host->Module Definitions screen.

 
New Post
8/2/2007 9:43 AM
 

Thanks for your guidance here. Luckily enough I do still have VS2003 on my machine, however my DNN is version 4.4. I've been on to the DNN site to download v3 and they only have 3.3.7 available (not 3.3.5). I presume this version is ok to work with?

 
New Post
8/2/2007 11:38 AM
 

3.3.5 or 3.3.7 would both work fine

 
New Post
8/3/2007 6:17 AM
 

I'd like to say thank you to Steve for this guidance, it took me a while but I have just been able to recompile the full solution in VS and then in Nant and it did indeed create the package folder and files you described. Although I haven't actually made any changes yet so I hope I haven't jumped the gun. For anyone else who might be doing the same thing I did have to fix references in the Dotnetnuke (v3.3.7) project for the CountryListbox.dll and DotNetNuke.WebUtility.dll. To do this I opened the Dotnetnuke.vbproj file in notepad, found where the files were supposed to be and copied the files to that location from the Dotnetnuke/bin directory.

One error I made was to copy the Repository source files into the DesktopModules folder manually. I did not realise you could install "source" versions of modules through Dotnetnuke itself. It is the installation process that places all the files in the right place (and no doubt potentially modifies the database).

I have no experience at all with Nant and I couldn't get their "Introduction" sample working but it seems to be working ok for DNN so thats all that counts.

I found this quite a frustrating process and without Steve's help I wouldn't have stood a chance. I feel it would be a great help to the community if some "How to extend..." documentation was included in the source code downloads. Steve, do you know if the process I have followed with your module will work for all other core project modules? e.g. install the module source through (the correct version of) DNN, fix references, make changes, build in release mode, build using Nant?

Thanks again for your help.

James.

 
Previous
 
Next
HomeHomeDNN Open Source...DNN Open Source...Module ForumsModule ForumsRepositoryRepositoryExtending the Repository ModuleExtending the Repository Module


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