├── DMSocialContactsList ├── libraries │ ├── FacebookSDK.framework │ │ ├── Versions │ │ │ ├── Current │ │ │ └── A │ │ │ │ ├── FacebookSDK │ │ │ │ ├── Resources │ │ │ │ ├── FacebookSDKResources.bundle │ │ │ │ │ ├── FBDialog │ │ │ │ │ │ └── images │ │ │ │ │ │ │ ├── close.png │ │ │ │ │ │ │ ├── close@2x.png │ │ │ │ │ │ │ └── fbicon.png │ │ │ │ │ ├── FBLoginView │ │ │ │ │ │ └── images │ │ │ │ │ │ │ ├── f_logo.png │ │ │ │ │ │ │ ├── bluetint.png │ │ │ │ │ │ │ ├── facebook.png │ │ │ │ │ │ │ ├── login-button-small.png │ │ │ │ │ │ │ ├── login-button-small@2x.png │ │ │ │ │ │ │ ├── login-button-small-pressed.png │ │ │ │ │ │ │ └── login-button-small-pressed@2x.png │ │ │ │ │ ├── FBFriendPickerView │ │ │ │ │ │ └── images │ │ │ │ │ │ │ └── default.png │ │ │ │ │ ├── FBPlacePickerView │ │ │ │ │ │ └── images │ │ │ │ │ │ │ └── fb_generic_place.png │ │ │ │ │ ├── Contents │ │ │ │ │ │ └── Resources │ │ │ │ │ │ │ ├── en.lproj │ │ │ │ │ │ │ └── Localizable.strings │ │ │ │ │ │ │ └── he.lproj │ │ │ │ │ │ │ └── Localizable.strings │ │ │ │ │ └── FBProfilePictureView │ │ │ │ │ │ └── images │ │ │ │ │ │ ├── fb_blank_profile_square.png │ │ │ │ │ │ └── fb_blank_profile_portrait.png │ │ │ │ ├── FBUserSettingsViewResources.bundle │ │ │ │ │ ├── images │ │ │ │ │ │ ├── facebook-logo.png │ │ │ │ │ │ ├── facebook-logo@2x.png │ │ │ │ │ │ ├── silver-button-normal.png │ │ │ │ │ │ ├── silver-button-pressed.png │ │ │ │ │ │ ├── silver-button-normal@2x.png │ │ │ │ │ │ ├── silver-button-pressed@2x.png │ │ │ │ │ │ ├── loginBackgroundIPadPortrait.jpg │ │ │ │ │ │ ├── loginBackgroundIPadLandscape.jpg │ │ │ │ │ │ ├── loginBackgroundIPadPortrait@2x.jpg │ │ │ │ │ │ ├── loginBackgroundIPhonePortrait.jpg │ │ │ │ │ │ ├── loginBackgroundIPadLandscape@2x.jpg │ │ │ │ │ │ └── loginBackgroundIPhonePortrait@2x.jpg │ │ │ │ │ └── Contents │ │ │ │ │ │ └── Resources │ │ │ │ │ │ ├── en.lproj │ │ │ │ │ │ └── Localizable.strings │ │ │ │ │ │ └── he.lproj │ │ │ │ │ │ └── Localizable.strings │ │ │ │ └── Info.plist │ │ │ │ ├── DeprecatedHeaders │ │ │ │ ├── FBConnect.h │ │ │ │ ├── FBSessionManualTokenCachingStrategy.h │ │ │ │ ├── FBCacheDescriptor.h │ │ │ │ ├── FBLoginDialog.h │ │ │ │ ├── FBGraphPlace.h │ │ │ │ ├── FBGraphLocation.h │ │ │ │ ├── FBFrictionlessRequestSettings.h │ │ │ │ ├── FBGraphUser.h │ │ │ │ ├── FBProfilePictureView.h │ │ │ │ ├── FBSBJSON.h │ │ │ │ ├── FBSettings.h │ │ │ │ ├── FBSBJsonBase.h │ │ │ │ ├── FBSBJsonParser.h │ │ │ │ ├── FBOpenGraphAction.h │ │ │ │ ├── FBUserSettingsViewController.h │ │ │ │ ├── FBViewController.h │ │ │ │ ├── FBSBJsonWriter.h │ │ │ │ ├── FBError.h │ │ │ │ ├── FBLoginView.h │ │ │ │ ├── FBDialog.h │ │ │ │ ├── FBSessionTokenCachingStrategy.h │ │ │ │ ├── FacebookSDK.h │ │ │ │ ├── FBTestSession.h │ │ │ │ └── FBNativeDialogs.h │ │ │ │ └── Headers │ │ │ │ ├── FBCacheDescriptor.h │ │ │ │ ├── FBGraphPlace.h │ │ │ │ ├── FBGraphLocation.h │ │ │ │ ├── FBGraphUser.h │ │ │ │ ├── FBProfilePictureView.h │ │ │ │ ├── FBSettings.h │ │ │ │ ├── FBOpenGraphAction.h │ │ │ │ ├── FBUserSettingsViewController.h │ │ │ │ ├── FBViewController.h │ │ │ │ ├── FBError.h │ │ │ │ ├── FBLoginView.h │ │ │ │ ├── FBSessionTokenCachingStrategy.h │ │ │ │ ├── FacebookSDK.h │ │ │ │ ├── FBTestSession.h │ │ │ │ └── FBNativeDialogs.h │ │ ├── Headers │ │ ├── FacebookSDK │ │ └── Resources │ └── SDWebImage.framework │ │ ├── Versions │ │ ├── Current │ │ └── A │ │ │ ├── SDWebImage │ │ │ └── Headers │ │ │ ├── SDWebImageOperation.h │ │ │ ├── SDWebImageDecoder.h │ │ │ ├── SDWebImageDownloaderOperation.h │ │ │ ├── SDImageCacheDelegate.h │ │ │ ├── SDWebImagePrefetcher.h │ │ │ ├── SDWebImageDownloaderDelegate.h │ │ │ ├── SDWebImageManagerDelegate.h │ │ │ ├── SDWebImageDownloader.h │ │ │ ├── SDWebImageCompat.h │ │ │ ├── SDImageCache.h │ │ │ ├── SDWebImageManager.h │ │ │ └── UIImageView+WebCache.h │ │ ├── Headers │ │ └── SDWebImage ├── en.lproj │ └── InfoPlist.strings ├── Default.png ├── Default@2x.png ├── placeholder.png ├── Default-568h@2x.png ├── DMSocialContactsList-Prefix.pch ├── main.m ├── DMAppDelegate.h ├── DMContactlistViewController.h ├── DMContact.h ├── DMSocialContactsList-Info.plist ├── DMContact.m └── DMAppDelegate.m ├── images ├── screen1.png └── screen2.png ├── .gitignore └── README.md /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | ./A -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/Current: -------------------------------------------------------------------------------- 1 | A -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Headers: -------------------------------------------------------------------------------- 1 | ./Versions/A/Headers -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Headers: -------------------------------------------------------------------------------- 1 | Versions/Current/Headers -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/FacebookSDK: -------------------------------------------------------------------------------- 1 | ./Versions/A/FacebookSDK -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Resources: -------------------------------------------------------------------------------- 1 | ./Versions/A/Resources -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/SDWebImage: -------------------------------------------------------------------------------- 1 | Versions/Current/SDWebImage -------------------------------------------------------------------------------- /DMSocialContactsList/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /images/screen1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/images/screen1.png -------------------------------------------------------------------------------- /images/screen2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/images/screen2.png -------------------------------------------------------------------------------- /DMSocialContactsList/Default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/Default.png -------------------------------------------------------------------------------- /DMSocialContactsList/Default@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/Default@2x.png -------------------------------------------------------------------------------- /DMSocialContactsList/placeholder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/placeholder.png -------------------------------------------------------------------------------- /DMSocialContactsList/Default-568h@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/Default-568h@2x.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/FacebookSDK: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/FacebookSDK -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/SDWebImage: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/SDWebImage -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/close.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/close@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/close@2x.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/fbicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBDialog/images/fbicon.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Xcode 2 | .DS_Store 3 | build/ 4 | *.pbxuser 5 | !default.pbxuser 6 | *.mode1v3 7 | !default.mode1v3 8 | *.mode2v3 9 | !default.mode2v3 10 | *.perspectivev3 11 | !default.perspectivev3 12 | *.xcworkspace 13 | !default.xcworkspace 14 | xcuserdata 15 | profile 16 | *.moved-aside 17 | DerivedData 18 | .idea/ 19 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/f_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/f_logo.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/bluetint.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/bluetint.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/facebook.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/facebook-logo@2x.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBFriendPickerView/images/default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBFriendPickerView/images/default.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-normal@2x.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/silver-button-pressed@2x.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait.jpg -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small@2x.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBPlacePickerView/images/fb_generic_place.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBPlacePickerView/images/fb_generic_place.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape.jpg -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait@2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadPortrait@2x.jpg -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait.jpg -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/Contents/Resources/en.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/Contents/Resources/en.lproj/Localizable.strings -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/Contents/Resources/he.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/Contents/Resources/he.lproj/Localizable.strings -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape@2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPadLandscape@2x.jpg -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait@2x.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/images/loginBackgroundIPhonePortrait@2x.jpg -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBLoginView/images/login-button-small-pressed@2x.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/en.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/en.lproj/Localizable.strings -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/he.lproj/Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FBUserSettingsViewResources.bundle/Contents/Resources/he.lproj/Localizable.strings -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_square.png -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_portrait.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Dimillian/DMSocialContactsList/master/DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/FacebookSDKResources.bundle/FBProfilePictureView/images/fb_blank_profile_portrait.png -------------------------------------------------------------------------------- /DMSocialContactsList/DMSocialContactsList-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'DMSocialContactsList' target in the 'DMSocialContactsList' project 3 | // 4 | 5 | #import 6 | 7 | #ifndef __IPHONE_4_0 8 | #warning "This project uses features only available in iOS SDK 4.0 and later." 9 | #endif 10 | 11 | #ifdef __OBJC__ 12 | #import 13 | #import 14 | #endif 15 | -------------------------------------------------------------------------------- /DMSocialContactsList/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // DMSocialContactsList 4 | // 5 | // Created by Thomas Ricouard on 19/12/12. 6 | // Copyright (c) 2012 Thomas Ricouard. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "DMAppDelegate.h" 12 | 13 | int main(int argc, char *argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([DMAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDWebImageOperation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | 11 | @protocol SDWebImageOperation 12 | 13 | - (void)cancel; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /DMSocialContactsList/DMAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // DMAppDelegate.h 3 | // DMSocialContactsList 4 | // 5 | // Created by Thomas Ricouard on 19/12/12. 6 | // Copyright (c) 2012 Thomas Ricouard. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @class DMContactlistViewController; 12 | 13 | @interface DMAppDelegate : UIResponder 14 | 15 | @property (strong, nonatomic) UIWindow *window; 16 | 17 | @property (strong, nonatomic) DMContactlistViewController *viewController; 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /DMSocialContactsList/DMContactlistViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // DMViewController.h 3 | // DMSocialContactsList 4 | // 5 | // Created by Thomas Ricouard on 19/12/12. 6 | // Copyright (c) 2012 Thomas Ricouard. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DMContactlistViewController : UIViewController 12 | 13 | @property (strong, nonatomic) IBOutlet UITableView *tableView; 14 | @property (strong, nonatomic) IBOutlet UISearchBar *searchBar; 15 | @end 16 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDWebImageDecoder.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * Created by james on 9/28/11. 6 | * 7 | * For the full copyright and license information, please view the LICENSE 8 | * file that was distributed with this source code. 9 | */ 10 | 11 | #import 12 | #import "SDWebImageCompat.h" 13 | 14 | @interface UIImage (ForceDecode) 15 | 16 | + (UIImage *)decodedImageWithImage:(UIImage *)image; 17 | 18 | @end 19 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | FacebookSDK 9 | CFBundleIdentifier 10 | com.facebook.sdk 11 | CFBundleInfoDictionaryVersion 12 | 1.0 13 | CFBundlePackageType 14 | FMWK 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | 20 | 21 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBConnect.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #include "Facebook.h" 19 | #include "FBDialog.h" 20 | #include "FBLoginDialog.h" 21 | #include "FBRequest.h" 22 | #include "FBSBJSON.h" -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDWebImageDownloaderOperation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | #import "SDWebImageDownloader.h" 11 | #import "SDWebImageOperation.h" 12 | 13 | @interface SDWebImageDownloaderOperation : NSOperation 14 | 15 | @property (strong, nonatomic, readonly) NSURLRequest *request; 16 | @property (assign, nonatomic, readonly) SDWebImageDownloaderOptions options; 17 | 18 | - (id)initWithRequest:(NSURLRequest *)request 19 | queue:(dispatch_queue_t)queue 20 | options:(SDWebImageDownloaderOptions)options 21 | progress:(SDWebImageDownloaderProgressBlock)progressBlock 22 | completed:(SDWebImageDownloaderCompletedBlock)completedBlock 23 | cancelled:(void (^)())cancelBlock; 24 | 25 | @end 26 | -------------------------------------------------------------------------------- /DMSocialContactsList/DMContact.h: -------------------------------------------------------------------------------- 1 | // 2 | // DMContact.h 3 | // DMSocialContactsList 4 | // 5 | // Created by Thomas Ricouard on 19/12/12. 6 | // Copyright (c) 2012 Thomas Ricouard. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface DMContact : NSObject 12 | 13 | 14 | @property (nonatomic, strong) NSString *firstName; 15 | @property (nonatomic, strong) NSString *lastName; 16 | @property (nonatomic, readonly) NSString *fullName; 17 | 18 | //The facebook id, if it's null then it is a local contact. 19 | @property (nonatomic, strong) NSString *facebookId; 20 | @property (nonatomic, readonly) NSMutableArray *emails; 21 | @property (nonatomic, readonly) NSMutableArray *phones; 22 | 23 | //Data of the local image 24 | @property (nonatomic, strong) NSData *localImageData; 25 | //Generated URL to the square Facebook image 26 | @property (nonatomic, readonly) NSURL *facebookImageURL; 27 | 28 | //The reference to the selected value from the contact list. Store a phone number, email address or facebook ID 29 | @property (nonatomic, strong) NSString *selectedValueRef; 30 | 31 | @property (nonatomic, getter = isSelected, setter = isSelected:) BOOL selected; 32 | 33 | -(id)initWithFacebookData:(NSDictionary *)facbookData; 34 | 35 | -(void)addEmail:(NSString *)email; 36 | -(void)addPhone:(NSString *)phone; 37 | 38 | @end 39 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDImageCacheDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // SDImageCacheDelegate.h 3 | // Dailymotion 4 | // 5 | // Created by Olivier Poitrey on 16/09/10. 6 | // Copyright 2010 Dailymotion. All rights reserved. 7 | // 8 | 9 | #import "SDWebImageCompat.h" 10 | 11 | @class SDImageCache; 12 | 13 | /** 14 | * Delegate protocol for SDImageCache 15 | */ 16 | @protocol SDImageCacheDelegate 17 | 18 | @optional 19 | 20 | /** 21 | * Called when [SDImageCache queryDiskCacheForKey:delegate:userInfo:] retrived the image from cache 22 | * 23 | * @param imageCache The cache store instance 24 | * @param image The requested image instance 25 | * @param key The requested image cache key 26 | * @param info The provided user info dictionary 27 | */ 28 | - (void)imageCache:(SDImageCache *)imageCache didFindImage:(UIImage *)image forKey:(NSString *)key userInfo:(NSDictionary *)info; 29 | 30 | /** 31 | * Called when [SDImageCache queryDiskCacheForKey:delegate:userInfo:] did not find the image in the cache 32 | * 33 | * @param imageCache The cache store instance 34 | * @param key The requested image cache key 35 | * @param info The provided user info dictionary 36 | */ 37 | - (void)imageCache:(SDImageCache *)imageCache didNotFindImageForKey:(NSString *)key userInfo:(NSDictionary *)info; 38 | 39 | @end 40 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSessionManualTokenCachingStrategy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import "FBSessionTokenCachingStrategy.h" 18 | 19 | // FBSessionManualTokenCachingStrategy 20 | // 21 | // Summary: 22 | // Internal use only, this class enables migration logic for the Facebook class, by providing 23 | // a means to directly provide the access token to a FBSession object 24 | // 25 | @interface FBSessionManualTokenCachingStrategy : FBSessionTokenCachingStrategy 26 | 27 | // set the properties before instantiating the FBSession object in order to seed a token 28 | @property (readwrite, copy) NSString* accessToken; 29 | @property (readwrite, copy) NSDate* expirationDate; 30 | 31 | @end 32 | 33 | -------------------------------------------------------------------------------- /DMSocialContactsList/DMSocialContactsList-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | com.thomasricouard.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | FacebookAppID 26 | 106973982807361 27 | LSRequiresIPhoneOS 28 | 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UISupportedInterfaceOrientations 34 | 35 | UIInterfaceOrientationPortrait 36 | UIInterfaceOrientationLandscapeLeft 37 | UIInterfaceOrientationLandscapeRight 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDWebImagePrefetcher.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | #import "SDWebImageManager.h" 11 | 12 | /** 13 | * Prefetch some URLs in the cache for future use. Images are downloaded in low priority. 14 | */ 15 | @interface SDWebImagePrefetcher : NSObject 16 | 17 | /** 18 | * Maximum number of URLs to prefetch at the same time. Defaults to 3. 19 | */ 20 | @property (nonatomic, assign) NSUInteger maxConcurrentDownloads; 21 | 22 | /** 23 | * SDWebImageOptions for prefetcher. Defaults to SDWebImageLowPriority. 24 | */ 25 | @property (nonatomic, assign) SDWebImageOptions options; 26 | 27 | 28 | /** 29 | * Return the global image prefetcher instance. 30 | */ 31 | + (SDWebImagePrefetcher *)sharedImagePrefetcher; 32 | 33 | /** 34 | * Assign list of URLs to let SDWebImagePrefetcher to queue the prefetching, 35 | * currently one image is downloaded at a time, 36 | * and skips images for failed downloads and proceed to the next image in the list 37 | * 38 | * @param urls list of URLs to prefetch 39 | */ 40 | - (void)prefetchURLs:(NSArray *)urls; 41 | 42 | 43 | /** 44 | * Remove and cancel queued list 45 | */ 46 | - (void)cancelPrefetching; 47 | 48 | 49 | @end 50 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDWebImageDownloaderDelegate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "SDWebImageCompat.h" 10 | 11 | @class SDWebImageDownloader; 12 | 13 | /** 14 | * Delegate protocol for SDWebImageDownloader 15 | */ 16 | @protocol SDWebImageDownloaderDelegate 17 | 18 | @optional 19 | 20 | - (void)imageDownloaderDidFinish:(SDWebImageDownloader *)downloader; 21 | 22 | /** 23 | * Called repeatedly while the image is downloading when [SDWebImageDownloader progressive] is enabled. 24 | * 25 | * @param downloader The SDWebImageDownloader instance 26 | * @param image The partial image representing the currently download portion of the image 27 | */ 28 | - (void)imageDownloader:(SDWebImageDownloader *)downloader didUpdatePartialImage:(UIImage *)image; 29 | 30 | /** 31 | * Called when download completed successfuly. 32 | * 33 | * @param downloader The SDWebImageDownloader instance 34 | * @param image The downloaded image object 35 | */ 36 | - (void)imageDownloader:(SDWebImageDownloader *)downloader didFinishWithImage:(UIImage *)image; 37 | 38 | /** 39 | * Called when an error occurred 40 | * 41 | * @param downloader The SDWebImageDownloader instance 42 | * @param error The error details 43 | */ 44 | - (void)imageDownloader:(SDWebImageDownloader *)downloader didFailWithError:(NSError *)error; 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBCacheDescriptor.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBSession.h" 19 | 20 | /*! 21 | @class 22 | 23 | @abstract 24 | Base class from which CacheDescriptors derive, provides a method to fetch data for later use 25 | 26 | @discussion 27 | Cache descriptors allow your application to specify the arguments that will be 28 | later used with another object, such as the FBFriendPickerViewController. By using a cache descriptor 29 | instance, an application can choose to fetch data ahead of the point in time where the data is needed. 30 | */ 31 | @interface FBCacheDescriptor : NSObject 32 | 33 | /*! 34 | @method 35 | @abstract 36 | Fetches and caches the data described by the cache descriptor instance, for the given session. 37 | 38 | @param session the to use for fetching data 39 | */ 40 | - (void)prefetchAndCacheForSession:(FBSession*)session; 41 | 42 | @end 43 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBCacheDescriptor.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBSession.h" 19 | 20 | /*! 21 | @class 22 | 23 | @abstract 24 | Base class from which CacheDescriptors derive, provides a method to fetch data for later use 25 | 26 | @discussion 27 | Cache descriptors allow your application to specify the arguments that will be 28 | later used with another object, such as the FBFriendPickerViewController. By using a cache descriptor 29 | instance, an application can choose to fetch data ahead of the point in time where the data is needed. 30 | */ 31 | @interface FBCacheDescriptor : NSObject 32 | 33 | /*! 34 | @method 35 | @abstract 36 | Fetches and caches the data described by the cache descriptor instance, for the given session. 37 | 38 | @param session the to use for fetching data 39 | */ 40 | - (void)prefetchAndCacheForSession:(FBSession*)session; 41 | 42 | @end 43 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBLoginDialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | 18 | #import "FBDialog.h" 19 | 20 | @protocol FBLoginDialogDelegate; 21 | 22 | /** 23 | * Do not use this interface directly, instead, use authorize in Facebook.h 24 | * 25 | * Facebook Login Dialog interface for start the facebook webView login dialog. 26 | * It start pop-ups prompting for credentials and permissions. 27 | */ 28 | 29 | @interface FBLoginDialog : FBDialog { 30 | id _loginDelegate; 31 | } 32 | 33 | -(id) initWithURL:(NSString *) loginURL 34 | loginParams:(NSMutableDictionary *) params 35 | delegate:(id ) delegate; 36 | @end 37 | 38 | /////////////////////////////////////////////////////////////////////////////////////////////////// 39 | 40 | @protocol FBLoginDialogDelegate 41 | 42 | - (void)fbDialogLogin:(NSString*)token expirationDate:(NSDate*)expirationDate; 43 | 44 | - (void)fbDialogNotLogin:(BOOL)cancelled; 45 | 46 | @end 47 | 48 | 49 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBGraphPlace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBGraphLocation.h" 19 | #import "FBGraphObject.h" 20 | 21 | /*! 22 | @protocol 23 | 24 | @abstract 25 | The `FBGraphPlace` protocol enables typed access to a place object 26 | as represented in the Graph API. 27 | 28 | 29 | @discussion 30 | The `FBGraphPlace` protocol represents the most commonly used properties of a 31 | Facebook place object. It may be used to access an `NSDictionary` object that has 32 | been wrapped with an facade. 33 | */ 34 | @protocol FBGraphPlace 35 | 36 | /*! 37 | @property 38 | @abstract Typed access to the place ID. 39 | */ 40 | @property (retain, nonatomic) NSString *id; 41 | 42 | /*! 43 | @property 44 | @abstract Typed access to the place name. 45 | */ 46 | @property (retain, nonatomic) NSString *name; 47 | 48 | /*! 49 | @property 50 | @abstract Typed access to the place category. 51 | */ 52 | @property (retain, nonatomic) NSString *category; 53 | 54 | /*! 55 | @property 56 | @abstract Typed access to the place location. 57 | */ 58 | @property (retain, nonatomic) id location; 59 | 60 | @end -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphPlace.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBGraphLocation.h" 19 | #import "FBGraphObject.h" 20 | 21 | /*! 22 | @protocol 23 | 24 | @abstract 25 | The `FBGraphPlace` protocol enables typed access to a place object 26 | as represented in the Graph API. 27 | 28 | 29 | @discussion 30 | The `FBGraphPlace` protocol represents the most commonly used properties of a 31 | Facebook place object. It may be used to access an `NSDictionary` object that has 32 | been wrapped with an facade. 33 | */ 34 | @protocol FBGraphPlace 35 | 36 | /*! 37 | @property 38 | @abstract Typed access to the place ID. 39 | */ 40 | @property (retain, nonatomic) NSString *id; 41 | 42 | /*! 43 | @property 44 | @abstract Typed access to the place name. 45 | */ 46 | @property (retain, nonatomic) NSString *name; 47 | 48 | /*! 49 | @property 50 | @abstract Typed access to the place category. 51 | */ 52 | @property (retain, nonatomic) NSString *category; 53 | 54 | /*! 55 | @property 56 | @abstract Typed access to the place location. 57 | */ 58 | @property (retain, nonatomic) id location; 59 | 60 | @end -------------------------------------------------------------------------------- /DMSocialContactsList/DMContact.m: -------------------------------------------------------------------------------- 1 | // 2 | // DMContact.m 3 | // DMSocialContactsList 4 | // 5 | // Created by Thomas Ricouard on 19/12/12. 6 | // Copyright (c) 2012 Thomas Ricouard. All rights reserved. 7 | // 8 | 9 | #import "DMContact.h" 10 | 11 | @implementation DMContact 12 | @dynamic fullName; 13 | @dynamic facebookImageURL; 14 | 15 | 16 | -(id)initWithFacebookData:(NSDictionary *)facbookData 17 | { 18 | self = [super init]; 19 | if (self) { 20 | _facebookId = [facbookData objectForKey:@"id"]; 21 | NSString *fbName = [facbookData objectForKey:@"name"]; 22 | NSArray *names = [fbName componentsSeparatedByString:@" "]; 23 | _firstName = [names objectAtIndex:0]; 24 | _lastName = [names lastObject]; 25 | } 26 | return self; 27 | } 28 | -(NSString *)fullName 29 | { 30 | if (self.lastName != nil && self.firstName != nil){ 31 | return [NSString stringWithFormat:@"%@ %@", self.firstName, self.lastName]; 32 | } 33 | else if (self.lastName == nil){ 34 | return [NSString stringWithFormat:@"%@", self.firstName]; 35 | } 36 | else{ 37 | return [NSString stringWithFormat:@"%@", self.lastName]; 38 | } 39 | 40 | } 41 | 42 | -(NSURL *)facebookImageURL 43 | { 44 | if (self.facebookId){ 45 | return [NSURL URLWithString:[NSString stringWithFormat:@"https://graph.facebook.com/%@/picture?width=150&height=150", self.facebookId]]; 46 | } 47 | return nil; 48 | } 49 | 50 | -(void)addEmail:(NSString *)email 51 | { 52 | if (!self.emails) { 53 | _emails = [[NSMutableArray alloc]init]; 54 | } 55 | if (email) { 56 | [_emails addObject:email]; 57 | } 58 | } 59 | 60 | -(void)addPhone:(NSString *)phone 61 | { 62 | if (!self.phones) { 63 | _phones = [[NSMutableArray alloc]init]; 64 | } 65 | if (phone) { 66 | [_phones addObject:phone]; 67 | } 68 | } 69 | 70 | @end 71 | 72 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBGraphLocation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBGraphObject.h" 19 | 20 | /*! 21 | @protocol 22 | 23 | @abstract 24 | The `FBGraphLocation` protocol enables typed access to the `location` property 25 | of a Facebook place object. 26 | 27 | 28 | @discussion 29 | The `FBGraphLocation` protocol represents the most commonly used properties of a 30 | location object. It may be used to access an `NSDictionary` object that has 31 | been wrapped with an facade. 32 | */ 33 | @protocol FBGraphLocation 34 | 35 | /*! 36 | @property 37 | @abstract Typed access to a location's street. 38 | */ 39 | @property (retain, nonatomic) NSString *street; 40 | 41 | /*! 42 | @property 43 | @abstract Typed access to a location's city. 44 | */ 45 | @property (retain, nonatomic) NSString *city; 46 | 47 | /*! 48 | @property 49 | @abstract Typed access to a location's state. 50 | */ 51 | @property (retain, nonatomic) NSString *state; 52 | 53 | /*! 54 | @property 55 | @abstract Typed access to a location's country. 56 | */ 57 | @property (retain, nonatomic) NSString *country; 58 | 59 | /*! 60 | @property 61 | @abstract Typed access to a location's zip code. 62 | */ 63 | @property (retain, nonatomic) NSString *zip; 64 | 65 | /*! 66 | @property 67 | @abstract Typed access to a location's latitude. 68 | */ 69 | @property (retain, nonatomic) NSNumber *latitude; 70 | 71 | /*! 72 | @property 73 | @abstract Typed access to a location's longitude. 74 | */ 75 | @property (retain, nonatomic) NSNumber *longitude; 76 | 77 | @end -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphLocation.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBGraphObject.h" 19 | 20 | /*! 21 | @protocol 22 | 23 | @abstract 24 | The `FBGraphLocation` protocol enables typed access to the `location` property 25 | of a Facebook place object. 26 | 27 | 28 | @discussion 29 | The `FBGraphLocation` protocol represents the most commonly used properties of a 30 | location object. It may be used to access an `NSDictionary` object that has 31 | been wrapped with an facade. 32 | */ 33 | @protocol FBGraphLocation 34 | 35 | /*! 36 | @property 37 | @abstract Typed access to a location's street. 38 | */ 39 | @property (retain, nonatomic) NSString *street; 40 | 41 | /*! 42 | @property 43 | @abstract Typed access to a location's city. 44 | */ 45 | @property (retain, nonatomic) NSString *city; 46 | 47 | /*! 48 | @property 49 | @abstract Typed access to a location's state. 50 | */ 51 | @property (retain, nonatomic) NSString *state; 52 | 53 | /*! 54 | @property 55 | @abstract Typed access to a location's country. 56 | */ 57 | @property (retain, nonatomic) NSString *country; 58 | 59 | /*! 60 | @property 61 | @abstract Typed access to a location's zip code. 62 | */ 63 | @property (retain, nonatomic) NSString *zip; 64 | 65 | /*! 66 | @property 67 | @abstract Typed access to a location's latitude. 68 | */ 69 | @property (retain, nonatomic) NSNumber *latitude; 70 | 71 | /*! 72 | @property 73 | @abstract Typed access to a location's longitude. 74 | */ 75 | @property (retain, nonatomic) NSNumber *longitude; 76 | 77 | @end -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDWebImageManagerDelegate.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | @class SDWebImageManager; 10 | @class UIImage; 11 | 12 | /** 13 | * Delegate protocol for SDWebImageManager 14 | */ 15 | @protocol SDWebImageManagerDelegate 16 | 17 | @optional 18 | 19 | /** 20 | * Called while an image is downloading with an partial image object representing the currently downloaded portion of the image. 21 | * This delegate is called only if ImageIO is available and `SDWebImageProgressiveDownload` option has been used. 22 | * 23 | * @param imageManager The image manager 24 | * @param image The retrived image object 25 | * @param url The image URL used to retrive the image 26 | * @param info The user info dictionnary 27 | */ 28 | - (void)webImageManager:(SDWebImageManager *)imageManager didProgressWithPartialImage:(UIImage *)image forURL:(NSURL *)url userInfo:(NSDictionary *)info; 29 | - (void)webImageManager:(SDWebImageManager *)imageManager didProgressWithPartialImage:(UIImage *)image forURL:(NSURL *)url; 30 | 31 | /** 32 | * Called when image download is completed successfuly. 33 | * 34 | * @param imageManager The image manager 35 | * @param image The retrived image object 36 | * @param url The image URL used to retrive the image 37 | * @param info The user info dictionnary 38 | */ 39 | - (void)webImageManager:(SDWebImageManager *)imageManager didFinishWithImage:(UIImage *)image forURL:(NSURL *)url userInfo:(NSDictionary *)info; 40 | - (void)webImageManager:(SDWebImageManager *)imageManager didFinishWithImage:(UIImage *)image forURL:(NSURL *)url; 41 | - (void)webImageManager:(SDWebImageManager *)imageManager didFinishWithImage:(UIImage *)image; 42 | 43 | /** 44 | * Called when an error occurred. 45 | * 46 | * @param imageManager The image manager 47 | * @param error The error 48 | * @param url The image URL used to retrive the image 49 | * @param info The user info dictionnary 50 | */ 51 | - (void)webImageManager:(SDWebImageManager *)imageManager didFailWithError:(NSError *)error forURL:(NSURL *)url userInfo:(NSDictionary *)info; 52 | - (void)webImageManager:(SDWebImageManager *)imageManager didFailWithError:(NSError *)error forURL:(NSURL *)url; 53 | - (void)webImageManager:(SDWebImageManager *)imageManager didFailWithError:(NSError *)error; 54 | 55 | @end 56 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBFrictionlessRequestSettings.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | @class Facebook; 20 | 21 | /** 22 | * Do not use this interface directly, instead, use methods in Facebook.h 23 | * 24 | * Handles frictionless interaction and recipient-caching by the SDK, 25 | * see https://developers.facebook.com/docs/reference/dialogs/requests/ 26 | */ 27 | @interface FBFrictionlessRequestSettings : NSObject { 28 | @private 29 | NSArray* _allowedRecipients; 30 | FBRequest* _activeRequest; 31 | BOOL _enabled; 32 | } 33 | 34 | /** 35 | * BOOL indicating whether frictionless request sending has been enabled 36 | */ 37 | @property(nonatomic, readonly) BOOL enabled; 38 | 39 | /** 40 | * Enable frictionless request sending by the sdk; this means: 41 | * 1. query and cache the current set of frictionless recipients 42 | * 2. flag other facets of the sdk to behave in a frictionless way 43 | */ 44 | - (void)enableWithFacebook:(Facebook*)facebook; 45 | 46 | /** 47 | * Reload recipient cache; called by the sdk to keep the cache fresh; 48 | * method makes graph request: me/apprequestformerrecipients 49 | */ 50 | - (void)reloadRecipientCacheWithFacebook:(Facebook*)facebook; 51 | 52 | /** 53 | * Update the recipient cache; called by the sdk to keep the cache fresh; 54 | */ 55 | - (void)updateRecipientCacheWithRecipients:(NSArray*)ids; 56 | 57 | /** 58 | * Given an fbID for a user, indicates whether user is enabled for 59 | * frictionless calls 60 | */ 61 | - (BOOL)isFrictionlessEnabledForRecipient:(id)fbid; 62 | 63 | /** 64 | * Given an array of user fbIDs, indicates whether they are enabled for 65 | * frictionless calls 66 | */ 67 | - (BOOL)isFrictionlessEnabledForRecipients:(NSArray*)fbids; 68 | 69 | /** 70 | * init the frictionless cache object 71 | */ 72 | - (id)init; 73 | 74 | @end 75 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBGraphUser.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBGraphPlace.h" 19 | #import "FBGraphObject.h" 20 | 21 | /*! 22 | @protocol 23 | 24 | @abstract 25 | The `FBGraphUser` protocol enables typed access to a user object 26 | as represented in the Graph API. 27 | 28 | 29 | @discussion 30 | The `FBGraphUser` protocol represents the most commonly used properties of a 31 | Facebook user object. It may be used to access an `NSDictionary` object that has 32 | been wrapped with an facade. 33 | */ 34 | @protocol FBGraphUser 35 | 36 | /*! 37 | @property 38 | @abstract Typed access to the user's ID. 39 | */ 40 | @property (retain, nonatomic) NSString *id; 41 | 42 | /*! 43 | @property 44 | @abstract Typed access to the user's name. 45 | */ 46 | @property (retain, nonatomic) NSString *name; 47 | 48 | /*! 49 | @property 50 | @abstract Typed access to the user's first name. 51 | */ 52 | @property (retain, nonatomic) NSString *first_name; 53 | 54 | /*! 55 | @property 56 | @abstract Typed access to the user's middle name. 57 | */ 58 | @property (retain, nonatomic) NSString *middle_name; 59 | 60 | /*! 61 | @property 62 | @abstract Typed access to the user's last name. 63 | */ 64 | @property (retain, nonatomic) NSString *last_name; 65 | 66 | /*! 67 | @property 68 | @abstract Typed access to the user's profile URL. 69 | */ 70 | @property (retain, nonatomic) NSString *link; 71 | 72 | /*! 73 | @property 74 | @abstract Typed access to the user's username. 75 | */ 76 | @property (retain, nonatomic) NSString *username; 77 | 78 | /*! 79 | @property 80 | @abstract Typed access to the user's birthday. 81 | */ 82 | @property (retain, nonatomic) NSString *birthday; 83 | 84 | /*! 85 | @property 86 | @abstract Typed access to the user's current city. 87 | */ 88 | @property (retain, nonatomic) id location; 89 | 90 | @end -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBGraphUser.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBGraphPlace.h" 19 | #import "FBGraphObject.h" 20 | 21 | /*! 22 | @protocol 23 | 24 | @abstract 25 | The `FBGraphUser` protocol enables typed access to a user object 26 | as represented in the Graph API. 27 | 28 | 29 | @discussion 30 | The `FBGraphUser` protocol represents the most commonly used properties of a 31 | Facebook user object. It may be used to access an `NSDictionary` object that has 32 | been wrapped with an facade. 33 | */ 34 | @protocol FBGraphUser 35 | 36 | /*! 37 | @property 38 | @abstract Typed access to the user's ID. 39 | */ 40 | @property (retain, nonatomic) NSString *id; 41 | 42 | /*! 43 | @property 44 | @abstract Typed access to the user's name. 45 | */ 46 | @property (retain, nonatomic) NSString *name; 47 | 48 | /*! 49 | @property 50 | @abstract Typed access to the user's first name. 51 | */ 52 | @property (retain, nonatomic) NSString *first_name; 53 | 54 | /*! 55 | @property 56 | @abstract Typed access to the user's middle name. 57 | */ 58 | @property (retain, nonatomic) NSString *middle_name; 59 | 60 | /*! 61 | @property 62 | @abstract Typed access to the user's last name. 63 | */ 64 | @property (retain, nonatomic) NSString *last_name; 65 | 66 | /*! 67 | @property 68 | @abstract Typed access to the user's profile URL. 69 | */ 70 | @property (retain, nonatomic) NSString *link; 71 | 72 | /*! 73 | @property 74 | @abstract Typed access to the user's username. 75 | */ 76 | @property (retain, nonatomic) NSString *username; 77 | 78 | /*! 79 | @property 80 | @abstract Typed access to the user's birthday. 81 | */ 82 | @property (retain, nonatomic) NSString *birthday; 83 | 84 | /*! 85 | @property 86 | @abstract Typed access to the user's current city. 87 | */ 88 | @property (retain, nonatomic) id location; 89 | 90 | @end -------------------------------------------------------------------------------- /DMSocialContactsList/DMAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // DMAppDelegate.m 3 | // DMSocialContactsList 4 | // 5 | // Created by Thomas Ricouard on 19/12/12. 6 | // Copyright (c) 2012 Thomas Ricouard. All rights reserved. 7 | // 8 | 9 | #import "DMAppDelegate.h" 10 | 11 | #import "DMContactlistViewController.h" 12 | 13 | @implementation DMAppDelegate 14 | 15 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 16 | { 17 | self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 18 | // Override point for customization after application launch. 19 | self.viewController = [[DMContactlistViewController alloc] initWithNibName:@"DMContactlistViewController" bundle:nil]; 20 | UINavigationController *navigationController = [[UINavigationController alloc]initWithRootViewController:self.viewController]; 21 | self.window.rootViewController = navigationController; 22 | [self.window makeKeyAndVisible]; 23 | return YES; 24 | } 25 | 26 | - (void)applicationWillResignActive:(UIApplication *)application 27 | { 28 | // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. 29 | // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. 30 | } 31 | 32 | - (void)applicationDidEnterBackground:(UIApplication *)application 33 | { 34 | // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. 35 | // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 36 | } 37 | 38 | - (void)applicationWillEnterForeground:(UIApplication *)application 39 | { 40 | // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. 41 | } 42 | 43 | - (void)applicationDidBecomeActive:(UIApplication *)application 44 | { 45 | // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. 46 | } 47 | 48 | - (void)applicationWillTerminate:(UIApplication *)application 49 | { 50 | // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 51 | } 52 | 53 | @end 54 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDWebImageDownloader.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | #import "SDWebImageCompat.h" 11 | #import "SDWebImageOperation.h" 12 | 13 | typedef enum 14 | { 15 | SDWebImageDownloaderLowPriority = 1 << 0, 16 | SDWebImageDownloaderProgressiveDownload = 1 << 1 17 | } SDWebImageDownloaderOptions; 18 | 19 | extern NSString *const SDWebImageDownloadStartNotification; 20 | extern NSString *const SDWebImageDownloadStopNotification; 21 | 22 | typedef void(^SDWebImageDownloaderProgressBlock)(NSUInteger receivedSize, long long expectedSize); 23 | typedef void(^SDWebImageDownloaderCompletedBlock)(UIImage *image, NSData *data, NSError *error, BOOL finished); 24 | 25 | /** 26 | * Asynchronous downloader dedicated and optimized for image loading. 27 | */ 28 | @interface SDWebImageDownloader : NSObject 29 | 30 | @property (assign, nonatomic) NSInteger maxConcurrentDownloads; 31 | 32 | + (SDWebImageDownloader *)sharedDownloader; 33 | 34 | /** 35 | * Creates a SDWebImageDownloader async downloader instance with a given URL 36 | * 37 | * The delegate will be informed when the image is finish downloaded or an error has happen. 38 | * 39 | * @see SDWebImageDownloaderDelegate 40 | * 41 | * @param url The URL to the image to download 42 | * @param options The options to be used for this download 43 | * @param progress A block called repeatedly while the image is downloading 44 | * @param completed A block called once the download is completed. 45 | * If the download succeeded, the image parameter is set, in case of error, 46 | * error parameter is set with the error. The last parameter is always YES 47 | * if SDWebImageDownloaderProgressiveDownload isn't use. With the 48 | * SDWebImageDownloaderProgressiveDownload option, this block is called 49 | * repeatedly with the partial image object and the finished argument set to NO 50 | * before to be called a last time with the full image and finished argument 51 | * set to YES. In case of error, the finished argument is always YES. 52 | * 53 | * @return A cancellable SDWebImageOperation 54 | */ 55 | - (id)downloadImageWithURL:(NSURL *)url 56 | options:(SDWebImageDownloaderOptions)options 57 | progress:(SDWebImageDownloaderProgressBlock)progressBlock 58 | completed:(SDWebImageDownloaderCompletedBlock)completedBlock; 59 | 60 | @end 61 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBProfilePictureView.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | /*! 20 | @typedef FBProfilePictureCropping enum 21 | 22 | @abstract 23 | Type used to specify the cropping treatment of the profile picture. 24 | 25 | @discussion 26 | */ 27 | typedef enum { 28 | 29 | /*! Square (default) - the square version that the Facebook user defined. */ 30 | FBProfilePictureCroppingSquare = 0, 31 | 32 | /*! Original - the original profile picture, as uploaded. */ 33 | FBProfilePictureCroppingOriginal = 1 34 | 35 | } FBProfilePictureCropping; 36 | 37 | /*! 38 | @class 39 | @abstract 40 | An instance of `FBProfilePictureView` is used to display a profile picture. 41 | 42 | The default behavior of this control is to center the profile picture 43 | in the view and shrinks it, if necessary, to the view's bounds, preserving the aspect ratio. The smallest 44 | possible image is downloaded to ensure that scaling up never happens. Resizing the view may result in 45 | a different size of the image being loaded. Canonical image sizes are documented in the "Pictures" section 46 | of https://developers.facebook.com/docs/reference/api. 47 | */ 48 | @interface FBProfilePictureView : UIView 49 | 50 | /*! 51 | @abstract 52 | The Facebook ID of the user, place or object for which a picture should be fetched and displayed. 53 | */ 54 | @property (copy, nonatomic) NSString* profileID; 55 | 56 | /*! 57 | @abstract 58 | The cropping to use for the profile picture. 59 | */ 60 | @property (nonatomic) FBProfilePictureCropping pictureCropping; 61 | 62 | /*! 63 | @abstract 64 | Initializes and returns a profile view object. 65 | */ 66 | - (id)init; 67 | 68 | 69 | /*! 70 | @abstract 71 | Initializes and returns a profile view object for the given Facebook ID and cropping. 72 | 73 | @param profileID The Facebook ID of the user, place or object for which a picture should be fetched and displayed. 74 | @param pictureCropping The cropping to use for the profile picture. 75 | */ 76 | - (id)initWithProfileID:(NSString*)profileID 77 | pictureCropping:(FBProfilePictureCropping)pictureCropping; 78 | 79 | 80 | @end 81 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBProfilePictureView.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | /*! 20 | @typedef FBProfilePictureCropping enum 21 | 22 | @abstract 23 | Type used to specify the cropping treatment of the profile picture. 24 | 25 | @discussion 26 | */ 27 | typedef enum { 28 | 29 | /*! Square (default) - the square version that the Facebook user defined. */ 30 | FBProfilePictureCroppingSquare = 0, 31 | 32 | /*! Original - the original profile picture, as uploaded. */ 33 | FBProfilePictureCroppingOriginal = 1 34 | 35 | } FBProfilePictureCropping; 36 | 37 | /*! 38 | @class 39 | @abstract 40 | An instance of `FBProfilePictureView` is used to display a profile picture. 41 | 42 | The default behavior of this control is to center the profile picture 43 | in the view and shrinks it, if necessary, to the view's bounds, preserving the aspect ratio. The smallest 44 | possible image is downloaded to ensure that scaling up never happens. Resizing the view may result in 45 | a different size of the image being loaded. Canonical image sizes are documented in the "Pictures" section 46 | of https://developers.facebook.com/docs/reference/api. 47 | */ 48 | @interface FBProfilePictureView : UIView 49 | 50 | /*! 51 | @abstract 52 | The Facebook ID of the user, place or object for which a picture should be fetched and displayed. 53 | */ 54 | @property (copy, nonatomic) NSString* profileID; 55 | 56 | /*! 57 | @abstract 58 | The cropping to use for the profile picture. 59 | */ 60 | @property (nonatomic) FBProfilePictureCropping pictureCropping; 61 | 62 | /*! 63 | @abstract 64 | Initializes and returns a profile view object. 65 | */ 66 | - (id)init; 67 | 68 | 69 | /*! 70 | @abstract 71 | Initializes and returns a profile view object for the given Facebook ID and cropping. 72 | 73 | @param profileID The Facebook ID of the user, place or object for which a picture should be fetched and displayed. 74 | @param pictureCropping The cropping to use for the profile picture. 75 | */ 76 | - (id)initWithProfileID:(NSString*)profileID 77 | pictureCropping:(FBProfilePictureCropping)pictureCropping; 78 | 79 | 80 | @end 81 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJSON.h: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (C) 2007-2009 Stig Brautaset. All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | 7 | * Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | * Neither the name of the author nor the names of its contributors may be used 15 | to endorse or promote products derived from this software without specific 16 | prior written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 19 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 21 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 22 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 24 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 25 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 26 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | */ 29 | 30 | #import 31 | #import "FBSBJsonParser.h" 32 | #import "FBSBJsonWriter.h" 33 | 34 | /** 35 | @brief Facade for SBJsonWriter/SBJsonParser. 36 | 37 | Requests are forwarded to instances of SBJsonWriter and SBJsonParser. 38 | */ 39 | @interface FBSBJSON : FBSBJsonBase { 40 | 41 | @private 42 | FBSBJsonParser *jsonParser; 43 | FBSBJsonWriter *jsonWriter; 44 | } 45 | 46 | 47 | /// Return the fragment represented by the given string 48 | - (id)fragmentWithString:(NSString*)jsonrep 49 | error:(NSError**)error; 50 | 51 | /// Return the object represented by the given string 52 | - (id)objectWithString:(NSString*)jsonrep 53 | error:(NSError**)error; 54 | 55 | /// Parse the string and return the represented object (or scalar) 56 | - (id)objectWithString:(id)value 57 | allowScalar:(BOOL)x 58 | error:(NSError**)error; 59 | 60 | 61 | /// Return JSON representation of an array or dictionary 62 | - (NSString*)stringWithObject:(id)value 63 | error:(NSError**)error; 64 | 65 | /// Return JSON representation of any legal JSON value 66 | - (NSString*)stringWithFragment:(id)value 67 | error:(NSError**)error; 68 | 69 | /// Return JSON representation (or fragment) for the given object 70 | - (NSString*)stringWithObject:(id)value 71 | allowScalar:(BOOL)x 72 | error:(NSError**)error; 73 | 74 | 75 | @end 76 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBSettings.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | /* 20 | * Constants defining logging behavior. Use with <[FBSettings setLoggingBehavior]>. 21 | */ 22 | 23 | /*! Log requests from FBRequest* classes */ 24 | extern NSString *const FBLoggingBehaviorFBRequests; 25 | 26 | /*! Log requests from FBURLConnection* classes */ 27 | extern NSString *const FBLoggingBehaviorFBURLConnections; 28 | 29 | /*! Include access token in logging. */ 30 | extern NSString *const FBLoggingBehaviorAccessTokens; 31 | 32 | /*! Log session state transitions. */ 33 | extern NSString *const FBLoggingBehaviorSessionStateTransitions; 34 | 35 | /*! Log performance characteristics */ 36 | extern NSString *const FBLoggingBehaviorPerformanceCharacteristics; 37 | 38 | @interface FBSettings : NSObject 39 | 40 | /*! 41 | @method 42 | 43 | @abstract Retrieve the current Facebook SDK logging behavior. 44 | 45 | */ 46 | + (NSSet *)loggingBehavior; 47 | 48 | /*! 49 | @method 50 | 51 | @abstract Set the current Facebook SDK logging behavior. This should consist of strings defined as 52 | constants with FBLogBehavior*, and can be constructed with [NSSet initWithObjects:]. 53 | 54 | @param loggingBehavior A set of strings indicating what information should be logged. 55 | */ 56 | + (void)setLoggingBehavior:(NSSet *)loggingBehavior; 57 | 58 | /*! @abstract Retreive the current auto publish behavior. Defaults to YES. */ 59 | + (BOOL)shouldAutoPublishInstall; 60 | 61 | /*! 62 | @method 63 | 64 | @abstract Sets whether the SDK will automatically publish an install to Facebook during first FBSession init 65 | or on first network request to Facebook. 66 | 67 | @param autoPublishInstall If YES, automatically publish the install; if NO, do not. 68 | */ 69 | + (void)setShouldAutoPublishInstall:(BOOL)autoPublishInstall; 70 | 71 | // For best results, call this function during app activation. 72 | /*! 73 | @method 74 | 75 | @abstract Manually publish an attributed install to the facebook graph. Use this method if you have disabled 76 | auto publish and wish to manually send an install from your code. This method acquires the current attribution 77 | id from the facebook application, queries the graph API to determine if the application has install 78 | attribution enabled, publishes the id, and records success to avoid reporting more than once. 79 | 80 | @param appID A specific appID to publish an install for. If nil, uses [FBSession defaultAppID]. 81 | */ 82 | + (void) publishInstall:(NSString *)appID; 83 | 84 | @end 85 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSettings.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | /* 20 | * Constants defining logging behavior. Use with <[FBSettings setLoggingBehavior]>. 21 | */ 22 | 23 | /*! Log requests from FBRequest* classes */ 24 | extern NSString *const FBLoggingBehaviorFBRequests; 25 | 26 | /*! Log requests from FBURLConnection* classes */ 27 | extern NSString *const FBLoggingBehaviorFBURLConnections; 28 | 29 | /*! Include access token in logging. */ 30 | extern NSString *const FBLoggingBehaviorAccessTokens; 31 | 32 | /*! Log session state transitions. */ 33 | extern NSString *const FBLoggingBehaviorSessionStateTransitions; 34 | 35 | /*! Log performance characteristics */ 36 | extern NSString *const FBLoggingBehaviorPerformanceCharacteristics; 37 | 38 | @interface FBSettings : NSObject 39 | 40 | /*! 41 | @method 42 | 43 | @abstract Retrieve the current Facebook SDK logging behavior. 44 | 45 | */ 46 | + (NSSet *)loggingBehavior; 47 | 48 | /*! 49 | @method 50 | 51 | @abstract Set the current Facebook SDK logging behavior. This should consist of strings defined as 52 | constants with FBLogBehavior*, and can be constructed with [NSSet initWithObjects:]. 53 | 54 | @param loggingBehavior A set of strings indicating what information should be logged. 55 | */ 56 | + (void)setLoggingBehavior:(NSSet *)loggingBehavior; 57 | 58 | /*! @abstract Retreive the current auto publish behavior. Defaults to YES. */ 59 | + (BOOL)shouldAutoPublishInstall; 60 | 61 | /*! 62 | @method 63 | 64 | @abstract Sets whether the SDK will automatically publish an install to Facebook during first FBSession init 65 | or on first network request to Facebook. 66 | 67 | @param autoPublishInstall If YES, automatically publish the install; if NO, do not. 68 | */ 69 | + (void)setShouldAutoPublishInstall:(BOOL)autoPublishInstall; 70 | 71 | // For best results, call this function during app activation. 72 | /*! 73 | @method 74 | 75 | @abstract Manually publish an attributed install to the facebook graph. Use this method if you have disabled 76 | auto publish and wish to manually send an install from your code. This method acquires the current attribution 77 | id from the facebook application, queries the graph API to determine if the application has install 78 | attribution enabled, publishes the id, and records success to avoid reporting more than once. 79 | 80 | @param appID A specific appID to publish an install for. If nil, uses [FBSession defaultAppID]. 81 | */ 82 | + (void) publishInstall:(NSString *)appID; 83 | 84 | @end 85 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDWebImageCompat.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * (c) Jamie Pinkham 5 | * 6 | * For the full copyright and license information, please view the LICENSE 7 | * file that was distributed with this source code. 8 | */ 9 | 10 | #import 11 | 12 | #ifdef __OBJC_GC__ 13 | #error SDWebImage does not support Objective-C Garbage Collection 14 | #endif 15 | 16 | #if !__has_feature(objc_arc) 17 | #error SDWebImage is ARC only. Either turn on ARC for the project or use -fobjc-arc flag 18 | #endif 19 | 20 | #if __IPHONE_OS_VERSION_MIN_REQUIRED < __IPHONE_5_0 21 | #error SDWebImage doesn't support Deployement Target version < 5.0 22 | #endif 23 | 24 | #if !TARGET_OS_IPHONE 25 | #import 26 | #ifndef UIImage 27 | #define UIImage NSImage 28 | #endif 29 | #ifndef UIImageView 30 | #define UIImageView NSImageView 31 | #endif 32 | #else 33 | #import 34 | #endif 35 | 36 | // @see https://github.com/ccgus/fmdb/commit/aef763eeb64e6fa654e7d121f1df4c16a98d9f4f 37 | #define SDDispatchQueueRelease(q) (dispatch_release(q)) 38 | #if TARGET_OS_IPHONE 39 | #if __IPHONE_OS_VERSION_MIN_REQUIRED >= 60000 40 | #undef SDDispatchQueueRelease 41 | #define SDDispatchQueueRelease(q) 42 | #undef SDDispatchQueueSetterSementics 43 | #define SDDispatchQueueSetterSementics strong 44 | #endif 45 | #else 46 | #if MAC_OS_X_VERSION_MIN_REQUIRED >= 1080 47 | #undef SDDispatchQueueRelease 48 | #define SDDispatchQueueRelease(q) 49 | #undef SDDispatchQueueSetterSementics 50 | #define SDDispatchQueueSetterSementics strong 51 | #endif 52 | #endif 53 | 54 | #if OS_OBJECT_USE_OBJC 55 | #define SDDispatchQueueSetterSementics strong 56 | #else 57 | #define SDDispatchQueueSetterSementics assign 58 | #endif 59 | 60 | NS_INLINE UIImage *SDScaledImageForPath(NSString *path, NSObject *imageOrData) 61 | { 62 | if (!imageOrData) 63 | { 64 | return nil; 65 | } 66 | 67 | UIImage *image = nil; 68 | if ([imageOrData isKindOfClass:[NSData class]]) 69 | { 70 | image = [[UIImage alloc] initWithData:(NSData *)imageOrData]; 71 | } 72 | else if ([imageOrData isKindOfClass:[UIImage class]]) 73 | { 74 | image = (UIImage *)imageOrData; 75 | } 76 | else 77 | { 78 | return nil; 79 | } 80 | 81 | if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) 82 | { 83 | CGFloat scale = 1.0; 84 | if (path.length >= 8) 85 | { 86 | // Search @2x. at the end of the string, before a 3 to 4 extension length (only if key len is 8 or more @2x. + 4 len ext) 87 | NSRange range = [path rangeOfString:@"@2x." options:0 range:NSMakeRange(path.length - 8, 5)]; 88 | if (range.location != NSNotFound) 89 | { 90 | scale = 2.0; 91 | } 92 | } 93 | 94 | UIImage *scaledImage = [[UIImage alloc] initWithCGImage:image.CGImage scale:scale orientation:image.imageOrientation]; 95 | image = scaledImage; 96 | } 97 | 98 | return image; 99 | } 100 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJsonBase.h: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (C) 2009 Stig Brautaset. All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | 7 | * Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | * Neither the name of the author nor the names of its contributors may be used 15 | to endorse or promote products derived from this software without specific 16 | prior written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 19 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 21 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 22 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 24 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 25 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 26 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | */ 29 | 30 | #import 31 | 32 | extern NSString * FBSBJSONErrorDomain; 33 | 34 | 35 | enum { 36 | EUNSUPPORTED = 1, 37 | EPARSENUM, 38 | EPARSE, 39 | EFRAGMENT, 40 | ECTRL, 41 | EUNICODE, 42 | EDEPTH, 43 | EESCAPE, 44 | ETRAILCOMMA, 45 | ETRAILGARBAGE, 46 | EEOF, 47 | EINPUT 48 | }; 49 | 50 | /** 51 | @brief Common base class for parsing & writing. 52 | 53 | This class contains the common error-handling code and option between the parser/writer. 54 | */ 55 | @interface FBSBJsonBase : NSObject { 56 | NSMutableArray *errorTrace; 57 | 58 | @protected 59 | NSUInteger depth, maxDepth; 60 | } 61 | 62 | /** 63 | @brief The maximum recursing depth. 64 | 65 | Defaults to 512. If the input is nested deeper than this the input will be deemed to be 66 | malicious and the parser returns nil, signalling an error. ("Nested too deep".) You can 67 | turn off this security feature by setting the maxDepth value to 0. 68 | */ 69 | @property NSUInteger maxDepth; 70 | 71 | /** 72 | @brief Return an error trace, or nil if there was no errors. 73 | 74 | Note that this method returns the trace of the last method that failed. 75 | You need to check the return value of the call you're making to figure out 76 | if the call actually failed, before you know call this method. 77 | */ 78 | @property(copy,readonly) NSArray* errorTrace; 79 | 80 | /// @internal for use in subclasses to add errors to the stack trace 81 | - (void)addErrorWithCode:(NSUInteger)code description:(NSString*)str; 82 | 83 | /// @internal for use in subclasess to clear the error before a new parsing attempt 84 | - (void)clearErrorTrace; 85 | 86 | @end 87 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJsonParser.h: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (C) 2009 Stig Brautaset. All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | 7 | * Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | * Neither the name of the author nor the names of its contributors may be used 15 | to endorse or promote products derived from this software without specific 16 | prior written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 19 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 21 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 22 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 24 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 25 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 26 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | */ 29 | 30 | #import 31 | #import "FBSBJsonBase.h" 32 | 33 | /** 34 | @brief Options for the parser class. 35 | 36 | This exists so the SBJSON facade can implement the options in the parser without having to re-declare them. 37 | */ 38 | @protocol FBSBJsonParser 39 | 40 | /** 41 | @brief Return the object represented by the given string. 42 | 43 | Returns the object represented by the passed-in string or nil on error. The returned object can be 44 | a string, number, boolean, null, array or dictionary. 45 | 46 | @param repr the json string to parse 47 | */ 48 | - (id)objectWithString:(NSString *)repr; 49 | 50 | @end 51 | 52 | 53 | /** 54 | @brief The JSON parser class. 55 | 56 | JSON is mapped to Objective-C types in the following way: 57 | 58 | @li Null -> NSNull 59 | @li String -> NSMutableString 60 | @li Array -> NSMutableArray 61 | @li Object -> NSMutableDictionary 62 | @li Boolean -> NSNumber (initialised with -initWithBool:) 63 | @li Number -> NSDecimalNumber 64 | 65 | Since Objective-C doesn't have a dedicated class for boolean values, these turns into NSNumber 66 | instances. These are initialised with the -initWithBool: method, and 67 | round-trip back to JSON properly. (They won't silently suddenly become 0 or 1; they'll be 68 | represented as 'true' and 'false' again.) 69 | 70 | JSON numbers turn into NSDecimalNumber instances, 71 | as we can thus avoid any loss of precision. (JSON allows ridiculously large numbers.) 72 | 73 | */ 74 | @interface FBSBJsonParser : FBSBJsonBase { 75 | 76 | @private 77 | const char *c; 78 | } 79 | 80 | @end 81 | 82 | // don't use - exists for backwards compatibility with 2.1.x only. Will be removed in 2.3. 83 | @interface FBSBJsonParser (Private) 84 | - (id)fragmentWithString:(id)repr; 85 | @end 86 | 87 | 88 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBOpenGraphAction.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/xlicenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBGraphObject.h" 19 | 20 | @protocol FBGraphPlace; 21 | @protocol FBGraphUser; 22 | 23 | /*! 24 | @protocol 25 | 26 | @abstract 27 | The `FBOpenGraphAction` protocol is the base protocol for use in posting and retrieving Open Graph actions. 28 | It inherits from the `FBGraphObject` protocol; you may derive custome protocols from `FBOpenGraphAction` in order 29 | implement typed access to your application's custom actions. 30 | 31 | @discussion 32 | Represents an Open Graph custom action, to be used directly, or from which to 33 | derive custom action protocols with custom properties. 34 | */ 35 | @protocol FBOpenGraphAction 36 | 37 | /*! 38 | @property 39 | @abstract Typed access to action's id 40 | */ 41 | @property (retain, nonatomic) NSString *id; 42 | 43 | /*! 44 | @property 45 | @abstract Typed access to action's start time 46 | */ 47 | @property (retain, nonatomic) NSString *start_time; 48 | 49 | /*! 50 | @property 51 | @abstract Typed access to action's end time 52 | */ 53 | @property (retain, nonatomic) NSString *end_time; 54 | 55 | /*! 56 | @property 57 | @abstract Typed access to action's publication time 58 | */ 59 | @property (retain, nonatomic) NSString *publish_time; 60 | 61 | /*! 62 | @property 63 | @abstract Typed access to action's creation time 64 | */ 65 | @property (retain, nonatomic) NSString *created_time; 66 | 67 | /*! 68 | @property 69 | @abstract Typed access to action's expiration time 70 | */ 71 | @property (retain, nonatomic) NSString *expires_time; 72 | 73 | /*! 74 | @property 75 | @abstract Typed access to action's ref 76 | */ 77 | @property (retain, nonatomic) NSString *ref; 78 | 79 | /*! 80 | @property 81 | @abstract Typed access to action's user message 82 | */ 83 | @property (retain, nonatomic) NSString *message; 84 | 85 | /*! 86 | @property 87 | @abstract Typed access to action's place 88 | */ 89 | @property (retain, nonatomic) id place; 90 | 91 | /*! 92 | @property 93 | @abstract Typed access to action's tags 94 | */ 95 | @property (retain, nonatomic) NSArray *tags; 96 | 97 | /*! 98 | @property 99 | @abstract Typed access to action's images 100 | */ 101 | @property (retain, nonatomic) NSArray *image; 102 | 103 | /*! 104 | @property 105 | @abstract Typed access to action's from-user 106 | */ 107 | @property (retain, nonatomic) id from; 108 | 109 | /*! 110 | @property 111 | @abstract Typed access to action's likes 112 | */ 113 | @property (retain, nonatomic) NSArray *likes; 114 | 115 | /*! 116 | @property 117 | @abstract Typed access to action's application 118 | */ 119 | @property (retain, nonatomic) id application; 120 | 121 | /*! 122 | @property 123 | @abstract Typed access to action's comments 124 | */ 125 | @property (retain, nonatomic) NSArray *comments; 126 | 127 | @end -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBOpenGraphAction.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/xlicenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBGraphObject.h" 19 | 20 | @protocol FBGraphPlace; 21 | @protocol FBGraphUser; 22 | 23 | /*! 24 | @protocol 25 | 26 | @abstract 27 | The `FBOpenGraphAction` protocol is the base protocol for use in posting and retrieving Open Graph actions. 28 | It inherits from the `FBGraphObject` protocol; you may derive custome protocols from `FBOpenGraphAction` in order 29 | implement typed access to your application's custom actions. 30 | 31 | @discussion 32 | Represents an Open Graph custom action, to be used directly, or from which to 33 | derive custom action protocols with custom properties. 34 | */ 35 | @protocol FBOpenGraphAction 36 | 37 | /*! 38 | @property 39 | @abstract Typed access to action's id 40 | */ 41 | @property (retain, nonatomic) NSString *id; 42 | 43 | /*! 44 | @property 45 | @abstract Typed access to action's start time 46 | */ 47 | @property (retain, nonatomic) NSString *start_time; 48 | 49 | /*! 50 | @property 51 | @abstract Typed access to action's end time 52 | */ 53 | @property (retain, nonatomic) NSString *end_time; 54 | 55 | /*! 56 | @property 57 | @abstract Typed access to action's publication time 58 | */ 59 | @property (retain, nonatomic) NSString *publish_time; 60 | 61 | /*! 62 | @property 63 | @abstract Typed access to action's creation time 64 | */ 65 | @property (retain, nonatomic) NSString *created_time; 66 | 67 | /*! 68 | @property 69 | @abstract Typed access to action's expiration time 70 | */ 71 | @property (retain, nonatomic) NSString *expires_time; 72 | 73 | /*! 74 | @property 75 | @abstract Typed access to action's ref 76 | */ 77 | @property (retain, nonatomic) NSString *ref; 78 | 79 | /*! 80 | @property 81 | @abstract Typed access to action's user message 82 | */ 83 | @property (retain, nonatomic) NSString *message; 84 | 85 | /*! 86 | @property 87 | @abstract Typed access to action's place 88 | */ 89 | @property (retain, nonatomic) id place; 90 | 91 | /*! 92 | @property 93 | @abstract Typed access to action's tags 94 | */ 95 | @property (retain, nonatomic) NSArray *tags; 96 | 97 | /*! 98 | @property 99 | @abstract Typed access to action's images 100 | */ 101 | @property (retain, nonatomic) NSArray *image; 102 | 103 | /*! 104 | @property 105 | @abstract Typed access to action's from-user 106 | */ 107 | @property (retain, nonatomic) id from; 108 | 109 | /*! 110 | @property 111 | @abstract Typed access to action's likes 112 | */ 113 | @property (retain, nonatomic) NSArray *likes; 114 | 115 | /*! 116 | @property 117 | @abstract Typed access to action's application 118 | */ 119 | @property (retain, nonatomic) id application; 120 | 121 | /*! 122 | @property 123 | @abstract Typed access to action's comments 124 | */ 125 | @property (retain, nonatomic) NSArray *comments; 126 | 127 | @end -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDImageCache.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import 10 | #import "SDWebImageCompat.h" 11 | 12 | enum SDImageCacheType 13 | { 14 | /** 15 | * The image wasn't available the SDWebImage caches, but was downloaded from the web. 16 | */ 17 | SDImageCacheTypeNone = 0, 18 | /** 19 | * The image was obtained from the disk cache. 20 | */ 21 | SDImageCacheTypeDisk, 22 | /** 23 | * The image was obtained from the disk cache. 24 | */ 25 | SDImageCacheTypeMemory 26 | }; 27 | typedef enum SDImageCacheType SDImageCacheType; 28 | 29 | /** 30 | * SDImageCache maintains a memory cache and an optional disk cache. Disk cache write operations are performed 31 | * asynchronous so it doesn’t add unnecessary latency to the UI. 32 | */ 33 | @interface SDImageCache : NSObject 34 | 35 | /** 36 | * The maximum length of time to keep an image in the cache, in seconds 37 | */ 38 | @property (assign, nonatomic) NSInteger maxCacheAge; 39 | 40 | /** 41 | * Returns global shared cache instance 42 | * 43 | * @return SDImageCache global instance 44 | */ 45 | + (SDImageCache *)sharedImageCache; 46 | 47 | /** 48 | * Init a new cache store with a specific namespace 49 | * 50 | * @param ns The namespace to use for this cache store 51 | */ 52 | - (id)initWithNamespace:(NSString *)ns; 53 | 54 | /** 55 | * Store an image into memory and disk cache at the given key. 56 | * 57 | * @param image The image to store 58 | * @param key The unique image cache key, usually it's image absolute URL 59 | */ 60 | - (void)storeImage:(UIImage *)image forKey:(NSString *)key; 61 | 62 | /** 63 | * Store an image into memory and optionally disk cache at the given key. 64 | * 65 | * @param image The image to store 66 | * @param key The unique image cache key, usually it's image absolute URL 67 | * @param toDisk Store the image to disk cache if YES 68 | */ 69 | - (void)storeImage:(UIImage *)image forKey:(NSString *)key toDisk:(BOOL)toDisk; 70 | 71 | /** 72 | * Store an image into memory and optionally disk cache at the given key. 73 | * 74 | * @param image The image to store 75 | * @param data The image data as returned by the server, this representation will be used for disk storage 76 | * instead of converting the given image object into a storable/compressed image format in order 77 | * to save quality and CPU 78 | * @param key The unique image cache key, usually it's image absolute URL 79 | * @param toDisk Store the image to disk cache if YES 80 | */ 81 | - (void)storeImage:(UIImage *)image imageData:(NSData *)data forKey:(NSString *)key toDisk:(BOOL)toDisk; 82 | 83 | /** 84 | * Query the disk cache asynchronousely. 85 | * 86 | * @param key The unique key used to store the wanted image 87 | */ 88 | - (void)queryDiskCacheForKey:(NSString *)key done:(void (^)(UIImage *image, SDImageCacheType cacheType))doneBlock; 89 | 90 | /** 91 | * Remove the image from memory and disk cache synchronousely 92 | * 93 | * @param key The unique image cache key 94 | */ 95 | - (void)removeImageForKey:(NSString *)key; 96 | 97 | /** 98 | * Remove the image from memory and optionaly disk cache synchronousely 99 | * 100 | * @param key The unique image cache key 101 | * @param fromDisk Also remove cache entry from disk if YES 102 | */ 103 | - (void)removeImageForKey:(NSString *)key fromDisk:(BOOL)fromDisk; 104 | 105 | /** 106 | * Clear all memory cached images 107 | */ 108 | - (void)clearMemory; 109 | 110 | /** 111 | * Clear all disk cached images 112 | */ 113 | - (void)clearDisk; 114 | 115 | /** 116 | * Remove all expired cached image from disk 117 | */ 118 | - (void)cleanDisk; 119 | 120 | /** 121 | * Get the size used by the disk cache 122 | */ 123 | - (int)getSize; 124 | 125 | /** 126 | * Get the number of images in the disk cache 127 | */ 128 | - (int)getDiskCount; 129 | 130 | @end 131 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBUserSettingsViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBSession.h" 19 | #import "FBViewController.h" 20 | 21 | /*! 22 | @protocol 23 | 24 | @abstract 25 | The `FBUserSettingsDelegate` protocol defines the methods called by a . 26 | */ 27 | @protocol FBUserSettingsDelegate 28 | 29 | @optional 30 | 31 | /*! 32 | @abstract 33 | Called when the view controller will log the user out in response to a button press. 34 | 35 | @param sender The view controller sending the message. 36 | */ 37 | - (void)loginViewControllerWillLogUserOut:(id)sender; 38 | 39 | /*! 40 | @abstract 41 | Called after the view controller logged the user out in response to a button press. 42 | 43 | @param sender The view controller sending the message. 44 | */ 45 | - (void)loginViewControllerDidLogUserOut:(id)sender; 46 | 47 | /*! 48 | @abstract 49 | Called when the view controller will log the user in in response to a button press. 50 | Note that logging in can fail for a number of reasons, so there is no guarantee that this 51 | will be followed by a call to loginViewControllerDidLogUserIn:. Callers wanting more granular 52 | notification of the session state changes can use KVO or the NSNotificationCenter to observe them. 53 | 54 | @param sender The view controller sending the message. 55 | */ 56 | - (void)loginViewControllerWillAttemptToLogUserIn:(id)sender; 57 | 58 | /*! 59 | @abstract 60 | Called after the view controller successfully logged the user in in response to a button press. 61 | 62 | @param sender The view controller sending the message. 63 | */ 64 | - (void)loginViewControllerDidLogUserIn:(id)sender; 65 | 66 | /*! 67 | @abstract 68 | Called if the view controller encounters an error while trying to log a user in. 69 | 70 | @param sender The view controller sending the message. 71 | @param error The error encountered. 72 | */ 73 | - (void)loginViewController:(id)sender receivedError:(NSError *)error; 74 | 75 | @end 76 | 77 | 78 | /*! 79 | @class FBUserSettingsViewController 80 | 81 | @abstract 82 | The `FBUserSettingsViewController` class provides a user interface exposing a user's 83 | Facebook-related settings. Currently, this is limited to whether they are logged in or out 84 | of Facebook. 85 | 86 | Because of the size of some graphics used in this view, its resources are packaged as a separate 87 | bundle. In order to use `FBUserSettingsViewController`, drag the `FBUserSettingsViewResources.bundle` 88 | from the SDK directory into your Xcode project. 89 | */ 90 | @interface FBUserSettingsViewController : FBViewController 91 | 92 | /*! 93 | @abstract 94 | The permissions to request if the user logs in via this view. 95 | */ 96 | @property (nonatomic, copy) NSArray *permissions __attribute__((deprecated)); 97 | 98 | /*! 99 | @abstract 100 | The read permissions to request if the user logs in via this view. 101 | 102 | @discussion 103 | Note, that if read permissions are specified, then publish permissions should not be specified. 104 | */ 105 | @property (nonatomic, copy) NSArray *readPermissions; 106 | 107 | /*! 108 | @abstract 109 | The publish permissions to request if the user logs in via this view. 110 | 111 | @discussion 112 | Note, that a defaultAudience value of FBSessionDefaultAudienceOnlyMe, FBSessionDefaultAudienceEveryone, or 113 | FBSessionDefaultAudienceFriends should be set if publish permissions are specified. Additionally, when publish 114 | permissions are specified, then read should not be specified. 115 | */ 116 | @property (nonatomic, copy) NSArray *publishPermissions; 117 | 118 | /*! 119 | @abstract 120 | The default audience to use, if publish permissions are requested at login time. 121 | */ 122 | @property (nonatomic, assign) FBSessionDefaultAudience defaultAudience; 123 | 124 | @end 125 | 126 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBUserSettingsViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBSession.h" 19 | #import "FBViewController.h" 20 | 21 | /*! 22 | @protocol 23 | 24 | @abstract 25 | The `FBUserSettingsDelegate` protocol defines the methods called by a . 26 | */ 27 | @protocol FBUserSettingsDelegate 28 | 29 | @optional 30 | 31 | /*! 32 | @abstract 33 | Called when the view controller will log the user out in response to a button press. 34 | 35 | @param sender The view controller sending the message. 36 | */ 37 | - (void)loginViewControllerWillLogUserOut:(id)sender; 38 | 39 | /*! 40 | @abstract 41 | Called after the view controller logged the user out in response to a button press. 42 | 43 | @param sender The view controller sending the message. 44 | */ 45 | - (void)loginViewControllerDidLogUserOut:(id)sender; 46 | 47 | /*! 48 | @abstract 49 | Called when the view controller will log the user in in response to a button press. 50 | Note that logging in can fail for a number of reasons, so there is no guarantee that this 51 | will be followed by a call to loginViewControllerDidLogUserIn:. Callers wanting more granular 52 | notification of the session state changes can use KVO or the NSNotificationCenter to observe them. 53 | 54 | @param sender The view controller sending the message. 55 | */ 56 | - (void)loginViewControllerWillAttemptToLogUserIn:(id)sender; 57 | 58 | /*! 59 | @abstract 60 | Called after the view controller successfully logged the user in in response to a button press. 61 | 62 | @param sender The view controller sending the message. 63 | */ 64 | - (void)loginViewControllerDidLogUserIn:(id)sender; 65 | 66 | /*! 67 | @abstract 68 | Called if the view controller encounters an error while trying to log a user in. 69 | 70 | @param sender The view controller sending the message. 71 | @param error The error encountered. 72 | */ 73 | - (void)loginViewController:(id)sender receivedError:(NSError *)error; 74 | 75 | @end 76 | 77 | 78 | /*! 79 | @class FBUserSettingsViewController 80 | 81 | @abstract 82 | The `FBUserSettingsViewController` class provides a user interface exposing a user's 83 | Facebook-related settings. Currently, this is limited to whether they are logged in or out 84 | of Facebook. 85 | 86 | Because of the size of some graphics used in this view, its resources are packaged as a separate 87 | bundle. In order to use `FBUserSettingsViewController`, drag the `FBUserSettingsViewResources.bundle` 88 | from the SDK directory into your Xcode project. 89 | */ 90 | @interface FBUserSettingsViewController : FBViewController 91 | 92 | /*! 93 | @abstract 94 | The permissions to request if the user logs in via this view. 95 | */ 96 | @property (nonatomic, copy) NSArray *permissions __attribute__((deprecated)); 97 | 98 | /*! 99 | @abstract 100 | The read permissions to request if the user logs in via this view. 101 | 102 | @discussion 103 | Note, that if read permissions are specified, then publish permissions should not be specified. 104 | */ 105 | @property (nonatomic, copy) NSArray *readPermissions; 106 | 107 | /*! 108 | @abstract 109 | The publish permissions to request if the user logs in via this view. 110 | 111 | @discussion 112 | Note, that a defaultAudience value of FBSessionDefaultAudienceOnlyMe, FBSessionDefaultAudienceEveryone, or 113 | FBSessionDefaultAudienceFriends should be set if publish permissions are specified. Additionally, when publish 114 | permissions are specified, then read should not be specified. 115 | */ 116 | @property (nonatomic, copy) NSArray *publishPermissions; 117 | 118 | /*! 119 | @abstract 120 | The default audience to use, if publish permissions are requested at login time. 121 | */ 122 | @property (nonatomic, assign) FBSessionDefaultAudience defaultAudience; 123 | 124 | @end 125 | 126 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | @class FBViewController; 20 | 21 | /*! 22 | @typedef FBModalCompletionHandler 23 | 24 | @abstract 25 | A block that is passed to [FBViewController presentModallyInViewController:animated:handler:] 26 | and called when the view controller is dismissed via either Done or Cancel. 27 | 28 | @discussion 29 | Pass a block of this type when calling addRequest. This will be called once 30 | the request completes. The call occurs on the UI thread. 31 | 32 | @param sender The that is being dismissed. 33 | 34 | @param donePressed If YES, Done was pressed. If NO, Cancel was pressed. 35 | */ 36 | typedef void (^FBModalCompletionHandler)(FBViewController *sender, BOOL donePressed); 37 | 38 | /*! 39 | @protocol 40 | 41 | @abstract 42 | The `FBViewControllerDelegate` protocol defines the methods called when the Cancel or Done 43 | buttons are pressed in a . 44 | */ 45 | @protocol FBViewControllerDelegate 46 | 47 | @optional 48 | 49 | /*! 50 | @abstract 51 | Called when the Cancel button is pressed on a modally-presented . 52 | 53 | @param sender The view controller sending the message. 54 | */ 55 | - (void)facebookViewControllerCancelWasPressed:(id)sender; 56 | 57 | /*! 58 | @abstract 59 | Called when the Done button is pressed on a modally-presented . 60 | 61 | @param sender The view controller sending the message. 62 | */ 63 | - (void)facebookViewControllerDoneWasPressed:(id)sender; 64 | 65 | @end 66 | 67 | 68 | /*! 69 | @class FBViewController 70 | 71 | @abstract 72 | The `FBViewController` class is a base class encapsulating functionality common to several 73 | other view controller classes. Specifically, it provides UI when a view controller is presented 74 | modally, in the form of optional Cancel and Done buttons. 75 | */ 76 | @interface FBViewController : UIViewController 77 | 78 | /*! 79 | @abstract 80 | The Cancel button to display when presented modally. If nil, no Cancel button is displayed. 81 | If this button is provided, its target and action will be redirected to internal handlers, replacing 82 | any previous target that may have been set. 83 | */ 84 | @property (nonatomic, retain) IBOutlet UIBarButtonItem *cancelButton; 85 | 86 | /*! 87 | @abstract 88 | The Done button to display when presented modally. If nil, no Done button is displayed. 89 | If this button is provided, its target and action will be redirected to internal handlers, replacing 90 | any previous target that may have been set. 91 | */ 92 | @property (nonatomic, retain) IBOutlet UIBarButtonItem *doneButton; 93 | 94 | /*! 95 | @abstract 96 | The delegate that will be called when Cancel or Done is pressed. Derived classes may specify 97 | derived types for their delegates that provide additional functionality. 98 | */ 99 | @property (nonatomic, assign) IBOutlet id delegate; 100 | 101 | /*! 102 | @abstract 103 | The view into which derived classes should put their subviews. This view will be resized correctly 104 | depending on whether or not a toolbar is displayed. 105 | */ 106 | @property (nonatomic, readonly, retain) UIView *canvasView; 107 | 108 | /*! 109 | @abstract 110 | Provides a wrapper that presents the view controller modally and automatically dismisses it 111 | when either the Done or Cancel button is pressed. If Done is pressed, the block provided by the 112 | doneHandler parameter is called. 113 | 114 | @param viewController The view controller that is presenting this view controller. 115 | @param animated If YES, presenting and dismissing the view controller is animated. 116 | @param handler The block called when the Done or Cancel button is pressed. 117 | */ 118 | - (void)presentModallyFromViewController:(UIViewController*)viewController 119 | animated:(BOOL)animated 120 | handler:(FBModalCompletionHandler)handler; 121 | 122 | @end 123 | 124 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBViewController.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | @class FBViewController; 20 | 21 | /*! 22 | @typedef FBModalCompletionHandler 23 | 24 | @abstract 25 | A block that is passed to [FBViewController presentModallyInViewController:animated:handler:] 26 | and called when the view controller is dismissed via either Done or Cancel. 27 | 28 | @discussion 29 | Pass a block of this type when calling addRequest. This will be called once 30 | the request completes. The call occurs on the UI thread. 31 | 32 | @param sender The that is being dismissed. 33 | 34 | @param donePressed If YES, Done was pressed. If NO, Cancel was pressed. 35 | */ 36 | typedef void (^FBModalCompletionHandler)(FBViewController *sender, BOOL donePressed); 37 | 38 | /*! 39 | @protocol 40 | 41 | @abstract 42 | The `FBViewControllerDelegate` protocol defines the methods called when the Cancel or Done 43 | buttons are pressed in a . 44 | */ 45 | @protocol FBViewControllerDelegate 46 | 47 | @optional 48 | 49 | /*! 50 | @abstract 51 | Called when the Cancel button is pressed on a modally-presented . 52 | 53 | @param sender The view controller sending the message. 54 | */ 55 | - (void)facebookViewControllerCancelWasPressed:(id)sender; 56 | 57 | /*! 58 | @abstract 59 | Called when the Done button is pressed on a modally-presented . 60 | 61 | @param sender The view controller sending the message. 62 | */ 63 | - (void)facebookViewControllerDoneWasPressed:(id)sender; 64 | 65 | @end 66 | 67 | 68 | /*! 69 | @class FBViewController 70 | 71 | @abstract 72 | The `FBViewController` class is a base class encapsulating functionality common to several 73 | other view controller classes. Specifically, it provides UI when a view controller is presented 74 | modally, in the form of optional Cancel and Done buttons. 75 | */ 76 | @interface FBViewController : UIViewController 77 | 78 | /*! 79 | @abstract 80 | The Cancel button to display when presented modally. If nil, no Cancel button is displayed. 81 | If this button is provided, its target and action will be redirected to internal handlers, replacing 82 | any previous target that may have been set. 83 | */ 84 | @property (nonatomic, retain) IBOutlet UIBarButtonItem *cancelButton; 85 | 86 | /*! 87 | @abstract 88 | The Done button to display when presented modally. If nil, no Done button is displayed. 89 | If this button is provided, its target and action will be redirected to internal handlers, replacing 90 | any previous target that may have been set. 91 | */ 92 | @property (nonatomic, retain) IBOutlet UIBarButtonItem *doneButton; 93 | 94 | /*! 95 | @abstract 96 | The delegate that will be called when Cancel or Done is pressed. Derived classes may specify 97 | derived types for their delegates that provide additional functionality. 98 | */ 99 | @property (nonatomic, assign) IBOutlet id delegate; 100 | 101 | /*! 102 | @abstract 103 | The view into which derived classes should put their subviews. This view will be resized correctly 104 | depending on whether or not a toolbar is displayed. 105 | */ 106 | @property (nonatomic, readonly, retain) UIView *canvasView; 107 | 108 | /*! 109 | @abstract 110 | Provides a wrapper that presents the view controller modally and automatically dismisses it 111 | when either the Done or Cancel button is pressed. If Done is pressed, the block provided by the 112 | doneHandler parameter is called. 113 | 114 | @param viewController The view controller that is presenting this view controller. 115 | @param animated If YES, presenting and dismissing the view controller is animated. 116 | @param handler The block called when the Done or Cancel button is pressed. 117 | */ 118 | - (void)presentModallyFromViewController:(UIViewController*)viewController 119 | animated:(BOOL)animated 120 | handler:(FBModalCompletionHandler)handler; 121 | 122 | @end 123 | 124 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSBJsonWriter.h: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (C) 2009 Stig Brautaset. All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without 5 | modification, are permitted provided that the following conditions are met: 6 | 7 | * Redistributions of source code must retain the above copyright notice, this 8 | list of conditions and the following disclaimer. 9 | 10 | * Redistributions in binary form must reproduce the above copyright notice, 11 | this list of conditions and the following disclaimer in the documentation 12 | and/or other materials provided with the distribution. 13 | 14 | * Neither the name of the author nor the names of its contributors may be used 15 | to endorse or promote products derived from this software without specific 16 | prior written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 19 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 21 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE 22 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 24 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 25 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 26 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | */ 29 | 30 | #import 31 | #import "FBSBJsonBase.h" 32 | 33 | /** 34 | @brief Options for the writer class. 35 | 36 | This exists so the SBJSON facade can implement the options in the writer without having to re-declare them. 37 | */ 38 | @protocol FBSBJsonWriter 39 | 40 | /** 41 | @brief Whether we are generating human-readable (multiline) JSON. 42 | 43 | Set whether or not to generate human-readable JSON. The default is NO, which produces 44 | JSON without any whitespace. (Except inside strings.) If set to YES, generates human-readable 45 | JSON with linebreaks after each array value and dictionary key/value pair, indented two 46 | spaces per nesting level. 47 | */ 48 | @property BOOL humanReadable; 49 | 50 | /** 51 | @brief Whether or not to sort the dictionary keys in the output. 52 | 53 | If this is set to YES, the dictionary keys in the JSON output will be in sorted order. 54 | (This is useful if you need to compare two structures, for example.) The default is NO. 55 | */ 56 | @property BOOL sortKeys; 57 | 58 | /** 59 | @brief Return JSON representation (or fragment) for the given object. 60 | 61 | Returns a string containing JSON representation of the passed in value, or nil on error. 62 | If nil is returned and @p error is not NULL, @p *error can be interrogated to find the cause of the error. 63 | 64 | @param value any instance that can be represented as a JSON fragment 65 | 66 | */ 67 | - (NSString*)stringWithObject:(id)value; 68 | 69 | @end 70 | 71 | 72 | /** 73 | @brief The JSON writer class. 74 | 75 | Objective-C types are mapped to JSON types in the following way: 76 | 77 | @li NSNull -> Null 78 | @li NSString -> String 79 | @li NSArray -> Array 80 | @li NSDictionary -> Object 81 | @li NSNumber (-initWithBool:) -> Boolean 82 | @li NSNumber -> Number 83 | 84 | In JSON the keys of an object must be strings. NSDictionary keys need 85 | not be, but attempting to convert an NSDictionary with non-string keys 86 | into JSON will throw an exception. 87 | 88 | NSNumber instances created with the +initWithBool: method are 89 | converted into the JSON boolean "true" and "false" values, and vice 90 | versa. Any other NSNumber instances are converted to a JSON number the 91 | way you would expect. 92 | 93 | */ 94 | @interface FBSBJsonWriter : FBSBJsonBase { 95 | 96 | @private 97 | BOOL sortKeys, humanReadable; 98 | } 99 | 100 | @end 101 | 102 | // don't use - exists for backwards compatibility. Will be removed in 2.3. 103 | @interface FBSBJsonWriter (Private) 104 | - (NSString*)stringWithFragment:(id)value; 105 | @end 106 | 107 | /** 108 | @brief Allows generation of JSON for otherwise unsupported classes. 109 | 110 | If you have a custom class that you want to create a JSON representation for you can implement 111 | this method in your class. It should return a representation of your object defined 112 | in terms of objects that can be translated into JSON. For example, a Person 113 | object might implement it like this: 114 | 115 | @code 116 | - (id)jsonProxyObject { 117 | return [NSDictionary dictionaryWithObjectsAndKeys: 118 | name, @"name", 119 | phone, @"phone", 120 | email, @"email", 121 | nil]; 122 | } 123 | @endcode 124 | 125 | */ 126 | @interface NSObject (SBProxyForJson) 127 | - (id)proxyForJson; 128 | @end 129 | 130 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBError.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | /// The error domain of all error codes returned by the Facebook SDK 20 | extern NSString *const FacebookSDKDomain; 21 | 22 | // ---------------------------------------------------------------------------- 23 | // Keys in the userInfo NSDictionary of NSError where you can find additional 24 | // information about the error. All are optional. 25 | 26 | /// The key for an inner NSError. 27 | extern NSString *const FBErrorInnerErrorKey; 28 | 29 | /// The key for parsed JSON response from the server. In case of a batch, 30 | /// includes the JSON for a single FBRequest. 31 | extern NSString *const FBErrorParsedJSONResponseKey; 32 | 33 | /// The key for HTTP status code. 34 | extern NSString *const FBErrorHTTPStatusCodeKey; 35 | 36 | // ---------------------------------------------------------------------------- 37 | /*! 38 | @abstract Error codes returned by the Facebook SDK in NSError. 39 | 40 | @discussion 41 | These are valid only in the scope of FacebookSDKDomain. 42 | */ 43 | typedef enum FBErrorCode { 44 | /*! 45 | Like nil for FBErrorCode values, represents an error code that 46 | has not been initialized yet. 47 | */ 48 | FBErrorInvalid = 0, 49 | 50 | /// The operation failed because it was cancelled. 51 | FBErrorOperationCancelled, 52 | 53 | /// A login attempt failed 54 | FBErrorLoginFailedOrCancelled, 55 | 56 | /// The graph API returned an error for this operation. 57 | FBErrorRequestConnectionApi, 58 | 59 | /*! 60 | The operation failed because the server returned an unexpected 61 | response. You can get this error if you are not using the most 62 | recent SDK, or if you set your application's migration settings 63 | incorrectly for the version of the SDK you are using. 64 | 65 | If this occurs on the current SDK with proper app migration 66 | settings, you may need to try changing to one request per batch. 67 | */ 68 | FBErrorProtocolMismatch, 69 | 70 | /// Non-success HTTP status code was returned from the operation. 71 | FBErrorHTTPError, 72 | 73 | /// An endpoint that returns a binary response was used with FBRequestConnection; 74 | /// endpoints that return image/jpg, etc. should be accessed using NSURLRequest 75 | FBErrorNonTextMimeTypeReturned, 76 | 77 | /// An error occurred while trying to display a native dialog 78 | FBErrorNativeDialog, 79 | } FBErrorCode; 80 | 81 | /*! 82 | The key in the userInfo NSDictionary of NSError where you can find 83 | the inner NSError (if any). 84 | */ 85 | extern NSString *const FBErrorInnerErrorKey; 86 | 87 | /// The NSError key used by session to capture login failure reason 88 | extern NSString *const FBErrorLoginFailedReason; 89 | 90 | /// the NSError key used by session to capture login failure error code 91 | extern NSString *const FBErrorLoginFailedOriginalErrorCode; 92 | 93 | /// used by session when an inline dialog fails 94 | extern NSString *const FBErrorLoginFailedReasonInlineCancelledValue; 95 | extern NSString *const FBErrorLoginFailedReasonInlineNotCancelledValue; 96 | extern NSString *const FBErrorLoginFailedReasonUnitTestResponseUnrecognized; 97 | 98 | /// used by session when a reauthorize fails 99 | extern NSString *const FBErrorReauthorizeFailedReasonSessionClosed; 100 | extern NSString *const FBErrorReauthorizeFailedReasonUserCancelled; 101 | extern NSString *const FBErrorReauthorizeFailedReasonWrongUser; 102 | 103 | /// The key to retrieve the reason for a native dialog error 104 | extern NSString *const FBErrorNativeDialogReasonKey; 105 | 106 | /// indicates that a native dialog is not supported in the current OS 107 | extern NSString *const FBErrorNativeDialogNotSupported; 108 | /// indicates that a native dialog can't be displayed because it is not appropriate for the current session 109 | extern NSString *const FBErrorNativeDialogInvalidForSession; 110 | /// indicates that a native dialog can't be displayed for some other reason 111 | extern NSString *const FBErrorNativeDialogCantBeDisplayed; 112 | 113 | // Exception strings raised by the Facebook SDK 114 | 115 | /*! 116 | This exception is raised by methods in the Facebook SDK to indicate 117 | that an attempted operation is invalid 118 | */ 119 | extern NSString *const FBInvalidOperationException; 120 | 121 | // Facebook SDK also raises exceptions the following common exceptions: 122 | // NSInvalidArgumentException 123 | 124 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBError.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | /// The error domain of all error codes returned by the Facebook SDK 20 | extern NSString *const FacebookSDKDomain; 21 | 22 | // ---------------------------------------------------------------------------- 23 | // Keys in the userInfo NSDictionary of NSError where you can find additional 24 | // information about the error. All are optional. 25 | 26 | /// The key for an inner NSError. 27 | extern NSString *const FBErrorInnerErrorKey; 28 | 29 | /// The key for parsed JSON response from the server. In case of a batch, 30 | /// includes the JSON for a single FBRequest. 31 | extern NSString *const FBErrorParsedJSONResponseKey; 32 | 33 | /// The key for HTTP status code. 34 | extern NSString *const FBErrorHTTPStatusCodeKey; 35 | 36 | // ---------------------------------------------------------------------------- 37 | /*! 38 | @abstract Error codes returned by the Facebook SDK in NSError. 39 | 40 | @discussion 41 | These are valid only in the scope of FacebookSDKDomain. 42 | */ 43 | typedef enum FBErrorCode { 44 | /*! 45 | Like nil for FBErrorCode values, represents an error code that 46 | has not been initialized yet. 47 | */ 48 | FBErrorInvalid = 0, 49 | 50 | /// The operation failed because it was cancelled. 51 | FBErrorOperationCancelled, 52 | 53 | /// A login attempt failed 54 | FBErrorLoginFailedOrCancelled, 55 | 56 | /// The graph API returned an error for this operation. 57 | FBErrorRequestConnectionApi, 58 | 59 | /*! 60 | The operation failed because the server returned an unexpected 61 | response. You can get this error if you are not using the most 62 | recent SDK, or if you set your application's migration settings 63 | incorrectly for the version of the SDK you are using. 64 | 65 | If this occurs on the current SDK with proper app migration 66 | settings, you may need to try changing to one request per batch. 67 | */ 68 | FBErrorProtocolMismatch, 69 | 70 | /// Non-success HTTP status code was returned from the operation. 71 | FBErrorHTTPError, 72 | 73 | /// An endpoint that returns a binary response was used with FBRequestConnection; 74 | /// endpoints that return image/jpg, etc. should be accessed using NSURLRequest 75 | FBErrorNonTextMimeTypeReturned, 76 | 77 | /// An error occurred while trying to display a native dialog 78 | FBErrorNativeDialog, 79 | } FBErrorCode; 80 | 81 | /*! 82 | The key in the userInfo NSDictionary of NSError where you can find 83 | the inner NSError (if any). 84 | */ 85 | extern NSString *const FBErrorInnerErrorKey; 86 | 87 | /// The NSError key used by session to capture login failure reason 88 | extern NSString *const FBErrorLoginFailedReason; 89 | 90 | /// the NSError key used by session to capture login failure error code 91 | extern NSString *const FBErrorLoginFailedOriginalErrorCode; 92 | 93 | /// used by session when an inline dialog fails 94 | extern NSString *const FBErrorLoginFailedReasonInlineCancelledValue; 95 | extern NSString *const FBErrorLoginFailedReasonInlineNotCancelledValue; 96 | extern NSString *const FBErrorLoginFailedReasonUnitTestResponseUnrecognized; 97 | 98 | /// used by session when a reauthorize fails 99 | extern NSString *const FBErrorReauthorizeFailedReasonSessionClosed; 100 | extern NSString *const FBErrorReauthorizeFailedReasonUserCancelled; 101 | extern NSString *const FBErrorReauthorizeFailedReasonWrongUser; 102 | 103 | /// The key to retrieve the reason for a native dialog error 104 | extern NSString *const FBErrorNativeDialogReasonKey; 105 | 106 | /// indicates that a native dialog is not supported in the current OS 107 | extern NSString *const FBErrorNativeDialogNotSupported; 108 | /// indicates that a native dialog can't be displayed because it is not appropriate for the current session 109 | extern NSString *const FBErrorNativeDialogInvalidForSession; 110 | /// indicates that a native dialog can't be displayed for some other reason 111 | extern NSString *const FBErrorNativeDialogCantBeDisplayed; 112 | 113 | // Exception strings raised by the Facebook SDK 114 | 115 | /*! 116 | This exception is raised by methods in the Facebook SDK to indicate 117 | that an attempted operation is invalid 118 | */ 119 | extern NSString *const FBInvalidOperationException; 120 | 121 | // Facebook SDK also raises exceptions the following common exceptions: 122 | // NSInvalidArgumentException 123 | 124 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | DMSocialContactsList 2 | ==================== 3 | An Objective-C contacts picker example which fetch local and Facebook contacts, merge and sort them. Plus handle selection and live search. Useful to send SMS, Email, Facebook invitation. 4 | 5 | **Please note* It is more an example than a ready to use library. 6 | 7 | 8 | ##Features 9 | 1. Fetch local contacts 10 | 2. Fetch Facebook contacts 11 | 3. Merge local contacts and Facebook contacts 12 | 4. Sort them 13 | 5. Display contacts 14 | 6. Handle selection of emails, phones, Facebook id 15 | 7. Keep a list of selected contacts with their selected values 16 | 8. Display contact images (local or Facebook) 17 | 9. Real time search 18 | 19 | ##The purpose 20 | We live in a social world, our mobile application need to be social too. In a lot of modern application you can invite your contacts to be your friends on your new shiny crapware ubber social applications. The mobile application then display a list of your contact (Local, Facebook, twitter, etc...) and you can send them invitations. **SPAM THEM** 21 | 22 | It become critically to have this in your application if you want to create the next Instagram and make **$1 Billion**. Your application need to go viral! 23 | 24 | Well, this example show you how to easily load your local and Facebook contacts. It merge the contacts list and display them in a fast **UITableVIew**. In this list you can select any contact, it will display the selected contact email, phone, or Facebook. Once you selected the value it will register it so you can at the end of the selection send invitations to all the selected contacts. 25 | 26 | Sending invitations in on your part (Send SMS to number, email to email address and Facebook app request, wall post to Facebook id). 27 | 28 | The correct way would be to send the selected contacts as a payload to your server, then it would dispatch invitations to the correct user using the correct method. 29 | 30 | ##The user interface## 31 | 32 | The user interface is simple and ugly but very functional. It follow the Apple guidelines. You have a simple list of contacts with a **UISearchBar** on top. Selecting a contact display a **UIActionSheet**. The **UITableView** clearly retain selected contacts. When you do a search result are shown instantly. There is no fancy things, no need too. 33 | 34 | Sure this example would be greatly improved with beautiful custom cells. 35 | 36 | ![image](https://raw.github.com/Dimillian/DMSocialContactsList/master/images/screen1.png) 37 | 38 | ![image](https://raw.github.com/Dimillian/DMSocialContactsList/master/images/screen2.png) 39 | 40 | ##How it works 41 | First it load your local contacts with the Apple AddressBook framework. 42 | Then it load your Facebook friends list. It use the Facebook 3.1 framework. So if you don't have configured any Facebook account the iPhone or the simulator where you are testing this it will open the Facebook app to ask your the permission. 43 | 44 | I have created a model **DMContact** which contain a Facebook or local user. You can get a lot of information from it. List of emails and phones, Facebook id, first name, last name, composed name. It also have the local contact image data or the Facebook image URL. 45 | THe same model is used to instantiate a local contact or a Facebook contact. 46 | 47 | When all your local and Facebook contacts are loaded it finally merge them (Add Facebook ID to matched local contacts and insert missing Facebook contacts). 48 | So on one contact you can have en emails list, phones list, and it's associated Facebook ID. 49 | 50 | The **DMContact** model also contain a **selectedValueRef**, when you select a contact from the contact list it ask you which value do you want to select (phone, email or Facebook ID). 51 | This property contain the selected value. 52 | 53 | So once the user is done selecting the contacts he want to invite you can send invitation to all those values. 54 | 55 | There is more, just read the code... :) 56 | 57 | ##How to use it 58 | This is more an example than a ready to use library. Use it as a reference on how to load local contacts, Facebook contacts, sort and merge them. Handle selection in a UITableView etc... 59 | 60 | To easiest way to simply use it in your project would be to extract the **DMContactListViewController** and **DMContact**, import them in your project. Add necessary frameworks (use my Xcode project as a reference) and personalize the XIB to match colors of your application. (Well if you know how to code proper iOS application it should not be too hard to extract the right things from my example). 61 | 62 | If I have a lot of requests I will happily make a better drag & drop version where you simply customize the view, pass a few parameters and you're done. 63 | 64 | ##TODO 65 | 1. Fetch and merge with Twitter contact 66 | 2. Optimize the merge algorithm 67 | 3. Make it more the "Drag & Drop way" 68 | 69 | ##Facebook note 70 | In the **.plist** I've set an application id of my own. You need to replace it with your application id if you plan to start a real project on those foundation. 71 | 72 | ###Linked framework 73 | 74 | The Xcode project is configured and linked with 75 | 76 | 1. [The Facebook framework (3.1)](https://developers.facebook.com/docs/getting-started/facebook-sdk-for-ios/3.1/) 77 | 2. [SDWebImage](https://github.com/rs/SDWebImage) 78 | 79 | 80 | 81 | 82 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/SDWebImageManager.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "SDWebImageCompat.h" 10 | #import "SDWebImageOperation.h" 11 | #import "SDWebImageDownloader.h" 12 | #import "SDImageCache.h" 13 | 14 | typedef enum 15 | { 16 | /** 17 | * By default, when a URL fail to be downloaded, the URL is blacklisted so the library won't keep trying. 18 | * This flag disable this blacklisting. 19 | */ 20 | SDWebImageRetryFailed = 1 << 0, 21 | /** 22 | * By default, image downloads are started during UI interactions, this flags disable this feature, 23 | * leading to delayed download on UIScrollView deceleration for instance. 24 | */ 25 | SDWebImageLowPriority = 1 << 1, 26 | /** 27 | * This flag disables on-disk caching 28 | */ 29 | SDWebImageCacheMemoryOnly = 1 << 2, 30 | /** 31 | * This flag enables progressive download, the image is displayed progressively during download as a browser would do. 32 | * By default, the image is only displayed once completely downloaded. 33 | */ 34 | SDWebImageProgressiveDownload = 1 << 3 35 | } SDWebImageOptions; 36 | 37 | typedef void(^SDWebImageCompletedBlock)(UIImage *image, NSError *error, SDImageCacheType cacheType); 38 | typedef void(^SDWebImageCompletedWithFinishedBlock)(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished); 39 | 40 | 41 | /** 42 | * The SDWebImageManager is the class behind the UIImageView+WebCache category and likes. 43 | * It ties the asynchronous downloader (SDWebImageDownloader) with the image cache store (SDImageCache). 44 | * You can use this class directly to benefit from web image downloading with caching in another context than 45 | * a UIView. 46 | * 47 | * Here is a simple example of how to use SDWebImageManager: 48 | * 49 | * SDWebImageManager *manager = [SDWebImageManager sharedManager]; 50 | * [manager downloadWithURL:imageURL 51 | * delegate:self 52 | * options:0 53 | * progress:nil 54 | * completed:^(UIImage *image, NSError *error, BOOL fromCache) 55 | * { 56 | * if (image) 57 | * { 58 | * // do something with image 59 | * } 60 | * }]; 61 | */ 62 | @interface SDWebImageManager : NSObject 63 | 64 | @property (strong, nonatomic, readonly) SDImageCache *imageCache; 65 | @property (strong, nonatomic, readonly) SDWebImageDownloader *imageDownloader; 66 | 67 | /** 68 | * The cache filter is a block used each time SDWebImageManager need to convert an URL into a cache key. This can 69 | * be used to remove dynamic part of an image URL. 70 | * 71 | * The following example sets a filter in the application delegate that will remove any query-string from the 72 | * URL before to use it as a cache key: 73 | * 74 | * [[SDWebImageManager sharedManager] setCacheKeyFilter:^(NSURL *url) 75 | * { 76 | * url = [[NSURL alloc] initWithScheme:url.scheme host:url.host path:url.path]; 77 | * return [url absoluteString]; 78 | * }]; 79 | */ 80 | @property (strong) NSString *(^cacheKeyFilter)(NSURL *url); 81 | 82 | /** 83 | * Returns global SDWebImageManager instance. 84 | * 85 | * @return SDWebImageManager shared instance 86 | */ 87 | + (SDWebImageManager *)sharedManager; 88 | 89 | /** 90 | * Downloads the image at the given URL if not present in cache or return the cached version otherwise. 91 | * 92 | * @param url The URL to the image 93 | * @param delegate The delegate object used to send result back 94 | * @param options A mask to specify options to use for this request 95 | * @param progressBlock A block called while image is downloading 96 | * @param completedBlock A block called when operation has been completed. 97 | * 98 | * This block as no return value and takes the requested UIImage as first parameter. 99 | * In case of error the image parameter is nil and the second parameter may contain an NSError. 100 | * 101 | * The third parameter is a Boolean indicating if the image was retrived from the local cache 102 | * of from the network. 103 | * 104 | * The last parameter is set to NO when the SDWebImageProgressiveDownload option is used and 105 | * the image is downloading. This block is thus called repetidly with a partial image. When 106 | * image is fully downloaded, the block is called a last time with the full image and the last 107 | * parameter set to YES. 108 | * 109 | * @return Returns a cancellable NSOperation 110 | */ 111 | - (id)downloadWithURL:(NSURL *)url 112 | options:(SDWebImageOptions)options 113 | progress:(SDWebImageDownloaderProgressBlock)progressBlock 114 | completed:(SDWebImageCompletedWithFinishedBlock)completedBlock; 115 | 116 | /** 117 | * Cancel all current opreations 118 | */ 119 | - (void)cancelAll; 120 | 121 | @end 122 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBLoginView.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBSession.h" 19 | #import "FBGraphUser.h" 20 | 21 | @protocol FBLoginViewDelegate; 22 | 23 | /*! 24 | @class 25 | @abstract 26 | */ 27 | @interface FBLoginView : UIView 28 | 29 | /*! 30 | @abstract 31 | The permissions to login with. Defaults to nil, meaning basic permissions. 32 | 33 | @discussion Methods and properties that specify permissions without a read or publish 34 | qualification are deprecated; use of a read-qualified or publish-qualified alternative is preferred. 35 | */ 36 | @property (readwrite, copy) NSArray *permissions __attribute__((deprecated)); 37 | 38 | /*! 39 | @abstract 40 | The read permissions to request if the user logs in via this view. 41 | 42 | @discussion 43 | Note, that if read permissions are specified, then publish permissions should not be specified. 44 | */ 45 | @property (nonatomic, copy) NSArray *readPermissions; 46 | 47 | /*! 48 | @abstract 49 | The publish permissions to request if the user logs in via this view. 50 | 51 | @discussion 52 | Note, that a defaultAudience value of FBSessionDefaultAudienceOnlyMe, FBSessionDefaultAudienceEveryone, or 53 | FBSessionDefaultAudienceFriends should be set if publish permissions are specified. Additionally, when publish 54 | permissions are specified, then read should not be specified. 55 | */ 56 | @property (nonatomic, copy) NSArray *publishPermissions; 57 | 58 | /*! 59 | @abstract 60 | The default audience to use, if publish permissions are requested at login time. 61 | */ 62 | @property (nonatomic, assign) FBSessionDefaultAudience defaultAudience; 63 | 64 | 65 | /*! 66 | @abstract 67 | Initializes and returns an `FBLoginView` object. The underlying session has basic permissions granted to it. 68 | */ 69 | - (id)init; 70 | 71 | /*! 72 | @method 73 | 74 | @abstract 75 | Initializes and returns an `FBLoginView` object constructed with the specified permissions. 76 | 77 | @param permissions An array of strings representing the permissions to request during the 78 | authentication flow. A value of nil will indicates basic permissions. 79 | 80 | @discussion Methods and properties that specify permissions without a read or publish 81 | qualification are deprecated; use of a read-qualified or publish-qualified alternative is preferred. 82 | */ 83 | - (id)initWithPermissions:(NSArray *)permissions __attribute__((deprecated)); 84 | 85 | /*! 86 | @method 87 | 88 | @abstract 89 | Initializes and returns an `FBLoginView` object constructed with the specified permissions. 90 | 91 | @param readPermissions An array of strings representing the read permissions to request during the 92 | authentication flow. A value of nil will indicates basic permissions. 93 | 94 | */ 95 | - (id)initWithReadPermissions:(NSArray *)readPermissions; 96 | 97 | /*! 98 | @method 99 | 100 | @abstract 101 | Initializes and returns an `FBLoginView` object constructed with the specified permissions. 102 | 103 | @param publishPermissions An array of strings representing the publish permissions to request during the 104 | authentication flow. 105 | 106 | @param defaultAudience An audience for published posts; note that FBSessionDefaultAudienceNone is not valid 107 | for permission requests that include publish or manage permissions. 108 | 109 | */ 110 | - (id)initWithPublishPermissions:(NSArray *)publishPermissions 111 | defaultAudience:(FBSessionDefaultAudience)defaultAudience; 112 | 113 | /*! 114 | @abstract 115 | The delegate object that receives updates for selection and display control. 116 | */ 117 | @property (nonatomic, assign) IBOutlet id delegate; 118 | 119 | @end 120 | 121 | /*! 122 | @protocol 123 | 124 | @abstract 125 | The `FBLoginViewDelegate` protocol defines the methods used to receive event 126 | notifications from `FBLoginView` objects. 127 | */ 128 | @protocol FBLoginViewDelegate 129 | 130 | @optional 131 | 132 | /*! 133 | @abstract 134 | Tells the delegate that the view is now in logged in mode 135 | 136 | @param loginView The login view that transitioned its view mode 137 | */ 138 | - (void)loginViewShowingLoggedInUser:(FBLoginView *)loginView; 139 | 140 | /*! 141 | @abstract 142 | Tells the delegate that the view is has now fetched user info 143 | 144 | @param loginView The login view that transitioned its view mode 145 | 146 | @param user The user info object describing the logged in user 147 | */ 148 | - (void)loginViewFetchedUserInfo:(FBLoginView *)loginView 149 | user:(id)user; 150 | 151 | /*! 152 | @abstract 153 | Tells the delegate that the view is now in logged out mode 154 | 155 | @param loginView The login view that transitioned its view mode 156 | */ 157 | - (void)loginViewShowingLoggedOutUser:(FBLoginView *)loginView; 158 | 159 | @end 160 | 161 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBLoginView.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import "FBSession.h" 19 | #import "FBGraphUser.h" 20 | 21 | @protocol FBLoginViewDelegate; 22 | 23 | /*! 24 | @class 25 | @abstract 26 | */ 27 | @interface FBLoginView : UIView 28 | 29 | /*! 30 | @abstract 31 | The permissions to login with. Defaults to nil, meaning basic permissions. 32 | 33 | @discussion Methods and properties that specify permissions without a read or publish 34 | qualification are deprecated; use of a read-qualified or publish-qualified alternative is preferred. 35 | */ 36 | @property (readwrite, copy) NSArray *permissions __attribute__((deprecated)); 37 | 38 | /*! 39 | @abstract 40 | The read permissions to request if the user logs in via this view. 41 | 42 | @discussion 43 | Note, that if read permissions are specified, then publish permissions should not be specified. 44 | */ 45 | @property (nonatomic, copy) NSArray *readPermissions; 46 | 47 | /*! 48 | @abstract 49 | The publish permissions to request if the user logs in via this view. 50 | 51 | @discussion 52 | Note, that a defaultAudience value of FBSessionDefaultAudienceOnlyMe, FBSessionDefaultAudienceEveryone, or 53 | FBSessionDefaultAudienceFriends should be set if publish permissions are specified. Additionally, when publish 54 | permissions are specified, then read should not be specified. 55 | */ 56 | @property (nonatomic, copy) NSArray *publishPermissions; 57 | 58 | /*! 59 | @abstract 60 | The default audience to use, if publish permissions are requested at login time. 61 | */ 62 | @property (nonatomic, assign) FBSessionDefaultAudience defaultAudience; 63 | 64 | 65 | /*! 66 | @abstract 67 | Initializes and returns an `FBLoginView` object. The underlying session has basic permissions granted to it. 68 | */ 69 | - (id)init; 70 | 71 | /*! 72 | @method 73 | 74 | @abstract 75 | Initializes and returns an `FBLoginView` object constructed with the specified permissions. 76 | 77 | @param permissions An array of strings representing the permissions to request during the 78 | authentication flow. A value of nil will indicates basic permissions. 79 | 80 | @discussion Methods and properties that specify permissions without a read or publish 81 | qualification are deprecated; use of a read-qualified or publish-qualified alternative is preferred. 82 | */ 83 | - (id)initWithPermissions:(NSArray *)permissions __attribute__((deprecated)); 84 | 85 | /*! 86 | @method 87 | 88 | @abstract 89 | Initializes and returns an `FBLoginView` object constructed with the specified permissions. 90 | 91 | @param readPermissions An array of strings representing the read permissions to request during the 92 | authentication flow. A value of nil will indicates basic permissions. 93 | 94 | */ 95 | - (id)initWithReadPermissions:(NSArray *)readPermissions; 96 | 97 | /*! 98 | @method 99 | 100 | @abstract 101 | Initializes and returns an `FBLoginView` object constructed with the specified permissions. 102 | 103 | @param publishPermissions An array of strings representing the publish permissions to request during the 104 | authentication flow. 105 | 106 | @param defaultAudience An audience for published posts; note that FBSessionDefaultAudienceNone is not valid 107 | for permission requests that include publish or manage permissions. 108 | 109 | */ 110 | - (id)initWithPublishPermissions:(NSArray *)publishPermissions 111 | defaultAudience:(FBSessionDefaultAudience)defaultAudience; 112 | 113 | /*! 114 | @abstract 115 | The delegate object that receives updates for selection and display control. 116 | */ 117 | @property (nonatomic, assign) IBOutlet id delegate; 118 | 119 | @end 120 | 121 | /*! 122 | @protocol 123 | 124 | @abstract 125 | The `FBLoginViewDelegate` protocol defines the methods used to receive event 126 | notifications from `FBLoginView` objects. 127 | */ 128 | @protocol FBLoginViewDelegate 129 | 130 | @optional 131 | 132 | /*! 133 | @abstract 134 | Tells the delegate that the view is now in logged in mode 135 | 136 | @param loginView The login view that transitioned its view mode 137 | */ 138 | - (void)loginViewShowingLoggedInUser:(FBLoginView *)loginView; 139 | 140 | /*! 141 | @abstract 142 | Tells the delegate that the view is has now fetched user info 143 | 144 | @param loginView The login view that transitioned its view mode 145 | 146 | @param user The user info object describing the logged in user 147 | */ 148 | - (void)loginViewFetchedUserInfo:(FBLoginView *)loginView 149 | user:(id)user; 150 | 151 | /*! 152 | @abstract 153 | Tells the delegate that the view is now in logged out mode 154 | 155 | @param loginView The login view that transitioned its view mode 156 | */ 157 | - (void)loginViewShowingLoggedOutUser:(FBLoginView *)loginView; 158 | 159 | @end 160 | 161 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBDialog.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2010 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import 19 | 20 | @protocol FBDialogDelegate; 21 | @class FBFrictionlessRequestSettings; 22 | 23 | /** 24 | * Do not use this interface directly, instead, use dialog in Facebook.h 25 | * 26 | * Facebook dialog interface for start the facebook webView UIServer Dialog. 27 | */ 28 | 29 | @interface FBDialog : UIView { 30 | id _delegate; 31 | NSMutableDictionary *_params; 32 | NSString * _serverURL; 33 | NSURL* _loadingURL; 34 | UIWebView* _webView; 35 | UIActivityIndicatorView* _spinner; 36 | UIButton* _closeButton; 37 | UIInterfaceOrientation _orientation; 38 | BOOL _showingKeyboard; 39 | BOOL _isViewInvisible; 40 | FBFrictionlessRequestSettings* _frictionlessSettings; 41 | 42 | // Ensures that UI elements behind the dialog are disabled. 43 | UIView* _modalBackgroundView; 44 | } 45 | 46 | /** 47 | * The delegate. 48 | */ 49 | @property(nonatomic,assign) id delegate; 50 | 51 | /** 52 | * The parameters. 53 | */ 54 | @property(nonatomic, retain) NSMutableDictionary* params; 55 | 56 | - (NSString *) getStringFromUrl: (NSString*) url needle:(NSString *) needle; 57 | 58 | - (id)initWithURL: (NSString *) loadingURL 59 | params: (NSMutableDictionary *) params 60 | isViewInvisible: (BOOL) isViewInvisible 61 | frictionlessSettings: (FBFrictionlessRequestSettings *) frictionlessSettings 62 | delegate: (id ) delegate; 63 | 64 | /** 65 | * Displays the view with an animation. 66 | * 67 | * The view will be added to the top of the current key window. 68 | */ 69 | - (void)show; 70 | 71 | /** 72 | * Displays the first page of the dialog. 73 | * 74 | * Do not ever call this directly. It is intended to be overriden by subclasses. 75 | */ 76 | - (void)load; 77 | 78 | /** 79 | * Displays a URL in the dialog. 80 | */ 81 | - (void)loadURL:(NSString*)url 82 | get:(NSDictionary*)getParams; 83 | 84 | /** 85 | * Hides the view and notifies delegates of success or cancellation. 86 | */ 87 | - (void)dismissWithSuccess:(BOOL)success animated:(BOOL)animated; 88 | 89 | /** 90 | * Hides the view and notifies delegates of an error. 91 | */ 92 | - (void)dismissWithError:(NSError*)error animated:(BOOL)animated; 93 | 94 | /** 95 | * Subclasses may override to perform actions just prior to showing the dialog. 96 | */ 97 | - (void)dialogWillAppear; 98 | 99 | /** 100 | * Subclasses may override to perform actions just after the dialog is hidden. 101 | */ 102 | - (void)dialogWillDisappear; 103 | 104 | /** 105 | * Subclasses should override to process data returned from the server in a 'fbconnect' url. 106 | * 107 | * Implementations must call dismissWithSuccess:YES at some point to hide the dialog. 108 | */ 109 | - (void)dialogDidSucceed:(NSURL *)url; 110 | 111 | /** 112 | * Subclasses should override to process data returned from the server in a 'fbconnect' url. 113 | * 114 | * Implementations must call dismissWithSuccess:YES at some point to hide the dialog. 115 | */ 116 | - (void)dialogDidCancel:(NSURL *)url; 117 | @end 118 | 119 | /////////////////////////////////////////////////////////////////////////////////////////////////// 120 | 121 | /* 122 | *Your application should implement this delegate 123 | */ 124 | @protocol FBDialogDelegate 125 | 126 | @optional 127 | 128 | /** 129 | * Called when the dialog succeeds and is about to be dismissed. 130 | */ 131 | - (void)dialogDidComplete:(FBDialog *)dialog; 132 | 133 | /** 134 | * Called when the dialog succeeds with a returning url. 135 | */ 136 | - (void)dialogCompleteWithUrl:(NSURL *)url; 137 | 138 | /** 139 | * Called when the dialog get canceled by the user. 140 | */ 141 | - (void)dialogDidNotCompleteWithUrl:(NSURL *)url; 142 | 143 | /** 144 | * Called when the dialog is cancelled and is about to be dismissed. 145 | */ 146 | - (void)dialogDidNotComplete:(FBDialog *)dialog; 147 | 148 | /** 149 | * Called when dialog failed to load due to an error. 150 | */ 151 | - (void)dialog:(FBDialog*)dialog didFailWithError:(NSError *)error; 152 | 153 | /** 154 | * Asks if a link touched by a user should be opened in an external browser. 155 | * 156 | * If a user touches a link, the default behavior is to open the link in the Safari browser, 157 | * which will cause your app to quit. You may want to prevent this from happening, open the link 158 | * in your own internal browser, or perhaps warn the user that they are about to leave your app. 159 | * If so, implement this method on your delegate and return NO. If you warn the user, you 160 | * should hold onto the URL and once you have received their acknowledgement open the URL yourself 161 | * using [[UIApplication sharedApplication] openURL:]. 162 | */ 163 | - (BOOL)dialog:(FBDialog*)dialog shouldOpenURLInExternalBrowser:(NSURL *)url; 164 | 165 | @end 166 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBSessionTokenCachingStrategy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | /*! 20 | @class 21 | 22 | @abstract 23 | The `FBSessionTokenCachingStrategy` class is responsible for persisting and retrieving cached data related to 24 | an object, including the user's Facebook access token. 25 | 26 | @discussion 27 | `FBSessionTokenCachingStrategy` is designed to be instantiated directly or used as a base class. Usually default 28 | token caching behavior is sufficient, and you do not need to interface directly with `FBSessionTokenCachingStrategy` objects. 29 | However, if you need to control where or how `FBSession` information is cached, then you may take one of two approaches. 30 | 31 | The first and simplest approach is to instantiate an instance of `FBSessionTokenCachingStrategy`, and then pass 32 | the instance to `FBSession` class' `init` method. This enables your application to control the key name used in 33 | `NSUserDefaults` to store session information. You may consider this approach if you plan to cache session information 34 | for multiple users. 35 | 36 | The second and more advanced approached is to derive a custom class from `FBSessionTokenCachingStrategy`, which will 37 | be responsible for caching behavior of your application. This approach is useful if you need to change where the 38 | information is cached, for example if you prefer to use the filesystem or make a network connection to fetch and 39 | persist cached tokens. Inheritors should override the cacheTokenInformation, fetchTokenInformation, and clearToken methods. 40 | Doing this enables your application to implement any token caching scheme, including no caching at all. 41 | 42 | Direct use of `FBSessionTokenCachingStrategy`is an advanced technique. Most applications use objects without 43 | passing an `FBSessionTokenCachingStrategy`, which yields default caching to `NSUserDefaults`. 44 | */ 45 | @interface FBSessionTokenCachingStrategy : NSObject 46 | 47 | /*! 48 | @abstract Initializes and returns an instance 49 | */ 50 | - (id)init; 51 | 52 | /*! 53 | @abstract 54 | Initializes and returns an instance 55 | 56 | @param tokenInformationKeyName Specifies a key name to use for cached token information in NSUserDefaults, nil 57 | indicates a default value of @"FBAccessTokenInformationKey" 58 | */ 59 | - (id)initWithUserDefaultTokenInformationKeyName:(NSString*)tokenInformationKeyName; 60 | 61 | /*! 62 | @abstract 63 | Called by (and overridden by inheritors), in order to cache token information. 64 | 65 | @param tokenInformation Dictionary containing token information to be cached by the method 66 | */ 67 | - (void)cacheTokenInformation:(NSDictionary*)tokenInformation; 68 | 69 | /*! 70 | @abstract 71 | Called by (and overridden by inheritors), in order to fetch cached token information 72 | 73 | @discussion 74 | An overriding implementation should only return a token if it 75 | can also return an expiration date, otherwise return nil 76 | */ 77 | - (NSDictionary*)fetchTokenInformation; 78 | 79 | /*! 80 | @abstract 81 | Called by (and overridden by inheritors), in order delete any cached information for the current token 82 | */ 83 | - (void)clearToken; 84 | 85 | /*! 86 | @abstract 87 | Helper function called by the SDK as well as apps, in order to fetch the default strategy instance. 88 | */ 89 | + (FBSessionTokenCachingStrategy*)defaultInstance; 90 | 91 | /*! 92 | @abstract 93 | Helper function called by the SDK as well as application code, used to determine whether a given dictionary 94 | contains the minimum token information usable by the . 95 | 96 | @param tokenInformation Dictionary containing token information to be validated 97 | */ 98 | + (BOOL)isValidTokenInformation:(NSDictionary*)tokenInformation; 99 | 100 | @end 101 | 102 | // The key to use with token information dictionaries to get and set the token value 103 | extern NSString *const FBTokenInformationTokenKey; 104 | 105 | // The to use with token information dictionaries to get and set the expiration date 106 | extern NSString *const FBTokenInformationExpirationDateKey; 107 | 108 | // The to use with token information dictionaries to get and set the refresh date 109 | extern NSString *const FBTokenInformationRefreshDateKey; 110 | 111 | // The key to use with token information dictionaries to get the related user's fbid 112 | extern NSString *const FBTokenInformationUserFBIDKey; 113 | 114 | // The key to use with token information dictionaries to determine whether the token was fetched via Facebook Login 115 | extern NSString *const FBTokenInformationIsFacebookLoginKey; 116 | 117 | // The key to use with token information dictionaries to determine whether the token was fetched via the OS 118 | extern NSString *const FBTokenInformationLoginTypeLoginKey; 119 | 120 | // The key to use with token information dictionaries to get the latest known permissions 121 | extern NSString *const FBTokenInformationPermissionsKey; -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBSessionTokenCachingStrategy.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | 19 | /*! 20 | @class 21 | 22 | @abstract 23 | The `FBSessionTokenCachingStrategy` class is responsible for persisting and retrieving cached data related to 24 | an object, including the user's Facebook access token. 25 | 26 | @discussion 27 | `FBSessionTokenCachingStrategy` is designed to be instantiated directly or used as a base class. Usually default 28 | token caching behavior is sufficient, and you do not need to interface directly with `FBSessionTokenCachingStrategy` objects. 29 | However, if you need to control where or how `FBSession` information is cached, then you may take one of two approaches. 30 | 31 | The first and simplest approach is to instantiate an instance of `FBSessionTokenCachingStrategy`, and then pass 32 | the instance to `FBSession` class' `init` method. This enables your application to control the key name used in 33 | `NSUserDefaults` to store session information. You may consider this approach if you plan to cache session information 34 | for multiple users. 35 | 36 | The second and more advanced approached is to derive a custom class from `FBSessionTokenCachingStrategy`, which will 37 | be responsible for caching behavior of your application. This approach is useful if you need to change where the 38 | information is cached, for example if you prefer to use the filesystem or make a network connection to fetch and 39 | persist cached tokens. Inheritors should override the cacheTokenInformation, fetchTokenInformation, and clearToken methods. 40 | Doing this enables your application to implement any token caching scheme, including no caching at all. 41 | 42 | Direct use of `FBSessionTokenCachingStrategy`is an advanced technique. Most applications use objects without 43 | passing an `FBSessionTokenCachingStrategy`, which yields default caching to `NSUserDefaults`. 44 | */ 45 | @interface FBSessionTokenCachingStrategy : NSObject 46 | 47 | /*! 48 | @abstract Initializes and returns an instance 49 | */ 50 | - (id)init; 51 | 52 | /*! 53 | @abstract 54 | Initializes and returns an instance 55 | 56 | @param tokenInformationKeyName Specifies a key name to use for cached token information in NSUserDefaults, nil 57 | indicates a default value of @"FBAccessTokenInformationKey" 58 | */ 59 | - (id)initWithUserDefaultTokenInformationKeyName:(NSString*)tokenInformationKeyName; 60 | 61 | /*! 62 | @abstract 63 | Called by (and overridden by inheritors), in order to cache token information. 64 | 65 | @param tokenInformation Dictionary containing token information to be cached by the method 66 | */ 67 | - (void)cacheTokenInformation:(NSDictionary*)tokenInformation; 68 | 69 | /*! 70 | @abstract 71 | Called by (and overridden by inheritors), in order to fetch cached token information 72 | 73 | @discussion 74 | An overriding implementation should only return a token if it 75 | can also return an expiration date, otherwise return nil 76 | */ 77 | - (NSDictionary*)fetchTokenInformation; 78 | 79 | /*! 80 | @abstract 81 | Called by (and overridden by inheritors), in order delete any cached information for the current token 82 | */ 83 | - (void)clearToken; 84 | 85 | /*! 86 | @abstract 87 | Helper function called by the SDK as well as apps, in order to fetch the default strategy instance. 88 | */ 89 | + (FBSessionTokenCachingStrategy*)defaultInstance; 90 | 91 | /*! 92 | @abstract 93 | Helper function called by the SDK as well as application code, used to determine whether a given dictionary 94 | contains the minimum token information usable by the . 95 | 96 | @param tokenInformation Dictionary containing token information to be validated 97 | */ 98 | + (BOOL)isValidTokenInformation:(NSDictionary*)tokenInformation; 99 | 100 | @end 101 | 102 | // The key to use with token information dictionaries to get and set the token value 103 | extern NSString *const FBTokenInformationTokenKey; 104 | 105 | // The to use with token information dictionaries to get and set the expiration date 106 | extern NSString *const FBTokenInformationExpirationDateKey; 107 | 108 | // The to use with token information dictionaries to get and set the refresh date 109 | extern NSString *const FBTokenInformationRefreshDateKey; 110 | 111 | // The key to use with token information dictionaries to get the related user's fbid 112 | extern NSString *const FBTokenInformationUserFBIDKey; 113 | 114 | // The key to use with token information dictionaries to determine whether the token was fetched via Facebook Login 115 | extern NSString *const FBTokenInformationIsFacebookLoginKey; 116 | 117 | // The key to use with token information dictionaries to determine whether the token was fetched via the OS 118 | extern NSString *const FBTokenInformationLoginTypeLoginKey; 119 | 120 | // The key to use with token information dictionaries to get the latest known permissions 121 | extern NSString *const FBTokenInformationPermissionsKey; -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FacebookSDK.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | // core 18 | #import "FBSession.h" 19 | #import "FBRequest.h" 20 | #import "FBError.h" 21 | #import "FBSettings.h" 22 | 23 | // ux 24 | #import "FBLoginView.h" 25 | #import "FBProfilePictureView.h" 26 | #import "FBUserSettingsViewController.h" 27 | #import "FBPlacePickerViewController.h" 28 | #import "FBFriendPickerViewController.h" 29 | #import "FBCacheDescriptor.h" 30 | 31 | // graph 32 | #import "FBGraphUser.h" 33 | #import "FBGraphPlace.h" 34 | #import "FBGraphLocation.h" 35 | #import "FBGraphObject.h" // + design summary for graph component-group 36 | #import "FBOpenGraphAction.h" 37 | 38 | // ux 39 | #import "FBLoginView.h" 40 | #import "FBProfilePictureView.h" 41 | #import "FBPlacePickerViewController.h" 42 | #import "FBFriendPickerViewController.h" 43 | #import "FBCacheDescriptor.h" 44 | #import "FBNativeDialogs.h" 45 | 46 | /*! 47 | @header 48 | 49 | @abstract Library header, import this to import all of the public types 50 | in the Facebook SDK 51 | 52 | @discussion 53 | 54 | //////////////////////////////////////////////////////////////////////////////// 55 | 56 | 57 | Summary: this header summarizes the structure and goals of the Facebook SDK for iOS. 58 | Goals: 59 | * Leverage and work well with modern features of iOS (e.g. blocks, ARC, etc.) 60 | * Patterned after best of breed iOS frameworks (e.g. naming, pattern-use, etc.) 61 | * Common integration experience is simple & easy to describe 62 | * Factored to enable a growing list of scenarios over time 63 | 64 | Notes on approaches: 65 | 1. We use a key scenario to drive prioritization of work for a given update 66 | 2. We are building-atop and refactoring, rather than replacing, existing iOS SDK releases 67 | 3. We use take an incremental approach where we can choose to maintain as little or as much compatibility with the existing SDK needed 68 | a) and so we will be developing to this approach 69 | b) and then at push-time for a release we will decide when/what to break 70 | on a feature by feature basis 71 | 4. Some light but critical infrastructure is needed to support both the goals 72 | and the execution of this change (e.g. a build/package/deploy process) 73 | 74 | Design points: 75 | We will move to a more object-oriented approach, in order to facilitate the 76 | addition of a different class of objects, such as controls and visual helpers 77 | (e.g. FBLikeView, FBPersonView), as well as sub-frameworks to enable scenarios 78 | such (e.g. FBOpenGraphEntity, FBLocalEntityCache, etc.) 79 | 80 | As we add features, it will no longer be appropriate to host all functionality 81 | in the Facebook class, though it will be maintained for some time for migration 82 | purposes. Instead functionality lives in related collections of classes. 83 | 84 |
 85 |  @textblock
 86 |  
 87 |                *------------* *----------*  *----------------* *---*
 88 |   Scenario --> |FBPersonView| |FBLikeView|  | FBPlacePicker  | | F |
 89 |                *------------* *----------*  *----------------* | a |
 90 |                *-------------------*  *----------*  *--------* | c |
 91 |  Component --> |   FBGraphObject   |  | FBDialog |  | FBView | | e |
 92 |                *-------------------*  *----------*  *--------* | b |
 93 |                *---------* *---------* *---------------------* | o |
 94 |       Core --> |FBSession| |FBRequest| |Utilities (e.g. JSON)| | o |
 95 |                *---------* *---------* *---------------------* * k *
 96 | 
 97 |  @/textblock
 98 |  
