This repository has been archived by the owner on Dec 19, 2023. It is now read-only.
/
UPGRADE
123 lines (92 loc) · 4.87 KB
/
UPGRADE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
U P G R A D I N G F R O M 3 . 0 x
#############################################
IMPORTANT NOTE
If you use named parameters in [if ...] tags, of the
form:
[if type=!data term="something" op=!= compare=whatever]
something
[if]
you MUST NOW QUOTE the ! character. This was always intended
but is now enforced. You must do instead:
[if type="!data" term="something" op="!=" compare=whatever]
something
[if]
Basically, it follows the HTML specification for quoting. If
you have only the word characters [A-Za-z0-9_] you don't need
to quote, but otherwise you should.
On UNIX systems, you can find most non-conforming pages by changing
to your catalog directory and running:
find . -type f | xargs grep -l '[A-Za-z][A-Za-z][A-Za-z]=\!'
END IMPORTANT NOTE
#############################################
You should normally be able to simply install over the current software and
then restart the server. The only incompatible changes are bug fixes (which
may fool any workarounds you have made), and these:
* The TcpHost directive was accidentally disabled at Version
3.08 and has been reenabled. If you use tlink, you may find
that MiniVend won't accept a connection from a machine besides
"localhost". The global error.log file should give you the
information you need to set TcpHost to a value that will
allow connections.
* The UserDB add-on is now a full feature and is integrated into
MiniVend. While older calls with mv_subroutine will
still work if you keep your userdb.cfg file intact, you
are STRONGLY ENCOURAGED to use the new implementation. It
is much better anyway.
* A [loop search=...] now always returns a newline
as the last character. This may cause a problem with
some of the old demo checkout pages in the shipping
area. The solution is to set "lr=yes" in the
search specification.
* One gotcha has to do with the [page scan/se=whatever] tag
in NewTags mode. You should change it to the proper
[page scan se=whatever].
* DescriptionTrim is gone -- no biggie. 8-) If you did by
some very strange chance use this, you will have to set a
separate short description field.
The "simple" demo runs mostly unchanged from MiniVend 3.01 to 3.15
provided you don't try to mix versions of the demo pages. The usual source
of any upgrade problems is illegal syntax in tags, which might work on
earlier versions but is rejected in later, stricter versions. Especially
check nested [if ...] tags -- some problems can be solved by putting a
[then] [/then] around the true-executed condition.
IMPORTANT NOTE: It is highly recommended that you copy the current software to
a backup directory or an archive in case there is a problem and you wish to
return to the earlier version.
IMPORTANT NOTE: If you haven't changed over from [old] to NewTags, you
should do so now or make this the last version of MiniVend you ever use.
You certainly won't get any on-target support from the mail list. 8-)
See the file WHATSNEW for more information.
U P G R A D I N G F R O M 2 . 0 3
There are a few "gotchas" for 2.0x upgrades:
* If you have not changed the PriceBreaks directive from
the demo (you should disable it unless you are actually
using quantity pricing) you will get a message in the
error log that "no pricing database is defined". If you
are using quantity pricing, you will have to set it up
as a database with at least the fields "sku" and "price"
by placing those words on the first line, separated by
a TAB -- and your pricing must be separated from the
part number by a TAB as well.
* The CheckoutFrame, OrderFrame, SearchFrame, and any
other frame settings are now empty by default. If you
use frames, you must explicitly define those directives.
* Perl 5.002 will not work with MiniVend 3.0, and you
must update.
* The Cookies directive is now enabled by default.
* If you have produced a custom catalog template for use
by the makecat program, you cannot place two directives
directly after one another. An example is the
VendURL definition of '__MVC_SERVERNAME__MVC_CGIURL'.
That now must be '__MVC_SERVERNAME____MVC_CGIURL__'
which places underscores around the entire name of the
substitution target.
* If you are still using the old-style report with $variable
substitution, you must define the NewReport directive to 'No'.
* If you use the 'f' formula shipping type in shipping.asc, you
must either replace the 'x' that was used for the substitution
of the total to @@TOTAL@@, or you must set the OldShipping
to Yes. The change to the shipping.asc file is recommended,
as without it you will not be able to use the new shipping
features of MiniVend.
-------------------------------------------------------------