@@ -21,14 +21,10 @@ CLASS z2ui5_cl_demo_app_352 DEFINITION PUBLIC.
2121
2222 METHODS z2ui5_on_event.
2323 METHODS z2ui5_on_render.
24+ METHODS z2ui5_display_popover.
2425
2526 PRIVATE SECTION .
2627
27- METHODS distribute_news
28- IMPORTING
29- i_news TYPE z2ui5_cl_demo_app_352=>t_news.
30- METHODS z2ui5_display_popover.
31-
3228ENDCLASS .
3329
3430
@@ -58,14 +54,6 @@ CLASS z2ui5_cl_demo_app_352 IMPLEMENTATION.
5854 DATA : news TYPE z2ui5_cl_demo_app_352=>t_news.
5955
6056 CASE client->get( )-event.
61- WHEN `SEND` .
62-
63- news = VALUE t_news( text = news_input
64- author = author_input ).
65- distribute_news( news ).
66-
67- CLEAR : news_input.
68-
6957 WHEN `CLEAR` .
7058
7159 CLEAR : news_list.
@@ -105,7 +93,10 @@ CLASS z2ui5_cl_demo_app_352 IMPLEMENTATION.
10593
10694 form->feed_input(
10795 value = client->_bind_edit( news_input )
108- post = client->_event( 'SEND' ) ).
96+ post = client->_event_client(
97+ val = `Z2UI5`
98+ t_arg = VALUE #( ( `feedInputPost` ) )
99+ ) ).
109100
110101 form->label( text = `Author`
111102 )->input( value = client->_bind_edit( author_input )
@@ -150,37 +141,31 @@ CLASS z2ui5_cl_demo_app_352 IMPLEMENTATION.
150141 ` } else if (msg.data === '` && z2ui5_cl_demo_app_352_ws=>c_msg-__closed__ && `') {` &&
151142 ` data.XX.CONNECTIONS -= 1;` &&
152143 ` } else {` &&
153- ` data.XX.NEWS_LIST.push(JSON.parse(msg.data).NEWS_ITEM );` &&
144+ ` data.XX.NEWS_LIST.push(JSON.parse(msg.data));` &&
154145 ` }` &&
155146 ` model.setData(data);` &&
156147 ` };` &&
157148 ` ws.onclose = (msg)=>{};` &&
158149 `})()` ).
159- ENDIF .
160-
161- client->view_display( view->stringify( ) ).
162-
163- ENDMETHOD .
164-
165-
166150
167- METHOD distribute_news .
168-
169- IF i_news-text IS INITIAL .
170- RETURN .
151+ view->_generic( name = `script`
152+ ns = `html`
153+ )->_cc_plain_xml(
154+ `z2ui5.feedInputPost = () => { ` &&
155+ ` const model = z2ui5.oView.getModel();` &&
156+ ` const data = model.getData();` &&
157+ ` ws.send(JSON.stringify({ ` &&
158+ ` TEXT : data.XX.NEWS_INPUT,` &&
159+ ` AUTHOR : data.XX.AUTHOR_INPUT ` &&
160+ ` }));` &&
161+ ` setTimeout( () => { ` &&
162+ ` data.XX.NEWS_INPUT = "";` &&
163+ ` model.setData(data);` &&
164+ ` }, 10 ); ` &&
165+ `}` ).
171166 ENDIF .
172167
173- TRY .
174- INSERT i_news INTO TABLE news_list.
175-
176- z2ui5_cl_demo_app_352_ws=>send( z2ui5_cl_ajson=>create_empty( ii_custom_mapping = z2ui5_cl_ajson_mapping=>create_upper_case( )
177- )->set( iv_path = `NEWS_ITEM`
178- iv_val = i_news
179- )->stringify( ) ).
180-
181- CATCH cx_root INTO DATA (error ).
182- RAISE SHORTDUMP error.
183- ENDTRY .
168+ client->view_display( view->stringify( ) ).
184169
185170 ENDMETHOD .
186171
0 commit comments