Contact Form Modification

This forum is only for questions or discussions about working with the mojoPortal source code in Visual Studio, obtaining the source code from the repository, developing custom features, etc. If your question is not along these lines this is not the right forum. Please try to post your question in the appropriate forum.

Please do not post questions about design, CSS, or skinning here. Use the Help With Skins Forum for those questions.

This forum is for discussing mojoPortal development

This forum is only for questions or discussions about working with the mojoPortal source code in Visual Studio, obtaining the source code from the repository, developing custom features, etc. If your question is not along these lines this is not the right forum. Please try to post your question in the appropriate forum.

You can monitor commits to the repository from this page. We also recommend developers to subscribe to email notifications in the developer forum as occasionally important things are announced.

Before posting questions here you might want to review the developer documentation.

Do not post questions about design, CSS, or skinning here. Use the Help With Skins Forum for those questions.
This thread is closed to new posts. You must sign in to post in the forums.
3/2/2012 11:49:14 AM
Gravatar
Total Posts 104

Re: Contact Form Modification

If you have time, could you provide a bit more information on the GUID process?

"You can generate a new guid using MS SQL like SELECT newid(), or in .NET code using Guid.NewGuid().ToString()"

Can this be any GUID generated from anywhere?

3/2/2012 11:51:14 AM
Gravatar
Total Posts 104

Re: Contact Form Modification

This is what I have worked through thus far...

"I would copy one of the mojoportal.sln files and rename it, then you can add your  custom projects to this solution. Create a Web Application Project for the UI, a  Class library for the business logic and a class library for the data layer."

copied C:\mojoPortalCode\mojoportal.sln to C:\mojoPortalCode\mojoportal-alt1.sln

opened C:\mojoPortalCode\mojoportal-alt1.sln with vs 2010

created new web application (WebApplication1)

right click on solution at top of Solution Explorer list, then select "Add",           then select "New Project",           then selected Visual C# / Web / ASP.NET Web Application (.NET Framework 4)           Name:  WebApplication1           Location:  C:\mojoPortalCode

created new C# class library for business logic (ClassLibrary1_businessLogic)

right click on solution at top of Solution Explorer list,           then select "Add",           then select "New Project",           then selected Visual C# / Class Library (.NET Framework 4)           Name:  ClassLibrary1_businessLogic           Location:  C:\mojoPortalCode

created new C# class libary for the data layer (ClassLibrary2_dataLayer)

right click on solution at top of Solution Explorer list,           then select "Add",           then select "New Project",           then selected Visual C# / Class Library (.NET Framework 4)           Name:  ClassLibrary2_dataLayer           Location:  C:\mojoPortalCode

"Copy the Blog folder from the mojoPortal.Features.UI project up beneath your     web UI project and then rename the folder, then include it in your project.     ??? Change the namespace and review the code for any links where the path needs to be     modified to reflect your custom folder."

copied C:\mojoPortalCode\mojoPortal.Features.UI\ContactForm to C:\mojoPortalCode\WebApplication1\ContactForm_alt1

included files in the project

opened Windows Explorer and navigated to C:\mojoPortalCode\WebApplication1,      then, while holding down the right mouse button, dragged the directory      ContactForm_alt1 over to the WebApplication1 item within Visual Studio 2010 "Solution Explorer"

