Skip to content
This repository has been archived by the owner on Jun 19, 2023. It is now read-only.

OAuth2 support #919

Merged
merged 222 commits into from
Nov 8, 2017
Merged
Show file tree
Hide file tree
Changes from 214 commits
Commits
Show all changes
222 commits
Select commit Hold shift + click to select a range
2390293
Add new class to detect authentication type for oauth2
nasli Jun 15, 2017
459590f
Add method to get correct authentication method in request with just …
nasli Jun 15, 2017
879d60a
Use library status code name
nasli Jun 15, 2017
2b71444
Use propfind instead get
nasli Jun 16, 2017
758df63
Support detect multiple authentication methods in redirect and https …
nasli Jun 20, 2017
8d53cf4
Fix wrong constraints in splash screen storyboard, use autolayout ins…
nasli Jun 21, 2017
ba41dd1
Add new storyboard with new views to handle login view flow. Add new …
nasli Jun 21, 2017
cf16c71
Connect view with checks url
nasli Jun 22, 2017
5f70818
Add new storyboard and login view controller
nasli Jun 22, 2017
093178e
Add new view controler to handle SAML and oauth in webview. Added con…
nasli Jun 26, 2017
e5d6b3e
Add oauth class with the method to compose first url to get the get t…
nasli Jun 30, 2017
45c9d7f
Add methods to detect the correct auth method to login
nasli Jun 30, 2017
894f3d2
Add implementation of method to get the auth type to login. Add suppo…
nasli Jul 3, 2017
5dbb44b
Load webview in case of oauth authentication
nasli Jul 3, 2017
9099458
Refactor to load SAML login after detect SAML auth in new login view
nasli Jul 4, 2017
7c64a60
Disabled constant
nasli Jul 4, 2017
a68317d
Update detec authentication method and if SAML enabled not support ot…
nasli Jul 5, 2017
3bdee4a
Get auth code and unwind to main loginview
nasli Jul 5, 2017
3d8f123
Get access token frome auth code
nasli Jul 6, 2017
1772e4f
Update credentials and user objects to use new oauth parameters. Upda…
nasli Jul 7, 2017
3509921
Updated library commit
nasli Jul 11, 2017
0948adb
Remove old 4 login view xibs. Start refactor to get list of files wit…
nasli Jul 11, 2017
c491a74
Clean some code. Add new method to get url with webdav components
nasli Jul 11, 2017
d7e98d6
Connect SSO web view to new UniversalLoginViewController
davivel Jul 11, 2017
645b573
Handle flow get list of files
nasli Jul 11, 2017
113d9aa
Refactor getListOfFiles after new login flow finished. Add support to…
nasli Jul 13, 2017
6cd847b
Use oauth client keys for iOS
nasli Jul 13, 2017
3e34828
Refactor store account, files, and keychain credentials
nasli Jul 14, 2017
eaca2c2
Load list of files from new login view after log in with oauth
nasli Jul 17, 2017
3669cf0
Fix wrong first load of Shibboleth IdP preventing that parallel conne…
davivel Jul 17, 2017
c5ca5c6
Use all screen autolayout to fit all ipad view with the oauth webview
nasli Jul 18, 2017
a7ed124
Fix error in iOS-Swift bridge
davivel Jul 18, 2017
afac85c
Create new account with shibboleth cookie after successful log-in in …
davivel Jul 18, 2017
09ff886
Refactor out duplicated code in new login controller
davivel Jul 18, 2017
c9b80f2
Refactor login view. Removed old references of editaccount, addaccoun…
nasli Jul 19, 2017
a5988c7
Set up login mode propertly
nasli Jul 19, 2017
3d79015
Disabled saml mode
nasli Jul 19, 2017
d0e7a75
Connect url footer to show errors
nasli Jul 19, 2017
e5e3bfd
Port server URL normalization to new log-in view
davivel Jul 19, 2017
0867495
Integrate normalization of input url with check of access and detecti…
davivel Jul 19, 2017
6162cf7
Add fields for basic auth or edit account in login view
nasli Jul 19, 2017
f9e17cd
Bridging some booleans to Swift needed in the login view. Connect pen…
nasli Jul 20, 2017
b316634
Center login button
nasli Jul 20, 2017
8342d19
Add label password footer to show error messages
nasli Jul 20, 2017
aeba606
Set up messages labels and images at init login view depending login …
nasli Jul 20, 2017
5322b24
Update label in storyboard
nasli Jul 21, 2017
860b30e
Fix labels in login view
nasli Jul 21, 2017
c909346
Fix authentication method for oauth with the new authenticationMethod…
nasli Jul 24, 2017
8f1ac0c
Basic auth supported. Show credentials error propertly
nasli Jul 24, 2017
43e121b
Fix error messages labels to handle two lines. Show errors after chec…
nasli Jul 24, 2017
0df5ab2
Update credentials item from userDto.
nasli Jul 31, 2017
5b13632
Support update correct files of user selected instead active user. Di…
nasli Aug 1, 2017
e311a83
Auto poblate login with normalized data
nasli Aug 2, 2017
0b91f88
Handle login mode migration
nasli Aug 3, 2017
3d71451
Show cancel option only with multiaccount available
nasli Aug 3, 2017
6120d95
Upgrade db version to update all keychain items with the new credenti…
nasli Aug 3, 2017
2bea092
Fix typo en method name
nasli Aug 3, 2017
71924d3
Refactor keychain methods to grant support to all db upgrades
nasli Aug 4, 2017
fc8496b
Add get oauth refresh token method
nasli Aug 4, 2017
0d5578e
Login Button gets branded color
Aug 1, 2017
db70c35
functions for enable and disable the connect button
Aug 2, 2017
0eeb060
support for the portrait and landscape mode only in iphone
Aug 2, 2017
135af34
added support for the portrait and lanscape view in iPad
Aug 2, 2017
356e998
added animations to the basic auth stack view
Aug 2, 2017
fa44d00
fix for the constraints errors on the iPad view and the stack view la…
Aug 2, 2017
d2ac70c
added functions to show and hide the password eye button and the relo…
Aug 2, 2017
4cafc86
enum for control the textfield delegates
Aug 2, 2017
59a049a
updated the constraints for all size classes
Aug 3, 2017
ba507c1
fix for the Iphone Plus landscape UI
Aug 3, 2017
9faf44b
fix for the URLInfoStackView width
Aug 3, 2017
cbdd990
added keyboard management and show/hide password
Aug 4, 2017
cfadce0
added help link web view
Aug 4, 2017
4275e5b
added network activity indicator in the status bar
Aug 7, 2017
43d6ac6
The navigation bar in the webview is branded now
Aug 7, 2017
f3edf55
added branded background for the login view
Aug 7, 2017
a32f1d8
fixed white views and fix for a validated url in the web view when a…
Aug 7, 2017
998591a
little tweaks for the design
Aug 7, 2017
1bb3c3e
Fixes for the code review and some keyboard improvements
Aug 8, 2017
2c6adb3
removed duplicated function calls
Aug 8, 2017
bd8b189
Refactor authenticationMethod type to include in the credentialsDto o…
nasli Aug 8, 2017
e587cc8
fix for the status bar style and the webview background color
Aug 9, 2017
918cf36
fix for the code review
Aug 9, 2017
39a5b6d
recommented error management code, is pending to be reviewed
Aug 9, 2017
a472bfb
branded the help button
Aug 9, 2017
1bd37cb
little refactor
Aug 9, 2017
e39481c
Grant that erros on validation of credentials are shown for all the p…
davivel Aug 9, 2017
8afda42
Store correct URL when account is finally created/updted
davivel Aug 10, 2017
c5db707
Grant that errors on check of URL are show for all the paths of failure
davivel Aug 10, 2017
2e514d4
Update lib reference after adding error codes
davivel Aug 11, 2017
fc543b7
placeholders for the textfields in login view
Aug 10, 2017
415c146
fix for the top constraint of the login view
Aug 10, 2017
4d06c42
fix for the login view when is shown as modal
Aug 10, 2017
e8b526a
fix for the network indicator in the status bar
Aug 10, 2017
55acbd3
fix for the cancel button in the navigation bar when the login view i…
Aug 11, 2017
65cd91f
fix for the hidden url in the login view
Aug 11, 2017
59dc0c0
fix for the top view in landscape orientation on iphone
Aug 11, 2017
e49e1f5
Complete presentation logic for errors in Log-in
davivel Aug 11, 2017
452e6a3
Remove unnecesary init to empty username, password and label below pa…
nasli Aug 11, 2017
e44721f
Fix for oauth after changes in handle credentials
nasli Aug 16, 2017
a20ca3b
Update login background color to white
nasli Aug 16, 2017
93e91e9
Refactor init log in. Fix edit account after expire session.
nasli Aug 16, 2017
4cf3ccb
fix for the URL textfield constraint error
Aug 17, 2017
f649d46
fix for the top view in landscape mode
Aug 17, 2017
fa30a7a
fix for the padding between top bar and oc icon
Aug 17, 2017
221b7cb
fix for the keyboard when connect button is tapped
Aug 17, 2017
0c2a8cb
fix for the normalized url when it includes the username and the pass…
Aug 17, 2017
7a583a0
changed the url footer message when the user inserts a http url
Aug 17, 2017
cbbbda9
Update application of credentials with a single method for any kind o…
davivel Aug 18, 2017
bc829bd
Explain why detection of authentication method will do two HTTP reque…
davivel Aug 21, 2017
7da76ae
Grant that access to public information of server in log-in view goes…
davivel Aug 22, 2017
97c2d42
Fix check of switch of account in init of list of files to prevent fa…
davivel Aug 22, 2017
57fa270
Get rid of 'password' attribute in UserDto in favor of 'credDto.acces…
davivel Aug 22, 2017
8b849e5
Enforce cretion of universal log-in view with appropriate user in a s…
davivel Aug 23, 2017
02cb992
Grant that a clean session is used in log-in view
davivel Aug 23, 2017
74eb95d
Remove unused branded colors in file list view. Fix crash if no activ…
nasli Aug 24, 2017
ce8aeac
Add error messages for OAuth2 authorization code, and clean up Manage…
davivel Aug 24, 2017
958aba5
Add control of same user when updating OAuth2 credentials
davivel Aug 24, 2017
38aa953
Show error message when server authentication method is not supported
davivel Aug 24, 2017
ddfcf5d
Show error message when retrieval of access token fails in OAuth2 log-in
davivel Aug 24, 2017
79168e4
Prevent duplicated accounts
davivel Aug 25, 2017
39783eb
Update to latest OC library commit
nasli Aug 29, 2017
85aa1d1
Fix typo
nasli Aug 29, 2017
8ae58e2
Get that OAuth2 webview shows server with unsecure but user-accepted …
davivel Aug 30, 2017
5f4ee47
Port hack to show unsecure user-accepted certificate to Swift
davivel Aug 30, 2017
9bd8fbf
Add check of user-accepted unsecure certificates to OAuth2 requests
davivel Aug 31, 2017
0978792
Fix bug authenticating SAML when user doesn't input scheme in the URL…
davivel Aug 31, 2017
afe00d7
Fully move reponsibility for user-accepted server certificates to SSL…
davivel Aug 31, 2017
59fbfd4
Comment interface of SSLCertificateManager
davivel Aug 31, 2017
803c6c3
Grant that instant uploads settings are kept unchanged when new accou…
davivel Sep 1, 2017
8a226be
Close OAuth2 webview automatically when gets to list of files page (g…
davivel Sep 1, 2017
f2a378e
Move switch of user from SettingsViewController to AppDelegte#switchU…
davivel Sep 6, 2017
f57502a
Grant background execution of switch of user without blocking main th…
davivel Sep 6, 2017
2743b1d
Move method createFolderForUser to UtilsFileSystem to reduce duplicat…
davivel Sep 6, 2017
3090168
Grant that user needs to enter credentials in OAuth webView every tim…
davivel Sep 6, 2017
9f277f4
Update global user with new credentials when updated to prevent bug j…
davivel Sep 6, 2017
8964418
Grant that requests to OAuth2 access token follow redirections correctly
davivel Sep 6, 2017
c65b02e
Grant that request following redirection in CheckAccessToServer keeps…
davivel Sep 6, 2017
6855c2d
Grant that SAML and OAuth log-ins can be retried after cancelling the…
davivel Sep 7, 2017
b8d4a1d
Fix detection of maintenance mode in log-in view
davivel Sep 7, 2017
e3ff568
Fix error message for wrong credentials in log-in view
davivel Sep 7, 2017
b73de4f
Fix loop on URL migration
davivel Sep 12, 2017
9ee3ceb
Grant connect button is available after webviews are cancelled, no ma…
davivel Sep 12, 2017
bc615e3
Grant that username and password fields are only shown when there is …
davivel Sep 12, 2017
20f980b
Show specific error message when device is not connected to a network
davivel Sep 12, 2017
477094e
Add error messages for common HTTP error codes
davivel Sep 13, 2017
bd675b7
Improve error messages for responses to access token endpoint
davivel Sep 13, 2017
a455768
Show custom authentication error message and review size of text in l…
davivel Sep 13, 2017
33eb3ee
Refactor set credentials of all requests
nasli Aug 9, 2017
10eaaff
Update setCredentials for oauth with refresh token
nasli Aug 11, 2017
07fe34e
Test callfunction from setSessionDidReceiveAuthenticationChallengeBlo…
nasli Aug 11, 2017
54c18f8
Update log message
nasli Aug 25, 2017
d77be6b
Update oauthauthentication class to use it within objective classes
nasli Aug 25, 2017
b64f630
Set credentials and user agent for readfile request
nasli Aug 25, 2017
b01a2af
Refator completion success and failure blocks in detect list of files
nasli Aug 25, 2017
0187174
Set oauth2onfiguration object when init sharedOCCommunication
nasli Aug 30, 2017
006018a
Use new store credentials protocol on keychain class, pending receive…
nasli Aug 30, 2017
3665d2c
Refactor handle credentials and keychain to store new accestokens fro…
nasli Aug 31, 2017
af75d16
Update keychain updates
nasli Sep 1, 2017
0c0de96
Update keychain to use an identifier
nasli Sep 1, 2017
29a42a2
Update store account to return user object with id.
nasli Sep 4, 2017
05f1590
Fix after rebase
nasli Sep 4, 2017
3154d64
Fix userId when store account
nasli Sep 4, 2017
8d46b37
Refresh token after a failure network request and store new credentia…
nasli Sep 6, 2017
2affd64
Comment refresh OAuth swift method inside the app. Moved into the lib…
nasli Sep 6, 2017
ff5c530
Fix after rebase
nasli Sep 6, 2017
5d719a6
Store base url
nasli Sep 7, 2017
9d217fb
Update user to upload with latest data
nasli Sep 7, 2017
24958db
Update user to check
nasli Sep 7, 2017
d92dd1b
Update active user only if is same user
nasli Sep 12, 2017
f194ea1
Make sure any request in manage uploads has the latest credentials.
nasli Sep 12, 2017
b6081ce
Remove previous check root folder after select to upload a file
nasli Sep 12, 2017
b85c801
Remove old ios code
nasli Sep 12, 2017
03fdab7
Update keychain method with new object used. Update library commit
nasli Sep 25, 2017
6b06a26
Update keychain methods wording
nasli Sep 25, 2017
76a3690
Remove unnecessary code
nasli Sep 25, 2017
320a7ff
Move get auth data to the lib
nasli Sep 26, 2017
717b2c6
Update lib reference
davivel Sep 28, 2017
1eaaa2f
Delete OAuth methods moved to the library
davivel Sep 28, 2017
9ae4a85
Adapt usage of OAuth2Manager after fix of delegate methods handling r…
davivel Sep 28, 2017
25c5d8d
Delete unused OAuth2 manager in app
davivel Sep 28, 2017
81b9b9f
Keep support of untrusted user-accepted server certificates in OAuth2…
davivel Sep 28, 2017
643e405
Update library commit
nasli Oct 4, 2017
c5d6d21
Update library commit with retries for any request after cancelled by…
nasli Oct 6, 2017
011303c
Update library commit
nasli Oct 6, 2017
debcba2
Update library commit
nasli Oct 6, 2017
f153d70
Fix lost current capabilities of active user
nasli Oct 9, 2017
ba57dd6
Update pre alpha version number. Fix uploader issue with extension.
nasli Oct 10, 2017
df8f0a2
Fix update credentials of user
nasli Oct 10, 2017
945727e
Redirect to login view after any kind of error with OAuth requests
nasli Oct 11, 2017
23a5353
Increase version
nasli Oct 13, 2017
c2f7341
Refactor to show the display Name instead of username in app. New req…
nasli Oct 16, 2017
2c75bcb
Update recent files names.
nasli Oct 18, 2017
5d00dd8
Use displayName instead of username if it is available. Check for upd…
nasli Oct 19, 2017
2a4d1b3
Remove unnecessary comment code
nasli Oct 19, 2017
282e410
Fix do not allow renew credentials with different users after session…
nasli Oct 20, 2017
ab6f61f
Update handle display name
nasli Oct 23, 2017
549795e
Update library commit
nasli Oct 23, 2017
2ec049b
Fix duplicate accounts display name
nasli Oct 30, 2017
1ee599d
Remove retry readfolder call, already in lib
nasli Oct 30, 2017
5b24908
Keep cookies in OAuth auth to avoid reject from F5
nasli Oct 18, 2017
fa5c056
Keep clear cookies at login view
nasli Oct 18, 2017
ab2498b
Update library commit
nasli Nov 3, 2017
4628f6e
Remove commented code
nasli Nov 3, 2017
3522cb6
Merge pull request #951 from owncloud/oauth_support_test_cookies
pablocarmu Nov 6, 2017
f381596
Update library commit
nasli Nov 6, 2017
0290827
Remove old OAuth approach not in use
nasli Nov 6, 2017
1359037
Add notification to relaunch credentials error
nasli Nov 6, 2017
a143731
Reuse existing code
nasli Nov 6, 2017
b928fb2
Not need to set cancel button on this point, it is going to be set in…
nasli Nov 6, 2017
9070c78
Not need to use notification of rotations in the new login view
nasli Nov 6, 2017
ae3bbed
Remove TODOs already done
nasli Nov 6, 2017
6f625a1
Already set up preferredStatusBarStyle
nasli Nov 6, 2017
ac04378
Move update instant upload settings into store account method
nasli Nov 6, 2017
af837db
Remove todo already done
nasli Nov 6, 2017
dd7d92f
Remove references to active account button in xib to avoid crashes an…
nasli Nov 7, 2017
511dec4
Remove not needed code in account cell
nasli Nov 7, 2017
4b324a1
Remove unnecessary code
nasli Nov 7, 2017
664d9eb
Use just one method for now that they do the same
nasli Nov 7, 2017
bde3176
Remove pending todos
nasli Nov 7, 2017
bbb3bcc
Improve checks lis of files content
nasli Nov 8, 2017
118070e
Rename user id name. Replace some deprecated method
nasli Nov 8, 2017
63156dd
Clean duplicated comments in the implementation file
nasli Nov 8, 2017
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions OC Share Sheet/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,11 @@
<key>CFBundlePackageType</key>
<string>XPC!</string>
<key>CFBundleShortVersionString</key>
<string>3.6.2</string>
<string>3.7.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0</string>
<string>1.0.5</string>
<key>ITSAppUsesNonExemptEncryption</key>
<false/>
<key>NSAppTransportSecurity</key>
Expand Down
4 changes: 2 additions & 2 deletions OC Share Sheet/ShareViewController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ fileprivate func > <T : Comparable>(lhs: T?, rhs: T?) -> Bool {



@objc class ShareViewController: UIViewController, UITableViewDelegate, UITableViewDataSource, KKPasscodeViewControllerDelegate, CheckAccessToServerDelegate {
@objc class ShareViewController: UIViewController, UITableViewDelegate, UITableViewDataSource, KKPasscodeViewControllerDelegate {

@IBOutlet weak var navigationBar: UINavigationBar?
@IBOutlet weak var shareTable: UITableView?
Expand Down Expand Up @@ -344,7 +344,7 @@ fileprivate func > <T : Comparable>(lhs: T?, rhs: T?) -> Bool {
if error == nil {
if let url = item as? URL{

print("item as url: \(item)")
print("item as url: \(url)")

self.filesSelected.append(url)

Expand Down
2 changes: 1 addition & 1 deletion OCCommunicationLib
Submodule OCCommunicationLib updated 20 files
+3 −0 .gitignore
+3 −2 OCCommunicationLib/OCCommunicationLib/OCCapabilities.h
+119 −0 OCCommunicationLib/OCCommunicationLib/OCCapabilities.m
+71 −42 OCCommunicationLib/OCCommunicationLib/OCCommunication.h
+105 −41 OCCommunicationLib/OCCommunicationLib/OCCommunication.m
+58 −0 OCCommunicationLib/OCCommunicationLib/OCCredentialsDto.h
+105 −0 OCCommunicationLib/OCCommunicationLib/OCCredentialsDto.m
+4 −1 OCCommunicationLib/OCCommunicationLib/OCErrorMsg.h
+14 −0 OCCommunicationLib/OCCommunicationLib/OCFrameworkConstants.h
+9 −5 OCCommunicationLib/OCCommunicationLib/OCOAuth2Authentication/OCCredentialsStorage.h
+40 −0 OCCommunicationLib/OCCommunicationLib/OCOAuth2Authentication/OCOAuth2Configuration.h
+47 −0 OCCommunicationLib/OCCommunicationLib/OCOAuth2Authentication/OCOAuth2Configuration.m
+85 −0 OCCommunicationLib/OCCommunicationLib/OCOAuth2Authentication/OCOAuth2Manager.h
+333 −0 OCCommunicationLib/OCCommunicationLib/OCOAuth2Authentication/OCOAuth2Manager.m
+19 −9 OCCommunicationLib/OCCommunicationLib/OCTrustedCertificatesStore.h
+28 −9 OCCommunicationLib/OCCommunicationLib/OCWebDavClient/OCWebDAVClient.h
+358 −86 OCCommunicationLib/OCCommunicationLib/OCWebDavClient/OCWebDAVClient.m
+35 −2 OCCommunicationLib/OCCommunicationLib/Utils/UtilsFramework.m
+7 −1 OCCommunicationLib/OCCommunicationLibTests/OCCommunicationLibTests.m
+30 −8 OCCommunicationLib/ownCloud iOS library.xcodeproj/project.pbxproj
245 changes: 129 additions & 116 deletions Owncloud iOs Client.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

46 changes: 21 additions & 25 deletions Owncloud iOs Client/AppDelegate.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@
along with this program. If not, see <http://www.gnu.org/licenses/gpl-3.0.en.html>.
*/





#import <UIKit/UIKit.h>
#import "UserDto.h"
#import "MediaAVPlayerViewController.h"
Expand All @@ -27,11 +23,12 @@
#import "DetailViewController.h"
#import "ManageDownloads.h"
#import "CheckAccessToServer.h"
#import "UtilsLogin.h"
#import "OCOAuth2Configuration.h"

@class FilesViewController;
@class RecentViewController;
@class SettingsViewController;
@class LoginViewController;
@class HelpGuideViewController;
@class Download;
@class OCCommunication;
Expand All @@ -42,6 +39,10 @@
@class CheckHasShareSupport;
@class CheckCapabilities;

@class UniversalLoginViewController;
@class ManageAccounts;


extern NSString * CloseAlertViewWhenApplicationDidEnterBackground;
extern NSString * RefreshSharesItemsAfterCheckServerVersion;
extern NSString * NotReachableNetworkForUploadsNotification;
Expand All @@ -59,8 +60,7 @@ extern NSString * NotReachableNetworkForDownloadsNotification;

RecentViewController *_recentViewController;
FilesViewController *_filesViewController;
//Pointer to a actual files view controller where the user is.
FilesViewController *_presentFilesViewController;

//FavouritesViewController *_favouritesViewController;
SettingsViewController *_settingsViewController;
//OCTabBarController *_tabBarController;
Expand Down Expand Up @@ -108,17 +108,16 @@ extern NSString * NotReachableNetworkForDownloadsNotification;

}

@property (strong, nonatomic) LoginViewController *loginWindowViewController;
@property (strong, nonatomic) HelpGuideViewController *helpGuideWindowViewController;
@property (strong, nonatomic) UIWindow *window;
@property (strong, nonatomic) LoginViewController *loginViewController;
@property (strong, nonatomic) UserDto *activeUser;
@property (strong, nonatomic) OCTabBarController *ocTabBarController;
@property (nonatomic, strong) NSMutableArray *uploadArray;
@property (nonatomic, strong) NSMutableArray *webDavArray;
@property (nonatomic, strong) SharedViewController *sharedViewController;
@property (nonatomic, strong) RecentViewController *recentViewController;
@property (nonatomic, strong) FilesViewController *filesViewController;
//Pointer to a actual files view controller where the user is.
@property (nonatomic, strong) FilesViewController *presentFilesViewController;
@property (nonatomic, strong) SettingsViewController *settingsViewController;
@property (nonatomic, strong) UISplitViewController *splitViewController;
Expand Down Expand Up @@ -153,6 +152,7 @@ extern NSString * NotReachableNetworkForDownloadsNotification;
@property (nonatomic, strong) ManageDownloads *downloadManager;
@property (nonatomic, strong) NSString *userSessionCurrentToken;

@property (nonatomic, strong) OCOAuth2Configuration *oauth2Configuration;

/*
* Method to get a Singleton of the OCCommunication to manage all the communications
Expand Down Expand Up @@ -180,9 +180,6 @@ extern NSString * NotReachableNetworkForDownloadsNotification;
- (void) updateRecents;
- (void) updateProgressView:(NSUInteger)num withPercent:(float)percent;
- (void) restartAppAfterDeleteAllAccounts;
- (void) showLoginView;

- (void)doLoginWithOauthToken;

//Method that erase the data of the detail view in iPad.
- (void)presentWithView;
Expand Down Expand Up @@ -302,19 +299,6 @@ extern NSString * NotReachableNetworkForDownloadsNotification;
*/
- (void) generateAppInterfaceFromLoginScreen:(BOOL)isFromLogin;

///-----------------------------------
/// @name Check if server support different things
///-----------------------------------

/**
* This method check if the server support multipple things:
* - If support Share
* - If support Cookies
*
*/
- (void)checkIfServerSupportThings;



//-----------------------------------
/// @name reloadTableFromDataBaseIfFileIsVisibleOnList
Expand All @@ -337,4 +321,16 @@ extern NSString * NotReachableNetworkForDownloadsNotification;

- (void) showPassCodeIfNeeded;


//---------------------------
/// @name switchActiveUser
///-------------------------

/**
* Method that switches the active user to that passed as a parameter
*
* @param user -> UserDto to set as active user
*/
- (void) switchActiveUserTo:(UserDto *) user inHardMode:(BOOL)hardMode withCompletionHandler:(void (^)(void)) completionHandler;

@end
Loading