Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/ui/autofill/autofill_dialog_controller_impl.h" | 5 #include "chrome/browser/ui/autofill/autofill_dialog_controller_impl.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "base/string_split.h" | 10 #include "base/string_split.h" |
| (...skipping 415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 426 | 426 |
| 427 FillInputFromFormGroup(form_group, inputs); | 427 FillInputFromFormGroup(form_group, inputs); |
| 428 } | 428 } |
| 429 | 429 |
| 430 section_editing_state_[section] = true; | 430 section_editing_state_[section] = true; |
| 431 view_->UpdateSection(section); | 431 view_->UpdateSection(section); |
| 432 } | 432 } |
| 433 | 433 |
| 434 bool AutofillDialogControllerImpl::InputIsValid(AutofillFieldType type, | 434 bool AutofillDialogControllerImpl::InputIsValid(AutofillFieldType type, |
| 435 const string16& value) { | 435 const string16& value) { |
| 436 using base::Time; | |
| 436 // TODO(groby): Add the missing checks. | 437 // TODO(groby): Add the missing checks. |
| 437 switch (type) { | 438 switch (type) { |
| 439 case CREDIT_CARD_NAME: break; | |
| 438 case CREDIT_CARD_NUMBER: | 440 case CREDIT_CARD_NUMBER: |
| 439 return autofill::IsValidCreditCardNumber(value); | 441 return autofill::IsValidCreditCardNumber(value); |
| 442 case CREDIT_CARD_EXP_MONTH: | |
| 443 // TODO(groby): Cross-field dependency, needs year. Cannot validate. | |
| 444 break; | |
| 445 case CREDIT_CARD_EXP_2_DIGIT_YEAR: | |
|
Evan Stade
2013/02/08 15:48:14
You only need to handle the types in Show()
groby-ooo-7-16
2013/02/09 00:01:49
Done.
Added NOTREACHED default to make clear thi
| |
| 446 return autofill::IsValidCreditCardExpirationYear(value, 2, Time::Now()); | |
| 447 case CREDIT_CARD_EXP_4_DIGIT_YEAR: | |
| 448 return autofill::IsValidCreditCardExpirationYear(value, 4, Time::Now()); | |
| 449 case CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR: | |
| 450 return autofill::IsValidCreditCardExpirationDate(value, 4, Time::Now()); | |
| 451 case CREDIT_CARD_EXP_DATE_4_DIGIT_YEAR: | |
| 452 return autofill::IsValidCreditCardExpirationDate(value, 4, Time::Now()); | |
| 453 case CREDIT_CARD_VERIFICATION_CODE: | |
| 454 // TODO(groby):: Cross-field dependency - would work better w/ CC type. | |
| 455 return autofill::IsValidCreditCardCSC(value); | |
| 440 default: | 456 default: |
| 441 break; | 457 break; |
| 442 } | 458 } |
| 443 | 459 |
| 444 return !value.empty(); | 460 return !value.empty(); |
| 445 } | 461 } |
| 446 | 462 |
| 447 void AutofillDialogControllerImpl::UserEditedOrActivatedInput( | 463 void AutofillDialogControllerImpl::UserEditedOrActivatedInput( |
| 448 const DetailInput* input, | 464 const DetailInput* input, |
| 449 DialogSection section, | 465 DialogSection section, |
| (...skipping 498 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 948 DialogSection section) { | 964 DialogSection section) { |
| 949 return const_cast<DetailInputs*>(&RequestedFieldsForSection(section)); | 965 return const_cast<DetailInputs*>(&RequestedFieldsForSection(section)); |
| 950 } | 966 } |
| 951 | 967 |
| 952 void AutofillDialogControllerImpl::HidePopup() { | 968 void AutofillDialogControllerImpl::HidePopup() { |
| 953 if (popup_controller_) | 969 if (popup_controller_) |
| 954 popup_controller_->Hide(); | 970 popup_controller_->Hide(); |
| 955 } | 971 } |
| 956 | 972 |
| 957 } // namespace autofill | 973 } // namespace autofill |
| OLD | NEW |