 |
 |
 |
 |
 |
 |
 |
Miscellaneous Information |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
|
|
Question: How can I make my site open to the store instead of my
home page? Answer:
You can't 'move the store' but you could place an index.html in your main web directory that did an automatic refresh to the stores location.
The file would look like this:
<HEAD><TITLE></TITLE> <META HTTP-EQUIV="Refresh" CONTENT="0; URL=http://xyz.com/cgi-bin/miva?Merchant/merchant.mv"> </HEAD> <BODY>
<P><A HREF="http://xyz.com/cgi-bin/miva?Merchant/merchant.mv"> If the store doesn't appear automatically click this text. </A> </BODY>
Answered by Jeff Huber @ MIVA Corporation |
|
|
|
 |
|
|
|
Question: Will my MM storefront be available to customers while
I am performing maintenance on-line? If so, is there a work-around? Answer: It would still be online which isn't good if you are changing prices, etc. Even worse if you have a large products file which is maintained
on the PC and uploaded. You should have a store closing contingency for any number of reasons which I won't go into in this thread. Here's what I do. Right after the copyright and change comments in merchant.mv I
include the following lines of code.
<MvIF EXPR = "{fexists('closed.dat')}"> <HEAD><TITLE>File Maintenance</TITLE></HEAD> <BODY BGCOLOR = "#ffffff">
<FONT FACE = "Arial, Helvetica" SIZE = "-1"> We are currently updating files in our on-line store. We expect to be closed for approximately one hour. <BR> </FONT> </BODY>
<MvEXIT> </MvIF>
As you can see, if a file called closed.dat is in the root of my mivadata directory, visitors will get to this point and no further. I
keep a file in my mivadata directory called closed.dax. When I want to close the store, I rename it to closed.dat. When I'm ready to open, I rename it back to closed.dax. I choose an hour because any open baskets
will timeout on my site in 60 minutes, so if someone was shopping when it closed, they will encounter the message before the can finish. When they come back the basket will be gone. You could get a disgruntled
customer, but if you tell them up front that you perform inventory between 12-2AM on the last Sunday of the month, I don't think they'll fault you. A message in your welcome page during the day on that last
Sunday should suffice. This closure ensures no new baskets can be created. It allows you to close out all batches and process/print them. When you start deleting products or changing prices and
attributes all kinds of mismatches have a potential for creaping in. So make sure you close it all out before you make a bunch of changes. Just my opinion.
Answered by William Weiland @ http://wcw.simplenet.com/ |
|
|
 |
|
|
|
Question: Is there a fast way to check for broken thumbnail and
full sized images? Answer: I've uploaded the Image Checker into the Miva
Exchange and it has been reviewed for download. It will check for broken thumbnail and full size URLs in your store if the images are supposed to be on your domain. It
will not go off-site to check but will show you their link so you can check them manually. You can print out the missing image URLs and give it to the person who is supposed to take care of uploading them.
Answered by William Weiland @ http://wcw.simplenet.com/
|
|
|
 |
|
|
|
Question: How do you make the change in order to
break out of frames upon "Checkout" or "Buy One Now", so that SSL will be evident in the browser?Answer: In your mmui.mv you need to find the Checkout string and all of the Buy 1 Now and
Buy One Now strings. For the checkout search for: A HREF = "&[ g.secure_sessionurl ] and add target="_top" to the end of the string. Find the Buy 1 Now and Buy One Now buttons by searching for
those values and do the same. Backup First!
Answered by Mike Crawford @ www.nothinbutprints.com
|
|
|
|
 |
|
|
|
Question: How can I make a static page where the
user clicks on an "Advertised Specials" button for a particular car (category) and a "Search results" page will come up?
Answer: Just use something like this: <a href="http://www.yoursite.com/Merchant/merchant.mv?Store_Code=y
ourstorecode& Screen=SRCH&Search=Specials"></a>
Replace yoursite and yourstorecode and whatever the search is for.
Mike Crawford @ www.nothinbutprints.com |
|
|
|
 |
