UI: Unify rendering of branch, package, transport, user names (#4097)

* UI: Unify rendering of branch, package, user names

Branch name was already rendered "boxed with a leading icon". The same is now done for package and user names.

See `zcl_abapgit_gui_chunk_lib->render_branch_name, render_package_name, render_user_name`.

Closes #4059

* Lint %26 transport

* Unknown user

* Transport css

Co-authored-by: Lars Hvam <larshp@hotmail.com>
This commit is contained in:
Marc Bernard 2020-10-30 05:13:09 -04:00 committed by GitHub
parent 5d480d8e8d
commit 666dfbda66
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 269 additions and 90 deletions

View File

@ -183,7 +183,11 @@ div.repo {
padding: 4px 2px 3px 2px; padding: 4px 2px 3px 2px;
} }
span.branch { /* ABAPGIT OBJECTS */
span.branch,
span.user,
span.package,
span.transport {
padding: 2px 4px; padding: 2px 4px;
border: 1px solid; border: 1px solid;
border-radius: 4px; border-radius: 4px;
@ -386,11 +390,6 @@ span.diff_name {
span.diff_changed_by { span.diff_changed_by {
float: right; float: right;
} }
span.diff_changed_by span.user {
border-radius: 3px;
border: solid 1px;
padding: 1px 0.4em;
}
span.diff_banner { span.diff_banner {
border-style: solid; border-style: solid;
border-width: 1px; border-width: 1px;

View File

@ -47,6 +47,20 @@ table.repo_tab {
background-color: var(--theme-background-color); background-color: var(--theme-background-color);
} }
/* ABAPGIT OBJECTS */
span.user {
background-color: #4c6782;
border-color: #7491b2;
}
span.package {
background-color: #705a6d;
border-color: #987095;
}
span.transport {
background-color: #456d5d;
border-color: #60a087;
}
/* PANELS */ /* PANELS */
#debug-output { color: var(--theme-greyscale-dark); } #debug-output { color: var(--theme-greyscale-dark); }

View File

@ -15,7 +15,7 @@
<RELID>MI</RELID> <RELID>MI</RELID>
<OBJID>ZABAPGIT_CSS_THEME_DARK</OBJID> <OBJID>ZABAPGIT_CSS_THEME_DARK</OBJID>
<NAME>filename</NAME> <NAME>filename</NAME>
<VALUE>~wwwtmp.css</VALUE> <VALUE>dark_theme.css</VALUE>
</WWWPARAMS> </WWWPARAMS>
<WWWPARAMS> <WWWPARAMS>
<RELID>MI</RELID> <RELID>MI</RELID>

View File

@ -57,6 +57,20 @@ input:focus, textarea:focus { border-color: #8cadd9; }
background-color: #e6e6e6; background-color: #e6e6e6;
} }
/* ABAPGIT OBJECTS */
span.user {
border-color: #c2d4ea;
background-color: #d9e4f2;
}
span.package {
border-color: #d3ccd2;
background-color: #ebe3ea;
}
span.transport {
border-color: #a7e3cf;
background-color: #dbf3eb;
}
/* PANELS */ /* PANELS */
/* TODO: add warning and error colors */ /* TODO: add warning and error colors */
div.panel.success { div.panel.success {

View File

@ -9,13 +9,13 @@
<RELID>MI</RELID> <RELID>MI</RELID>
<OBJID>ZABAPGIT_CSS_THEME_DEFAULT</OBJID> <OBJID>ZABAPGIT_CSS_THEME_DEFAULT</OBJID>
<NAME>fileextension</NAME> <NAME>fileextension</NAME>
<VALUE>.CSS</VALUE> <VALUE>.css</VALUE>
</WWWPARAMS> </WWWPARAMS>
<WWWPARAMS> <WWWPARAMS>
<RELID>MI</RELID> <RELID>MI</RELID>
<OBJID>ZABAPGIT_CSS_THEME_DEFAULT</OBJID> <OBJID>ZABAPGIT_CSS_THEME_DEFAULT</OBJID>
<NAME>filename</NAME> <NAME>filename</NAME>
<VALUE>~wwwtmp.CSS</VALUE> <VALUE>default_theme.css</VALUE>
</WWWPARAMS> </WWWPARAMS>
<WWWPARAMS> <WWWPARAMS>
<RELID>MI</RELID> <RELID>MI</RELID>

View File

@ -26,7 +26,6 @@ CLASS zcl_abapgit_gui_chunk_lib DEFINITION
!iv_show_branch TYPE abap_bool DEFAULT abap_true !iv_show_branch TYPE abap_bool DEFAULT abap_true
!iv_show_commit TYPE abap_bool DEFAULT abap_true !iv_show_commit TYPE abap_bool DEFAULT abap_true
!iv_interactive_branch TYPE abap_bool DEFAULT abap_false !iv_interactive_branch TYPE abap_bool DEFAULT abap_false
!iv_branch TYPE string OPTIONAL
!io_news TYPE REF TO zcl_abapgit_news OPTIONAL !io_news TYPE REF TO zcl_abapgit_news OPTIONAL
RETURNING RETURNING
VALUE(ri_html) TYPE REF TO zif_abapgit_html VALUE(ri_html) TYPE REF TO zif_abapgit_html
@ -105,6 +104,40 @@ CLASS zcl_abapgit_gui_chunk_lib DEFINITION
CLASS-METHODS help_submenu CLASS-METHODS help_submenu
RETURNING RETURNING
VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar . VALUE(ro_menu) TYPE REF TO zcl_abapgit_html_toolbar .
CLASS-METHODS render_branch_name
IMPORTING
!iv_branch TYPE string OPTIONAL
!iv_repo_key TYPE zif_abapgit_persistence=>ty_value OPTIONAL
!io_repo TYPE REF TO zcl_abapgit_repo_online OPTIONAL
!iv_interactive TYPE abap_bool DEFAULT abap_true
RETURNING
VALUE(ri_html) TYPE REF TO zif_abapgit_html
RAISING
zcx_abapgit_exception .
CLASS-METHODS render_package_name
IMPORTING
!iv_package TYPE devclass
!iv_interactive TYPE abap_bool DEFAULT abap_true
RETURNING
VALUE(ri_html) TYPE REF TO zif_abapgit_html
RAISING
zcx_abapgit_exception .
CLASS-METHODS render_user_name
IMPORTING
!iv_username TYPE xubname
!iv_interactive TYPE abap_bool DEFAULT abap_true
RETURNING
VALUE(ri_html) TYPE REF TO zif_abapgit_html
RAISING
zcx_abapgit_exception .
CLASS-METHODS render_transport
IMPORTING
!iv_transport TYPE trkorr
!iv_interactive TYPE abap_bool DEFAULT abap_true
RETURNING
VALUE(ri_html) TYPE REF TO zif_abapgit_html
RAISING
zcx_abapgit_exception .
PROTECTED SECTION. PROTECTED SECTION.
CLASS-METHODS render_repo_top_commit_hash CLASS-METHODS render_repo_top_commit_hash
@ -117,15 +150,6 @@ CLASS zcl_abapgit_gui_chunk_lib DEFINITION
CLASS-DATA gv_time_zone TYPE timezone . CLASS-DATA gv_time_zone TYPE timezone .
CLASS-METHODS render_branch_span
IMPORTING
!iv_branch TYPE string
!io_repo TYPE REF TO zcl_abapgit_repo_online
!iv_interactive TYPE abap_bool
RETURNING
VALUE(ri_html) TYPE REF TO zif_abapgit_html
RAISING
zcx_abapgit_exception .
CLASS-METHODS get_t100_text CLASS-METHODS get_t100_text
IMPORTING IMPORTING
!iv_msgid TYPE scx_t100key-msgid !iv_msgid TYPE scx_t100key-msgid
@ -239,14 +263,33 @@ CLASS zcl_abapgit_gui_chunk_lib IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD render_branch_span. METHOD render_branch_name.
DATA: lv_text TYPE string, DATA:
lv_class TYPE string. lv_key TYPE string,
lv_branch TYPE string,
lv_text TYPE string,
lv_class TYPE string.
lv_text = zcl_abapgit_git_branch_list=>get_display_name( iv_branch ). IF iv_repo_key IS NOT INITIAL.
lv_key = iv_repo_key.
ELSEIF io_repo IS BOUND.
lv_key = io_repo->get_key( ).
ELSE.
zcx_abapgit_exception=>raise( 'Either iv_repo_key or io_repo must be supplied' ).
ENDIF.
IF zcl_abapgit_git_branch_list=>get_type( iv_branch ) = zif_abapgit_definitions=>c_git_branch_type-branch. IF iv_branch IS NOT INITIAL.
lv_branch = iv_branch.
ELSEIF io_repo IS BOUND.
lv_branch = io_repo->get_selected_branch( ).
ELSE.
zcx_abapgit_exception=>raise( 'Either iv_branch or io_repo must be supplied' ).
ENDIF.
lv_text = zcl_abapgit_git_branch_list=>get_display_name( lv_branch ).
IF zcl_abapgit_git_branch_list=>get_type( lv_branch ) = zif_abapgit_definitions=>c_git_branch_type-branch.
lv_class = 'branch branch_branch'. lv_class = 'branch branch_branch'.
ELSE. ELSE.
lv_class = 'branch'. lv_class = 'branch'.
@ -257,7 +300,7 @@ CLASS zcl_abapgit_gui_chunk_lib IMPLEMENTATION.
ri_html->add_icon( iv_name = 'code-branch/grey70' ri_html->add_icon( iv_name = 'code-branch/grey70'
iv_hint = 'Current branch' ). iv_hint = 'Current branch' ).
IF iv_interactive = abap_true. IF iv_interactive = abap_true.
ri_html->add_a( iv_act = |{ zif_abapgit_definitions=>c_action-git_branch_switch }?key={ io_repo->get_key( ) }| ri_html->add_a( iv_act = |{ zif_abapgit_definitions=>c_action-git_branch_switch }?key={ lv_key }|
iv_txt = lv_text ). iv_txt = lv_text ).
ELSE. ELSE.
ri_html->add( lv_text ). ri_html->add( lv_text ).
@ -612,6 +655,42 @@ CLASS zcl_abapgit_gui_chunk_lib IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD render_package_name.
DATA:
lv_obj_name TYPE tadir-obj_name,
lv_jump TYPE string,
lv_title TYPE string.
CREATE OBJECT ri_html TYPE zcl_abapgit_html.
IF iv_package IS INITIAL.
RETURN.
ENDIF.
SELECT SINGLE ctext FROM tdevct INTO lv_title
WHERE devclass = iv_package AND spras = sy-langu ##SUBRC_OK.
lv_obj_name = iv_package.
lv_jump = zcl_abapgit_html_action_utils=>jump_encode(
iv_obj_type = 'DEVC'
iv_obj_name = lv_obj_name ).
ri_html->add( |<span class="package">| ).
ri_html->add_icon( iv_name = 'box/grey70'
iv_hint = 'SAP package' ).
IF iv_interactive = abap_true.
ri_html->add_a( iv_act = |{ zif_abapgit_definitions=>c_action-jump }?{ lv_jump }|
iv_title = lv_title
iv_txt = to_lower( iv_package ) ).
ELSE.
ri_html->add( to_lower( iv_package ) ).
ENDIF.
ri_html->add( '</span>' ).
ENDMETHOD.
METHOD render_repo_palette. METHOD render_repo_palette.
DATA li_repo_srv TYPE REF TO zif_abapgit_repo_srv. DATA li_repo_srv TYPE REF TO zif_abapgit_repo_srv.
@ -745,31 +824,14 @@ CLASS zcl_abapgit_gui_chunk_lib IMPLEMENTATION.
IF io_repo->is_offline( ) = abap_false. IF io_repo->is_offline( ) = abap_false.
lo_repo_online ?= io_repo. lo_repo_online ?= io_repo.
IF iv_show_branch = abap_true. IF iv_show_branch = abap_true.
IF iv_branch IS INITIAL. ri_html->add( render_branch_name( io_repo = lo_repo_online
ri_html->add( render_branch_span( iv_branch = lo_repo_online->get_selected_branch( ) iv_interactive = iv_interactive_branch ) ).
io_repo = lo_repo_online
iv_interactive = iv_interactive_branch ) ).
ELSE.
ri_html->add( render_branch_span( iv_branch = iv_branch
io_repo = lo_repo_online
iv_interactive = iv_interactive_branch ) ).
ENDIF.
ENDIF. ENDIF.
ENDIF. ENDIF.
" Package " Package
IF iv_show_package = abap_true. IF iv_show_package = abap_true.
ri_html->add_icon( iv_name = 'box/grey70' ri_html->add( render_package_name( io_repo->get_package( ) ) ).
iv_hint = 'SAP package' ).
ri_html->add( '<span>' ).
lv_package_jump_data = zcl_abapgit_html_action_utils=>jump_encode(
iv_obj_type = 'DEVC'
iv_obj_name = io_repo->get_package( ) ).
ri_html->add_a( iv_txt = io_repo->get_package( )
iv_act = |{ zif_abapgit_definitions=>c_action-jump }?{ lv_package_jump_data }| ).
ri_html->add( '</span>' ).
ENDIF. ENDIF.
ri_html->add( '</td>' ). ri_html->add( '</td>' ).
@ -805,6 +867,75 @@ CLASS zcl_abapgit_gui_chunk_lib IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD render_transport.
DATA lv_title TYPE string.
CREATE OBJECT ri_html TYPE zcl_abapgit_html.
IF iv_transport IS INITIAL.
RETURN.
ENDIF.
SELECT SINGLE as4text FROM e07t INTO lv_title
WHERE trkorr = iv_transport AND langu = sy-langu ##SUBRC_OK.
ri_html->add( |<span class="transport">| ).
ri_html->add_icon( iv_name = 'briefcase/grey70'
iv_hint = 'Transport' ).
IF iv_interactive = abap_true.
ri_html->add_a( iv_act = |{ zif_abapgit_definitions=>c_action-jump_transport }?transport={ iv_transport }|
iv_title = lv_title
iv_txt = to_lower( iv_transport ) ).
ELSE.
ri_html->add( to_lower( iv_transport ) ).
ENDIF.
ri_html->add( '</span>' ).
ENDMETHOD.
METHOD render_user_name.
DATA:
ls_user_address TYPE addr3_val,
lv_title TYPE string.
CREATE OBJECT ri_html TYPE zcl_abapgit_html.
IF iv_username IS INITIAL.
RETURN.
ENDIF.
IF iv_username <> zcl_abapgit_objects_super=>c_user_unknown.
CALL FUNCTION 'SUSR_USER_ADDRESS_READ'
EXPORTING
user_name = iv_username
IMPORTING
user_address = ls_user_address
EXCEPTIONS
user_address_not_found = 1
OTHERS = 2.
IF sy-subrc = 0.
lv_title = ls_user_address-name_text.
ENDIF.
ENDIF.
ri_html->add( |<span class="user">| ).
" todo, add icon ri_html->add_icon( iv_name = 'user/grey70'
" iv_hint = 'User name' )
IF iv_interactive = abap_true AND iv_username <> zcl_abapgit_objects_super=>c_user_unknown.
ri_html->add_a( iv_act = |{ zif_abapgit_definitions=>c_action-jump_user }?user={ iv_username }|
iv_title = lv_title
iv_txt = to_lower( iv_username ) ).
ELSE.
ri_html->add( to_lower( iv_username ) ).
ENDIF.
ri_html->add( '</span>' ).
ENDMETHOD.
METHOD render_warning_banner. METHOD render_warning_banner.
CREATE OBJECT ri_html TYPE zcl_abapgit_html. CREATE OBJECT ri_html TYPE zcl_abapgit_html.

View File

@ -82,7 +82,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_COMMIT IMPLEMENTATION. CLASS zcl_abapgit_gui_page_commit IMPLEMENTATION.
METHOD constructor. METHOD constructor.
@ -198,8 +198,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_COMMIT IMPLEMENTATION.
ri_html->add( '<div class="repo">' ). ri_html->add( '<div class="repo">' ).
ri_html->add( zcl_abapgit_gui_chunk_lib=>render_repo_top( ri_html->add( zcl_abapgit_gui_chunk_lib=>render_repo_top(
io_repo = mo_repo io_repo = mo_repo
iv_show_package = abap_false iv_show_package = abap_false ) ).
iv_branch = mo_repo->get_selected_branch( ) ) ).
ri_html->add( render_menu( ) ). ri_html->add( render_menu( ) ).
ri_html->add( render_form( ) ). ri_html->add( render_form( ) ).

View File

@ -128,7 +128,9 @@ CLASS zcl_abapgit_gui_page_diff DEFINITION
IMPORTING IMPORTING
!is_diff TYPE ty_file_diff !is_diff TYPE ty_file_diff
RETURNING RETURNING
VALUE(ri_html) TYPE REF TO zif_abapgit_html . VALUE(ri_html) TYPE REF TO zif_abapgit_html
RAISING
zcx_abapgit_exception .
METHODS render_table_head METHODS render_table_head
IMPORTING IMPORTING
!is_diff TYPE ty_file_diff !is_diff TYPE ty_file_diff
@ -200,7 +202,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_DIFF IMPLEMENTATION. CLASS zcl_abapgit_gui_page_diff IMPLEMENTATION.
METHOD add_filter_sub_menu. METHOD add_filter_sub_menu.
@ -344,10 +346,10 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DIFF IMPLEMENTATION.
" Changed by " Changed by
IF <ls_local>-item-obj_type IS NOT INITIAL. IF <ls_local>-item-obj_type IS NOT INITIAL.
<ls_diff>-changed_by = to_lower( zcl_abapgit_objects=>changed_by( <ls_local>-item ) ). <ls_diff>-changed_by = zcl_abapgit_objects=>changed_by( <ls_local>-item ).
ENDIF. ENDIF.
IF <ls_diff>-changed_by IS INITIAL. IF <ls_diff>-changed_by IS INITIAL.
<ls_diff>-changed_by = to_lower( zcl_abapgit_objects_super=>c_user_unknown ). <ls_diff>-changed_by = zcl_abapgit_objects_super=>c_user_unknown.
ENDIF. ENDIF.
" Extension " Extension
@ -711,8 +713,9 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_DIFF IMPLEMENTATION.
ii_html = ri_html ii_html = ri_html
is_diff = is_diff ). is_diff = is_diff ).
ri_html->add( |<span class="diff_changed_by">Last Changed by: <span class="user">{ ri_html->add( '<span class="diff_changed_by">Last Changed by: ' ).
is_diff-changed_by }</span></span>| ). ri_html->add( zcl_abapgit_gui_chunk_lib=>render_user_name( is_diff-changed_by ) ).
ri_html->add( '</span>' ).
ri_html->add( '</div>' ). ri_html->add( '</div>' ).

View File

@ -34,14 +34,14 @@ CLASS zcl_abapgit_gui_page_repo_over DEFINITION
favorite TYPE string, favorite TYPE string,
"! True for offline, false for online repo "! True for offline, false for online repo
type TYPE string, type TYPE string,
key TYPE string, key TYPE zif_abapgit_persistence=>ty_value,
name TYPE string, name TYPE string,
url TYPE string, url TYPE string,
package TYPE string, package TYPE devclass,
branch TYPE string, branch TYPE string,
created_by TYPE string, created_by TYPE xubname,
created_at TYPE string, created_at TYPE string,
deserialized_by TYPE string, deserialized_by TYPE xubname,
deserialized_at TYPE string, deserialized_at TYPE string,
END OF ty_overview, END OF ty_overview,
ty_overviews TYPE STANDARD TABLE OF ty_overview ty_overviews TYPE STANDARD TABLE OF ty_overview
@ -84,12 +84,16 @@ CLASS zcl_abapgit_gui_page_repo_over DEFINITION
render_table render_table
IMPORTING IMPORTING
ii_html TYPE REF TO zif_abapgit_html ii_html TYPE REF TO zif_abapgit_html
it_overview TYPE ty_overviews, it_overview TYPE ty_overviews
RAISING
zcx_abapgit_exception,
render_table_body render_table_body
IMPORTING IMPORTING
ii_html TYPE REF TO zif_abapgit_html ii_html TYPE REF TO zif_abapgit_html
it_overview TYPE ty_overviews, it_overview TYPE ty_overviews
RAISING
zcx_abapgit_exception,
render_header_bar render_header_bar
IMPORTING IMPORTING
@ -100,11 +104,11 @@ CLASS zcl_abapgit_gui_page_repo_over DEFINITION
_add_column _add_column
IMPORTING IMPORTING
iv_tech_name TYPE string OPTIONAL iv_tech_name TYPE string OPTIONAL
iv_display_name TYPE string OPTIONAL iv_display_name TYPE string OPTIONAL
iv_css_class TYPE string OPTIONAL iv_css_class TYPE string OPTIONAL
iv_add_tz TYPE abap_bool OPTIONAL iv_add_tz TYPE abap_bool OPTIONAL
iv_title TYPE string OPTIONAL iv_title TYPE string OPTIONAL
iv_allow_order_by TYPE any OPTIONAL. iv_allow_order_by TYPE any OPTIONAL.
METHODS render_scripts METHODS render_scripts
@ -116,7 +120,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_OVER IMPLEMENTATION. CLASS zcl_abapgit_gui_page_repo_over IMPLEMENTATION.
METHOD apply_filter. METHOD apply_filter.
@ -209,7 +213,7 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_OVER IMPLEMENTATION.
ls_overview-name = lo_repo_srv->get_name( ). ls_overview-name = lo_repo_srv->get_name( ).
ls_overview-url = <ls_repo>-url. ls_overview-url = <ls_repo>-url.
ls_overview-package = <ls_repo>-package. ls_overview-package = <ls_repo>-package.
ls_overview-branch = zcl_abapgit_git_branch_list=>get_display_name( <ls_repo>-branch_name ). ls_overview-branch = <ls_repo>-branch_name.
ls_overview-created_by = <ls_repo>-created_by. ls_overview-created_by = <ls_repo>-created_by.
IF <ls_repo>-created_at IS NOT INITIAL. IF <ls_repo>-created_at IS NOT INITIAL.
@ -353,31 +357,27 @@ CLASS ZCL_ABAPGIT_GUI_PAGE_REPO_OVER IMPLEMENTATION.
ii_html->add( |<td></td>| ). ii_html->add( |<td></td>| ).
ENDIF. ENDIF.
lv_package_obj_name = <ls_overview>-package. ii_html->add( |<td>| ).
lv_package_jump_data = zcl_abapgit_html_action_utils=>jump_encode( ii_html->add( zcl_abapgit_gui_chunk_lib=>render_package_name( <ls_overview>-package ) ).
iv_obj_type = 'DEVC' ii_html->add( |</td>| ).
iv_obj_name = lv_package_obj_name ).
ii_html->add( |<td>{ ii_html->a(
iv_txt = <ls_overview>-package
iv_act = |{ zif_abapgit_definitions=>c_action-jump }?{ lv_package_jump_data }| ) }</td>| ).
IF <ls_overview>-branch IS INITIAL. IF <ls_overview>-branch IS INITIAL.
ii_html->add( |<td>&nbsp;</td>| ). ii_html->add( |<td>&nbsp;</td>| ).
ELSE. ELSE.
lv_branch_html = `<span class="branch branch_branch">` ii_html->add( |<td>| ).
&& `<i title="Current branch" class="icon icon-code-branch grey70"></i>` ii_html->add( zcl_abapgit_gui_chunk_lib=>render_branch_name(
&& <ls_overview>-branch iv_branch = <ls_overview>-branch
&& `</span>`. iv_repo_key = <ls_overview>-key ) ).
ii_html->add( |</td>| ).
ii_html->add( |<td>{ ii_html->a(
iv_txt = lv_branch_html
iv_act = |{ zif_abapgit_definitions=>c_action-git_branch_switch }?key={ <ls_overview>-key }| ) }</td>| ).
ENDIF. ENDIF.
ii_html->add( |<td class="ro-detail">{ <ls_overview>-deserialized_by }</td>| ). ii_html->add( |<td class="ro-detail">| ).
ii_html->add( zcl_abapgit_gui_chunk_lib=>render_user_name( <ls_overview>-deserialized_by ) ).
ii_html->add( |</td>| ).
ii_html->add( |<td class="ro-detail">{ <ls_overview>-deserialized_at }</td>| ). ii_html->add( |<td class="ro-detail">{ <ls_overview>-deserialized_at }</td>| ).
ii_html->add( |<td class="ro-detail">{ <ls_overview>-created_by }</td>| ). ii_html->add( |<td class="ro-detail">| ).
ii_html->add( zcl_abapgit_gui_chunk_lib=>render_user_name( <ls_overview>-created_by ) ).
ii_html->add( |</td>| ).
ii_html->add( |<td class="ro-detail">{ <ls_overview>-created_at }</td>| ). ii_html->add( |<td class="ro-detail">{ <ls_overview>-created_at }</td>| ).
ii_html->add( |<td class="ro-detail">{ <ls_overview>-key }</td>| ). ii_html->add( |<td class="ro-detail">{ <ls_overview>-key }</td>| ).

View File

@ -107,16 +107,19 @@ CLASS zcl_abapgit_gui_router DEFINITION
VALUE(ri_page) TYPE REF TO zif_abapgit_gui_renderable VALUE(ri_page) TYPE REF TO zif_abapgit_gui_renderable
RAISING RAISING
zcx_abapgit_exception . zcx_abapgit_exception .
CLASS-METHODS jump_display_transport CLASS-METHODS jump_display_transport
IMPORTING IMPORTING
!iv_transport TYPE trkorr !iv_transport TYPE trkorr
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception .
CLASS-METHODS jump_display_user
IMPORTING
!iv_username TYPE xubname
RAISING
zcx_abapgit_exception .
METHODS call_browser METHODS call_browser
IMPORTING IMPORTING
iv_url TYPE csequence !iv_url TYPE csequence
RAISING RAISING
zcx_abapgit_exception. zcx_abapgit_exception.
@ -124,7 +127,7 @@ ENDCLASS.
CLASS ZCL_ABAPGIT_GUI_ROUTER IMPLEMENTATION. CLASS zcl_abapgit_gui_router IMPLEMENTATION.
METHOD abapgit_services_actions. METHOD abapgit_services_actions.
@ -459,6 +462,17 @@ CLASS ZCL_ABAPGIT_GUI_ROUTER IMPLEMENTATION.
ENDMETHOD. ENDMETHOD.
METHOD jump_display_user.
" todo, user display in ADT
CALL FUNCTION 'BAPI_USER_DISPLAY'
EXPORTING
username = iv_username.
ENDMETHOD.
METHOD other_utilities. METHOD other_utilities.
CASE ii_event->mv_action. CASE ii_event->mv_action.
@ -576,6 +590,10 @@ CLASS ZCL_ABAPGIT_GUI_ROUTER IMPLEMENTATION.
jump_display_transport( |{ ii_event->query( )->get( 'TRANSPORT' ) }| ). jump_display_transport( |{ ii_event->query( )->get( 'TRANSPORT' ) }| ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-no_more_act. rs_handled-state = zcl_abapgit_gui=>c_event_state-no_more_act.
WHEN zif_abapgit_definitions=>c_action-jump_user.
jump_display_user( |{ ii_event->query( )->get( 'USER' ) }| ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-no_more_act.
WHEN zif_abapgit_definitions=>c_action-url. WHEN zif_abapgit_definitions=>c_action-url.
call_browser( ii_event->query( )->get( 'URL' ) ). call_browser( ii_event->query( )->get( 'URL' ) ).
rs_handled-state = zcl_abapgit_gui=>c_event_state-no_more_act. rs_handled-state = zcl_abapgit_gui=>c_event_state-no_more_act.

View File

@ -526,6 +526,7 @@ INTERFACE zif_abapgit_definitions
go_patch TYPE string VALUE 'go_patch', go_patch TYPE string VALUE 'go_patch',
jump TYPE string VALUE 'jump', jump TYPE string VALUE 'jump',
jump_transport TYPE string VALUE 'jump_transport', jump_transport TYPE string VALUE 'jump_transport',
jump_user TYPE string VALUE 'jump_user',
url TYPE string VALUE 'url', url TYPE string VALUE 'url',
goto_source TYPE string VALUE 'goto_source', goto_source TYPE string VALUE 'goto_source',
show_callstack TYPE string VALUE 'show_callstack', show_callstack TYPE string VALUE 'show_callstack',