/* Copyright (c) Oracle Corporation 1996.  All Rights Reserved */

/*****************************************************************************
  NAME
    D2SCP60.ins - V3 installation script for Windows PVCS Interface.

  DESCRIPTION
    This script installs Windows PVCS Interface.

  MODIFIED      MM/DD/YY        REASON
   pgupta       10/01/97        Created
*****************************************************************************/

{
    if (doit)
    {
        /*****************************
        Set the VRF-INS script ratchet
        ******************************/
        ins_ratchet = "6.0.0.0.0";
        execute("%installer_home%%dir_separator%%operating_system%.ins");

        permit_retry_operations  = TRUE;
        permit_ignore_operations = TRUE;
        permit_process_operations= TRUE;


        /******************************
        Get the path for VGS60 variable
        *******************************/
        {
            VGS60     = translate("VGS60", ora_config, product_filename(current_product));
            set_vgs60 = FALSE;
        }
        [
            'OS_ERROR,'INVALID_FILE_NAME,
            'PERMISSION_DENIED,'UNBOUND_ENVIRONMENT_VARIABLE, 'FILE_NOT_FOUND:
             VGS60 = "%ORACLE_HOME%%dir_separator%TOOLS%dir_separator%COMMON60";
        ]

        /***************************************************************
         Registering map variables except Installer_home and oracle_home
        ****************************************************************/
         win32_register_map_variable("VGS60");
         win32_register_map_variable("D2SCP");
         win32_register_map_variable("OPEN2K60_DOCS");


        /*************
        Install Parent
        **************/
        if(install_parent)          
            install(product_parent(current_product));
        /*************/

        /******************
        Install the product
        *******************/
        ui_product(instantiate(display_product_label));

        ui_action(instantiate(install_files));
        copy(deinst);

        ui_action(instantiate(install_dll));
        copy(dll);

        ui_action(instantiate(install_files));
        copy(res);

        /************************************************************
        Delete the Old Program Group if present and Install the new
        Program Group
        *************************************************************/

        if(exists("%D2SCP%\d2scp.pdf"))
        {
	    OPEN2K60_DOCS_TMP = OPEN2K60_DOCS;
          OPEN2K60_DOCS = "Oracle Developer 6.0 Doc";
          windows_delete_icons(doc);
          OPEN2K60_DOCS = OPEN2K60_DOCS_TMP;
        }
        copy(doc);
        /******************/

        /****************************************
        Set Open Interfaces Variables....
        *****************************************/
        if (set_dev2000_sourcecontrol)
        {
            modify("DEV2000_SOURCECONTROL", DEV2000_SOURCECONTROL, ora_config); /* add DEV2000_SOURCECONTROL in Registry */
            win32_register_key("$ORACLE","","DEV2000_SOURCECONTROL",'REPLICATE);
        }

        if (set_dev2000_project)
        {
            modify("DEV2000_PROJECT", DEV2000_PROJECT, ora_config); /* add DEV2000_PROJECT in Registry */
            win32_register_key("$ORACLE","","DEV2000_PROJECT",'REPLICATE);
        }

        if (set_dev2000_scviewer)
        {
            modify("DEV2000_SCVIEWER", DEV2000_SCVIEWER, ora_config); /* add DEV2000_SCVIEWER in Registry */
            win32_register_key("$ORACLE","","DEV2000_SCVIEWER",'REPLICATE);
        }
        /**************************/

        /*******************
        Install dependencies
        ********************/
        ui_product(instantiate(display_product_label));

        while(not(empty(install_dependency_list)))
        {
            next_dependency = first(install_dependency_list);
            install_dependency_list = rest(install_dependency_list);

            install(next_dependency);
        }
        /*******************/

        permit_retry_operations = TRUE;

        /*********************************
        Register and Reference the product
        and remove delold
        **********************************/
        EXECUTE_SCRIPT = "REGISTER_REFERENCE_PRODUCT";
        execute("%installer_home%%dir_separator%d2kr2ins.usr");

        /*********************
        Reference dependencies
        **********************/
        ui_action(instantiate(reference_dependencies));

        {reference(current_product,product_parent(current_product));}  /* reference parent */
        ['UNREGISTERED_PRODUCT: continue();]
        /*********************/

        permit_retry_operations = FALSE;

        set("acro_flag", TRUE, 'GLOBAL);
    } /*END if doit*/
    [
        'UNREGISTERED_PRODUCT: continue();
            'CANCEL: signal('FAILURE, instantiate(halt_installation));
    ]
} /*END d2scp20.ins*/