|
|
|
Question: How can incorporate the Add One button
to any page AND specify quantity?
Answer:
Just use a form like this which gives the ability to add different quantities and also takes the customer to the Basket Contents page everytime they add something. You can remove the "BASK" if that's not what
you want.
<FORM METHOD = "post" ACTION = "http://yoursite/Merchant/merchant.mv
> <TD ALIGN = "left" VALIGN = "top"> <FONT FACE = "" SIZE = "-1">
<INPUT TYPE = "hidden" NAME = "Action" VALUE = "ADPR"> <INPUT TYPE = "hidden" NAME = "Product_Code" VALUE = "yourproductcode">
<INPUT TYPE = "text" NAME = "Quantity" VALUE = 1 Size = 4> <INPUT TYPE = "hidden" NAME = "Screen" VALUE = "BASK">
<INPUT TYPE = "hidden" NAME = "Attributes" VALUE = "Yes"> <INPUT TYPE = "hidden" NAME = "Store_Code" VALUE = "yourstorecode">
<INPUT TYPE = "submit" VALUE = "Add To Basket"> </FONT> </TD> </FORM>
Mike Crawford @ www.nothinbutprints.com |
|
|
|
 |
|
|
|
Question: I would like to make sure I have a copy of my product information stored on my local drive for backup. Where is this
information stored (description, attributes, product code, etc.)? Answer: It is stored in several database (.dbf) files in the data
directory (probably /htsdata/ or /mivadata/). Data specific to your store and products will be stored in a sub-directory called '0000000X'. X is the store number. If you only have one store, it will be 1. Download the entire
directory, not just the *.dbf files. They need the *.mvx and *.dbt files that are used with themAnswered by Miva Corporation @ http://www.miva.com/support |
|
|
|
 |
|
|
|
Question: I checked the root directory for my graphics and it looks okay. However, the Miva graphics are not loading on my web
site. What am I doing wrong? Answer: Your base URL for graphics is probably set wrong. By default, it
should be set to "http://www.yourdomain.com/Merchant/" If you check the URL of the graphics, they should look like this: http://www.yourdomain.com/Merchant/graphics/mmui/prodlist.gif The same thing is probably true for any custom
background graphic that you may be using. Changing the root directory to "/Merchant/" should solve this as well. |
|
|
|
 |
|
|
|
Question: Why can't the computer at the actual
store cannot log in to the admin of miva? When they log in, our store front does not show up....this problem is not apparent on any other computers outside of the store Answer: When an error occurs on one computer accessing admin.mv (and merchant for that matter) it is
usually a difference in the Cookie settings on the individual browsers. Check to make sure that the browser you're having trouble with is accepting cookies.
Answered by Michael Brock |
|
|
|
 |
|
|
|
Question: Is there a way that i can incorporate
the products page of my miva directly into my webpage? For example if i have a product on a page i would like to have a bar at the bottom that says order and when you click that button it would take to you to the page on miva
that gives you the buy1 now page. Answer: You can do this pretty easily. You just need the url to the page in Miva Merchant you would like to link to. You can do this a few ways. In Merchant admin.mv there is a
"spider web" on the category and product screens that will give you the urls for that category or product. Or, you can go to the product or category by browsing your catalog and copy and paste the url from the address bar
into your html page.
Answered by Mike Crawford @ www.nothinbutprints.com |
|
|
|
 |
|
|
|
Question: How can I change the program to return me to a static page after selecting buy one now. Answer:
Returning from add basket to an html page Return to Customizing Miva Merchant Tips Index
If you want to be able to pass an url to Miva Merchant
to add an item to a basket and have the program then return your shoppers automatically to a webpage of your choice you would do the following. In the mmui.mv:
Search for:
<MvFUNCTION NAME = "UIModule_Dispatch"
Then scroll down until you see: <MvIF EXPR = "{ g.Screen EQ 'MFNT' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ MMUI_MallFront() }"> </MvIF>
And either right before or after that place this code:
<MvIF EXPR = "{ g.Screen EQ 'RTRN' }"> <MvASSIGN NAME = "l.ok" VALUE = "{ MMUI_Do_Return() }"> </MvIF>
Then place the following function code into the mmui.mv pretty much anywhere you want as long as it isn't nested in any other function declarations. The easiest thing to do would be to just stick it at
the very end of the file.
<MvFUNCTION NAME="MMUI_Do_Return" PARAMETERS="" STANDARDOUTPUTLEVEL=""> <MvIF EXPR="{NOT g.return_url}">
<MvASSIGN NAME="g.return_url" VALUE="http://yoursite.com"> </MvIF> <MIVA STANDARDOUTPUTLEVEL="text,html">
<HEAD><TITLE>Item Added To Basket</TITLE> <META HTTP-EQUIV="Refresh" CONTENT="0; URL=&[g.return_url:entities]"> </HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#999999" VLINK="#999999" ALINK="#999999">
<P><A HREF="&[g.return_url:entities]"> Your choice has been added to your shopping basket. If this page doesn't automatically reload click this text.
</A> </BODY> <MIVA STANDARDOUTPUTLEVEL=""> <MvFUNCRETURN VALUE="{1}"> </MvFUNCTION>
Change the 'http://yoursite.com' to the default location you want people to go to if for some reason you don't pass a return url to the script to return them to. Probably just your home page.
You can also change the html for that screen if you want it to look a bit different allthough it will usually just flash on the screen for an insttant before refreshing the page so it
probably doesn't matter much what it looks like.
How you use this change.
When you construct the urls for linking to add an item to the shopping basket replace the Screen=BASK With Screen=RTRN
And then at the end of the url add: &Return_Url=http://yoursite.com/whateverpage.html
For Example, if you started with:
http://somesite.com/Merchant/merchant.mv?Screen=BASK&Store_Co de=thestore
&Action=ADPR&Product_Code=thing1&Quantity=1
You would change it to: http://somesite.com/Merchant/merchant.mv?Screen=RTRN&Store_Co de=store&Action=ADPR
&Product_Code=thing1&Quantity=1&Return_Url=http://yoursite.com/ whateverpage.html
This will cause the program to add the item to the basket and then return to the page specified after the Return_Url=
Answered by Jeff Huber @ http://www.miva.com |
|
|
|
 |
