File tree Expand file tree Collapse file tree 3 files changed +43
-0
lines changed Expand file tree Collapse file tree 3 files changed +43
-0
lines changed Original file line number Diff line number Diff line change @@ -272,6 +272,9 @@ class Button1Format(BaseModel):
272
272
class Button2Format (BaseModel ):
273
273
sensitive_value : str
274
274
275
+ class Button3Format (BaseModel ):
276
+ preference_value : str
277
+
275
278
276
279
@APP .post ("/api/verify_initial_value" )
277
280
async def verify_initial_value (
@@ -293,6 +296,18 @@ async def verify_sensitive_value(
293
296
return responses .JSONResponse (content = {"sensitive_value" : sensitive_value }, status_code = 200 )
294
297
295
298
299
+ @APP .post ("/api/verify_preference_value" )
300
+ async def verify_preference_value (
301
+ input1 : Button3Format ,
302
+ nc : Annotated [NextcloudApp , Depends (nc_app )],
303
+ ):
304
+ nc .preferences_ex .set_value ("test_ex_app_sensitive_field" , input1 .preference_value , sensitive = True )
305
+ preference_value = nc .preferences_ex .get_value ("test_ex_app_sensitive_field" )
306
+ print ("Old preference value: " , input1 .preference_value )
307
+ print ("Preference value: " , preference_value )
308
+ return responses .JSONResponse (content = {"preference_value" : preference_value }, status_code = 200 )
309
+
310
+
296
311
@APP .post ("/api/test_menu" )
297
312
async def test_menu_handler (
298
313
file : UiActionFileInfo ,
Original file line number Diff line number Diff line change @@ -53,6 +53,22 @@ const actions = {
53
53
} )
54
54
} ,
55
55
56
+ verifyPreferenceValue ( context , value ) {
57
+ axios . post ( generateUrl ( `${ APP_API_PROXY_URL_PREFIX } /${ EX_APP_ID } /api/verify_preference_value` ) , {
58
+ preference_value : value ,
59
+ } )
60
+ . then ( ( res ) => {
61
+ if ( 'preference_value' in res . data && res . data . preference_value === value ) {
62
+ showSuccess ( t ( 'ui_example' , 'Preference value is correct' ) )
63
+ } else {
64
+ showError ( t ( 'ui_example' , 'Preference value is incorrect' ) )
65
+ }
66
+ } )
67
+ . catch ( ( ) => {
68
+ showError ( t ( 'ui_example' , 'Preference value is incorrect' ) )
69
+ } )
70
+ } ,
71
+
56
72
sendNextcloudFileToExApp ( context , fileInfo ) {
57
73
axios . post ( generateUrl ( `${ APP_API_PROXY_URL_PREFIX } /${ EX_APP_ID } /api/nextcloud_file` ) , {
58
74
file_info : fileInfo ,
Original file line number Diff line number Diff line change 20
20
{{ t('ui_example', 'Verify sensitive value') }}
21
21
</NcButton >
22
22
</div >
23
+
24
+ <div style =" margin : 10px 0 ; display : flex ; align-items : center ; width : 100% ; justify-content : center ; flex-direction : column ;" >
25
+ <NcInputField :value.sync =" preference_value"
26
+ :label =" t('ui_example', 'Test preference sensitive value')" />
27
+ <NcButton style =" margin : 10px 0 ;" @click =" verifyPreferenceValue" >
28
+ {{ t('ui_example', 'Verify preference value') }}
29
+ </NcButton >
30
+ </div >
23
31
</div >
24
32
</NcAppContent >
25
33
</NcContent >
@@ -45,6 +53,7 @@ export default {
45
53
data () {
46
54
return {
47
55
initialState: JSON .parse (loadState (' app_api' , ' ui_example_state' )),
56
+ preference_value: ' test_preference_value' ,
48
57
}
49
58
},
50
59
computed: {
@@ -59,6 +68,9 @@ export default {
59
68
verifySensitiveValue () {
60
69
this .$store .dispatch (' verifySensitiveValue' , this .initialState ? .initial_sensitive_value )
61
70
},
71
+ verifyPreferenceValue () {
72
+ this .$store .dispatch (' verifyPreferenceValue' , this .preference_value )
73
+ },
62
74
},
63
75
}
64
76
< / script>
You can’t perform that action at this time.
0 commit comments