[ic] overriding MaxQuantityField in admin order entry UI -
resolved
Akash Shah
ic_user at hotmail.com
Sun Jul 25 00:56:22 EDT 2004
>From: Mike Heins <mike at perusion.com>
>
>Quoting Akash Shah (ic_user at hotmail.com):
> > >From: Mike Heins <mike at perusion.com>
> > >
> > >Quoting Jon Jensen (jon at endpoint.com):
> > >> On Fri, 23 Jul 2004, Ed LaFrance (New Media E.M.S.) wrote:
> > >>
> > >> > >We use the MaxQuantityField configuration setting to prevent
>ordering
> > >more
> > >> > >than stock. However, for the admin order entry UI, we want to
> > >override
> > >> > >this behavior, (probably add a checkbox to override it
> > >conditionally). Is
> > >> > >there any hidden parameter which can be set to achieve this
> > >functionality ?
> > >> >
> > >> > Try adding this near the top of admin/entry.html:
> > >> >
> > >> > [calc]
> > >> > $Config->{MaxQuantityField} = '';
> > >> > [/calc]
> > >> >
> > >> >
> > >> > ...I'm not sure if this is sticky from page to page. If it is not,
>you
> > >may
> > >> > have problems retaining your quantities when submitting the order.
> > >>
> > >> It's not sticky. (Except unpredictably in older IC versions in
>PreFork
> > >> mode due to a bug.)
> > >>
> > >> You could put that code in your admin Autoload
> > >> ($VENDROOT/lib/UI/pages/admin/.autoload) and then anywhere in the
>admin
> > >> should be free of the MaxQuantity restriction. There still may be
> > >trouble
> > >> on process or ui actions, though, come to think of it.
> > >>
> > >
> > >You could do:
> > >
> > >GlobalSub <<EOS
> > >sub remove_max_restriction {
> > > if($Vend::admin) {
> > > $Vend::Cfg->{MaxQuantityField} = '';
> > > }
> > > return;
> > >}
> > >EOS
> > >
> > >Then in catalog.cfg:
> > >
> > > Autoload remove_max_restriction
> > >
> > >
> > >--
> > >Mike Heins
> >
> > Thx for the help.
> >
> > I tried doing this using as a Sub as I don't have access to
>interchange.cfg
> > at my ISP.
>
>Boo, hiss.
>
> > I added to my catalog.cfg as a Sub and added the Autoload line
> > as under:
> >
> > #### begin snippet from my catalog.cfg
> >
> > ## not to allow people to order more than available inventory
> > MaxQuantityField inventory:quantity
> >
> > ## Define a Sub routine to remove the MaxQuantity requirement for admin
>user
> > Sub <<EOS
> > sub remove_max_restriction {
> > if($Vend::admin) {
>
>Here you want instead:
>
> if($Session->{admin}) {
>
> > $Config->{MaxQuantityField} = '';
> > }
> > return;
> > }
> > EOS
> > ## Autoload above defined routine
> > Autoload remove_max_restriction
> >
> > ### end code snippet
> >
> > I applied the changes and tested using the entry.html page. It does not
> > work :(. Is there any way to debug what can be going wrong here ? For
>the
> > subroutine, I tried both $Config->... and $Vend::Cfg->..., but the same
> > result. There are no errors in my catalog's error.log.
>
>The above should fix it.
>
> >
> > One of the things that I found is that if the inventory values is
>not-null,
> > it sets the mv_max_quantity for that item in the cart (looked thru the
> > session info on getconfig.html page) to that value. But if the entry is
> > null (there is no entry for that sku in the inventory table), then there
>is
> > no restriction for the maximum quantity. This happens even without
>applying
> > the changes mentioned above.
>
>That is how it is designed -- it allows you to have certain items that
>are not subject to checking, without putting an artificial number in.
>
>--
>Mike Heins
That resolved the issue :)..
Appreciate all your help
-Akash
_________________________________________________________________
Planning a family vacation? Check out the MSN Family Travel guide!
http://dollar.msn.com
More information about the interchange-users
mailing list