Account management enhancements to My First Mvc Application (C#/Razor)
$30-101 USD
Pagado a la entrega
This web site needs basic account management functionality such as password retrieval and profile management (address/telephone, ...).
Sending emails and/or text messages is essential to this web site as there is no Help Desk. All features have to be self-service.
## Deliverables
The application will have two new DBs defined with the following fields (from Pub2):
(1) User-general
UserID (text)
email address (text)
password (text)
changed password (text, null)
male/female (logical)
Country (numeric "ansi standard 3166 code" canada=124, USA=840, other-999)
Province/State (text 2-chars see codes at end of document)
Postal/Zip (text)
Address1 (text)
Address2 (text)
Home Telephone (numeric)
Cell phone (numeric)
receives text (logical)
Date/time registered (date/time)
Date/time last logged on (date/time)
(2) User-personal (for password retrieval)
UserID (text)
Question (text)
Answer (text)
_____________________________________________________________________
The "change password" and "change email" screens will be incorporated into a "profile" screen:
(1) change password
(2) change email
(3) change address
(4) change password retrieval questions
_____________________________________________________________________
The logon screen will be changed to:
(1) have two more check boxes
"Forgot my user Id"
"Forgot my password"
(2) check that the password matches either "password" or "changed password" if the user logs on with the changed password, move it to the password field and change the changed password to NULL
If the user selects "Forgot my user Id", the application will prompt for an email address and then email the user the user ID
If the user selects "Forgot my password", the application will:
(1) Prompt the user with 3 random questions from their User-personal records.
Forgive case inacuracies or a small spelling mistake (one in ten mis-matched characters)
If they get one answer wrong, prompt for a 4th, otherwise reject them
(2) email the user with the user ID and a random password. Store that password into "changed password"
(3) If user logons on with the changed password, it will be put into the password field and changed password will go back to being NULL
(4) an email will be sent to the email address notifying the user that the password has been changed
(5) If the user has a cell phone capable of receiving text messages, a text will be sent as well
_____________________________________________________________________
Once the user selects "Register", the user will be presented with the existing "Create a New Account screen" with the addition of the following fields:
Address(Country)
Home Telephone number
Cellular Telephone number
check box (this is a cell phone that receives text messages)
once that screen is submitted, three more screens will be presented before the registration will be complete.
If the user does not complete the registration to the last screen, the registration will be abandoned (no record is created) and the user will be notified that the registration failed and that they have to start from the beginning again.
First Screen:
Address(Province) or Address(state) depending on which Country the user entered on the previous screen
See codes at end of document
Second Screen:
Address(street)
2 60 byte text boxes
Third Screen:
password retrieval personal questions (see pub 1).
Prompt for: from 4 to 10 questions (retrieve password):
See Pub 1.
______________ state/province ________________________
Order of state/province is not alphabetical
The order is based on proximity to Ontario
Canada: Ontario, Quebec, Manitoba ... USA: NY, MI (are closest to Ontario)
Canadian Province Codes
Code Description
AB ALBERTA
BC BRITISH COLUMBIA
MB MANITOBA
NB NEW BRUNSWICK
NL NEWFOUNDLAND LABRADOR
NS NOVA SCOTIA
NT NORTHWEST TERRITORIES
NU NUNAVUT
ON ONTARIO
PE PRINCE EDWARD ISLAND
QC QUEBEC
SK SASKATCHEWAN
YK YUKON TERRITORY
U. S. State Codes
Code Description
AK Alaska
AL Alabama
AR Arkansas
AZ Arizona
CA California
CO Colorado
CT Connecticut
DC Columbia (District of)
DE Delaware
FL Florida
GA Georgia
HI Hawaii
IA Iowa
ID Idaho
IL Illinois
IN Indiana
KS Kansas
KY Kentucky
LA Louisiana
MA Massachusetts
MD Maryland
ME Maine
MI Michigan
MN Minnesota
MO Missouri
MS Mississippi
MT Montana
NC North Carolina
ND North Dakota
NE Nebraska Code
NH New Hampshire
NJ New Jersey
NM New Mexico
NV Nevada
NY New York
OH Ohio
OK Oklahoma
OR Oregon
PA Pennsylvania
RI Rhode Island
SC South Carolina
SD South Dakota
TN Tennessee
TX Texas
UT Utah
VA Virginia
VT Vermont
WA Washington (State of)
WI Wisconsin
WV West Virginia
WY Wyoming
__________ questions from potential bidders ____________________
1) We can send email but we can't send the text messages. For sending a text message we need to have a SMS gateway.
2) You said if the user selects "Forgot my password", the application will:
(1) Prompt the user with 3 random questions from their User-personal records.
Forgive case inacuracies or a small spelling mistake (one in ten mis-matched characters)
My question is: can't we keep it simple, we will ignore the case and check the answer.
3) If the user does not complete the registration to the last screen, the registration will be abandoned (no record is created) and the user will be notified that the registration failed and that they have to start from the beginning again.
My Question is: We can identify and send email only in case if use clicks any button/link like "Cancel". We can't handle this if user closes the browser in-between.
4) Do you have the existing application which is running now?
-Email Services can be provided but How you think, text messages functionality should be integrated? I mean do you have access to specific API or Service? you need to send text messages.
-I will provide programming functionality in asp.net but what database you would like to use, sql server, msaccess or mysql?
- will you provide design and graphics? or I should code this simply without any graphics?
_____________ answers ___________________________________
SMS Gateway - I know that this is a big job beyond the scope of this project so it is optional. If you can figure out how to use some freeware, then add it in, otherwise just create a stub (empty method).
Forgiving inacuracies - when dealing with phrases, people can make a lot of mistakes but since there is no help desk, we want some forgiveness built in. For example "What is your favorite book" Might be answered as "The life and times of Julius Ceasar" "the life and Times of JuliusCeaser" ... so we can count the MATCHED characters and the MISMATACHED characters and if they are 85% correct, accept the answer as correct.
Inserting the record into the DB after REGISTRATION complete - we do not want an incomplete registration so collect all the registration information and only insert the record at the end once everything is complete.
Registration - we must check that when someone registers, their email address is not already in the database (no duplicates allowed).
Database is MS SQL just like the membership DB in the model provided by the tutorial
No graphics required _______________ optional features for kudos ____________________
I would like to use a product like "reCaptcha" to ensure that automated scripts don't try to register or retrieve userID/password.
See: <[url removed, login to view]> for how to include reCaptcha
Nº del proyecto: #2694763