set oShell = wscript.CreateObject("Wscript.Shell")

Function main()
	dim account, username, domain

	domain = "willitsonline.com"
	
	accountname = inputbox("Enter the name as you would like it to appear in the 'From:' field of sent messages.","WillitsOnline Outlook Express Profile Creator","User Name")
	
	account = inputbox("Enter your email address as assigned		(i.e. 'my_address@willitsonline.com')","WillitsOnline Outlook Express Profile Creator","Email Address")
	
	If accountname = "" Then
		wscript.Quit(0)
 	End If
 	
 	If account = "" Then
		wscript.Quit(0)
 	End If
 	
 	If accountname = "User Name" Then
 		while accountname = "User Name"
	accountname = inputbox("Enter the name as you would like it to appear in the 'From:' field of sent messages.","WillitsOnline Outlook Express Profile Creator","User Name")
 				If accountname = "" Then
					wscript.Quit(0)
 				End If
 		wend
 	End If
 	
 	 	If account = "Email Address" Then
 		while account = "Email Address"
	account = inputbox("Enter your email address		(i.e. 'my_address@WillitsOnline.com')","IGRC Outlook Express Profile Creator","Email Address")
 				If account = "" Then
					wscript.Quit(0)
 				End If
 		wend
 	End If
 	
	username = lcase(account)

	call skipHomeSettings()
	call placeMailSettings(domain, account,accountname)
	
	msgbox("Outlook Express Configuration Complete, please start Outlook Express and enter your password when prompted.")
End Function

Function regRead(regStr)
  regRead = oShell.RegRead(regStr)
End Function

Function regWrite(val1,val2,val3)
  oShell.RegWrite val1,val2,val3
End Function

Function regDelete(regStr)
  call oShell.RegDelete(regStr)
End Function


Function fixme(strValue)
	dim userEntry
	userEntry = split(strValue, "@")
	fixme = userEntry(0)
End Function


'------------------------------------------------------------------------------
' Set @home mail server to be skipped
'------------------------------------------------------------------------------

Function skipHomeSettings()
	dim mailSvr, wStr
	On Error Resume Next
	i = 0
	while i < 100
	  If i < 9 Then
	  	mailSvr = regRead("HKCU\Software\Microsoft\Internet Account Manager\Accounts\0000000" & i & "\POP3 Server")
	  	  If mailSvr = "mail" Then
	  	    wStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\0000000" & i & "\POP3 Skip Account"
	  	    call regWrite(wStr, 00000001, "REG_DWORD")  	    
	  	  End If
	  Else
	    mailSvr = regRead("HKCU\Software\Microsoft\Internet Account Manager\Accounts\000000" & i & "\POP3 Server")
	  	  If mailSvr = "mail" Then
	  	    wStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\000000" & i & "\POP3 Skip Account"
	  	    call regWrite(wStr, 00000001, "REG_DWORD")  	    
	  	  End If
	  End If
	  i = i + 1
	Wend
End Function

'----------------------------------------------------------------------------------------
' Place new settings for Mail
'----------------------------------------------------------------------------------------

Function placeMailSettings(theDomain, theAccount, theAccountname)
	On Error Resume Next
	dim newAccountNum, numKeyStr
	dim username, domain, accountname
	newAccountNum = regRead("HKCU\Software\Microsoft\Internet Account Manager\Account Name")
	
	If newAccountNum = "" Then
		newAccountNum = "00000001"
	ElseIf newAccountNum < 9 Then
		newAccountNum = "0000000" & newAccountNum
	Else
		newAccountNum = "000000" & newAccountNum	
	End If
	
	numKeyStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\"
	call regWrite(numKeyStr, newAccountNum, "REG_SZ")
	
	account = theAccount
	accountname = theAccountname
	domain = theDomain

	'Add Account Name
	  accName = accountname
	  accNameStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\Account Name"
	  call regWrite(accNameStr, accName, "REG_SZ")

	'Add Connection Type
	  conType = "3"
	  conTypeStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\Connection Type"
	  call regWrite(conTypeStr, conType, "REG_DWORD")
	  
	'Delete Connection Id
	  conId = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\ConnectionId"
	  call regDelete(conId)
	  
	'Delete Account Id
	  accId = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\Account ID"
	  call regDelete(accId)

	'Delete IMAP Server
	  imapSvr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\IMAP Server"
	  call regDelete(imapSvr)

	'Delete HTTP Mail Server
	  httpSvr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\HTTPMail Server"
	  call regDelete(httpSvr)

	'Set POP3 Server
	  pop3svr = "mail.willitsonline.com"
	  pop3svrStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\POP3 Server"
	  call regWrite(pop3svrStr, pop3svr, "REG_SZ")

	'Set POP3 Username
	  pop3usr = account
	  pop3usrStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\POP3 User Name"
	  call regWrite(pop3usrStr, pop3usr, "REG_SZ")

	'Delete POP3 Password 2
	  popPwdStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\POP3 Password2"
	  call regDelete(popPwdStr)

	'Set POP3 Use Sicily
	  useSicily = "0"'0
	  useSicilyStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\POP3 Use Sicily"
	  call regWrite(useSicilyStr, useSicily, "REG_DWORD")

	'Set POP3 Prompt for Pw
	  var promptPw = "1"
	  var promptPwStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\POP3 Prompt for Password"
	  call regWrite(promptPwStr, promptPw, "REG_DWORD")
	
	'Set SMTP Server
	  smtpSvr = "mail.willitsonline.com"
	  smtpSvrStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\SMTP Server"
	  call regWrite(smtpSvrStr, smtpSvr, "REG_SZ")
	  
	'Set SMTP Display name
	  smtpDisp = accountname
	  smtpSvrStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\SMTP Display Name"
	  call regWrite(smtpSvrStr, smtpDisp, "REG_SZ")

	'Set SMTP E-mail address
	  smtpEmail = account
	  smtpEmailStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\SMTP Email Address"
	  call regWrite(smtpEmailStr, smtpEmail, "REG_SZ")

	'Set SMTP Use Sicily
	  smtpUseSicily = "2"
	  smtpUseSicilyStr = "HKCU\Software\Microsoft\Internet Account Manager\Accounts\" & newAccountNum & "\SMTP Use Sicily"
	  call regWrite(smtpUseSicilyStr, smtpUseSicily, "REG_DWORD")
	  
	'Set New Account to default
	  defAccStr = "HKCU\Software\Microsoft\Internet Account Manager\Default Mail Account"
	  call regWrite(defAccStr, newAccountNum, "REG_SZ")
	  
	'Increment future account number
	  futAccNum = newAccountNum + 1
	  futAccNumStr = "HKCU\Software\Microsoft\Internet Account Manager\Account Name"
	  call regWrite(futAccNumStr, futAccNum, "REG_DWORD")
	  
	  msgbox("POP3 Server Set to: " & pop3svr & chr(10) & "SMTP Server Set to: " & smtpSvr)
End Function


call main()