(see http://stackoverflow.com/questions/57776/how-to-add-existing-item-an-entire-directory-structure-in-visual-studio)

then, right clicked on References, and added a number of references, including:           ClassLibrary1_businessLogic           ClassLibrary2_dataLayer           mojoPortal.Business           mojoPortal.Business.WebHelpers           mojoPortal.Data.MSSQL           mojoPortal.Features.Business           mojoPortal.Features.Data.MSSQL           mojoPortal.Features.UI           mojoPortal.Net           mojoPortal.Web           mojoPortal.Web.Controls           mojoPortal.Web.Editor           mojoPortal.Web.Framework

"Copy the BlogResoures.*.resx files from mojPortal.Features.UI/App_GlobalResources to the App_GlobalResources folder in your wbe project, then rename them to somecustomname.*.resx. You don't need to copy the .designer.cs files. After you rename the .resx files include them in your project and VS will autmatically create the .designer.cs files."

right clicked on App_GlobalResources in mojoPortal.Features.UI within Visual Studio 2010, and selected "Copy"      then, right clicked on the WebApplication1 project within Visual Studio 2010 and selected "paste"      to copy all of the resources over into the new web application project

deleted all but the ContactFormResources.*.resx files, including the designer files

appended "alt1" to the beginning of all remaining ContactFormResources.*.resx files, which then automatically      generated the related designer files

"Create a folder in your Web prject named Setup, then a folder beneath it names applications."

right clicked on the WebApplication1 project within Visual Studio 2010 and selected "Add...", then "New Folder",      creating the new "Setup" folder, then      right clicked on the "Setup" folder and selected "Add...", then "New Folder",      creating the new "Applications" folder

"Copy the mojoPortal.Features.UI/Setup/applications/blog folder and put it beneath your applications folder and rename it."

copied C:\mojoPortalCode\mojoPortal.Features.UI\Setup\applications\contactform directory over to      C:\mojoPortalCode\WebApplication1\Setup\Applications and renamed it to contactform_alt1

"Look in the FeatureDefinitions folder beneath that folder and rename the file 2000_BlogModule.config to somecustomname.config."

within C:\mojoPortalCode\WebApplication1\Setup\Applications\contactform_alt1\FeatureDefinitions,      renamed 30000_ContactFormModule.config to alt130000_ContactFormModule.config

3/5/2012 10:21:19 AM
Gravatar
Total Posts 1204
Proud member of the mojoPortal team

Help support mojoPortal!
Add-on modules

Re: Contact Form Modification

To easily get a new GUID, you can use an online generator site.

I'm not sure how to help you beyond that because your questions are extremely broad. From your last post it sounds like you want someone here to walk you through the entire custom feature development process, and that's just not realistic. The best we can offer is the mojoPortal developer documentation. If you need step-by-step assistance with development, you may have to hire a .NET development consultant.

Jamie

3/5/2012 10:31:04 AM
Gravatar
Total Posts 104

Re: Contact Form Modification

Thanks for your response - I did find an alternate online GUID generator site and used that to generate one for that particular step.

I have to disagree that these are "extremely broad" questions however.  These are specific questions about specific steps of the process in extending this specific application:  mojoPortal.  Many of the changes required are specific to getting an extension working in mojoPortal, not necessarily .net programming in general.  I am attempting to follow through these steps to replicate an existing extension within this particular application and I am trying to find information that might not only assist me in working through a step along the way, but might also help others in documenting what I did along the way to try to get something working.

3/5/2012 10:57:10 AM
Gravatar
Total Posts 18439

Re: Contact Form Modification

Hi,

The bottom line is that cloning an existing feature requires fully understanding the existing code for that feature which requires significant experience as a .NET developer. The article Cloning an Existing Feature is aimed at an audience that already has the required experience and that can read and fully understand the existing feature code. The main reason I wrote that article is to convey to people that they should not modify or fork the mojoPortal code as that will make it impossible for them to upgrade without losing their changes. 

A contact form is something relatively easy to develop from scratch for most experienced developers, one could borrow just parts of the code (like the snippet that sends email) from the contact form or clone it fully but we simply don't have the capacity to help people step by step with custom development beyond the tutorials and documentation we provide, and our tutorials and documentation are generally sufficent for someone with the requisite background. For a qualified developer the source code is the best and most complete documentation available and we've shared it, but trying to help those who do not have the required background is just too much work and too time consuming to do for free.

Best Regards,

Joe

3/5/2012 11:54:36 AM
Gravatar
Total Posts 104

Re: Contact Form Modification

I would like to utilize this forum to collaborate with other users of mojoPortal in regard to replicating an existing feature for potential modification and discuss the steps and experience in attempting to get something functional up and running.  As time permits, if there is anything that you would like to contribute to some questions on getting this setup, that would be greatly appreciated.  Thanks again! : )

3/6/2012 8:34:13 AM
Gravatar
Total Posts 104

Re: Contact Form Modification

I happened to come across a posting that described this process very well...

http://techblog.strongeye.com/archive/2009/12/16/creating-a-mojoportal-module.aspx

This really helped to fill in some of the information that enabled me to get a functional basis in which to start working with this a bit more.

3/6/2012 9:15:35 AM
Gravatar
Total Posts 18439

Re: Contact Form Modification

That is a good article about developing custom features from scratch. There is more in depth coverage in our video tutorial series Building a Guest Book.

It is definitely a good idea to have an understanding of how to build custom features from scratch before trying to clone an existing feature.

Thanks again for the beers!

Best,

Joe

3/6/2012 9:28:16 AM
Gravatar
Total Posts 104

Re: Contact Form Modification

Sure! :)  I will definitely check out the video tutorial series as well!

3/7/2012 11:20:28 AM
Gravatar
Total Posts 42

Re: Contact Form Modification

Without reading the entire thread, why not just roll a Form Wizard Pro form and custom form submission handler?

You must sign in to post in the forums. This thread is closed to new posts.