| Server IP : 216.92.14.13 / Your IP : 216.73.217.126 Web Server : Apache System : Linux vps4089.pairvps.com 5.15.0-190-generic #200-Ubuntu SMP Fri Aug 7 15:06:04 UTC 2026 x86_64 User : rmlac2fmr ( 1040637) PHP Version : 8.2.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/home/rmlac2fmr/public_html/Merchant2/ |
Upload File : |
<HTML><MIVA STANDARDOUTPUTLEVEL = "text, html, compresswhitespace" ERROROUTPUTLEVEL = "syntax, expression, runtime">
<IF version LT 3.91>
<HEAD><TITLE>Miva Engine Version Mismatch</TITLE></HEAD>
<BODY BGCOLOR = "#ffffff">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
Miva Merchant requires the Miva Engine, version <B>3.91</B> or higher.<BR>
You are running version <B><EVAL version></B><BR>
<BR>
Please contact <A HREF = "http://www.miva.com">Miva Corporation</A> for upgrade information.
</FONT>
</BODY>
<EXIT>
</IF>
<MvCOMMENT>
|
| Miva Merchant v4.x
|
| This file and the source codes contained herein are the property
| of Miva Corporation. Use of this file is restricted to the specific
| terms and conditions in the License Agreement associated with this
| file. Distribution of this file or portions of this file for uses
| not covered by the License Agreement is not allowed without a written
| agreement signed by an officer of Miva Corporation.
|
| Copyright 1998-2000 Miva Corporation. All rights reserved.
| http://www.miva.com/
|
| Miva Merchant Upgrade
| $Source: /home/cvs/merchant/Merchant/upgrade.mv,v $
|
| Prefix : MER-UPG-
| Next Error Code: 18
| Next Text ID : 153
|
</MvCOMMENT>
<MvASSIGN NAME = "l.ok" VALUE = "1">
<MvASSIGN NAME = "g.sessionurl" VALUE = "{ s.documenturl }">
<MvDO FILE = "4.00/lib/config.mv">
<MvASSIGN NAME = "g.Upgrade_Filename_Admin" VALUE = "{ g.Version_Path $ g.Filename_Admin }">
<MvASSIGN NAME = "g.Upgrade_Library_Utilities" VALUE = "{ g.Version_Path $ g.Library_Utilities }">
<MvASSIGN NAME = "g.Upgrade_Library_DB" VALUE = "{ g.Version_Path $ g.Library_DB }">
<MvIF EXPR = "{ NOT fexists( g.MerchantPath $ 'domain.dbf' ) }">
<MvLOCALIZED NAME = "l.error" ID = "#Error#">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Miva Merchant has not been initialized. Please use the Miva Merchant Setup script to initialize the required data files.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Miva Merchant wurde nicht initialisiert. Bitte benutzten Sie das Miva Merchant Setup-Skript, um die erforderlichen Datendateien zu initialisieren.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00001', l.error ) }">
<MvELSE>
<MvOPEN NAME = "Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00133">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Miva Merchant has not been initialized. Please use the Miva Merchant Setup script to initialize the required data files.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Miva Merchant wurde nicht initialisiert. Bitte benutzten Sie das Miva Merchant Setup-Skript, um die erforderlichen Datendateien zu initialisieren.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00001', l.error ) }">
<MvELSE>
<MvIF EXPR = "{ 'https://' IN g.sessionurl }">
<MvASSIGN NAME = "g.Secure" VALUE = 1>
<MvELSE>
<MvASSIGN NAME = "g.Secure" VALUE = 0>
</MvIF>
<MvIF EXPR = "{ g.Secure }">
<MvASSIGN NAME = "g.Module_Root_Versionless" VALUE = "{ Domain.d.mod_sroot }">
<MvELSE>
<MvASSIGN NAME = "g.Module_Root_Versionless" VALUE = "{ Domain.d.mod_root }">
</MvIF>
<MvIF EXPR = "{ Upgrade_Numeric_Version( Domain.d.version ) LT '4.00' }">
<MvASSIGN NAME = "g.Old_Module_Root" VALUE = "{ g.Module_Root_Versionless }">
<MvELSE>
<MvASSIGN NAME = "g.Old_Module_Root" VALUE = "{ g.Module_Root_Versionless $ Upgrade_Numeric_Version( Domain.d.version ) $ '/' }">
</MvIF>
<MvASSIGN NAME = "g.Module_Root" VALUE = "{ g.Module_Root_Versionless $ g.Version_Path }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ SetPaths() }">
<HEAD>
<META HTTP-EQUIV = "pragma" CONTENT = "no-cache">
<TITLE>
<MvLOCALIZED ID = "MER-UPG-00134">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Miva Merchant Upgrade</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Miva Merchant-Upgrade</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</TITLE>
</HEAD>
<MvEVAL EXPR = "{ Upgrade_Wizard_SetSteps() }">
<MvIF EXPR = "{ NOT len( g.Upgrade_ISP_Defaults ) }">
<MvEVAL EXPR = "{ Upgrade_Load_ISP_Defaults() }">
</MvIF>
<MvIF EXPR = "{ NOT g.Step }">
<MvASSIGN NAME = "l.pos" VALUE = "{ Upgrade_Get_Next_Step() }">
<MvASSIGN NAME = "g.Step" VALUE = "{ int( l.pos:step ) }">
</MvIF>
<MvIF EXPR = "{ g.Step GT g.Step_Wizard_Finish }">
<MvASSIGN NAME = "g.Action" VALUE = "UPGD">
</MvIF>
<MvIF EXPR = "{ len( g.Screen ) EQ 0 }">
<MvASSIGN NAME = "g.Screen" VALUE = "WIZZ">
</MvIF>
<MvIF EXPR = "{ ( Upgrade_Numeric_Version( Domain.d.version ) GE g.Merchant_Version ) AND ( g.Screen EQ 'WIZZ' ) }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00135">
<MvLOCALIZED-TOKEN NAME = "merc-vers" VALUE = "{ encodeentities( Upgrade_Numeric_Version( Domain.d.version ) ) }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Miva Merchant has already been upgraded to version <B>%merc-vers%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Miva Merchant wurde bereits mit Version <B>%merc-vers%</B> aktualisiert</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00002', l.error ) }">
<MvELSE>
<MvCLOSE NAME = "Domain">
<MvIF EXPR = "{ l.ok }">
<MvIF EXPR = "{ g.Action EQ 'UPGD' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Action_Upgrade() }">
</MvIF>
<MvIF EXPR = "{ g.action EQ 'FUPL' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Action_FileUpload() }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.ok }">
<MvIF EXPR = "{ g.Data_Entry_Error OR g.Have_Fields }">
<MvASSIGN NAME = "g.Load_Fields" VALUE = 0>
<MvELSE>
<MvASSIGN NAME = "g.Load_Fields" VALUE = 1>
</MvIF>
<MvIF EXPR = "{ g.Screen EQ 'WIZZ' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Screen_Upgrade_Wizard() }">
</MvIF>
<MvIF EXPR = "{ g.Screen EQ 'UPGD' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Screen_Upgrade() }">
</MvIF>
<MvIF EXPR = "{ g.Screen EQ 'FINI' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Screen_Upgrade_Finished() }">
</MvIF>
<MvIF EXPR = "{ g.Screen EQ 'FUPL' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Screen_FileUpload() }">
</MvIF>
</MvIF>
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ NOT l.ok }">
<MvIF EXPR = "{ len( g.Error_Message ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-SET-00004">
<MvLOCALIZED-TOKEN NAME = "action" VALUE = "{ encodeentities( g.Action ) }">
<MvLOCALIZED-TOKEN NAME = "screen" VALUE = "{ encodeentities( g.Screen ) }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<B>Unknown Error</B><BR><BR> Action = %action%<BR> Screen = %screen%
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<B>Unbekannter Fehler</B><BR><BR> Ausf�hrung = %action%<BR> Bildschirm = %screen%
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00001', l.error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Screen_Error() }">
</MvIF>
</HTML>
<MvEXIT>
<MvCOMMENT>
|
| *************************************************************************************************
| Upgrade Wizard Steps
| *************************************************************************************************
|
</MvCOMMENT>
<MvFUNCTION NAME = "InitializeStateArray" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.count" VALUE = 1>
<MvIF EXPR = "{ sfcopy( g.Version_Path $ 'STATES.lst', 'STATES.lst' ) }">
<MIVA MvIMPORT_Error = "nonfatal, nodisplay">
<MvIMPORT FILE = "STATES.lst"
FIELDS = "l.name, l.code"
DELIMITER = "|">
<MvASSIGN NAME = "g.State" INDEX = "{ l.count }" MEMBER = "Name" VALUE = "{ l.name }">
<MvASSIGN NAME = "g.State" INDEX = "{ l.count }" MEMBER = "Code" VALUE = "{ l.code }">
<MvASSIGN NAME = "l.count" VALUE = "{ l.count + 1 }">
</MvIMPORT>
<MvIF EXPR = "{ MvIMPORT_Error }">
<MvDO FILE = "{ g.Module_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-SET-00001', MvIMPORT_Error ) }">
</MvIF>
<MvASSIGN NAME = "l.deleted" VALUE = "{ fdelete( 'STATES.lst' ) }">
</MvIF>
<MvASSIGN NAME = "g.State_Count" VALUE = "{ l.count }">
</MvFUNCTION>
<MvFUNCTION NAME = "InitializeCountryArray" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.count" VALUE = 1>
<MvASSIGN NAME = "l.country_file" VALUE = "{ 'COUNTRIES.' $ s.miva_language }">
<MvIF EXPR = "{ sfcopy( g.Version_Path $ l.country_file, l.country_file ) }">
<MIVA MvIMPORT_Error = "nonfatal, nodisplay">
<MvIMPORT FILE = "{ l.country_file }"
FIELDS = "l.name, l.code, l.num"
DELIMITER = "|">
<MvASSIGN NAME = "g.Country" INDEX = "{ l.count }" MEMBER = "Name" VALUE = "{ l.name }">
<MvASSIGN NAME = "g.Country" INDEX = "{ l.count }" MEMBER = "Alpha" VALUE = "{ l.code }">
<MvASSIGN NAME = "g.Country" INDEX = "{ l.count }" MEMBER = "Numeric" VALUE = "{ l.num }">
<MvASSIGN NAME = "l.count" VALUE = "{ l.count + 1 }">
</MvIMPORT>
<MvIF EXPR = "{ MvIMPORT_Error }">
<MvDO FILE = "{ g.Module_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-SET-00004', MvIMPORT_Error ) }">
</MvIF>
<MvASSIGN NAME = "l.deleted" VALUE = "{ fdelete( l.country_file ) }">
</MvIF>
<MvASSIGN NAME = "g.Country_Count" VALUE = "{ l.count }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_FieldError" PARAMETERS = "step, field, message" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "g.Step" VALUE = "{ l.step }">
<MvASSIGN NAME = "g.Error_Field" VALUE = "{ l.field }">
<MvASSIGN NAME = "g.Error_Field_Message" VALUE = "{ l.message }">
<MvASSIGN NAME = "g.Data_Entry_Error" VALUE = 1>
<MvFUNCTIONRETURN VALUE = 0>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_FieldError" PARAMETERS = "step, store_pos, field, message" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "g.Step" VALUE = "{ l.step }">
<MvASSIGN NAME = "g.Error_Field" VALUE = "{ l.field }">
<MvASSIGN NAME = "g.Error_Field_Message" VALUE = "{ l.message }">
<MvASSIGN NAME = "g.Error_Store_Pos" VALUE = "{ l.store_pos }">
<MvASSIGN NAME = "g.Data_Entry_Error" VALUE = 1>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.store_pos }" MEMBER = "Valid" VALUE = "">
<MvFUNCTIONRETURN VALUE = 0>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Button_Next" PARAMETERS = "" STANDARDOUTPUTLEVEL = "text,html,compresswhitespace">
<MvASSIGN NAME = "l.new_step" VALUE = "{ Upgrade_Get_Next_Step() }">
<MvIF EXPR = "{ l.new_step:step LT 1 }">
<MvELSE>
<MvIF EXPR = "{ l.new_step:step GT g.Step_Wizard_Finish }">
<MvLOCALIZED NAME = "l.text" ID = "MER-UPG-00038">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upgrade</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Upgrade</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "l.onclick" VALUE = "Upgrade_Finish();">
<MvELSE>
<MvLOCALIZED NAME = "l.text" ID = "MER-UPG-00037">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Next</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Weiter</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "l.onclick" VALUE = "{ 'Upgrade_Goto( ' $ l.new_step:step $ ', ' $ l.new_step:store $ ', ' $ l.new_step:module $ ' )' }">
</MvIF>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "button" VALUE = "{ l.text }" ONCLICK = "{ l.onclick }">
</FONT>
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Button_Previous" PARAMETERS = "" STANDARDOUTPUTLEVEL = "text,html,compresswhitespace">
<MvASSIGN NAME = "l.new_step" VALUE = "{ Upgrade_Get_Previous_Step() }">
<MvIF EXPR = "{ l.new_step:step LT 1 }">
<MvELSE>
<MvLOCALIZED NAME = "l.text" ID = "MER-SET-00134">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Previous</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Zur�ck</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "l.onclick" VALUE = "{ 'Upgrade_Goto( ' $ l.new_step:step $ ', ' $ l.new_step:store $ ', ' $ l.new_step:module $ ' )' }">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "button" VALUE = "{ l.text }" ONCLICK = "{ l.onclick }">
</FONT>
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Button_Upgrade" PARAMETERS = "onclick" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvLOCALIZED NAME = "l.text" ID = "MER-UPG-00038">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upgrade</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Upgrade</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvEVAL EXPR = "{ '<INPUT TYPE = "button" VALUE = "' $ l.text $ '" ONCLICK = "' $ l.onclick $ '">' }">
</FONT>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_BeginScreen" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<HEAD>
<META HTTP-EQUIV = "pragma" CONTENT = "no-cache">
<TITLE>
<MvLOCALIZED ID = "MER-SET-00132">
<MvLOCALIZED-TOKEN NAME = "merc-vers" VALUE = "{ encodeentities( g.Merchant_Version ) }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Miva Merchant v%merc-vers% Setup</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Miva Merchant v%merc-vers% Setup</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</TITLE>
<MvASSIGN NAME = "g.baseurl" VALUE = "{ Domain.d.base_url }">
<MvIF EXPR = "{ Domain.d.base_surl }">
<MvASSIGN NAME = "g.secure_baseurl" VALUE = "{ Domain.d.base_surl }">
<MvELSE>
<MvASSIGN NAME = "g.secure_baseurl" VALUE = "{ g.baseurl }">
</MvIF>
<MvIF EXPR = "{ g.Secure }">
<BASE HREF = "{ g.secure_baseurl }">
<MvELSE>
<BASE HREF = "{ g.baseurl }">
</MvIF>
<MvDO FILE = "{ g.Module_Admin }" NAME = "l.javascript" VALUE = "{ JavaScript_SetVariables( 'g', 'Screen' ) }">
<MvEVAL EXPR = "{ l.javascript }">
<SCRIPT LANGUAGE = "JavaScript">
<!--
function FieldError( field, message )
{
if ( field.length )
{
document.forms[ Screen ].elements[ field ].select();
document.forms[ Screen ].elements[ field ].focus();
}
alert( message );
}
function Upgrade_Next()
{
document.forms[ Screen ].elements[ 'New_Step' ].value = parseInt( document.forms[ Screen ].elements[ 'Step' ].value ) + 1;
document.forms[ Screen ].submit();
}
function Upgrade_Previous()
{
document.forms[ Screen ].elements[ 'New_Step' ].value = parseInt( document.forms[ Screen ].elements[ 'Step' ].value ) - 1;
document.forms[ Screen ].submit();
}
function Upgrade_Finish()
{
document.forms[ Screen ].elements[ 'New_Step' ].value = 0;
document.forms[ Screen ].elements[ 'Action' ].value = 'UPGD';
document.forms[ Screen ].submit();
}
function Upgrade_Goto( step, store, module )
{
document.forms[ Screen ].elements[ 'New_Step' ].value = step;
document.forms[ Screen ].elements[ 'Upgrade_Store_New_Pos' ].value = store;
document.forms[ Screen ].elements[ 'Upgrade_Module_New_Pos' ].value = module;
document.forms[ Screen ].submit();
}
//-->
</SCRIPT>
</HEAD>
<MvIF EXPR = "{ len( g.Error_Field ) OR ( len( g.Error_Field_Message ) ) }">
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.error_field" VALUE = "{ JavaScriptEncode( g.Error_Field ) }">
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.error_field_message" VALUE = "{ JavaScriptEncode( g.Error_Field_Message ) }">
<MvIF EXPR = "{ len( g.Error_Store_Pos ) }">
<MvASSIGN NAME = "g.Upgrade_Store_Pos" VALUE = "{ g.Error_Store_Pos }">
</MvIF>
<BODY BGCOLOR = "#ffffff" BACKGROUND = "{ 'graphics/' $ s.miva_language $ '/wizards/blade_bg.gif' }" ONLOAD = "{ 'FieldError( \'' $ l.error_field $ '\', \'' $ l.error_field_message $ '\' );' }">
<MvELSE>
<BODY BGCOLOR = "#ffffff" BACKGROUND = "{ 'graphics/' $ s.miva_language $ '/wizards/blade_bg.gif' }">
</MvIF>
<FORM NAME = "{ encodeentities( g.Screen ) }" METHOD = "POST" ACTION = "{ encodeentities( g.sessionurl ) }">
<INPUT TYPE = "hidden" NAME = "Screen" VALUE = "{ encodeentities( g.Screen ) }">
<INPUT TYPE = "hidden" NAME = "Action" VALUE = "">
<INPUT TYPE = "hidden" NAME = "Step" VALUE = "{ encodeentities( g.Step ) }">
<INPUT TYPE = "hidden" NAME = "New_Step" VALUE = "{ encodeentities( g.Step ) }">
<INPUT TYPE = "hidden" NAME = "Have_Fields" VALUE = "1">
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0 WIDTH = "100%">
<MvLOCALIZED NAME = "l.restart_text" ID = "MER-SET-00139">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Restart</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Neu starten</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "l.close_text" ID = "MER-SET-00140">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Close</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Schlie�en</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "l.upgrade_text" ID = "MER-UPG-00141">
<MvLOCALIZED-TOKEN NAME = "version" VALUE = "{ g.Merchant_Version }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Miva Merchant v%version% Upgrade</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<TR><TD ALIGN = "left" VALIGN = "top">
<IMG BORDER = 0 ALT = "{ l.upgrade_text }" SRC = "{ 'graphics/' $ s.miva_language $ '/wizards/upgrade_sm4x.gif' }">
</TD><TD ALIGN = "right" VALIGN = "top" NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<A HREF = "{ g.sessionurl }"><IMG SRC = "{ 'graphics/' $ s.miva_language $ '/wizards/restart.gif' }" BORDER = 0 ALT = "{ encodeentities( l.restart_text ) }"></A><A HREF = "#" ONCLICK = "window.close(); return false;"><IMG SRC = "{ 'graphics/' $ s.miva_language $ '/wizards/close.gif' }" BORDER = 0 ALT = "{ encodeentities( l.close_text ) }"></A>
</FONT>
</TD></TR>
<TR><TD ALIGN = "left" VALIGN = "top" COLSPAN = 2>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_EndScreen" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
</TD></TR>
</TABLE>
</FORM>
</BODY>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Wizard_SetSteps" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "g.Step_Wizard_Welcome" VALUE = 1>
<MvASSIGN NAME = "g.Step_Wizard_LoginPassword" VALUE = 2>
<MvASSIGN NAME = "g.Step_Wizard_DomainLicense" VALUE = 3>
<MvASSIGN NAME = "g.Step_Wizard_DomainRegistration" VALUE = 4>
<MvASSIGN NAME = "g.Step_Wizard_StoreLicense" VALUE = 5>
<MvASSIGN NAME = "g.Step_Wizard_StoreRegistration" VALUE = 6>
<MvASSIGN NAME = "g.Step_Wizard_ModuleVersionCheck" VALUE = 7>
<MvASSIGN NAME = "g.Step_Wizard_Finish" VALUE = 8>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Get_Next_Step" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.pos" MEMBER = "step" VALUE = "{ int( g.Step ) }">
<MvASSIGN NAME = "l.pos" MEMBER = "store" VALUE = "{ int( g.Upgrade_Store_Pos ) }">
<MvASSIGN NAME = "l.pos" MEMBER = "module" VALUE = "{ int( g.Upgrade_Module_Pos ) }">
<MvASSIGN NAME = "l.step_found" VALUE = "0">
<MvWHILE EXPR = "{ (NOT l.step_found) AND (l.pos:step LE g.Step_Wizard_Finish) }">
<MvIF EXPR = "{ ( l.pos:step EQ g.Step_Wizard_StoreRegistration ) AND (l.pos:store LT g.Upgrade_Store_Count ) }">
<MvASSIGN NAME = "l.pos" MEMBER = "step" VALUE = "{ g.Step_Wizard_StoreLicense }">
<MvASSIGN NAME = "l.pos" MEMBER = "store" VALUE = "{ l.pos:store + 1 }">
<MvELSE>
<MvIF EXPR = "{ ( l.pos:step EQ g.Step_Wizard_ModuleVersionCheck ) AND (l.pos:module LT g.Upgrade_Module_Count ) }">
<MvASSIGN NAME = "l.pos" MEMBER = "module" VALUE = "{ l.pos:module + 1 }">
<MvELSE>
<MvASSIGN NAME = "l.pos" MEMBER = "step" VALUE = "{ l.pos:step + 1 }">
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_StoreLicense }">
<MvASSIGN NAME = "l.pos" MEMBER = "store" VALUE = "1">
<MvELSE>
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_ModuleVersionCheck }">
<MvASSIGN NAME = "l.pos" MEMBER = "module" VALUE = "1">
</MvIF>
</MvIF>
</MvIF>
</MvIF>
<MvASSIGN NAME = "l.step_found" VALUE = "{ Upgrade_Check_Step( l.pos ) }">
</MvWHILE>
<MvFUNCTIONRETURN VALUE = "{ l.pos }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Get_Previous_Step" PARAMETERS = "" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.pos" MEMBER = "step" VALUE = "{ int( g.Step ) }">
<MvASSIGN NAME = "l.pos" MEMBER = "store" VALUE = "{ int( g.Upgrade_Store_Pos ) }">
<MvASSIGN NAME = "l.pos" MEMBER = "module" VALUE = "{ int( g.Upgrade_Module_Pos ) }">
<MvASSIGN NAME = "l.step_found" VALUE = "0">
<MvWHILE EXPR = "{ (NOT l.step_found) AND (l.pos:step GT 0) }">
<MvIF EXPR = "{ ( l.pos:step EQ g.Step_Wizard_StoreLicense ) AND (l.pos:store GT 1 ) }">
<MvASSIGN NAME = "l.pos" MEMBER = "step" VALUE = "{ g.Step_Wizard_StoreRegistration }">
<MvASSIGN NAME = "l.pos" MEMBER = "store" VALUE = "{ l.pos:store - 1 }">
<MvELSE>
<MvIF EXPR = "{ ( l.pos:step EQ g.Step_Wizard_ModuleVersionCheck ) AND (l.pos:module GT 1 ) }">
<MvASSIGN NAME = "l.pos" MEMBER = "module" VALUE = "{ l.pos:module - 1 }">
<MvELSE>
<MvASSIGN NAME = "l.pos" MEMBER = "step" VALUE = "{ l.pos:step - 1 }">
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_StoreRegistration }">
<MvASSIGN NAME = "l.pos" MEMBER = "store" VALUE = "{ g.Upgrade_Store_Count }">
<MvELSE>
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_ModuleVersionCheck }">
<MvASSIGN NAME = "l.pos" MEMBER = "module" VALUE = "{ g.Upgrade_Module_Count }">
</MvIF>
</MvIF>
</MvIF>
</MvIF>
<MvASSIGN NAME = "l.step_found" VALUE = "{ Upgrade_Check_Step( l.pos ) }">
</MvWHILE>
<MvFUNCTIONRETURN VALUE = "{ l.pos }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Check_Step" PARAMETERS = "pos" STANDARDOUTPUTLEVEL = "">
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_Welcome }">
<MvIF EXPR = "{ g.Upgrade_ISP_Skip_Welcome }">
<MvFUNCTIONRETURN VALUE = "0">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_LoginPassword }">
<MvIF EXPR = "{ g.Upgrade_ISP_Skip_LoginPassword }">
<MvFUNCTIONRETURN VALUE = "0">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_DomainLicense }">
<MvIF EXPR = "{ g.Upgrade_ISP_Skip_DomainLicense }">
<MvFUNCTIONRETURN VALUE = "0">
<MvELSE>
<MvIF EXPR = "{ g.Upgrade_DomainLicense_Required }">
<MvFUNCTIONRETURN VALUE = "1">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "0">
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_DomainRegistration }">
<MvIF EXPR = "{ g.Upgrade_ISP_Skip_DomainRegistration }">
<MvFUNCTIONRETURN VALUE = "0">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_StoreLicense }">
<MvIF EXPR = "{ g.Upgrade_ISP_Skip_StoreLicense OR ( g.Upgrade_Store_Count EQ 0 ) }">
<MvFUNCTIONRETURN VALUE = "0">
<MvELSE>
<MvIF EXPR = "{ g.Upgrade_Store[ l.pos:store ]:License_Required }">
<MvFUNCTIONRETURN VALUE = "1">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "0">
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_StoreRegistration }">
<MvIF EXPR = "{ g.Upgrade_ISP_Skip_StoreRegistration OR ( g.Upgrade_Store_Count EQ 0 ) }">
<MvFUNCTIONRETURN VALUE = "0">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_ModuleVersionCheck }">
<MvIF EXPR = "{ g.Upgrade_ISP_Skip_ModuleVersionCheck OR ( g.Upgrade_Module_Count EQ 0 ) }">
<MvFUNCTIONRETURN VALUE = "0">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.pos:step EQ g.Step_Wizard_Finish }">
<MvIF EXPR = "{ g.Upgrade_ISP_Skip_Finish }">
<MvFUNCTIONRETURN VALUE = "0">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_License_Validate" PARAMETERS = "type, version, license" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.API" VALUE = "{ s.apitype }">
<MvASSIGN NAME = "l.MERCHANT_HOST" VALUE = "{ s.server_name }">
<MvASSIGN NAME = "l.LICENSE_NUMBER" VALUE = "{ l.license }">
<MvASSIGN NAME = "l.MERCHANT_VERSION" VALUE = "{ l.version }">
<MvASSIGN NAME = "l.PRODUCT_LINE" VALUE = "MERCHANT">
<MvASSIGN NAME = "l.PRODUCT_TYPE" VALUE = "{ l.type }">
<MvASSIGN NAME = "l.OPERATIONS" VALUE = "VALIDATE">
<MvOPEN NAME = "Domain_Temp" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvASSIGN NAME = "l.MERCHANT_STOREURL" VALUE = "{ Domain_Temp.d.mm_url }">
<MvCLOSE NAME = "Domain_Temp">
<MvASSIGN NAME = "l.valid_value" VALUE = "">
<MvASSIGN NAME = "l.error_code_value" VALUE = "">
<MvASSIGN NAME = "l.error_message_value" VALUE = "">
<MvCALL METHOD = "POST"
ACTION = "http://licensemgr.miva.com/gateway/gateway.mv"
FIELDS = "MERCHANT_HOST, API, LICENSE_NUMBER, MERCHANT_VERSION, OPERATIONS, PRODUCT_TYPE, PRODUCT_LINE, MERCHANT_STOREURL">
<MvIF EXPR = "{ s.callobjectelement EQ 'LmLICENSE' }">
<MvASSIGN NAME = "l.attribute" VALUE = "1">
<MvWHILE EXPR = "{ ( l.attribute LE s.callobjectnumattributes ) }">
<MvIF EXPR = "{ s.callobjectattribute[ l.attribute ] EQ 'VALID' }">
<MvASSIGN NAME = "l.valid_value" VALUE = "{ s.callobjectvalue[ l.attribute ] }">
</MvIF>
<MvIF EXPR = "{ s.callobjectattribute[ l.attribute ] EQ 'ERROR_CODE' }">
<MvASSIGN NAME = "l.error_code_value" VALUE = "{ s.callobjectvalue[ l.attribute ] }">
</MvIF>
<MvIF EXPR = "{ s.callobjectattribute[ l.attribute ] EQ 'ERROR_MESSAGE' }">
<MvASSIGN NAME = "l.error_message_value" VALUE = "{ s.callobjectvalue[ l.attribute ] }">
</MvIF>
<MvASSIGN NAME = "l.attribute" VALUE = "{ l.attribute + 1 }">
</MvWHILE>
</MvIF>
</MvCALL>
<MvIF EXPR = "{ MvCALL_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.error" VALUE = "{ Error( 'MER-UPG-00002', MvCALL_Error ) }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
<MvIF EXPR = "{ toupper( l.valid_value ) NE 'YES' }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.error" VALUE = "{ Error( l.error_code_value, l.error_message_value ) }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_License_Activate" PARAMETERS = "type, old_license, old_license_email, upgrade_license" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.LICENSE_NUMBER" VALUE = "{ l.upgrade_license }">
<MvASSIGN NAME = "l.OLD_LICENSE_NUMBER" VALUE = "{ l.old_license }">
<MvASSIGN NAME = "l.PRODUCT_LINE" VALUE = "MERCHANT">
<MvASSIGN NAME = "l.PRODUCT_TYPE" VALUE = "{ l.type }">
<MvASSIGN NAME = "l.OPERATIONS" VALUE = "ACTIVATE">
<MvASSIGN NAME = "l.EMAIL" VALUE = "{ l.old_license_email }">
<MvASSIGN NAME = "l.LANGUAGE" VALUE = "{ s.miva_language }">
<MvOPEN NAME = "Domain_Temp" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvASSIGN NAME = "l.MERCHANT_STOREURL" VALUE = "{ Domain_Temp.d.mm_url }">
<MvCLOSE NAME = "Domain_Temp">
<MvASSIGN NAME = "l.activated_value" VALUE = "">
<MvASSIGN NAME = "l.error_code_value" VALUE = "">
<MvASSIGN NAME = "l.error_message_value" VALUE = "">
<MvCALL METHOD = "POST"
ACTION = "http://licensemgr.miva.com/gateway/gateway.mv"
FIELDS = "PRODUCT_LINE, OPERATIONS, OLD_LICENSE_NUMBER, LICENSE_NUMBER, EMAIL, LANGUAGE, MERCHANT_STOREURL">
<MvIF EXPR = "{ s.callobjectelement EQ 'LmLICENSE' }">
<MvASSIGN NAME = "l.attribute" VALUE = "1">
<MvWHILE EXPR = "{ ( l.attribute LE s.callobjectnumattributes ) }">
<MvIF EXPR = "{ s.callobjectattribute[ l.attribute ] EQ 'ACTIVATED' }">
<MvASSIGN NAME = "l.activated_value" VALUE = "{ s.callobjectvalue[ l.attribute ] }">
</MvIF>
<MvIF EXPR = "{ s.callobjectattribute[ l.attribute ] EQ 'ERROR_CODE' }">
<MvASSIGN NAME = "l.error_code_value" VALUE = "{ s.callobjectvalue[ l.attribute ] }">
</MvIF>
<MvIF EXPR = "{ s.callobjectattribute[ l.attribute ] EQ 'ERROR_MESSAGE' }">
<MvASSIGN NAME = "l.error_message_value" VALUE = "{ s.callobjectvalue[ l.attribute ] }">
</MvIF>
<MvASSIGN NAME = "l.attribute" VALUE = "{ l.attribute + 1 }">
</MvWHILE>
</MvIF>
</MvCALL>
<MvIF EXPR = "{ MvCALL_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.error" VALUE = "{ Error( 'MER-UPG-00003', MvCALL_Error ) }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
<MvIF EXPR = "{ toupper( l.activated_value ) NE 'YES' }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.error" VALUE = "{ Error( l.error_code_value, l.error_message_value ) }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_License_Register" PARAMETERS = "type, license, owner, company, address, city, state, zip, country, phone, fax, email" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.API" VALUE = "{ s.apitype }">
<MvASSIGN NAME = "l.MERCHANT_HOST" VALUE = "{ s.server_name }">
<MvASSIGN NAME = "l.LICENSE_NUMBER" VALUE = "{ l.license }">
<MvASSIGN NAME = "l.MERCHANT_VERSION" VALUE = "{ g.Merchant_Version }">
<MvASSIGN NAME = "l.NAME" VALUE = "{ l.owner }">
<MvASSIGN NAME = "l.COMPANY" VALUE = "{ l.company }">
<MvASSIGN NAME = "l.ADDRESS" VALUE = "{ l.address }">
<MvASSIGN NAME = "l.CITY" VALUE = "{ l.city }">
<MvASSIGN NAME = "l.STATE" VALUE = "{ l.state }">
<MvASSIGN NAME = "l.ZIP" VALUE = "{ l.zip }">
<MvASSIGN NAME = "l.COUNTRY" VALUE = "{ l.country }">
<MvASSIGN NAME = "l.PHONE" VALUE = "{ l.phone }">
<MvASSIGN NAME = "l.FAX" VALUE = "{ l.fax }">
<MvASSIGN NAME = "l.EMAIL" VALUE = "{ l.email }">
<MvASSIGN NAME = "l.PRODUCT_LINE" VALUE = "MERCHANT">
<MvASSIGN NAME = "l.PRODUCT_TYPE" VALUE = "{ l.type }">
<MvASSIGN NAME = "l.OPERATIONS" VALUE = "REGISTER">
<MvASSIGN NAME = "l.LANGUAGE" VALUE = "{ s.miva_language }">
<MvOPEN NAME = "Domain_Temp" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvASSIGN NAME = "l.MERCHANT_STOREURL" VALUE = "{ Domain_Temp.d.mm_url }">
<MvCLOSE NAME = "Domain_Temp">
<MvASSIGN NAME = "l.valid_value" VALUE = "">
<MvASSIGN NAME = "l.error_code_value" VALUE = "">
<MvASSIGN NAME = "l.error_message_value" VALUE = "">
<MvCALL METHOD = "POST"
ACTION = "http://licensemgr.miva.com/gateway/gateway.mv"
FIELDS = "API, MERCHANT_HOST, LICENSE_NUMBER, MERCHANT_VERSION, NAME, COMPANY, ADDRESS, CITY,
STATE, ZIP, COUNTRY, PHONE, FAX, EMAIL, PRODUCT_LINE, PRODUCT_TYPE, OPERATIONS, LANGUAGE, MERCHANT_STOREURL">
<MvIF EXPR = "{ s.callobjectelement EQ 'LmLICENSE' }">
<MvASSIGN NAME = "l.attribute" VALUE = "1">
<MvWHILE EXPR = "{ ( l.attribute LE s.callobjectnumattributes ) }">
<MvIF EXPR = "{ s.callobjectattribute[ l.attribute ] EQ 'VALID' }">
<MvASSIGN NAME = "l.valid_value" VALUE = "{ s.callobjectvalue[ l.attribute ] }">
</MvIF>
<MvIF EXPR = "{ s.callobjectattribute[ l.attribute ] EQ 'ERROR_CODE' }">
<MvASSIGN NAME = "l.error_code_value" VALUE = "{ s.callobjectvalue[ l.attribute ] }">
</MvIF>
<MvIF EXPR = "{ s.callobjectattribute[ l.attribute ] EQ 'ERROR_MESSAGE' }">
<MvASSIGN NAME = "l.error_message_value" VALUE = "{ s.callobjectvalue[ l.attribute ] }">
</MvIF>
<MvASSIGN NAME = "l.attribute" VALUE = "{ l.attribute + 1 }">
</MvWHILE>
</MvIF>
</MvCALL>
<MvIF EXPR = "{ MvCALL_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.error" VALUE = "{ Error( 'MER-UPG-00004', MvCALL_Error ) }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
<MvIF EXPR = "{ toupper( l.valid_value ) NE 'YES' }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.error" VALUE = "{ Error( l.error_code_value, l.error_message_value ) }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Validate" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "g.Upgrade_Login" VALUE = "{ ltrim( rtrim( g.Upgrade_Login ) ) }">
<MvASSIGN NAME = "g.Upgrade_Password" VALUE = "{ ltrim( rtrim( g.Upgrade_Password ) ) }">
<MvASSIGN NAME = "g.Upgrade_DomainLicense" VALUE = "{ ltrim( rtrim( g.Upgrade_DomainLicense ) ) }">
<MvASSIGN NAME = "g.Upgrade_DomainLicenseEmail" VALUE = "{ ltrim( rtrim( g.Upgrade_DomainLicenseEmail ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Owner" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Owner ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Email" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Email ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Company" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Company ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Address" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Address ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_City" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_City ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_StateSelect" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_StateSelect ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_State" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_State ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Zip" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Zip ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Country" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Country ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Phone" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Phone ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Fax" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Fax ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Upgrade_Store_Count }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "License" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:License ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "Email" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:Email ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationOwner" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationOwner ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationEmail" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationEmail ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationCompany" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationCompany ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationAddress" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationAddress ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationCity" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationCity ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationStateSelect" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationStateSelect ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationState" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationState ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationZip" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationZip ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationCountry" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationCountry ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationPhone" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationPhone ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationFax" VALUE = "{ ltrim( rtrim( g.Upgrade_Store[ l.pos ]:RegistrationFax ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvCOMMENT>
|
| Login/Password
| *********************************************************************************************
|
</MvCOMMENT>
<MvIF EXPR = "{ len( g.Upgrade_Login ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00039">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify a username.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie einen Benutzernamen an.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_LoginPassword, 'Upgrade_Login', l.error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Password ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00040">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify a password.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie ein Passwort an.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_LoginPassword, 'Upgrade_Password', l.error ) }">
</MvIF>
<MvOPEN NAME = "Upgrade_Users" DATABASE = "{ g.MerchantPath $ 'users.dbf' }" INDEXES = "{ g.MerchantPath $ 'usr_name.mvx' }">
<MvIF EXPR = "{ NOT MvOPEN_Error }">
<MvASSIGN NAME = "l.valid" VALUE = 0>
<MvFIND NAME = "Upgrade_Users" VALUE = "{ toupper( g.Upgrade_Login ) }" EXACT>
<MvIF EXPR = "{ NOT Upgrade_Users.d.EOF }">
<MvIF EXPR = "{ s.version LT 3.9026 }">
<MvIF EXPR = "{ substring( Upgrade_Users.d.password, 1, 3 ) EQ '$1$' }">
<MvASSIGN NAME = "l.salt" VALUE = "{ substring( Upgrade_Users.d.password, 4, 2 ) }">
<MvELSE>
<MvASSIGN NAME = "l.salt" VALUE = "{ substring( Upgrade_Users.d.password, 1, 2 ) }">
</MvIF>
<MvELSE>
<MvASSIGN NAME = "l.salt" VALUE = "{ Upgrade_Users.d.password }">
</MvIF>
<MvIF EXPR = "{ ( g.Upgrade_Password CRYPT l.salt ) EQ Upgrade_Users.d.password }">
<MvIF EXPR = "{ Upgrade_Users.d.admin }">
<MvASSIGN NAME = "l.valid" VALUE = 1>
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00041">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Invalid username/password, or the user specified does not have administrative privileges.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Ung�ltiger Benutzername/ung�ltiges Passwort oder der angegebene Benutzer verf�gt nicht �ber administrative Rechte.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_LoginPassword, 'Upgrade_Login', l.error ) }">
</MvIF>
<MvCLOSE NAME = "Upgrade_Users">
</MvIF>
<MvCOMMENT>
|
| Domain License
| *********************************************************************************************
|
</MvCOMMENT>
<MvIF EXPR = "{ g.Upgrade_DomainLicense_Required }">
<MvIF EXPR = "{ len( g.Upgrade_DomainLicense ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00042">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter a domain upgrade license</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie eine Domain-Upgrade-Lizenz ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainLicense, 'Upgrade_DomainLicense', l.error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_DomainLicenseEmail ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00043">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the email address used to register your prior version of Miva Merchant</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Geben Sie bitte die bei der Registrierung der vorherigen Version von Miva Merchant verwendete E-Mail-Adresse ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainLicense, 'Upgrade_DomainLicense', l.error ) }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ NOT Upgrade_License_Validate( 'DOMAIN', g.Merchant_Version, Domain.d.license ) }">
<MvASSIGN NAME = "g.Upgrade_DomainLicense_Valid" VALUE = 0>
<MvASSIGN NAME = "g.Upgrade_DomainLicense_Required" VALUE = 1>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainLicense, 'Upgrade_DomainLicense', g.Error_Code $ ': ' $ g.Error_Message ) }">
</MvIF>
<MvCOMMENT>
|
| Domain Registration
| *********************************************************************************************
|
</MvCOMMENT>
<MvIF EXPR = "{ len( g.Upgrade_Domain_Owner ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00044">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the name of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie den Namen des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Owner', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.ok" VALUE = "{ Validate_Email( g.Upgrade_Domain_Email ) }">
<MvIF EXPR = "{ NOT l.ok }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00045">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the email address of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die E-Mail-Adresse des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Email', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Domain_Address ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00046">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the address of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Strasse des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Address', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Domain_City ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00047">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the city of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie den Wohnort des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( l.step, 'Upgrade_Domain_City', l.field_error ) }">
</MvIF>
<MvASSIGN NAME = "g.Upgrade_Domain_Use_State" VALUE = "{ g.Upgrade_Domain_State }">
<MvIF EXPR = "{ len( g.Upgrade_Domain_Use_State ) EQ 0 }">
<MvASSIGN NAME = "g.Upgrade_Domain_Use_State" VALUE = "{ g.Upgrade_Domain_StateSelect }">
</MvIF>
<MvIF EXPR = "{ ( len( g.Upgrade_Domain_Use_State ) EQ 0 ) AND ( g.Upgrade_Domain_Country EQ 'US' ) }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00048">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the state/province of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie das Bundesland des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_State', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.valid" VALUE = "{ Validate_Zip( g.Upgrade_Domain_Zip, g.Upgrade_Domain_Country ) }">
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00049">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the Zip/Postal code of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Postleitzahl f�r den Wohnort des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Zip', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Domain_Country ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-SET-00045">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please select the country of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte w�hlen Sie das Land des Domain-Administrators</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Country', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.valid" VALUE = "{ Validate_Phone( g.Upgrade_Domain_Phone, g.Upgrade_Domain_Country ) }">
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00050">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the phone number of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Telefonnummer des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Phone', l.field_error ) }">
</MvIF>
<MvCOMMENT>
|
| *********************************************************************************************
| Store Validation Begins Here
| *********************************************************************************************
|
</MvCOMMENT>
<MvGO NAME = "Stores" ROW = "top">
<MvWHILE EXPR = "{ NOT Stores.d.EOF }">
<MvIF EXPR = "{ Stores.d.license NE Domain.d.license }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Upgrade_Store_Count }">
<MvIF EXPR = "{ g.Upgrade_Store[ l.pos ]:ID EQ Stores.d.id }">
<MvWHILESTOP>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvCOMMENT>
|
| Store License
| *********************************************************************************************
|
</MvCOMMENT>
<MvIF EXPR = "{ g.Upgrade_Store[ l.pos ]:License_Required }">
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:License ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00051">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter a store upgrade license</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Laden-Upgrade-Lizenz ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreLicense, l.pos, 'Upgrade_Store_Current_License', l.error ) }">
</MvIF>
<MvASSIGN NAME = "l.other_pos" VALUE = "1">
<MvWHILE EXPR = "{ l.other_pos LT l.pos }">
<MvIF EXPR = "{ ( g.Upgrade_Store[ l.pos ]:License EQ g.Upgrade_Store[ l.other_pos ]:License ) OR ( len( g.Upgrade_Store[ l.other_pos ]:Original_License ) AND ( g.Upgrade_Store[ l.pos ]:License EQ g.Upgrade_Store[ l.other_pos ]:Original_License ) ) }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00142">
<MvLOCALIZED-TOKEN NAME = "license" VALUE = "{ g.Upgrade_Store[ l.pos ]:License }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Sorry, you are already using license number '%license%' for another storefront. Please check your records and try again.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Leider benutzen Sie bereits die Lizenznummer '%license%' f�r eine andere Store Front. Bitte �berpr�fen Sie Ihre Unterlagen, und versuchen Sie es noch einmal.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreLicense, l.pos, 'Upgrade_Store_Current_License', l.error ) }">
</MvIF>
<MvASSIGN NAME = "l.other_pos" VALUE = "{ l.other_pos + 1 }">
</MvWHILE>
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:Email ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00052">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the email address used to register this store in the prior version of Miva Merchant</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Geben Sie bitte die bei der Registrierung dieses Ladens in der vorherigen Version von Miva Merchant verwendete E-Mail-Adresse ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreLicense, l.pos, 'Upgrade_Store_Current_Email', l.error ) }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ NOT Upgrade_License_Validate( 'STOREFRONT', g.Merchant_Version, Stores.d.license ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "License_Required" VALUE = 1>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "Valid" VALUE = 0>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreLicense, l.pos, 'Upgrade_Store_Current_License', g.Error_Code $ ': ' $ g.Error_Message ) }">
</MvIF>
<MvCOMMENT>
|
| Store Registration
| *********************************************************************************************
|
</MvCOMMENT>
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:RegistrationOwner ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00053">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's name</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie den Namen des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreRegistration, l.pos, 'Upgrade_Store_Current_RegistrationOwner', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.ok" VALUE = "{ Validate_Email( g.Upgrade_Store[ l.pos ]:RegistrationEmail ) }">
<MvIF EXPR = "{ NOT l.ok }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00054">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's email address</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die E-Mail-Adresse des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreRegistration, l.pos, 'Upgrade_Store_Current_RegistrationEmail', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:RegistrationAddress ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00055">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's address</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Strasse des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreRegistration, l.pos, 'Upgrade_Store_Current_RegistrationAddress', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:RegistrationCity ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00056">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's city</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie den Ort des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreRegistration, l.pos, 'Upgrade_Store_Current_RegistrationCity', l.field_error ) }">
</MvIF>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationUse_State" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationState }">
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:RegistrationUse_State ) EQ 0 }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationUse_State" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationStateSelect }">
</MvIF>
<MvIF EXPR = "{ ( len( g.Upgrade_Store[ l.pos ]:RegistrationUse_State ) EQ 0 ) AND ( g.Upgrade_Store[ l.pos ]:RegistrationCountry EQ 'US' ) }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00057">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's State/Province</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie das Bundesland des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreRegistration, l.pos, 'Upgrade_Store_Current_RegistrationState', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.valid" VALUE = "{ Validate_Zip( g.Upgrade_Store[ l.pos ]:RegistrationZip, g.Upgrade_Store[ l.pos ]:RegistrationCountry ) }">
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00058">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's Zip/Postal code</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Postleitzahl des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreRegistration, l.pos, 'Upgrade_Store_Current_RegistrationZip', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:RegistrationCountry ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00136">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's country</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie das Land des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreRegistration, l.pos, 'Upgrade_Store_Current_RegistrationCountry', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.valid" VALUE = "{ Validate_Phone( g.Upgrade_Store[ l.pos ]:RegistrationPhone, g.Upgrade_Store[ l.pos ]:RegistrationCountry ) }">
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00059">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's phone number</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Telefonnummer des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_FieldError( g.Step_Wizard_StoreRegistration, l.pos, 'Upgrade_Store_Current_RegistrationPhone', l.field_error ) }">
</MvIF>
</MvIF>
<MvSKIP NAME = "Stores" ROWS = 1>
</MvWHILE>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Action_Upgrade" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.ok" VALUE = 1>
<MvOPEN NAME = "Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00005', MvOPEN_Error ) }">
<MvELSE>
<MvOPEN NAME = "Stores"
DATABASE = "{ g.MerchantPath $ 'stores.dbf' }"
INDEXES = "{ g.MerchantPath $ 'str_id.mvx, ' $
g.MerchantPath $ 'str_code.mvx, ' $
g.MerchantPath $ 'str_lic.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00006', MvOPEN_Error ) }">
<MvELSE>
<MvFILTER NAME = "Stores" FILTER = "{ NOT Stores.d.deleted }">
<MvIF EXPR = "{ Upgrade_Validate() }">
<MvIF EXPR = "{ NOT Upgrade_License_Register( 'DOMAIN', Domain.d.license,
g.Upgrade_Domain_Owner,
g.Upgrade_Domain_Company,
g.Upgrade_Domain_Address,
g.Upgrade_Domain_City,
g.Upgrade_Domain_Use_State,
g.Upgrade_Domain_Zip,
g.Upgrade_Domain_Country,
g.Upgrade_Domain_Phone,
g.Upgrade_Domain_Fax,
g.Upgrade_Domain_Email ) }">
<MvFUNCTIONRETURN VALUE = 0>
<MvELSE>
<MvASSIGN NAME = "Domain.d.owner" VALUE = "{ g.Upgrade_Domain_Owner }">
<MvASSIGN NAME = "Domain.d.email" VALUE = "{ g.Upgrade_Domain_Email }">
<MvASSIGN NAME = "Domain.d.company" VALUE = "{ g.Upgrade_Domain_Company }">
<MvASSIGN NAME = "Domain.d.address" VALUE = "{ g.Upgrade_Domain_Address }">
<MvASSIGN NAME = "Domain.d.city" VALUE = "{ g.Upgrade_Domain_City }">
<MvASSIGN NAME = "Domain.d.state" VALUE = "{ g.Upgrade_Domain_Use_State }">
<MvASSIGN NAME = "Domain.d.zip" VALUE = "{ g.Upgrade_Domain_Zip }">
<MvASSIGN NAME = "Domain.d.country" VALUE = "{ g.Upgrade_Domain_Country }">
<MvASSIGN NAME = "Domain.d.phone" VALUE = "{ g.Upgrade_Domain_Phone }">
<MvASSIGN NAME = "Domain.d.fax" VALUE = "{ g.Upgrade_Domain_Fax }">
<MvUPDATE NAME = "Domain">
</MvIF>
<MvGO NAME = "Stores" ROW = "top">
<MvWHILE EXPR = "{ NOT Stores.d.EOF }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Upgrade_Store_Count }">
<MvIF EXPR = "{ g.Upgrade_Store[ l.pos ]:ID EQ Stores.d.id }">
<MvWHILESTOP>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvIF EXPR = "{ Stores.d.license EQ Domain.d.license }">
<MvASSIGN NAME = "Stores.d.owner" VALUE = "{ g.Upgrade_Domain_Owner }">
<MvASSIGN NAME = "Stores.d.email" VALUE = "{ g.Upgrade_Domain_Email }">
<MvASSIGN NAME = "Stores.d.company" VALUE = "{ g.Upgrade_Domain_Company }">
<MvASSIGN NAME = "Stores.d.address" VALUE = "{ g.Upgrade_Domain_Address }">
<MvASSIGN NAME = "Stores.d.city" VALUE = "{ g.Upgrade_Domain_City }">
<MvASSIGN NAME = "Stores.d.state" VALUE = "{ g.Upgrade_Domain_Use_State }">
<MvASSIGN NAME = "Stores.d.zip" VALUE = "{ g.Upgrade_Domain_Zip }">
<MvASSIGN NAME = "Stores.d.country" VALUE = "{ g.Upgrade_Domain_Country }">
<MvASSIGN NAME = "Stores.d.phone" VALUE = "{ g.Upgrade_Domain_Phone }">
<MvASSIGN NAME = "Stores.d.fax" VALUE = "{ g.Upgrade_Domain_Fax }">
<MvELSE>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "Registration_Use_State" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationState }">
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:Registration_Use_State ) EQ 0 }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "Registration_Use_State" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationStateSelect }">
</MvIF>
<MvIF EXPR = "{ NOT Upgrade_License_Register( 'STOREFRONT', Stores.d.license,
g.Upgrade_Store[ l.pos ]:RegistrationOwner,
g.Upgrade_Store[ l.pos ]:RegistrationCompany,
g.Upgrade_Store[ l.pos ]:RegistrationAddress,
g.Upgrade_Store[ l.pos ]:RegistrationCity,
g.Upgrade_Store[ l.pos ]:Registration_Use_State,
g.Upgrade_Store[ l.pos ]:RegistrationZip,
g.Upgrade_Store[ l.pos ]:RegistrationCountry,
g.Upgrade_Store[ l.pos ]:RegistrationPhone,
g.Upgrade_Store[ l.pos ]:RegistrationFax,
g.Upgrade_Store[ l.pos ]:RegistrationEmail ) }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
<MvASSIGN NAME = "Stores.d.owner" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationOwner }">
<MvASSIGN NAME = "Stores.d.email" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationEmail }">
<MvASSIGN NAME = "Stores.d.company" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationCompany }">
<MvASSIGN NAME = "Stores.d.address" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationAddress }">
<MvASSIGN NAME = "Stores.d.city" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationCity }">
<MvASSIGN NAME = "Stores.d.state" VALUE = "{ g.Upgrade_Store[ l.pos ]:Registration_Use_State }">
<MvASSIGN NAME = "Stores.d.zip" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationZip }">
<MvASSIGN NAME = "Stores.d.country" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationCountry }">
<MvASSIGN NAME = "Stores.d.phone" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationPhone }">
<MvASSIGN NAME = "Stores.d.fax" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationFax }">
</MvIF>
<MvUPDATE NAME = "Stores">
<MvSKIP NAME = "Stores" ROWS = 1>
</MvWHILE>
<MvASSIGN NAME = "g.Screen" VALUE = "UPGD">
</MvIF>
<MvCLOSE NAME = "Stores">
</MvIF>
<MvCLOSE NAME = "Domain">
</MvIF>
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Validate_Step" PARAMETERS = "step" STANDARDOUTPUTLEVEL = "">
<MvIF EXPR = "{ l.step EQ g.Step_Wizard_LoginPassword }">
<MvIF EXPR = "{ NOT Upgrade_Validate_Step_LoginPassword() }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.step EQ g.Step_Wizard_DomainLicense }">
<MvIF EXPR = "{ NOT Upgrade_Validate_Step_DomainLicense() }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.step EQ g.Step_Wizard_DomainRegistration }">
<MvIF EXPR = "{ NOT Upgrade_Validate_Step_DomainRegistration() }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.step EQ g.Step_Wizard_StoreLicense }">
<MvIF EXPR = "{ NOT Upgrade_Validate_Step_StoreLicense() }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.step EQ g.Step_Wizard_StoreRegistration }">
<MvIF EXPR = "{ NOT Upgrade_Validate_Step_StoreRegistration() }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.step EQ g.Step_Wizard_ModuleVersionCheck }">
<MvIF EXPR = "{ NOT Upgrade_Validate_Step_ModuleVersionCheck() }">
<MvFUNCTIONRETURN VALUE = 0>
</MvIF>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Load_ISP_Defaults" STANDARDOUTPUTLEVEL = "">
<MvIF EXPR = "{ fexists( 'UPGRADE.dat' ) }">
<MvCOMMENT>
|
| UPGRADE.dat contains the following | delimiter fields in the following order:
| Product "MERCHANT"
| ForceUpgrade Bool Not honored in this version
| Skip_Welcome Bool
| Skip_LoginPassword Bool Not honored in this version
| Skip_DomainLicense Bool
| Skip_DomainRegistration Bool
| Skip_StoreLicense Bool
| Skip_StoreRegistration Bool
| Skip_ModuleVersionCheck Bool
| Skip_Finish Bool
| ModuleVersionCheck_Default [skip | keep]
| ModuleVersionCheck_CanUpload Bool False will prevent new module use
| ForceUpgrade Bool Forces user into upgrade on start up
| Domain_License freeform
| StoreLicense freeform
|
| Bool values starting with "y" of "Y" are true, all other false
| ...StoreLicense may be repeated indefinately
|
| This example file shows only the login and license screens
|
| MERCHANT|n/a|Y|N|N|Y|N|Y|Y|Y|keep|N|domainbogus1|storebogus1|storebogus3
|
</MvCOMMENT>
<MvASSIGN NAME = "g.Upgrade_ISP_Defaults" VALUE = "yes">
<MvASSIGN NAME = "g.Upgrade_ISP_DomainLicense" VALUE = "">
<MvASSIGN NAME = "g.Upgrade_ISP_StoreLicense_Count" VALUE = "0">
<MvIMPORT FILE = "UPGRADE.dat"
FIELDS = "l.isp_data"
DELIMITER = "">
<MvASSIGN NAME = "l.product" VALUE = "{ toupper( ltrim( rtrim( gettoken( l.isp_data, '|', 1 ) ) ) ) }">
<MvIF EXPR = "{ l.product EQ 'MERCHANT' }">
<MvASSIGN NAME = "l.pos" VALUE = "2">
<MvASSIGN NAME = "g.Upgrade_ISP_ForceUpgrade" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Skip_Welcome" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Skip_LoginPassword" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Skip_DomainLicense" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Skip_DomainRegistration" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Skip_StoreLicense" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Skip_StoreRegistration" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Skip_ModuleVersionCheck" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Skip_Finish" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_ModuleVersionCheck_Default" VALUE = "{ ltrim( rtrim( gettoken( l.isp_data, '|', l.pos ) ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_ModuleVersionCheck_CanUpload" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Force_Upgrade" VALUE = "{ Upgrade_Parse_Boolean( gettoken( l.isp_data, '|', l.pos ) ) }">
insert here
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_Domain_License" VALUE = "{ ltrim( rtrim( gettoken( l.isp_data, '|', l.pos ) ) ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "l.store_license" VALUE = "{ ltrim( rtrim( gettoken( l.isp_data, '|', l.pos ) ) ) }">
<MvWHILE EXPR = "{ len( l.store_license ) }">
<MvIF EXPR = "{ l.store_license NE g.Upgrade_ISP_Domain_License }">
<MvASSIGN NAME = "l.license_used" VALUE = "0">
<MvASSIGN NAME = "l.store_pos" VALUE = "1">
<MvWHILE EXPR = "{ ( l.store_pos LE g.Upgrade_ISP_StoreLicense_Count ) AND ( NOT l.license_used ) }">
<MvIF EXPR = "{ l.store_license EQ g.Upgrade_ISP_StoreLicense[ l.store_pos ] }">
<MvASSIGN NAME = "l.license_used" VALUE = "1">
</MvIF>
<MvASSIGN NAME = "l.store_pos" VALUE = "{ l.store_pos + 1 }">
</MvWHILE>
<MvIF EXPR = "{ NOT l.license_used }">
<MvASSIGN NAME = "g.Upgrade_ISP_StoreLicense_Count" VALUE = "{ g.Upgrade_ISP_StoreLicense_Count + 1 }">
<MvASSIGN NAME = "g.Upgrade_ISP_StoreLicense" INDEX = "{ g.Upgrade_ISP_StoreLicense_Count }" VALUE = "{ l.store_license }">
</MvIF>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "l.store_license" VALUE = "{ ltrim( rtrim( gettoken( l.isp_data, '|', l.pos ) ) ) }">
</MvWHILE>
</MvIF>
</MvIMPORT>
<MvELSE>
<MvASSIGN NAME = "g.Upgrade_ISP_Defaults" VALUE = "no">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Screen_Upgrade_Wizard" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.ok" VALUE = 1>
<MvOPEN NAME = "Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00007', MvOPEN_Error ) }">
<MvELSE>
<MvOPEN NAME = "Stores"
DATABASE = "{ g.MerchantPath $ 'stores.dbf' }"
INDEXES = "{ g.MerchantPath $ 'str_id.mvx, ' $
g.MerchantPath $ 'str_code.mvx, ' $
g.MerchantPath $ 'str_lic.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00008', MvOPEN_Error ) }">
<MvELSE>
<MvFILTER NAME = "Stores" FILTER = "{ NOT Stores.d.deleted }">
<MvIF EXPR = "{ g.Load_Fields }">
<MvASSIGN NAME = "g.Upgrade_DomainLicense_Original" VALUE = "{ Domain.d.license }">
<MvASSIGN NAME = "g.Upgrade_DomainLicense_Valid" VALUE = "{ Upgrade_License_Validate( 'DOMAIN', g.Merchant_Version, Domain.d.license ) }">
<MvASSIGN NAME = "g.Upgrade_DomainLicense_Required" VALUE = "{ NOT g.Upgrade_DomainLicense_Valid }">
<MvASSIGN NAME = "g.Upgrade_Store_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Upgrade_Store_New_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Upgrade_Store_Count" VALUE = 0>
<MvGO NAME = "Stores" ROW = "top">
<MvASSIGN NAME = "l.isp_licence_pos" VALUE = "0">
<MvWHILE EXPR = "{ NOT Stores.d.EOF }">
<MvIF EXPR = "{ Stores.d.license NE Domain.d.license }">
<MvASSIGN NAME = "g.Upgrade_Store_Count" VALUE = "{ g.Upgrade_Store_Count + 1 }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "ID" VALUE = "{ Stores.d.id }">
<MvIF EXPR = "{ ( g.Upgrade_ISP_Defaults EQ 'yes' ) AND ( l.isp_licence_pos LT g.Upgrade_ISP_StoreLicense_Count ) }">
<MvASSIGN NAME = "l.isp_licence_pos" VALUE = "{ l.isp_licence_pos + 1 }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "License" VALUE = "{ g.Upgrade_ISP_StoreLicense[ l.isp_licence_pos ] }">
<MvELSE>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "License" VALUE = "">
</MvIF>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "Email" VALUE = "{ Stores.d.email }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "Original_License" VALUE = "{ Stores.d.license }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "Valid" VALUE = "{ Upgrade_License_Validate( 'STOREFRONT', g.Merchant_Version, Stores.d.license ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "License_Required" VALUE = "{ NOT int( g.Upgrade_Store[ g.Upgrade_Store_Count ]:Valid ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationOwner" VALUE = "{ Stores.d.owner }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationEmail" VALUE = "{ Stores.d.email }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationCompany" VALUE = "{ Stores.d.company }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationAddress" VALUE = "{ Stores.d.address }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationCity" VALUE = "{ Stores.d.city }">
<MvIF EXPR = "{ s.miva_language EQ 'de-DE' }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationStateSelect" VALUE = "">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationState" VALUE = "{ Stores.d.state }">
<MvELSE>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationStateSelect" VALUE = "{ Stores.d.state }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationState" VALUE = "">
</MvIF>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationZip" VALUE = "{ Stores.d.zip }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationCountry" VALUE = "{ Stores.d.country }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationPhone" VALUE = "{ Stores.d.phone }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ g.Upgrade_Store_Count }" MEMBER = "RegistrationFax" VALUE = "{ Stores.d.fax }">
</MvIF>
<MvSKIP NAME = "Stores" ROWS = 1>
</MvWHILE>
<MvASSIGN NAME = "l.upgrade_modules_list" VALUE = "">
<MvASSIGN NAME = "l.upgrade_modules_list_count" VALUE = "0">
<MvIF EXPR = "{ sexists( g.Version_Path $ 'UPGDMODS.lst' ) AND sfcopy( g.Version_Path $ 'UPGDMODS.lst', 'UPGDMODS.lst' ) }">
<MvIMPORT FILE = "UPGDMODS.lst"
FIELDS = "l.type, l.module"
DELIMITER = "|"
FILTER = "{ toupper( l.type ) EQ 'MERCHANT' }">
<MvASSIGN NAME = "l.upgrade_modules_list_count" VALUE = "{ l.upgrade_modules_list_count + 1 }">
<MvASSIGN NAME = "l.upgrade_modules_list" INDEX = "{ l.upgrade_modules_list_count }" VALUE = "{ l.module }">
</MvIMPORT>
<MvASSIGN NAME = "l.deleted" VALUE = "{ fdelete( 'UPGDMODS.lst' ) }">
</MvIF>
<MvOPEN NAME = "Modules"
DATABASE = "{ g.MerchantPath $ 'modules.dbf' }"
INDEXES = "{ g.MerchantPath $ 'mod_id.mvx, ' $
g.MerchantPath $ 'mod_code.mvx, ' $
g.MerchantPath $ 'mod_type.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Library_Filename_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-DTB-00032', MvOPEN_Error ) }">
<MvELSE>
<MvFILTER NAME = "Modules" FILTER = "{ NOT Modules.d.deleted }">
<MvASSIGN NAME = "g.Upgrade_Module_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Upgrade_Module_New_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Upgrade_Module_Count" VALUE = 0>
<MvGO NAME = "Modules" ROW = "top">
<MvIF EXPR = "{ ( g.Upgrade_ISP_Defaults EQ 'yes' ) }">
<MvASSIGN NAME = "l.default_disposition" VALUE = "{ g.Upgrade_ISP_ModuleVersionCheck_Default }">
<MvELSE>
<MvASSIGN NAME = "l.default_disposition" VALUE = "skip">
</MvIF>
<MvWHILE EXPR = "{ NOT Modules.d.EOF }">
<MvASSIGN NAME = "l.force_copy" VALUE = "0">
<MvIF EXPR = "{ l.upgrade_modules_list_count }">
<MvASSIGN NAME = "l.pos" VALUE = "1">
<MvWHILE EXPR = "{ (l.pos LE l.upgrade_modules_list_count) AND ( NOT l.force_copy ) }">
<MvIF EXPR = "{ Modules.d.code EQ l.upgrade_modules_list[ l.pos ] }">
<MvASSIGN NAME = "l.force_copy" VALUE = "1">
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
</MvIF>
<MvIF EXPR = "{ l.force_copy }">
<MvASSIGN NAME = "l.copied" VALUE = "{ NOT scopy( g.Old_Module_Root $ Modules.d.module, g.Module_Root $ Modules.d.module ) }">
<MvIF EXPR = "{ l.copied }">
<MvELSE>
<MvLOCALIZED NAME = "l.copy_error" ID = "MER-UPG-00143">
<MvLOCALIZED-TOKEN NAME = "path" VALUE = "{ Modules.d.module }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Could not copy the module file '%path%'</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Screen_Upgrade_Wizard', l.copy_error ) }">
</MvIF>
<MvELSE>
<MvASSIGN NAME = "l.module_bad_version" VALUE = "0">
<MvIF EXPR = "{ NOT sexists( g.Module_Root $ Modules.d.module ) }">
<MvASSIGN NAME = "l.module_bad_version" VALUE = "1">
</MvIF>
<MvIF EXPR = "{ l.module_bad_version }">
<MvASSIGN NAME = "g.Upgrade_Module_Count" VALUE = "{ g.Upgrade_Module_Count + 1 }">
<MvASSIGN NAME = "g.Upgrade_Module" INDEX = "{ g.Upgrade_Module_Count }" MEMBER = "ID" VALUE = "{ Modules.d.id }">
<MvASSIGN NAME = "g.Upgrade_Module" INDEX = "{ g.Upgrade_Module_Count }" MEMBER = "VersionName" VALUE = "{ Modules.d.name }">
<MvASSIGN NAME = "g.Upgrade_Module" INDEX = "{ Upgrade_Module_Count }" MEMBER = "VersionModule" VALUE = "{ Modules.d.module }">
<MvDO FILE = "{ g.Old_Module_Root $ Modules.d.module }" NAME = "l.temp_version" VALUE = "{ Module_API_Version() }">
<MvASSIGN NAME = "g.Upgrade_Module" INDEX = "{ g.Upgrade_Module_Count }" MEMBER = "VersionAPIVersion" VALUE = "{ l.temp_version }">
<MvASSIGN NAME = "g.Upgrade_Module" INDEX = "{ g.Upgrade_Module_Count }" MEMBER = "VersionDisposition" VALUE = "{ l.default_disposition }">
<MvASSIGN NAME = "g.Upgrade_Module" INDEX = "{ g.Upgrade_Module_Count }" MEMBER = "VersionNewFile" VALUE = "">
</MvIF>
</MvIF>
<MvSKIP NAME = "Modules" ROWS = 1>
</MvWHILE>
</MvIF>
<MvASSIGN NAME = "g.Upgrade_Login" VALUE = "">
<MvASSIGN NAME = "g.Upgrade_Password" VALUE = "">
<MvASSIGN NAME = "g.Upgrade_DomainLicense" VALUE = "">
<MvASSIGN NAME = "g.Upgrade_DomainLicenseEmail" VALUE = "{ Domain.d.email }">
<MvASSIGN NAME = "g.Upgrade_Domain_Owner" VALUE = "{ Domain.d.owner }">
<MvASSIGN NAME = "g.Upgrade_Domain_Email" VALUE = "{ Domain.d.email }">
<MvASSIGN NAME = "g.Upgrade_Domain_Company" VALUE = "{ Domain.d.company }">
<MvASSIGN NAME = "g.Upgrade_Domain_Address" VALUE = "{ Domain.d.address }">
<MvASSIGN NAME = "g.Upgrade_Domain_City" VALUE = "{ Domain.d.city }">
<MvIF EXPR = "{ s.miva_language EQ 'de-DE' }">
<MvASSIGN NAME = "g.Upgrade_Domain_StateSelect" VALUE = "">
<MvASSIGN NAME = "g.Upgrade_Domain_State" VALUE = "{ Domain.d.state }">
<MvELSE>
<MvASSIGN NAME = "g.Upgrade_Domain_StateSelect" VALUE = "{ Domain.d.state }">
<MvASSIGN NAME = "g.Upgrade_Domain_State" VALUE = "">
</MvIF>
<MvASSIGN NAME = "g.Upgrade_Domain_Zip" VALUE = "{ Domain.d.zip }">
<MvASSIGN NAME = "g.Upgrade_Domain_Country" VALUE = "{ Domain.d.country }">
<MvASSIGN NAME = "g.Upgrade_Domain_Phone" VALUE = "{ Domain.d.phone }">
<MvASSIGN NAME = "g.Upgrade_Domain_Fax" VALUE = "{ Domain.d.fax }">
</MvIF>
<MvIF EXPR = "{ ( ( g.New_Step GT g.Step ) AND g.Step ) OR
( ( ( g.New_Step EQ g.Step ) AND g.Step ) AND ( ( g.Upgrade_Store_New_Pos GT g.Upgrade_Store_Pos ) OR ( g.Upgrade_Module_New_Pos GT g.Upgrade_Module_Pos ) ) ) }">
<MvASSIGN NAME = "l.valid" VALUE = "{ Upgrade_Validate_Step( g.Step ) }">
<MvIF EXPR = "{ l.valid }">
<MvASSIGN NAME = "g.Step" VALUE = "{ g.New_Step }">
<MvASSIGN NAME = "g.Upgrade_Store_Pos" VALUE = "{ g.Upgrade_Store_New_Pos }">
<MvASSIGN NAME = "g.Upgrade_Module_Pos" VALUE = "{ g.Upgrade_Module_New_Pos }">
</MvIF>
<MvELSE>
<MvIF EXPR = "{ ( g.New_Step AND ( g.New_Step LT g.Step ) ) OR
( ( g.New_Step AND ( g.New_Step EQ g.Step ) ) AND ( ( g.Upgrade_Store_New_Pos LT g.Upgrade_Store_Pos ) OR ( g.Upgrade_Module_New_Pos LT g.Upgrade_Module_Pos ) ) ) }">
<MvASSIGN NAME = "g.Step" VALUE = "{ g.New_Step }">
<MvASSIGN NAME = "g.Upgrade_Store_Pos" VALUE = "{ g.Upgrade_Store_New_Pos }">
<MvASSIGN NAME = "g.Upgrade_Module_Pos" VALUE = "{ g.Upgrade_Module_New_Pos }">
</MvIF>
</MvIF>
<MvEVAL EXPR = "{ Upgrade_BeginScreen() }">
<MvIF EXPR = "{ g.Step EQ g.Step_Wizard_Welcome }">
<MvEVAL EXPR = "{ Upgrade_Wizard_Welcome() }">
</MvIF>
<MvHIDE FIELDS = "g.Upgrade_DomainLicense_Original, g.Upgrade_DomainLicense_Valid, g.Upgrade_DomainLicense_Required, g.Upgrade_Store_Pos, g.Upgrade_Store_New_Pos, g.Upgrade_Store_Count">
<MvHIDE FIELDS = "g.Upgrade_ISP_ForceUpgrade,
g.Upgrade_ISP_Skip_Welcome,
g.Upgrade_ISP_Skip_LoginPassword,
g.Upgrade_ISP_Skip_DomainLicense,
g.Upgrade_ISP_Skip_DomainRegistration,
g.Upgrade_ISP_Skip_StoreLicense,
g.Upgrade_ISP_Skip_StoreRegistration,
g.Upgrade_ISP_Skip_ModuleVersionCheck,
g.Upgrade_ISP_Skip_Finish,
g.Upgrade_ISP_ModuleVersionCheck_Default,
g.Upgrade_ISP_ModuleVersionCheck_CanUpload,
g.Upgrade_ISP_Domain_License,
g.Upgrade_ISP_StoreLicense_Count,
g.Upgrade_ISP_StoreLicense" >
<MvIF EXPR = "{ g.Step EQ g.Step_Wizard_LoginPassword }">
<MvEVAL EXPR = "{ Upgrade_Wizard_LoginPassword() }">
<MvELSE>
<MvHIDE FIELDS = "g.Upgrade_Login, g.Upgrade_Password">
</MvIF>
<MvIF EXPR = "{ g.Step EQ g.Step_Wizard_DomainLicense }">
<MvEVAL EXPR = "{ Upgrade_Wizard_DomainLicense() }">
<MvELSE>
<MvHIDE FIELDS = "g.Upgrade_DomainLicense, g.Upgrade_DomainLicenseEmail">
</MvIF>
<MvIF EXPR = "{ g.Step EQ g.Step_Wizard_DomainRegistration }">
<MvEVAL EXPR = "{ Upgrade_Wizard_DomainRegistration() }">
<MvELSE>
<MvHIDE FIELDS = "g.Upgrade_Domain_Owner, g.Upgrade_Domain_Email, g.Upgrade_Domain_Company, g.Upgrade_Domain_Address, g.Upgrade_Domain_City, g.Upgrade_Domain_StateSelect, g.Upgrade_Domain_State, g.Upgrade_Domain_Zip, g.Upgrade_Domain_Country, g.Upgrade_Domain_Phone, g.Upgrade_Domain_Fax">
</MvIF>
<MvIF EXPR = "{ g.Step EQ g.Step_Wizard_StoreLicense }">
<MvEVAL EXPR = "{ Upgrade_Wizard_StoreLicense() }">
</MvIF>
<MvIF EXPR = "{ g.Step EQ g.Step_Wizard_StoreRegistration }">
<MvEVAL EXPR = "{ Upgrade_Wizard_StoreRegistration() }">
</MvIF>
<MvHIDE FIELDS = "g.Upgrade_Store">
<MvIF EXPR = "{ g.Step EQ g.Step_Wizard_ModuleVersionCheck }">
<MvEVAL EXPR = "{ Upgrade_Wizard_ModuleVersionCheck() }">
</MvIF>
<MvHIDE FIELDS = "g.Upgrade_Module_Pos, g.Upgrade_Module_New_Pos, g.Upgrade_Module_Count, Upgrade_Module">
<MvIF EXPR = "{ g.Step EQ g.Step_Wizard_Finish }">
<MvEVAL EXPR = "{ Upgrade_Wizard_Finish() }">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_EndScreen() }">
<MvCLOSE NAME = "Stores">
</MvIF>
<MvCLOSE NAME = "Domain">
</MvIF>
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Wizard_Welcome" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0 WIDTH = "100%">
<TR><TD VALIGN = "top" ALIGN = "left" COLSPAN = 2>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00060">
<MvLOCALIZED-TOKEN NAME = "version" VALUE = "{ g.Merchant_Version }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<P>
Welcome to the Miva Merchant Upgrade Wizard. This wizard will help you upgrade to version <B>%version%</B> of Miva Merchant.
</P>
<P>
Before beginning the upgrade process, please take the time to make a backup copy of your installation. If you do not know how to backup your data, please contact Miva Technical Support.
</P>
<P>
To begin, press the <B>Next</B> button.
</P>
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<P>
Herzlich willkommen beim Miva Merchant Upgrade-Assistenten. Dieser Assistent wird Sie beim Upgrade auf die Version <B>%version%</B> von Miva Merchant unterst�tzen.
</P>
<P>
Bevor Sie jedoch mit dem Upgrade beginnen, nehmen Sie sich bitte Zeit, eine Sicherungskopie Ihrer Installierung anzulegen. Wenn Sie nicht wissen, wie Sie Ihre Daten sichern k�nnen, setzen Sie sich bitte mit der technischen Beratung von Miva in Verbindung.
</P>
<P>
Klicken Sie auf "<B>Weiter</B>", um den Vorgang zu beginnen.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD VALIGN = "bottom" ALIGN = "left">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Previous() }">
</TD><TD VALIGN = "bottom" ALIGN = "right">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Next() }">
</TD></TR>
</TABLE>
</MvFUNCTION>
<MvCOMMENT>
|
| Login/Password
| *********************************************************************************************
|
</MvCOMMENT>
<MvFUNCTION NAME = "Upgrade_Validate_Step_LoginPassword" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "g.Upgrade_Login" VALUE = "{ ltrim( rtrim( g.Upgrade_Login ) ) }">
<MvASSIGN NAME = "g.Upgrade_Password" VALUE = "{ ltrim( rtrim( g.Upgrade_Password ) ) }">
<MvIF EXPR = "{ len( g.Upgrade_Login ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00061">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify a username.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie einen Benutzernamen an.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_LoginPassword, 'Upgrade_Login', l.error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Password ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00062">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify a password.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie ein Passwort an.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_LoginPassword, 'Upgrade_Password', l.error ) }">
</MvIF>
<MvOPEN NAME = "Upgrade_Users" DATABASE = "{ g.MerchantPath $ 'users.dbf' }" INDEXES = "{ g.MerchantPath $ 'usr_name.mvx' }">
<MvIF EXPR = "{ NOT MvOPEN_Error }">
<MvASSIGN NAME = "l.valid" VALUE = 0>
<MvFIND NAME = "Upgrade_Users" VALUE = "{ toupper( g.Upgrade_Login ) }" EXACT>
<MvIF EXPR = "{ NOT Upgrade_Users.d.EOF }">
<MvIF EXPR = "{ s.version LT 3.9026 }">
<MvIF EXPR = "{ substring( Upgrade_Users.d.password, 1, 3 ) EQ '$1$' }">
<MvASSIGN NAME = "l.salt" VALUE = "{ substring( Upgrade_Users.d.password, 4, 2 ) }">
<MvELSE>
<MvASSIGN NAME = "l.salt" VALUE = "{ substring( Upgrade_Users.d.password, 1, 2 ) }">
</MvIF>
<MvELSE>
<MvASSIGN NAME = "l.salt" VALUE = "{ Upgrade_Users.d.password }">
</MvIF>
<MvIF EXPR = "{ ( g.Upgrade_Password CRYPT l.salt ) EQ Upgrade_Users.d.password }">
<MvIF EXPR = "{ Upgrade_Users.d.admin }">
<MvASSIGN NAME = "l.valid" VALUE = 1>
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00063">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Invalid username/password, or the user specified does not have administrative privileges.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Ung�ltiger Benutzername/ung�ltiges Passwort oder der angegebene Benutzer verf�gt nicht �ber administrative Rechte.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_LoginPassword, 'Upgrade_Login', l.error ) }">
</MvIF>
<MvCLOSE NAME = "Upgrade_Users">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Wizard_LoginPassword" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0 WIDTH = "100%">
<TR><TD VALIGN = "top" ALIGN = "left" COLSPAN = 2>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00064">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<P>
To continue the upgrade process, you must enter the username and password of a Miva Merchant user account with administrative privileges.
</P>
<P>
Please enter your Login and Password below.
</P>
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<P>
Um den Upgrade-Vorgang fortzusetzen, m�ssen Sie den Benutzernamen und das Passwort eines Miva Merchant Benutzerkontos angeben, das �ber administrative Rechte verf�gt.
</P>
<P>
Bitte geben Sie Ihre Anmeldung und Ihr Passwort nachstehend ein.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00065">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Login:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Anmeldung:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Login" VALUE = "{ encodeentities( g.Upgrade_Login ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00066">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Password:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Passwort:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "password" SIZE = 30 NAME = "Upgrade_Password" VALUE = "{ encodeentities( g.Upgrade_Password ) }">
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD VALIGN = "bottom" ALIGN = "left">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Previous() }">
</TD><TD VALIGN = "bottom" ALIGN = "right">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Next() }">
</TD></TR>
</TABLE>
</MvFUNCTION>
<MvCOMMENT>
|
| Domain License
| *********************************************************************************************
|
</MvCOMMENT>
<MvFUNCTION NAME = "Upgrade_Validate_Step_DomainLicense" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "g.Upgrade_DomainLicense" VALUE = "{ ltrim( rtrim( g.Upgrade_DomainLicense ) ) }">
<MvASSIGN NAME = "g.Upgrade_DomainLicenseEmail" VALUE = "{ ltrim( rtrim( g.Upgrade_DomainLicenseEmail ) ) }">
<MvIF EXPR = "{ len( g.Upgrade_DomainLicense ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00067">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter a domain upgrade license</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Domain-Upgrade-Lizenz ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainLicense, 'Upgrade_DomainLicense', l.error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_DomainLicenseEmail ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00068">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the email address used to register your prior version of Miva Merchant</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Geben Sie bitte die bei der Registrierung der vorherigen Version von Miva Merchant verwendete E-Mail-Adresse ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainLicense, 'Upgrade_DomainLicense', l.error ) }">
</MvIF>
<MvIF EXPR = "{ NOT g.Upgrade_DomainLicense_Valid }">
<MvIF EXPR = "{ NOT Upgrade_License_Activate( 'DOMAIN', Domain.d.license, g.Upgrade_DomainLicenseEmail, g.Upgrade_DomainLicense ) }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainLicense, 'Upgrade_DomainLicense', g.Error_Code $ ': ' $ g.Error_Message ) }">
<MvELSE>
<MvASSIGN NAME = "g.Upgrade_DomainLicense_Valid" VALUE = 1>
<MvPRIMARY NAME = "Stores" INDEX = "{ g.MerchantPath $ 'str_lic.mvx' }">
<MvFIND NAME = "Stores" VALUE = "{ Domain.d.license }" EXACT>
<MvIF EXPR = "{ NOT Stores.d.EOF }">
<MvASSIGN NAME = "Stores.d.license" VALUE = "{ g.Upgrade_DomainLicense }">
<MvUPDATE NAME = "Stores">
</MvIF>
<MvASSIGN NAME = "Domain.d.license" VALUE = "{ g.Upgrade_DomainLicense }">
<MvUPDATE NAME = "Domain">
</MvIF>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Wizard_DomainLicense" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0 WIDTH = "100%">
<TR><TD VALIGN = "top" ALIGN = "left" COLSPAN = 2>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00069">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<P>
Upgrading this installation of Miva Merchant requires a <B>Miva Merchant Domain Upgrade License</B>. If you do not have a domain upgrade license, one may be obtained from the <A TARGET = "_new" HREF = "http://www.miva.com/purchase/Merchant2/merchant.mv">Miva General Store</A>.
</P>
<P>
Additionally, you must provide the Email address used to register the prior version of Miva Merchant.
</P>
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<P>
Der Upgrade dieser Installierung von Miva Merchant erfordert eine <B>Miva Merchant Domain-Upgrade-Lizenz</B>. Wenn Sie noch keine Domain-Upgrade-Lizenz haben, k�nnen Sie diese im <A TARGET = "_new" HREF = "http://www.miva.com/purchase/Merchant2/merchant.mv">Miva General Store</A>erhalten.
</P>
<P>
Dar�ber hinaus m�ssen Sie die E-Mail-Adresse angeben, die Sie bei der Registrierung der vorherigen Version von Miva Merchant angegeben hatten.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00070">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Existing Domain License:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Jetzige Domain-Lizenz:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvEVAL EXPR = "{ g.Upgrade_DomainLicense_Original }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00071">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Domain Upgrade License:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Domain-Upgrade-Lizenz:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ g.Upgrade_DomainLicense_Valid }">
<INPUT TYPE = "hidden" NAME = "Upgrade_DomainLicense" VALUE = "{ encodeentities( g.Upgrade_DomainLicense) }">
<MvEVAL EXPR = "{ g.Upgrade_DomainLicense }">
<MvELSE>
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_DomainLicense" VALUE = "{ encodeentities( g.Upgrade_DomainLicense ) }">
</MvIF>
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00072">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Email Address:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>E-Mail Adresse:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ g.Upgrade_DomainLicense_Valid }">
<INPUT TYPE = "hidden" NAME = "Upgrade_DomainLicenseEmail" VALUE = "{ encodeentities( g.Upgrade_DomainLicenseEmail ) }">
<MvEVAL EXPR = "{ g.Upgrade_DomainLicenseEmail }">
<MvELSE>
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_DomainLicenseEmail" VALUE = "{ encodeentities( g.Upgrade_DomainLicenseEmail ) }">
</MvIF>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD VALIGN = "bottom" ALIGN = "left">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Previous() }">
</TD><TD VALIGN = "bottom" ALIGN = "right">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Next() }">
</TD></TR>
</TABLE>
</MvFUNCTION>
<MvCOMMENT>
|
| Domain Registration
| *********************************************************************************************
|
</MvCOMMENT>
<MvFUNCTION NAME = "Upgrade_Validate_Step_DomainRegistration" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "g.Upgrade_Domain_Owner" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Owner ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Email" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Email ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Company" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Company ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Address" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Address ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_City" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_City ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_StateSelect" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_StateSelect ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_State" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_State ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Zip" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Zip ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Country" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Country ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Phone" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Phone ) ) }">
<MvASSIGN NAME = "g.Upgrade_Domain_Fax" VALUE = "{ ltrim( rtrim( g.Upgrade_Domain_Fax ) ) }">
<MvIF EXPR = "{ len( g.Upgrade_Domain_Owner ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00073">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the name of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie den Namen des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Owner', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.ok" VALUE = "{ Validate_Email( g.Upgrade_Domain_Email ) }">
<MvIF EXPR = "{ NOT l.ok }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00074">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the email address of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die E-Mail-Adresse des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Email', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Domain_Address ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00075">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the address of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Strasse des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Address', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Domain_City ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00076">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the city of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie den Wohnort des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_City', l.field_error ) }">
</MvIF>
<MvASSIGN NAME = "g.Upgrade_Domain_Use_State" VALUE = "{ g.Upgrade_Domain_State }">
<MvIF EXPR = "{ len( g.Upgrade_Domain_Use_State ) EQ 0 }">
<MvASSIGN NAME = "g.Upgrade_Domain_Use_State" VALUE = "{ g.Upgrade_Domain_StateSelect }">
</MvIF>
<MvIF EXPR = "{ ( len( g.Upgrade_Domain_Use_State ) EQ 0 ) AND ( g.Upgrade_Domain_Country EQ 'US' ) }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00077">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the state/province of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie das Bundesland des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_State', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.valid" VALUE = "{ Validate_Zip( g.Upgrade_Domain_Zip, g.Upgrade_Domain_Country ) }">
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00078">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the Zip/Postal code of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Postleitzahl f�r den Wohnort des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Zip', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Domain_Country ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-SET-00045">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please select the country of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte w�hlen Sie das Land des Domain-Administrators</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Country', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.valid" VALUE = "{ Validate_Phone( g.Upgrade_Domain_Phone, g.Upgrade_Domain_Country ) }">
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00079">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the phone number of the Domain Administrator</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Telefonnummer des Domain-Administrators ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_DomainRegistration, 'Upgrade_Domain_Phone', l.field_error ) }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Wizard_DomainRegistration" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0 WIDTH = "100%">
<TR><TD VALIGN = "top" ALIGN = "left" COLSPAN = 2>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00080">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<P>
The following information will be used to register your Domain Upgrade License. Your current domain registration data is shown below. Please review it for accuracy and completeness.
</P>
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<P>
Die folgenden Informationen werden bei der Registrierung Ihrer Domain-Upgrade-Lizenz verwendet. Die derzeitigen Daten Ihrer Domain-Registrierung sind nachstehend aufgef�hrt. Bitte �berpr�fen Sie, ob diese richtig und vollst�ndig sind.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00081">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Owner:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Besitzer:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_Owner" VALUE = "{ encodeentities( g.Upgrade_Domain_Owner ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00082">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Email Address:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>E-Mail Adresse:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_Email" VALUE = "{ encodeentities( g.Upgrade_Domain_Email ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00083">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Company:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Firma:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_Company" VALUE = "{ encodeentities( g.Upgrade_Domain_Company ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00084">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Address:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Strasse:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_Address" VALUE = "{ encodeentities( g.Upgrade_Domain_Address ) }">
</FONT>
</TD></TR>
<MvIF EXPR = "{ s.miva_language EQ 'de-DE' }">
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00085">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Zip/Postal Code:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Postleitzahl:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_Zip" VALUE = "{ encodeentities( g.Upgrade_Domain_Zip ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00086">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>City:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Ort:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_City" VALUE = "{ encodeentities( g.Upgrade_Domain_City ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00087">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">State/Province:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bundesland:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_State" VALUE = "{ encodeentities( g.Upgrade_Domain_State ) }">
</FONT>
</TD></TR>
<MvELSE>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00088">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>City:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Ort:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_City" VALUE = "{ encodeentities( g.Upgrade_Domain_City ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00089">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>State/Province:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Bundesland:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvEVAL EXPR = "{ InitializeStateArray() }">
<SELECT NAME = "Upgrade_Domain_StateSelect">
<MvASSIGN NAME = "l.found" VALUE = 0>
<MvASSIGN NAME = "l.state" VALUE = 1>
<MvWHILE EXPR = "{ l.state LT g.State_Count }">
<MvIF EXPR = "{ g.State[ l.state ]:Code EQ g.Upgrade_Domain_StateSelect }">
<OPTION VALUE = "{ encodeentities( g.State[ l.state ]:Code ) }" SELECTED><MvEVAL EXPR = "{ g.State[ l.state ]:Name }"></OPTION>
<MvASSIGN NAME = "l.found" VALUE = 1>
<MvELSE>
<OPTION VALUE = "{ encodeentities( g.State[ l.state ]:Code ) }"><MvEVAL EXPR = "{ g.State[ l.state ]:Name }"></OPTION>
</MvIF>
<MvASSIGN NAME = "l.state" VALUE = "{ l.state + 1 }">
</MvWHILE>
<MvIF EXPR = "{ NOT l.found }">
<MvASSIGN NAME = "g.Upgrade_Domain_State" VALUE = "{ g.Upgrade_Domain_StateSelect }">
</MvIF>
</SELECT>
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00090">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Other State/Province:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Andere Bundesl�nder:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_State" VALUE = "{ encodeentities( g.Upgrade_Domain_State ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00091">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Zip/Postal Code:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Postleitzahl:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_Zip" VALUE = "{ encodeentities( g.Upgrade_Domain_Zip ) }">
</FONT>
</TD></TR>
</MvIF>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00092">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Country:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Land:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvEVAL EXPR = "{ InitializeCountryArray() }">
<SELECT NAME = "Upgrade_Domain_Country">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ DrawOption_SelectOne() }">
<MvASSIGN NAME = "l.country" VALUE = 1>
<MvWHILE EXPR = "{ l.country LT g.Country_Count }">
<MvIF EXPR = "{ g.Country[ l.country ]:Alpha EQ g.Upgrade_Domain_Country }">
<OPTION VALUE = "{ g.Country[ l.country ]:Alpha }" SELECTED><MvEVAL EXPR = "{ g.Country[ l.country ]:Name }"></OPTION>
<MvELSE>
<OPTION VALUE = "{ g.Country[ l.country ]:Alpha }"><MvEVAL EXPR = "{ g.Country[ l.country ]:Name }"></OPTION>
</MvIF>
<MvASSIGN NAME = "l.country" VALUE = "{ l.country + 1 }">
</MvWHILE>
</SELECT>
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00093">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Phone:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Telefon:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_Phone" VALUE = "{ encodeentities( g.Upgrade_Domain_Phone ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00094">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Fax:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Fax:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Domain_Fax" VALUE = "{ encodeentities( g.Upgrade_Domain_Fax ) }">
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD VALIGN = "bottom" ALIGN = "left">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Previous() }">
</TD><TD VALIGN = "bottom" ALIGN = "right">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Next() }">
</TD></TR>
</TABLE>
</MvFUNCTION>
<MvCOMMENT>
|
| Store License
| *********************************************************************************************
|
</MvCOMMENT>
<MvFUNCTION NAME = "Upgrade_Validate_Step_StoreLicense" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Upgrade_Store_Pos ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "License" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_License ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "Email" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_Email ) ) }">
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:License ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00095">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter a store upgrade license</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Laden-Upgrade-Lizenz ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreLicense, 'Upgrade_Store_Current_License', l.error ) }">
</MvIF>
<MvASSIGN NAME = "l.other_pos" VALUE = "1">
<MvWHILE EXPR = "{ l.other_pos LT l.pos }">
<MvIF EXPR = "{ ( g.Upgrade_Store[ l.pos ]:License EQ g.Upgrade_Store[ l.other_pos ]:License ) OR ( len( g.Upgrade_Store[ l.other_pos ]:Original_License ) AND ( g.Upgrade_Store[ l.pos ]:License EQ g.Upgrade_Store[ l.other_pos ]:Original_License ) ) }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00144">
<MvLOCALIZED-TOKEN NAME = "license" VALUE = "{ g.Upgrade_Store[ l.pos ]:License }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Sorry, you are already using license number '%license%' for another storefront. Please check your records and try again.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Leider benutzen Sie bereits die Lizenznummer '%license%' f�r eine andere Store Front. Bitte �berpr�fen Sie Ihre Unterlagen, und versuchen Sie es noch einmal.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreLicense, 'Upgrade_Store_Current_License', l.error ) }">
</MvIF>
<MvASSIGN NAME = "l.other_pos" VALUE = "{ l.other_pos + 1 }">
</MvWHILE>
<MvIF EXPR = "{ len( g.Upgrade_Store_Current_Email ) EQ 0 }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00096">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please enter the email address used to register this store in the prior version of Miva Merchant</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Geben Sie bitte die bei der Registrierung dieses Ladens bei der vorherigen Version von Miva Merchant verwendete E-Mail-Adresse ein</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreLicense, 'Upgrade_Store_Current_Email', l.error ) }">
</MvIF>
<MvIF EXPR = "{ NOT g.Upgrade_Store[ l.pos ]:Valid }">
<MvFIND NAME = "Stores" VALUE = "{ g.Upgrade_Store[ l.pos ]:ID }" EXACT>
<MvIF EXPR = "{ NOT Stores.d.EOF }">
<MvIF EXPR = "{ NOT Upgrade_License_Activate( 'STOREFRONT', Stores.d.license, g.Upgrade_Store[ l.pos ]:Email, g.Upgrade_Store[ l.pos ]:License ) }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreLicense, 'Upgrade_Store_Current_License', g.Error_Code $ ': ' $ g.Error_Message ) }">
<MvELSE>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "Valid" VALUE = 1>
<MvASSIGN NAME = "Stores.d.license" VALUE = "{ g.Upgrade_Store[ l.pos ]:License }">
<MvUPDATE NAME = "Stores">
</MvIF>
</MvIF>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Wizard_StoreLicense" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<SCRIPT LANGUAGE = "JavaScript">
<!--
function Upgrade_StoreLicense_Previous( step )
{
document.forms[ Screen ].elements[ 'Upgrade_Store_New_Pos' ].value = parseInt( document.forms[ Screen ].elements[ 'Upgrade_Store_Pos' ].value ) - 1;
document.forms[ Screen ].elements[ 'New_Step' ].value = step;
document.forms[ Screen ].submit();
}
//-->
</SCRIPT>
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Upgrade_Store_Pos ) }">
<MvASSIGN NAME = "l.valid" VALUE = "{ g.Upgrade_Store[ l.pos ]:Valid }">
<MvFIND NAME = "Stores" VALUE = "{ g.Upgrade_Store[ l.pos ]:ID }" EXACT>
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0 WIDTH = "100%">
<TR><TD VALIGN = "top" ALIGN = "left" COLSPAN = 2>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00097">
<MvLOCALIZED-TOKEN NAME = "store_name" VALUE = "{ Stores.d.name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<P>
Upgrading the store <B>%store_name%</B> requires a <B>Miva Merchant Additional Store Upgrade License</B>. Each storefront in your installation of Miva Merchant will require a different store upgrade license.
If you do not have a store upgrade license, one may be obtained from the Miva General Store.
</P>
<P>
Additionally, you must provide the Email address used to register this store in the prior version of Miva Merchant.
</P>
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<P>
F�r den Upgrade des Ladens "<B>%store_name%</B>" ist eine <B>Miva Merchant Domain-Upgrade-Lizenz</B> erforderlich. F�r jede Ladenfront in Ihrer Miva Merchant-Installierung ist eine andere Laden-Upgrade-Lizenz erforderlich. Wenn Sie noch keine Laden-Upgrade-Lizenz haben, k�nnen Sie diese im Miva General Store erhalten.
</P>
<P>
Dar�ber hinaus m�ssen Sie die E-Mail-Adresse angeben, die Sie bei der Registrierung der vorherigen Version von Miva Merchant angegeben hatten.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00098">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Existing Store License:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Jetzige Laden-Lizenz:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvEVAL EXPR = "{ g.Upgrade_Store[ l.pos ]:Original_License }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00099">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Store Upgrade License:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Laden-Upgrade-Lizenz:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ l.valid }">
<MvEVAL EXPR = "{ g.Upgrade_Store[ l.pos ]:License }">
<MvELSE>
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_License" VALUE = "{ g.Upgrade_Store[ l.pos ]:License }">
</MvIF>
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00100">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Email Address:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>E-Mail Adresse:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ l.valid }">
<MvEVAL EXPR = "{ g.Upgrade_Store[ l.pos ]:Email }">
<MvELSE>
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_Email" VALUE = "{ g.Upgrade_Store[ l.pos ]:Email }">
</MvIF>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD VALIGN = "bottom" ALIGN = "left">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Previous() }">
</TD><TD VALIGN = "bottom" ALIGN = "right">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Next() }">
</TD></TR>
</TABLE>
</MvFUNCTION>
<MvCOMMENT>
|
| Store Registration
| *********************************************************************************************
|
</MvCOMMENT>
<MvFUNCTION NAME = "Upgrade_Validate_Step_StoreRegistration" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Upgrade_Store_Pos ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationOwner" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationOwner ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationEmail" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationEmail ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationCompany" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationCompany ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationAddress" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationAddress ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationCity" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationCity ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationStateSelect" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationStateSelect ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationState" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationState ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationZip" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationZip ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationCountry" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationCountry ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationPhone" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationPhone ) ) }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationFax" VALUE = "{ ltrim( rtrim( g.Upgrade_Store_Current_RegistrationFax ) ) }">
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:RegistrationOwner ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00101">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's name</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie den Namen des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreRegistration, 'Upgrade_Store_Current_RegistrationOwner', l.field_error ) }">
</MvIF>
<MvASSIGN NAME = "l.temp" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationEmail }">
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.ok" VALUE = "{ Validate_Email( l.temp ) }">
<MvIF EXPR = "{ NOT l.ok }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00102">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's email address</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die E-Mail-Adresse des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreRegistration, 'Upgrade_Store_Current_RegistrationEmail', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:RegistrationAddress ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00103">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's address</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Strasse des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreRegistration, 'Upgrade_Store_Current_RegistrationAddress', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:RegistrationCity ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00104">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's city</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie den Ort des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreRegistration, 'Upgrade_Store_Current_RegistrationCity', l.field_error ) }">
</MvIF>
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "Registration_Use_State" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationState }">
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:Registration_Use_State ) EQ 0 }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "Registration_Use_State" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationStateSelect }">
</MvIF>
<MvIF EXPR = "{ ( len( g.Upgrade_Store[ l.pos ]:Registration_Use_State ) EQ 0 ) AND ( g.Upgrade_Store[ l.pos ]:RegistrationCountry EQ 'US' ) }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00105">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's State/Province</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie das Bundesland des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreRegistration, 'Upgrade_Store_Current_RegistrationState', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.valid" VALUE = "{ Validate_Zip( g.Upgrade_Store[ l.pos ]:RegistrationZip,g.Upgrade_Store[ l.pos ]:RegistrationCountry ) }">
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00106">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's Zip/Postal code</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Postleitzahl des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreRegistration, 'Upgrade_Store_Current_RegistrationZip', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ len( g.Upgrade_Store[ l.pos ]:RegistrationCountry ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-SET-00045">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's country</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie das Land des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreRegistration, '', l.field_error ) }">
</MvIF>
<MvDO FILE = "{ g.Upgrade_Filename_Admin }" NAME = "l.valid" VALUE = "{ Validate_Phone( g.Upgrade_Store[ l.pos ]:RegistrationPhone, g.Upgrade_Store[ l.pos ]:RegistrationCountry ) }">
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00107">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify the store owner's phone number</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bitte geben Sie die Telefonnummer des Ladenbesitzers an</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_StoreRegistration, 'Upgrade_Store_Current_RegistrationPhone', l.field_error ) }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Wizard_StoreRegistration" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Upgrade_Store_Pos ) }">
<MvASSIGN NAME = "l.reg_owner" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationOwner }">
<MvASSIGN NAME = "l.reg_email" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationEmail }">
<MvASSIGN NAME = "l.reg_company" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationCompany }">
<MvASSIGN NAME = "l.reg_address" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationAddress }">
<MvASSIGN NAME = "l.reg_city" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationCity }">
<MvASSIGN NAME = "l.reg_statesel" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationStateSelect }">
<MvASSIGN NAME = "l.reg_state" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationState }">
<MvASSIGN NAME = "l.reg_zip" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationZip }">
<MvASSIGN NAME = "l.reg_country" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationCountry }">
<MvASSIGN NAME = "l.reg_phone" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationPhone }">
<MvASSIGN NAME = "l.reg_fax" VALUE = "{ g.Upgrade_Store[ l.pos ]:RegistrationFax }">
<SCRIPT LANGUAGE = "JavaScript">
<!--
function Upgrade_StoreRegistration_Previous( step )
{
document.forms[ Screen ].elements[ 'Upgrade_Store_New_Pos' ].value = parseInt( document.forms[ Screen ].elements[ 'Upgrade_Store_Pos' ].value ) - 1;
document.forms[ Screen ].elements[ 'New_Step' ].value = step;
document.forms[ Screen ].submit();
}
function Upgrade_StoreRegistration_Next( step )
{
document.forms[ Screen ].elements[ 'Upgrade_Store_New_Pos' ].value = parseInt( document.forms[ Screen ].elements[ 'Upgrade_Store_Pos' ].value ) + 1;
document.forms[ Screen ].elements[ 'New_Step' ].value = step;
document.forms[ Screen ].submit();
}
//-->
</SCRIPT>
<MvFIND NAME = "Stores" VALUE = "{ g.Upgrade_Store[ l.pos ]:ID }" EXACT>
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0 WIDTH = "100%">
<TR><TD VALIGN = "top" ALIGN = "left" COLSPAN = 2>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00108">
<MvLOCALIZED-TOKEN NAME = "store_name" VALUE = "{ Stores.d.name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<P>
The following information will be used to register your Store Upgrade License for <B>%store_name%</B>. Your current store registration data is shown below. Please review it for accuracy and completeness.
</P>
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<P>
Die folgenden Informationen werden zur Registrierung Ihrer Laden-Upgrade-Lizenz f�r <B>%store_name%</B> verwendet. Die derzeitigen Daten Ihrer Laden-Registrierung sind nachstehend aufgef�hrt. Bitte �berpr�fen Sie, ob diese richtig und vollst�ndig sind.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00109">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Owner:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Besitzer:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationOwner" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationOwner) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00110">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Email Address:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>E-Mail Adresse:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationEmail" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationEmail ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00111">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Company:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Firma:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationCompany" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationCompany ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00112">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Address:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Strasse:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationAddress" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationAddress ) }">
</FONT>
</TD></TR>
<MvIF EXPR = "{ s.miva_language EQ 'de-DE' }">
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00113">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Zip/Postal Code:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Postleitzahl:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationZip" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationZip ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00114">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>City:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Ort:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationCity" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationCity ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00115">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">State/Province:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bundesland:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationState" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationState )">
</FONT>
</TD></TR>
<MvELSE>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00116">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>City:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Ort:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationCity" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationCity ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00117">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>State/Province:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Bundesland:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvEVAL EXPR = "{ InitializeStateArray() }">
<SELECT NAME = "Upgrade_Store_Current_RegistrationStateSelect">
<MvASSIGN NAME = "l.found" VALUE = 0>
<MvASSIGN NAME = "l.state" VALUE = 1>
<MvWHILE EXPR = "{ l.state LT g.State_Count }">
<MvIF EXPR = "{ g.State[ l.state ]:Code EQ g.Upgrade_Store[ l.pos ]:RegistrationStateSelect }">
<OPTION VALUE = "{ encodeentities( g.State[ l.state ]:Code ) }" SELECTED><MvEVAL EXPR = "{ g.State[ l.state ]:Name }"></OPTION>
<MvASSIGN NAME = "l.found" VALUE = 1>
<MvELSE>
<OPTION VALUE = "{ encodeentities( g.State[ l.state ]:Code ) }"><MvEVAL EXPR = "{ g.State[ l.state ]:Name }"></OPTION>
</MvIF>
<MvASSIGN NAME = "l.state" VALUE = "{ l.state + 1 }">
</MvWHILE>
<MvIF EXPR = "{ NOT l.found }">
<MvASSIGN NAME = "g.Upgrade_Store" INDEX = "{ l.pos }" MEMBER = "RegistrationState" VALUE = "{ g.Upgrade_Store }" INDEX = "{ l.pos }" MEMBER = "RegistrationStateSelect">
</MvIF>
</SELECT>
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00118">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Other State/Province:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Andere Bundesl�nder:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationState" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationState ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00119">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Zip/Postal Code:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Postleitzahl:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationZip" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationZip ) }">
</FONT>
</TD></TR>
</MvIF>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00120">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Country:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Land:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvEVAL EXPR = "{ InitializeCountryArray() }">
<SELECT NAME = "Upgrade_Store_Current_RegistrationCountry">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ DrawOption_SelectOne() }">
<MvASSIGN NAME = "l.country" VALUE = 1>
<MvWHILE EXPR = "{ l.country LT g.Country_Count }">
<MvIF EXPR = "{ g.Country[ l.country ]:Alpha EQ g.Upgrade_Store[ l.pos ]:RegistrationCountry }">
<OPTION VALUE = "{ g.Country[ l.country ]:Alpha }" SELECTED><MvEVAL EXPR = "{ g.Country[ l.country ]:Name }"></OPTION>
<MvELSE>
<OPTION VALUE = "{ g.Country[ l.country ]:Alpha }"><MvEVAL EXPR = "{ g.Country[ l.country ]:Name }"></OPTION>
</MvIF>
<MvASSIGN NAME = "l.country" VALUE = "{ l.country + 1 }">
</MvWHILE>
</SELECT>
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00121">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Phone:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Telefon:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationPhone" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationPhone ) }">
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00122">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Fax:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Fax:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Store_Current_RegistrationFax" VALUE = "{ encodeentities( g.Upgrade_Store[ l.pos ]:RegistrationFax ) }">
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD VALIGN = "bottom" ALIGN = "left">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Previous() }">
</TD><TD VALIGN = "bottom" ALIGN = "right">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Next() }">
</TD></TR>
</TABLE>
</MvFUNCTION>
<MvCOMMENT>
|
| Module Version Check
| *********************************************************************************************
|
</MvCOMMENT>
<MvFUNCTION NAME = "Upgrade_Validate_Step_ModuleVersionCheck" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Upgrade_Module_Pos ) }">
<MvASSIGN NAME = "g.Upgrade_Module" INDEX = "{ l.pos }" MEMBER = "VersionDisposition" VALUE = "{ ltrim( rtrim( g.Upgrade_Module_Current_VersionDisposition ) ) }">
<MvASSIGN NAME = "g.Upgrade_Module" INDEX = "{ l.pos }" MEMBER = "VersionNewFile" VALUE = "{ ltrim( rtrim( g.Upgrade_Module_Current_VersionNewFile ) ) }">
<MvIF EXPR = "{ len( g.Upgrade_Module[ l.pos ]:VersionDisposition ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00014">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please select an option</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_ModuleVersionCheck, '', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ g.Upgrade_Module[ l.pos ]:VersionDisposition EQ 'new' }">
<MvIF EXPR = "{ len( g.Upgrade_Module[ l.pos ]:VersionNewFile ) EQ 0 }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00015">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Please specify a file name</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_ModuleVersionCheck, 'Upgrade_Module_Current_VersionNewFile', l.field_error ) }">
</MvIF>
<MvIF EXPR = "{ NOT sexists( g.Module_Root $ g.Upgrade_Module[ l.pos ]:VersionNewFile ) }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00016">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">The file specified does not exist</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_ModuleVersionCheck, 'Upgrade_Module_Current_VersionNewFile', l.field_error ) }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ g.Upgrade_Module[ l.pos ]:VersionDisposition EQ 'keep' }">
<MvIF EXPR = "{ NOT scopy( g.Old_Module_Root $ g.Upgrade_Module[ l.pos ]:VersionModule, g.Module_Root $ g.Upgrade_Module[ l.pos ]:VersionModule ) }">
<MvLOCALIZED NAME = "l.field_error" ID = "MER-UPG-00017">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Could not copy the specified file</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvFUNCTIONRETURN VALUE = "{ Upgrade_FieldError( g.Step_Wizard_ModuleVersionCheck, 'Upgrade_Module_Current_VersionNewFile', l.field_error ) }">
</MvIF>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Wizard_ModuleVersionCheck" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Upgrade_Module_Pos ) }">
<MvASSIGN NAME = "l.new_file" VALUE = "{ g.Upgrade_Module[ l.pos ]:VersionNewFile }">
<MvDO FILE = "{ g.Module_Admin }" NAME = "l.javascript" VALUE = "{ JavaScript_SetVariables( 'g', 'sessionurl, Store_Code, Edit_Store' ) }">
<MvEVAL EXPR = "{ l.javascript }">
<SCRIPT LANGUAGE = "JavaScript">
<!--
function Upgrade_ModuleVersionCheck_Previous( step )
{
document.forms[ Screen ].elements[ 'Upgrade_Module_New_Pos' ].value = parseInt( document.forms[ Screen ].elements[ 'Upgrade_Module_Pos' ].value ) - 1;
document.forms[ Screen ].elements[ 'New_Step' ].value = step;
document.forms[ Screen ].submit();
}
function Upgrade_ModuleVersionCheck_Next( step )
{
document.forms[ Screen ].elements[ 'Upgrade_Module_New_Pos' ].value = parseInt( document.forms[ Screen ].elements[ 'Upgrade_Module_Pos' ].value ) + 1;
document.forms[ Screen ].elements[ 'New_Step' ].value = step;
document.forms[ Screen ].submit();
}
function PopupFileUpload( type, data, field )
{
var URL = g.sessionurl + 'Screen=FUPL&FileUpload_Form=' + Screen + '&FileUpload_Field=' + field + '&FileUpload_Type=' + type + '&FileUpload_Data=' + escape( data );
if ( Store_Code.length )
{
URL += '&Store_Code=' + Store_Code;
}
else if ( Edit_Store.length )
{
URL += '&Store_Code=' + Edit_Store;
}
window.open( URL, 'FileUpload', 'toolbar=no,location=yes,directories=no,status=yes,scrollbars=no,resizable=yes,copyhistory=no,width=465,height=200' ).focus();
}
//-->
</SCRIPT>
<MvIF EXPR = "{ l.api_version LT '3.50' }">
<MvASSIGN NAME = "l.can_keep" VALUE = "0">
<MvELSE>
<MvASSIGN NAME = "l.can_keep" VALUE = "1">
</MvIF>
<MvIF EXPR = "{ ( g.Upgrade_ISP_Defaults EQ 'yes' ) AND ( NOT g.Upgrade_ISP_ModuleVersionCheck_CanUpload ) }">
<MvASSIGN NAME = "l.can_upload" VALUE = "0">
<MvELSE>
<MvASSIGN NAME = "l.can_upload" VALUE = "0">
<MvOPEN NAME = "Upgrade_Users" DATABASE = "{ g.MerchantPath $ 'users.dbf' }" INDEXES = "{ g.MerchantPath $ 'usr_name.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00009', MvOPEN_Error ) }">
<MvELSE>
<MvFIND NAME = "Upgrade_Users" VALUE = "{ toupper( g.Upgrade_Login ) }" EXACT>
<MvIF EXPR = "{ NOT Upgrade_Users.d.EOF }">
<MvIF EXPR = "{ s.version LT 3.9026 }">
<MvIF EXPR = "{ substring( Upgrade_Users.d.password, 1, 3 ) EQ '$1$' }">
<MvASSIGN NAME = "l.salt" VALUE = "{ substring( Upgrade_Users.d.password, 4, 2 ) }">
<MvELSE>
<MvASSIGN NAME = "l.salt" VALUE = "{ substring( Upgrade_Users.d.password, 1, 2 ) }">
</MvIF>
<MvELSE>
<MvASSIGN NAME = "l.salt" VALUE = "{ Upgrade_Users.d.password }">
</MvIF>
<MvIF EXPR = "{ ( g.Upgrade_Password CRYPT l.salt ) EQ Upgrade_Users.d.password }">
<MvIF EXPR = "{ Upgrade_Users.d.admin }">
<MvASSIGN NAME = "l.can_upload" VALUE = 1>
</MvIF>
</MvIF>
</MvIF>
<MvCLOSE NAME = "Upgrade_Users">
</MvIF>
</MvIF>
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0 WIDTH = "100%">
<TR><TD VALIGN = "top" ALIGN = "left" COLSPAN = 2>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ l.can_keep }">
<MvLOCALIZED ID = "MER-UPG-00108">
<MvLOCALIZED-TOKEN NAME = "module_name" VALUE = "{ g.Upgrade_Module[ l.pos ]:VersionName }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<P>
No upgrade was found for <B>%module_name%</B>, and your current module may not work with the new version of Merchant. If you have a new version of this module, you may use that; or you may deactivate this module, or you may use the old version of the module.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvELSE>
<MvLOCALIZED ID = "MER-UPG-00108">
<MvLOCALIZED-TOKEN NAME = "module_name" VALUE = "{ g.Upgrade_Module[ l.pos ]:VersionName }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<P>
No upgrade was found for <B>%module_name%</B>, and your current module will not work with the new version of Merchant. If you have a new version of this module, you may use that, or you may deactivate this module.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<MvIF EXPR = "{ l.can_keep }">
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ g.Upgrade_Module[ l.pos ]:VersionDisposition EQ 'keep' }">
<INPUT TYPE = "radio" NAME = "Upgrade_Module_Current_VersionDisposition" VALUE = "keep" CHECKED>
<MvELSE>
<INPUT TYPE = "radio" NAME = "Upgrade_Module_Current_VersionDisposition" VALUE = "keep">
</MvIF>
<MvLOCALIZED ID = "MER-UPG-00109">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Keep current version</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
</MvIF>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ g.Upgrade_Module[ l.pos ]:VersionDisposition EQ 'skip' }">
<INPUT TYPE = "radio" NAME = "Upgrade_Module_Current_VersionDisposition" VALUE = "skip" CHECKED>
<MvELSE>
<INPUT TYPE = "radio" NAME = "Upgrade_Module_Current_VersionDisposition" VALUE = "skip">
</MvIF>
<MvLOCALIZED ID = "MER-UPG-00109">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Skip this module.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
<MvIF EXPR = "{ l.can_upload }">
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ g.Upgrade_Module[ l.pos ]:VersionDisposition EQ 'new' }">
<INPUT TYPE = "radio" NAME = "Upgrade_Module_Current_VersionDisposition" VALUE = "new" CHECKED>
<MvELSE>
<INPUT TYPE = "radio" NAME = "Upgrade_Module_Current_VersionDisposition" VALUE = "new">
</MvIF>
<MvLOCALIZED ID = "MER-UPG-00109">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Use</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<INPUT TYPE = "text" SIZE = 40 NAME = "Upgrade_Module_Current_VersionNewFile" VALUE = "{ g.Upgrade_Module[ l.pos ]:VersionNewFile }">
<MvEVAL EXPR = "{ '<A HREF = "JavaScript:PopupFileUpload( \'Module\', \'' $ JavaScriptEncode( Upgrade_Module_Current_ID ) $ '\', 'Upgrade_Module_Current_VersionNewFile' );">' }"><MvEVAL EXPR = "{ DrawImgButton_Upload(0) }"><MvEVAL EXPR = "</A>">
</FONT>
</TD></TR>
</MvIF>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD VALIGN = "bottom" ALIGN = "left">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Previous() }">
</TD><TD VALIGN = "bottom" ALIGN = "right">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Next() }">
</TD></TR>
</TABLE>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Wizard_Finish" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0 WIDTH = "100%">
<TR><TD VALIGN = "top" ALIGN = "left" COLSPAN = 2>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00123">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<P>
The Miva Merchant Upgrade Wizard has now collected all of the information required to
begin the upgrade process.
</P>
<P>
Press the <B>Upgrade</B> button to begin upgrading your installation of Miva Merchant.
</P>
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<P>
Dem Miva Merchant Upgrade-Assistenten stehen nun alle erforderlichen Informationen zur Verf�gung, um den Upgrade-Vorgang zu beginnen.
</P>
<P>
Klicken Sie bitte auf "<B>Upgrade</B>", um den Upgrade Ihrer Miva Merchant Installierung zu starten.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
<TR><TD COLSPAN = "2"> </TD></TR>
<TR><TD VALIGN = "bottom" ALIGN = "left">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Previous() }">
</TD><TD VALIGN = "bottom" ALIGN = "right">
<MvEVAL EXPR = "{ Upgrade_Draw_Button_Next() }">
</TD></TR>
</TABLE>
</MvFUNCTION>
<MvCOMMENT>
|
| *************************************************************************************************
| Code that actually performs the upgrade starts here
| *************************************************************************************************
|
</MvCOMMENT>
<MvFUNCTION NAME = "Screen_Upgrade" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.ok" VALUE = 1>
<MvIF EXPR = "{ g.Frame EQ 'PROG' }">
<BODY BGCOLOR = "#ffffff">
</BODY>
<MvELSE>
<MvOPEN NAME = "Upgrade_Users" DATABASE = "{ g.MerchantPath $ 'users.dbf' }" INDEXES = "{ g.MerchantPath $ 'usr_name.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00009', MvOPEN_Error ) }">
<MvELSE>
<MvASSIGN NAME = "l.valid" VALUE = 0>
<MvFIND NAME = "Upgrade_Users" VALUE = "{ toupper( g.Upgrade_Login ) }" EXACT>
<MvIF EXPR = "{ NOT Upgrade_Users.d.EOF }">
<MvIF EXPR = "{ s.version LT 3.9026 }">
<MvIF EXPR = "{ substring( Upgrade_Users.d.password, 1, 3 ) EQ '$1$' }">
<MvASSIGN NAME = "l.salt" VALUE = "{ substring( Upgrade_Users.d.password, 4, 2 ) }">
<MvELSE>
<MvASSIGN NAME = "l.salt" VALUE = "{ substring( Upgrade_Users.d.password, 1, 2 ) }">
</MvIF>
<MvELSE>
<MvASSIGN NAME = "l.salt" VALUE = "{ Upgrade_Users.d.password }">
</MvIF>
<MvIF EXPR = "{ ( g.Upgrade_Password CRYPT l.salt ) EQ Upgrade_Users.d.password }">
<MvIF EXPR = "{ Upgrade_Users.d.admin }">
<MvASSIGN NAME = "l.valid" VALUE = 1>
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ NOT l.valid }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00124">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Invalid username/password, or the user specified does not have administrative privileges.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Invalid username/password, or the user specified does not have administrative privileges.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00010', l.error ) }">
</MvIF>
<MvCLOSE NAME = "Upgrade_Users">
</MvIF>
<MvIF EXPR = "{ l.ok }">
<MvIF EXPR = "{ len( g.Frame ) EQ 0 }">
<MvASSIGN NAME = "l.skipped_modules" VALUE = "">
<MvASSIGN NAME = "l.pos" VALUE = "1">
<MvWHILE EXPR = "{ ( l.pos LE g.Upgrade_Module_Count ) }">
<MvIF EXPR = "{ g.Upgrade_Module[ l.pos ]:VersionDisposition EQ 'skip' }">
<MvASSIGN NAME = "l.skipped_modules" VALUE = "{ l.skipped_modules $ ':' $ g.Upgrade_Module[ l.pos ]:ID }">
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvIF EXPR = "{ len( l.skipped_modules ) }">
<MvASSIGN NAME = "l.skipped_modules" VALUE = "{ '&Skip=' $ l.skipped_modules $ ':' }">
</MvIF>
<FRAMESET ROWS = "*, 25%, 22%" BORDER = 0>
<FRAME NAME = "Info" SRC = "{ g.sessionurl $ 'Screen=UPGD&Frame=INFO&Upgrade_Login=' $ encodeattribute( g.Upgrade_Login ) $ '&Upgrade_Password=' $ encodeattribute( g.Upgrade_Password ) $ l.skipped_modules }" NORESIZE>
<FRAME NAME = "Work" SRC = "{ g.sessionurl $ 'Screen=UPGD&Frame=WORK&Upgrade_Login=' $ encodeattribute( g.Upgrade_Login ) $ '&Upgrade_Password=' $ encodeattribute( g.Upgrade_Password ) $ l.skipped_modules }" NORESIZE>
<FRAME NAME = "Progress" SRC = "{ g.sessionurl $ 'Screen=UPGD&Frame=PROG' }" NORESIZE>
<NOFRAMES>
<MvLOCALIZED ID = "MER-UPG-00125">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">The Miva Merchant Upgrade Script requires a browser that supports frames</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Das Miva Merchant Upgrade-Script erfordert einen Browser, der Frames unterst�tzt</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</NOFRAMES>
</FRAMESET>
<MvELSE>
<MvIF EXPR = "{ g.Frame EQ 'INFO' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Screen_Upgrade_Info() }">
</MvIF>
<MvIF EXPR = "{ g.Frame EQ 'WORK' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Screen_Upgrade_Work() }">
</MvIF>
</MvIF>
</MvIF>
</MvIF>
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Start_Upgrade" PARAMETERS = "" STANDARDOUTPUTLEVEL = "">
<MvOPEN NAME = "Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvASSIGN NAME = "Domain.d.version" VALUE = "{ Upgrade_Numeric_Version( Domain.d.version ) $ 'u' }">
<MvUPDATE NAME = "Domain">
<MvCLOSE NAME = "Domain">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_SCopy" PARAMETERS = "source, destination" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.ok" VALUE = "{ scopy( l.source, destination ) }">
<MvIF EXPR = "{ NOT scopy( l.source, destination ) }">
<MvLOCALIZED NAME = "l.error" ID = "MER-UPG-00145">
<MvLOCALIZED-TOKEN NAME = "source" VALUE = "{ l.source }">
<MvLOCALIZED-TOKEN NAME = "destination" VALUE = "{ l.destination }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Unable to copy '%source%' to '%destination%'</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">'%source%' kann nicht zu '%destination%' kopiert werden</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( '#Error#', l.error ) }">
</MvIF>
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvFUNCTION>
<MvFUNCTION NAME = "Screen_Upgrade_Info" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<BODY BGCOLOR = "#ffffff">
<SCRIPT LANGUAGE = "JavaScript">
<!--
function Upgrade_Finished()
{
Upgrade_Clear_Status();
document.Upgrade_Finished.submit();
}
function Upgrade_Finished_With_Errors()
{
Upgrade_Clear_Status();
document.Upgrade_Finished.elements[ 'Upgrade_Errors_Detected' ].value = 1;
document.Upgrade_Finished.submit();
}
function Upgrade_Clear_Status()
{
var output_document;
output_document = parent.Progress.document;
output_document.open( 'text/html', 1 );
output_document.writeln( '<HTML><BODY BGCOLOR = "#ffffff">' );
output_document.writeln( '</BODY></HTML>' );
output_document.close();
}
function Upgrade_Draw_Status( action_prompt, action_text, record_prompt, record_text, progress_prompt, recno, totrec )
{
var percent_completed;
var percent_remaining;
var output_document;
if ( recno == -1 )
{
if ( totrec )
{
percent_completed = 100;
percent_remaining = 0;
}
else
{
percent_completed = 0;
percent_remaining = 100;
}
}
else if ( recno == 0 && totrec == 0 )
{
percent_completed = 100;
percent_remaining = 0;
}
else
{
percent_completed = ( recno * 100 ) / totrec;
percent_remaining = 100 - percent_completed;
}
output_document = parent.Progress.document;
output_document.open( 'text/html', 1 );
output_document.writeln( '<HTML><BODY BGCOLOR = "#ffffff">' );
output_document.writeln( '<TABLE BORDER = 0 WIDTH = "100%">' );
output_document.writeln( '<TR><TD NOWRAP>' );
output_document.writeln( ' <FONT FACE = "Arial, Helvetica" SIZE = "-1">' );
output_document.writeln( ' <B>' + action_prompt + '</B>' );
output_document.writeln( ' </FONT>' );
output_document.writeln( '</TD><TD WIDTH = "100%">' );
output_document.writeln( ' <FONT FACE = "Arial, Helvetica" SIZE = "-1">' );
output_document.writeln( ' ' + action_text + '</B>' );
output_document.writeln( ' </FONT>' );
output_document.writeln( '</TD></TR>' );
if ( recno != -1 )
{
output_document.writeln( '' );
output_document.writeln( '<TR><TD NOWRAP>' );
output_document.writeln( ' <FONT FACE = "Arial, Helvetica" SIZE = "-1">' );
output_document.writeln( ' <B>' + progress_prompt + '</B>' );
output_document.writeln( ' </FONT>' );
output_document.writeln( '</TD><TD WIDTH = "100%">' );
output_document.writeln( ' <TABLE BORDER = 0 CELLPADDING = 4 WIDTH = "100%">' );
output_document.writeln( ' <TR><TD ALIGN = "right" VALIGN = "middle">' );
output_document.writeln( ' <FONT FACE = "Arial, Helvetica" SIZE = "-1">' );
output_document.writeln( ' <B>0%</B>' );
output_document.writeln( ' </FONT>' );
output_document.writeln( ' </TD><TD BGCOLOR = "blue" ALIGN = "center" WIDTH = "' + Math.round( percent_completed ) + '%">' );
output_document.writeln( ' <FONT FACE = "Arial, Helvetica" SIZE = "-1" COLOR = "white">' );
output_document.writeln( ' <B>' + Math.round( percent_completed ) + '%</B>' );
output_document.writeln( ' </FONT>' );
output_document.writeln( ' </TD><TD WIDTH = "' + Math.round( percent_remaining ) + '%">' );
output_document.writeln( ' ' );
output_document.writeln( ' </TD><TD ALIGN = "left" VALIGN = "middle">' );
output_document.writeln( ' <FONT FACE = "Arial, Helvetica" SIZE = "-1">' );
output_document.writeln( ' <B>100%</B>' );
output_document.writeln( ' </FONT>' );
output_document.writeln( ' </TD></TR>' );
output_document.writeln( ' </TABLE>' );
output_document.writeln( '</TD></TR>' );
}
if ( record_prompt.length )
{
output_document.writeln( '' );
output_document.writeln( '<TR><TD NOWRAP>' );
output_document.writeln( ' <FONT FACE = "Arial, Helvetica" SIZE = "-1">' );
output_document.writeln( ' <B>' + record_prompt + '</B>' );
output_document.writeln( ' </FONT>' );
output_document.writeln( '</TD><TD WIDTH = "100%">' );
output_document.writeln( ' <FONT FACE = "Arial, Helvetica" SIZE = "-1">' );
output_document.writeln( ' ' + record_text );
output_document.writeln( ' </FONT>' );
output_document.writeln( '</TD></TR>' );
}
output_document.writeln( '</TABLE>' );
output_document.writeln( '</BODY></HTML>' );
output_document.close();
}
//-->
</SCRIPT>
<MvASSIGN NAME = "l.source_version" VALUE = "Unknown">
<MvOPEN NAME = "Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvIF EXPR = "{ NOT MvOPEN_Error }">
<MvASSIGN NAME = "l.source_version" VALUE = "{ Upgrade_Numeric_Version( Domain.d.version ) }">
<MvCLOSE NAME = "Domain">
</MvIF>
<FONT FACE = "Arial, Helvetica">
<MvLOCALIZED ID = "MER-UPG-00003">
<MvLOCALIZED-TOKEN NAME = "source_version" VALUE = "{ l.source_version }">
<MvLOCALIZED-TOKEN NAME = "dest_version" VALUE = "{ g.Merchant_Version }">
<MvLOCALIZED-TOKEN NAME = "path" VALUE = "{ g.MerchantPath }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<B>Upgrade in Progress</B>
<FONT SIZE = "-1">
<P>
The Miva Merchant Upgrade script is currently upgrading your Miva Merchant installation
from version <B>%source_version%</B> to version <B>%dest_version%</B>. This process may take a significant amount of
time, depending on the number of storefronts in your Miva Merchant installation, and the quantity
of categories, products, and other items in those stores.
</P>
<FONT COLOR = "red">
<P><B>Please do not close your browser or otherwise interrupt this process.</B></P>
</FONT>
<P>
A log of the upgrade process is being generated, and is stored in the file <B>upgrade.log</B>. This file
is available in the <B>%path%</B> subdirectory of your Miva data directory.
</P>
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<B>Upgrade wird durchgef�hrt</B>
<FONT SIZE = "-1">
<P>
Das Miva Merchant Upgrade-Script f�hrt jetzt einen Upgrade Ihrer Miva Merchant Installierung von
Version <B>%source_version%</B> auf Version <B>%dest_version%</B> durch. Je nach Anzahl der Ladenfronten in Ihrer
Miva Merchant Installierung und der in diesen L�den befindlichen Kategorien, Produkte und sonstige Punkte kann
dieser Vorgang einige Zeit in Anspruch nehmen.
</P>
<FONT COLOR = "red">
<P>
<B>Bitte schlie�en Sie nicht Ihren Browser bzw. unterbrechen Sie diesen Vorgang nicht anderweitig.</B>
</P>
</FONT>
<P>
Es wird ein Protokoll des Upgrade-Vorgangs erstellt, das in der Datei "<B>upgrade.log<B>" gespeichert wird.
Diese Datei befindet sich im Unterverzeichnis "<B>%path%</B>" Ihres Miva Datenverzeichnisses.
</P>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
<FORM TARGET = "_top" NAME = "Upgrade_Finished" METHOD = "POST" ACTION = "{ g.sessionurl }">
<INPUT TYPE = "hidden" NAME = "Screen" VALUE = "FINI">
<INPUT TYPE = "hidden" NAME = "Upgrade_Errors_Detected" VALUE = 0>
</FORM>
</BODY>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Screen_Upgrade_Work" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.ok" VALUE = 1>
<BODY BGCOLOR = "#ffffff" ONLOAD = "Upgrade_Resume();">
<MvOPEN NAME = "Upgrade_Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00011', MvOPEN_Error ) }">
<MvELSE>
<MvIF EXPR = "{ 'https://' IN g.sessionurl }">
<MvASSIGN NAME = "g.Secure" VALUE = 1>
<MvELSE>
<MvASSIGN NAME = "g.Secure" VALUE = 0>
</MvIF>
<MvIF EXPR = "{ g.Secure }">
<MvASSIGN NAME = "g.Module_Root_Versionless" VALUE = "{ Upgrade_Domain.d.mod_sroot }">
<MvELSE>
<MvASSIGN NAME = "g.Module_Root_Versionless" VALUE = "{ Upgrade_Domain.d.mod_root }">
</MvIF>
<MvASSIGN NAME = "g.Module_Root" VALUE = "{ g.Module_Root_Versionless $ g.Version_Path }">
<MvASSIGN NAME = "g.Module_Library_Utilities" VALUE = "{ g.Module_Root_Versionless $ g.Upgrade_Library_Utilities }">
<MvASSIGN NAME = "g.Module_Library_DB" VALUE = "{ g.Module_Root_Versionless $ g.Upgrade_Library_DB }">
<MvASSIGN NAME = "g.Module_Library_Help" VALUE = "{ g.Module_Root $ g.Library_Help }">
<MvASSIGN NAME = "g.Upgrade_Version_From" VALUE = "{ Upgrade_Domain.d.version }">
<MvCLOSE NAME = "Upgrade_Domain">
<MvIF EXPR = "{ g.Upgrade_Have_State NE 'Yes' }">
<MvEVAL EXPR = "{ Upgrade_Setup_State() }">
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Operation_Pos ) }">
<MvIF EXPR = "{ ( g.Operation[ l.pos ] EQ 'store_db' ) OR
( g.Operation[ l.pos ] EQ 'store_db_index' ) OR
( g.Operation[ l.pos ] EQ 'store_rename_db' ) OR
( g.Operation[ l.pos ] EQ 'store_rename_index' ) OR
( g.Operation[ l.pos ] EQ 'store_cleanup' ) OR
( g.Operation[ l.pos ] EQ 'store_key' ) OR
( g.Operation[ l.pos ] EQ 'store_modules' ) }">
<MvIF EXPR = "{ g.Store_Record_Pos GT g.Store_Record_Count }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
<MvASSIGN NAME = "g.Store_Record_Pos" VALUE = 1>
</MvIF>
<MvASSIGN NAME = "l.store_pos" VALUE = "{ int( g.Store_Record_Pos ) }">
<MvASSIGN NAME = "g.Current_Store_ID" VALUE = "{ g.Store_Record[ l.store_pos ]:ID }">
<MvASSIGN NAME = "g.Current_Store_Code" VALUE = "{ g.Store_Record[ l.store_pos ]:Code }">
<MvASSIGN NAME = "g.Current_Store_Name" VALUE = "{ g.Store_Record[ l.store_pos ]:Name }">
<MvASSIGN NAME = "g.Current_Store_Country" VALUE = "{ g.Store_Record[ l.store_pos ]:Country }">
</MvIF>
<MvIF EXPR = "{ l.pos GT g.Operation_Count }">
<MvIF EXPR = "{ g.Upgrade_Errors_Detected }">
<SCRIPT LANGUAGE = "JavaScript">
<!--
function Upgrade_Resume()
{
parent.Info.Upgrade_Finished_With_Errors();
}
//-->
</SCRIPT>
<MvELSE>
<SCRIPT LANGUAGE = "JavaScript">
<!--
function Upgrade_Resume()
{
parent.Info.Upgrade_Finished();
}
//-->
</SCRIPT>
</MvIF>
<MvELSE>
<MvOPEN NAME = "Upgrade_Modules" DATABASE = "{ g.MerchantPath $ 'modules.dbf' }" INDEXES = "{ g.MerchantPath $ 'mod_code.mvx' }">
<MvFILTER NAME = "Upgrade_Modules" FILTER = "{ NOT Upgrade_Modules.d.deleted }">
<MvASSIGN NAME = "l.module_count" VALUE = "{ Upgrade_Modules.d.totrec }">
<MvCLOSE NAME = "Upgrade_Modules">
<MvASSIGN NAME = "l.operation" VALUE = "{ g.Operation[ l.pos ] }">
<MvASSIGN NAME = "l.file_total" VALUE = "{ 1 +
g.Domain_Misc_Count +
g.Domain_DB_Count +
g.Domain_DB_Index_Count +
g.Domain_DB_Count +
g.Domain_DB_Index_Count +
1 +
g.Domain_Privilege_Count +
g.Domain_Module_New_Count +
g.Domain_Key_Count +
1 +
g.Store_Record_Count * (
g.Store_DB_Count +
g.Store_DB_Index_Count +
g.Store_DB_Count +
g.Store_DB_Index_Count + g.Store_Key_Count +
1 ) +
1 }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Overall( l.operation, g.Current_Store_Name, g.Overall_Pos, l.file_total ) }">
<MvIF EXPR = "{ l.operation EQ 'domain_start_upgrade' }">
<MvEVAL EXPR = "{ Upgrade_Start_Upgrade() }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_misc' }">
<MvIF EXPR = "{ NOT Upgrade_Domain_Misc() }">
<MvASSIGN NAME = "g.Domain_Misc_Pos" VALUE = "{ g.Domain_Misc_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Domain_Misc_Pos GT g.Domain_Misc_Count }">
<MvASSIGN NAME = "g.Domain_Misc_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_db' }">
<MvIF EXPR = "{ NOT Upgrade_Domain_DB() }">
<MvASSIGN NAME = "g.Domain_DB_Pos" VALUE = "{ g.Domain_DB_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Domain_DB_Pos GT g.Domain_DB_Count }">
<MvASSIGN NAME = "g.Domain_DB_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_db_index' }">
<MvIF EXPR = "{ NOT Upgrade_Domain_DB_Index() }">
<MvASSIGN NAME = "g.Domain_DB_Index_Pos" VALUE = "{ g.Domain_DB_Index_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Domain_DB_Index_Pos GT g.Domain_DB_Index_Count }">
<MvASSIGN NAME = "g.Domain_DB_Index_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_db' }">
<MvIF EXPR = "{ NOT Upgrade_Store_DB() }">
<MvASSIGN NAME = "g.Store_DB_Pos" VALUE = "{ g.Store_DB_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Store_DB_Pos GT g.Store_DB_Count }">
<MvIF EXPR = "{ g.Store_DB_Pos GT g.Store_DB_Count }">
<MvASSIGN NAME = "g.Store_DB_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Store_Record_Pos" VALUE = "{ g.Store_Record_Pos + 1 }">
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_db_index' }">
<MvIF EXPR = "{ NOT Upgrade_Store_DB_Index() }">
<MvASSIGN NAME = "g.Store_DB_Index_Pos" VALUE = "{ g.Store_DB_Index_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Store_DB_Index_Pos GT g.Store_DB_Index_Count }">
<MvIF EXPR = "{ g.Store_DB_Index_Pos GT g.Store_DB_Index_Count }">
<MvASSIGN NAME = "g.Store_DB_Index_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Store_Record_Pos" VALUE = "{ g.Store_Record_Pos + 1 }">
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_rename_db' }">
<MvIF EXPR = "{ NOT Upgrade_Domain_Rename_DB() }">
<MvASSIGN NAME = "g.Domain_DB_Pos" VALUE = "{ g.Domain_DB_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Domain_DB_Pos GT g.Domain_DB_Count }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_rename_index' }">
<MvIF EXPR = "{ NOT Upgrade_Domain_Rename_DB_Index() }">
<MvASSIGN NAME = "g.Domain_DB_Index_Pos" VALUE = "{ g.Domain_DB_Index_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Domain_DB_Index_Pos GT g.Domain_DB_Index_Count }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_cleanup' }">
<MvIF EXPR = "{ NOT Upgrade_Domain_Cleanup() }">
<MvCOMMENT> Handled by lower level </MvCOMMENT>
</MvIF>
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_rename_db' }">
<MvIF EXPR = "{ NOT Upgrade_Store_Rename_DB() }">
<MvASSIGN NAME = "g.Store_DB_Pos" VALUE = "{ g.Store_DB_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Store_DB_Pos GT g.Store_DB_Count }">
<MvASSIGN NAME = "g.Store_DB_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Store_Record_Pos" VALUE = "{ g.Store_Record_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_rename_index' }">
<MvIF EXPR = "{ NOT Upgrade_Store_Rename_DB_Index() }">
<MvASSIGN NAME = "g.Store_DB_Index_Pos" VALUE = "{ g.Store_DB_Index_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Store_DB_Index_Pos GT g.Store_DB_Index_Count }">
<MvASSIGN NAME = "g.Store_DB_Index_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Store_Record_Pos" VALUE = "{ g.Store_Record_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_cleanup' }">
<MvIF EXPR = "{ NOT Upgrade_Store_Cleanup() }">
<MvCOMMENT> Handled by lower level </MvCOMMENT>
</MvIF>
<MvASSIGN NAME = "g.Store_Record_Pos" VALUE = "{ g.Store_Record_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_key' }">
<MvIF EXPR = "{ NOT Upgrade_Store_Key() }">
<MvASSIGN NAME = "g.Store_Key_Pos" VALUE = "{ g.Store_Key_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Store_Key_Pos GT g.Store_Key_Count }">
<MvASSIGN NAME = "g.Store_Key_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Store_Record_Pos" VALUE = "{ g.Store_Record_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_key' }">
<MvIF EXPR = "{ NOT Upgrade_Domain_Key() }">
<MvASSIGN NAME = "g.Domain_Key_Pos" VALUE = "{ g.Domain_Key_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Domain_Key_Pos GT g.Domain_Key_Count }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_priv' }">
<MvIF EXPR = "{ NOT Upgrade_Domain_Privilege() }">
<MvASSIGN NAME = "g.Domain_Privilege_Pos" VALUE = "{ g.Domain_Privilege_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Domain_Privilege_Pos GT g.Domain_Privilege_Count }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_modules' }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.ok" VALUE = "{ OpenDataFiles( g.Merchant_Version ) }">
<MvIF EXPR = "{ l.ok }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.found" VALUE = "{ Module_FindFirst_Admin() }">
<MvIF EXPR = "{ NOT l.found }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
<MvELSE>
<MvASSIGN NAME = "l.pos" VALUE = "{ g.Domain_Module_Record }">
<MvWHILE EXPR = "{ l.pos }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.found" VALUE = "{ Module_FindNext_Admin() }">
<MvIF EXPR = "{ NOT l.found }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
<MvWHILESTOP>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos - 1 }">
</MvWHILE>
<MvIF EXPR = "{ l.found }">
<MvIF EXPR = "{ NOT Upgrade_Domain_Module() }">
<MvASSIGN NAME = "g.Domain_Module_Record" VALUE = "{ g.Domain_Module_Record + 1 }">
</MvIF>
</MvIF>
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_modules' }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.ok" VALUE = "{ OpenDataFiles( g.Merchant_Version ) }">
<MvIF EXPR = "{ l.ok }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.ok" VALUE = "{ Store_Open( g.Current_Store_Code ) }">
<MvIF EXPR = "{ l.ok }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.found" VALUE = "{ StoreModule_FindFirst() }">
<MvIF EXPR = "{ NOT l.found }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
<MvELSE>
<MvASSIGN NAME = "l.pos" VALUE = "{ g.Store_Module_Record }">
<MvWHILE EXPR = "{ l.pos }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.found" VALUE = "{ StoreModule_FindNext() }">
<MvIF EXPR = "{ NOT l.found }">
<MvASSIGN NAME = "g.Store_Module_Record" VALUE = 0>
<MvASSIGN NAME = "g.Store_Record_Pos" VALUE = "{ g.Store_Record_Pos + 1 }">
<MvWHILESTOP>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos - 1 }">
</MvWHILE>
<MvIF EXPR = "{ l.found }">
<MvIF EXPR = "{ NOT Upgrade_Store_Module() }">
<MvASSIGN NAME = "g.Store_Module_Record" VALUE = "{ g.Store_Module_Record + 1 }">
</MvIF>
</MvIF>
</MvIF>
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_module_new' }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.ok" VALUE = "{ OpenDataFiles( g.Merchant_Version ) }">
<MvIF EXPR = "{ l.ok }">
<MvIF EXPR = "{ NOT Upgrade_Domain_Module_New() }">
<MvASSIGN NAME = "g.Domain_Module_New_Pos" VALUE = "{ g.Domain_Module_New_Pos + 1 }">
</MvIF>
<MvIF EXPR = "{ g.Domain_Module_New_Pos GT g.Domain_Module_New_Count }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_copy_scripts' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Upgrade_Domain_Copy_Scripts() }">
<MvASSIGN NAME = "g.Operation_Pos" VALUE = "{ g.Operation_Pos + 1 }">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Resume() }">
</MvIF>
</MvIF>
</BODY>
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvFUNCTION>
<MvFUNCTION NAME = "Screen_Upgrade_Finished" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvOPEN NAME = "Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00012', MvOPEN_Error ) }">
<MvELSE>
<MvIF EXPR = "{ len( Domain.d.admin_surl ) }">
<MvASSIGN NAME = "l.admin_url" VALUE = "{ Domain.d.admin_surl }">
<MvELSE>
<MvASSIGN NAME = "l.admin_url" VALUE = "{ glosub( Domain.d.mm_url, 'merchant.mv', 'admin.mv' ) }">
</MvIF>
<BODY BGCOLOR = "#ffffff">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ g.Upgrade_Errors_Detected }">
<P>
<MvLOCALIZED ID = "MER-UPG-00137">
<MvLOCALIZED-TOKEN NAME = "merchant_path" VALUE = "{ g.MerchantPath }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
The upgrade process has completed. However, one or more errors were detected during the upgrade. All errors were logged to the
file <B>upgrade.log</B> in the <B>%merchant_path%</B> subdirectory of your Miva data directory. Please contact Miva Technical Support
if you require assistance.
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
Der Upgrade-Vorgang ist abgeschlossen. W�hrend des Upgrade-Vorgangs wurde jedoch mindestens ein Fehler festgestellt. Alle aufgetretenen Fehler wurden in der Datei "<B>upgrade.log</B>" protokolliert, die sich im Unterverzeichnis "<B>%merchant_path%</B>" Ihres Miva Datenverzeichnisses befindet. F�r den Fall, dass Sie Hilfe ben�tigen, setzen Sie sich bitte mit der technischen Beratung von Miva in Verbindung.
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</P>
<MvELSE>
<P>
<MvLOCALIZED ID = "MER-UPG-00138">
<MvLOCALIZED-TOKEN NAME = "merc-vers" VALUE = "{ encodeentities( g.Merchant_Version ) }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
<B>Congratulations!</B> Your Miva Merchant installation has been successfully upgraded to version <B>%merc-vers%</B>.
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
<B>Herzlichen Gl�ckwunsch!</B> Ihre Miva Merchant Installierung wurde erfolgreich auf Version <B>%merc-vers%</B> erweitert.
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</P>
</MvIF>
<P>
<MvLOCALIZED ID = "MER-UPG-00139">
<MvLOCALIZED-TOKEN NAME = "admin-url" VALUE = "{ '<A HREF = "' $ l.admin_url $ '">' $ encodeentities( l.admin_url ) $ '</A>' }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">
You may access the administrative interface at: %admin-url%<BR>
</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">
Sie k�nnen unter %admin-url% auf die administrative Schnittstelle zugreifen<BR>
</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</P>
<P>
<MvLOCALIZED ID = "MER-UPG-00140">
<MvLOCALIZED-TOKEN NAME = "merc-url" VALUE = "{ '<A HREF = "' $ Domain.d.mm_url $ '">' $ encodeentities( Domain.d.mm_url ) $ '</A>' }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">The URL to the storefront is: %merc-url%</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Der URL der Store Front: %merc-url%</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</P>
</FONT>
</BODY>
<MvCLOSE NAME = "Domain">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Setup_State" STANDARDOUTPUTLEVEL = "">
<MvEVAL EXPR = "{ Upgrade_Init() }">
<MvCOMMENT>
|
| NOTE: Make *ABSOLUTELY* certain that you include a Store_DB_Index_Insert() call for each and every
| index for all databases that are modified or created. This includes Indices that were not
| modified. Otherwise the Indices will not be recreated, which will cause all sorts of nastiness.
|
</MvCOMMENT>
<MvCOMMENT>
|
| *********************************************************************************************
| DOMAIN CHANGES
| *********************************************************************************************
|
</MvCOMMENT>
<MvCOMMENT>
|
| language.dat
|
| 2.20: Created
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Domain_Misc_Insert( 2.20, 'language.dat' ) }">
<MvCOMMENT>
|
| countries.dbf
|
| 3.00: Added "id NUMBER"
| 3.00: We handle this as a new database because we want to re-insert
| all of the data from the countries.<language> file.
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Domain_DB_New_Insert( 3.00, 'country.dbf',
'id NUMBER,
name CHAR( 50 ),
alpha CHAR( 02 ),
numeric NUMBER' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 3.00, 'Countries', 'country.dbf', 'cntry_i.mvx', 'Countries.d.id', 'unique, ascending' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.20, 'Countries', 'country.dbf', 'cntry_a.mvx', 'Countries.d.alpha', 'nounique, ascending, string' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.20, 'Countries', 'country.dbf', 'cntry_n.mvx', 'toupper( Countries.d.name )', 'nounique, ascending, string' ) }">
<MvCOMMENT>
|
| stores.dbf
|
| 3.00: Added "mnt_warn MEMO"
| 3.00: Added "mnt_close MEMO"
| 3.00: Added "mnt_time NUMBER"
| 3.00: Added "mnt_no_new BOOL"
| 3.00: Added "omin_quant NUMBER"
| 3.00: Added "omin_price NUMBER"
| 3.00: Added "omin_all BOOL"
| 3.00: Added "omin_msg BOOL"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Domain_DB_Change_Insert( 3.00, 'stores.dbf',
'id NUMBER,
manager_id NUMBER,
code CHAR( 50 ),
license CHAR( 25 ),
name CHAR( 100 ),
owner CHAR( 100 ),
email CHAR( 50 ),
company CHAR( 100 ),
address CHAR( 100 ),
city CHAR( 50 ),
state CHAR( 50 ),
zip CHAR( 50 ),
phone CHAR( 50 ),
fax CHAR( 50 ),
country CHAR( 50 ),
wtunits CHAR( 50 ),
baskexp NUMBER,
pgrp_ovlp CHAR( 10 ),
tax_id NUMBER,
currncy_id NUMBER,
ui_id NUMBER,
mnt_warn MEMO,
mnt_close MEMO,
mnt_time NUMBER,
mnt_no_new NUMBER,
omin_quant NUMBER,
omin_price NUMBER( 10.2 ),
omin_all BOOL,
omin_msg MEMO' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.00, 'Stores', 'stores.dbf', 'str_id.mvx', 'Stores.d.id', 'unique, ascending' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.00, 'Stores', 'stores.dbf', 'str_code.mvx', 'toupper( Stores.d.code )', 'nounique, ascending, string' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.00, 'Stores', 'stores.dbf', 'str_lic.mvx', 'Stores.d.license', 'nounique, ascending, string' ) }">
<MvCOMMENT>
|
| stores.dbf
|
| 4.00: Added "d_set BOOL"
| 4.00: Added "d_mod BOOL"
| 4.00: Added "d_pay BOOL"
| 4.00: Added "d_ship BOOL"
| 4.00: Added "d_ful BOOL"
| 4.00: Added "d_usr BOOL"
| 4.00: Added "maxstores NUMBER"
| 4.00: Added "lo_time NUMBER"
| 4.00: Added "li_trys NUMBER"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Domain_DB_Change_Insert( 4.00, 'domain.dbf', 'name CHAR( 100 ),
license CHAR( 25 ),
version CHAR( 10 ),
owner CHAR( 100 ),
email CHAR( 50 ),
company CHAR( 100 ),
address CHAR( 100 ),
city CHAR( 50 ),
state CHAR( 50 ),
zip CHAR( 50 ),
country CHAR( 50 ),
phone CHAR( 50 ),
fax CHAR( 50 ),
mm_url CHAR( 254 ),
mm_surl CHAR( 254 ),
admin_surl CHAR( 254 ),
image_root CHAR( 254 ),
base_url CHAR( 254 ),
base_surl CHAR( 254 ),
mod_root CHAR( 254 ),
mod_sroot CHAR( 254 ),
admexp NUMBER,
mailhost CHAR ( 254 ),
mail_angl BOOL,
ui_id NUMBER,
d_set BOOL,
d_mod BOOL,
d_pay BOOL,
d_ship BOOL,
d_ful BOOL,
d_usr BOOL,
d_log BOOL,
d_sys BOOL,
d_utl BOOL,
maxstores NUMBER,
lo_time NUMBER,
li_trys NUMBER,
upgd_ignr CHAR( 10 )' ) }">
<MvCOMMENT>
|
| users.dbf
|
| 4.00: Added "page_len NUMBER"
| 4.00: Added "t_fails NUMBER"
| 4.00: Added "c_fails NUMBER"
| 4.00: Added "lo_date CHAR(50)"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Domain_DB_Change_Insert( 4.00, 'users.dbf',
'id NUMBER,
parent_id NUMBER,
name CHAR( 40 ),
password CHAR( 40 ),
page_len NUMBER,
admin BOOL,
create BOOL,
smod BOOL,
t_fails NUMBER,
c_fails NUMBER,
lo_date CHAR(50)' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.00, 'Users', 'users.dbf', 'usr_id.mvx', 'Users.d.id', 'unique, ascending' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.00, 'Users', 'users.dbf', 'usr_name.mvx', 'toupper( Users.d.name )', 'nounique, ascending, string' ) }">
<MvCOMMENT>
|
| modules.dbf
|
| 4.00: Added "active BOOL"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Domain_DB_Change_Insert( 4.00, 'modules.dbf',
'id NUMBER,
type CHAR( 15 ),
code CHAR( 50 ),
name CHAR( 100 ),
provider CHAR( 100 ),
version CHAR( 20 ),
module CHAR( 100 ),
refcount NUMBER,
active BOOL' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.00, 'Modules', 'modules.dbf', 'mod_id.mvx', 'Modules.d.id', 'unique, ascending' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.00, 'Modules', 'modules.dbf', 'mod_code.mvx', 'Modules.d.code', 'nounique, ascending, string' ) }">
<MvEVAL EXPR = "{ Domain_DB_Index_Insert( 2.00, 'Modules', 'modules.dbf', 'mod_type.mvx', 'Modules.d.type', 'nounique, ascending' ) }">
<MvCOMMENT>
|
| Domain Module Installation List
| *********************************************************************************************
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Domain_Module_New_Build_List( 'MODULES.lst' ) }">
<MvCOMMENT>
|
| Domain Privileges
| *********************************************************************************************
|
| 3.00: Added STCT: Countries
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Domain_Privilege_New_Insert( 3.00, 'STCT' ) }">
<MvCOMMENT>
|
| *********************************************************************************************
| STORE CHANGES
| *********************************************************************************************
|
</MvCOMMENT>
<MvCOMMENT>
|
| StoreKeys
| *********************************************************************************************
|
| 2.20: Added "BasketCharges"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_Key_New_Insert( 2.20, 'BasketCharges', 1 ) }">
<MvCOMMENT>
|
| storekey.mvx
| *********************************************************************************************
|
| 2.20: Removed unique constraint
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.20, 'StoreKeys', 'storekey.dbf', 'storekey.mvx', 'StoreKeys.d.type', 'nounique, ascending' ) }">
<MvCOMMENT>
|
| attr.dbf
| *********************************************************************************************
|
| 2.10: Added "cost NUMBER( 10.2 )"
| 3.00: Added "image CHAR( 254 )"
| 4.00: Addid indices atr_at_p.mvx and atr_at_p.mvx
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 3.00, 'attr.dbf',
'id NUMBER,
product_id NUMBER,
default_id NUMBER,
order NUMBER,
code CHAR( 50 ),
type CHAR( 20 ),
prompt MEMO,
price NUMBER( 10.2 ),
cost NUMBER( 10.2 ),
required BOOL,
image CHAR( 254 )' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Attributes', 'attr.dbf', 'atr_id.mvx', 'Attributes.d.id', 'unique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Attributes', 'attr.dbf', 'atr_code.mvx', 'Attributes.d.product_id $ \':\' $ toupper( Attributes.d.code )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Attributes', 'attr.dbf', 'atr_prod.mvx', 'Attributes.d.product_id $ \':\' $ padl( Attributes.d.order, 10, \'0\' )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 4.00, 'Attributes', 'attr.dbf', 'atr_at_p.mvx', 'Attributes.d.product_id $ \':\' $ padl( Attributes.d.attemp_id, 10, \'0\' ) $ \':\' $ padl( Attributes.d.order, 10, \'0\' )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 4.00, 'Attributes', 'attr.dbf', 'atr_at_i.mvx', 'Attributes.d.attemp_id', 'nounique, ascending' ) }">
<MvCOMMENT>
|
| opts.dbf
| *********************************************************************************************
|
| 2.10: Added "cost NUMBER( 10.2 )"
| 3.00: Added "image CHAR( 254 )"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 3.00, 'opts.dbf',
'id NUMBER,
attr_id NUMBER,
order NUMBER,
code CHAR( 50 ),
prompt MEMO,
price NUMBER( 10.2 ),
cost NUMBER( 10.2 ),
image CHAR( 254 )' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Options', 'opts.dbf', 'opt_id.mvx', 'Options.d.id', 'unique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Options', 'opts.dbf', 'opt_code.mvx', 'Options.d.attr_id $ \':\' $ toupper( Options.d.code )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Options', 'opts.dbf', 'opt_attr.mvx', 'Options.d.attr_id $ \':\' $ padl( Options.d.order, 10, \'0\' )', 'nounique, ascending' ) }">
<MvCOMMENT>
|
| baskchrg.dbf
| *********************************************************************************************
|
| 2.20: Created
| 2.22: Added "module_id NUMBER"
| 2.22: Added "tax_exempt BOOL"
| 4.00: Changed "amount" and "disp_amt" to 10.3
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_New_Insert( 2.20, 'baskchrg.dbf',
'basket_id NUMBER,
charge_id NUMBER,
type CHAR( 50 ),
desc CHAR( 100 ),
amount NUMBER( 10.2 ),
disp_amt NUMBER( 10.2 )' ) }">
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 2.22, 'baskchrg.dbf',
'basket_id NUMBER,
charge_id NUMBER,
module_id NUMBER,
type CHAR( 50 ),
desc CHAR( 100 ),
amount NUMBER( 10.2 ),
disp_amt NUMBER( 10.2 ),
tax_exempt BOOL' ) }">
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 4.00, 'baskchrg.dbf',
'basket_id NUMBER,
charge_id NUMBER,
module_id NUMBER,
type CHAR( 50 ),
desc CHAR( 100 ),
amount NUMBER( 10.3 ),
disp_amt NUMBER( 10.3 ),
tax_exempt BOOL' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.20, 'BasketCharges', 'baskchrg.dbf', 'bchg_bid.mvx', 'BasketCharges.d.basket_id $ \':\' $ padl( BasketCharges.d.charge_id, 10, \'0\' )', 'unique, ascending, string' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.20, 'BasketCharges', 'baskchrg.dbf', 'bchg_typ.mvx', 'BasketCharges.d.basket_id $ \':\' $ BasketCharges.d.type $ \':\' $ padl( BasketCharges.d.charge_id, 10, \'0\' )', 'unique, ascending, string' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.22, 'BasketCharges', 'baskchrg.dbf', 'bchg_mod.mvx', 'BasketCharges.d.basket_id $ \':\' $ BasketCharges.d.module_id $ \':\' $ padl( BasketCharges.d.charge_id, 10, \'0\' )', 'unique, ascending, string' ) }">
<MvCOMMENT>
|
| ordrchrg.dbf
| *********************************************************************************************
|
| 2.20: Added
| 2.22: Added "module_id NUMBER"
| 2.22: Added "tax_exempt BOOL"
| 4.00: Changed "amount" and "disp_amt" to 10.3
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_New_Insert( 2.20, 'ordrchrg.dbf',
'order_id NUMBER,
charge_id NUMBER,
type CHAR( 50 ),
desc CHAR( 100 ),
amount NUMBER( 10.2 ),
disp_amt NUMBER( 10.2 )' ) }">
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 2.22, 'ordrchrg.dbf',
'order_id NUMBER,
charge_id NUMBER,
module_id NUMBER,
type CHAR( 50 ),
desc CHAR( 100 ),
amount NUMBER( 10.2 ),
disp_amt NUMBER( 10.2 ),
tax_exempt BOOL' ) }">
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 3.01, 'ordrchrg.dbf',
'order_id NUMBER,
charge_id NUMBER,
module_id NUMBER,
type CHAR( 50 ),
desc CHAR( 100 ),
amount NUMBER( 10.2 ),
disp_amt NUMBER( 10.2 ),
tax_exempt BOOL' ) }">
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 4.00, 'ordrchrg.dbf',
'order_id NUMBER,
charge_id NUMBER,
module_id NUMBER,
type CHAR( 50 ),
desc CHAR( 100 ),
amount NUMBER( 10.3 ),
disp_amt NUMBER( 10.3 ),
tax_exempt BOOL' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.20, 'OrderCharges', 'ordrchrg.dbf', 'ochg_oid.mvx', 'OrderCharges.d.order_id $ \':\' $ padl( OrderCharges.d.charge_id, 10, \'0\' )', 'unique, ascending, string' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.20, 'OrderCharges', 'ordrchrg.dbf', 'ochg_typ.mvx', 'OrderCharges.d.order_id $ \':\' $ OrderCharges.d.type $ \':\' $ padl( OrderCharges.d.charge_id, 10, \'0\' )', 'unique, ascending, string' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.22, 'OrderCharges', 'ordrchrg.dbf', 'ochg_mod.mvx', 'OrderCharges.d.basket_id $ \':\' $ OrderCharges.d.module_id $ \':\' $ padl( OrderCharges.d.charge_id, 10, \'0\' )', 'unique, ascending, string' ) }">
<MvCOMMENT>
|
| std_fld.dbf
| *********************************************************************************************
|
| 2.20: Created
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_New_Insert( 2.20, 'std_fld.dbf',
'billing CHAR( 1 ),
mode_fname CHAR( 1 ),
mode_lname CHAR( 1 ),
mode_email CHAR( 1 ),
mode_comp CHAR( 1 ),
mode_phone CHAR( 1 ),
mode_fax CHAR( 1 ),
mode_addr CHAR( 1 ),
mode_city CHAR( 1 ),
mode_state CHAR( 1 ),
mode_zip CHAR( 1 ),
mode_cntry CHAR( 1 )' ) }">
<MvCOMMENT>
|
| products.dbf
| *********************************************************************************************
|
| 3.00: Added "active BOOL"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 3.00, 'products.dbf',
'id NUMBER,
catcount NUMBER,
agrpcount NUMBER,
pgrpcount NUMBER,
order NUMBER,
code CHAR( 50 ),
name CHAR( 100 ),
thumbnail CHAR( 254 ),
image CHAR( 254 ),
price NUMBER( 10.2 ),
cost NUMBER( 10.2 ),
desc MEMO,
weight NUMBER( 10.2 ),
taxable BOOL,
active BOOL' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Products', 'products.dbf', 'prd_id.mvx', 'Products.d.id', 'unique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Products', 'products.dbf', 'prd_ord.mvx', 'padl( Products.d.order, 10, \'0\' )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Products', 'products.dbf', 'prd_ccnt.mvx', 'Products.d.catcount $ \':\' $ padl( Products.d.order, 10, \'0\' )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Products', 'products.dbf', 'prd_gcnt.mvx', 'Products.d.agrpcount $ \':\' $ padl( Products.d.id, 10, \'0\' )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Products', 'products.dbf', 'prd_pgct.mvx', 'Products.d.pgrpcount $ \':\' $ padl( Products.d.id, 10, \'0\' )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Products', 'products.dbf', 'prd_code.mvx', 'toupper( Products.d.code )', 'nounique, ascending, string' ) }">
<MvCOMMENT>
|
| str_cty.dbf
| *********************************************************************************************
|
| 3.00: Created
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_New_Insert( 3.00, 'str_cty.dbf',
'id NUMBER,
name CHAR( 50 ),
alpha CHAR( 02 ),
numeric NUMBER' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 3.00, 'StoreCountries', 'str_cty.dbf', 'str_cty.mvx', 'StoreCountries.d.alpha', 'nounique, ascending, string' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 3.00, 'StoreCountries', 'str_cty.dbf', 'str_ctyn.mvx', 'toupper( StoreCountries.d.name )', 'nounique, ascending, string' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 3.00, 'StoreCountries', 'str_cty.dbf', 'str_ctyi.mvx', 'StoreCountries.d.id', 'nounique, ascending' ) }">
<MvCOMMENT>
|
| cats.dbf
| *********************************************************************************************
|
| 3.00: Added "active BOOL"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 3.00, 'cats.dbf',
'id NUMBER,
parent_id NUMBER,
agrpcount NUMBER,
order NUMBER,
code CHAR( 50 ),
name CHAR( 100 ),
active BOOL' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Categories', 'cats.dbf', 'cat_id.mvx', 'Categories.d.id', 'unique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Categories', 'cats.dbf', 'cat_code.mvx', 'toupper( Categories.d.code )', 'nounique, ascending, string' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Categories', 'cats.dbf', 'cat_prnt.mvx', 'Categories.d.parent_id $ \':\' $ padl( Categories.d.order, 10, \'0\' )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Categories', 'cats.dbf', 'cat_ord.mvx', 'padl( Categories.d.order, 10, \'0\' )', 'nounique, ascending' ) }">
<MvCOMMENT>
|
| basklist.dbf
| *********************************************************************************************
|
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 3.00, 'basklist.dbf',
'session_id CHAR( 40 ),
cust_id NUMBER,
basket_id NUMBER,
lastupdate CHAR( 10 ),
order_id NUMBER,
order_proc BOOL,
ship_fname CHAR( 50 ),
ship_lname CHAR( 50 ),
ship_email CHAR( 50 ),
ship_comp CHAR( 50 ),
ship_phone CHAR( 50 ),
ship_fax CHAR( 50 ),
ship_addr CHAR( 100 ),
ship_city CHAR( 50 ),
ship_state CHAR( 50 ),
ship_zip CHAR( 50 ),
ship_cntry CHAR( 50 ),
bill_fname CHAR( 50 ),
bill_lname CHAR( 50 ),
bill_email CHAR( 50 ),
bill_comp CHAR( 50 ),
bill_phone CHAR( 50 ),
bill_fax CHAR( 50 ),
bill_addr CHAR( 100 ),
bill_city CHAR( 50 ),
bill_state CHAR( 50 ),
bill_zip CHAR( 50 ),
bill_cntry CHAR( 50 ),
tax NUMBER( 10.2 ),
shipping NUMBER( 10.2 ),
ship_id NUMBER,
ship_data CHAR( 100 ),
pay_id NUMBER,
pay_data CHAR( 100 ),
total NUMBER( 10.2 )' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'BasketList', 'basklist.dbf', 'blst_ses.mvx', 'BasketList.d.session_id', 'nounique, ascending, string' ) }">
<MvCOMMENT>
|
| baskets.dbf
| *********************************************************************************************
|
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 3.00, 'baskets.dbf',
'id NUMBER,
line_id NUMBER,
product_id NUMBER,
code CHAR( 50 ),
name CHAR( 100 ),
price NUMBER( 10.2 ),
weight NUMBER( 10.2 ),
taxable BOOL,
upsold BOOL,
quantity NUMBER' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Baskets', 'baskets.dbf', 'bsk_id.mvx', 'Baskets.d.id $ \':\' $ padl( Baskets.d.line_id, 10, \'0\' )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'Baskets', 'baskets.dbf', 'bsk_line.mvx', 'Baskets.d.line_id', 'unique, ascending' ) }">
<MvCOMMENT>
|
| usp_req.mvx
| *********************************************************************************************
|
| 3.00: Created
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 3.00, 'UpsellXProduct', 'upslprod.dbf', 'usp_req.mvx', 'UpsellXProduct.d.req_prod $ \':\' $ padl( UpsellXProduct.d.product_id, 10, \'0\' )', 'nounique, ascending' ) }">
<MvCOMMENT>
|
| upslopts.dbf
| *********************************************************************************************
|
| 3.00: Created
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_New_Insert( 3.00, 'upslopts.dbf',
'prod_shown NUMBER,
prod_sell NUMBER' ) }">
<MvCOMMENT>
|
| relprod.dbf
| *********************************************************************************************
|
| 3.00: Created
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_New_Insert( 3.00, 'relprod.dbf',
'product_id NUMBER,
relprod_id NUMBER' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 3.00, 'RelatedProducts', 'relprod.dbf', 'relprodp.mvx', 'RelatedProducts.d.product_id $ \':\' $ padl( RelatedProducts.d.relprod_id, 10, \'0\' )', 'nounique, ascending' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 3.00, 'RelatedProducts', 'relprod.dbf', 'relprodr.mvx', 'RelatedProducts.d.relprod_id', 'nounique, ascending' ) }">
<MvCOMMENT>
|
| baskopts.dbf
| *********************************************************************************************
|
| 3.00: Added "data_long MEMO"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 3.00, 'baskopts.dbf',
'line_id NUMBER,
attr_id NUMBER,
attr_code CHAR( 50 ),
option_id NUMBER,
opt_code CHAR( 50 ),
price NUMBER( 10.2 ),
data CHAR( 254 ),
data_long MEMO' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'BasketOptions', 'baskopts.dbf', 'bopt_ln.mvx', 'BasketOptions.d.line_id $ \':\' $ padl( BasketOptions.d.attr_id, 10, \'0\' )', 'nounique, ascending' ) }">
<MvCOMMENT>
|
| ordopts.dbf
| *********************************************************************************************
|
| 3.00: Added "data_long MEMO"
|
</MvCOMMENT>
<MvEVAL EXPR = "{ Store_DB_Change_Insert( 3.00, 'ordopts.dbf',
'line_id NUMBER,
attr_id NUMBER,
attr_code CHAR( 50 ),
option_id NUMBER,
opt_code CHAR( 50 ),
price NUMBER( 10.2 ),
data CHAR( 254 ),
data_long MEMO' ) }">
<MvEVAL EXPR = "{ Store_DB_Index_Insert( 2.00, 'OrderOptions', 'ordopts.dbf', 'oop_line.mvx', 'OrderOptions.d.line_id $ \':\' $ padl( OrderOptions.d.attr_id, 10, \'0\' )', 'nounique, ascending' ) }">
<MvCOMMENT> Inventory </MvCOMMENT>
<MvDO FILE = "{ g.Module_Version }" NAME = "l.inv_enabled" VALUE = "{ IsEnabled( 'INV' ) }">
<MvIF EXPR = "{ l.inv_enabled }">
<MvDO FILE = "{ g.Module_Feature_INV_AD }" NAME = "l.null" VALUE = "{ INV_Upgrade_Setup_State() }">
</MvIF>
<MvCOMMENT> Affiliates </MvCOMMENT>
<MvDO FILE = "{ g.Module_Version }" NAME = "l.aff_enabled" VALUE = "{ IsEnabled( 'AFF' ) }">
<MvIF EXPR = "{ l.aff_enabled }">
<MvDO FILE = "{ g.Module_Feature_AFF }" NAME = "l.null" VALUE = "{ AFF_Upgrade_Setup_State() }">
</MvIF>
<MvCOMMENT> Attribute Templates </MvCOMMENT>
<MvDO FILE = "{ g.Module_Version }" NAME = "l.att_enabled" VALUE = "{ IsEnabled( 'ATT' ) }">
<MvIF EXPR = "{ l.att_enabled }">
<MvDO FILE = "{ g.Module_Feature_ATT }" NAME = "l.null" VALUE = "{ ATT_Upgrade_Setup_State() }">
</MvIF>
<MvCOMMENT> Statistics </MvCOMMENT>
<MvDO FILE = "{ g.Module_Feature_STA }" NAME = "l.null" VALUE = "{ STA_Upgrade_Setup_State() }">
<MvCOMMENT> Step By Step Wizard </MvCOMMENT>
<MvDO FILE = "{ g.Module_Feature_STP_AD }" NAME = "l.null" VALUE = "{ STP_Upgrade_Setup_State() }">
<MvCOMMENT> Step By Step Wizard </MvCOMMENT>
<MvDO FILE = "{ g.Module_Feature_NOT }" NAME = "l.null" VALUE = "{ NOT_Upgrade_Setup_State() }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Status_Overall" PARAMETERS = "operation, store_name, recno, totrec" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.percent_completed" VALUE = "{ rnd( ( l.recno * 100 ) / l.totrec, 0 ) }">
<MvIF EXPR = "{ l.percent_completed GT 99 }">
<MvASSIGN NAME = "l.percent_completed" VALUE = "99">
</MvIF>
<MvASSIGN NAME = "l.percent_remaining" VALUE = "{ rnd( 100 - l.percent_completed, 0 ) }">
<TABLE BORDER = 0 WIDTH = "100%">
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00004">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Current Operation:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Derzeitiger Arbeitsvorgang:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvIF EXPR = "{ l.operation EQ 'domain_misc' }">
<MvLOCALIZED ID = "MER-UPG-00126">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Initializing</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Initialisieren</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_db' }">
<MvLOCALIZED ID = "MER-UPG-00005">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upgrading Domain Databases</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Upgrade der Domain-Datenbanken</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_db_index' }">
<MvLOCALIZED ID = "MER-UPG-00006">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upgrading Domain Indices</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Upgrade der Domain-Verzeichnisse</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_db' }">
<MvLOCALIZED ID = "MER-UPG-00007">
<MvLOCALIZED-TOKEN NAME = "store_name" VALUE = "{ l.store_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upgrading Databases for Store <B>%store_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Upgrade der Datenbanken f�r Laden "<B>%store_name%</B>" </MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_db_index' }">
<MvLOCALIZED ID = "MER-UPG-00008">
<MvLOCALIZED-TOKEN NAME = "store_name" VALUE = "{ l.store_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upgrading Indices for Store <B>%store_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Upgrade der Verzeichnisse f�r Laden "<B>%store_name%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ ( l.operation EQ 'domain_rename_db' ) OR
( l.operation EQ 'domain_rename_index' ) }">
<MvLOCALIZED ID = "MER-UPG-00009">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Renaming Domain Temporary Files</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Umbenennen der tempor�ren Dateien der Domain</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_cleanup' }">
<MvLOCALIZED ID = "MER-UPG-00010">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Cleaning up Domain Temporary Files</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bereinigen der tempor�ren Dateien der Domain</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ ( l.operation EQ 'store_rename_db' ) OR
( l.operation EQ 'store_rename_index' ) }">
<MvLOCALIZED ID = "MER-UPG-00011">
<MvLOCALIZED-TOKEN NAME = "store_name" VALUE = "{ l.store_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Renaming Temporary Files for Store <B>%store_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Umbenennen der tempor�ren Dateien f�r Laden "<B>%store_name%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_cleanup' }">
<MvLOCALIZED ID = "MER-UPG-00012">
<MvLOCALIZED-TOKEN NAME = "store_name" VALUE = "{ l.store_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Cleaning up Temporary Files for Store <B>%store_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Bereinigen der tempor�ren Dateien f�r Laden "<B>%store_name%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_key' }">
<MvLOCALIZED ID = "MER-UPG-00127">
<MvLOCALIZED-TOKEN NAME = "store_name" VALUE = "{ l.store_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Adding new key records for store <B>%store_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Hinzuf�gen von neuen Schl�sseldatens�tzen f�r Laden "<B>%store_name%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_key' }">
<MvLOCALIZED ID = "MER-UPG-00146">
<MvLOCALIZED-TOKEN NAME = "domain_name" VALUE = "{ l.domain_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Adding new key records for domain <B>%domain_name%</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_priv' }">
<MvLOCALIZED ID = "MER-UPG-00128">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Adding new Privileges</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Hinzuf�gen von neuen Rechten</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_modules' }">
<MvLOCALIZED ID = "MER-UPG-00013">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upgrading Global Module Settings</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Upgrade der globalen Moduleinstellungen</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'store_modules' }">
<MvLOCALIZED ID = "MER-UPG-00014">
<MvLOCALIZED-TOKEN NAME = "store_name" VALUE = "{ l.store_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upgrading Module Settings for Store <B>%store_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Upgrade der Moduleinstellungen f�r Laden "<B>%store_name%</B>" </MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_module_new' }">
<MvLOCALIZED ID = "MER-UPG-00015">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Installing New Modules</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Installieren neuer Module</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'domain_copy_scripts' }">
<MvLOCALIZED ID = "MER-UPG-00015">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Copying Script Files</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
</FONT>
</TD></TR>
<TR><TD NOWRAP>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-UPG-00016">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>Overall Progress:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Gesamtstatus:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<TABLE BORDER = 0 CELLPADDING = 4 WIDTH = "100%">
<TR><TD ALIGN = "right" VALIGN = "middle">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<B>0%</B>
</FONT>
</TD><TD BGCOLOR = "blue" ALIGN = "center" WIDTH = "{ l.percent_completed $ '%' }">
<FONT FACE = "Arial, Helvetica" SIZE = "-1" COLOR = "white">
<B><MvEVAL EXPR = "{ rnd( l.percent_completed, 0 ) }">%</B>
</FONT>
</TD><TD WIDTH = "{ l.percent_remaining $ '%' }">
</TD><TD ALIGN = "left" VALIGN = "middle">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<B>100%</B>
</FONT>
</TD></TR>
</TABLE>
</TD></TR>
</TABLE>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Clear_Status" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<SCRIPT LANGUAGE = "JavaScript">
<!--
parent.Info.Upgrade_Clear_Status();
//-->
</SCRIPT>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Status_DB" PARAMETERS = "operation, filename, recno, totrec" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvLOCALIZED NAME = "l.action_prompt" ID = "MER-UPG-00017">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Action:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Aktion:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvIF EXPR = "{ l.operation EQ 'new' }">
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00018">
<MvLOCALIZED-TOKEN NAME = "filename" VALUE = "{ l.filename }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Creating database <B>%filename%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Erstellen der Datenbank "<B>%filename%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'change' }">
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00019">
<MvLOCALIZED-TOKEN NAME = "filename" VALUE = "{ l.filename }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Modifying database <B>%filename%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">�ndern der Datenbank "<B>%filename%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.recno EQ -1 }">
<MvASSIGN NAME = "l.record_prompt" VALUE = "">
<MvASSIGN NAME = "l.record_text" VALUE = "">
<MvELSE>
<MvLOCALIZED NAME = "l.record_prompt" ID = "MER-UPG-00020">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Record:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Datensatz:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "l.record_text" ID = "MER-UPG-00021">
<MvLOCALIZED-TOKEN NAME = "recno" VALUE = "{ l.recno }">
<MvLOCALIZED-TOKEN NAME = "totrec" VALUE = "{ l.totrec }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>%recno%</B> of <B>%totrec%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>%recno%</B> von <B>%totrec%</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvLOCALIZED NAME = "l.progress_prompt" ID = "MER-UPG-00022">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Progress:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Status:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvEVAL EXPR = "{ '<SCRIPT LANGUAGE = "JavaScript">
<!--
parent.Info.Upgrade_Draw_Status( \'' $ l.action_prompt $ '\', \'' $ l.action_text $ '\', \'' $ l.record_prompt $ '\', \'' $ l.record_text $ '\', \'' $ l.progress_prompt $ '\', \'' $ l.recno $ '\', \'' $ l.totrec $ '\' );
//-->
</SCRIPT>' }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Status_Index" PARAMETERS = "operation, db_name, index_name" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvLOCALIZED NAME = "l.action_prompt" ID = "MER-UPG-00023">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Action:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Aktion:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvIF EXPR = "{ l.operation EQ 'new' }">
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00024">
<MvLOCALIZED-TOKEN NAME = "index_name" VALUE = "{ l.index_name }">
<MvLOCALIZED-TOKEN NAME = "db_name" VALUE = "{ l.db_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Creating index <B>%index_name%</B> on database <B>%db_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Erstellen des Indexes "<B>%index_name%</B>" in der Datenbank "<B>%db_name%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'index' }">
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00025">
<MvLOCALIZED-TOKEN NAME = "index_name" VALUE = "{ l.index_name }">
<MvLOCALIZED-TOKEN NAME = "db_name" VALUE = "{ l.db_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Creating index <B>%index_name%</B> on database <B>%db_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Erstellen des Indexes "<B>%index_name%</B>" in der Datenbank "<B>%db_name%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvASSIGN NAME = "l.record_prompt" VALUE = "">
<MvASSIGN NAME = "l.record_text" VALUE = "">
<MvASSIGN NAME = "l.progress_prompt" VALUE = "">
<MvEVAL EXPR = "{ '<SCRIPT LANGUAGE = "JavaScript">
<!--
parent.Info.Upgrade_Draw_Status( \'' $ l.action_prompt $ '\', \'' $ l.action_text $ '\', \'' $ l.record_prompt $ '\', \'' $ l.record_text $ '\', \'' $ l.progress_prompt $ '\', -1, -1 );
//-->
</SCRIPT>' }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Status_Rename" PARAMETERS = "file" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvLOCALIZED NAME = "l.action_prompt" ID = "MER-UPG-00026">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Action:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Aktion:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00027">
<MvLOCALIZED-TOKEN NAME = "file" VALUE = "{ l.file }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Renaming <B>%file%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Umbenennen der Datei <B>%file%</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "l.record_prompt" VALUE = "">
<MvASSIGN NAME = "l.record_text" VALUE = "">
<MvASSIGN NAME = "l.progress_prompt" VALUE = "">
<MvEVAL EXPR = "{ '<SCRIPT LANGUAGE = "JavaScript">
<!--
parent.Info.Upgrade_Draw_Status( \'' $ l.action_prompt $ '\', \'' $ l.action_text $ '\', \'' $ l.record_prompt $ '\', \'' $ l.record_text $ '\', \'' $ l.progress_prompt $ '\', -1, -1 );
//-->
</SCRIPT>' }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Status_Privilege" PARAMETERS = "privilege, name" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvLOCALIZED NAME = "l.action_prompt" ID = "MER-UPG-00026">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Action:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Aktion:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00129">
<MvLOCALIZED-TOKEN NAME = "privilege" VALUE = "{ l.name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Adding privilege for <B>%privilege%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Hinzuf�gen eines Rechts f�r "<B>%privilege%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "l.record_prompt" VALUE = "">
<MvASSIGN NAME = "l.record_text" VALUE = "">
<MvASSIGN NAME = "l.progress_prompt" VALUE = "">
<MvEVAL EXPR = "{ '<SCRIPT LANGUAGE = "JavaScript">
<!--
parent.Info.Upgrade_Draw_Status( \'' $ l.action_prompt $ '\', \'' $ l.action_text $ '\', \'' $ l.record_prompt $ '\', \'' $ l.record_text $ '\', \'' $ l.progress_prompt $ '\', -1, -1 );
//-->
</SCRIPT>' }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Status_StoreKey" PARAMETERS = "type" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvLOCALIZED NAME = "l.action_prompt" ID = "MER-UPG-00130">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Action:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Aktion:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00131">
<MvLOCALIZED-TOKEN NAME = "storekey_type" VALUE = "{ l.type }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Adding key record for <B>%storekey_type%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Hinzuf�gen eines neuen Schl�sseldatensatzes f�r "<B>%storekey_type%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "l.record_prompt" VALUE = "">
<MvASSIGN NAME = "l.record_text" VALUE = "">
<MvASSIGN NAME = "l.progress_prompt" VALUE = "">
<MvEVAL EXPR = "{ '<SCRIPT LANGUAGE = "JavaScript">
<!--
parent.Info.Upgrade_Draw_Status( \'' $ l.action_prompt $ '\', \'' $ l.action_text $ '\', \'' $ l.record_prompt $ '\', \'' $ l.record_text $ '\', \'' $ l.progress_prompt $ '\', -1, -1 );
//-->
</SCRIPT>' }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Status_DomainKey" PARAMETERS = "type" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvLOCALIZED NAME = "l.action_prompt" ID = "MER-UPG-00130">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Action:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Aktion:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00147">
<MvLOCALIZED-TOKEN NAME = "domainkey_type" VALUE = "{ l.type }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Adding key record for <B>%domainkey_type%</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "l.record_prompt" VALUE = "">
<MvASSIGN NAME = "l.record_text" VALUE = "">
<MvASSIGN NAME = "l.progress_prompt" VALUE = "">
<MvEVAL EXPR = "{ '<SCRIPT LANGUAGE = "JavaScript">
<!--
parent.Info.Upgrade_Draw_Status( \'' $ l.action_prompt $ '\', \'' $ l.action_text $ '\', \'' $ l.record_prompt $ '\', \'' $ l.record_text $ '\', \'' $ l.progress_prompt $ '\', -1, -1 );
//-->
</SCRIPT>' }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Status_Module" PARAMETERS = "module_name" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvLOCALIZED NAME = "l.action_prompt" ID = "MER-UPG-00028">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Action:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Aktion:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00029">
<MvLOCALIZED-TOKEN NAME = "module_name" VALUE = "{ l.module_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upgrading Module <B>%module_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Upgrade von Modul "<B>%module_name%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "l.record_prompt" VALUE = "">
<MvASSIGN NAME = "l.record_text" VALUE = "">
<MvASSIGN NAME = "l.progress_prompt" VALUE = "">
<MvEVAL EXPR = "{ '<SCRIPT LANGUAGE = "JavaScript">
<!--
parent.Info.Upgrade_Draw_Status( \'' $ l.action_prompt $ '\', \'' $ l.action_text $ '\', \'' $ l.record_prompt $ '\', \'' $ l.record_text $ '\', \'' $ l.progress_prompt $ '\', -1, -1 );
//-->
</SCRIPT>' }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Draw_Status_Module_New" PARAMETERS = "module_name" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvLOCALIZED NAME = "l.action_prompt" ID = "MER-UPG-00030">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Action:</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Aktion:</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "l.action_text" ID = "MER-UPG-00031">
<MvLOCALIZED-TOKEN NAME = "module_name" VALUE = "{ l.module_name }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Installing Module <B>%module_name%</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Installieren von Modul "<B>%module_name%</B>"</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "l.record_prompt" VALUE = "">
<MvASSIGN NAME = "l.record_text" VALUE = "">
<MvASSIGN NAME = "l.progress_prompt" VALUE = "">
<MvEVAL EXPR = "{ '<SCRIPT LANGUAGE = "JavaScript">
<!--
parent.Info.Upgrade_Draw_Status( \'' $ l.action_prompt $ '\', \'' $ l.action_text $ '\', \'' $ l.record_prompt $ '\', \'' $ l.record_text $ '\', \'' $ l.progress_prompt $ '\', -1, -1 );
//-->
</SCRIPT>' }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Log" PARAMETERS = "store, type, operation, filename, status, details" STANDARDOUTPUTLEVEL = "">
<MvEXPORT FILE = "{ g.MerchantPath $ 'upgrade.log' }"
FIELDS = "s.dyn_time_t, g.Upgrade_Version_From, g.Merchant_Version, l.store, l.type, l.operation, l.filename, l.status, l.details"
DELIMITER = "|">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Log_Error" PARAMETERS = "store, operation, details" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "g.Upgrade_Errors_Detected" VALUE = 1>
<MvASSIGN NAME = "l.type" VALUE = "*ERROR*">
<MvASSIGN NAME = "l.filename" VALUE = "">
<MvASSIGN NAME = "l.status" VALUE = "">
<MvEXPORT FILE = "{ g.MerchantPath $ 'upgrade.log' }"
FIELDS = "s.dyn_time_t, g.Upgrade_Version_From, g.Merchant_Version, l.store, l.type, l.operation, l.filename, l.status, l.details"
DELIMITER = "|">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Init" STANDARDOUTPUTLEVEL = "" ERROROUTPUTLEVEL = "syntax, expression">
<MvASSIGN NAME = "g.Upgrade_Errors_Detected" VALUE = 0>
<MvASSIGN NAME = "g.Domain_Misc_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Domain_Misc_Count" VALUE = 0>
<MvASSIGN NAME = "g.Domain_DB_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Domain_DB_Count" VALUE = 0>
<MvASSIGN NAME = "g.Domain_DB_Index_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Domain_DB_Index_Count" VALUE = 0>
<MvASSIGN NAME = "g.Domain_Index_Count" VALUE = 0>
<MvASSIGN NAME = "g.Domain_Privilege_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Domain_Privilege_Count" VALUE = 0>
<MvASSIGN NAME = "g.Domain_Module_New_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Domain_Module_New_Count" VALUE = 0>
<MvASSIGN NAME = "g.Store_DB_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Store_DB_Count" VALUE = 0>
<MvASSIGN NAME = "g.Store_DB_Index_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Store_DB_Index_Count" VALUE = 0>
<MvASSIGN NAME = "g.Store_Index_Count" VALUE = 0>
<MvASSIGN NAME = "g.Store_Key_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Store_Key_Count" VALUE = 0>
<MvASSIGN NAME = "g.Domain_Key_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Domain_Key_Count" VALUE = 0>
<MvASSIGN NAME = "g.Domain_Module_Record" VALUE = 0>
<MvASSIGN NAME = "g.Store_Module_Record" VALUE = 0>
<MvASSIGN NAME = "g.Overall_Pos" VALUE = 0>
<MvASSIGN NAME = "g.Operation_Pos" VALUE = 1>
<MvASSIGN NAME = "g.Operation[1]" VALUE = "domain_start_upgrade">
<MvASSIGN NAME = "g.Operation[2]" VALUE = "domain_misc">
<MvASSIGN NAME = "g.Operation[3]" VALUE = "domain_db">
<MvASSIGN NAME = "g.Operation[4]" VALUE = "domain_db_index">
<MvASSIGN NAME = "g.Operation[5]" VALUE = "store_db">
<MvASSIGN NAME = "g.Operation[6]" VALUE = "store_db_index">
<MvASSIGN NAME = "g.Operation[7]" VALUE = "domain_rename_db">
<MvASSIGN NAME = "g.Operation[8]" VALUE = "domain_rename_index">
<MvASSIGN NAME = "g.Operation[9]" VALUE = "domain_cleanup">
<MvASSIGN NAME = "g.Operation[10]" VALUE = "domain_key">
<MvASSIGN NAME = "g.Operation[11]" VALUE = "store_rename_db">
<MvASSIGN NAME = "g.Operation[12]" VALUE = "store_rename_index">
<MvASSIGN NAME = "g.Operation[13]" VALUE = "store_cleanup">
<MvASSIGN NAME = "g.Operation[14]" VALUE = "store_key">
<MvASSIGN NAME = "g.Operation[15]" VALUE = "domain_priv">
<MvASSIGN NAME = "g.Operation[16]" VALUE = "store_modules">
<MvASSIGN NAME = "g.Operation[17]" VALUE = "domain_modules">
<MvASSIGN NAME = "g.Operation[18]" VALUE = "domain_module_new">
<MvASSIGN NAME = "g.Operation[19]" VALUE = "domain_copy_scripts">
<MvASSIGN NAME = "g.Operation_Count" VALUE = 19>
<MvOPEN NAME = "Upgrade_Stores" DATABASE = "{ g.MerchantPath $ 'stores.dbf' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-UPG-00013', MvOPEN_Error ) }">
<MvELSE>
<MvASSIGN NAME = "g.Store_Record_Pos" VALUE = 1>
<MvFILTER NAME = "Upgrade_Stores" FILTER = "{ NOT Upgrade_Stores.d.deleted }">
<MvASSIGN NAME = "l.pos" VALUE = "0">
<MvWHILE EXPR = "{ NOT Upgrade_Stores.d.EOF }">
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
<MvASSIGN NAME = "g.Store_Record" INDEX = "{ l.pos }" MEMBER = "ID" VALUE = "{ Upgrade_Stores.d.id }">
<MvASSIGN NAME = "g.Store_Record" INDEX = "{ l.pos }" MEMBER = "Code" VALUE = "{ Upgrade_Stores.d.code }">
<MvASSIGN NAME = "g.Store_Record" INDEX = "{ l.pos }" MEMBER = "Name" VALUE = "{ Upgrade_Stores.d.name }">
<MvASSIGN NAME = "g.Store_Record" INDEX = "{ l.pos }" MEMBER = "Country" VALUE = "{ Upgrade_Stores.d.country }">
<MvSKIP NAME = "Upgrade_Stores">
</MvWHILE>
<MvASSIGN NAME = "g.Store_Record_Count" VALUE = "{ l.pos }">
<MvCLOSE NAME = "Upgrade_Stores">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Resume" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<FORM NAME = "Upgrade_Continue" METHOD = "post" ACTION = "{ g.sessionurl }">
<INPUT TYPE = "hidden" NAME = "Upgrade_Have_State" VALUE = "Yes">
<MvHIDE FIELDS = "g.Screen, g.Frame, g.Upgrade_Login, g.Upgrade_Password, g.Upgrade_Version_From, g.Upgrade_Errors_Detected, g.Overall_Pos, g.Skip">
<MvCOMMENT>
|
| Domain Miscellaneous
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Domain_Misc_Pos, g.Domain_Misc_Count, g.Domain_Misc">
<MvCOMMENT>
|
| Domain Databases
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Domain_DB_Pos, g.Domain_DB_Count, g.Domain_DB">
<MvCOMMENT>
|
| Domain Database Indices
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Domain_DB_Index_Pos, g.Domain_DB_Index_Count, g.Domain_DB_Index">
<MvCOMMENT>
|
| Domain Module Installation List
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Domain_Module_New_Pos, g.Domain_Module_New_Count, Domain_Module_New">
<MvCOMMENT>
|
| Domain Privileges
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Domain_Privilege_Pos, g.Domain_Privilege_Count, g.Domain_Privilege">
<MvCOMMENT>
|
| Store Databases
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Store_DB_Pos, g.Store_DB_Count, g.Store_DB">
<MvCOMMENT>
|
| Store Database Indices
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Store_DB_Index_Pos, g.Store_DB_Index_Count, g.Store_DB_Index">
<MvCOMMENT>
|
| Store Keys
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Store_Key_Pos, g.Store_Key_Count, g.Store_Key">
<MvCOMMENT>
|
| Domain Keys
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Domain_Key_Pos, g.Domain_Key_Count, g.Domain_Key">
<MvCOMMENT>
|
| Store Records
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Store_Record_Pos, g.Store_Record_Count, g.Store_Record">
<MvCOMMENT>
|
| Domain Modules
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Domain_Module_Record">
<MvCOMMENT>
|
| Store Modules
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Store_Module_Record">
<MvCOMMENT>
|
| Operations
| *********************************************************************************************
|
</MvCOMMENT>
<MvHIDE FIELDS = "g.Operation, g.Operation_Pos, g.Operation_Count">
</FORM>
<SCRIPT LANGUAGE = "JavaScript">
<!--
function Upgrade_Resume()
{
document.Upgrade_Continue.submit();
}
//-->
</SCRIPT>
</MvFUNCTION>
<MvFUNCTION NAME = "Domain_DB_New_Insert" PARAMETERS = "version, db_name, fields" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Domain_DB_Count }">
<MvIF EXPR = "{ g.Domain_DB[ l.pos ]:Filename EQ l.db_name }">
<MvIF EXPR = "{ g.Domain_DB[ l.pos ]:Operation EQ 'change' }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ l.pos }" MEMBER = "Operation" VALUE = "new">
</MvIF>
<MvIF EXPR = "{ g.Domain_DB[ l.pos ]:Version LT l.version }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ l.pos }" MEMBER = "Fields" VALUE = "{ l.fields }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ l.pos }" MEMBER = "Version" VALUE = "{ l.version }">
</MvIF>
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Domain_DB_Count" VALUE = "{ g.Domain_DB_Count + 1 }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Operation" VALUE = "new">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Version" VALUE = "{ l.version }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Filename" VALUE = "{ l.db_name }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Fields" VALUE = "{ l.fields }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Record" VALUE = 0>
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Domain_DB_Change_Insert" PARAMETERS = "version, db_name, fields" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Domain_DB_Count }">
<MvIF EXPR = "{ g.Domain_DB[ l.pos ]:Filename EQ l.db_name }">
<MvIF EXPR = "{ g.Domain_DB:[ l.pos ]:Version LT l.version }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ l.pos }" MEMBER = "Fields" VALUE = "{ l.fields }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ l.pos }" MEMBER = "Version" VALUE = "{ l.version }">
</MvIF>
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Domain_DB_Count" VALUE = "{ g.Domain_DB_Count + 1 }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Operation" VALUE = "change">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Version" VALUE = "{ l.version }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Filename" VALUE = "{ l.db_name }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Fields" VALUE = "{ l.fields }">
<MvASSIGN NAME = "g.Domain_DB" INDEX = "{ g.Domain_DB_Count }" MEMBER = "Record" VALUE = 0>
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Domain_DB_Index_Insert" PARAMETERS = "version, db_alias, db_name, index_name, expression, flags" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Domain_DB_Count }">
<MvIF EXPR = "{ g.Domain_DB[ l.pos ]:Filename EQ l.db_name }">
<MvASSIGN NAME = "l.type" VALUE = "temporary">
<MvWHILESTOP>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvIF EXPR = "{ l.pos GT g.Domain_DB_Count }">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.type" VALUE = "original">
<MvELSE>
<MvFUNCTIONRETURN>
</MvIF>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Domain_DB_Index_Count }">
<MvIF EXPR = "{ ( g.Domain_DB_Index[ l.pos ]:Index EQ l.index_name ) AND
( g.Domain_DB_Index[ l.pos ]:Version LT l.version ) }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ l.pos }" MEMBER = "Version" VALUE = "{ l.version }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ l.pos }" MEMBER = "DB_Alias" VALUE = "{ l.db_alias }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ l.pos }" MEMBER = "DB_Filename" VALUE = "{ l.db_name }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ l.pos }" MEMBER = "Expression" VALUE = "{ l.expression }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ l.pos }" MEMBER = "Flags" VALUE = "{ l.flags }">
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Domain_DB_Index_Count" VALUE = "{ g.Domain_DB_Index_Count + 1 }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ g.Domain_DB_Index_Count }" MEMBER = "Type" VALUE = "{ l.type }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ g.Domain_DB_Index_Count }" MEMBER = "Version" VALUE = "{ l.version }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ g.Domain_DB_Index_Count }" MEMBER = "DB_Alias" VALUE = "{ l.db_alias }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ g.Domain_DB_Index_Count }" MEMBER = "DB_Filename" VALUE = "{ l.db_name }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ g.Domain_DB_Index_Count }" MEMBER = "Index" VALUE = "{ l.index_name }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ g.Domain_DB_Index_Count }" MEMBER = "Expression" VALUE = "{ l.expression }">
<MvASSIGN NAME = "g.Domain_DB_Index" INDEX = "{ g.Domain_DB_Index_Count }" MEMBER = "Flags" VALUE = "{ l.flags }">
</MvFUNCTION>
<MvFUNCTION NAME = "Store_DB_New_Insert" PARAMETERS = "version, db_name, fields" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Store_DB_Count }">
<MvIF EXPR = "{ g.Store_DB[ l.pos ]:Filename EQ l.db_name }">
<MvIF EXPR = "{ g.Store_DB[ l.pos ]:Operation EQ 'change' }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ l.pos }" MEMBER = "Operation" VALUE = "new">
</MvIF>
<MvIF EXPR = "{ g.Store_DB[ l.pos ]:Version LT l.version }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ l.pos }" MEMBER = "Fields" VALUE = "{ l.fields }">
</MvIF>
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Store_DB_Count" VALUE = "{ g.Store_DB_Count + 1 }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Operation" VALUE = "new">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Version" VALUE = "{ l.version }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Filename" VALUE = "{ l.db_name }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Fields" VALUE = "{ l.fields }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Record" VALUE = 0>
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Store_DB_Change_Insert" PARAMETERS = "version, db_name, fields" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Store_DB_Count }">
<MvIF EXPR = "{ g.Store_DB[ l.pos ]:Filename EQ l.db_name }">
<MvIF EXPR = "{ g.Store_DB[ l.pos ]:Version LT l.version }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ l.pos }" MEMBER = "Fields" VALUE = "{ l.fields }">
</MvIF>
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Store_DB_Count" VALUE = "{ g.Store_DB_Count + 1 }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Operation" VALUE = "change">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Version" VALUE = "{ l.version }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Filename" VALUE = "{ l.db_name }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Fields" VALUE = "{ l.fields }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ g.Store_DB_Count }" MEMBER = "Record" VALUE = 0>
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Store_DB_Index_Insert" PARAMETERS = "version, db_alias, db_name, index_name, expression, flags" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Store_DB_Count }">
<MvIF EXPR = "{ g.Store_DB[ l.pos ]:Filename EQ l.db_name }">
<MvASSIGN NAME = "l.type" VALUE = "temporary">
<MvWHILESTOP>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvIF EXPR = "{ l.pos GT g.Store_DB_Count }">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.type" VALUE = "original">
<MvELSE>
<MvFUNCTIONRETURN>
</MvIF>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Store_DB_Index_Count }">
<MvIF EXPR = "{ ( g.Store_DB_Index[ l.pos ]:Index EQ l.index_name ) AND
( g.Store_DB_Index[ l.pos ]:Version LT l.version ) }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ l.pos }" MEMBER = "Version" VALUE = "{ l.version }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ l.pos }" MEMBER = "DB_Alias" VALUE = "{ l.db_alias }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ l.pos }" MEMBER = "DB_Filename" VALUE = "{ l.db_name }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ l.pos }" MEMBER = "Expression" VALUE = "{ l.expression }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ l.pos }" MEMBER = "Flags" VALUE = "{ l.flags }">
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Store_DB_Index_Count" VALUE = "{ g.Store_DB_Index_Count + 1 }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ g.Store_DB_Index_Count }" MEMBER = "Type" VALUE = "{ l.type }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ g.Store_DB_Index_Count }" MEMBER = "Version" VALUE = "{ l.version }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ g.Store_DB_Index_Count }" MEMBER = "DB_Alias" VALUE = "{ l.db_alias }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ g.Store_DB_Index_Count }" MEMBER = "DB_Filename" VALUE = "{ l.db_name }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ g.Store_DB_Index_Count }" MEMBER = "Index" VALUE = "{ l.index_name }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ g.Store_DB_Index_Count }" MEMBER = "Expression" VALUE = "{ l.expression }">
<MvASSIGN NAME = "g.Store_DB_Index" INDEX = "{ g.Store_DB_Index_Count }" MEMBER = "Flags" VALUE = "{ l.flags }">
</MvFUNCTION>
<MvFUNCTION NAME = "Domain_Module_New_Build_List" PARAMETERS = "filename" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvOPEN NAME = "Upgrade_Modules" DATABASE = "{ g.MerchantPath $ 'modules.dbf' }" INDEXES = "{ g.MerchantPath $ 'mod_code.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Domain_Module_New_Build_List', MvOPEN_Error ) }">
<MvELSE>
<MvFILTER NAME = "Upgrade_Modules" FILTER = "{ NOT Upgrade_Modules.d.deleted }">
<MvIF EXPR = "{ sfcopy( g.Version_Path $ l.filename, l.filename ) }">
<MvIMPORT FILE = "{ l.filename }"
FIELDS = "l.type, l.module, l.language"
DELIMITER = "|"
FILTER = "{ toupper( l.type ) EQ 'MERCHANT' }">
<MvASSIGN NAME = "l.module" VALUE = "{ ltrim( rtrim( l.module ) ) }">
<MvASSIGN NAME = "l.language" VALUE = "{ ltrim( rtrim( l.language ) ) }">
<MvIF EXPR = "{ ( len( l.language ) EQ 0 ) OR
( s.miva_language CIN l.language ) }">
<MvDO FILE = "{ g.Version_Path $ l.module }" NAME = "l.code" VALUE = "{ Module_Code() }">
<MvFIND NAME = "Upgrade_Modules" VALUE = "{ l.code }" EXACT>
<MvIF EXPR = "{ Upgrade_Modules.d.EOF }">
<MvASSIGN NAME = "g.Domain_Module_New_Count" VALUE = "{ g.Domain_Module_New_Count + 1 }">
<MvASSIGN NAME = "g.Domain_Module_New" INDEX = "{ g.Domain_Module_New_Count }" MEMBER = "Module" VALUE = "{ l.module }">
</MvIF>
</MvIF>
</MvIMPORT>
<MvIF EXPR = "{ NOT fdelete( l.filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Domain_Module_New_Build_List', 'Unable to delete \'' $ l.filename $ '\'' ) }">
</MvIF>
</MvIF>
<MvCLOSE NAME = "Upgrade_Modules">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Domain_Misc_Insert" PARAMETERS = "version, mnemonic" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Domain_Misc_Count }">
<MvIF EXPR = "{ g.Domain_Misc[ l.pos ]:Mnemonic EQ l.mnemonic }">
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Domain_Misc_Count" VALUE = "{ g.Domain_Misc_Count + 1 }">
<MvASSIGN NAME = "g.Domain_Misc" INDEX = "{ g.Domain_Misc_Count }" MEMBER = "Mnemonic" VALUE = "{ l.mnemonic }">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Store_Key_New_Insert" PARAMETERS = "version, type, start" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Store_Key_Count }">
<MvIF EXPR = "{ g.Store_Key[ l.pos ]:Type EQ l.type }">
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Store_Key_Count" VALUE = "{ g.Store_Key_Count + 1 }">
<MvASSIGN NAME = "g.Store_Key" INDEX = "{ g.Store_Key_Count }" MEMBER = "Type" VALUE = "{ l.type }">
<MvASSIGN NAME = "g.Store_Key" INDEX = "{ g.Store_Key_Count }" MEMBER = "Start" VALUE = "{ l.start }">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Domain_Key_New_Insert" PARAMETERS = "version, type, start" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Domain_Key_Count }">
<MvIF EXPR = "{ g.Domain_Key[ l.pos ]:Type EQ l.type }">
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Domain_Key_Count" VALUE = "{ g.Domain_Key_Count + 1 }">
<MvASSIGN NAME = "g.Domain_Key" INDEX = "{ g.Domain_Key_Count }" MEMBER = "Type" VALUE = "{ l.type }">
<MvASSIGN NAME = "g.Domain_Key" INDEX = "{ g.Domain_Key_Count }" MEMBER = "Start" VALUE = "{ l.start }">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Domain_Privilege_New_Insert" PARAMETERS = "version, privilege" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.version GT g.Upgrade_Version_From }">
<MvASSIGN NAME = "l.pos" VALUE = 1>
<MvWHILE EXPR = "{ l.pos LE g.Domain_Privilege_Count }">
<MvIF EXPR = "{ g.Domain_Privilege[ l.pos ]:Privilege EQ l.privilege }">
<MvFUNCTIONRETURN>
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ l.pos + 1 }">
</MvWHILE>
<MvASSIGN NAME = "g.Domain_Privilege_Count" VALUE = "{ g.Domain_Privilege_Count + 1 }">
<MvASSIGN NAME = "g.Domain_Privilege" INDEX = "{ g.Domain_Privilege_Count }" MEMBER = "Privilege" VALUE = "{ l.privilege }">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Misc" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Domain_Misc_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Domain_Misc_Count }">
<MvASSIGN NAME = "l.mnemonic" VALUE = "{ g.Domain_Misc[ l.pos ]:Mnemonic }">
<MvEVAL EXPR = "{ Upgrade_Clear_Status() }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'misc', 'start', l.mnemonic, '', '' ) }">
<MvIF EXPR = "{ NOT Upgrade_Domain_Misc_Perform( l.mnemonic ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Misc', l.mnemonic ) }">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'misc', 'finished', l.mnemonic, '', '' ) }">
<MvASSIGN NAME = "g.Domain_Misc_Pos" VALUE = "{ g.Domain_Misc_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_DB" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.ok" VALUE = 1>
<MvIF EXPR = "{ NOT fmkdir( g.MerchantPath $ 'upgrade/' ) }">
<!--<MvFUNCTIONRETURN VALUE = 0>-->
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Domain_DB_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Domain_DB_Count }">
<MvASSIGN NAME = "l.db_finished" VALUE = 0>
<MvASSIGN NAME = "l.operation" VALUE = "{ g.Domain_DB[ l.pos ]:Operation }">
<MvASSIGN NAME = "l.filename" VALUE = "{ g.Domain_DB[ l.pos ]:Filename }">
<MvASSIGN NAME = "l.fields" VALUE = "{ g.Domain_DB[ l.pos ]:Fields }">
<MvASSIGN NAME = "l.record" VALUE = "{ g.Domain_DB[ l.pos ]:Record }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_DB( l.operation, l.filename, -1, 0 ) }">
<MvIF EXPR = "{ l.record NE 0 }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', l.operation, l.filename, 'resuming', l.record ) }">
<MvELSE>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', l.operation, l.filename, 'started', '' ) }">
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'new' }">
<MvCREATE NAME = "Temporary"
DATABASE = "{ g.MerchantPath $ 'upgrade/' $ l.filename }"
FIELDS = "{ l.fields }">
<MvIF EXPR = "{ MvCREATE_Error }">
<MvASSIGN NAME = "l.ok" VALUE = 0>
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_DB', MvCREATE_Error ) }">
<MvELSE>
<MvIF EXPR = "{ NOT Upgrade_Domain_DB_New( l.filename ) }">
<MvCOMMENT> Handled by lower level </MvCOMMENT>
</MvIF>
<MvCLOSE NAME = "Temporary">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Draw_Status_DB( l.operation, l.filename, -1, 0 ) }">
<MvASSIGN NAME = "l.db_finished" VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'change' }">
<MvOPEN NAME = "Original"
DATABASE = "{ g.MerchantPath $ l.filename }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvASSIGN NAME = "l.ok" VALUE = 0>
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_DB', MvOPEN_Error ) }">
<MvELSE>
<MvFILTER NAME = "Original" FILTER = "{ NOT Original.d.deleted }">
<MvASSIGN NAME = "l.temp_opened" VALUE = 0>
<MvIF EXPR = "{ l.record EQ 0 }">
<MvCREATE NAME = "Temporary"
DATABASE = "{ g.MerchantPath $ 'upgrade/' $ l.filename }"
FIELDS = "{ l.fields }">
<MvIF EXPR = "{ MvCREATE_Error }">
<MvASSIGN NAME = "l.ok" VALUE = 0>
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_DB', MvCREATE_Error ) }">
<MvELSE>
<MvASSIGN NAME = "l.temp_opened" VALUE = 1>
</MvIF>
<MvELSE>
<MvOPEN NAME = "Temporary"
DATABASE = "{ g.MerchantPath $ 'upgrade/' $ l.filename }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvASSIGN NAME = "l.ok" VALUE = 0>
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_DB', MvOPEN_Error ) }">
<MvELSE>
<MvASSIGN NAME = "l.temp_opened" VALUE = 1>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.temp_opened }">
<MvGO NAME = "Original" ROW = "top">
<MvIF EXPR = "{ l.record }">
<MvSKIP NAME = "Original" ROWS = "{ l.record }">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Draw_Status_DB( l.operation, l.filename, Original.d.recno, Original.d.totrec ) }">
<MvASSIGN NAME = "l.records" VALUE = 0>
<MvWHILE EXPR = "{ ( NOT Original.d.EOF ) AND ( l.records LT 100 ) }">
<MvASSIGN NAME = "l.records" VALUE = "{ l.records + 1 }">
<MvIF EXPR = "{ NOT Upgrade_Domain_DB_Change_ProcessRecord( l.filename ) }">
<MvCOMMENT> Handled by lower level </MvCOMMENT>
</MvIF>
<MvSKIP NAME = "Original" ROWS = 1>
</MvWHILE>
<MvIF EXPR = "{ Original.d.EOF }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_DB( l.operation, l.filename, Original.d.totrec, Original.d.totrec ) }">
<MvASSIGN NAME = "l.db_finished" VALUE = 1>
<MvELSE>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', l.operation, l.filename, 'resume', l.record + l.records ) }">
<MvASSIGN NAME = "g.Domain_DB[ l.pos ]:Record" VALUE = "{ l.record + l.records }">
</MvIF>
<MvCLOSE NAME = "Temporary">
</MvIF>
<MvCLOSE NAME = "Original">
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.db_finished OR ( NOT l.ok ) }">
<MvIF EXPR = "{ l.ok }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', l.operation, l.filename, 'completed', '' ) }">
</MvIF>
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ l.pos }" MEMBER = "Record" VALUE = 0>
<MvASSIGN NAME = "g.Domain_DB_Pos" VALUE = "{ g.Domain_DB_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_DB_Index" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ NOT fmkdir( g.MerchantPath $ 'upgrade/' ) }">
<!--<MvFUNCTIONRETURN VALUE = 0>-->
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Domain_DB_Index_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Domain_DB_Index_Count }">
<MvASSIGN NAME = "l.type" VALUE = "{ g.Domain_DB_Index[ l.pos ]:Type }">
<MvASSIGN NAME = "l.db_alias" VALUE = "{ g.Domain_DB_Index[ l.pos ]:DB_Alias }">
<MvASSIGN NAME = "l.db_name" VALUE = "{ g.Domain_DB_Index[ l.pos ]:DB_Filename }">
<MvASSIGN NAME = "l.index_name" VALUE = "{ g.Domain_DB_Index[ l.pos ]:Index }">
<MvASSIGN NAME = "l.expression" VALUE = "{ g.Domain_DB_Index[ l.pos ]:Expression }">
<MvASSIGN NAME = "l.flags" VALUE = "{ g.Domain_DB_Index[ l.pos ]:Flags }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Index( 'index', l.db_name, l.index_name ) }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'Index', 'index', l.index_name, 'started', '' ) }">
<MvIF EXPR = "{ l.type EQ 'original' }">
<MvOPEN NAME = "{ l.db_alias }"
DATABASE = "{ g.MerchantPath $ l.db_name }">
</MvIF>
<MvIF EXPR = "{ l.type EQ 'temporary' }">
<MvOPEN NAME = "{ l.db_alias }"
DATABASE = "{ g.MerchantPath $ 'upgrade/' $ l.db_name }">
</MvIF>
<MvIF EXPR = "{ MvOPEN_Error }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_DB_Index', MvOPEN_Error ) }">
<MvELSE>
<MvMAKEINDEX NAME = "{ l.db_alias }"
INDEXFILE = "{ g.MerchantPath $ 'upgrade/' $ l.index_name }"
EXPRESSION = "l.expression"
FLAGS = "{ l.flags }" EXPRESSION_TYPE = "variable">
<MvIF EXPR = "{ MvMAKEINDEX_Error }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_DB_Index', MvMAKEINDEX_Error ) }">
</MvIF>
<MvCLOSE NAME = "{ l.db_alias }">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'Index', 'index', l.index_name, 'completed', '' ) }">
<MvASSIGN NAME = "g.Domain_DB_Index_Pos" VALUE = "{ g.Domain_DB_Index_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Rename_DB" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Domain_DB_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Domain_DB_Count }">
<MvASSIGN NAME = "l.operation" VALUE = "{ g.Domain_DB[ l.pos ]:Operation }">
<MvASSIGN NAME = "l.filename" VALUE = "{ g.Domain_DB[ l.pos ]:Filename }">
<MvASSIGN NAME = "l.fields" VALUE = "{ g.Domain_DB[ l.pos ]:Fields }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Rename( l.filename ) }">
<MvIF EXPR = "{ l.operation EQ 'change' }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', 'rename', l.filename, 'rename original', g.MerchanPath $ l.filename ) }">
<MvIF EXPR = "{ NOT frename( g.MerchantPath $ l.filename, g.MerchantPath $ l.filename $ '.orig' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Rename_DB', 'Unable to rename \'' $ g.MerchantPath $ l.filename $ '\' to \'' $ g.MerchantPath $ l.filename $ '.orig\'' ) }">
</MvIF>
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', 'rename', l.filename, 'rename temporary', g.MerchantPath $ 'upgrade/' $ l.filename ) }">
<MvIF EXPR = "{ NOT frename( g.MerchantPath $ 'upgrade/' $ l.filename, g.MerchantPath $ l.filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Rename_DB', 'Unable to rename \'' $ g.MerchantPath $ 'upgrade/' $ l.filename $ '\' to \'' $ g.MerchantPath $ l.filename $ '\'' ) }">
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'change' }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', 'rename', l.filename, 'delete original', g.MerchantPath $ l.filename $ '.orig' ) }">
<MvIF EXPR = "{ NOT fdelete( g.MerchantPath $ l.filename $ '.orig' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Rename_DB', 'Unable to delete \'' $ g.MerchantPath $ l.memo_filename $ '.orig\'' ) }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ 'MEMO' IN l.fields }">
<MvASSIGN NAME = "l.memo_filename" VALUE = "{ substring( l.filename, 1, '.' IN l.filename ) $ 'dbt' }">
<MvASSIGN NAME = "l.old_memo_exists" VALUE = "{ fexists( g.MerchantPath $ l.memo_filename ) }">
<MvIF EXPR = "{ ( l.operation EQ 'change' ) AND l.old_memo_exists }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', 'rename', l.filename, 'rename original memo', g.MerchantPath $ l.memo_filename ) }">
<MvIF EXPR = "{ NOT frename( g.MerchantPath $ l.memo_filename, g.MerchantPath $ l.memo_filename $ '.orig' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Rename_DB', 'Unable to rename \'' $ g.MerchantPath $ l.memo_filename $ '\' to \'' $ g.MerchantPath $ l.memo_filename $ '.orig\'' ) }">
</MvIF>
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', 'rename', l.filename, 'rename temporary', g.MerchantPath $ 'upgrade/' $ l.memo_filename ) }">
<MvIF EXPR = "{ NOT frename( g.MerchantPath $ 'upgrade/' $ l.memo_filename, g.MerchantPath $ l.memo_filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Rename_DB', 'Unable to rename \'' $ g.MerchantPath $ 'upgrade/' $ l.memo_filename $ '\' to \'' $ g.MerchantPath $ l.memo_filename $ '\'' ) }">
</MvIF>
<MvIF EXPR = "{ ( l.operation EQ 'change' ) AND l.old_memo_exists }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'DB', 'rename', l.filename, 'delete original', g.MerchantPath $ l.memo_filename $ '.orig' ) }">
<MvIF EXPR = "{ NOT fdelete( g.MerchantPath $ l.memo_filename $ '.orig' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Rename_DB', 'Unable to delete \'' $ g.MerchantPath $ l.memo_filename $ '.orig\'' ) }">
</MvIF>
</MvIF>
</MvIF>
<MvASSIGN NAME = "g.Domain_DB_Pos" VALUE = "{ g.Domain_DB_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Rename_DB_Index" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Domain_DB_Index_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Domain_DB_Index_Count }">
<MvASSIGN NAME = "l.filename" VALUE = "{ g.Domain_DB_Index[ l.pos ]:Index }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Rename( l.filename ) }">
<MvIF EXPR = "{ fexists( g.MerchantPath $ l.filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'Index', 'rename', l.filename, 'delete original', g.MerchanPath $ l.filename ) }">
<MvIF EXPR = "{ NOT fdelete( g.MerchantPath $ l.filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Rename_DB_Index', 'Unable to delete \'' $ g.MerchantPath $ l.filename $ '\'' ) }">
</MvIF>
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'Index', 'rename', l.filename, 'rename temporary', g.MerchantPath $ 'upgrade/' $ l.filename ) }">
<MvIF EXPR = "{ NOT frename( g.MerchantPath $ 'upgrade/' $ l.filename, g.MerchantPath $ l.filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Rename_DB_Index', 'Unable to rename \'' $ g.MerchantPath $ 'upgrade/' $ l.filename $ '\' to \'' $ g.MerchantPath $ l.filename $ '\'' ) }">
</MvIF>
<MvASSIGN NAME = "g.Domain_DB_Index_Pos" VALUE = "{ g.Domain_DB_Index_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Cleanup" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvEVAL EXPR = "{ Upgrade_Clear_Status() }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', '', 'cleanup', g.MerchantPath $ 'upgrade/', 'delete directory', '' ) }">
<MvIF EXPR = "{ NOT fdelete( g.MerchantPath $ 'upgrade/' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Cleanup', 'Unable to delete \'' $ g.MerchantPath $ 'upgrade/' $ '\'' ) }">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', '', 'cleanup', 'domain.dbf', 'update version', '' ) }">
<MvOPEN NAME = "Upgrade_Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvASSIGN NAME = "Upgrade_Domain.d.version" VALUE = "{ g.Merchant_Version }">
<MvUPDATE NAME = "Upgrade_Domain">
<MvCLOSE NAME = "Upgrade_Domain">
<MvASSIGN NAME = "l.foo" VALUE = "{ Upgrade_Deactivate_Skipped_Modules() }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Privilege" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Domain_Privilege_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Domain_Privilege_Count }">
<MvASSIGN NAME = "l.privilege" VALUE = "{ g.Domain_Privilege[ l.pos ]:Privilege }">
<MvASSIGN NAME = "l.name" VALUE = "{ Upgrade_Domain_Privilege_Name( l.privilege ) }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Privilege( l.privilege, l.name ) }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'privs', 'insert', l.privilege, 'starting', l.name ) }">
<MvOPEN NAME = "Privileges"
DATABASE = "{ g.MerchantPath $ 'privs.dbf' }"
INDEXES = "{ g.MerchantPath $ 'prv_priv.mvx, ' $ g.MerchantPath $ 'prv_name.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Privilege', MvOPEN_Error ) }">
<MvELSE>
<MvASSIGN NAME = "Privileges.d.privilege" VALUE = "{ l.privilege }">
<MvASSIGN NAME = "Privileges.d.name" VALUE = "{ Upgrade_Domain_Privilege_Name( l.privilege ) }">
<MvADD NAME = "Privileges">
<MvCLOSE NAME = "Privileges">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'privs', 'insert', l.privilege, 'finished', l.name ) }">
<MvASSIGN NAME = "g.Domain_Privilege_Pos" VALUE = "{ g.Domain_Privilege_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = "1">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Module" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Module( Modules.d.name ) }">
<MvIF EXPR = "{ Modules.d.Active }">
<MvDO FILE = "{ g.Module_Root $ Modules.d.module }" NAME = "l.version" VALUE = "{ Module_Version() }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'upgrade_modules', 'start', Modules.d.module, 'check version', l.version $ ' ' $ Modules.d.version ) }">
<MvIF EXPR = "{ l.version NE Modules.d.version }">
<MvDO FILE = "{ g.Module_Root $ Modules.d.module }" NAME = "l.ok" VALUE = "{ Module_Upgrade( Modules.d.version ) }">
<MvIF EXPR = "{ l.ok }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'upgrade_modules', 'update', Modules.d.module, '', '' ) }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.ok" VALUE = "{ Module_Update( Modules.d.id,
Modules.d.code,
Modules.d.name,
Modules.d.provider,
l.version,
Modules.d.module,
1 ) }">
<MvIF EXPR = "{ NOT l.ok }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( '[Domain]', 'Upgrade_Domain_Module', g.Error_Code $ ': ' $ g.Error_Message ) }">
</MvIF>
</MvIF>
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'upgrade_modules', 'finished', Modules.d.module, '', '' ) }">
<MvELSE>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'upgrade_modules', 'skipped', Modules.d.module, '', '' ) }">
</MvIF>
<MvASSIGN NAME = "g.Domain_Module_Record" VALUE = "{ g.Domain_Module_Record + 1 }">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Module_New" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Domain_Module_New_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Domain_Module_New_Count }">
<MvASSIGN NAME = "l.module" VALUE = "{ g.Domain_Module_New[ l.pos ]:Module }">
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'install_modules', 'start', l.module, '', '' ) }">
<MvDO FILE = "{ Domain.d.mod_root $ g.Version_Path $ l.module }" NAME = "l.type" VALUE = "{ Module_Type() }">
<MvDO FILE = "{ Domain.d.mod_root $ g.Version_Path $ l.module }" NAME = "l.code" VALUE = "{ Module_Code() }">
<MvDO FILE = "{ Domain.d.mod_root $ g.Version_Path $ l.module }" NAME = "l.name" VALUE = "{ Module_Name() }">
<MvDO FILE = "{ Domain.d.mod_root $ g.Version_Path $ l.module }" NAME = "l.provider" VALUE = "{ Module_Provider() }">
<MvDO FILE = "{ Domain.d.mod_root $ g.Version_Path $ l.module }" NAME = "l.version" VALUE = "{ Module_Version() }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Module_New( l.name ) }">
<MvDO FILE = "{ g.Upgrade_Library_DB }" NAME = "l.ok" VALUE = "{ Module_Insert( l.type, l.code, l.name, l.provider, l.version, l.module, 1 ) }">
<MvIF EXPR = "{ l.ok }">
<MvDO FILE = "{ Domain.d.mod_root $ g.Version_Path $ l.module }" NAME = "l.ok" VALUE = "{ Module_Install() }">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( '[Domain]', 'install_modules', 'finished', l.module, '', '' ) }">
<MvASSIGN NAME = "g.Domain_Module_New_Pos" VALUE = "{ g.Domain_Module_New_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.ok" VALUE = 1>
<MvASSIGN NAME = "l.directory" VALUE = "{ g.MerchantPath $ padl( g.Current_Store_ID, 8, '0' ) $ '/' }">
<MvIF EXPR = "{ NOT fmkdir( l.directory $ 'upgrade/' ) }">
<!--<MvFUNCTIONRETURN VALUE = 0>-->
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Store_DB_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Store_DB_Count }">
<MvASSIGN NAME = "l.db_finished" VALUE = 0>
<MvASSIGN NAME = "l.operation" VALUE = "{ g.Store_DB[ l.pos ]:Operation }">
<MvASSIGN NAME = "l.filename" VALUE = "{ g.Store_DB[ l.pos ]:Filename }">
<MvASSIGN NAME = "l.fields" VALUE = "{ g.Store_DB[ l.pos ]:Fields }">
<MvASSIGN NAME = "l.record" VALUE = "{ g.Store_DB[ l.pos ]:Record }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_DB( l.operation, l.filename, -1, 0 ) }">
<MvIF EXPR = "{ l.record NE 0 }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', l.operation, l.filename, 'resuming', l.record ) }">
<MvELSE>
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', l.operation, l.filename, 'started', '' ) }">
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'new' }">
<MvCREATE NAME = "Temporary"
DATABASE = "{ l.directory $ 'upgrade/' $ l.filename }"
FIELDS = "{ l.fields }">
<MvIF EXPR = "{ MvCREATE_Error }">
<MvASSIGN NAME = "l.ok" VALUE = 0>
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_DB', MvCREATE_Error ) }">
<MvELSE>
<MvIF EXPR = "{ NOT Upgrade_Store_DB_New( l.filename ) }">
<MvCOMMENT> Handled by lower level </MvCOMMENT>
</MvIF>
<MvCLOSE NAME = "Temporary">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Draw_Status_DB( l.operation, l.filename, -1, 0 ) }">
<MvASSIGN NAME = "l.db_finished" VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'change' }">
<MvOPEN NAME = "Original"
DATABASE = "{ l.directory $ l.filename }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvASSIGN NAME = "l.ok" VALUE = 0>
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_DB', MvOPEN_Error ) }">
<MvELSE>
<MvFILTER NAME = "Original" FILTER = "{ NOT Original.d.deleted }">
<MvASSIGN NAME = "l.temp_open" VALUE = 0>
<MvIF EXPR = "{ l.record EQ 0 }">
<MvCREATE NAME = "Temporary"
DATABASE = "{ l.directory $ 'upgrade/' $ l.filename }"
FIELDS = "{ l.fields }">
<MvIF EXPR = "{ MvCREATE_Error }">
<MvASSIGN NAME = "l.ok" VALUE = 0>
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_DB', MvCREATE_Error ) }">
<MvELSE>
<MvASSIGN NAME = "l.temp_open" VALUE = 1>
</MvIF>
<MvELSE>
<MvOPEN NAME = "Temporary"
DATABASE = "{ l.directory $ 'upgrade/' $ l.filename }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvASSIGN NAME = "l.ok" VALUE = 0>
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_DB', MvOPEN_Error ) }">
<MvELSE>
<MvASSIGN NAME = "l.temp_open" VALUE = 1>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.temp_open }">
<MvGO NAME = "Original" ROW = "top">
<MvIF EXPR = "{ l.record }">
<MvSKIP NAME = "Original" ROWS = "{ l.record }">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Draw_Status_DB( l.operation, l.filename, Original.d.recno, Original.d.totrec ) }">
<MvASSIGN NAME = "l.records" VALUE = 0>
<MvWHILE EXPR = "{ ( NOT Original.d.EOF ) AND ( l.records LT 100 ) }">
<MvASSIGN NAME = "l.records" VALUE = "{ l.records + 1 }">
<MvIF EXPR = "{ NOT Upgrade_Store_DB_Change_ProcessRecord( l.filename ) }">
<MvCOMMENT> Handled by lower level </MvCOMMENT>
</MvIF>
<MvSKIP NAME = "Original" ROWS = 1>
</MvWHILE>
<MvIF EXPR = "{ Original.d.EOF }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_DB( l.operation, l.filename, Original.d.totrec, Original.d.totrec ) }">
<MvASSIGN NAME = "l.db_finished" VALUE = 1>
<MvELSE>
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', l.operation, l.filename, 'resume', l.record + l.records ) }">
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ l.pos }" MEMBER = "Record" VALUE = "{ l.record + l.records }">
</MvIF>
<MvCLOSE NAME = "Temporary">
</MvIF>
<MvCLOSE NAME = "Original">
</MvIF>
</MvIF>
<MvIF EXPR = "{ ( l.db_finished ) OR ( NOT l.ok ) }">
<MvIF EXPR = "{ l.ok }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', l.operation, l.filename, 'completed', '' ) }">
</MvIF>
<MvASSIGN NAME = "g.Store_DB" INDEX = "{ l.pos }" MEMBER = "Record" VALUE = 0>
<MvASSIGN NAME = "g.Store_DB_Pos" VALUE = "{ g.Store_DB_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Index" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.directory" VALUE = "{ g.MerchantPath $ padl( g.Current_Store_ID, 8, '0' ) $ '/' }">
<MvIF EXPR = "{ NOT fmkdir( l.directory $ 'upgrade/' ) }">
<!--<MvFUNCTIONRETURN VALUE = 0>-->
</MvIF>
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Store_DB_Index_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Store_DB_Index_Count }">
<MvASSIGN NAME = "l.type" VALUE = "{ g.Store_DB_Index[ l.pos ]:Type }">
<MvASSIGN NAME = "l.db_name" VALUE = "{ g.Store_DB_Index[ l.pos ]:DB_Filename }">
<MvASSIGN NAME = "l.db_alias" VALUE = "{ g.Store_DB_Index[ l.pos ]:DB_Alias }">
<MvASSIGN NAME = "l.index_name" VALUE = "{ g.Store_DB_Index[ l.pos ]:Index }">
<MvASSIGN NAME = "l.expression" VALUE = "{ g.Store_DB_Index[ l.pos ]:Expression }">
<MvASSIGN NAME = "l.flags" VALUE = "{ g.Store_DB_Index[ l.pos ]:Flags }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Index( 'index', l.db_name, l.index_name ) }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'Index', 'index', l.index_name, 'started', '' ) }">
<MvIF EXPR = "{ l.type EQ 'original' }">
<MvOPEN NAME = "{ l.db_alias }"
DATABASE = "{ l.directory $ l.db_name }">
</MvIF>
<MvIF EXPR = "{ l.type EQ 'temporary' }">
<MvOPEN NAME = "{ l.db_alias }"
DATABASE = "{ l.directory $ 'upgrade/' $ l.db_name }">
</MvIF>
<MvIF EXPR = "{ MvOPEN_Error }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_DB_Index', MvOPEN_Error ) }">
<MvELSE>
<MvMAKEINDEX NAME = "{ l.db_alias }"
INDEXFILE = "{ l.directory $ 'upgrade/' $ l.index_name }"
EXPRESSION = "l.expression"
FLAGS = "{ l.flags }" EXPRESSION_TYPE = "variable">
<MvIF EXPR = "{ MvMAKEINDEX_Error }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_DB_Index', MvMAKEINDEX_Error ) }">
</MvIF>
<MvCLOSE NAME = "{ l.db_alias }">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'Index', 'index', l.index_name, 'completed', '' ) }">
<MvASSIGN NAME = "g.Store_DB_Index_Pos" VALUE = "{ g.Store_DB_Index_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_Rename_DB" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.directory" VALUE = "{ g.MerchantPath $ padl( g.Current_Store_ID, 8, '0' ) $ '/' }">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Store_DB_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Store_DB_Count }">
<MvASSIGN NAME = "l.operation" VALUE = "{ g.Store_DB[ l.pos ]:Operation }">
<MvASSIGN NAME = "l.filename" VALUE = "{ g.Store_DB[ l.pos ]:Filename }">
<MvASSIGN NAME = "l.fields" VALUE = "{ g.Store_DB[ l.pos ]:Fields }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Rename( l.filename ) }">
<MvIF EXPR = "{ l.operation EQ 'change' }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', 'rename', l.filename, 'rename original', g.MerchanPath $ l.filename ) }">
<MvIF EXPR = "{ NOT frename( l.directory $ l.filename, l.directory $ l.filename $ '.orig' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Rename_DB', 'Unable to rename \'' $ l.directory $ l.filename $ '\' to \'' $ l.directory $ l.filename $ '.orig\'' ) }">
</MvIF>
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', 'rename', l.filename, 'rename temporary', l.directory $ 'upgrade/' $ l.filename ) }">
<MvIF EXPR = "{ NOT frename( l.directory $ 'upgrade/' $ l.filename, l.directory $ l.filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Rename_DB', 'Unable to rename \'' $ l.directory $ 'upgrade/' $ l.filename $ '\' to \'' $ l.directory $ l.filename $ '\'' ) }">
</MvIF>
<MvIF EXPR = "{ l.operation EQ 'change' }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', 'rename', l.filename, 'delete original', l.directory $ l.filename $ '.orig' ) }">
<MvIF EXPR = "{ NOT fdelete( l.directory $ l.filename $ '.orig' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Rename_DB', 'Unable to delete \'' $ l.directory $ l.filename $ '.orig\'' ) }">
</MvIF>
</MvIF>
<MvIF EXPR = "{ 'MEMO' IN l.fields }">
<MvASSIGN NAME = "l.memo_filename" VALUE = "{ substring( l.filename, 1, '.' IN l.filename ) $ 'dbt' }">
<MvASSIGN NAME = "l.old_memo_exists" VALUE = "{ fexists( l.directory $ l.memo_filename ) }">
<MvIF EXPR = "{ ( l.operation EQ 'change' ) AND l.old_memo_exists }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', 'rename', l.filename, 'rename original memo', l.directory $ l.memo_filename ) }">
<MvIF EXPR = "{ NOT frename( l.directory $ l.memo_filename, l.directory $ l.memo_filename $ '.orig' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Rename_DB', 'Unable to rename \'' $ l.directory $ l.memo_filename $ '\' to \'' $ l.directory $ l.memo_filename $ '.orig\'' ) }">
</MvIF>
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', 'rename', l.filename, 'rename temporary', l.directory $ 'upgrade/' $ l.memo_filename ) }">
<MvIF EXPR = "{ NOT frename( l.directory $ 'upgrade/' $ l.memo_filename, l.directory $ l.memo_filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Rename_DB', 'Unable to rename \'' $ l.directory $ 'upgrade/' $ l.memo_filename $ '\' to \'' $ l.directory $ l.memo_filename $ '\'' ) }">
</MvIF>
<MvIF EXPR = "{ ( l.operation EQ 'change' ) AND l.old_memo_exists }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'DB', 'rename', l.filename, 'delete original', l.directory $ l.memo_filename $ '.orig' ) }">
<MvIF EXPR = "{ NOT fdelete( l.directory $ l.memo_filename $ '.orig' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Rename_DB', 'Unable to delete \'' $ l.directory $ l.memo_filename $ '.orig\'' ) }">
</MvIF>
</MvIF>
</MvIF>
<MvASSIGN NAME = "g.Store_DB_Pos" VALUE = "{ g.Store_DB_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_Rename_DB_Index" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.directory" VALUE = "{ g.MerchantPath $ padl( g.Current_Store_ID, 8, '0' ) $ '/' }">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Store_DB_Index_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Store_DB_Index_Count }">
<MvASSIGN NAME = "l.filename" VALUE = "{ g.Store_DB_Index[ l.pos ]:Index }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Rename( l.filename ) }">
<MvIF EXPR = "{ fexists( l.directory $ l.filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'Index', 'rename', l.filename, 'delete original', g.MerchanPath $ l.filename ) }">
<MvIF EXPR = "{ NOT fdelete( l.directory $ l.filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Rename_DB_Index', 'Unable to delete \'' $ l.directory $ l.filename $ '\'' ) }">
</MvIF>
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'Index', 'rename', l.filename, 'rename temporary', l.directory $ 'upgrade/' $ l.filename ) }">
<MvIF EXPR = "{ NOT frename( l.directory $ 'upgrade/' $ l.filename, l.directory $ l.filename ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Rename_DB_Index', 'Unable to rename \'' $ l.directory $ 'upgrade/' $ l.filename $ '\' to \'' $ l.directory $ l.filename $ '\'' ) }">
</MvIF>
<MvASSIGN NAME = "g.Store_DB_Index_Pos" VALUE = "{ g.Store_DB_Index_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_Cleanup" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.directory" VALUE = "{ g.MerchantPath $ padl( g.Current_Store_ID, 8, '0' ) $ '/' }">
<MvEVAL EXPR = "{ Upgrade_Clear_Status() }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, '', 'cleanup', l.directory $ 'upgrade/', 'delete directory', '' ) }">
<MvIF EXPR = "{ NOT fdelete( l.directory $ 'upgrade/' ) }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Cleanup', 'Unable to delete \'' $ l.directory $ 'upgrade/' $ '\'' ) }">
</MvIF>
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_Key" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.directory" VALUE = "{ g.MerchantPath $ padl( g.Current_Store_ID, 8, '0' ) $ '/' }">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Store_Key_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Store_Key_Count }">
<MvASSIGN NAME = "l.type" VALUE = "{ g.Store_Key[ l.pos ]:Type }">
<MvASSIGN NAME = "l.start" VALUE = "{ g.Store_Key[ l.pos ]:Start }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_StoreKey( l.type ) }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'store_key', 'start', l.type, 'start', l.start ) }">
<MvOPEN NAME = "StoreKeys"
DATABASE = "{ l.directory $ 'storekey.dbf' }"
INDEXES = "{ l.directory $ 'storekey.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( g.Current_Store_Name, 'Upgrade_Store_Key', MvOPEN_Error ) }">
<MvELSE>
<MvASSIGN NAME = "StoreKeys.d.type" VALUE = "{ l.type }">
<MvASSIGN NAME = "StoreKeys.d.maxvalue" VALUE = "{ l.start - 1 }">
<MvADD NAME = "StoreKeys">
</MvIF>
<MvASSIGN NAME = "g.Store_Key_Pos" VALUE = "{ g.Store_Key_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Key" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.directory" VALUE = "{ g.MerchantPath }">
<MvASSIGN NAME = "l.pos" VALUE = "{ int( g.Domain_Key_Pos ) }">
<MvIF EXPR = "{ l.pos LE g.Domain_Key_Count }">
<MvASSIGN NAME = "l.type" VALUE = "{ g.Domain_Key[ l.pos ]:Type }">
<MvASSIGN NAME = "l.start" VALUE = "{ g.Domain_Key[ l.pos ]:Start }">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_DomainKey( l.type ) }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Domain_Name, 'key', 'start', l.type, 'start', l.start ) }">
<MvOPEN NAME = "Keys"
DATABASE = "{ l.directory $ 'keys.dbf' }"
INDEXES = "{ l.directory $ 'keys.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( [Domain], 'Upgrade_Domain_Key', MvOPEN_Error ) }">
<MvELSE>
<MvASSIGN NAME = "Keys.d.type" VALUE = "{ l.type }">
<MvASSIGN NAME = "Keys.d.maxvalue" VALUE = "{ l.start - 1 }">
<MvADD NAME = "Keys">
</MvIF>
<MvASSIGN NAME = "g.Domain_Key_Pos" VALUE = "{ g.Domain_Key_Pos + 1 }">
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_Module" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvEVAL EXPR = "{ Upgrade_Draw_Status_Module( Modules.d.name ) }">
<MvDO FILE = "{ g.Module_Root $ Modules.d.module }" NAME = "l.version" VALUE = "{ Module_Version() }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'upgrade_modules', 'start', Modules.d.module, 'check version', l.version $ ' ' $ Modules.d.version ) }">
<MvIF EXPR = "{ l.version NE Modules.d.version }">
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'upgrade_modules', 'update', Modules.d.module, '', '' ) }">
<MvDO FILE = "{ g.Module_Root $ Modules.d.module }" NAME = "l.ok" VALUE = "{ Module_Upgrade_Store( Modules.d.version ) }">
<MvIF EXPR = "{ NOT l.ok }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( Stores.d.name, 'Upgrade_Store_Module', g.Error_Code $ ': ' $ g.Error_Message ) }">
</MvIF>
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Log( g.Current_Store_Name, 'upgrade_modules', 'finished', Modules.d.module, '', '' ) }">
<MvASSIGN NAME = "g.Store_Module_Record" VALUE = "{ g.Store_Module_Record + 1 }">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Misc_Perform" PARAMETERS = "mnemonic" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.mnemonic EQ 'language.dat' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Domain_Misc_Perform_LanguageDAT() }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 0>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Misc_Perform_LanguageDAT" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvEXPORT FILE = "{ g.MerchantPath $ 'language.dat' }" FIELDS = "s.miva_language" DELIMITER = "">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Privilege_Name" PARAMETERS = "privilege" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.name" VALUE = "">
<MvIF EXPR = "{ l.privilege EQ 'STCT' }">
<MvLOCALIZED NAME = "l.name" ID = "MER-UPG-00132">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Countries</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">L�nder</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.privilege EQ 'INVT' }">
<MvLOCALIZED NAME = "l.name" ID = "MER-UPG-00148">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Inventory</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.privilege EQ 'AFLT' }">
<MvLOCALIZED NAME = "l.name" ID = "MER-UPG-00149">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Affiliates</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Angegliederte Unternehmen</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.privilege EQ 'MONY' }">
<MvLOCALIZED NAME = "l.name" ID = "MER-UPG-00150">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Affiliate Money</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Partner Finanzen</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvIF EXPR = "{ l.privilege EQ 'ATMP' }">
<MvLOCALIZED NAME = "l.name" ID = "MER-UPG-00151">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Attribute Templates</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Attribut-Vorlagen</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
<MvFUNCTIONRETURN VALUE = "{ l.name }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_DB_New" PARAMETERS = "filename" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.filename EQ 'country.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Domain_DB_New_Countries() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'tasks.dbf' }">
<MvDO FILE = "{ g.Module_Feature_STP_AD }" NAME = "l.ok" VALUE = "{ STP_Upgrade_Domain_DB_New_Tasks() }">
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'notes.dbf' }">
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
<MvFUNCTIONRETURN VALUE = 0>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_DB_New_Countries" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.ok" VALUE = 1>
<MvASSIGN NAME = "l.country_count" VALUE = 0>
<MvASSIGN NAME = "l.country_list" VALUE = "{ 'COUNTRIES.' $ s.miva_language }">
<MvIF EXPR = "{ NOT sfcopy( g.Version_Path $ l.country_list, l.country_list ) }">
<MvASSIGN NAME = "l.ok" VALUE = 0>
<MvELSE>
<MvIMPORT FILE = "{ l.country_list }"
FIELDS = "l.name, l.alpha, l.numeric"
DELIMITER = "|">
<MvASSIGN NAME = "l.country_count" VALUE = "{ l.country_count + 1 }">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ l.country_count }">
<MvASSIGN NAME = "Temporary.d.name" VALUE = "{ l.name }">
<MvASSIGN NAME = "Temporary.d.alpha" VALUE = "{ l.alpha }">
<MvASSIGN NAME = "Temporary.d.numeric" VALUE = "{ l.numeric }">
<MvADD NAME = "Temporary">
</MvIMPORT>
<MvASSIGN NAME = "l.ok" VALUE = "{ fdelete( l.country_list ) }">
</MvIF>
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_DB_Change_ProcessRecord" PARAMETERS = "filename" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.filename EQ 'stores.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Domain_DB_Change_ProcessRecord_Stores() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'domain.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Domain_DB_Change_ProcessRecord_Domain() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'users.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Domain_DB_Change_ProcessRecord_Users() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'modules.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Domain_DB_Change_ProcessRecord_Modules() }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 0>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_DB_Change_ProcessRecord_Stores" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ Original.d.id }">
<MvASSIGN NAME = "Temporary.d.manager_id" VALUE = "{ Original.d.manager_id }">
<MvASSIGN NAME = "Temporary.d.code" VALUE = "{ Original.d.code }">
<MvASSIGN NAME = "Temporary.d.license" VALUE = "{ Original.d.license }">
<MvASSIGN NAME = "Temporary.d.name" VALUE = "{ Original.d.name }">
<MvASSIGN NAME = "Temporary.d.owner" VALUE = "{ Original.d.owner }">
<MvASSIGN NAME = "Temporary.d.email" VALUE = "{ Original.d.email }">
<MvASSIGN NAME = "Temporary.d.company" VALUE = "{ Original.d.company }">
<MvASSIGN NAME = "Temporary.d.address" VALUE = "{ Original.d.address }">
<MvASSIGN NAME = "Temporary.d.city" VALUE = "{ Original.d.city }">
<MvASSIGN NAME = "Temporary.d.state" VALUE = "{ Original.d.state }">
<MvASSIGN NAME = "Temporary.d.zip" VALUE = "{ Original.d.zip }">
<MvASSIGN NAME = "Temporary.d.phone" VALUE = "{ Original.d.phone }">
<MvASSIGN NAME = "Temporary.d.fax" VALUE = "{ Original.d.fax }">
<MvASSIGN NAME = "Temporary.d.country" VALUE = "{ Original.d.country }">
<MvASSIGN NAME = "Temporary.d.wtunits" VALUE = "{ Original.d.wtunits }">
<MvASSIGN NAME = "Temporary.d.baskexp" VALUE = "{ Original.d.baskexp }">
<MvASSIGN NAME = "Temporary.d.pgrp_ovlp" VALUE = "{ Original.d.pgrp_ovlp }">
<MvASSIGN NAME = "Temporary.d.tax_id" VALUE = "{ Original.d.tax_id }">
<MvASSIGN NAME = "Temporary.d.currncy_id" VALUE = "{ Original.d.currncy_id }">
<MvASSIGN NAME = "Temporary.d.ui_id" VALUE = "{ Original.d.ui_id }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 3.00 }">
<MvLOCALIZED NAME = "Temporary.d.mnt_warn" ID = "MER-UPG-00032">
<MvLOCALIZED-TOKEN NAME = "p" VALUE = "%">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">%p%store_name%p% will be closing in %p%maint_countdown%p% minutes for maintenance. Please complete your selection and proceed to the checkout. All abandoned baskets will be emptied.</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">%store_name% wird in %maint_countdown% Minuten zwecks Wartungsarbeiten geschlossen. Bitte beenden Sie Ihre Auswahl und gehen Sie dann zur Kasse. Alle zur�ckgelassenen Warenk�rbe werden entleert.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvLOCALIZED NAME = "Temporary.d.mnt_close" ID = "MER-UPG-00033">
<MvLOCALIZED-TOKEN NAME = "p" VALUE = "%">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Sorry, %p%store_name%p% is closed for maintenance. We will re-open soon. Thanks</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Leider ist %store_name% zurzeit wegen Wartungsarbeiten geschlossen. Wir werden aber bald wieder ge�ffnet sein. Vielen Dank f�r Ihr Verst�ndnis.</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvASSIGN NAME = "Temporary.d.mnt_no_new" VALUE = 0>
<MvASSIGN NAME = "Temporary.d.omin_quant" VALUE = 0>
<MvASSIGN NAME = "Temporary.d.omin_price" VALUE = 0>
<MvASSIGN NAME = "Temporary.d.omin_all" VALUE = 1>
<MvASSIGN NAME = "Temporary.d.omin_msg" VALUE = "">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.mnt_warn" VALUE = "{ Original.d.mnt_warn }">
<MvASSIGN NAME = "Temporary.d.mnt_close" VALUE = "{ Original.d.mnt_close }">
<MvASSIGN NAME = "Temporary.d.omin_quant" VALUE = "{ Original.d.mnt_no_new }">
<MvASSIGN NAME = "Temporary.d.omin_quant" VALUE = "{ Original.d.omin_quant }">
<MvASSIGN NAME = "Temporary.d.omin_price" VALUE = "{ Original.d.omin_price }">
<MvASSIGN NAME = "Temporary.d.omin_all" VALUE = "{ Original.d.omin_all }">
<MvASSIGN NAME = "Temporary.d.omin_msg" VALUE = "{ Original.d.omin_msg }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_DB_Change_ProcessRecord_Domain" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.name" VALUE = "{ Original.d.name }">
<MvASSIGN NAME = "Temporary.d.license" VALUE = "{ Original.d.license }">
<MvASSIGN NAME = "Temporary.d.version" VALUE = "{ Original.d.version }">
<MvASSIGN NAME = "Temporary.d.owner" VALUE = "{ Original.d.owner }">
<MvASSIGN NAME = "Temporary.d.email" VALUE = "{ Original.d.email }">
<MvASSIGN NAME = "Temporary.d.company" VALUE = "{ Original.d.company }">
<MvASSIGN NAME = "Temporary.d.address" VALUE = "{ Original.d.address }">
<MvASSIGN NAME = "Temporary.d.city" VALUE = "{ Original.d.city }">
<MvASSIGN NAME = "Temporary.d.state" VALUE = "{ Original.d.state }">
<MvASSIGN NAME = "Temporary.d.zip" VALUE = "{ Original.d.zip }">
<MvASSIGN NAME = "Temporary.d.country" VALUE = "{ Original.d.country }">
<MvASSIGN NAME = "Temporary.d.phone" VALUE = "{ Original.d.phone }">
<MvASSIGN NAME = "Temporary.d.fax" VALUE = "{ Original.d.fax }">
<MvASSIGN NAME = "Temporary.d.mm_url" VALUE = "{ Original.d.mm_url }">
<MvASSIGN NAME = "Temporary.d.mm_surl" VALUE = "{ Original.d.mm_surl }">
<MvASSIGN NAME = "Temporary.d.admin_surl" VALUE = "{ Original.d.admin_surl }">
<MvASSIGN NAME = "Temporary.d.image_root" VALUE = "{ Original.d.image_root }">
<MvASSIGN NAME = "Temporary.d.base_url" VALUE = "{ Original.d.base_url }">
<MvASSIGN NAME = "Temporary.d.base_surl" VALUE = "{ Original.d.base_surl }">
<MvASSIGN NAME = "Temporary.d.mod_root" VALUE = "{ Original.d.mod_root }">
<MvASSIGN NAME = "Temporary.d.mod_sroot" VALUE = "{ Original.d.mod_sroot }">
<MvASSIGN NAME = "Temporary.d.admexp" VALUE = "{ Original.d.admexp }">
<MvASSIGN NAME = "Temporary.d.mailhost" VALUE = "{ Original.d.mailhost }">
<MvASSIGN NAME = "Temporary.d.mail_angl" VALUE = "{ Original.d.mail_angl }">
<MvASSIGN NAME = "Temporary.d.ui_id" VALUE = "{ Original.d.ui_id }">
<MvASSIGN NAME = "Temporary.d.d_set" VALUE = "{ Original.d.d_set }">
<MvASSIGN NAME = "Temporary.d.d_mod" VALUE = "{ Original.d.d_mod }">
<MvASSIGN NAME = "Temporary.d.d_pay" VALUE = "{ Original.d.d_pay }">
<MvASSIGN NAME = "Temporary.d.d_ship" VALUE = "{ Original.d.d_ship }">
<MvASSIGN NAME = "Temporary.d.d_ful" VALUE = "{ Original.d.d_ful }">
<MvASSIGN NAME = "Temporary.d.d_usr" VALUE = "{ Original.d.d_usr }">
<MvASSIGN NAME = "Temporary.d.d_log" VALUE = "{ Original.d.d_log }">
<MvASSIGN NAME = "Temporary.d.d_sys" VALUE = "{ Original.d.d_sys }">
<MvASSIGN NAME = "Temporary.d.d_utl" VALUE = "{ Original.d.d_utl }">
<MvASSIGN NAME = "Temporary.d.maxstores" VALUE = "{ Original.d.maxstores }">
<MvASSIGN NAME = "Temporary.d.lo_time" VALUE = "{ Original.d.lo_time }">
<MvASSIGN NAME = "Temporary.d.li_trys" VALUE = "{ Original.d.li_trys }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 4.00 }">
<MvASSIGN NAME = "Temporary.d.d_set" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.d_mod" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.d_pay" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.d_ship" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.d_ful" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.d_usr" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.d_log" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.d_sys" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.d_utl" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.maxstores" VALUE = "">
<MvASSIGN NAME = "Temporary.d.lo_time" VALUE = "15">
<MvASSIGN NAME = "Temporary.d.li_trys" VALUE = "3">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.d_set" VALUE = "{ Original.d.d_set }">
<MvASSIGN NAME = "Temporary.d.d_mod" VALUE = "{ Original.d.d_mod }">
<MvASSIGN NAME = "Temporary.d.d_pay" VALUE = "{ Original.d.d_pay }">
<MvASSIGN NAME = "Temporary.d.d_ship" VALUE = "{ Original.d.d_ship }">
<MvASSIGN NAME = "Temporary.d.d_ful" VALUE = "{ Original.d.d_ful }">
<MvASSIGN NAME = "Temporary.d.d_usr" VALUE = "{ Original.d.d_usr }">
<MvASSIGN NAME = "Temporary.d.d_log" VALUE = "{ Original.d.d_log }">
<MvASSIGN NAME = "Temporary.d.d_sys" VALUE = "{ Original.d.d_sys }">
<MvASSIGN NAME = "Temporary.d.d_utl" VALUE = "{ Original.d.d_utl }">
<MvASSIGN NAME = "Temporary.d.maxstores" VALUE = "{ Original.d.maxstores }">
<MvASSIGN NAME = "Temporary.d.lo_time" VALUE = "{ Original.d.lo_time }">
<MvASSIGN NAME = "Temporary.d.li_trys" VALUE = "{ Original.d.li_trys }">
<MvASSIGN NAME = "Temporary.d.upgd_ignr" VALUE = "{ g.Merchant_Version }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_DB_Change_ProcessRecord_Users" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ Original.d.id }">
<MvASSIGN NAME = "Temporary.d.parent_id" VALUE = "{ Original.d.parent_id }">
<MvASSIGN NAME = "Temporary.d.name" VALUE = "{ Original.d.name }">
<MvASSIGN NAME = "Temporary.d.password" VALUE = "{ Original.d.password }">
<MvASSIGN NAME = "Temporary.d.admin" VALUE = "{ Original.d.admin }">
<MvASSIGN NAME = "Temporary.d.create" VALUE = "{ Original.d.create }">
<MvASSIGN NAME = "Temporary.d.smod" VALUE = "{ Original.d.smod }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 4.00 }">
<MvASSIGN NAME = "Temporary.d.page_len" VALUE = "10">
<MvASSIGN NAME = "Temporary.d.t_fails" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.c_fails" VALUE = "0">
<MvASSIGN NAME = "Temporary.d.lo_date" VALUE = "0">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.page_len" VALUE = "{ Original.d.page_len }">
<MvASSIGN NAME = "Temporary.d.t_fails" VALUE = "{ Original.d.t_fails }">
<MvASSIGN NAME = "Temporary.d.c_fails" VALUE = "{ Original.d.c_fails }">
<MvASSIGN NAME = "Temporary.d.lo_date" VALUE = "{ Original.d.lo_date }">
<MvASSIGN NAME = "Temporary.d.page_len" VALUE = "{ Original.d.page_len }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_DB_Change_ProcessRecord_Modules" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ Original.d.id }">
<MvASSIGN NAME = "Temporary.d.type" VALUE = "{ Original.d.type }">
<MvASSIGN NAME = "Temporary.d.code" VALUE = "{ Original.d.code }">
<MvASSIGN NAME = "Temporary.d.name" VALUE = "{ Original.d.name }">
<MvASSIGN NAME = "Temporary.d.provider" VALUE = "{ Original.d.provider }">
<MvASSIGN NAME = "Temporary.d.version" VALUE = "{ Original.d.version }">
<MvASSIGN NAME = "Temporary.d.module" VALUE = "{ Original.d.module }">
<MvASSIGN NAME = "Temporary.d.refcount" VALUE = "{ Original.d.refcount }">
<MvASSIGN NAME = "Temporary.d.active" VALUE = "{ Original.d.active }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 4.00 }">
<MvASSIGN NAME = "Temporary.d.active" VALUE = "1">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.active" VALUE = "{ Original.d.active }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_New" PARAMETERS = "filename" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.filename EQ 'baskchrg.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'ordrchrg.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'std_fld.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_New_StandardFields() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'str_cty.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_New_StoreCountries() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'invent.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'upslopts.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_New_UpsellOptions() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'relprod.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'inv_set.dbf' }">
<MvOPEN NAME = "Upgrade_Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvDO FILE = "{ g.Module_Feature_INV_AD }" NAME = "l.ok" VALUE = "{ INV_Upgrade_Store_DB_New_InventorySettings() }">
<MvCLOSE NAME = "Upgrade_Domain">
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'affil.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'affern.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'affpay.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'afileml.dbf' }">
<MvOPEN NAME = "Upgrade_Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvDO FILE = "{ g.Module_Feature_AFF }" NAME = "l.ok" VALUE = "{ AFF_Upgrade_Store_DB_New_AffiliateEmail() }">
<MvCLOSE NAME = "Upgrade_Domain">
<MvFUNCTIONRETURN VALUE = "l.ok">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'afilmng.dbf' }">
<MvOPEN NAME = "Upgrade_Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvDO FILE = "{ g.Module_Feature_AFF }" NAME = "l.ok" VALUE = "{ AFF_Upgrade_Store_DB_New_AffiliateManage() }">
<MvCLOSE NAME = "Upgrade_Domain">
<MvFUNCTIONRETURN VALUE = "l.ok">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'afilopt.dbf' }">
<MvDO FILE = "{ g.Module_Feature_AFF }" NAME = "l.ok" VALUE = "{ AFF_Upgrade_Store_DB_New_AffiliateOptions() }">
<MvFUNCTIONRETURN VALUE = "l.ok">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'affsess.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'stats.dbf' }">
<MvDO FILE = "{ g.Module_Feature_STA }" NAME = "l.ok" VALUE = "{ STA_Upgrade_Store_DB_New_Stats() }">
<MvFUNCTIONRETURN VALUE = "l.ok">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'stasks.dbf' }">
<MvDO FILE = "{ g.Module_Feature_STP_AD }" NAME = "l.ok" VALUE = "{ STP_Upgrade_Store_DB_New_StoreTasks() }">
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'snotes.dbf' }">
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'prdsta.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'attempl.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'atmpatt.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'attmpop.dbf' }">
<MvFUNCTIONRETURN VALUE = 1>
</MvIF>
<MvFUNCTIONRETURN VALUE = 0>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_New_StandardFields" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.billing" VALUE = "O">
<MvASSIGN NAME = "Temporary.d.mode_fname" VALUE = "R">
<MvASSIGN NAME = "Temporary.d.mode_lname" VALUE = "R">
<MvASSIGN NAME = "Temporary.d.mode_email" VALUE = "R">
<MvASSIGN NAME = "Temporary.d.mode_comp" VALUE = "O">
<MvASSIGN NAME = "Temporary.d.mode_phone" VALUE = "R">
<MvASSIGN NAME = "Temporary.d.mode_fax" VALUE = "O">
<MvASSIGN NAME = "Temporary.d.mode_addr" VALUE = "R">
<MvASSIGN NAME = "Temporary.d.mode_city" VALUE = "R">
<MvASSIGN NAME = "Temporary.d.mode_zip" VALUE = "R">
<MvIF EXPR = "{ g.Current_Store_Country EQ 'DE' }">
<MvASSIGN NAME = "Temporary.d.mode_state" VALUE = "H">
<MvASSIGN NAME = "Temporary.d.mode_cntry" VALUE = "H">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.mode_state" VALUE = "R">
<MvASSIGN NAME = "Temporary.d.mode_cntry" VALUE = "R">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_New_StoreCountries" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ fexists( g.MerchantPath $ 'upgrade/' $ 'country.dbf' ) }">
<MvOPEN NAME = "Upgrade_Countries" DATABASE = "{ g.MerchantPath $ 'upgrade/' $ 'country.dbf' }">
<MvELSE>
<MvOPEN NAME = "Upgrade_Countries" DATABASE = "{ g.MerchantPath $ 'country.dbf' }">
</MvIF>
<MvIF EXPR = "{ MvOPEN_Error }">
<MvEVAL EXPR = "{ Upgrade_Log_Error( Upgrade_Store.d.name, 'Upgrade_Store_DB_New_StoreCountries', MvOPEN_Error ) }">
<MvELSE>
<MvGO NAME = "Upgrade_Countries" ROW = "top">
<MvWHILE EXPR = "{ NOT Upgrade_Countries.d.EOF }">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ Upgrade_Countries.d.id }">
<MvASSIGN NAME = "Temporary.d.name" VALUE = "{ Upgrade_Countries.d.name }">
<MvASSIGN NAME = "Temporary.d.alpha" VALUE = "{ Upgrade_Countries.d.alpha }">
<MvASSIGN NAME = "Temporary.d.numeric" VALUE = "{ Upgrade_Countries.d.numeric }">
<MvADD NAME = "Temporary">
<MvSKIP NAME = "Upgrade_Countries" ROWS = 1>
</MvWHILE>
<MvCLOSE NAME = "Upgrade_Countries">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_New_AffiliateOptions" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.active" VALUE = 0>
<MvASSIGN NAME = "Temporary.d.signup" VALUE = "A">
<MvASSIGN NAME = "Temporary.d.hits" VALUE = "0.00">
<MvASSIGN NAME = "Temporary.d.percent" VALUE = "0.00">
<MvASSIGN NAME = "Temporary.d.flat" VALUE = "0.00">
<MvASSIGN NAME = "Temporary.d.terms" VALUE = "">
<MvASSIGN NAME = "Temporary.d.pay_thresh" VALUE = "0.00">
<MvASSIGN NAME = "Temporary.d.link_image" VALUE = "">
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_New_UpsellOptions" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.prod_shown" VALUE = 1>
<MvASSIGN NAME = "Temporary.d.prod_sell" VALUE = 1>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord" PARAMETERS = "filename" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ l.filename EQ 'attr.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_Attributes() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'opts.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_Options() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'baskchrg.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_BasketCharges() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'ordrchrg.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_OrderCharges() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'products.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_Products() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'cats.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_Categories() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'basklist.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_BasketList() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'baskets.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_Baskets() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'baskopts.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_BasketOptions() }">
</MvIF>
<MvIF EXPR = "{ l.filename EQ 'ordopts.dbf' }">
<MvFUNCTIONRETURN VALUE = "{ Upgrade_Store_DB_Change_ProcessRecord_OrderOptions() }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 0>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_Attributes" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ Original.d.id }">
<MvASSIGN NAME = "Temporary.d.product_id" VALUE = "{ Original.d.product_id }">
<MvASSIGN NAME = "Temporary.d.default_id" VALUE = "{ Original.d.default_id }">
<MvASSIGN NAME = "Temporary.d.order" VALUE = "{ Original.d.order }">
<MvASSIGN NAME = "Temporary.d.code" VALUE = "{ Original.d.code }">
<MvASSIGN NAME = "Temporary.d.type" VALUE = "{ Original.d.type }">
<MvASSIGN NAME = "Temporary.d.prompt" VALUE = "{ Original.d.prompt }">
<MvASSIGN NAME = "Temporary.d.price" VALUE = "{ Original.d.price }">
<MvASSIGN NAME = "Temporary.d.required" VALUE = "{ Original.d.required }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 2.10 }">
<MvASSIGN NAME = "Temporary.d.cost" VALUE = "{ Original.d.price }">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.cost" VALUE = "{ Original.d.cost }">
</MvIF>
<MvIF EXPR = "{ g.Upgrade_Version_From LT 3.00 }">
<MvASSIGN NAME = "Temporary.d.image" VALUE = "">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.image" VALUE = "{ Original.d.image }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_Options" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ Original.d.id }">
<MvASSIGN NAME = "Temporary.d.attr_id" VALUE = "{ Original.d.attr_id }">
<MvASSIGN NAME = "Temporary.d.order" VALUE = "{ Original.d.order }">
<MvASSIGN NAME = "Temporary.d.code" VALUE = "{ Original.d.code }">
<MvASSIGN NAME = "Temporary.d.prompt" VALUE = "{ Original.d.prompt }">
<MvASSIGN NAME = "Temporary.d.price" VALUE = "{ Original.d.price }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 2.10 }">
<MvASSIGN NAME = "Temporary.d.cost" VALUE = "{ Original.d.price }">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.cost" VALUE = "{ Original.d.cost }">
</MvIF>
<MvIF EXPR = "{ g.Upgrade_Version_From LT 3.00 }">
<MvASSIGN NAME = "Temporary.d.image" VALUE = "">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.image" VALUE = "{ Original.d.image }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_BasketCharges" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.basket_id" VALUE = "{ Original.d.basket_id }">
<MvASSIGN NAME = "Temporary.d.charge_id" VALUE = "{ Original.d.charge_id }">
<MvASSIGN NAME = "Temporary.d.type" VALUE = "{ Original.d.type }">
<MvASSIGN NAME = "Temporary.d.desc" VALUE = "{ Original.d.desc }">
<MvASSIGN NAME = "Temporary.d.amount" VALUE = "{ Original.d.amount }">
<MvASSIGN NAME = "Temporary.d.disp_amt" VALUE = "{ Original.d.disp_amt }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 2.22 }">
<MvASSIGN NAME = "Temporary.d.module_id" VALUE = 0>
<MvASSIGN NAME = "Temporary.d.tax_exempt" VALUE = 0>
<MvELSE>
<MvASSIGN NAME = "Temporary.d.module_id" VALUE = "{ Original.d.module_id }">
<MvASSIGN NAME = "Temporary.d.tax_exempt" VALUE = "{ Original.d.tax_exempt }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_OrderCharges" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.order_id" VALUE = "{ Original.d.order_id }">
<MvASSIGN NAME = "Temporary.d.charge_id" VALUE = "{ Original.d.charge_id }">
<MvASSIGN NAME = "Temporary.d.type" VALUE = "{ Original.d.type }">
<MvASSIGN NAME = "Temporary.d.desc" VALUE = "{ Original.d.desc }">
<MvASSIGN NAME = "Temporary.d.amount" VALUE = "{ Original.d.amount }">
<MvASSIGN NAME = "Temporary.d.disp_amt" VALUE = "{ Original.d.disp_amt }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 2.22 }">
<MvASSIGN NAME = "Temporary.d.module_id" VALUE = 0>
<MvASSIGN NAME = "Temporary.d.tax_exempt" VALUE = 0>
<MvELSE>
<MvASSIGN NAME = "Temporary.d.module_id" VALUE = "{ Original.d.module_id }">
<MvASSIGN NAME = "Temporary.d.tax_exempt" VALUE = "{ Original.d.tax_exempt }">
</MvIF>
<MvIF EXPR = "{ Temporary.d.order_id }">
<MvADD NAME = "Temporary">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_Products" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ Original.d.id }">
<MvASSIGN NAME = "Temporary.d.catcount" VALUE = "{ Original.d.catcount }">
<MvASSIGN NAME = "Temporary.d.agrpcount" VALUE = "{ Original.d.agrpcount }">
<MvASSIGN NAME = "Temporary.d.pgrpcount" VALUE = "{ Original.d.pgrpcount }">
<MvASSIGN NAME = "Temporary.d.order" VALUE = "{ Original.d.order }">
<MvASSIGN NAME = "Temporary.d.code" VALUE = "{ Original.d.code }">
<MvASSIGN NAME = "Temporary.d.name" VALUE = "{ Original.d.name }">
<MvASSIGN NAME = "Temporary.d.thumbnail" VALUE = "{ Original.d.thumbnail }">
<MvASSIGN NAME = "Temporary.d.image" VALUE = "{ Original.d.image }">
<MvASSIGN NAME = "Temporary.d.price" VALUE = "{ Original.d.price }">
<MvASSIGN NAME = "Temporary.d.cost" VALUE = "{ Original.d.cost }">
<MvASSIGN NAME = "Temporary.d.desc" VALUE = "{ Original.d.desc }">
<MvASSIGN NAME = "Temporary.d.weight" VALUE = "{ Original.d.weight }">
<MvASSIGN NAME = "Temporary.d.taxable" VALUE = "{ Original.d.taxable }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 3.00 }">
<MvASSIGN NAME = "Temporary.d.active" VALUE = 1>
<MvELSE>
<MvASSIGN NAME = "Temporary.d.active" VALUE = "{ Original.d.active }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_Categories" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ Original.d.id }">
<MvASSIGN NAME = "Temporary.d.parent_id" VALUE = "{ Original.d.parent_id }">
<MvASSIGN NAME = "Temporary.d.agrpcount" VALUE = "{ Original.d.agrpcount }">
<MvASSIGN NAME = "Temporary.d.order" VALUE = "{ Original.d.order }">
<MvASSIGN NAME = "Temporary.d.code" VALUE = "{ Original.d.code }">
<MvASSIGN NAME = "Temporary.d.name" VALUE = "{ Original.d.name }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 3.00 }">
<MvASSIGN NAME = "Temporary.d.active" VALUE = 1>
<MvELSE>
<MvASSIGN NAME = "Temporary.d.active" VALUE = "{ Original.d.active }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_BasketList" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.session_id" VALUE = "{ Original.d.session_id }">
<MvASSIGN NAME = "Temporary.d.cust_id" VALUE = "{ Original.d.cust_id }">
<MvASSIGN NAME = "Temporary.d.basket_id" VALUE = "{ Original.d.basket_id }">
<MvASSIGN NAME = "Temporary.d.lastupdate" VALUE = "{ Original.d.lastupdate }">
<MvASSIGN NAME = "Temporary.d.order_id" VALUE = "{ Original.d.order_id }">
<MvASSIGN NAME = "Temporary.d.order_proc" VALUE = "{ Original.d.order_proc }">
<MvASSIGN NAME = "Temporary.d.ship_fname" VALUE = "{ Original.d.ship_fname }">
<MvASSIGN NAME = "Temporary.d.ship_lname" VALUE = "{ Original.d.ship_lname }">
<MvASSIGN NAME = "Temporary.d.ship_email" VALUE = "{ Original.d.ship_email }">
<MvASSIGN NAME = "Temporary.d.ship_comp" VALUE = "{ Original.d.ship_comp }">
<MvASSIGN NAME = "Temporary.d.ship_phone" VALUE = "{ Original.d.ship_phone }">
<MvASSIGN NAME = "Temporary.d.ship_fax" VALUE = "{ Original.d.ship_fax }">
<MvASSIGN NAME = "Temporary.d.ship_addr" VALUE = "{ Original.d.ship_addr }">
<MvASSIGN NAME = "Temporary.d.ship_city" VALUE = "{ Original.d.ship_city }">
<MvASSIGN NAME = "Temporary.d.ship_state" VALUE = "{ Original.d.ship_state }">
<MvASSIGN NAME = "Temporary.d.ship_zip" VALUE = "{ Original.d.ship_zip }">
<MvASSIGN NAME = "Temporary.d.ship_cntry" VALUE = "{ Original.d.ship_cntry }">
<MvASSIGN NAME = "Temporary.d.bill_fname" VALUE = "{ Original.d.bill_fname }">
<MvASSIGN NAME = "Temporary.d.bill_lname" VALUE = "{ Original.d.bill_lname }">
<MvASSIGN NAME = "Temporary.d.bill_email" VALUE = "{ Original.d.bill_email }">
<MvASSIGN NAME = "Temporary.d.bill_comp" VALUE = "{ Original.d.bill_comp }">
<MvASSIGN NAME = "Temporary.d.bill_phone" VALUE = "{ Original.d.bill_phone }">
<MvASSIGN NAME = "Temporary.d.bill_fax" VALUE = "{ Original.d.bill_fax }">
<MvASSIGN NAME = "Temporary.d.bill_addr" VALUE = "{ Original.d.bill_addr }">
<MvASSIGN NAME = "Temporary.d.bill_city" VALUE = "{ Original.d.bill_city }">
<MvASSIGN NAME = "Temporary.d.bill_state" VALUE = "{ Original.d.bill_state }">
<MvASSIGN NAME = "Temporary.d.bill_zip" VALUE = "{ Original.d.bill_zip }">
<MvASSIGN NAME = "Temporary.d.bill_cntry" VALUE = "{ Original.d.bill_cntry }">
<MvASSIGN NAME = "Temporary.d.tax" VALUE = "{ Original.d.tax }">
<MvASSIGN NAME = "Temporary.d.shipping" VALUE = "{ Original.d.shipping }">
<MvASSIGN NAME = "Temporary.d.ship_id" VALUE = "{ Original.d.ship_id }">
<MvASSIGN NAME = "Temporary.d.ship_data" VALUE = "{ Original.d.ship_data }">
<MvASSIGN NAME = "Temporary.d.pay_id" VALUE = "{ Original.d.pay_id }">
<MvASSIGN NAME = "Temporary.d.pay_data" VALUE = "{ Original.d.pay_data }">
<MvASSIGN NAME = "Temporary.d.total" VALUE = "{ Original.d.total }">
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_Baskets" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.id" VALUE = "{ Original.d.id }">
<MvASSIGN NAME = "Temporary.d.line_id" VALUE = "{ Original.d.line_id }">
<MvASSIGN NAME = "Temporary.d.product_id" VALUE = "{ Original.d.product_id }">
<MvASSIGN NAME = "Temporary.d.code" VALUE = "{ Original.d.code }">
<MvASSIGN NAME = "Temporary.d.name" VALUE = "{ Original.d.name }">
<MvASSIGN NAME = "Temporary.d.price" VALUE = "{ Original.d.price }">
<MvASSIGN NAME = "Temporary.d.weight" VALUE = "{ Original.d.weight }">
<MvASSIGN NAME = "Temporary.d.taxable" VALUE = "{ Original.d.taxable }">
<MvASSIGN NAME = "Temporary.d.upsold" VALUE = "{ Original.d.upsold }">
<MvASSIGN NAME = "Temporary.d.quantity" VALUE = "{ Original.d.quantity }">
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_BasketOptions" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.line_id" VALUE = "{ Original.d.line_id }">
<MvASSIGN NAME = "Temporary.d.attr_id" VALUE = "{ Original.d.attr_id }">
<MvASSIGN NAME = "Temporary.d.attr_code" VALUE = "{ Original.d.attr_code }">
<MvASSIGN NAME = "Temporary.d.option_id" VALUE = "{ Original.d.option_id }">
<MvASSIGN NAME = "Temporary.d.opt_code" VALUE = "{ Original.d.opt_code }">
<MvASSIGN NAME = "Temporary.d.price" VALUE = "{ Original.d.price }">
<MvASSIGN NAME = "Temporary.d.data" VALUE = "{ Original.d.data }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 3.00 }">
<MvASSIGN NAME = "Temporary.d.data_long" VALUE = "">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.data_long" VALUE = "{ Original.d.data_long }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Store_DB_Change_ProcessRecord_OrderOptions" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "Temporary.d.line_id" VALUE = "{ Original.d.line_id }">
<MvASSIGN NAME = "Temporary.d.attr_id" VALUE = "{ Original.d.attr_id }">
<MvASSIGN NAME = "Temporary.d.attr_code" VALUE = "{ Original.d.attr_code }">
<MvASSIGN NAME = "Temporary.d.option_id" VALUE = "{ Original.d.option_id }">
<MvASSIGN NAME = "Temporary.d.opt_code" VALUE = "{ Original.d.opt_code }">
<MvASSIGN NAME = "Temporary.d.price" VALUE = "{ Original.d.price }">
<MvASSIGN NAME = "Temporary.d.data" VALUE = "{ Original.d.data }">
<MvIF EXPR = "{ g.Upgrade_Version_From LT 3.00 }">
<MvASSIGN NAME = "Temporary.d.data_long" VALUE = "">
<MvELSE>
<MvASSIGN NAME = "Temporary.d.data_long" VALUE = "{ Original.d.data_long }">
</MvIF>
<MvADD NAME = "Temporary">
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Domain_Copy_Scripts" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.ok" VALUE = "{ Upgrade_SCopy( g.Version_Path $ 'merchant.mv-stub', 'merchant.mv' ) }">
<MvIF EXPR = "{ l.ok }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Upgrade_SCopy( g.Version_Path $ 'admin.mv-stub', 'admin.mv' ) }">
</MvIF>
<MvIF EXPR = "{ l.ok }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Upgrade_SCopy( g.Version_Path $ 'remove.mv-stub', 'remove.mv' ) }">
</MvIF>
<MvIF EXPR = "{ l.ok }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Upgrade_SCopy( g.Version_Path $ 'paylinkp.mv-stub', 'paylinkp.mv' ) }">
</MvIF>
<MvIF EXPR = "{ l.ok }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Upgrade_SCopy( g.Version_Path $ 'paylinki.mv-stub', 'paylinki.mv' ) }">
</MvIF>
<MvIF EXPR = "{ l.ok }">
<MvASSIGN NAME = "l.ok" VALUE = "{ Upgrade_SCopy( g.Version_Path $ 'anacomp.mv-stub', 'anacomp.mv' ) }">
</MvIF>
<MvASSIGN NAME = "g.Overall_Pos" VALUE = "{ g.Overall_Pos + 1 }">
<MvFUNCTIONRETURN VALUE = "l.ok">
</MvFUNCTION>
<MvFUNCTION NAME = "JavaScriptEncode" PARAMETERS = "field" STANDARDOUTPUTLEVEL = "">
<MvFUNCTIONRETURN VALUE = "{ glosub( encodeentities( l.field ), '\'', '\\\'' ) }">
</MvFUNCTION>
<MvFUNCTION NAME = "DrawImgButton_Upload" PARAMETERS = "pressed" STANDARDOUTPUTLEVEL = "">
<MvLOCALIZED NAME = "l.alt" ID = "MER-ADM-00730">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upload File</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Datei auf den Server �bertragen</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvIF EXPR = "{ l.pressed }">
<MvASSIGN NAME = "l.image" VALUE = "{ g.AdminGraphics_Path $ 'upload.gif' }">
<MvELSE>
<MvASSIGN NAME = "l.image" VALUE = "{ g.AdminGraphics_Path $ 'upload.gif' }">
</MvIF>
<MvFUNCTIONRETURN VALUE = "{ '<IMG ALT = "' $ l.alt $ '" BORDER = 0 SRC = "' $ l.image $ '">' }">
</MvFUNCTION>
<MvFUNCTION NAME = "Miva_ValidateFileUpload" PARAMETERS = "field, filename, content_type" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.ok" VALUE = 1>
<MvASSIGN NAME = "l.maxfilesize" VALUE = "-1">
<MvIF EXPR = "{ l.ok }">
debug validate user
<MvIF EXPR = "{ ( g.FileUpload_Type EQ 'Module' ) }">
<MvASSIGN NAME = "l.maxfilesize" VALUE = 0>
</MvIF>
</MvIF>
<MvFUNCTIONRETURN VALUE = "{ l.maxfilesize }">
</MvFUNCTION>
<MvFUNCTION NAME = "Miva_ProcessFileUpload" PARAMETERS = "field, filename, status, tempfile, content_type, size" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.ok" VALUE = "1">
<MvASSIGN NAME = "g.sessionurl" VALUE = "{ s.documenturl }">
<MvDO FILE = "4.00/lib/config.mv">
<MvASSIGN NAME = "g.Upgrade_Filename_Admin" VALUE = "{ g.Version_Path $ g.Filename_Admin }">
<MvASSIGN NAME = "g.Upgrade_Library_Utilities" VALUE = "{ g.Version_Path $ g.Library_Utilities }">
<MvASSIGN NAME = "g.Upgrade_Library_DB" VALUE = "{ g.Version_Path $ g.Library_DB }">
<MvOPEN NAME = "Domain" DATABASE = "{ g.MerchantPath $ 'domain.dbf' }">
<MvIF EXPR = "{ 'https://' IN g.sessionurl }">
<MvASSIGN NAME = "g.Secure" VALUE = 1>
<MvELSE>
<MvASSIGN NAME = "g.Secure" VALUE = 0>
</MvIF>
<MvIF EXPR = "{ g.Secure }">
<MvASSIGN NAME = "g.Module_Root_Versionless" VALUE = "{ Domain.d.mod_sroot }">
<MvELSE>
<MvASSIGN NAME = "g.Module_Root_Versionless" VALUE = "{ Domain.d.mod_root }">
</MvIF>
<MvIF EXPR = "{ Upgrade_Numeric_Version( Domain.d.version ) LT '4.00' }">
<MvASSIGN NAME = "g.Old_Module_Root" VALUE = "{ g.Module_Root_Versionless }">
<MvELSE>
<MvASSIGN NAME = "g.Old_Module_Root" VALUE = "{ g.Module_Root $ Upgrade_Numeric_Version( Domain.d.version ) $ '/' }">
</MvIF>
<MvASSIGN NAME = "g.Module_Root" VALUE = "{ g.Module_Root_Versionless $ g.Version_Path }">
<MvDO FILE = "{ g.Upgrade_Library_Utilities }" NAME = "l.ok" VALUE = "{ SetPaths() }">
<MvIF EXPR = "{ l.status EQ 'COMPLETE' }">
<MvASSIGN NAME = "l.filename_nopath" VALUE = "{ glosub( l.filename, '\\', '/' ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ '/' IN l.filename_nopath }">
<MvASSIGN NAME = "l.len" VALUE = "{ len( l.filename_nopath ) }">
<MvWHILE EXPR = "{ l.pos }">
<MvASSIGN NAME = "l.filename_nopath" VALUE = "{ substring( l.filename_nopath, l.pos + 1, len( l.filename_nopath ) - l.pos ) }">
<MvASSIGN NAME = "l.pos" VALUE = "{ '/' IN l.filename_nopath }">
<MvASSIGN NAME = "l.len" VALUE = "{ len( l.filename_nopath ) }">
</MvWHILE>
<MvIF EXPR = "{ g.FileUpload_Type EQ 'Module' }">
<MvASSIGN NAME = "l.ok" VALUE = "{ ProcessFileUpload_Module( l.tempfile, l.filename_nopath ) }">
</MvIF>
</MvIF>
<MvCLOSE NAME = "Domain">
<MvIF EXPR = "{ NOT l.ok }">
<MvASSIGN NAME = "g.Error" VALUE = 1>
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "ProcessFileUpload_Module" PARAMETERS = "tempfile, filename_nopath" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.ok" VALUE = "{ fscopy( l.tempfile, g.Module_Root $ l.tempfile ) }">
<MvIF EXPR = "{ NOT l.ok }">
<MvLOCALIZED NAME = "g.FileUpload_Error" ID = "MER-ADM-00017">
<MvLOCALIZED-TOKEN NAME = "tempfile" VALUE = "{ l.tempfile }">
<MvLOCALIZED-TOKEN NAME = "modulefile" VALUE = "{ g.Module_Root $ l.tempfile }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Unable to copy '%tempfile%' to '%modulefile%'</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">'%tempfile%' kann nicht zu '%modulefile%' kopiert werden</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvELSE>
<MvDO FILE = "{ g.Module_Root $ l.tempfile }" NAME = "l.module_type" VALUE = "{ Module_Type() }">
<MvDO FILE = "{ g.Module_Root $ l.tempfile }" NAME = "l.module_code" VALUE = "{ Module_Code() }">
<MvDO FILE = "{ g.Module_Root $ l.tempfile }" NAME = "l.module_name" VALUE = "{ Module_Name() }">
<MvDO FILE = "{ g.Module_Root $ l.tempfile }" NAME = "l.module_provider" VALUE = "{ Module_Provider() }">
<MvDO FILE = "{ g.Module_Root $ l.tempfile }" NAME = "l.module_api_version" VALUE = "{ Module_API_Version() }">
<MvDO FILE = "{ g.Module_Root $ l.tempfile }" NAME = "l.module_version_number" VALUE = "{ Module_Version() }">
<MvCOMMENT>
<MvIF EXPR = "{ NOT g.FileUpload_Error }">
<MvIF EXPR = "{ len( g.FileUpload_Data ) }">
<MvDO FILE = "{ g.Library_DB }" NAME = "l.found" VALUE = "{ Module_Find_Code( g.FileUpload_Data ) }">
<MvIF EXPR = "{ l.found }">
<MvIF EXPR = "{ Modules.d.code NE l.module_code }">
<MvLOCALIZED NAME = "g.FileUpload_Error" ID = "MER-ADM-00018">
<MvLOCALIZED-TOKEN NAME = "modulename" VALUE = "{ Modules.d.name }">
<MvLOCALIZED-TOKEN NAME = "filename" VALUE = "{ l.filename_nopath }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Module '%modulesname%' cannot be upgraded by '%filename%'</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Modul '%modulesname%' kann nicht mit '%filename%' aktualisiert werden</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvELSE>
<MvIF EXPR = "{ Modules.d.version GT l.module_version_number }">
<MvLOCALIZED NAME = "g.FileUpload_Error" ID = "MER-ADM-00019">
<MvLOCALIZED-TOKEN NAME = "filename" VALUE = "{ l.filename_nopath }">
<MvLOCALIZED-TOKEN NAME = "moduleversion" VALUE = "{ l.module_version_number }">
<MvLOCALIZED-TOKEN NAME = "installedversion" VALUE = "{ Modules.d.version }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">The file '%filename%' is version %moduleversion%, which is older than the installed version, %installedversion%</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Datei '%filename%' ist die Version %moduleversion%, die �lter als die installierte Version %installedversion% ist</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
</MvIF>
</MvIF>
<MvELSE>
<MvDO FILE = "{ g.Library_DB }" NAME = "l.found" VALUE = "{ Module_Find_Code( l.module_code ) }">
<MvIF EXPR = "{ l.found }">
<MvIF EXPR = "{ Modules.d.version GT l.module_version_number }">
<MvLOCALIZED NAME = "g.FileUpload_Error" ID = "MER-ADM-00020">
<MvLOCALIZED-TOKEN NAME = "filename" VALUE = "{ l.filename_nopath }">
<MvLOCALIZED-TOKEN NAME = "moduleversion" VALUE = "{ l.module_version_number }">
<MvLOCALIZED-TOKEN NAME = "installedversion" VALUE = "{ Modules.d.version }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">The file '%filename%' is version %moduleversion%, which is older than the installed version, %installedversion%</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Datei '%filename%' ist die Version %moduleversion%, die �lter als die installierte Version %installedversion% ist</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
</MvIF>
</MvIF>
</MvIF>
</MvCOMMENT>
<MvIF EXPR = "{ NOT g.FileUpload_Error }">
<MvASSIGN NAME = "l.path" VALUE = "{ g.Module_Path }">
<MvIF EXPR = "{ l.module_type EQ 'UI' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'ui/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'CURRENCY' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'currency/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'TAX' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'tax/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'SHIPPING' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'shipping/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'PAYMENT' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'payment/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'FULFILLMENT' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'fulfill/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'BATCHREPORT' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'batch/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'IMPORT' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'import/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'EXPORT' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'export/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'LOG' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'log/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'SYSTEM' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'system/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'STOREUTIL' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'util/' }">
</MvIF>
<MvIF EXPR = "{ l.module_type EQ 'WIZARD' OR l.module_type EQ 'STOREWIZARD' }">
<MvASSIGN NAME = "l.path" VALUE = "{ l.path $ 'wizard/' }">
</MvIF>
<MvIF EXPR = "{ NOT( sexists( g.Module_Root $ l.path ) ) }">
<MvASSIGN NAME = "l.ok" VALUE = "{ smkdir( g.Module_Root $ l.path ) }">
<MvIF EXPR = "{ NOT l.ok }">
<MvLOCALIZED NAME = "g.FileUpload_Error" ID = "MER-ADM-00021">
<MvLOCALIZED-TOKEN NAME = "directory" VALUE = "{ g.Module_Root $ l.path }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Unable to create directory '%directory%'</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Verzeichnis '%directory%' kann nicht erstellt werden</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</MvIF>
</MvIF>
<MvIF EXPR = "{ l.ok }">
<MvIF EXPR = "{ sexists( g.Module_Root $ l.path $ l.filename_nopath ) AND ( g.FileUpload_Overwrite NE 'Yes' ) }">
<MvLOCALIZED NAME = "g.FileUpload_Error" ID = "MER-ADM-00741">
<MvLOCALIZED-TOKEN NAME = "file" VALUE = "{ g.Module_Root $ l.path $ l.filename_nopath }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">The file %file% already exists</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Die Datei %file% ist bereits vorhanden</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvELSE>
<MvASSIGN NAME = "l.ok" VALUE = "{ scopy( g.Module_Root $ l.tempfile, g.Module_Root $ l.path $ l.filename_nopath ) }">
<MvIF EXPR = "{ NOT l.ok }">
<MvLOCALIZED NAME = "g.FileUpload_Error" ID = "MER-ADM-00022">
<MvLOCALIZED-TOKEN NAME = "source" VALUE = "{ g.Module_Root $ l.tempfile }">
<MvLOCALIZED-TOKEN NAME = "destination" VALUE = "{ g.Module_Root $ l.path $ l.filename_nopath }">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Unable to copy '%source%' to '%destination%'</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">'%source%' kann nicht zu '%destination%' kopiert werden</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvELSE>
<MvASSIGN NAME = "g.FileUpload_Path" VALUE = "{ l.path $ l.filename_nopath }">
</MvIF>
</MvIF>
</MvIF>
</MvIF>
<MvASSIGN NAME = "l.deleted" VALUE = "{ sdelete( g.Module_Root $ l.tempfile ) }">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Action_FileUpload" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvIF EXPR = "{ len( g.FileUpload_Error ) }">
<MvASSIGN NAME = "l.error" VALUE = "{ Upgrade_FieldError( '', 'FileUpload_File', g.FileUpload_Error ) }">
<MvELSE>
<MvCOMMENT>
<MvEVAL EXPR = "{ '<SCRIPT LANGUAGE = "JavaScript">' $ asciichar( 10 ) $
'<!--' $ asciichar( 10 ) $
'opener.document.' $ encodeattributes( g.FileUpload_Form ) $ '.' $ encodeattributes( g.FileUpload_Field ) $ '.value = \'' $ JavaScriptEncode( g.FileUpload_Path ) $ '\';' $ asciichar( 10 ) $
'window.close()' $ asciichar( 10 ) $
'//-->' $ asciichar( 10 ) $
'</SCRIPT>' }">
</MvCOMMENT>
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Screen_FileUpload" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<HEAD>
<META HTTP-EQUIV = "pragma" CONTENT = "no-cache">
<SCRIPT LANGUAGE = "JavaScript">
<!--
function FieldError( field, message )
{
document.forms[ Screen ].elements[ field ].select();
document.forms[ Screen ].elements[ field ].focus();
alert( message );
}
//-->
</SCRIPT>
<TITLE>
<MvLOCALIZED ID = "MER-ADM-00742">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upload File</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Datei �bertragen</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</TITLE>
<MvIF EXPR = "{ g.Secure }">
<BASE HREF = "{ g.secure_baseurl }">
<MvELSE>
<BASE HREF = "{ g.baseurl }">
</MvIF>
</HEAD>
<MvIF EXPR = "{ len( g.Error_Field ) }">
<MvEVAL EXPR = "{ '<BODY BGCOLOR = "#ffffff" ONLOAD = "FieldError( \'' $ JavaScriptEncode( g.Error_Field ) $ '\', \'' $ JavaScriptEncode( g.Error_Field_Message ) $ '\' );">' }">
<MvELSE>
<BODY BGCOLOR = "#ffffff">
</MvIF>
<FORM NAME = "{ encodeentities( g.Screen ) }" ENCTYPE = "multipart/form-data" METHOD = "POST" ACTION = "{ g.sessionurl }">
<INPUT TYPE = "hidden" NAME = "Screen" VALUE = "FUPL">
<INPUT TYPE = "hidden" NAME = "Action" VALUE = "FUPL">
<INPUT TYPE = "hidden" NAME = "Tab" VALUE = "">
<INPUT TYPE = "hidden" NAME = "Have_Fields" VALUE = "">
<MvIF EXPR = "{ len( g.Store_Code ) }">
<MvHIDE FIELDS = "g.Store_Code">
</MvIF>
<MvCOMMENT> Title </MvCOMMENT>
<TABLE BORDER = 0 CELLPADDING = 1 CELLSPACING = 0 WIDTH = "100%">
<TR><TD BGCOLOR = "#000000">
<TABLE BORDER = 0 CELLPADDING = 5 CELLSPACING = 0 WIDTH = "100%">
<TR><TD BGCOLOR = "#f0f0f0" WIDTH = "100%">
<FONT FACE = "Arial, Helvetica"><B>
<MvLOCALIZED ID = "MER-ADM-00030">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Upload File</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">Datei auf den Server �bertragen</MvLOCALIZED-TEXT>
</MvLOCALIZED>
</B></FONT>
</TD></TR>
</TABLE>
</TD></TR>
</TABLE>
<BR>
<MvHIDE FIELDS = "g.FileUpload_Form, g.FileUpload_Field, g.FileUpload_Type, g.FileUpload_Data">
<TABLE BORDER = 0 CELLPADDING = 1 CELLSPACING = 0 WIDTH = "100%">
<TR><TD BGCOLOR = "#000000">
<TABLE BORDER = 0 CELLPADDING = 5 CELLSPACING = 0 WIDTH = "100%">
<TR><TD BGCOLOR = "#f0f0f0">
<TABLE BORDER = 0 CELLPADDING = 2 CELLSPACING = 0>
<TR><TD>
</TD><TD VALIGN = "middle">
<FONT FACE = "Arial, Helvetica" SIZE = "-1"><B>
<MvLOCALIZED NAME = "l.text" ID = "MER-ADM-00031">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Overwrite</MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE">�berschreiben</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<MvDO FILE = "{ g.Library_Utilities }" NAME = "l.foo" VALUE = "{ DrawCheckbox( g.FileUpload_Overwrite, 'FileUpload_Overwrite', 'Yes', l.text ) }">
</B></FONT>
</TD></TR>
<TR><TD>
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-ADM-00830">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><B>File:</B></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><B>Datei:</B></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD WIDTH = "100%">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<INPUT TYPE = "file" SIZE = "40" NAME = "FileUpload_File">
</FONT>
</TD></TR>
</TABLE>
</TD></TR>
</TABLE>
</TD></TR>
</TABLE>
<BR>
<TABLE BORDER = 0 CELLPADDING = 1 CELLSPACING = 0 WIDTH = "100%">
<TR><TD BGCOLOR = "#000000">
<TABLE BORDER = 0 CELLPADDING = 5 CELLSPACING = 0 WIDTH = "100%">
<TR><TD BGCOLOR = "#f0f0f0" WIDTH = "100%">
</TD><TD BGCOLOR = "#f0f0f0" ALIGN = "right">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-ADM-00743">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><INPUT TYPE = "submit" VALUE = "Upload"></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><INPUT TYPE = "submit" VALUE = "�bertragen"></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD><TD BGCOLOR = "#f0f0f0" ALIGN = "right">
<FONT FACE = "Arial, Helvetica" SIZE = "-1">
<MvLOCALIZED ID = "MER-ADM-00744">
<MvLOCALIZED-TEXT LANGUAGE = "en-US"><INPUT TYPE = "button" VALUE = "Cancel" ONCLICK = "window.close();"></MvLOCALIZED-TEXT>
<MvLOCALIZED-TEXT LANGUAGE = "de-DE"><INPUT TYPE = "button" VALUE = "Abbrechen" ONCLICK = "window.close();"></MvLOCALIZED-TEXT>
</MvLOCALIZED>
</FONT>
</TD></TR>
</TABLE>
</TD></TR>
</FORM>
</TABLE>
</FORM>
</BODY>
<MvIF EXPR = "{ g.EndScreen }">
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
<MvFUNCTIONRETURN VALUE = 1>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Parse_Boolean" PARAMETERS = "flag" STANDARDOUTPUTLEVEL = "">
<MvASSIGN NAME = "l.flag" VALUE = "{ toupper( substring( ltrim( flag ), 1, 1 ) ) }">
<MvIF EXPR = "{ l.flag EQ 'Y' }">
<MvFUNCTIONRETURN VALUE = "1">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "0">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Deactivate_Skipped_Modules" STANDARDOUTPUTLEVEL = "text, html, compresswhitespace">
<MvASSIGN NAME = "l.ok" VALUE = "1">
<MvIF EXPR = "{ len( g.skip ) }">
<MvOPEN NAME = "Modules"
DATABASE = "{ g.MerchantPath $ 'modules.dbf' }"
INDEXES = "{ g.MerchantPath $ 'mod_id.mvx, ' $
g.MerchantPath $ 'mod_code.mvx, ' $
g.MerchantPath $ 'mod_type.mvx' }">
<MvIF EXPR = "{ MvOPEN_Error }">
<MvDO FILE = "{ g.Library_Filename_Utilities }" NAME = "l.ok" VALUE = "{ Error( 'MER-DTB-00032', MvOPEN_Error ) }">
<MvELSE>
<MvFILTER NAME = "Modules" FILTER = "{ NOT Modules.d.deleted }">
<MvGO NAME = "Modules" ROW = "top">
<MvWHILE EXPR = "{ NOT modules.d.EOF }">
<MvIF EXPR = "{ Modules.d.active }">
<MvIF EXPR = "{ ':' $ Modules.d.id $ ':' IN g.Skip }">
<MvASSIGN NAME = "Modules.d.active" VALUE = "0">
<MvUPDATE NAME = "Modules">
</MvIF>
</MvIF>
<MvSKIP NAME = "Modules" ROWS = 1>
</MvWHILE>
</MvIF>
</MvIF>
<MvFUNCTIONRETURN VALUE = "{ l.ok }">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Intercept">
<debug this should be 4.0 after testing>
<MvASSIGN NAME = "l.upgrade_version" VALUE = "4.00">
<MvIF EXPR = "{ Upgrade_Numeric_Version( Domain.d.version ) GE l.upgrade_version }">
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
<MvASSIGN NAME = "l.foo" VALUE = "{ Upgrade_Load_ISP_Defaults() }">
<MvIF EXPR = "{ ( NOT g.Upgrade_ISP_Force_Upgrade ) AND ( Domain.d.upgd_ignr GE l.upgrade_version ) }">
<MvFUNCTIONRETURN VALUE = "1">
</MvIF>
<MvEVAL EXPR = "{ Upgrade_Setup_Redirect_JavaScript() }">
<SCRIPT LANGUAGE = "JavaScript">
<!--
redirect_to_upgrade();
//-->
</SCRIPT>
<MvEXIT>
<MvFUNCTIONRETURN VALUE = "1">
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Notification_Request">
<MvASSIGN NAME = "l.upgrade_version" VALUE = "4.00">
<MvIF EXPR = "{ Upgrade_Numeric_Version( Domain.d.version ) LT l.upgrade_version }">
<MvFUNCTIONRETURN VALUE = "1">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "0">
</MvIF>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Notification_Line">
<MvEVAL EXPR = "{ Upgrade_Setup_Redirect_JavaScript() }">
<MvLOCALIZED NAME = "l.upgrade_message" ID = "MER-UPG-00152">
<MvLOCALIZED-TEXT LANGUAGE = "en-US">Click here to upgrade to Miva Merchant 4.0</MvLOCALIZED-TEXT>
</MvLOCALIZED>
<A HREF = "JavaScript:redirect_to_upgrade()"><MvEVAL EXPR = "{ l.upgrade_message }"></A>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Setup_Redirect_JavaScript">
<MvASSIGN NAME = "g.target_url" VALUE = "{ g.secure_baseurl $ 'upgrade.mv?Session_ID=' $ g.Session_ID $ '&UpgradeFromAdmin=Yes' }">
<MvDO FILE = "{ g.Module_Admin }" NAME = "l.javascript" VALUE = "{ JavaScript_SetVariables( 'g', 'target_url' ) }">
<MvEVAL EXPR = "{l.javascript}">
<SCRIPT LANGUAGE = "JavaScript">
<!--
function redirect_to_upgrade()
{
parent.location = target_url;
}
//-->
</SCRIPT>
</MvFUNCTION>
<MvFUNCTION NAME = "Upgrade_Numeric_Version" PARAMETERS = "version">
<MvASSIGN NAME = "l.pos" VALUE = "{ 'u' CIN l.version }">
<MvIF EXPR = "{ l.pos }">
<MvFUNCTIONRETURN VALUE = "{ substring( l.version, 1, l.pos - 1 ) }">
<MvELSE>
<MvFUNCTIONRETURN VALUE = "{ l.version }">
</MvIF>
</MvFUNCTION>