|
|
|
Question: I want to move our existing store to a
new host. We have a Miva license for each location. The existing store already contains add-on modules, products, and customization. The new location is the same version of Miva and Merchant. Can anyone
tell me which files/directories are OK to copy over and which ones I shouldn't overide? Answer: There is no reason you cannot transfer all of the script and data files. Should then work
the same on the new site as it does on the old one. If its on unix server try this: telnet in and go to the dir that contains the mivascipt root.. Then type:
zip -r scriptdir yourdir (directoryname i do not know what it is) this will create a file called scriptdir.zip containing all the scripts images etc. including sub dir's. Move to the miva data root and do the same.
zip -r mydata yourdir. You will then have everything you need. ftp the files to the new server in the proper directories. And type: unzip scriptdir.zip and choose A for all.
do the same for the data using the respective directories and names.
Dave Ashmore @ http://www.sportsmansgear.com |
|
|
|
 |
|
|
|
Question: Can the Miva Search actually
search for other workd descriptions other than my categories' names? For example, blue, plastic, antique. If so, how? Answer: You can put Metatags in your product descriptions to enhance your search results.
<META NAME ="KEYWORDS" content="blue,plastic,antique"> This gives you the ability to add many descriptive terms to your individual products without the clutter of a long drawn out description.
Answered by Mike Crawford @
www.nothinbutprints.com |
|
|
|
 |
|
|
|
Question: I used the check module in some tests
but now cannot remove it. It reports that the module is in use by some orders, even though I have deleted all orders that were done by check. Why can't I delete this module? Answer: In the 'modules.dbf'
file, there is a field called 'refcount'. This field is keeping track of how many times that module is used, and prevents you from deleting a module while it is still in use.
As far as I know, it's reliable (but I'm VERY new to all of this). You _could_ go edit that table (using a dbase editor), and knock the 'refcount' down to 0, then try removing the module in admin.
WARNING: This reply
comes with NO warranty whatsoever because following it's advice may lead to the crash of your storefront, your server, the stock market, or any airplanes that are using your storefront to plan
their flight paths (among other things). Answered by Bill Guindon |
|
|
|
 |
|
|
|
Question: I cant find mmui directories, but am having a
hard time finding the file mmui.mv that you mentioned. Could you tell me where it is ???
Answer: The long answer here is that you need to draw yourself a site map, on paper, and put it on your wall.
It lists all of the directories and all of the files and is totally invaluable when navigating around your site. I personally cannot imagine how to operate without one.
something like:
/mystore
/Merchant - admin.mv, merchant.mv, setup.mv, upgrade.mv, /Lib - config.mv, db.mv, help.mv, util.mv /graphics - in my case, all of my uploaded graphics files /admin - *.gif /mmui - *.gif /modules - empty
/batch - stdacc/mv /currency - usmoney.mv /export -flatord.mv /fulfill - meremail.mv /import - kcimport.mv, prodimp.mv /payment - mod10.mv etc /shipping - etc /tax - etc
/ui - category_disp.mv, detail_disp.mv, kcui.mv, mmui.mv /kcui - kcuimal.dbf /mmui - muimall.dbf /00000001 - store databases, including *.dbf and *.mvx files (attr, baskets, backlist, backopts, cats, catxprod, groups
grppriv, opts, orders, orditems, orphans, products, states, storekey, storemod, upsell, upslprod, usrgrp) /mmui - mmui databases including *.dbf & *.mvx mmuicats, mmuistor /shoptax - /flatrate -
/meremail - /mod10 - /00000002 - your second store goes here /etc
Your map will be slightly different to mine, you need to navigate your site using an ftp program such as cuteFTP and draw your own map. Use
colors, make it pretty, after all would you try to find your way around the London underground without a tube map, or an AtoZ.
Answered by Ian Vincent |
|
|
|
 |