99 | 100 | The figure above describes three layers of functionality, with the existing 101 | Facebook on the side as a helper proxy to a subset of the overall SDK. The 102 | layers loosely organize the SDK into *Core Objects* necessary to interface 103 | with Facebook, higher-level *Framework Components* that feel like natural 104 | extensions to existing frameworks such as UIKit and Foundation, but which 105 | surface behavior broadly applicable to Facebook, and finally the 106 | *Scenario Objects*, which provide deeper turn-key capibilities for useful 107 | mobile scenarios. 108 | 109 | Use example (low barrier use case): 110 | 111 |
112 |  @textblock
113 | 
114 | // log on to Facebook
115 | [FBSession sessionOpenWithPermissions:nil
116 |                     completionHandler:^(FBSession *session, 
117 |                                         FBSessionState status, 
118 |                                         NSError *error) {
119 |                         if (session.isOpen) {
120 |                             // request basic information for the user
121 |                             [FBRequestConnection startWithGraphPath:@"me"
122 |                                                   completionHandler:^void(FBRequestConnection *request, 
123 |                                                                           id result,
124 |                                                                           NSError *error) {
125 |                                                       if (!error) {
126 |                                                           // get json from result
127 |                                                       }
128 |                                                   }];
129 |                         }
130 |                     }];
131 |  @/textblock
132 |  
133 | 134 | */ 135 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FacebookSDK.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | // core 18 | #import "FBSession.h" 19 | #import "FBRequest.h" 20 | #import "FBError.h" 21 | #import "FBSettings.h" 22 | 23 | // ux 24 | #import "FBLoginView.h" 25 | #import "FBProfilePictureView.h" 26 | #import "FBUserSettingsViewController.h" 27 | #import "FBPlacePickerViewController.h" 28 | #import "FBFriendPickerViewController.h" 29 | #import "FBCacheDescriptor.h" 30 | 31 | // graph 32 | #import "FBGraphUser.h" 33 | #import "FBGraphPlace.h" 34 | #import "FBGraphLocation.h" 35 | #import "FBGraphObject.h" // + design summary for graph component-group 36 | #import "FBOpenGraphAction.h" 37 | 38 | // ux 39 | #import "FBLoginView.h" 40 | #import "FBProfilePictureView.h" 41 | #import "FBPlacePickerViewController.h" 42 | #import "FBFriendPickerViewController.h" 43 | #import "FBCacheDescriptor.h" 44 | #import "FBNativeDialogs.h" 45 | 46 | /*! 47 | @header 48 | 49 | @abstract Library header, import this to import all of the public types 50 | in the Facebook SDK 51 | 52 | @discussion 53 | 54 | //////////////////////////////////////////////////////////////////////////////// 55 | 56 | 57 | Summary: this header summarizes the structure and goals of the Facebook SDK for iOS. 58 | Goals: 59 | * Leverage and work well with modern features of iOS (e.g. blocks, ARC, etc.) 60 | * Patterned after best of breed iOS frameworks (e.g. naming, pattern-use, etc.) 61 | * Common integration experience is simple & easy to describe 62 | * Factored to enable a growing list of scenarios over time 63 | 64 | Notes on approaches: 65 | 1. We use a key scenario to drive prioritization of work for a given update 66 | 2. We are building-atop and refactoring, rather than replacing, existing iOS SDK releases 67 | 3. We use take an incremental approach where we can choose to maintain as little or as much compatibility with the existing SDK needed 68 | a) and so we will be developing to this approach 69 | b) and then at push-time for a release we will decide when/what to break 70 | on a feature by feature basis 71 | 4. Some light but critical infrastructure is needed to support both the goals 72 | and the execution of this change (e.g. a build/package/deploy process) 73 | 74 | Design points: 75 | We will move to a more object-oriented approach, in order to facilitate the 76 | addition of a different class of objects, such as controls and visual helpers 77 | (e.g. FBLikeView, FBPersonView), as well as sub-frameworks to enable scenarios 78 | such (e.g. FBOpenGraphEntity, FBLocalEntityCache, etc.) 79 | 80 | As we add features, it will no longer be appropriate to host all functionality 81 | in the Facebook class, though it will be maintained for some time for migration 82 | purposes. Instead functionality lives in related collections of classes. 83 | 84 |
 85 |  @textblock
 86 |  
 87 |                *------------* *----------*  *----------------* *---*
 88 |   Scenario --> |FBPersonView| |FBLikeView|  | FBPlacePicker  | | F |
 89 |                *------------* *----------*  *----------------* | a |
 90 |                *-------------------*  *----------*  *--------* | c |
 91 |  Component --> |   FBGraphObject   |  | FBDialog |  | FBView | | e |
 92 |                *-------------------*  *----------*  *--------* | b |
 93 |                *---------* *---------* *---------------------* | o |
 94 |       Core --> |FBSession| |FBRequest| |Utilities (e.g. JSON)| | o |
 95 |                *---------* *---------* *---------------------* * k *
 96 | 
 97 |  @/textblock
 98 |  
