1- using DocuSign . eSign . Model ;
2- using DocuSign . Workspaces . Controllers . Common . Models ;
1+ using DocuSign . Workspaces . Controllers . Common . Models ;
32using DocuSign . Workspaces . Domain . Admin . Models ;
43using DocuSign . Workspaces . Domain . Admin . Services . Interfaces ;
54using Microsoft . AspNetCore . Authentication ;
87using Microsoft . AspNetCore . Mvc ;
98using System . Collections . Generic ;
109using System . Linq ;
11- using System . Security . Claims ;
1210using System . Threading . Tasks ;
1311using DocuSign . Workspaces . Controllers . Admin . Models ;
1412using DocuSign . Workspaces . Infrastructure . Exceptions ;
@@ -48,15 +46,12 @@ public IActionResult ObtainConsent([FromBody] RequestAccountAuthorizeModel model
4846 settings . BasePath = model . BasePath ;
4947 _settingsRepository . Save ( settings ) ;
5048
51- switch ( model . ConsentType )
49+ return model . ConsentType switch
5250 {
53- case ConsentType . Admin :
54- return Ok ( new ResponseAccountAuthorizeModel ( _authenticationService . CreateAdminConsentUrl ( model . BasePath , $ "api/consentcallback") ) ) ;
55- case ConsentType . Individual :
56- return Ok ( new ResponseAccountAuthorizeModel ( _authenticationService . CreateUserConsentUrl ( model . BasePath , $ "api/consentcallback") ) ) ;
57- default :
58- return BadRequest ( "Unknown consent type" ) ;
59- }
51+ ConsentType . Admin => Ok ( new ResponseAccountAuthorizeModel ( _authenticationService . CreateAdminConsentUrl ( model . BasePath , $ "api/consentcallback") ) ) ,
52+ ConsentType . Individual => Ok ( new ResponseAccountAuthorizeModel ( _authenticationService . CreateUserConsentUrl ( model . BasePath , $ "api/consentcallback") ) ) ,
53+ _ => BadRequest ( "Unknown consent type" )
54+ } ;
6055 }
6156
6257 [ HttpGet ]
@@ -77,7 +72,7 @@ public IActionResult ConsentCallback(string code)
7772 settings . IsConsentGranted = true ;
7873 settings . UserId = _authenticationService . PrePopulateUserId ( settings . BasePath , code ) ;
7974 _settingsRepository . Save ( settings ) ;
80- return LocalRedirect ( "/admin " ) ;
75+ return LocalRedirect ( "/" ) ;
8176 }
8277
8378 [ HttpGet ]
@@ -99,10 +94,10 @@ public IActionResult GetAccounts(string basePath, string userId)
9994 [ Route ( "/api/account/connect" ) ]
10095 public async Task < IActionResult > Connect ( [ FromBody ] RequestAccountConnectModel model )
10196 {
102- AccountConnectionSettings connectionSettings = CreateConnectionSettings ( model ) ;
97+ var connectionSettings = CreateConnectionSettings ( model ) ;
10398 try
10499 {
105- ClaimsPrincipal principal =
100+ var principal =
106101 _authenticationService . AuthenticateFromJwt ( connectionSettings ) ;
107102
108103 await HttpContext . SignInAsync (
@@ -137,12 +132,12 @@ public IActionResult GetStatus()
137132 {
138133 ConnectedUser = new ConnectedUserModel
139134 {
140- Name = HttpContext . User . Identity . Name ?? string . Empty ,
135+ Name = HttpContext . User . Identity ? . Name ?? string . Empty ,
141136 Email = _accountRepository . Email ,
142137 AccountName = _accountRepository . AccountName
143138 } ,
144139 IsConsentGranted = _settingsRepository . Get ( ) . IsConsentGranted ,
145- IsConnected = HttpContext . User . Identity . IsAuthenticated
140+ IsConnected = HttpContext . User . Identity != null && HttpContext . User . Identity . IsAuthenticated
146141 } ;
147142 return Ok ( model ) ;
148143 }
@@ -177,7 +172,7 @@ public async Task<IActionResult> Logout()
177172 [ Route ( "/api/settings" ) ]
178173 public IActionResult GetSetting ( )
179174 {
180- Settings settings = _settingsRepository . Get ( ) ;
175+ var settings = _settingsRepository . Get ( ) ;
181176 return Ok ( new SettingsModel
182177 {
183178 BasePath = settings . BasePath ,
@@ -194,7 +189,7 @@ public IActionResult GetSetting()
194189 [ Route ( "/api/settings/datasource" ) ]
195190 public IActionResult GetDatasource ( )
196191 {
197- Settings settings = _settingsRepository . Get ( ) ;
192+ var settings = _settingsRepository . Get ( ) ;
198193 return Ok ( new DataSourceModel
199194 {
200195 SignatureTypes = settings . SignatureTypesDataSource ,
@@ -220,51 +215,40 @@ public IActionResult SetSettings([FromBody] SettingsModel model)
220215
221216 private AccountConnectionSettings CreateConnectionSettings ( RequestAccountConnectModel model )
222217 {
223- AccountConnectionSettings connectionSettings = null ;
224- switch ( model . AuthenticationType )
218+ var connectionSettings = model . AuthenticationType switch
225219 {
226- case AuthenticationType . UserAccount :
227- connectionSettings = new AccountConnectionSettings
228- {
229- BasePath = model . BasePath ,
230- BaseUri = model . BaseUri ,
231- AccountId = model . AccountId ,
232- UserId = model . UserId
233- } ;
234- break ;
235- case AuthenticationType . TestAccount :
236- connectionSettings = _testAccountConnectionSettingsRepository . Get ( ) ;
237- break ;
238- default :
239- break ;
240- }
220+ AuthenticationType . UserAccount => new AccountConnectionSettings
221+ {
222+ BasePath = model . BasePath ,
223+ BaseUri = model . BaseUri ,
224+ AccountId = model . AccountId ,
225+ UserId = model . UserId
226+ } ,
227+ AuthenticationType . TestAccount => _testAccountConnectionSettingsRepository . Get ( ) ,
228+ _ => null
229+ } ;
241230
242231 return connectionSettings ;
243232 }
244233
245234 private ErrorDetailsModel CreateErrorDetails ( ApiErrorDetails error , RequestAccountConnectModel model )
246235 {
247- switch ( error . Error )
236+ return error . Error switch
248237 {
249- case ApiErrorDetails . InvalidBasePath :
250- return ErrorDetailsModel . CreateErrorDetailsForOneModelProperty ( error . Error , model , model => model . BasePath ) ;
251- case ApiErrorDetails . InvalidBaseUri :
252- return ErrorDetailsModel . CreateErrorDetailsForOneModelProperty ( error . Error , model , model => model . BaseUri ) ;
253- case ApiErrorDetails . InvalidUserId :
254- return ErrorDetailsModel . CreateErrorDetailsForOneModelProperty ( error . Error , model , model => model . UserId ) ;
255- case ApiErrorDetails . InvalidAccountId :
256- return ErrorDetailsModel . CreateErrorDetailsForOneModelProperty ( error . Error , model , model => model . AccountId ) ;
257- default :
258- return ErrorDetailsModel . CreateGeneralErrorDetails ( error . Error ) ;
259- }
238+ ApiErrorDetails . InvalidBasePath => ErrorDetailsModel . CreateErrorDetailsForOneModelProperty ( error . Error , model , connectModel => connectModel . BasePath ) ,
239+ ApiErrorDetails . InvalidBaseUri => ErrorDetailsModel . CreateErrorDetailsForOneModelProperty ( error . Error , model , connectModel => connectModel . BaseUri ) ,
240+ ApiErrorDetails . InvalidUserId => ErrorDetailsModel . CreateErrorDetailsForOneModelProperty ( error . Error , model , connectModel => connectModel . UserId ) ,
241+ ApiErrorDetails . InvalidAccountId => ErrorDetailsModel . CreateErrorDetailsForOneModelProperty ( error . Error , model , connectModel => connectModel . AccountId ) ,
242+ _ => ErrorDetailsModel . CreateGeneralErrorDetails ( error . Error )
243+ } ;
260244 }
261245
262246 private IEnumerable < DataSourceItem > GetSignatureTypesDataSource ( string accountId )
263247 {
264248 var signatureProviders = _docuSignApiProvider . AccountsApi . ListSignatureProviders ( accountId ) ;
265249 var result = new List < DataSourceItem >
266250 {
267- new DataSourceItem
251+ new ( )
268252 {
269253 Key = SignatureInfo . DefaultProviderName ,
270254 Value = SignatureInfo . DefaultProviderDisplayName
@@ -277,10 +261,10 @@ private IEnumerable<DataSourceItem> GetSignatureTypesDataSource(string accountId
277261
278262 private IEnumerable < DataSourceItem > GetTemplatesDataSource ( string accountId )
279263 {
280- EnvelopeTemplateResults userTemplates = _docuSignApiProvider . TemplatesApi . ListTemplates ( accountId ) ;
264+ var userTemplates = _docuSignApiProvider . TemplatesApi . ListTemplates ( accountId ) ;
281265 var result = new List < DataSourceItem >
282266 {
283- new DataSourceItem
267+ new ( )
284268 {
285269 Key = TemplateNames . DefaultTemplateId ,
286270 Value = TemplateNames . DefaultTemplateName
0 commit comments