Merge branch 'feature/about' into develop

This commit is contained in:
nixzhu
2015-08-31 15:55:13 +08:00
16 changed files with 500 additions and 16 deletions
+44
View File
@@ -142,6 +142,8 @@
5076FC5A1AF9DF6B00D7381A /* ConversationMessagePreviewTransitionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5076FC591AF9DF6B00D7381A /* ConversationMessagePreviewTransitionManager.swift */; };
507CF1681AFC84A500E261B4 /* CustomNavigationBarViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 507CF1671AFC84A500E261B4 /* CustomNavigationBarViewController.swift */; };
507F65F71B2EBC2700A35FDC /* MediaPreviewView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 507F65F61B2EBC2700A35FDC /* MediaPreviewView.swift */; };
5080EB1C1B93F43A006F3C2D /* PodsHelpYepViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5080EB1B1B93F43A006F3C2D /* PodsHelpYepViewController.swift */; };
5080EB1F1B93F932006F3C2D /* NSBundle+Yep.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5080EB1E1B93F932006F3C2D /* NSBundle+Yep.swift */; };
50894CF11AEA4726000981AF /* SettingsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50894CF01AEA4726000981AF /* SettingsViewController.swift */; };
50894CF51AEA4A01000981AF /* SettingsUserCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50894CF31AEA4A01000981AF /* SettingsUserCell.swift */; };
50894CF61AEA4A01000981AF /* SettingsUserCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 50894CF41AEA4A01000981AF /* SettingsUserCell.xib */; };
@@ -210,6 +212,9 @@
50E114FD1ABC549300F13000 /* ContactsCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 50E114FB1ABC549300F13000 /* ContactsCell.xib */; };
50E18BB71B180F7D0076C3C6 /* BottomButtonView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50E18BB61B180F7D0076C3C6 /* BottomButtonView.swift */; };
50E1D7291B870D7500D90A82 /* NSParagraphStyle+Yep.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50E1D7281B870D7500D90A82 /* NSParagraphStyle+Yep.swift */; };
50E3488E1B905C0100A8E699 /* AboutViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50E3488D1B905C0100A8E699 /* AboutViewController.swift */; };
50E348921B9063A700A8E699 /* AboutCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50E348901B9063A700A8E699 /* AboutCell.swift */; };
50E348931B9063A700A8E699 /* AboutCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 50E348911B9063A700A8E699 /* AboutCell.xib */; };
50E61CEB1AF1F69D00908A9D /* ConversationTitleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50E61CEA1AF1F69D00908A9D /* ConversationTitleView.swift */; };
50EB8C5E1AE78AB9001AC1EE /* YepAsset.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50EB8C5D1AE78AB9001AC1EE /* YepAsset.swift */; };
50EB8CBF1AE89ED8001AC1EE /* ChatLeftVideoCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50EB8CBD1AE89ED8001AC1EE /* ChatLeftVideoCell.swift */; };
@@ -393,6 +398,8 @@
5076FC591AF9DF6B00D7381A /* ConversationMessagePreviewTransitionManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ConversationMessagePreviewTransitionManager.swift; path = ViewControllers/Conversation/ConversationMessagePreviewTransitionManager.swift; sourceTree = "<group>"; };
507CF1671AFC84A500E261B4 /* CustomNavigationBarViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = CustomNavigationBarViewController.swift; path = ViewControllers/CustomNavigationBar/CustomNavigationBarViewController.swift; sourceTree = "<group>"; };
507F65F61B2EBC2700A35FDC /* MediaPreviewView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = MediaPreviewView.swift; path = Views/Media/MediaPreviewView.swift; sourceTree = "<group>"; };
5080EB1B1B93F43A006F3C2D /* PodsHelpYepViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = PodsHelpYepViewController.swift; path = ViewControllers/PodsHelpYep/PodsHelpYepViewController.swift; sourceTree = "<group>"; };
5080EB1E1B93F932006F3C2D /* NSBundle+Yep.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = "NSBundle+Yep.swift"; path = "Extensions/NSBundle+Yep.swift"; sourceTree = "<group>"; };
50894CF01AEA4726000981AF /* SettingsViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SettingsViewController.swift; path = ViewControllers/Settings/SettingsViewController.swift; sourceTree = "<group>"; };
50894CF31AEA4A01000981AF /* SettingsUserCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SettingsUserCell.swift; path = Views/Cells/SettingsUser/SettingsUserCell.swift; sourceTree = "<group>"; };
50894CF41AEA4A01000981AF /* SettingsUserCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = SettingsUserCell.xib; path = Views/Cells/SettingsUser/SettingsUserCell.xib; sourceTree = "<group>"; };
@@ -461,6 +468,9 @@
50E114FB1ABC549300F13000 /* ContactsCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = ContactsCell.xib; path = Views/Cells/Contacts/ContactsCell.xib; sourceTree = "<group>"; };
50E18BB61B180F7D0076C3C6 /* BottomButtonView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = BottomButtonView.swift; path = Views/SayHi/BottomButtonView.swift; sourceTree = "<group>"; };
50E1D7281B870D7500D90A82 /* NSParagraphStyle+Yep.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = "NSParagraphStyle+Yep.swift"; path = "Extensions/NSParagraphStyle+Yep.swift"; sourceTree = "<group>"; };
50E3488D1B905C0100A8E699 /* AboutViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = AboutViewController.swift; path = ViewControllers/About/AboutViewController.swift; sourceTree = "<group>"; };
50E348901B9063A700A8E699 /* AboutCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = AboutCell.swift; path = Views/Cells/About/AboutCell.swift; sourceTree = "<group>"; };
50E348911B9063A700A8E699 /* AboutCell.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = AboutCell.xib; path = Views/Cells/About/AboutCell.xib; sourceTree = "<group>"; };
50E61CEA1AF1F69D00908A9D /* ConversationTitleView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ConversationTitleView.swift; path = Views/ConversationTitle/ConversationTitleView.swift; sourceTree = "<group>"; };
50EB8C5D1AE78AB9001AC1EE /* YepAsset.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = YepAsset.swift; path = Helpers/YepAsset.swift; sourceTree = "<group>"; };
50EB8CBD1AE89ED8001AC1EE /* ChatLeftVideoCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ChatLeftVideoCell.swift; path = Views/Cells/ChatLeftVideo/ChatLeftVideoCell.swift; sourceTree = "<group>"; };
@@ -758,6 +768,8 @@
50A640ED1B6F4E480050E4A3 /* DoNotDisturbPeriod */,
503ED23B1B8ADCED0072187D /* BlackList */,
50B38FCD1B6B37F90064C132 /* Feedback */,
50E3488F1B905C0700A8E699 /* About */,
5080EB1D1B93F440006F3C2D /* PodsHelpYep */,
0A1CAC6C1AFA3D8C00826B45 /* SkillHome */,
507CF1691AFC84AA00E261B4 /* CustomNavigationBar */,
0A9018831B0120A800AE4B7F /* OAuth */,
@@ -819,6 +831,7 @@
50B38FB61B69CD960064C132 /* Array+Yep.swift */,
50FA9A431B661698009BF2A0 /* UIViewController+Yep.swift */,
50E1D7281B870D7500D90A82 /* NSParagraphStyle+Yep.swift */,
5080EB1E1B93F932006F3C2D /* NSBundle+Yep.swift */,
);
name = Extensions;
sourceTree = "<group>";
@@ -894,6 +907,7 @@
508F8FE01B049AD400461B0B /* InstagramMedia */,
5064F6561B0B0E1B0089FAD4 /* AddFriendSearch */,
5064F65B1B0B14470089FAD4 /* AddFriendMore */,
50E348941B9063AD00A8E699 /* About */,
);
name = Cells;
sourceTree = "<group>";
@@ -1247,6 +1261,14 @@
name = CustomNavigationBar;
sourceTree = "<group>";
};
5080EB1D1B93F440006F3C2D /* PodsHelpYep */ = {
isa = PBXGroup;
children = (
5080EB1B1B93F43A006F3C2D /* PodsHelpYepViewController.swift */,
);
name = PodsHelpYep;
sourceTree = "<group>";
};
50894CF21AEA472B000981AF /* Settings */ = {
isa = PBXGroup;
children = (
@@ -1519,6 +1541,23 @@
name = SayHi;
sourceTree = "<group>";
};
50E3488F1B905C0700A8E699 /* About */ = {
isa = PBXGroup;
children = (
50E3488D1B905C0100A8E699 /* AboutViewController.swift */,
);
name = About;
sourceTree = "<group>";
};
50E348941B9063AD00A8E699 /* About */ = {
isa = PBXGroup;
children = (
50E348901B9063A700A8E699 /* AboutCell.swift */,
50E348911B9063A700A8E699 /* AboutCell.xib */,
);
name = About;
sourceTree = "<group>";
};
50E61CEC1AF1F6A600908A9D /* ConversationTitle */ = {
isa = PBXGroup;
children = (
@@ -1746,6 +1785,7 @@
5023DE381AB6979600B3EE96 /* ConversationCell.xib in Resources */,
50C090A11ADE391600CC6389 /* AddSkillsReusableView.xib in Resources */,
504F415B1AD5028200FBB19A /* SkillCell.xib in Resources */,
50E348931B9063A700A8E699 /* AboutCell.xib in Resources */,
5039594F1B05E6E000797A3E /* ProfileSocialAccountGithubCell.xib in Resources */,
502AE5591AB932D5005BD199 /* ProfileSectionHeaderReusableView.xib in Resources */,
5056AD6F1B05CB92003F9359 /* ProfileSocialAccountImagesCell.xib in Resources */,
@@ -1914,6 +1954,7 @@
503ED23A1B8ADCE70072187D /* BlackListViewController.swift in Sources */,
502AE51B1AB70DDB005BD199 /* WelcomeViewController.swift in Sources */,
50894D071AEDFDA2000981AF /* EditProfileMoreInfoCell.swift in Sources */,
5080EB1C1B93F43A006F3C2D /* PodsHelpYepViewController.swift in Sources */,
0A1CAC731AFA526200826B45 /* SkillHomeSectionButton.swift in Sources */,
50B38FCC1B6B37F00064C132 /* FeedbackViewController.swift in Sources */,
507F65F71B2EBC2700A35FDC /* MediaPreviewView.swift in Sources */,
@@ -1950,12 +1991,15 @@
0AB8F79A1B15D1DC00F4AF09 /* YepNavigationController.swift in Sources */,
502AE53A1AB871C1005BD199 /* YepAlert.swift in Sources */,
5039594E1B05E6E000797A3E /* ProfileSocialAccountGithubCell.swift in Sources */,
5080EB1F1B93F932006F3C2D /* NSBundle+Yep.swift in Sources */,
5053AD4D1AF79EEA00B3CBFA /* LocationPin.swift in Sources */,
50C0909D1ADE294800CC6389 /* RegisterPickSkillsLayout.swift in Sources */,
50E3488E1B905C0100A8E699 /* AboutViewController.swift in Sources */,
502AE52E1AB83879005BD199 /* UnderLineTextField.swift in Sources */,
508F8FD71B01EDB400461B0B /* DribbbleShotCell.swift in Sources */,
0A7A7D561AF5E00600A7F5F5 /* YepHelper.swift in Sources */,
502280F81B1C3F2800E984EE /* FriendsInContactsViewController.swift in Sources */,
50E348921B9063A700A8E699 /* AboutCell.swift in Sources */,
508D17401ACCD2740092D666 /* YepButton.swift in Sources */,
5019F6311B39BFE00000D993 /* ConversationMoreView.swift in Sources */,
506BB7F51AE4E0A500C1A2A0 /* SkillAnnotationHeader.swift in Sources */,
+118 -6
View File
@@ -588,6 +588,7 @@
<segue destination="TTy-VD-aor" kind="show" identifier="showEditProfile" id="Qhj-kS-Fq2"/>
<segue destination="9Uj-sb-Emt" kind="show" identifier="showFeedback" id="YkG-GA-Ri8"/>
<segue destination="i7X-gi-DRa" kind="show" identifier="showNotifications" id="PxD-iZ-Pfy"/>
<segue destination="yT8-GW-lJF" kind="show" identifier="showAbout" id="bXj-qa-QIM"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="zuA-bP-KGx" userLabel="First Responder" sceneMemberID="firstResponder"/>
@@ -968,7 +969,7 @@
</connections>
</tapGestureRecognizer>
</objects>
<point key="canvasLocation" x="3584" y="-519"/>
<point key="canvasLocation" x="4251" y="-959"/>
</scene>
<!--Notifications View Controller-->
<scene sceneID="s6K-xp-3el">
@@ -1009,7 +1010,7 @@
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="uH9-BS-amc" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="3761" y="169"/>
<point key="canvasLocation" x="4372" y="-287"/>
</scene>
<!--Do Not Disturb Period View Controller-->
<scene sceneID="RM6-fB-WmB">
@@ -1080,7 +1081,7 @@
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="bRS-Uc-jLI" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="5041" y="-23"/>
<point key="canvasLocation" x="5352" y="-494"/>
</scene>
<!--Black List View Controller-->
<scene sceneID="Nh4-iA-RXh">
@@ -1123,7 +1124,117 @@
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="kuH-Py-OGH" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="4613" y="641"/>
<point key="canvasLocation" x="5347" y="169"/>
</scene>
<!--About View Controller-->
<scene sceneID="Gw3-Lm-DcO">
<objects>
<viewController storyboardIdentifier="AboutViewController" automaticallyAdjustsScrollViewInsets="NO" id="yT8-GW-lJF" customClass="AboutViewController" customModule="Yep" customModuleProvider="target" sceneMemberID="viewController">
<layoutGuides>
<viewControllerLayoutGuide type="top" id="DCG-xs-MCn"/>
<viewControllerLayoutGuide type="bottom" id="QW3-jP-Sgu"/>
</layoutGuides>
<view key="view" contentMode="scaleToFill" id="5CH-ve-TLB">
<rect key="frame" x="0.0" y="0.0" width="600" height="600"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" scrollEnabled="NO" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" translatesAutoresizingMaskIntoConstraints="NO" id="hbq-fC-4RN">
<rect key="frame" x="0.0" y="269" width="600" height="300"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<constraints>
<constraint firstAttribute="height" constant="300" id="1g0-7d-AGp"/>
</constraints>
<connections>
<outlet property="dataSource" destination="yT8-GW-lJF" id="zm4-Cr-7u2"/>
<outlet property="delegate" destination="yT8-GW-lJF" id="eIs-Oy-bjo"/>
</connections>
</tableView>
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="yep_icon_solo" translatesAutoresizingMaskIntoConstraints="NO" id="T5N-QV-ray">
<rect key="frame" x="240" y="84" width="120" height="120"/>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Yep" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0gW-5K-DQz">
<rect key="frame" x="276" y="223" width="49" height="36"/>
<fontDescription key="fontDescription" type="system" pointSize="30"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Version 1.0" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="102-IE-TP0">
<rect key="frame" x="264" y="267" width="71.5" height="17"/>
<fontDescription key="fontDescription" type="system" pointSize="14"/>
<color key="textColor" red="0.60000002384185791" green="0.60000002384185791" blue="0.60000002384185791" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Copyright © 2015 Catch Inc." lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6nN-bl-dxT">
<rect key="frame" x="224" y="577" width="151" height="14.5"/>
<fontDescription key="fontDescription" type="system" weight="light" pointSize="12"/>
<color key="textColor" red="0.60000002384185791" green="0.60000002384185791" blue="0.60000002384185791" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
</subviews>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<constraints>
<constraint firstAttribute="centerX" secondItem="6nN-bl-dxT" secondAttribute="centerX" id="1Mn-k9-oIm"/>
<constraint firstItem="0gW-5K-DQz" firstAttribute="top" secondItem="T5N-QV-ray" secondAttribute="bottom" constant="19" id="2g3-6y-yQw"/>
<constraint firstAttribute="bottom" secondItem="6nN-bl-dxT" secondAttribute="bottom" constant="8" id="IUJ-uN-CB2"/>
<constraint firstItem="6nN-bl-dxT" firstAttribute="top" secondItem="hbq-fC-4RN" secondAttribute="bottom" constant="8" id="Q5k-T1-MTK"/>
<constraint firstAttribute="trailing" secondItem="hbq-fC-4RN" secondAttribute="trailing" id="RKl-Ah-1tH"/>
<constraint firstItem="hbq-fC-4RN" firstAttribute="leading" secondItem="5CH-ve-TLB" secondAttribute="leading" id="Xdv-Nz-HvO"/>
<constraint firstAttribute="centerX" secondItem="T5N-QV-ray" secondAttribute="centerX" id="ZtN-X1-PwW"/>
<constraint firstItem="102-IE-TP0" firstAttribute="centerX" secondItem="0gW-5K-DQz" secondAttribute="centerX" id="dQM-16-Tbr"/>
<constraint firstItem="102-IE-TP0" firstAttribute="top" secondItem="0gW-5K-DQz" secondAttribute="bottom" constant="8" id="lhD-dg-lV6"/>
<constraint firstItem="0gW-5K-DQz" firstAttribute="centerX" secondItem="T5N-QV-ray" secondAttribute="centerX" constant="0.5" id="qMh-eN-3p6"/>
<constraint firstItem="T5N-QV-ray" firstAttribute="top" secondItem="DCG-xs-MCn" secondAttribute="bottom" constant="20" id="roz-HZ-YcO"/>
</constraints>
</view>
<connections>
<outlet property="aboutTableView" destination="hbq-fC-4RN" id="BwQ-6X-3Hn"/>
<outlet property="aboutTableViewHeightConstraint" destination="1g0-7d-AGp" id="7Wy-0P-2Ra"/>
<outlet property="appLogoImageView" destination="T5N-QV-ray" id="5BX-2b-jw4"/>
<outlet property="appLogoImageViewTopConstraint" destination="roz-HZ-YcO" id="kgd-Lk-w4i"/>
<outlet property="appNameLabel" destination="0gW-5K-DQz" id="iZM-sK-7OL"/>
<outlet property="appNameLabelTopConstraint" destination="2g3-6y-yQw" id="8Uv-Kb-2vo"/>
<outlet property="appVersionLabel" destination="102-IE-TP0" id="Qxw-FK-TPo"/>
<outlet property="copyrightLabel" destination="6nN-bl-dxT" id="9hz-OF-aXn"/>
<segue destination="NFd-fk-w2x" kind="show" identifier="showPodsHelpYep" id="uf8-rh-PVc"/>
</connections>
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="EcK-x9-RRQ" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="3727" y="797"/>
</scene>
<!--Pods Help Yep View Controller-->
<scene sceneID="J0m-qi-XCM">
<objects>
<tableViewController storyboardIdentifier="PodsHelpYepViewController" id="NFd-fk-w2x" customClass="PodsHelpYepViewController" customModule="Yep" customModuleProvider="target" sceneMemberID="viewController">
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="gBr-1A-Qnu">
<rect key="frame" x="0.0" y="0.0" width="600" height="600"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
<prototypes>
<tableViewCell contentMode="scaleToFill" selectionStyle="default" accessoryType="disclosureIndicator" indentationWidth="10" reuseIdentifier="PodCell" textLabel="C1J-Nr-hJu" style="IBUITableViewCellStyleDefault" id="IC9-zO-JHD">
<autoresizingMask key="autoresizingMask"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="IC9-zO-JHD" id="S8x-8A-E2F">
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" multipleTouchEnabled="YES" contentMode="left" text="Title" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="C1J-Nr-hJu">
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<fontDescription key="fontDescription" type="system" pointSize="16"/>
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
</subviews>
</tableViewCellContentView>
</tableViewCell>
</prototypes>
<connections>
<outlet property="dataSource" destination="NFd-fk-w2x" id="Juv-t0-KCl"/>
<outlet property="delegate" destination="NFd-fk-w2x" id="YQM-IM-Tev"/>
</connections>
</tableView>
</tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="VRb-Ez-bT9" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="4500" y="1030"/>
</scene>
<!--Feedback View Controller-->
<scene sceneID="qi4-ey-7am">
@@ -1172,7 +1283,7 @@
</viewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="MUL-up-ag5" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="3663" y="855"/>
<point key="canvasLocation" x="4372" y="373"/>
</scene>
<!--Edit Nickname And Badge View Controller-->
<scene sceneID="eed-5B-jyz">
@@ -1423,7 +1534,7 @@
</tableViewController>
<placeholder placeholderIdentifier="IBFirstResponder" id="KVb-CY-yr0" userLabel="First Responder" sceneMemberID="firstResponder"/>
</objects>
<point key="canvasLocation" x="4277" y="-519"/>
<point key="canvasLocation" x="4976" y="-1156"/>
</scene>
<!--Yep Tab Bar Controller-->
<scene sceneID="vud-lc-IAG">
@@ -1863,6 +1974,7 @@
<image name="profile_avatar_frame" width="112" height="112"/>
<image name="swipe_up" width="21" height="6"/>
<image name="top_shadow" width="375" height="80"/>
<image name="yep_icon_solo" width="120" height="120"/>
</resources>
<inferredMetricsTieBreakers>
<segue reference="Pxr-1p-x84"/>
+2
View File
@@ -31,6 +31,8 @@ class YepConfig {
return 0
#endif
}
static let termsURLString = "http://soyep.com/privacy"
class func getScreenRect() -> CGRect {
return UIScreen.mainScreen().bounds
+20
View File
@@ -0,0 +1,20 @@
//
// NSBundle+Yep.swift
// Yep
//
// Created by nixzhu on 15/8/31.
// Copyright (c) 2015 Catch Inc. All rights reserved.
//
import Foundation
extension NSBundle {
static var releaseVersionNumber: String? {
return NSBundle.mainBundle().infoDictionary?["CFBundleShortVersionString"] as? String
}
static var buildVersionNumber: String? {
return NSBundle.mainBundle().infoDictionary?["CFBundleVersion"] as? String
}
}
Binary file not shown.
@@ -2,12 +2,11 @@
"images" : [
{
"idiom" : "universal",
"filename" : "fans.pdf"
"filename" : "yep_icon_solo.pdf"
}
],
"info" : {
"version" : 1,
"author" : "xcode",
"template-rendering-intent" : "template"
"author" : "xcode"
}
}
Binary file not shown.
+1 -1
View File
@@ -2141,7 +2141,7 @@ func dribbbleWorkOfUserWithUserID(userID: String, #failureHandler: ((Reason, Str
let parse: JSONDictionary -> DribbbleWork? = { data in
println("dribbbleData:\(data)")
//println("dribbbleData:\(data)")
if let
shotsData = data["shots"] as? [JSONDictionary],
@@ -0,0 +1,101 @@
//
// AboutViewController.swift
// Yep
//
// Created by nixzhu on 15/8/28.
// Copyright (c) 2015 Catch Inc. All rights reserved.
//
import UIKit
import Ruler
class AboutViewController: UIViewController {
@IBOutlet weak var appLogoImageView: UIImageView!
@IBOutlet weak var appLogoImageViewTopConstraint: NSLayoutConstraint!
@IBOutlet weak var appNameLabel: UILabel!
@IBOutlet weak var appNameLabelTopConstraint: NSLayoutConstraint!
@IBOutlet weak var appVersionLabel: UILabel!
@IBOutlet weak var aboutTableView: UITableView!
@IBOutlet weak var aboutTableViewHeightConstraint: NSLayoutConstraint!
@IBOutlet weak var copyrightLabel: UILabel!
let aboutCellID = "AboutCell"
let rowHeight: CGFloat = Ruler.match(.iPhoneHeights(50, 60, 60, 60))
let aboutAnnotations: [String] = [
NSLocalizedString("Pods help Yep", comment: ""),
NSLocalizedString("Rate Yep on App Store", comment: ""),
NSLocalizedString("Terms of Service", comment: ""),
]
override func viewDidLoad() {
super.viewDidLoad()
title = NSLocalizedString("About", comment: "")
appLogoImageViewTopConstraint.constant = Ruler.match(.iPhoneHeights(0, 20, 40, 60))
appNameLabelTopConstraint.constant = Ruler.match(.iPhoneHeights(10, 20, 20, 20))
appNameLabel.textColor = UIColor.yepTintColor()
if let
releaseVersionNumber = NSBundle.releaseVersionNumber,
buildVersionNumber = NSBundle.buildVersionNumber {
appVersionLabel.text = NSLocalizedString("Version", comment: "") + " " + releaseVersionNumber + " (\(buildVersionNumber))"
}
aboutTableView.registerNib(UINib(nibName: aboutCellID, bundle: nil), forCellReuseIdentifier: aboutCellID)
aboutTableViewHeightConstraint.constant = rowHeight * CGFloat(aboutAnnotations.count) + 1
}
}
// MARK: - UITableViewDataSource, UITableViewDelegate
extension AboutViewController: UITableViewDataSource, UITableViewDelegate {
func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return aboutAnnotations.count + 1
}
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
switch indexPath.row {
case 0:
return UITableViewCell()
default:
let cell = tableView.dequeueReusableCellWithIdentifier(aboutCellID) as! AboutCell
let annotation = aboutAnnotations[indexPath.row - 1]
cell.annotationLabel.text = annotation
return cell
}
}
func tableView(tableView: UITableView, heightForRowAtIndexPath indexPath: NSIndexPath) -> CGFloat {
switch indexPath.row {
case 0:
return 1
default:
return rowHeight
}
}
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
tableView.deselectRowAtIndexPath(indexPath, animated: true)
switch indexPath.row {
case 1:
performSegueWithIdentifier("showPodsHelpYep", sender: nil)
case 3:
UIApplication.sharedApplication().openURL(NSURL(string: YepConfig.termsURLString)!)
default:
break
}
}
}
@@ -0,0 +1,108 @@
//
// PodsHelpYepViewController.swift
// Yep
//
// Created by nixzhu on 15/8/31.
// Copyright (c) 2015 Catch Inc. All rights reserved.
//
import UIKit
class PodsHelpYepViewController: UITableViewController {
let pods: [[String: String]] = [
[
"name": "RealmSwift",
"URLString": "https://realm.io",
],
[
"name": "MZFayeClient",
"URLString": "https://github.com/m1entus/MZFayeClient",
],
[
"name": "Proposer",
"URLString": "https://github.com/nixzhu/Proposer",
],
[
"name": "KeyboardMan",
"URLString": "https://github.com/nixzhu/KeyboardMan",
],
[
"name": "Ruler",
"URLString": "https://github.com/nixzhu/Ruler",
],
[
"name": "APAddressBook/Swift",
"URLString": "https://github.com/Alterplay/APAddressBook",
],
[
"name": "1PasswordExtension",
"URLString": "https://github.com/AgileBits/onepassword-app-extension",
],
[
"name": "Kingfisher",
"URLString": "https://github.com/onevcat/Kingfisher",
],
[
"name": "FXBlurView",
"URLString": "https://github.com/nicklockwood/FXBlurView",
],
[
"name": "TPKeyboardAvoiding",
"URLString": "https://github.com/michaeltyson/TPKeyboardAvoidin",
],
[
"name": "DeviceGuru",
"URLString": "https://github.com/InderKumarRathore/DeviceGuru",
],
[
"name": "AFNetworking",
"URLString": "https://github.com/AFNetworking/AFNetworkin",
],
[
"name": "pop",
"URLString": "https://github.com/facebook/pop",
],
]
override func viewDidLoad() {
super.viewDidLoad()
title = NSLocalizedString("Pods", comment: "")
tableView.tableFooterView = UIView()
}
// MARK: - Table view data source
override func numberOfSectionsInTableView(tableView: UITableView) -> Int {
return 1
}
override func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return pods.count
}
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("PodCell", forIndexPath: indexPath) as! UITableViewCell
let pod = pods[indexPath.row]
cell.textLabel?.text = pod["name"]
return cell
}
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
tableView.deselectRowAtIndexPath(indexPath, animated: true)
let pod = pods[indexPath.row]
if let
URLString = pod["URLString"],
URL = NSURL(string: URLString) {
UIApplication.sharedApplication().openURL(URL)
}
}
}
@@ -79,13 +79,13 @@ class RegisterPickNameViewController: BaseViewController {
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
//nameTextField.becomeFirstResponder()
nameTextField.becomeFirstResponder()
}
// MARK: Actions
func tapTerms() {
UIApplication.sharedApplication().openURL(NSURL(string: "http://soyep.com/privacy")!)
UIApplication.sharedApplication().openURL(NSURL(string: YepConfig.termsURLString)!)
}
func textFieldDidChange(textField: UITextField) {
@@ -32,7 +32,7 @@ class SettingsViewController: BaseViewController {
],
[
"name": NSLocalizedString("About", comment: ""),
//"segue": "showAbout",
"segue": "showAbout",
],
]
+28
View File
@@ -0,0 +1,28 @@
//
// AboutCell.swift
// Yep
//
// Created by nixzhu on 15/8/28.
// Copyright (c) 2015 Catch Inc. All rights reserved.
//
import UIKit
class AboutCell: UITableViewCell {
@IBOutlet weak var annotationLabel: UILabel!
@IBOutlet weak var accessoryImageView: UIImageView!
override func awakeFromNib() {
super.awakeFromNib()
accessoryImageView.tintColor = UIColor.lightGrayColor()
}
override func setSelected(selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}
+42
View File
@@ -0,0 +1,42 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="7706" systemVersion="14E46" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES">
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="7703"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
<tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" id="KGk-i7-Jjw" customClass="AboutCell" customModule="Yep" customModuleProvider="target">
<rect key="frame" x="0.0" y="0.0" width="320" height="44"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
<rect key="frame" x="0.0" y="0.0" width="320" height="43"/>
<autoresizingMask key="autoresizingMask"/>
<subviews>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Va3-0s-Lh3">
<rect key="frame" x="139" y="11" width="42" height="21"/>
<fontDescription key="fontDescription" type="system" pointSize="17"/>
<color key="textColor" red="0.20000000298023224" green="0.20000000298023224" blue="0.20000000298023224" alpha="1" colorSpace="calibratedRGB"/>
<nil key="highlightedColor"/>
</label>
<imageView userInteractionEnabled="NO" contentMode="center" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_accessory" translatesAutoresizingMaskIntoConstraints="NO" id="Ol2-AJ-ZKk" userLabel="Accessory Image View">
<rect key="frame" x="289" y="12" width="11" height="20"/>
</imageView>
</subviews>
<constraints>
<constraint firstAttribute="trailing" secondItem="Ol2-AJ-ZKk" secondAttribute="trailing" constant="20" id="GFO-sM-dwp"/>
<constraint firstAttribute="centerX" secondItem="Va3-0s-Lh3" secondAttribute="centerX" id="cqf-OZ-V2m"/>
<constraint firstAttribute="centerY" secondItem="Ol2-AJ-ZKk" secondAttribute="centerY" id="de8-6H-RLv"/>
<constraint firstAttribute="centerY" secondItem="Va3-0s-Lh3" secondAttribute="centerY" id="lN3-xe-ytj"/>
</constraints>
</tableViewCellContentView>
<connections>
<outlet property="accessoryImageView" destination="Ol2-AJ-ZKk" id="E9C-OC-1WC"/>
<outlet property="annotationLabel" destination="Va3-0s-Lh3" id="7V0-j0-WV0"/>
</connections>
</tableViewCell>
</objects>
<resources>
<image name="icon_accessory" width="11" height="20"/>
</resources>
</document>
+14
View File
@@ -239,6 +239,9 @@
/* No comment provided by engineer. */
"Meet" = "Meet";
/* No comment provided by engineer. */
"Meet with genius" = "Meet with genius";
/* No comment provided by engineer. */
"Mute" = "Mute";
@@ -528,3 +531,14 @@
/* No comment provided by engineer. */
"You have blocked %@! Do you want to unblock him or her?" = "You have blocked %@! Do you want to unblock him or her?";
/* No comment provided by engineer. */
"Pods help Yep" = "Pods help Yep";
/* No comment provided by engineer. */
"Rate Yep on App Store" = "Rate Yep on App Store";
/* No comment provided by engineer. */
"Terms of Service" = "Terms of Service";
/* No comment provided by engineer. */
"Version" = "Version";
+17 -3
View File
@@ -16,7 +16,7 @@
"[Image]" = "[图片]";
/* No comment provided by engineer. */
"[Location]" = "[地点]";
"[Location]" = "[位置]";
/* No comment provided by engineer. */
"[Video]" = "[视频]";
@@ -141,7 +141,7 @@
"Done" = "完成";
/* No comment provided by engineer. */
"Edit Profile" = "编辑个人简介";
"Edit Profile" = "编辑个人主页";
/* No comment provided by engineer. */
"Enable Do Not Disturb failed!" = "开启“免打扰”失败";
@@ -241,6 +241,9 @@
/* No comment provided by engineer. */
"Meet" = "见面";
/* No comment provided by engineer. */
"Meet with genius" = "与天才相遇";
/* No comment provided by engineer. */
"Mute" = "静音";
@@ -474,7 +477,7 @@
"User authentication error, you need to login again!" = "用户验证错误,您需要重新登录!";
/* No comment provided by engineer. */
"View profile" = "查看个人简介";
"View profile" = "查看个人主页";
/* No comment provided by engineer. */
"Wait too long, the operation may not be completed." = "等待较久,操作可能未完成!";
@@ -530,3 +533,14 @@
/* No comment provided by engineer. */
"You have blocked %@! Do you want to unblock him or her?" = "您已屏蔽“%@”!您要解除对他或她的屏蔽吗?";
/* No comment provided by engineer. */
"Pods help Yep" = "Yep 使用的第三方 Pods";
/* No comment provided by engineer. */
"Rate Yep on App Store" = "在 App Store 上对 Yep 评分";
/* No comment provided by engineer. */
"Terms of Service" = "服务条款";
/* No comment provided by engineer. */
"Version" = "版本";