File tree Expand file tree Collapse file tree 6 files changed +43
-7
lines changed
src/Umbraco.Cms.Integrations.Crm.Dynamics
App_Plugins/UmbracoCms.Integrations/Crm/Dynamics Expand file tree Collapse file tree 6 files changed +43
-7
lines changed Original file line number Diff line number Diff line change 3
3
4
4
vm . oauthConfig = { } ;
5
5
6
- umbracoCmsIntegrationsCrmDynamicsResource . checkOAuthConfiguration ( ) . then ( function ( response ) {
6
+ umbracoCmsIntegrationsCrmDynamicsResource . checkOAuthConfiguration ( ) . then ( function ( response ) {
7
7
if ( response && response . isAuthorized ) {
8
8
vm . oauthConfig . isConnected = true ;
9
9
vm . oauthConfig . fullName = response . fullName ;
10
+
11
+ if ( typeof $scope . connected === "function" )
12
+ $scope . connected ( ) ;
10
13
}
11
14
} ) ;
12
15
23
26
umbracoCmsIntegrationsCrmDynamicsResource . revokeAccessToken ( ) . then ( function ( ) {
24
27
vm . oauthConfig . isConnected = false ;
25
28
notificationsService . success ( "Dynamics Configuration" , "OAuth connection revoked." ) ;
29
+
30
+ if ( typeof $scope . revoked === "function" )
31
+ $scope . revoked ( ) ;
26
32
} ) ;
27
33
}
28
34
41
47
umbracoCmsIntegrationsCrmDynamicsResource . getSystemUserFullName ( ) . then ( function ( response ) {
42
48
vm . oauthConfig . fullName = response ;
43
49
} ) ;
50
+
51
+ if ( typeof $scope . connected === "function" )
52
+ $scope . connected ( ) ;
44
53
}
45
54
} ) ;
46
-
47
55
}
48
56
} , false ) ;
49
57
}
Original file line number Diff line number Diff line change 6
6
vm . dynamicsFormsList = [ ] ;
7
7
vm . searchTerm = "" ;
8
8
vm . iFrameEmbedded = false ;
9
+ vm . isConnected = false ;
9
10
10
11
umbracoCmsIntegrationsCrmDynamicsResource . checkOAuthConfiguration ( ) . then ( function ( response ) {
11
12
if ( response . isAuthorized ) {
59
60
} ;
60
61
61
62
function loadForms ( ) {
63
+ vm . dynamicsFormsList = [ ] ;
62
64
umbracoCmsIntegrationsCrmDynamicsResource . getForms ( ) . then ( function ( response ) {
63
65
if ( response ) {
64
66
response . value . forEach ( item => {
72
74
}
73
75
} ) ;
74
76
}
77
+
78
+ $scope . connected = function ( ) {
79
+ vm . isConnected = true ;
80
+ loadForms ( ) ;
81
+ } ;
82
+
83
+ $scope . revoked = function ( ) {
84
+ vm . isConnected = false ;
85
+ vm . dynamicsFormsList = [ ] ;
86
+ } ;
75
87
}
76
88
77
89
angular . module ( "umbraco" )
Original file line number Diff line number Diff line change
1
+ angular . module ( "umbraco.directives" )
2
+ . directive ( "oauthConfiguration" , function ( ) {
3
+ return {
4
+ restrict : "E" ,
5
+ scope : {
6
+ "connected" : "&onConnected" ,
7
+ "revoked" : "&onRevoked"
8
+ } ,
9
+ templateUrl : "/App_Plugins/UmbracoCms.Integrations/Crm/Dynamics/views/configuration.html"
10
+ }
11
+ } ) ;
Original file line number Diff line number Diff line change 1
1
{
2
2
"javascript": [
3
3
"~/App_Plugins/UmbracoCms.Integrations/Crm/Dynamics/js/configuration.controller.js",
4
- "~/App_Plugins/UmbracoCms.Integrations/Crm/Dynamics/js/formpicker.controller.js",
5
- "~/App_Plugins/UmbracoCms.Integrations/Crm/Dynamics/js/dynamics.resource.js"
4
+ "~/App_Plugins/UmbracoCms.Integrations/Crm/Dynamics/js/formpicker.controller.js",
5
+ "~/App_Plugins/UmbracoCms.Integrations/Crm/Dynamics/js/dynamics.resource.js",
6
+ "~/App_Plugins/UmbracoCms.Integrations/Crm/Dynamics/js/oauthconfiguration.directive.js"
6
7
],
7
8
"css": [
8
9
"~/App_Plugins/UmbracoCms.Integrations/Crm/Dynamics/css/styles.css"
Original file line number Diff line number Diff line change 5
5
< umb-box-header title ="{{ model.title }} " description ="{{ model.subtitle }} "> </ umb-box-header >
6
6
< umb-box-content >
7
7
< div class ="dynOverlayGroup ">
8
+ < oauth-configuration on-connected ="connected() " on-revoked ="revoked() "> </ oauth-configuration >
9
+ </ div >
10
+ < div class ="dynOverlayGroup " ng-if ="vm.isConnected ">
8
11
< div class ="form-search ">
9
12
< i class ="icon-search "> </ i >
10
13
< input type ="text " class ="-full-width-input " ng-model ="vm.searchTerm " placeholder ="Type to search... " umb-auto-focus ="" aria-invalid ="false ">
11
14
</ div >
12
15
</ div >
13
- < div class ="dynOverlayGroup ">
16
+ < div class ="dynOverlayGroup " ng-if =" vm.isConnected " >
14
17
< ul class ="dynFormsList ">
15
- < li ng-repeat ="form in vm.dynamicsFormsList | orderBy:'name' | filter:vm.searchTerm " ng-click ="model.selectForm(form, vm.iFrameEmbedded) "
18
+ < li ng-repeat ="form in vm.dynamicsFormsList | orderBy:'name' | filter:vm.searchTerm " ng-click ="model.selectForm(form, vm.iFrameEmbedded) "
16
19
class ="ng-scope " role ="button " tabindex ="0 ">
17
20
< a href ="" ng-attr-title ="form.name ">
18
21
< i class ="icon-umb-contour "> </ i >
21
24
</ li >
22
25
</ ul >
23
26
</ div >
24
- < div class ="dynOverlayGroup ">
27
+ < div class ="dynOverlayGroup " ng-if =" vm.isConnected " >
25
28
< umb-toggle checked ="vm.iFrameEmbedded "
26
29
on-click ="vm.toggleRenderMode() "
27
30
show-labels ="true "
Original file line number Diff line number Diff line change 51
51
</ItemGroup >
52
52
53
53
<ItemGroup >
54
+ <None Remove =" App_Plugins\UmbracoCms.Integrations\Crm\Dynamics\js\oauthConfiguration.directive.js" />
54
55
<None Remove =" App_Plugins\UmbracoCms.Integrations\Crm\Dynamics\Render\DynamicsForm.cshtml" />
55
56
<None Remove =" App_Plugins\UmbracoCms.Integrations\Crm\Dynamics\Render\DynamicsFormV8.cshtml" />
56
57
</ItemGroup >
You can’t perform that action at this time.
0 commit comments