99 | 100 | The figure above describes three layers of functionality, with the existing 101 | Facebook on the side as a helper proxy to a subset of the overall SDK. The 102 | layers loosely organize the SDK into *Core Objects* necessary to interface 103 | with Facebook, higher-level *Framework Components* that feel like natural 104 | extensions to existing frameworks such as UIKit and Foundation, but which 105 | surface behavior broadly applicable to Facebook, and finally the 106 | *Scenario Objects*, which provide deeper turn-key capibilities for useful 107 | mobile scenarios. 108 | 109 | Use example (low barrier use case): 110 | 111 |
112 |  @textblock
113 | 
114 | // log on to Facebook
115 | [FBSession sessionOpenWithPermissions:nil
116 |                     completionHandler:^(FBSession *session, 
117 |                                         FBSessionState status, 
118 |                                         NSError *error) {
119 |                         if (session.isOpen) {
120 |                             // request basic information for the user
121 |                             [FBRequestConnection startWithGraphPath:@"me"
122 |                                                   completionHandler:^void(FBRequestConnection *request, 
123 |                                                                           id result,
124 |                                                                           NSError *error) {
125 |                                                       if (!error) {
126 |                                                           // get json from result
127 |                                                       }
128 |                                                   }];
129 |                         }
130 |                     }];
131 |  @/textblock
132 |  
133 | 134 | */ 135 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBTestSession.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import "FBSession.h" 18 | 19 | #if defined (DEBUG) 20 | #define SAFE_TO_USE_FBTESTSESSION 21 | #endif 22 | 23 | #if !defined(SAFE_TO_USE_FBTESTSESSION) 24 | #pragma message ("warning: using FBTestSession, which is designed for unit-testing uses only, in non-DEBUG code -- ensure this is what you really want") 25 | #endif 26 | 27 | /*! 28 | Consider using this tag to pass to sessionWithSharedUserWithPermissions:uniqueUserTag: when 29 | you need a second unique test user in a test case. Using the same tag each time reduces 30 | the proliferation of test users. 31 | */ 32 | extern NSString *kSecondTestUserTag; 33 | /*! 34 | Consider using this tag to pass to sessionWithSharedUserWithPermissions:uniqueUserTag: when 35 | you need a third unique test user in a test case. Using the same tag each time reduces 36 | the proliferation of test users. 37 | */ 38 | extern NSString *kThirdTestUserTag; 39 | 40 | /*! 41 | @class FBTestSession 42 | 43 | @abstract 44 | Implements an FBSession subclass that knows about test users for a particular 45 | application. This should never be used from a real application, but may be useful 46 | for writing unit tests, etc. 47 | 48 | @discussion 49 | Facebook allows developers to create test accounts for testing their applications' 50 | Facebook integration (see https://developers.facebook.com/docs/test_users/). This class 51 | simplifies use of these accounts for writing unit tests. It is not designed for use in 52 | production application code. 53 | 54 | The main use case for this class is using sessionForUnitTestingWithPermissions:mode: 55 | to create a session for a test user. Two modes are supported. In "shared" mode, an attempt 56 | is made to find an existing test user that has the required permissions and, if it is not 57 | currently in use by another FBTestSession, just use that user. If no such user is available, 58 | a new one is created with the required permissions. In "private" mode, designed for 59 | scenarios which require a new user in a known clean state, a new test user will always be 60 | created, and it will be automatically deleted when the FBTestSession is closed. 61 | 62 | Note that the shared test user functionality depends on a naming convention for the test users. 63 | It is important that any testing of functionality which will mutate the permissions for a 64 | test user NOT use a shared test user, or this scheme will break down. If a shared test user 65 | seems to be in an invalid state, it can be deleted manually via the Web interface at 66 | https://developers.facebook.com/apps/APP_ID/permissions?role=test+users. 67 | */ 68 | @interface FBTestSession : FBSession 69 | 70 | /// The app access token (composed of app ID and secret) to use for accessing test users. 71 | @property (readonly, copy) NSString *appAccessToken; 72 | /// The ID of the test user associated with this session. 73 | @property (readonly, copy) NSString *testUserID; 74 | /// The App ID of the test app as configured in the plist. 75 | @property (readonly, copy) NSString *testAppID; 76 | /// The App Secret of the test app as configured in the plist. 77 | @property (readonly, copy) NSString *testAppSecret; 78 | 79 | /*! 80 | @abstract 81 | Constructor helper to create a session for use in unit tests 82 | 83 | @discussion 84 | This method creates a session object which uses a shared test user with the right permissions, 85 | creating one if necessary on open (but not deleting it on close, so it can be re-used in later 86 | tests). Calling this method multiple times may return sessions with the same user. If this is not 87 | desired, use the variant sessionWithSharedUserWithPermissions:uniqueUserTag:. 88 | 89 | This method should not be used in application code -- but is useful for creating unit tests 90 | that use the Facebook SDK. 91 | 92 | @param permissions array of strings naming permissions to authorize; nil indicates 93 | a common default set of permissions should be used for unit testing 94 | */ 95 | + (id)sessionWithSharedUserWithPermissions:(NSArray*)permissions; 96 | 97 | /*! 98 | @abstract 99 | Constructor helper to create a session for use in unit tests 100 | 101 | @discussion 102 | This method creates a session object which uses a shared test user with the right permissions, 103 | creating one if necessary on open (but not deleting it on close, so it can be re-used in later 104 | tests). 105 | 106 | This method should not be used in application code -- but is useful for creating unit tests 107 | that use the Facebook SDK. 108 | 109 | @param permissions array of strings naming permissions to authorize; nil indicates 110 | a common default set of permissions should be used for unit testing 111 | 112 | @param uniqueUserTag a string which will be used to make this user unique among other 113 | users with the same permissions. Useful for tests which require two or more users to interact 114 | with each other, and which therefore must have sessions associated with different users. For 115 | this case, consider using kSecondTestUserTag and kThirdTestUserTag so these users can be shared 116 | with other, similar, tests. 117 | */ 118 | + (id)sessionWithSharedUserWithPermissions:(NSArray*)permissions 119 | uniqueUserTag:(NSString*)uniqueUserTag; 120 | 121 | /*! 122 | @abstract 123 | Constructor helper to create a session for use in unit tests 124 | 125 | @discussion 126 | This method creates a session object which creates a test user on open, and destroys the user on 127 | close; This method should not be used in application code -- but is useful for creating unit tests 128 | that use the Facebook SDK. 129 | 130 | @param permissions array of strings naming permissions to authorize; nil indicates 131 | a common default set of permissions should be used for unit testing 132 | */ 133 | + (id)sessionWithPrivateUserWithPermissions:(NSArray*)permissions; 134 | 135 | @end 136 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBTestSession.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | * 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import "FBSession.h" 18 | 19 | #if defined (DEBUG) 20 | #define SAFE_TO_USE_FBTESTSESSION 21 | #endif 22 | 23 | #if !defined(SAFE_TO_USE_FBTESTSESSION) 24 | #pragma message ("warning: using FBTestSession, which is designed for unit-testing uses only, in non-DEBUG code -- ensure this is what you really want") 25 | #endif 26 | 27 | /*! 28 | Consider using this tag to pass to sessionWithSharedUserWithPermissions:uniqueUserTag: when 29 | you need a second unique test user in a test case. Using the same tag each time reduces 30 | the proliferation of test users. 31 | */ 32 | extern NSString *kSecondTestUserTag; 33 | /*! 34 | Consider using this tag to pass to sessionWithSharedUserWithPermissions:uniqueUserTag: when 35 | you need a third unique test user in a test case. Using the same tag each time reduces 36 | the proliferation of test users. 37 | */ 38 | extern NSString *kThirdTestUserTag; 39 | 40 | /*! 41 | @class FBTestSession 42 | 43 | @abstract 44 | Implements an FBSession subclass that knows about test users for a particular 45 | application. This should never be used from a real application, but may be useful 46 | for writing unit tests, etc. 47 | 48 | @discussion 49 | Facebook allows developers to create test accounts for testing their applications' 50 | Facebook integration (see https://developers.facebook.com/docs/test_users/). This class 51 | simplifies use of these accounts for writing unit tests. It is not designed for use in 52 | production application code. 53 | 54 | The main use case for this class is using sessionForUnitTestingWithPermissions:mode: 55 | to create a session for a test user. Two modes are supported. In "shared" mode, an attempt 56 | is made to find an existing test user that has the required permissions and, if it is not 57 | currently in use by another FBTestSession, just use that user. If no such user is available, 58 | a new one is created with the required permissions. In "private" mode, designed for 59 | scenarios which require a new user in a known clean state, a new test user will always be 60 | created, and it will be automatically deleted when the FBTestSession is closed. 61 | 62 | Note that the shared test user functionality depends on a naming convention for the test users. 63 | It is important that any testing of functionality which will mutate the permissions for a 64 | test user NOT use a shared test user, or this scheme will break down. If a shared test user 65 | seems to be in an invalid state, it can be deleted manually via the Web interface at 66 | https://developers.facebook.com/apps/APP_ID/permissions?role=test+users. 67 | */ 68 | @interface FBTestSession : FBSession 69 | 70 | /// The app access token (composed of app ID and secret) to use for accessing test users. 71 | @property (readonly, copy) NSString *appAccessToken; 72 | /// The ID of the test user associated with this session. 73 | @property (readonly, copy) NSString *testUserID; 74 | /// The App ID of the test app as configured in the plist. 75 | @property (readonly, copy) NSString *testAppID; 76 | /// The App Secret of the test app as configured in the plist. 77 | @property (readonly, copy) NSString *testAppSecret; 78 | 79 | /*! 80 | @abstract 81 | Constructor helper to create a session for use in unit tests 82 | 83 | @discussion 84 | This method creates a session object which uses a shared test user with the right permissions, 85 | creating one if necessary on open (but not deleting it on close, so it can be re-used in later 86 | tests). Calling this method multiple times may return sessions with the same user. If this is not 87 | desired, use the variant sessionWithSharedUserWithPermissions:uniqueUserTag:. 88 | 89 | This method should not be used in application code -- but is useful for creating unit tests 90 | that use the Facebook SDK. 91 | 92 | @param permissions array of strings naming permissions to authorize; nil indicates 93 | a common default set of permissions should be used for unit testing 94 | */ 95 | + (id)sessionWithSharedUserWithPermissions:(NSArray*)permissions; 96 | 97 | /*! 98 | @abstract 99 | Constructor helper to create a session for use in unit tests 100 | 101 | @discussion 102 | This method creates a session object which uses a shared test user with the right permissions, 103 | creating one if necessary on open (but not deleting it on close, so it can be re-used in later 104 | tests). 105 | 106 | This method should not be used in application code -- but is useful for creating unit tests 107 | that use the Facebook SDK. 108 | 109 | @param permissions array of strings naming permissions to authorize; nil indicates 110 | a common default set of permissions should be used for unit testing 111 | 112 | @param uniqueUserTag a string which will be used to make this user unique among other 113 | users with the same permissions. Useful for tests which require two or more users to interact 114 | with each other, and which therefore must have sessions associated with different users. For 115 | this case, consider using kSecondTestUserTag and kThirdTestUserTag so these users can be shared 116 | with other, similar, tests. 117 | */ 118 | + (id)sessionWithSharedUserWithPermissions:(NSArray*)permissions 119 | uniqueUserTag:(NSString*)uniqueUserTag; 120 | 121 | /*! 122 | @abstract 123 | Constructor helper to create a session for use in unit tests 124 | 125 | @discussion 126 | This method creates a session object which creates a test user on open, and destroys the user on 127 | close; This method should not be used in application code -- but is useful for creating unit tests 128 | that use the Facebook SDK. 129 | 130 | @param permissions array of strings naming permissions to authorize; nil indicates 131 | a common default set of permissions should be used for unit testing 132 | */ 133 | + (id)sessionWithPrivateUserWithPermissions:(NSArray*)permissions; 134 | 135 | @end 136 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/SDWebImage.framework/Versions/A/Headers/UIImageView+WebCache.h: -------------------------------------------------------------------------------- 1 | /* 2 | * This file is part of the SDWebImage package. 3 | * (c) Olivier Poitrey 4 | * 5 | * For the full copyright and license information, please view the LICENSE 6 | * file that was distributed with this source code. 7 | */ 8 | 9 | #import "SDWebImageCompat.h" 10 | #import "SDWebImageManager.h" 11 | 12 | /** 13 | * Integrates SDWebImage async downloading and caching of remote images with UIImageView. 14 | * 15 | * Usage with a UITableViewCell sub-class: 16 | * 17 | * #import 18 | * 19 | * ... 20 | * 21 | * - (UITableViewCell *)tableView:(UITableView *)tableView 22 | * cellForRowAtIndexPath:(NSIndexPath *)indexPath 23 | * { 24 | * static NSString *MyIdentifier = @"MyIdentifier"; 25 | * 26 | * UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MyIdentifier]; 27 | * 28 | * if (cell == nil) 29 | * { 30 | * cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault 31 | * reuseIdentifier:MyIdentifier] autorelease]; 32 | * } 33 | * 34 | * // Here we use the provided setImageWithURL: method to load the web image 35 | * // Ensure you use a placeholder image otherwise cells will be initialized with no image 36 | * [cell.imageView setImageWithURL:[NSURL URLWithString:@"http://example.com/image.jpg"] 37 | * placeholderImage:[UIImage imageNamed:@"placeholder"]]; 38 | * 39 | * cell.textLabel.text = @"My Text"; 40 | * return cell; 41 | * } 42 | * 43 | */ 44 | @interface UIImageView (WebCache) 45 | 46 | /** 47 | * Set the imageView `image` with an `url`. 48 | * 49 | * The downloand is asynchronous and cached. 50 | * 51 | * @param url The url for the image. 52 | */ 53 | - (void)setImageWithURL:(NSURL *)url; 54 | 55 | /** 56 | * Set the imageView `image` with an `url` and a placeholder. 57 | * 58 | * The downloand is asynchronous and cached. 59 | * 60 | * @param url The url for the image. 61 | * @param placeholder The image to be set initially, until the image request finishes. 62 | * @see setImageWithURL:placeholderImage:options: 63 | */ 64 | - (void)setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder; 65 | 66 | /** 67 | * Set the imageView `image` with an `url`, placeholder and custom options. 68 | * 69 | * The downloand is asynchronous and cached. 70 | * 71 | * @param url The url for the image. 72 | * @param placeholder The image to be set initially, until the image request finishes. 73 | * @param options The options to use when downloading the image. @see SDWebImageOptions for the possible values. 74 | */ 75 | - (void)setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder options:(SDWebImageOptions)options; 76 | 77 | /** 78 | * Set the imageView `image` with an `url`. 79 | * 80 | * The downloand is asynchronous and cached. 81 | * 82 | * @param url The url for the image. 83 | * @param completedBlock A block called when operation has been completed. This block as no return value 84 | * and takes the requested UIImage as first parameter. In case of error the image parameter 85 | * is nil and the second parameter may contain an NSError. The third parameter is a Boolean 86 | * indicating if the image was retrived from the local cache of from the network. 87 | */ 88 | - (void)setImageWithURL:(NSURL *)url completed:(SDWebImageCompletedBlock)completedBlock; 89 | 90 | /** 91 | * Set the imageView `image` with an `url`, placeholder. 92 | * 93 | * The downloand is asynchronous and cached. 94 | * 95 | * @param url The url for the image. 96 | * @param placeholder The image to be set initially, until the image request finishes. 97 | * @param completedBlock A block called when operation has been completed. This block as no return value 98 | * and takes the requested UIImage as first parameter. In case of error the image parameter 99 | * is nil and the second parameter may contain an NSError. The third parameter is a Boolean 100 | * indicating if the image was retrived from the local cache of from the network. 101 | */ 102 | - (void)setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder completed:(SDWebImageCompletedBlock)completedBlock; 103 | 104 | /** 105 | * Set the imageView `image` with an `url`, placeholder and custom options. 106 | * 107 | * The downloand is asynchronous and cached. 108 | * 109 | * @param url The url for the image. 110 | * @param placeholder The image to be set initially, until the image request finishes. 111 | * @param options The options to use when downloading the image. @see SDWebImageOptions for the possible values. 112 | * @param completedBlock A block called when operation has been completed. This block as no return value 113 | * and takes the requested UIImage as first parameter. In case of error the image parameter 114 | * is nil and the second parameter may contain an NSError. The third parameter is a Boolean 115 | * indicating if the image was retrived from the local cache of from the network. 116 | */ 117 | - (void)setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder options:(SDWebImageOptions)options completed:(SDWebImageCompletedBlock)completedBlock; 118 | 119 | /** 120 | * Set the imageView `image` with an `url`, placeholder and custom options. 121 | * 122 | * The downloand is asynchronous and cached. 123 | * 124 | * @param url The url for the image. 125 | * @param placeholder The image to be set initially, until the image request finishes. 126 | * @param options The options to use when downloading the image. @see SDWebImageOptions for the possible values. 127 | * @param progressBlock A block called while image is downloading 128 | * @param completedBlock A block called when operation has been completed. This block as no return value 129 | * and takes the requested UIImage as first parameter. In case of error the image parameter 130 | * is nil and the second parameter may contain an NSError. The third parameter is a Boolean 131 | * indicating if the image was retrived from the local cache of from the network. 132 | */ 133 | - (void)setImageWithURL:(NSURL *)url placeholderImage:(UIImage *)placeholder options:(SDWebImageOptions)options progress:(SDWebImageDownloaderProgressBlock)progressBlock completed:(SDWebImageCompletedBlock)completedBlock; 134 | 135 | /** 136 | * Cancel the current download 137 | */ 138 | - (void)cancelCurrentImageLoad; 139 | 140 | @end 141 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/Headers/FBNativeDialogs.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import 19 | 20 | @class FBSession; 21 | 22 | /*! 23 | @typedef FBNativeDialogResult enum 24 | 25 | @abstract 26 | Passed to a handler to indicate the result of a dialog being displayed to the user. 27 | */ 28 | typedef enum { 29 | /*! Indicates that the dialog action completed successfully. */ 30 | FBNativeDialogResultSucceeded, 31 | /*! Indicates that the dialog action was cancelled (either by the user or the system). */ 32 | FBNativeDialogResultCancelled, 33 | /*! Indicates that the dialog could not be shown (because not on ios6 or ios6 auth was not used). */ 34 | FBNativeDialogResultError 35 | } FBNativeDialogResult; 36 | 37 | /*! 38 | @typedef 39 | 40 | @abstract Defines a handler that will be called in response to the native share dialog 41 | being displayed. 42 | */ 43 | typedef void (^FBShareDialogHandler)(FBNativeDialogResult result, NSError *error); 44 | 45 | /*! 46 | @class FBNativeDialogs 47 | 48 | @abstract 49 | Provides methods to display native (i.e., non-Web-based) dialogs to the user. 50 | Currently the iOS 6 sharing dialog is supported. 51 | */ 52 | @interface FBNativeDialogs : NSObject 53 | 54 | /*! 55 | @abstract 56 | Presents a dialog that allows the user to share a status update that may include 57 | text, images, or URLs. This dialog is only available on iOS 6.0 and above. The 58 | current active session returned by [FBSession activeSession] will be used to determine 59 | whether the dialog will be displayed. If a session is active, it must be open and the 60 | login method used to authenticate the user must be native iOS 6.0 authentication. 61 | If no session active, then whether the call succeeds or not will depend on 62 | whether Facebook integration has been configured. 63 | 64 | @param viewController The view controller which will present the dialog. 65 | 66 | @param initialText The text which will initially be populated in the dialog. The user 67 | will have the opportunity to edit this text before posting it. May be nil. 68 | 69 | @param image A UIImage that will be attached to the status update. May be nil. 70 | 71 | @param url An NSURL that will be attached to the status update. May be nil. 72 | 73 | @param handler A handler that will be called when the dialog is dismissed, or if an error 74 | occurs. May be nil. 75 | 76 | @return YES if the dialog was presented, NO if not (in the case of a NO result, the handler 77 | will still be called, with an error indicating the reason the dialog was not displayed) 78 | */ 79 | + (BOOL)presentShareDialogModallyFrom:(UIViewController*)viewController 80 | initialText:(NSString*)initialText 81 | image:(UIImage*)image 82 | url:(NSURL*)url 83 | handler:(FBShareDialogHandler)handler; 84 | 85 | /*! 86 | @abstract 87 | Presents a dialog that allows the user to share a status update that may include 88 | text, images, or URLs. This dialog is only available on iOS 6.0 and above. The 89 | current active session returned by [FBSession activeSession] will be used to determine 90 | whether the dialog will be displayed. If a session is active, it must be open and the 91 | login method used to authenticate the user must be native iOS 6.0 authentication. 92 | If no session active, then whether the call succeeds or not will depend on 93 | whether Facebook integration has been configured. 94 | 95 | @param viewController The view controller which will present the dialog. 96 | 97 | @param initialText The text which will initially be populated in the dialog. The user 98 | will have the opportunity to edit this text before posting it. May be nil. 99 | 100 | @param images An array of UIImages that will be attached to the status update. May 101 | be nil. 102 | 103 | @param urls An array of NSURLs that will be attached to the status update. May be nil. 104 | 105 | @param handler A handler that will be called when the dialog is dismissed, or if an error 106 | occurs. May be nil. 107 | 108 | @return YES if the dialog was presented, NO if not (in the case of a NO result, the handler 109 | will still be called, with an error indicating the reason the dialog was not displayed) 110 | */ 111 | + (BOOL)presentShareDialogModallyFrom:(UIViewController*)viewController 112 | initialText:(NSString*)initialText 113 | images:(NSArray*)images 114 | urls:(NSArray*)urls 115 | handler:(FBShareDialogHandler)handler; 116 | 117 | /*! 118 | @abstract 119 | Presents a dialog that allows the user to share a status update that may include 120 | text, images, or URLs. This dialog is only available on iOS 6.0 and above. An 121 | may be specified, or nil may be passed to indicate that the current 122 | active session should be used. If a session is specified (whether explicitly or by 123 | virtue of being the active session), it must be open and the login method used to 124 | authenticate the user must be native iOS 6.0 authentication. If no session is specified 125 | (and there is no active session), then whether the call succeeds or not will depend on 126 | whether Facebook integration has been configured. 127 | 128 | @param viewController The view controller which will present the dialog. 129 | 130 | @param session The to use to determine whether or not the user has been 131 | authenticated with iOS native authentication. If nil, then [FBSession activeSession] 132 | will be checked. See discussion above for the implications of nil or non-nil session. 133 | 134 | @param initialText The text which will initially be populated in the dialog. The user 135 | will have the opportunity to edit this text before posting it. May be nil. 136 | 137 | @param images An array of UIImages that will be attached to the status update. May 138 | be nil. 139 | 140 | @param urls An array of NSURLs that will be attached to the status update. May be nil. 141 | 142 | @param handler A handler that will be called when the dialog is dismissed, or if an error 143 | occurs. May be nil. 144 | 145 | @return YES if the dialog was presented, NO if not (in the case of a NO result, the handler 146 | will still be called, with an error indicating the reason the dialog was not displayed) 147 | */ 148 | + (BOOL)presentShareDialogModallyFrom:(UIViewController*)viewController 149 | session:(FBSession*)session 150 | initialText:(NSString*)initialText 151 | images:(NSArray*)images 152 | urls:(NSArray*)urls 153 | handler:(FBShareDialogHandler)handler; 154 | 155 | /*! 156 | @abstract 157 | Determines whether a call to presentShareDialogModallyFrom: will successfully present 158 | a dialog. This is useful for applications that need to modify the available UI controls 159 | depending on whether the dialog is available on the current platform and for the current 160 | user. 161 | 162 | @param session The to use to determine whether or not the user has been 163 | authenticated with iOS native authentication. If nil, then [FBSession activeSession] 164 | will be checked. See discussion above for the implications of nil or non-nil session. 165 | 166 | @return YES if the dialog would be presented for the session, and NO if not 167 | */ 168 | + (BOOL)canPresentShareDialogWithSession:(FBSession*)session; 169 | 170 | @end 171 | -------------------------------------------------------------------------------- /DMSocialContactsList/libraries/FacebookSDK.framework/Versions/A/DeprecatedHeaders/FBNativeDialogs.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright 2012 Facebook 3 | * 4 | * Licensed under the Apache License, Version 2.0 (the "License"); 5 | * you may not use this file except in compliance with the License. 6 | * You may obtain a copy of the License at 7 | * 8 | * http://www.apache.org/licenses/LICENSE-2.0 9 | 10 | * Unless required by applicable law or agreed to in writing, software 11 | * distributed under the License is distributed on an "AS IS" BASIS, 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 | * See the License for the specific language governing permissions and 14 | * limitations under the License. 15 | */ 16 | 17 | #import 18 | #import 19 | 20 | @class FBSession; 21 | 22 | /*! 23 | @typedef FBNativeDialogResult enum 24 | 25 | @abstract 26 | Passed to a handler to indicate the result of a dialog being displayed to the user. 27 | */ 28 | typedef enum { 29 | /*! Indicates that the dialog action completed successfully. */ 30 | FBNativeDialogResultSucceeded, 31 | /*! Indicates that the dialog action was cancelled (either by the user or the system). */ 32 | FBNativeDialogResultCancelled, 33 | /*! Indicates that the dialog could not be shown (because not on ios6 or ios6 auth was not used). */ 34 | FBNativeDialogResultError 35 | } FBNativeDialogResult; 36 | 37 | /*! 38 | @typedef 39 | 40 | @abstract Defines a handler that will be called in response to the native share dialog 41 | being displayed. 42 | */ 43 | typedef void (^FBShareDialogHandler)(FBNativeDialogResult result, NSError *error); 44 | 45 | /*! 46 | @class FBNativeDialogs 47 | 48 | @abstract 49 | Provides methods to display native (i.e., non-Web-based) dialogs to the user. 50 | Currently the iOS 6 sharing dialog is supported. 51 | */ 52 | @interface FBNativeDialogs : NSObject 53 | 54 | /*! 55 | @abstract 56 | Presents a dialog that allows the user to share a status update that may include 57 | text, images, or URLs. This dialog is only available on iOS 6.0 and above. The 58 | current active session returned by [FBSession activeSession] will be used to determine 59 | whether the dialog will be displayed. If a session is active, it must be open and the 60 | login method used to authenticate the user must be native iOS 6.0 authentication. 61 | If no session active, then whether the call succeeds or not will depend on 62 | whether Facebook integration has been configured. 63 | 64 | @param viewController The view controller which will present the dialog. 65 | 66 | @param initialText The text which will initially be populated in the dialog. The user 67 | will have the opportunity to edit this text before posting it. May be nil. 68 | 69 | @param image A UIImage that will be attached to the status update. May be nil. 70 | 71 | @param url An NSURL that will be attached to the status update. May be nil. 72 | 73 | @param handler A handler that will be called when the dialog is dismissed, or if an error 74 | occurs. May be nil. 75 | 76 | @return YES if the dialog was presented, NO if not (in the case of a NO result, the handler 77 | will still be called, with an error indicating the reason the dialog was not displayed) 78 | */ 79 | + (BOOL)presentShareDialogModallyFrom:(UIViewController*)viewController 80 | initialText:(NSString*)initialText 81 | image:(UIImage*)image 82 | url:(NSURL*)url 83 | handler:(FBShareDialogHandler)handler; 84 | 85 | /*! 86 | @abstract 87 | Presents a dialog that allows the user to share a status update that may include 88 | text, images, or URLs. This dialog is only available on iOS 6.0 and above. The 89 | current active session returned by [FBSession activeSession] will be used to determine 90 | whether the dialog will be displayed. If a session is active, it must be open and the 91 | login method used to authenticate the user must be native iOS 6.0 authentication. 92 | If no session active, then whether the call succeeds or not will depend on 93 | whether Facebook integration has been configured. 94 | 95 | @param viewController The view controller which will present the dialog. 96 | 97 | @param initialText The text which will initially be populated in the dialog. The user 98 | will have the opportunity to edit this text before posting it. May be nil. 99 | 100 | @param images An array of UIImages that will be attached to the status update. May 101 | be nil. 102 | 103 | @param urls An array of NSURLs that will be attached to the status update. May be nil. 104 | 105 | @param handler A handler that will be called when the dialog is dismissed, or if an error 106 | occurs. May be nil. 107 | 108 | @return YES if the dialog was presented, NO if not (in the case of a NO result, the handler 109 | will still be called, with an error indicating the reason the dialog was not displayed) 110 | */ 111 | + (BOOL)presentShareDialogModallyFrom:(UIViewController*)viewController 112 | initialText:(NSString*)initialText 113 | images:(NSArray*)images 114 | urls:(NSArray*)urls 115 | handler:(FBShareDialogHandler)handler; 116 | 117 | /*! 118 | @abstract 119 | Presents a dialog that allows the user to share a status update that may include 120 | text, images, or URLs. This dialog is only available on iOS 6.0 and above. An 121 | may be specified, or nil may be passed to indicate that the current 122 | active session should be used. If a session is specified (whether explicitly or by 123 | virtue of being the active session), it must be open and the login method used to 124 | authenticate the user must be native iOS 6.0 authentication. If no session is specified 125 | (and there is no active session), then whether the call succeeds or not will depend on 126 | whether Facebook integration has been configured. 127 | 128 | @param viewController The view controller which will present the dialog. 129 | 130 | @param session The to use to determine whether or not the user has been 131 | authenticated with iOS native authentication. If nil, then [FBSession activeSession] 132 | will be checked. See discussion above for the implications of nil or non-nil session. 133 | 134 | @param initialText The text which will initially be populated in the dialog. The user 135 | will have the opportunity to edit this text before posting it. May be nil. 136 | 137 | @param images An array of UIImages that will be attached to the status update. May 138 | be nil. 139 | 140 | @param urls An array of NSURLs that will be attached to the status update. May be nil. 141 | 142 | @param handler A handler that will be called when the dialog is dismissed, or if an error 143 | occurs. May be nil. 144 | 145 | @return YES if the dialog was presented, NO if not (in the case of a NO result, the handler 146 | will still be called, with an error indicating the reason the dialog was not displayed) 147 | */ 148 | + (BOOL)presentShareDialogModallyFrom:(UIViewController*)viewController 149 | session:(FBSession*)session 150 | initialText:(NSString*)initialText 151 | images:(NSArray*)images 152 | urls:(NSArray*)urls 153 | handler:(FBShareDialogHandler)handler; 154 | 155 | /*! 156 | @abstract 157 | Determines whether a call to presentShareDialogModallyFrom: will successfully present 158 | a dialog. This is useful for applications that need to modify the available UI controls 159 | depending on whether the dialog is available on the current platform and for the current 160 | user. 161 | 162 | @param session The to use to determine whether or not the user has been 163 | authenticated with iOS native authentication. If nil, then [FBSession activeSession] 164 | will be checked. See discussion above for the implications of nil or non-nil session. 165 | 166 | @return YES if the dialog would be presented for the session, and NO if not 167 | */ 168 | + (BOOL)canPresentShareDialogWithSession:(FBSession*)session; 169 | 170 | @end 171 | --------------------------------------------------------------------------------