September is over

by Joe Payne 30. September 2008 08:56

Wow what a weird month September has been.  Solunar.com sales fell through the floor, barely half of what the previous month did.  My distributor says that's normal for this time of year but I think the outdoors industry is scared to death of high fuel prices and a freaked out worldwide financial crisis.

In the mean time, I did make some good progress on AbleMods.  Most everything I want up on the site is available now.  Considering the site has only been live for 30 days, I'd say it was a great success.

October is going to be a good education month for me.  I've noticed quite a bit of interest in B2B portals for AC7 sites, so I'm going to give that some more thought.  Maybe I can whip up a module that's generic enough to cover most bases.  I'd also like to get the FTP features installed into Feed Builder - that's kind of handy to have but it's a real pain how Able implemented the feed FTP class.  Not sure it's worth the hassle.

I'm super-interested in making some sort of product stock notification plug in.  Something that lets people "subscribe" to individual products, so when the item comes back in stock the visitor is automatically sent a notification email.  It'd be easy to do with full source code, but I want to try doing it with the base AC7 install.  There's gotta be a way. 

Weather has cooled down and we're finally getting some rain here in Indiana.  At least the yard isn't looking like the Arizona foothills any more Smile

Tags:

Home page changes

by Joe Payne 24. September 2008 09:42

Made a few tweaks to the home page today on AbleMods.com.  I wanted to see how it would look with the featured products across the bottom instead of clumped together in the body of the page.  So far I think I like it, but I'll give it some more time to see how it sets with me.

Plus I got started on adding some much-needed links to the site news and other RSS-enabled blog sections.  This will be finished up later this week so there should be plenty of easy-to-find news and information links on the home page.

Tags:

General News

Dashboard modules

by Joe Payne 24. September 2008 09:12

Added a few new dashboard modules to the arsenal today.  These nifty little addons are cheap and easy as heck to install - I really have grown to like the Latest Notes one especially.  Check them out on my store side http://www.AbleMods.com/ in the Dashboard Plugins category.

Tags: ,

New Products

Adding a total order count column to order summary

by Joe Payne 24. September 2008 09:09
Introduction
This modification will add a new column to your AC7 Order Summary page. The contents of the column will be a clickable number showing the total order history count for the customer that placed the order. This gives you the ability to quickly and easily see which customers are repeat customers without having to switch to the reports page.
The total count is all-inclusive and does not restrict by a particular date range. It is also a link. When clicked, it will take you to the Edit User page so the detailed history for that customer can be viewed.

Modifications
The page file we'll be changing is located in ~/Admin/Orders/. You'll need to change both the default.aspx and default.aspx.cs files, so back them both up before going any further.

Edit the ~/Admin/Orders/default.aspx file first. Look for this section of code:
Code:
                            <asp:TemplateField HeaderText="Customer" SortExpression="BillToLastName">
                                <ItemStyle HorizontalAlign="Center" />
                                <ItemTemplate>
                                    <asp:Label ID="CustomerName" runat="server" Text='<%# string.Format("{1}, {0}", Eval("BillToFirstName"), Eval("BillToLastName")) %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>


and replace it with this code:
Code:
                            <asp:TemplateField HeaderText="Customer" SortExpression="BillToLastName">
                                <ItemStyle HorizontalAlign="Center" />
                                <ItemTemplate>
                                    <asp:Label ID="CustomerName" runat="server" Text='<%# string.Format("{1}, {0}", Eval("BillToFirstName"), Eval("BillToLastName")) %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>


                            <asp:TemplateField HeaderText="History" SortExpression="">
                                <ItemStyle HorizontalAlign="Center" />
                                <ItemTemplate>
                                    <asp:HyperLink ID="OrderCount" runat="server" Text='<%# string.Format("{0}",OrderCount(Container.DataItem)) %>' SkinID="Link" NavigateUrl='<%# Eval("UserId", "~/Admin/People/Users/Edituser.aspx?UserId={0}") %>'></asp:HyperLink>
                                </ItemTemplate>
                            </asp:TemplateField>


Done? Good, save it. Now let's edit the ~/Admin/Orders/default.aspx.cs file. Look for this section of code:
Code:
    protected string GetPaymentStatus(object dataItem)
    {
        Order order = (Order)dataItem;
        if (order.PaymentStatus == OrderPaymentStatus.Paid) return "Paid";
        if (order.Payments.Count > 0)
        {
            order.Payments.Sort("PaymentDate");
            Payment lastPayment = order.Payments[order.Payments.Count - 1];
            return StringHelper.SpaceName(lastPayment.PaymentStatus.ToString());
        }
        return order.PaymentStatus.ToString();
    }


and replace it with this code:
Code:
    protected string GetPaymentStatus(object dataItem)
    {
        Order order = (Order)dataItem;
        if (order.PaymentStatus == OrderPaymentStatus.Paid) return "Paid";
        if (order.Payments.Count > 0)
        {
            order.Payments.Sort("PaymentDate");
            Payment lastPayment = order.Payments[order.Payments.Count - 1];
            return StringHelper.SpaceName(lastPayment.PaymentStatus.ToString());
        }
        return order.PaymentStatus.ToString();
    }

    protected string OrderCount(object dataItem)
    {
        Order order = (Order)dataItem;
        return order.User.Orders.Count.ToString();
    }


Save it when you're done. Upload the changes if you have to, then give it a try!

Conclusion
Knowing more about your customers is what makes a good business owner great. Give yourself another edge over your competition by quickly and easily knowing your repeat customers before their order has even been filled.

Tags: , ,

AC7 Articles

CPC Feed Builder Beta released

by Joe Payne 18. September 2008 20:39

CPC Feed Builder has been released to beta.  One minor error with a reference to PageHelper was encountered and is now fixed.

Tags: ,

Feed Builder

Month List