|
|
|
Question: Do you know how I could for example dump
"Store Welcome" or "Category Header" (etc) into HTML file and point Miva to them? Sort of like SSI? Answer: It is very easy to do includes. You can do something as simple as <MvDO
FILE="includepage.html">
Answered by Adam |
|
|
|
 |
|
|
|
Question: Why have I been getting this error
since I started working on my site, "Configuration Error: mivaroot is not defined" when I try to access admin.mv through the ssl? It works great non-secure. Answer:
Your site admin HAS NOT set you up as a user in miva's miva.conf (and probably authfile.) You need to contact your ISP and tell them you go into miva's configuration files and ad your site.
Dan Woolman |
|
|
|
 |
|
|
|
Question: How can I create a Search Form to be
able to have people either push a graphic that has Tori Amos on it, and that would start a search query for all tori amos records...
Answer:
Make a form that looks like this:
<FORM METHOD =
"post" ACTION = "....Merchant2/merchant.mv"> or use "...Merchant/merchant.mv" for versions below 2.0. Adjust this for your domain and merchant settings. In many cases, you will use http://yourdomain.com/cgi-bin/miva?Merchant/merchant.mv+, but that depends on how Merchant is configured on your server.
Then, add these hidden fields, and adjust the store code and search query for your case.
<INPUT TYPE = "hidden" NAME = "Screen" VALUE = "SRCH"> <INPUT TYPE = "hidden" NAME = "Store_Code" VALUE = "YourStoreCode"> <INPUT TYPE =
"hidden" NAME = "Search" VALUE = "YourSearchQuery">
Then, to make Tori be a clickable button, use a line like this:
<INPUT TYPE = "image" SRC = "Whatever.gif"
NAME = "Whatever">
And finally, be good and close your form tag
</FORM>
Wallah, you have a clickable Tori search button.
Answered by Adam |
|
|
|
 |
|
|
|
Question: How can I add a "Page Break" between batched orders so they print one order to a page?
Answer:
Locate the following code in the modules/batch/stdacct.mv:
</TABLE>
<MvDO FILE = "{ g.Module_Library_DB }" NAME = "l.found"
VALUE = { Order_FindNext_Batch ( l.batch_id ) }"> <MvIF EXPR = "{ l.found }">
<BR> </MvIF> </MvWHILE>
</BODY>
Between the </TABLE> and the <MvDo = add the following:
<p style="page-break-before:always">
So the end result looks like,
</TABLE>
<p style="page-break-before:always"> <MvDO FILE = "{ g.Module_Library_DB }" NAME =
"l.found" VALUE = { Order_FindNext_Batch ( l.batch_id ) }"> <MvIF EXPR = "{ l.found }">
<BR> </MvIF> </MvWHILE>
</BODY>
This works on IE5.0 and Netscape 4.7. Has
not been checked on other browsers This is a modification of an answer by Bruce Golub. Answered by Bruce Golub |
|
|
|
 |
|
|
|
Question: How can I place an elective Catalog Search on a static page? Answer:
Modify the below script and place it anywhere you want on a static page. You will need to change the "post" action URL and the option values. You may have as many option values as you want. This script works on the santafemall.
<form method="post" action="http://www.santafemall.com/cgi-bin/miva?Merchant/merchant.m v+" name=""> <div align="right">
<select name="Search" size="1">
<option value="ajc" selected>A J Designs</option>
<option value="acm">Automatic Coffee Machines</option>
<option value="lf">D&L Lighting</option>
<option value="ott">OTT Jewelry Mfgr</option>
<option value="rmt">Red Mountain Traders</option> </select>
<input type="hidden" name="Store_Code" value="sfmall">
<input type="hidden" name="Screen" value="SRCH">
<input type="submit" value="Search" name="submit"> </div>
</form> Compiled from numerous sources |
|
|
|
 |
