Page 1 of 1

Customer Login, External Scripts, and form tags in ConLib

Posted: Tue Jul 22, 2008 7:13 am
by pcgutierrez
We have some questions about the final RC7.0 build. They are as follows:

a. Would it be possible to totally eliminate/disable customer account creation, customer log ins? We're thinking that since we sell Training packages in our Able site that are accessible online on a different website, this may sometimes confuse one or two of our customers. The customer will be using another set of credentials to access their training accounts/materials on that site different from the credentials we maintain within our able commerce site.

b. Does the checkout feature within able commerce 7.0 support external scripts? Would be great if we can have the able to post some info into a different site in order to automatically create the training account of our customer. If you guys can suggest/recommend how we can do this, we'd appreciate it.

c. We wanted the ability to create Orders in the Able DB using an external app (windows application client -> web service -> DB). We'd like to get your suggestion as to the best method we can use to achieve this (e.g., which tables/rows need to be populated, which stored procedures can we use, etc.).

d. Lastly, how would you recommend creating a ConLib that uses a separate [form action="http://webservices.courseconsultant.com ... ollectLead" method="POST"] to post info to a web service? We've created one but it seems to be messing up the other pre-existing server-side buttons and causes a "MAC Validation Failed" exception. If you need to, you can check out our dev site at http://development.courseconsultant.com. If you try to fill out the Online Enquiry fields (this is inside the form that posts to a web service), it would work fine. However, ever since we placed that ConLib, all the other buttons like Top Sellers > Add to Cart, will cause the MAC Validation Error.

Thanks in advance!

Re: Customer Login, External Scripts, and form tags in ConLib

Posted: Tue Jul 22, 2008 11:33 am
by jmestep
On d, your problem would be that you are actually putting a form within a form- the web page already generates a form.

Re: Customer Login, External Scripts, and form tags in ConLib

Posted: Tue Jul 22, 2008 9:43 pm
by pcgutierrez
jmestep wrote:On d, your problem would be that you are actually putting a form within a form- the web page already generates a form.
Hi, so are you suggesting that this approach is impossible and we should just use server side asp.net codes to do the web service call?

Thanks!

Re: Customer Login, External Scripts, and form tags in ConLib

Posted: Wed Jul 23, 2008 3:36 pm
by jmestep
I'm not that familiar with web services yet, but on your page you actually have two html <head> tags, two form tags, etc. I ran across that MAC validation failed when a client used an external editor to make description content for one of his categories, then pasted that into the field in the admin for the category. His external editor generated a complete html page and he pasted that in.
I just checked what I did for a contact us form. I made a web page Contact.aspx, with this in it:

Code: Select all

<%@ Page Language="C#" MasterPageFile="~/Layouts/Scriptlet.master" Inherits="CommerceBuilder.Web.UI.AbleCommercePage" Title="Contact Form" %>
<%@ Register Assembly="CommerceBuilder.Web" Namespace="CommerceBuilder.Web.UI.WebControls.WebParts" TagPrefix="cb" %>
<%-- 
<DisplayPage>
    <Name>Contact Form</Name>
    <NodeType>Webpage</NodeType>
    <Description>Contact Info and input form to generate email</Description>
</DisplayPage>
--%>
<asp:Content ID="ScripletContent" runat="server" ContentPlaceHolderID="PageContent">
    <cb:ScriptletPart ID="ContactForm" runat="server" Layout="One Column" Header="Standard Header" Content="Contact Form Page" Footer="Standard Footer" Title="Contact Form Page" AllowClose="False" AllowMinimize="false" />
</asp:Content>

Then a file called Contact Form Page.html in the App_Data/Custom/Content folder with this:

Code: Select all

<!--
<Description>
Displays the contents of a Contact Form page.
</Description>
-->
<div class="pageHeader">
<h1 class="heading">Contact Us</h1>
</div>
[[ConLib:Custom/ContactForm]]

Then a Conlib/Custom/contactForm.ascx with the form contents, but without any <form> tags. There might be another way of doing it, but I thought I'd better follow the Able pattern on this if I didn't want to leave odd ball code for someone else to figure out later. This form is at http://www.directpaintball.com/contact.aspx.

Re: Customer Login, External Scripts, and form tags in ConLib

Posted: Mon Jul 28, 2008 7:09 am
by pcgutierrez
jmestep wrote:I'm not that familiar with web services yet, but on your page you actually have two html <head> tags, two form tags, etc. I ran across that MAC validation failed when a client used an external editor to make description content for one of his categories, then pasted that into the field in the admin for the category. His external editor generated a complete html page and he pasted that in.
I just checked what I did for a contact us form. I made a web page Contact.aspx, with this in it:

Code: Select all

<%@ Page Language="C#" MasterPageFile="~/Layouts/Scriptlet.master" Inherits="CommerceBuilder.Web.UI.AbleCommercePage" Title="Contact Form" %>
<%@ Register Assembly="CommerceBuilder.Web" Namespace="CommerceBuilder.Web.UI.WebControls.WebParts" TagPrefix="cb" %>
<%-- 
<DisplayPage>
    <Name>Contact Form</Name>
    <NodeType>Webpage</NodeType>
    <Description>Contact Info and input form to generate email</Description>
</DisplayPage>
--%>
<asp:Content ID="ScripletContent" runat="server" ContentPlaceHolderID="PageContent">
    <cb:ScriptletPart ID="ContactForm" runat="server" Layout="One Column" Header="Standard Header" Content="Contact Form Page" Footer="Standard Footer" Title="Contact Form Page" AllowClose="False" AllowMinimize="false" />
</asp:Content>

Then a file called Contact Form Page.html in the App_Data/Custom/Content folder with this:

Code: Select all

<!--
<Description>
Displays the contents of a Contact Form page.
</Description>
-->
<div class="pageHeader">
<h1 class="heading">Contact Us</h1>
</div>
[[ConLib:Custom/ContactForm]]

Then a Conlib/Custom/contactForm.ascx with the form contents, but without any <form> tags. There might be another way of doing it, but I thought I'd better follow the Able pattern on this if I didn't want to leave odd ball code for someone else to figure out later. This form is at http://www.directpaintball.com/contact.aspx.
Thanks for trying to help. I ended up rewriting it to ASP.NET instead since it would really just take a while. Now, the webservice call is done via server-side c# .net codes. :)