Leaked source code of windows server 2003
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//*********************************************************************
//* Microsoft Windows **
//* Copyright(c) Microsoft Corp., 1994 **
//*********************************************************************
//
// BILLOPT.CPP - Functions for
//
// HISTORY:
//
// 05/13/98 donaldm Created.
//
//*********************************************************************
#include "pre.h"
const TCHAR cszBillOpt[] = TEXT("BILLOPT");
/*******************************************************************
NAME: BillingOptInitProc
SYNOPSIS: Called when page is displayed
ENTRY: hDlg - dialog window fFirstInit - TRUE if this is the first time the dialog is initialized, FALSE if this InitProc has been called before (e.g. went past this page and backed up)
********************************************************************/ BOOL CALLBACK BillingOptInitProc ( HWND hDlg, BOOL fFirstInit, UINT *puNextPage ) { // if we've travelled through external apprentice pages,
// it's easy for our current page pointer to get munged,
// so reset it here for sanity's sake.
gpWizardState->uCurrentPage = ORD_PAGE_BILLINGOPT; if (!fFirstInit) { ASSERT(gpWizardState->lpSelectedISPInfo); gpWizardState->lpSelectedISPInfo->DisplayTextWithISPName(GetDlgItem(hDlg,IDC_BILLINGOPT_INTRO), IDS_BILLINGOPT_INTROFMT, NULL); gpWizardState->pICWWebView->ConnectToWindow(GetDlgItem(hDlg, IDC_BILLINGOPT_HTML), PAGETYPE_BILLING); // Navigate to the Billing HTML
gpWizardState->lpSelectedISPInfo->DisplayHTML(gpWizardState->lpSelectedISPInfo->get_szBillingFormPath()); // Load any previsouly saved state data for this page
gpWizardState->lpSelectedISPInfo->LoadHistory((BSTR)A2W(cszBillOpt)); } return TRUE; }
/*******************************************************************
NAME: BillingOptOKProc
SYNOPSIS: Called when Next or Back btns pressed from page
ENTRY: hDlg - dialog window fForward - TRUE if 'Next' was pressed, FALSE if 'Back' puNextPage - if 'Next' was pressed, proc can fill this in with next page to go to. This parameter is ingored if 'Back' was pressed. pfKeepHistory - page will not be kept in history if proc fills this in with FALSE.
EXIT: returns TRUE to allow page to be turned, FALSE to keep the same page.
********************************************************************/ BOOL CALLBACK BillingOptOKProc ( HWND hDlg, BOOL fForward, UINT *puNextPage, BOOL *pfKeepHistory ) { // Save any data data/state entered by the user
gpWizardState->lpSelectedISPInfo->SaveHistory((BSTR)A2W(cszBillOpt));
if (fForward) { // Need to form Billing Query String
TCHAR szBillingOptionQuery [INTERNET_MAX_URL_LENGTH]; // Clear the Query String.
memset(szBillingOptionQuery, 0, sizeof(szBillingOptionQuery)); // Attach the walker to the curent page
// Use the Walker to get the query string
IWebBrowser2 *lpWebBrowser; gpWizardState->pICWWebView->get_BrowserObject(&lpWebBrowser); gpWizardState->pHTMLWalker->AttachToDocument(lpWebBrowser); gpWizardState->pHTMLWalker->get_FirstFormQueryString(szBillingOptionQuery); // Add the billing query to the ISPData object
gpWizardState->pISPData->PutDataElement(ISPDATA_BILLING_OPTION, szBillingOptionQuery, ISPDATA_Validate_None); // detach the walker
gpWizardState->pHTMLWalker->Detach(); DWORD dwFlag = gpWizardState->lpSelectedISPInfo->get_dwCFGFlag();
if (ICW_CFGFLAG_SIGNUP_PATH & dwFlag) { if (ICW_CFGFLAG_PAYMENT & dwFlag) { *puNextPage = ORD_PAGE_PAYMENT; return TRUE; } *puNextPage = ORD_PAGE_ISPDIAL; return TRUE; } } return TRUE; }
|