|
|
|
Question: How can I change the error message received when
a product is missing or the product number is incorrect? Answer: MvFUNCTION NAME = "Screen_Error" of your util.mv. It is easy enough to customize. Addition Information
Answered by Adam |
|
|
|
 |
|
|
|
Question: Why am I getting the following error? Miva Merchant has encountered a fatal error and is unable to continue. The
following information may assist you in determining the cause of the error: Error Code: MER-ADM-00001 Description: Miva Merchant has not been initialized. Please use the
Miva Merchant Setup script to initialize the required data files. When trying to access the store, a similar fatal error message occurs. Answer: Something is wrong with your data files. If you packed data yesterday
and it ran correctly then everything was fine at that time. Something has happened since then to corrupt a file or files or to reconfigure your directory structure or a file or files are missing. Answered by Luray @ www.santafemall.com/faq |
|
|
|
 |
|
|
|
Question: Is it even possible with Miva to get a say, 15
second search with a db of this size? > >Answer: You can cut down the search times by modifying the MM db.mv _Product_Filter() function to only search 1 or 2 fields instead of all of them.
Answered by William Weiland @ http://wcw.simplenet.com/merchant/merchant.mv |
|
|
|
 |
|
|
|
Question: Does anyone have any idea what to
modify to get the po# number enter by the customer to be included in the Email Merchant Notication & Customer Order Confirmation Email.
Answer: It seems this question keeps getting asked along with how to
include addendum responses in the email. So here is an example of both that I routinely add right after the total line in my meremail and before the </SMTP> tag. To spare everybody from signing up to the merchant-coders
group to see how, here it is.
<MvEVAL EXPR = "{ asciichar( 10 ) $ 'Payment method: ' $ Modules.d.name }"> <MvEVAL EXPR = "{Orders.d.pay_data}">
<MvEVAL EXPR = "{ asciichar(
10 ) $ 'Web host......: ' $ g.question1}"> I left off a line: <MvDO FILE = "{ g.Module_Library_DB }" NAME = "l.ok" VALUE = "{
Module_Find_ID( Orders.d.pay_id ) }">
This line finds the module name so that you can display something like Check or Money Order or whatever as the payment method. Put the MvDO
just befor the <MvEVAL.... I have at the top of this email.
The result in the email looks something like:
Payment method: Check Payment 1621
Web host......: PremierDomain.Com
--
Answered by William Weiland @
http://wcw.simplenet.com/merchant/merchant.mv |
|
|
|
 |
|
|
|
Question: Why am I receiving the following error message?
Fatal Error: 'merchant-solution/Merchant/merchant.mv' references a symbolic link to a directory or file owned by a different user Answer: Figured it out. If you understand teckno speak while waiting for
an answer from the discussion group I got on the phone with my server administrator. WELLLLLLL he was tweaking stuff this morning. Need I say more?
The www directory on the server is set up in 3 parts while at the same
time all three make a whole. The www directory and www1 and www2 which all require symbolic links to each other on all the sites depending on what the main www setup for each site which is in my case www2. Well he set the symbolic
link to www instead of www2. The only program that even checks the route of the symbolic links is GUESS what? The Miva Merchant. No other programs such as FrontPage or cgi scripts ftp or anything else would check for the route
first. BUT MIVA DOES! Answered by Todd Sumrall |
|
|
|
 |
|
|
|
Question: Does anyone know how to change the "add 1 to
basket" to display a dropdown box and instead choose a quantity from, say: 1 to 10? Answer: after backing up your original mmui file, locate the following
<TD ALIGN = "left" VALIGN = "middle"> <FONT FACE = "&[ MMUI_Store.d.body_font:entities ]" SIZE = &[ MMUI_Store.d.body_fsize:entities ]"> Quantity: <INPUT TYPE =
"text" NAME = "Quantity" VALUE = 1 SIZE = 4> <INPUT TYPE = "submit" VALUE = "Add To Basket"> </FONT> </TD>
And replace it with:
<TD ALIGN = "left" VALIGN = "middle"> <FONT FACE = "&[ MMUI_Store.d.body_font:entities ]" SIZE = &[ MMUI_Store.d.body_fsize:entities ]"> Quantity:
<SELECT NAME = "Quantity" size=1> <OPTION VALUE="1">1</OPTION> <OPTION VALUE="2">2</OPTION> <OPTION VALUE="3">3</OPTION> etc....
</Select> <INPUT TYPE = "submit" VALUE = "Add To Basket"> </FONT> </TD>
Answered by refus |
|
|
|
 |
|