- SUBMATCHES lv_direction.
- ENDIF.
-
- IF condense( lv_direction ) = 'DESCENDING'.
- mv_order_descending = abap_true.
- ENDIF.
+ mv_order_descending = boolc( condense( lv_direction ) = 'DESCENDING' ).
ENDMETHOD.
@@ -347,10 +280,6 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_OVER IMPLEMENTATION.
io_html->add( || ).
io_html->add( |
| ).
@@ -368,62 +297,6 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_OVER IMPLEMENTATION.
ENDMETHOD.
- METHOD render_order_by.
-
- io_html->add( |Order by: | ).
-
- ENDMETHOD.
-
-
- METHOD render_order_by_direction.
-
- io_html->add( || ).
-
- ENDMETHOD.
-
-
METHOD render_table.
io_html->add( || ).
@@ -501,19 +374,85 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_OVER IMPLEMENTATION.
METHOD render_table_header.
+ TYPES:
+ BEGIN OF lty_col_spec,
+ tech_name TYPE string,
+ display_name TYPE string,
+ css_class TYPE string,
+ add_tz TYPE abap_bool,
+ END OF lty_col_spec.
+ DATA lt_colspec TYPE STANDARD TABLE OF lty_col_spec.
+ DATA lv_tmp TYPE string.
+ DATA lv_disp_name TYPE string.
+
+ FIELD-SYMBOLS LIKE LINE OF lt_colspec.
+
+ DEFINE _add_col.
+ APPEND INITIAL LINE TO lt_colspec ASSIGNING .
+ -tech_name = &1.
+ -display_name = &2.
+ -css_class = &3.
+ -add_tz = &4.
+ END-OF-DEFINITION.
+
+ " technical name display name css class add timezone
+ _add_col 'FAVORITE' '' 'wmin' ''.
+ _add_col 'TYPE' '' 'wmin' ''.
+ _add_col 'NAME' 'Name' '' ''.
+ _add_col 'URL' 'Url' '' ''.
+ _add_col 'PACKAGE' 'Package' '' ''.
+ _add_col 'BRANCH' 'Branch' '' ''.
+ _add_col 'DESERIALIZED_BY' 'Deserialized by' 'ro-detail' ''.
+ _add_col 'DESERIALIZED_AT' 'Deserialized at' 'ro-detail' 'X'.
+ _add_col 'CREATED_BY' 'Created by' 'ro-detail' ''.
+ _add_col 'CREATED_AT' 'Created at' 'ro-detail' 'X'.
+ _add_col 'KEY' 'Key' 'ro-detail' ''.
+
+
io_html->add( || ).
io_html->add( || ).
- io_html->add( | | | ). " Fav icon
- io_html->add( | | | ). " Repo type
- io_html->add( |Name | | ).
- io_html->add( |Url | | ).
- io_html->add( |Package | | ).
- io_html->add( |Branch name | | ).
- io_html->add( |Deserialized by | | ).
- io_html->add( |Deserialized at [{ mv_time_zone }] | | ).
- io_html->add( |Creator | | ).
- io_html->add( |Created at [{ mv_time_zone }] | | ).
- io_html->add( |Key | | ).
+
+ LOOP AT lt_colspec ASSIGNING .
+ " e.g. Created at [{ mv_time_zone }] |
+ lv_tmp = '-css_class IS NOT INITIAL.
+ lv_tmp = lv_tmp && | class="{ -css_class }"|.
+ ENDIF.
+ lv_tmp = lv_tmp && '>'.
+
+ IF -display_name IS NOT INITIAL.
+ lv_disp_name = -display_name.
+ IF -add_tz = abap_true.
+ lv_disp_name = lv_disp_name && | [{ mv_time_zone }]|.
+ ENDIF.
+ IF -tech_name = mv_order_by.
+ IF mv_order_descending = abap_true.
+ lv_tmp = lv_tmp && zcl_abapgit_html=>a(
+ iv_txt = lv_disp_name
+ iv_act = |{ c_action-direction }?direction=ASCENDING| ).
+ ELSE.
+ lv_tmp = lv_tmp && zcl_abapgit_html=>a(
+ iv_txt = lv_disp_name
+ iv_act = |{ c_action-direction }?direction=DESCENDING| ).
+ ENDIF.
+ ELSE.
+ lv_tmp = lv_tmp && zcl_abapgit_html=>a(
+ iv_txt = lv_disp_name
+ iv_act = |{ c_action-change_order_by }?orderBy={ -tech_name }| ).
+ ENDIF.
+ ENDIF.
+ IF -tech_name = mv_order_by.
+ IF mv_order_descending = abap_true.
+ lv_tmp = lv_tmp && | ▴|. " arrow up
+ ELSE.
+ lv_tmp = lv_tmp && | ▾|. " arrow down
+ ENDIF.
+ ENDIF.
+
+ lv_tmp = lv_tmp && ' | '.
+ io_html->add( lv_tmp ).
+ ENDLOOP.
+
io_html->add( '
' ).
io_html->add( '' ).
@@ -545,6 +484,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_OVER IMPLEMENTATION.
ro_html = super->scripts( ).
ro_html->add( 'setInitialFocus("filter");' ).
+ ro_html->add( 'var gHelper = new RepoOverViewHelper();' ).
ENDMETHOD.
@@ -569,12 +509,13 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_OVER IMPLEMENTATION.
WHEN c_action-change_order_by.
- parse_change_order_by( it_postdata ).
+ CLEAR mv_order_descending.
+ parse_change_order_by( iv_getdata ).
ev_state = zcl_abapgit_gui=>c_event_state-re_render.
WHEN c_action-direction.
- parse_direction( it_postdata ).
+ parse_direction( iv_getdata ).
ev_state = zcl_abapgit_gui=>c_event_state-re_render.
WHEN c_action-apply_filter.
@@ -597,9 +538,4 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_OVER IMPLEMENTATION.
ENDCASE.
ENDMETHOD.
-
-
- METHOD zif_abapgit_gui_page_hotkey~get_hotkey_actions.
-
- ENDMETHOD.
ENDCLASS.