Commit 915e7d0c7ae8d56474c852a2d57ed9c9d68a781c

Authored by phong
1 parent a0a95e2012

update api register

Showing 3 changed files with 122 additions and 0 deletions Inline Diff

LifeLog/LifeLog/ConfirmForgetPassViewController.h
File was created 1 //
2 // ConfirmForgetPassViewController.h
3 // LifeLog
4 //
5 // Created by Panasonic R&D Center Vietnam on 8/2/17.
6 // Copyright © 2017 PhongNV. All rights reserved.
7 //
8
9 #import <UIKit/UIKit.h>
10
11 @interface ConfirmForgetPassViewController : UIViewController
12 @property (nonatomic, strong) NSString *email;
13 @end
14
LifeLog/LifeLog/ConfirmForgetPassViewController.m
File was created 1 //
2 // ConfirmForgetPassViewController.m
3 // LifeLog
4 //
5 // Created by Panasonic R&D Center Vietnam on 8/2/17.
6 // Copyright © 2017 PhongNV. All rights reserved.
7 //
8
9 #import "ConfirmForgetPassViewController.h"
10 #import "ServerAPI.h"
11 #import "Utilities.h"
12
13 @interface ConfirmForgetPassViewController ()
14 @property (nonatomic, weak) IBOutlet UITextField *tfConfirm;
15 @property (nonatomic, weak) IBOutlet UIButton *btnConfirm;
16 @end
17
18 @implementation ConfirmForgetPassViewController
19
20 - (void)viewDidLoad {
21 [super viewDidLoad];
22 // Do any additional setup after loading the view from its nib.
23 self.title = @"Confirm Forget Password";
24
25 [self.view addConstraint:[NSLayoutConstraint constraintWithItem:self.topLayoutGuide attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:self.tfConfirm attribute:NSLayoutAttributeTop multiplier:1 constant:-30]];
26 }
27
28 - (void)didReceiveMemoryWarning {
29 [super didReceiveMemoryWarning];
30 // Dispose of any resources that can be recreated.
31 }
32
33 - (IBAction)buttonConfirmTouchUpInside:(id)sender {
34 if (_tfConfirm.text.length > 0) {
35 ConfirmForgetPassViewController __weak *weakSelf = self;
36 [[ServerAPI server] confirmForgetPass:self.email withConfirm:self.tfConfirm.text CompletionHandler:^(NSError *error) {
37 if (error == nil) {
38 // back screen Login
39 dispatch_async(dispatch_get_main_queue(), ^{
40 [weakSelf.navigationController popViewControllerAnimated:YES];
41 });
42 }
43 else {
44 dispatch_async(dispatch_get_main_queue(), ^{
45 NSString *message = [error.userInfo objectForKey:@"message"];
46 [Utilities showErrorMessage:message withViewController:weakSelf];
47 });
48 }
49 }];
50 }
51 else {
52 [Utilities showErrorMessage:@"Please input code confirm" withViewController:self];
53 }
54 }
55
56 @end
57
LifeLog/LifeLog/ConfirmForgetPassViewController.xib
File was created 1 <?xml version="1.0" encoding="UTF-8"?>
2 <document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="12120" systemVersion="16F73" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
3 <device id="retina4_7" orientation="portrait">
4 <adaptation id="fullscreen"/>
5 </device>
6 <dependencies>
7 <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12088"/>
8 <capability name="Constraints with non-1.0 multipliers" minToolsVersion="5.1"/>
9 <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
10 </dependencies>
11 <objects>
12 <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="ConfirmForgetPassViewController">
13 <connections>
14 <outlet property="btnConfirm" destination="pl4-fa-Poj" id="XyC-QE-8Jn"/>
15 <outlet property="tfConfirm" destination="ham-LV-cWN" id="Zxl-4z-x2u"/>
16 <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
17 </connections>
18 </placeholder>
19 <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
20 <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
21 <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
22 <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
23 <subviews>
24 <textField opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" contentHorizontalAlignment="left" contentVerticalAlignment="center" borderStyle="roundedRect" textAlignment="center" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="ham-LV-cWN">
25 <rect key="frame" x="20" y="30" width="335" height="30"/>
26 <nil key="textColor"/>
27 <fontDescription key="fontDescription" type="system" pointSize="14"/>
28 <textInputTraits key="textInputTraits"/>
29 </textField>
30 <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="pl4-fa-Poj">
31 <rect key="frame" x="104" y="70" width="167.5" height="30"/>
32 <constraints>
33 <constraint firstAttribute="height" constant="30" id="QuE-pa-iyz"/>
34 </constraints>
35 <state key="normal" title="Confirm"/>
36 <connections>
37 <action selector="buttonConfirmTouchUpInside:" destination="-1" eventType="touchUpInside" id="79P-c3-yj5"/>
38 </connections>
39 </button>
40 </subviews>
41 <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
42 <constraints>
43 <constraint firstItem="ham-LV-cWN" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="top" constant="30" placeholder="YES" id="M0L-Jj-GBY"/>
44 <constraint firstItem="pl4-fa-Poj" firstAttribute="top" secondItem="ham-LV-cWN" secondAttribute="bottom" constant="10" id="SxH-63-d17"/>
45 <constraint firstItem="pl4-fa-Poj" firstAttribute="centerX" secondItem="ham-LV-cWN" secondAttribute="centerX" id="kYe-pD-TqE"/>
46 <constraint firstItem="pl4-fa-Poj" firstAttribute="width" secondItem="ham-LV-cWN" secondAttribute="width" multiplier="1/2" id="rS8-A5-BwH"/>
47 <constraint firstItem="ham-LV-cWN" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" constant="20" id="x3v-m3-6de"/>
48 <constraint firstAttribute="trailing" secondItem="ham-LV-cWN" secondAttribute="trailing" constant="20" id="yUu-GA-PYo"/>
49 </constraints>
50 <point key="canvasLocation" x="32.5" y="67.5"/>
51 </view>
52 </objects>
53 </document>
54