mirror of
https://github.com/abapGit/abapGit.git
synced 2025-05-01 20:32:26 +08:00
Merge pull request #526 from sbcgua/master
html refactoring, render sequence refactoring
This commit is contained in:
commit
33bb7d52bf
|
@ -33,15 +33,21 @@ form input:focus, textarea:focus {
|
||||||
border: 1px solid #8cadd9;
|
border: 1px solid #8cadd9;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* MODIFIERS */
|
/* COLOR PALETTE */
|
||||||
.grey { color: lightgrey !important; }
|
.grey { color: lightgrey !important; }
|
||||||
.emphasis { font-weight: bold !important; }
|
|
||||||
.attention { color: red !important; }
|
.attention { color: red !important; }
|
||||||
|
.blue { color: #5e8dc9; !important; }
|
||||||
|
.red { color: red !important; }
|
||||||
|
|
||||||
|
/* MODIFIERS */
|
||||||
|
.emphasis { font-weight: bold !important; }
|
||||||
.crossout { text-decoration: line-through !important; }
|
.crossout { text-decoration: line-through !important; }
|
||||||
.right { text-align:right; }
|
.right { text-align:right; }
|
||||||
.paddings { padding: 0.5em 0.5em; }
|
.paddings { padding: 0.5em 0.5em; }
|
||||||
.pad-sides { padding: 0 0.3em; }
|
.pad-sides { padding: 0 0.3em; }
|
||||||
.pad4px { padding: 4px; }
|
.pad4px { padding: 4px; }
|
||||||
|
.w100 { width: 100%; }
|
||||||
|
.w40 { width: 40%; }
|
||||||
|
|
||||||
/* STRUCTURE DIVS, HEADER & FOOTER */
|
/* STRUCTURE DIVS, HEADER & FOOTER */
|
||||||
td.headpad { padding-top: 11px; }
|
td.headpad { padding-top: 11px; }
|
||||||
|
@ -172,6 +178,7 @@ div.menu_vertical a {
|
||||||
.dropdown_content td { text-align: left; padding: 2px; }
|
.dropdown_content td { text-align: left; padding: 2px; }
|
||||||
.dropdown_content td a { padding: 0em 0.2em; }
|
.dropdown_content td a { padding: 0em 0.2em; }
|
||||||
.dropdown_content td.icon { padding: 0 3px 0 6px; }
|
.dropdown_content td.icon { padding: 0 3px 0 6px; }
|
||||||
|
.dropdown_content td.text { width: 100%; }
|
||||||
.dropdown_content a:hover { background-color: #f1f1f1 }
|
.dropdown_content a:hover { background-color: #f1f1f1 }
|
||||||
.dropdown:hover .dropbtn { color: #79a0d2; }
|
.dropdown:hover .dropbtn { color: #79a0d2; }
|
||||||
|
|
||||||
|
@ -248,11 +255,12 @@ div.repo {
|
||||||
div.repo_container {
|
div.repo_container {
|
||||||
position: relative;
|
position: relative;
|
||||||
}
|
}
|
||||||
.repo_tab {
|
table.repo_tab {
|
||||||
border: 1px solid #DDD;
|
border: 1px solid #DDD;
|
||||||
border-radius: 3px;
|
border-radius: 3px;
|
||||||
background: #fff;
|
background: #fff;
|
||||||
margin-top: 0.5em;
|
margin-top: 0.5em;
|
||||||
|
width: 100%;
|
||||||
}
|
}
|
||||||
.repo_tab td {
|
.repo_tab td {
|
||||||
border-top: 1px solid #eee;
|
border-top: 1px solid #eee;
|
||||||
|
@ -463,6 +471,7 @@ div.diff_head span.state-block span.none {
|
||||||
table.diff_tab {
|
table.diff_tab {
|
||||||
font-family: Consolas, Courier, monospace;
|
font-family: Consolas, Courier, monospace;
|
||||||
font-size: 10pt;
|
font-size: 10pt;
|
||||||
|
width: 100%;
|
||||||
}
|
}
|
||||||
table.diff_tab td,th {
|
table.diff_tab td,th {
|
||||||
color: #444;
|
color: #444;
|
||||||
|
|
|
@ -159,7 +159,7 @@ CONSTANTS: BEGIN OF gc_event_state,
|
||||||
END OF gc_event_state.
|
END OF gc_event_state.
|
||||||
|
|
||||||
CONSTANTS: BEGIN OF gc_html_opt,
|
CONSTANTS: BEGIN OF gc_html_opt,
|
||||||
emphas TYPE c VALUE 'E',
|
strong TYPE c VALUE 'E',
|
||||||
cancel TYPE c VALUE 'C',
|
cancel TYPE c VALUE 'C',
|
||||||
crossout TYPE c VALUE 'X',
|
crossout TYPE c VALUE 'X',
|
||||||
END OF gc_html_opt.
|
END OF gc_html_opt.
|
||||||
|
|
|
@ -4,17 +4,18 @@
|
||||||
|
|
||||||
* All UI pages
|
* All UI pages
|
||||||
|
|
||||||
* Super class
|
* Super class & common html chunks
|
||||||
|
INCLUDE zabapgit_html_chunks.
|
||||||
INCLUDE zabapgit_page.
|
INCLUDE zabapgit_page.
|
||||||
|
|
||||||
* Utils and helpers
|
* Utils and helpers
|
||||||
INCLUDE zabapgit_html_action_utils.
|
INCLUDE zabapgit_html_action_utils.
|
||||||
INCLUDE zabapgit_repo_browser_util.
|
INCLUDE zabapgit_repo_browser_util.
|
||||||
|
INCLUDE zabapgit_syntax_highlighter.
|
||||||
|
|
||||||
* Components and templates
|
* Components and templates
|
||||||
INCLUDE zabapgit_view_repo.
|
INCLUDE zabapgit_view_repo.
|
||||||
INCLUDE zabapgit_view_tutorial.
|
INCLUDE zabapgit_view_tutorial.
|
||||||
INCLUDE zabapgit_syntax_highlighter.
|
|
||||||
|
|
||||||
* Pages
|
* Pages
|
||||||
INCLUDE zabapgit_page_commit.
|
INCLUDE zabapgit_page_commit.
|
||||||
|
|
|
@ -7,9 +7,9 @@ DEFINE _add.
|
||||||
END-OF-DEFINITION.
|
END-OF-DEFINITION.
|
||||||
|
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
* CLASS lcl_html_helper DEFINITION
|
* CLASS lcl_html DEFINITION
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
CLASS lcl_html_helper DEFINITION FINAL.
|
CLASS lcl_html DEFINITION FINAL.
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
CONSTANTS: c_indent_size TYPE i VALUE 2.
|
CONSTANTS: c_indent_size TYPE i VALUE 2.
|
||||||
|
|
||||||
|
@ -21,27 +21,49 @@ CLASS lcl_html_helper DEFINITION FINAL.
|
||||||
METHODS add IMPORTING iv_chunk TYPE any.
|
METHODS add IMPORTING iv_chunk TYPE any.
|
||||||
METHODS reset.
|
METHODS reset.
|
||||||
|
|
||||||
METHODS add_anchor IMPORTING iv_txt TYPE string
|
METHODS add_a IMPORTING iv_txt TYPE string
|
||||||
iv_act TYPE string
|
iv_act TYPE string
|
||||||
iv_opt TYPE clike OPTIONAL
|
iv_typ TYPE char1 DEFAULT gc_action_type-sapevent
|
||||||
iv_typ TYPE char1 DEFAULT gc_action_type-sapevent
|
iv_opt TYPE clike OPTIONAL
|
||||||
|
iv_class TYPE string OPTIONAL
|
||||||
|
iv_id TYPE string OPTIONAL
|
||||||
|
iv_style TYPE string OPTIONAL.
|
||||||
|
|
||||||
|
METHODS add_icon IMPORTING iv_name TYPE string
|
||||||
|
iv_hint TYPE string OPTIONAL
|
||||||
|
iv_alt TYPE string OPTIONAL
|
||||||
|
iv_class TYPE string OPTIONAL.
|
||||||
|
|
||||||
|
CLASS-METHODS a IMPORTING iv_txt TYPE string
|
||||||
|
iv_act TYPE string
|
||||||
|
iv_typ TYPE char1 DEFAULT gc_action_type-sapevent
|
||||||
|
iv_opt TYPE clike OPTIONAL
|
||||||
|
iv_class TYPE string OPTIONAL
|
||||||
|
iv_id TYPE string OPTIONAL
|
||||||
|
iv_style TYPE string OPTIONAL
|
||||||
|
RETURNING VALUE(rv_str) TYPE string.
|
||||||
|
|
||||||
|
CLASS-METHODS icon IMPORTING iv_name TYPE string
|
||||||
|
iv_hint TYPE string OPTIONAL
|
||||||
|
iv_alt TYPE string OPTIONAL
|
||||||
iv_class TYPE string OPTIONAL
|
iv_class TYPE string OPTIONAL
|
||||||
iv_id TYPE string OPTIONAL
|
RETURNING VALUE(rv_str) TYPE string.
|
||||||
iv_style TYPE string OPTIONAL.
|
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS _add_str IMPORTING iv_str TYPE csequence.
|
METHODS _add_str IMPORTING iv_str TYPE csequence.
|
||||||
METHODS _add_htm IMPORTING io_html TYPE REF TO lcl_html_helper.
|
METHODS _add_htm IMPORTING io_html TYPE REF TO lcl_html.
|
||||||
|
|
||||||
ENDCLASS. "lcl_html_helper DEFINITION
|
ENDCLASS. "lcl_html DEFINITION
|
||||||
|
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
* CLASS lcl_html_helper IMPLEMENTATION
|
* CLASS lcl_html IMPLEMENTATION
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
CLASS lcl_html_helper IMPLEMENTATION.
|
CLASS lcl_html IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD add.
|
METHOD add.
|
||||||
|
|
||||||
DATA lo_type TYPE REF TO cl_abap_typedescr.
|
DATA lo_type TYPE REF TO cl_abap_typedescr.
|
||||||
DATA lo_html TYPE REF TO lcl_html_helper.
|
DATA lo_html TYPE REF TO lcl_html.
|
||||||
|
|
||||||
lo_type = cl_abap_typedescr=>describe_by_data( iv_chunk ).
|
lo_type = cl_abap_typedescr=>describe_by_data( iv_chunk ).
|
||||||
|
|
||||||
|
@ -71,6 +93,7 @@ CLASS lcl_html_helper IMPLEMENTATION.
|
||||||
ENDMETHOD. "reset
|
ENDMETHOD. "reset
|
||||||
|
|
||||||
METHOD _add_str.
|
METHOD _add_str.
|
||||||
|
|
||||||
CONSTANTS lc_single_tags_re TYPE string " HTML5 singleton tags
|
CONSTANTS lc_single_tags_re TYPE string " HTML5 singleton tags
|
||||||
VALUE '<(area|base|br|col|command|embed|hr|img|input|link|meta|param|source|!)'.
|
VALUE '<(area|base|br|col|command|embed|hr|img|input|link|meta|param|source|!)'.
|
||||||
|
|
||||||
|
@ -145,7 +168,20 @@ CLASS lcl_html_helper IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD. "_add_htm
|
ENDMETHOD. "_add_htm
|
||||||
|
|
||||||
METHOD add_anchor.
|
METHOD add_a.
|
||||||
|
|
||||||
|
_add_str( a( iv_txt = iv_txt
|
||||||
|
iv_act = iv_act
|
||||||
|
iv_typ = iv_typ
|
||||||
|
iv_opt = iv_opt
|
||||||
|
iv_class = iv_class
|
||||||
|
iv_id = iv_id
|
||||||
|
iv_style = iv_style ) ).
|
||||||
|
|
||||||
|
ENDMETHOD. "add_a
|
||||||
|
|
||||||
|
METHOD a.
|
||||||
|
|
||||||
DATA: lv_class TYPE string,
|
DATA: lv_class TYPE string,
|
||||||
lv_href TYPE string,
|
lv_href TYPE string,
|
||||||
lv_id TYPE string,
|
lv_id TYPE string,
|
||||||
|
@ -153,7 +189,7 @@ CLASS lcl_html_helper IMPLEMENTATION.
|
||||||
|
|
||||||
lv_class = iv_class.
|
lv_class = iv_class.
|
||||||
|
|
||||||
IF iv_opt CA gc_html_opt-emphas.
|
IF iv_opt CA gc_html_opt-strong.
|
||||||
lv_class = lv_class && ' emphasis' ##NO_TEXT.
|
lv_class = lv_class && ' emphasis' ##NO_TEXT.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
IF iv_opt CA gc_html_opt-cancel.
|
IF iv_opt CA gc_html_opt-cancel.
|
||||||
|
@ -186,11 +222,42 @@ CLASS lcl_html_helper IMPLEMENTATION.
|
||||||
lv_style = | style="{ iv_style }"|.
|
lv_style = | style="{ iv_style }"|.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
_add_str( |<a{ lv_id }{ lv_class }{ lv_href }{ lv_style }>{ iv_txt }</a>| ).
|
rv_str = |<a{ lv_id }{ lv_class }{ lv_href }{ lv_style }>{ iv_txt }</a>|.
|
||||||
|
|
||||||
ENDMETHOD. "add_action
|
ENDMETHOD. "a
|
||||||
|
|
||||||
ENDCLASS. "lcl_html_helper IMPLEMENTATION
|
METHOD add_icon.
|
||||||
|
|
||||||
|
_add_str( icon( iv_name = iv_name
|
||||||
|
iv_class = iv_class
|
||||||
|
iv_alt = iv_alt
|
||||||
|
iv_hint = iv_hint ) ).
|
||||||
|
|
||||||
|
ENDMETHOD. "add_icon
|
||||||
|
|
||||||
|
METHOD icon.
|
||||||
|
|
||||||
|
DATA: lv_hint TYPE string,
|
||||||
|
lv_alt TYPE string,
|
||||||
|
lv_class TYPE string.
|
||||||
|
|
||||||
|
IF iv_hint IS NOT INITIAL.
|
||||||
|
lv_hint = | title="{ iv_hint }"|.
|
||||||
|
ENDIF.
|
||||||
|
IF iv_class IS NOT INITIAL.
|
||||||
|
lv_class = | class="{ iv_class }"|.
|
||||||
|
ENDIF.
|
||||||
|
IF iv_alt IS INITIAL.
|
||||||
|
lv_alt = | alt|. " To pass html validation
|
||||||
|
ELSE.
|
||||||
|
lv_alt = | alt="{ iv_alt }"|.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
rv_str = |<img src="img/{ iv_name }"{ lv_alt }{ lv_class }{ lv_hint }> |.
|
||||||
|
|
||||||
|
ENDMETHOD. "icon
|
||||||
|
|
||||||
|
ENDCLASS. "lcl_html IMPLEMENTATION
|
||||||
|
|
||||||
*----------------------------------------------------------------------*
|
*----------------------------------------------------------------------*
|
||||||
* CLASS lcl_html_toolbar DEFINITION
|
* CLASS lcl_html_toolbar DEFINITION
|
||||||
|
@ -219,7 +286,7 @@ CLASS lcl_html_toolbar DEFINITION FINAL.
|
||||||
iv_with_icons TYPE abap_bool OPTIONAL
|
iv_with_icons TYPE abap_bool OPTIONAL
|
||||||
iv_add_minizone TYPE abap_bool OPTIONAL
|
iv_add_minizone TYPE abap_bool OPTIONAL
|
||||||
RETURNING
|
RETURNING
|
||||||
VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
TYPES: BEGIN OF ty_item,
|
TYPES: BEGIN OF ty_item,
|
||||||
|
@ -295,7 +362,10 @@ CLASS lcl_html_toolbar IMPLEMENTATION.
|
||||||
IF iv_no_separator = abap_true.
|
IF iv_no_separator = abap_true.
|
||||||
lv_class = lv_class && ' menu_end' ##NO_TEXT.
|
lv_class = lv_class && ' menu_end' ##NO_TEXT.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ro_html->add( |<a class="{ lv_class }">{ iv_as_droplist_with_label }</a>| ).
|
|
||||||
|
ro_html->add_a( iv_txt = iv_as_droplist_with_label
|
||||||
|
iv_class = lv_class
|
||||||
|
iv_act = '' ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF iv_add_minizone = abap_true.
|
IF iv_add_minizone = abap_true.
|
||||||
|
@ -327,15 +397,15 @@ CLASS lcl_html_toolbar IMPLEMENTATION.
|
||||||
|
|
||||||
IF iv_with_icons = abap_true.
|
IF iv_with_icons = abap_true.
|
||||||
ro_html->add( '<tr>' ).
|
ro_html->add( '<tr>' ).
|
||||||
ro_html->add( |<td class="icon">{ <ls_item>-ico }</td>| ).
|
ro_html->add( |<td class="icon">{ lcl_html=>icon( <ls_item>-ico ) }</td>| ).
|
||||||
ro_html->add( '<td width="100%">' ).
|
ro_html->add( '<td class="text">' ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ro_html->add_anchor( iv_txt = <ls_item>-txt
|
ro_html->add_a( iv_txt = <ls_item>-txt
|
||||||
iv_act = <ls_item>-act
|
iv_act = <ls_item>-act
|
||||||
iv_opt = <ls_item>-opt
|
iv_opt = <ls_item>-opt
|
||||||
iv_typ = <ls_item>-typ
|
iv_typ = <ls_item>-typ
|
||||||
iv_class = lv_class ).
|
iv_class = lv_class ).
|
||||||
|
|
||||||
IF iv_with_icons = abap_true.
|
IF iv_with_icons = abap_true.
|
||||||
ro_html->add( '</td>' ).
|
ro_html->add( '</td>' ).
|
||||||
|
|
200
src/zabapgit_html_chunks.prog.abap
Normal file
200
src/zabapgit_html_chunks.prog.abap
Normal file
|
@ -0,0 +1,200 @@
|
||||||
|
*&---------------------------------------------------------------------*
|
||||||
|
*& Include ZABAPGIT_HTML_CHUNKS
|
||||||
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
|
CLASS lcl_gui_chunk_lib DEFINITION FINAL.
|
||||||
|
|
||||||
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
CLASS-METHODS render_error
|
||||||
|
IMPORTING ix_error TYPE REF TO lcx_exception OPTIONAL
|
||||||
|
iv_error TYPE string OPTIONAL
|
||||||
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
|
|
||||||
|
CLASS-METHODS render_repo_top
|
||||||
|
IMPORTING io_repo TYPE REF TO lcl_repo
|
||||||
|
iv_show_package TYPE abap_bool DEFAULT abap_true
|
||||||
|
iv_show_branch TYPE abap_bool DEFAULT abap_true
|
||||||
|
iv_interactive_branch TYPE abap_bool DEFAULT abap_false
|
||||||
|
iv_branch TYPE string OPTIONAL
|
||||||
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
|
RAISING lcx_exception.
|
||||||
|
|
||||||
|
CLASS-METHODS render_item_state
|
||||||
|
IMPORTING iv1 TYPE char1
|
||||||
|
iv2 TYPE char1
|
||||||
|
RETURNING VALUE(rv_html) TYPE string.
|
||||||
|
|
||||||
|
CLASS-METHODS render_branch_span
|
||||||
|
IMPORTING iv_branch TYPE string
|
||||||
|
io_repo TYPE REF TO lcl_repo_online
|
||||||
|
iv_interactive TYPE abap_bool
|
||||||
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
|
RAISING lcx_exception.
|
||||||
|
|
||||||
|
ENDCLASS. "lcl_gui_chunk_lib
|
||||||
|
|
||||||
|
CLASS lcl_gui_chunk_lib IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD render_repo_top.
|
||||||
|
|
||||||
|
DATA: lo_repo_online TYPE REF TO lcl_repo_online,
|
||||||
|
lo_pback TYPE REF TO lcl_persistence_background,
|
||||||
|
lv_hint TYPE string,
|
||||||
|
lv_icon TYPE string.
|
||||||
|
|
||||||
|
|
||||||
|
CREATE OBJECT ro_html.
|
||||||
|
CREATE OBJECT lo_pback.
|
||||||
|
|
||||||
|
IF io_repo->is_offline( ) = abap_true.
|
||||||
|
lv_icon = 'repo_offline' ##NO_TEXT.
|
||||||
|
lv_hint = 'Offline repository' ##NO_TEXT.
|
||||||
|
ELSE.
|
||||||
|
lv_icon = 'repo_online' ##NO_TEXT.
|
||||||
|
lv_hint = 'On-line repository' ##NO_TEXT.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ro_html->add( '<table class="w100"><tr>' ).
|
||||||
|
|
||||||
|
ro_html->add( '<td class="repo_name">' ).
|
||||||
|
ro_html->add_icon( iv_name = lv_icon iv_hint = lv_hint ).
|
||||||
|
ro_html->add( |<span class="name">{ io_repo->get_name( ) }</span>| ).
|
||||||
|
IF io_repo->is_offline( ) = abap_false.
|
||||||
|
lo_repo_online ?= io_repo.
|
||||||
|
ro_html->add( |<span class="url">{ lo_repo_online->get_url( ) }</span>| ).
|
||||||
|
ENDIF.
|
||||||
|
ro_html->add( '</td>' ).
|
||||||
|
|
||||||
|
ro_html->add( '<td class="repo_attr right">' ).
|
||||||
|
|
||||||
|
IF abap_true = lcl_app=>user( )->is_favorite_repo( io_repo->get_key( ) ).
|
||||||
|
lv_icon = 'star' ##NO_TEXT.
|
||||||
|
ELSE.
|
||||||
|
lv_icon = 'star-grey' ##NO_TEXT.
|
||||||
|
ENDIF.
|
||||||
|
ro_html->add_a( iv_act = |{ gc_action-repo_toggle_fav }?{ io_repo->get_key( ) }|
|
||||||
|
iv_txt = lcl_html=>icon( iv_name = lv_icon
|
||||||
|
iv_class = 'pad-sides'
|
||||||
|
iv_hint = 'Click to toggle favorite' ) ).
|
||||||
|
|
||||||
|
IF lo_pback->exists( io_repo->get_key( ) ) = abap_true.
|
||||||
|
ro_html->add( '<span class="bg_marker" title="background">BG</span>' ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
IF io_repo->is_write_protected( ) = abap_true.
|
||||||
|
ro_html->add_icon( iv_name = 'lock' iv_hint = 'Locked from pulls' ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
IF io_repo->is_offline( ) = abap_false.
|
||||||
|
lo_repo_online ?= io_repo.
|
||||||
|
IF iv_show_branch = abap_true.
|
||||||
|
IF iv_branch IS INITIAL.
|
||||||
|
ro_html->add( render_branch_span( iv_branch = lo_repo_online->get_branch_name( )
|
||||||
|
io_repo = lo_repo_online
|
||||||
|
iv_interactive = iv_interactive_branch ) ).
|
||||||
|
ELSE.
|
||||||
|
ro_html->add( render_branch_span( iv_branch = iv_branch
|
||||||
|
io_repo = lo_repo_online
|
||||||
|
iv_interactive = iv_interactive_branch ) ).
|
||||||
|
ENDIF.
|
||||||
|
ENDIF.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
IF iv_show_package = abap_true.
|
||||||
|
ro_html->add_icon( iv_name = 'pkg' iv_hint = 'SAP package' ).
|
||||||
|
ro_html->add( '<span>' ).
|
||||||
|
ro_html->add_a( iv_txt = io_repo->get_package( )
|
||||||
|
iv_act = |{ gc_action-jump_pkg }?{ io_repo->get_package( ) }| ).
|
||||||
|
ro_html->add( '</span>' ).
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
ro_html->add( '</td>' ).
|
||||||
|
ro_html->add( '</tr></table>' ).
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD render_item_state.
|
||||||
|
|
||||||
|
DATA: lv_system TYPE string.
|
||||||
|
|
||||||
|
FIELD-SYMBOLS <state> TYPE char1.
|
||||||
|
|
||||||
|
|
||||||
|
rv_html = '<span class="state-block">'.
|
||||||
|
|
||||||
|
DO 2 TIMES.
|
||||||
|
CASE sy-index.
|
||||||
|
WHEN 1.
|
||||||
|
ASSIGN iv1 TO <state>.
|
||||||
|
lv_system = 'Local:'.
|
||||||
|
WHEN 2.
|
||||||
|
ASSIGN iv2 TO <state>.
|
||||||
|
lv_system = 'Remote:'.
|
||||||
|
ENDCASE.
|
||||||
|
|
||||||
|
CASE <state>.
|
||||||
|
WHEN gc_state-unchanged. "None or unchanged
|
||||||
|
IF iv1 = gc_state-added OR iv2 = gc_state-added.
|
||||||
|
rv_html = rv_html && |<span class="none" title="{ lv_system } Not exists">X</span>|.
|
||||||
|
ELSE.
|
||||||
|
rv_html = rv_html && |<span class="none" title="{ lv_system } No changes"> </span>|.
|
||||||
|
ENDIF.
|
||||||
|
WHEN gc_state-modified. "Changed
|
||||||
|
rv_html = rv_html && |<span class="changed" title="{ lv_system } Modified">M</span>|.
|
||||||
|
WHEN gc_state-added. "Added new
|
||||||
|
rv_html = rv_html && |<span class="added" title="{ lv_system } Added new">A</span>|.
|
||||||
|
WHEN gc_state-mixed. "Multiple changes (multifile)
|
||||||
|
rv_html = rv_html && |<span class="mixed" title="{ lv_system } Multiple changes">■</span>|.
|
||||||
|
WHEN gc_state-deleted. "Deleted
|
||||||
|
rv_html = rv_html && |<span class="deleted" title="{ lv_system } Deleted">D</span>|.
|
||||||
|
ENDCASE.
|
||||||
|
ENDDO.
|
||||||
|
|
||||||
|
rv_html = rv_html && '</span>'.
|
||||||
|
|
||||||
|
ENDMETHOD. "render_item_state
|
||||||
|
|
||||||
|
METHOD render_branch_span.
|
||||||
|
|
||||||
|
DATA: lv_text TYPE string,
|
||||||
|
lv_class TYPE string.
|
||||||
|
|
||||||
|
lv_text = lcl_git_branch_list=>get_display_name( iv_branch ).
|
||||||
|
|
||||||
|
IF iv_branch = io_repo->get_head_branch_name( ) OR iv_branch = lcl_git_branch_list=>head_name.
|
||||||
|
lv_class = 'branch branch_head'.
|
||||||
|
ELSEIF lcl_git_branch_list=>get_type( iv_branch ) = lcl_git_branch_list=>c_type-branch.
|
||||||
|
lv_class = 'branch branch_branch'.
|
||||||
|
ELSE.
|
||||||
|
lv_class = 'branch'.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
CREATE OBJECT ro_html.
|
||||||
|
ro_html->add( |<span class="{ lv_class }">| ).
|
||||||
|
ro_html->add_icon( iv_name = 'branch' iv_hint = 'Current branch' ).
|
||||||
|
IF iv_interactive = abap_true.
|
||||||
|
ro_html->add_a( iv_act = |{ gc_action-git_branch_switch }?{ io_repo->get_key( ) }|
|
||||||
|
iv_txt = lv_text ).
|
||||||
|
ELSE.
|
||||||
|
ro_html->add( lv_text ).
|
||||||
|
ENDIF.
|
||||||
|
ro_html->add( '</span>' ).
|
||||||
|
|
||||||
|
ENDMETHOD. "render_branch_span
|
||||||
|
|
||||||
|
METHOD render_error.
|
||||||
|
|
||||||
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
|
ro_html->add( '<div class="dummydiv attention">' ).
|
||||||
|
IF ix_error IS BOUND.
|
||||||
|
ro_html->add( |Error: { ix_error->mv_text }| ).
|
||||||
|
ELSE.
|
||||||
|
ro_html->add( |Error: { iv_error }| ).
|
||||||
|
ENDIF.
|
||||||
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
|
ENDMETHOD. "render_error
|
||||||
|
|
||||||
|
ENDCLASS. "lcl_gui_chunk_lib
|
48
src/zabapgit_html_chunks.prog.xml
Normal file
48
src/zabapgit_html_chunks.prog.xml
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<abapGit version="v1.0.0" serializer="LCL_OBJECT_PROG" serializer_version="v1.0.0">
|
||||||
|
<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||||||
|
<asx:values>
|
||||||
|
<PROGDIR>
|
||||||
|
<NAME>ZABAPGIT_HTML_CHUNKS</NAME>
|
||||||
|
<STATE>A</STATE>
|
||||||
|
<SQLX/>
|
||||||
|
<EDTX/>
|
||||||
|
<VARCL>X</VARCL>
|
||||||
|
<DBAPL/>
|
||||||
|
<DBNA/>
|
||||||
|
<CLAS/>
|
||||||
|
<TYPE/>
|
||||||
|
<OCCURS/>
|
||||||
|
<SUBC>I</SUBC>
|
||||||
|
<APPL/>
|
||||||
|
<SECU/>
|
||||||
|
<CNAM/>
|
||||||
|
<CDAT>0000-00-00</CDAT>
|
||||||
|
<UNAM/>
|
||||||
|
<UDAT>0000-00-00</UDAT>
|
||||||
|
<VERN/>
|
||||||
|
<LEVL/>
|
||||||
|
<RSTAT/>
|
||||||
|
<RMAND/>
|
||||||
|
<RLOAD>E</RLOAD>
|
||||||
|
<FIXPT/>
|
||||||
|
<SSET/>
|
||||||
|
<SDATE>0000-00-00</SDATE>
|
||||||
|
<STIME/>
|
||||||
|
<IDATE>0000-00-00</IDATE>
|
||||||
|
<ITIME/>
|
||||||
|
<LDBNAME/>
|
||||||
|
<UCCHECK>X</UCCHECK>
|
||||||
|
</PROGDIR>
|
||||||
|
<TPOOL>
|
||||||
|
<item>
|
||||||
|
<ID>R</ID>
|
||||||
|
<KEY/>
|
||||||
|
<ENTRY>Include ZABAPGIT_HTML_CHUNKS</ENTRY>
|
||||||
|
<LENGTH>28</LENGTH>
|
||||||
|
<SPLIT/>
|
||||||
|
</item>
|
||||||
|
</TPOOL>
|
||||||
|
</asx:values>
|
||||||
|
</asx:abap>
|
||||||
|
</abapGit>
|
|
@ -17,240 +17,88 @@ INTERFACE lif_gui_page.
|
||||||
RAISING lcx_exception lcx_cancel.
|
RAISING lcx_exception lcx_cancel.
|
||||||
|
|
||||||
METHODS render
|
METHODS render
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
ENDINTERFACE.
|
ENDINTERFACE.
|
||||||
|
|
||||||
CLASS lcl_gui_page_super DEFINITION ABSTRACT.
|
CLASS lcl_gui_page DEFINITION ABSTRACT.
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
INTERFACES lif_gui_page ABSTRACT METHODS render.
|
INTERFACES lif_gui_page.
|
||||||
|
|
||||||
CLASS-METHODS render_error
|
|
||||||
IMPORTING ix_error TYPE REF TO lcx_exception
|
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
|
||||||
|
|
||||||
PROTECTED SECTION.
|
PROTECTED SECTION.
|
||||||
METHODS render_repo_top
|
|
||||||
IMPORTING io_repo TYPE REF TO lcl_repo
|
TYPES: BEGIN OF ty_control,
|
||||||
iv_show_package TYPE abap_bool DEFAULT abap_true
|
redirect_url TYPE string,
|
||||||
iv_show_branch TYPE abap_bool DEFAULT abap_true
|
page_title TYPE string,
|
||||||
iv_interactive_branch TYPE abap_bool DEFAULT abap_false
|
page_menu TYPE REF TO lcl_html_toolbar,
|
||||||
iv_branch TYPE string OPTIONAL
|
END OF ty_control.
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
|
||||||
|
DATA: ms_control TYPE ty_control.
|
||||||
|
|
||||||
|
METHODS render_content ABSTRACT
|
||||||
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
METHODS render_item_state
|
METHODS scripts
|
||||||
IMPORTING iv1 TYPE char1
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
iv2 TYPE char1
|
|
||||||
RETURNING VALUE(rv_html) TYPE string.
|
|
||||||
|
|
||||||
METHODS render_branch_span
|
|
||||||
IMPORTING iv_branch TYPE string
|
|
||||||
io_repo TYPE REF TO lcl_repo_online
|
|
||||||
iv_interactive TYPE abap_bool
|
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
METHODS header
|
PRIVATE SECTION.
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
|
||||||
|
|
||||||
METHODS footer
|
METHODS html_head
|
||||||
IMPORTING io_include_script TYPE REF TO lcl_html_helper OPTIONAL
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
|
||||||
|
|
||||||
METHODS title
|
METHODS title
|
||||||
IMPORTING iv_title TYPE string
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
io_menu TYPE REF TO lcl_html_toolbar OPTIONAL
|
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
|
||||||
|
METHODS footer
|
||||||
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
|
|
||||||
METHODS redirect
|
METHODS redirect
|
||||||
IMPORTING iv_url TYPE string
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS. "lcl_gui_page
|
||||||
|
|
||||||
CLASS lcl_gui_page_super IMPLEMENTATION.
|
CLASS lcl_gui_page IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD render_repo_top.
|
METHOD html_head.
|
||||||
|
|
||||||
DATA: lo_repo_online TYPE REF TO lcl_repo_online,
|
|
||||||
lo_pback TYPE REF TO lcl_persistence_background,
|
|
||||||
lv_icon TYPE string.
|
|
||||||
|
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
|
||||||
CREATE OBJECT lo_pback.
|
|
||||||
|
|
||||||
IF io_repo->is_offline( ) = abap_true.
|
|
||||||
lv_icon = 'img/repo_offline' ##NO_TEXT.
|
|
||||||
ELSE.
|
|
||||||
lv_icon = 'img/repo_online' ##NO_TEXT.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
ro_html->add( '<table width="100%"><tr>' ).
|
|
||||||
|
|
||||||
ro_html->add( '<td class="repo_name">' ).
|
|
||||||
ro_html->add( |<img src="{ lv_icon }">| ).
|
|
||||||
ro_html->add( |<span class="name">{ io_repo->get_name( ) }</span>| ).
|
|
||||||
IF io_repo->is_offline( ) = abap_false.
|
|
||||||
lo_repo_online ?= io_repo.
|
|
||||||
ro_html->add( |<span class="url">{ lo_repo_online->get_url( ) }</span>| ).
|
|
||||||
ENDIF.
|
|
||||||
ro_html->add( '</td>' ).
|
|
||||||
|
|
||||||
ro_html->add( '<td class="repo_attr right">' ).
|
|
||||||
|
|
||||||
IF abap_true = lcl_app=>user( )->is_favorite_repo( io_repo->get_key( ) ).
|
|
||||||
lv_icon = 'img/star' ##NO_TEXT.
|
|
||||||
ELSE.
|
|
||||||
lv_icon = 'img/star-grey' ##NO_TEXT.
|
|
||||||
ENDIF.
|
|
||||||
lv_icon = |<img class="pad-sides" src="{ lv_icon }" title="Click to toggle favorite">|.
|
|
||||||
ro_html->add_anchor( iv_act = |{ gc_action-repo_toggle_fav }?{ io_repo->get_key( ) }|
|
|
||||||
iv_txt = lv_icon ).
|
|
||||||
|
|
||||||
IF lo_pback->exists( io_repo->get_key( ) ) = abap_true.
|
|
||||||
ro_html->add( '<span class="bg_marker" title="background">BG</span>' ).
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
IF io_repo->is_write_protected( ) = abap_true.
|
|
||||||
ro_html->add( '<img src="img/lock" title="locked">' ).
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
IF io_repo->is_offline( ) = abap_false.
|
|
||||||
lo_repo_online ?= io_repo.
|
|
||||||
IF iv_show_branch = abap_true.
|
|
||||||
IF iv_branch IS INITIAL.
|
|
||||||
ro_html->add( render_branch_span( iv_branch = lo_repo_online->get_branch_name( )
|
|
||||||
io_repo = lo_repo_online
|
|
||||||
iv_interactive = iv_interactive_branch ) ).
|
|
||||||
ELSE.
|
|
||||||
ro_html->add( render_branch_span( iv_branch = iv_branch
|
|
||||||
io_repo = lo_repo_online
|
|
||||||
iv_interactive = iv_interactive_branch ) ).
|
|
||||||
ENDIF.
|
|
||||||
ENDIF.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
IF iv_show_package = abap_true.
|
|
||||||
ro_html->add( '<img src="img/pkg">' ).
|
|
||||||
ro_html->add( '<span>' ).
|
|
||||||
ro_html->add_anchor( iv_txt = io_repo->get_package( )
|
|
||||||
iv_act = |{ gc_action-jump_pkg }?{ io_repo->get_package( ) }| ).
|
|
||||||
ro_html->add( '</span>' ).
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
ro_html->add( '</td>' ).
|
|
||||||
ro_html->add( '</tr></table>' ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
METHOD render_item_state.
|
|
||||||
|
|
||||||
DATA: lv_system TYPE string.
|
|
||||||
|
|
||||||
FIELD-SYMBOLS <state> TYPE char1.
|
|
||||||
|
|
||||||
|
|
||||||
rv_html = '<span class="state-block">'.
|
|
||||||
|
|
||||||
DO 2 TIMES.
|
|
||||||
CASE sy-index.
|
|
||||||
WHEN 1.
|
|
||||||
ASSIGN iv1 TO <state>.
|
|
||||||
lv_system = 'Local:'.
|
|
||||||
WHEN 2.
|
|
||||||
ASSIGN iv2 TO <state>.
|
|
||||||
lv_system = 'Remote:'.
|
|
||||||
ENDCASE.
|
|
||||||
|
|
||||||
CASE <state>.
|
|
||||||
WHEN gc_state-unchanged. "None or unchanged
|
|
||||||
IF iv1 = gc_state-added OR iv2 = gc_state-added.
|
|
||||||
rv_html = rv_html && |<span class="none" title="{ lv_system } Not exists">X</span>|.
|
|
||||||
ELSE.
|
|
||||||
rv_html = rv_html && |<span class="none" title="{ lv_system } No changes"> </span>|.
|
|
||||||
ENDIF.
|
|
||||||
WHEN gc_state-modified. "Changed
|
|
||||||
rv_html = rv_html && |<span class="changed" title="{ lv_system } Modified">M</span>|.
|
|
||||||
WHEN gc_state-added. "Added new
|
|
||||||
rv_html = rv_html && |<span class="added" title="{ lv_system } Added new">A</span>|.
|
|
||||||
WHEN gc_state-mixed. "Multiple changes (multifile)
|
|
||||||
rv_html = rv_html && |<span class="mixed" title="{ lv_system } Multiple changes">■</span>|.
|
|
||||||
WHEN gc_state-deleted. "Deleted
|
|
||||||
rv_html = rv_html && |<span class="deleted" title="{ lv_system } Deleted">D</span>|.
|
|
||||||
ENDCASE.
|
|
||||||
ENDDO.
|
|
||||||
|
|
||||||
rv_html = rv_html && '</span>'.
|
|
||||||
|
|
||||||
ENDMETHOD. "render_item_state
|
|
||||||
|
|
||||||
METHOD render_branch_span.
|
|
||||||
DATA: lv_text TYPE string,
|
|
||||||
lv_class TYPE string.
|
|
||||||
|
|
||||||
lv_text = lcl_git_branch_list=>get_display_name( iv_branch ).
|
|
||||||
|
|
||||||
IF iv_branch = io_repo->get_head_branch_name( ) OR iv_branch = lcl_git_branch_list=>head_name.
|
|
||||||
lv_class = 'branch branch_head'.
|
|
||||||
ELSEIF lcl_git_branch_list=>get_type( iv_branch ) = lcl_git_branch_list=>c_type-branch.
|
|
||||||
lv_class = 'branch branch_branch'.
|
|
||||||
ELSE.
|
|
||||||
lv_class = 'branch'.
|
|
||||||
ENDIF.
|
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
|
||||||
ro_html->add( |<span class="{ lv_class }">| ).
|
|
||||||
ro_html->add( '<img src="img/branch">' ).
|
|
||||||
IF iv_interactive = abap_true.
|
|
||||||
ro_html->add_anchor( iv_act = |{ gc_action-git_branch_switch }?{ io_repo->get_key( ) }|
|
|
||||||
iv_txt = lv_text ).
|
|
||||||
ELSE.
|
|
||||||
ro_html->add( lv_text ).
|
|
||||||
ENDIF.
|
|
||||||
ro_html->add( '</span>' ).
|
|
||||||
|
|
||||||
ENDMETHOD. "render_branch_span
|
|
||||||
|
|
||||||
METHOD header.
|
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( '<!DOCTYPE html>' ). "#EC NOTEXT
|
|
||||||
ro_html->add( '<html>' ). "#EC NOTEXT
|
|
||||||
ro_html->add( '<head>' ). "#EC NOTEXT
|
ro_html->add( '<head>' ). "#EC NOTEXT
|
||||||
ro_html->add( '<title>abapGit</title>' ). "#EC NOTEXT
|
|
||||||
ro_html->add( '<link rel="stylesheet" type="text/css" href="css/common.css">' ).
|
|
||||||
ro_html->add( '<meta http-equiv="content-type" content="text/html; charset=utf-8">' ). "#EC NOTEXT
|
ro_html->add( '<meta http-equiv="content-type" content="text/html; charset=utf-8">' ). "#EC NOTEXT
|
||||||
ro_html->add( '<meta http-equiv="X-UA-Compatible" content="IE=11,10,9,8" />' ). "#EC NOTEXT
|
ro_html->add( '<meta http-equiv="X-UA-Compatible" content="IE=11,10,9,8" />' ). "#EC NOTEXT
|
||||||
ro_html->add( '<script type="text/javascript" src="js/common.js"></script>' ). "#EC NOTEXT
|
|
||||||
ro_html->add( '</head>' ). "#EC NOTEXT
|
|
||||||
ro_html->add( '<body>' ). "#EC NOTEXT
|
|
||||||
|
|
||||||
ENDMETHOD. "render html header
|
ro_html->add( '<title>abapGit</title>' ). "#EC NOTEXT
|
||||||
|
ro_html->add( '<link rel="stylesheet" type="text/css" href="css/common.css">' ).
|
||||||
|
ro_html->add( '<script type="text/javascript" src="js/common.js"></script>' ). "#EC NOTEXT
|
||||||
|
|
||||||
|
ro_html->add( '</head>' ). "#EC NOTEXT
|
||||||
|
|
||||||
|
ENDMETHOD. "html_head
|
||||||
|
|
||||||
METHOD title.
|
METHOD title.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( '<div id="header">' ). "#EC NOTEXT
|
ro_html->add( '<div id="header">' ). "#EC NOTEXT
|
||||||
ro_html->add( '<table width="100%"><tr>' ). "#EC NOTEXT
|
ro_html->add( '<table class="w100"><tr>' ). "#EC NOTEXT
|
||||||
|
|
||||||
ro_html->add( '<td class="logo">' ). "#EC NOTEXT
|
ro_html->add( |<td class="logo">{
|
||||||
ro_html->add( |<a href="sapevent:{ gc_action-abapgit_home }">| ). "#EC NOTEXT
|
lcl_html=>a( iv_txt = '<img src="img/logo" alt="logo">'
|
||||||
ro_html->add( '<img src="img/logo">' ). "#EC NOTEXT
|
iv_act = gc_action-abapgit_home )
|
||||||
ro_html->add( '</a>' ). "#EC NOTEXT
|
}</td>| ). "#EC NOTEXT
|
||||||
ro_html->add( '</td>' ). "#EC NOTEXT
|
|
||||||
|
|
||||||
ro_html->add( '<td class="headpad"><span class="page_title">' ). "#EC NOTEXT
|
ro_html->add( |<td class="headpad"><span class="page_title"> ► {
|
||||||
ro_html->add( |► { iv_title }| ). "#EC NOTEXT
|
ms_control-page_title
|
||||||
ro_html->add( '</span></td>' ). "#EC NOTEXT
|
}</span></td>| ). "#EC NOTEXT
|
||||||
|
|
||||||
IF io_menu IS BOUND.
|
IF ms_control-page_menu IS BOUND.
|
||||||
ro_html->add( '<td class="headpad right">' ). "#EC NOTEXT
|
ro_html->add( '<td class="headpad right">' ). "#EC NOTEXT
|
||||||
ro_html->add( io_menu->render( ) ).
|
ro_html->add( ms_control-page_menu->render( ) ).
|
||||||
ro_html->add( '</td>' ). "#EC NOTEXT
|
ro_html->add( '</td>' ). "#EC NOTEXT
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
|
@ -264,47 +112,74 @@ CLASS lcl_gui_page_super IMPLEMENTATION.
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( '<div id="footer">' ). "#EC NOTEXT
|
ro_html->add( '<div id="footer">' ). "#EC NOTEXT
|
||||||
ro_html->add( '<img src="img/logo" >' ). "#EC NOTEXT
|
|
||||||
ro_html->add( '<table width="100%"><tr><td width="40%"></td><td>' ). "#EC NOTEXT
|
ro_html->add( '<img src="img/logo" alt="logo">' ). "#EC NOTEXT
|
||||||
ro_html->add( |<span class="version">{ gc_abap_version }</span>| ). "#EC NOTEXT
|
ro_html->add( '<table class="w100"><tr>' ). "#EC NOTEXT
|
||||||
ro_html->add( '</td><td id="debug-output" width="40%"></td></tr></table>' ). "#EC NOTEXT
|
|
||||||
|
ro_html->add( '<td class="w40"></td>' ). "#EC NOTEXT
|
||||||
|
ro_html->add( |<td><span class="version">{ gc_abap_version }</span></td>| ). "#EC NOTEXT
|
||||||
|
ro_html->add( '<td id="debug-output" class="w40"></td>' ). "#EC NOTEXT
|
||||||
|
|
||||||
|
ro_html->add( '</tr></table>' ). "#EC NOTEXT
|
||||||
ro_html->add( '</div>' ). "#EC NOTEXT
|
ro_html->add( '</div>' ). "#EC NOTEXT
|
||||||
|
|
||||||
|
ENDMETHOD. "footer
|
||||||
|
|
||||||
|
METHOD redirect.
|
||||||
|
|
||||||
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
|
ro_html->add( '<!DOCTYPE html>' ). "#EC NOTEXT
|
||||||
|
ro_html->add( '<html>' ). "#EC NOTEXT
|
||||||
|
ro_html->add( '<head>' ). "#EC NOTEXT
|
||||||
|
ro_html->add( |<meta http-equiv="refresh" content="0; url={
|
||||||
|
ms_control-redirect_url }">| ). "#EC NOTEXT
|
||||||
|
ro_html->add( '</head>'). "#EC NOTEXT
|
||||||
|
ro_html->add( '</html>'). "#EC NOTEXT
|
||||||
|
|
||||||
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD scripts.
|
||||||
|
ASSERT 1 = 1. " Dummy
|
||||||
|
ENDMETHOD. "scripts
|
||||||
|
|
||||||
|
METHOD lif_gui_page~on_event.
|
||||||
|
ev_state = gc_event_state-not_handled.
|
||||||
|
ENDMETHOD. "lif_gui_page~on_event
|
||||||
|
|
||||||
|
METHOD lif_gui_page~render.
|
||||||
|
|
||||||
|
DATA lo_script TYPE REF TO lcl_html.
|
||||||
|
|
||||||
|
" Redirect
|
||||||
|
IF ms_control-redirect_url IS NOT INITIAL.
|
||||||
|
ro_html = redirect( ).
|
||||||
|
RETURN.
|
||||||
|
ENDIF.
|
||||||
|
|
||||||
|
" Real page
|
||||||
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
|
ro_html->add( '<!DOCTYPE html>' ). "#EC NOTEXT
|
||||||
|
ro_html->add( '<html>' ). "#EC NOTEXT
|
||||||
|
ro_html->add( html_head( ) ).
|
||||||
|
ro_html->add( '<body>' ). "#EC NOTEXT
|
||||||
|
ro_html->add( title( ) ).
|
||||||
|
ro_html->add( render_content( ) ).
|
||||||
|
ro_html->add( footer( ) ).
|
||||||
ro_html->add( '</body>' ). "#EC NOTEXT
|
ro_html->add( '</body>' ). "#EC NOTEXT
|
||||||
|
|
||||||
IF io_include_script IS BOUND.
|
lo_script = scripts( ).
|
||||||
|
|
||||||
|
IF lo_script IS BOUND AND lo_script->mv_html IS NOT INITIAL.
|
||||||
ro_html->add( '<script type="text/javascript">' ).
|
ro_html->add( '<script type="text/javascript">' ).
|
||||||
ro_html->add( io_include_script ).
|
ro_html->add( lo_script ).
|
||||||
ro_html->add( 'debugOutput("js: OK");' ).
|
ro_html->add( 'debugOutput("js: OK");' ).
|
||||||
ro_html->add( '</script>' ).
|
ro_html->add( '</script>' ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ro_html->add( '</html>'). "#EC NOTEXT
|
ro_html->add( '</html>'). "#EC NOTEXT
|
||||||
|
|
||||||
ENDMETHOD. "render html footer & logo
|
ENDMETHOD. " lif_gui_page~render.
|
||||||
|
|
||||||
METHOD render_error.
|
ENDCLASS. "lcl_gui_page
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
|
||||||
|
|
||||||
ro_html->add( '<div class="dummydiv attention">' ).
|
|
||||||
ro_html->add( |Error: { ix_error->mv_text }| ).
|
|
||||||
ro_html->add( '</div>' ).
|
|
||||||
|
|
||||||
ENDMETHOD. "render_error
|
|
||||||
|
|
||||||
METHOD redirect.
|
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
|
||||||
|
|
||||||
ro_html->add( '<!DOCTYPE html>' ). "#EC NOTEXT
|
|
||||||
ro_html->add( '<html><head>' ). "#EC NOTEXT
|
|
||||||
ro_html->add( |<meta http-equiv="refresh" content="0; url={ iv_url }">| ). "#EC NOTEXT
|
|
||||||
ro_html->add( '</head></html>'). "#EC NOTEXT
|
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
METHOD lif_gui_page~on_event.
|
|
||||||
ev_state = gc_event_state-not_handled.
|
|
||||||
ENDMETHOD. "lif_gui_page~on_event
|
|
||||||
|
|
||||||
ENDCLASS.
|
|
|
@ -3,12 +3,14 @@
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_page_background_run DEFINITION FINAL
|
CLASS lcl_gui_page_background_run DEFINITION FINAL
|
||||||
INHERITING FROM lcl_gui_page_super.
|
INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS:
|
METHODS constructor.
|
||||||
lif_gui_page~on_event REDEFINITION,
|
METHODS lif_gui_page~on_event REDEFINITION.
|
||||||
lif_gui_page~render REDEFINITION.
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA: mt_text TYPE TABLE OF string.
|
DATA: mt_text TYPE TABLE OF string.
|
||||||
|
@ -19,6 +21,11 @@ ENDCLASS.
|
||||||
|
|
||||||
CLASS lcl_gui_page_background_run IMPLEMENTATION.
|
CLASS lcl_gui_page_background_run IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD constructor.
|
||||||
|
super->constructor( ).
|
||||||
|
ms_control-page_title = 'BACKGROUND_RUN'.
|
||||||
|
ENDMETHOD. " constructor.
|
||||||
|
|
||||||
METHOD lif_gui_page~on_event.
|
METHOD lif_gui_page~on_event.
|
||||||
RETURN.
|
RETURN.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
@ -47,46 +54,44 @@ CLASS lcl_gui_page_background_run IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
DATA: lv_text LIKE LINE OF mt_text.
|
DATA: lv_text LIKE LINE OF mt_text.
|
||||||
|
|
||||||
|
|
||||||
run( ).
|
run( ).
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( 'BACKGROUND_RUN' ) ).
|
|
||||||
ro_html->add( '<div id="toc">' ).
|
ro_html->add( '<div id="toc">' ).
|
||||||
LOOP AT mt_text INTO lv_text.
|
LOOP AT mt_text INTO lv_text.
|
||||||
ro_html->add( '<pre>' && lv_text && '</pre><br>' ).
|
ro_html->add( '<pre>' && lv_text && '</pre><br>' ).
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
ro_html->add( footer( ) ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS lcl_gui_page_background DEFINITION FINAL
|
CLASS lcl_gui_page_background DEFINITION FINAL
|
||||||
INHERITING FROM lcl_gui_page_super.
|
INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS:
|
METHODS:
|
||||||
constructor
|
constructor IMPORTING iv_key TYPE lcl_persistence_repo=>ty_repo-key,
|
||||||
IMPORTING
|
lif_gui_page~on_event REDEFINITION.
|
||||||
iv_key TYPE lcl_persistence_repo=>ty_repo-key,
|
|
||||||
lif_gui_page~on_event REDEFINITION,
|
PROTECTED SECTION.
|
||||||
lif_gui_page~render REDEFINITION.
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA:
|
DATA:
|
||||||
mv_key TYPE lcl_persistence_repo=>ty_repo-key.
|
mv_key TYPE lcl_persistence_repo=>ty_repo-key.
|
||||||
|
|
||||||
METHODS:
|
METHODS:
|
||||||
|
build_menu
|
||||||
|
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar,
|
||||||
render_data
|
render_data
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
@ -94,10 +99,21 @@ ENDCLASS.
|
||||||
CLASS lcl_gui_page_background IMPLEMENTATION.
|
CLASS lcl_gui_page_background IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
super->constructor( ).
|
super->constructor( ).
|
||||||
|
|
||||||
mv_key = iv_key.
|
mv_key = iv_key.
|
||||||
|
ms_control-page_title = 'BACKGROUND'.
|
||||||
|
ms_control-page_menu = build_menu( ).
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
|
METHOD build_menu.
|
||||||
|
CREATE OBJECT ro_menu.
|
||||||
|
ro_menu->add( iv_txt = 'Run background logic'
|
||||||
|
iv_act = gc_action-go_background_run ) ##NO_TEXT.
|
||||||
|
ENDMETHOD. "build_menu
|
||||||
|
|
||||||
METHOD lif_gui_page~on_event.
|
METHOD lif_gui_page~on_event.
|
||||||
|
|
||||||
DATA ls_bg_task TYPE lcl_persistence_background=>ty_background.
|
DATA ls_bg_task TYPE lcl_persistence_background=>ty_background.
|
||||||
|
@ -162,7 +178,7 @@ CLASS lcl_gui_page_background IMPLEMENTATION.
|
||||||
lv_afixed = ' checked' ##NO_TEXT.
|
lv_afixed = ' checked' ##NO_TEXT.
|
||||||
ENDCASE.
|
ENDCASE.
|
||||||
|
|
||||||
ro_html->add( render_repo_top( lo_repo ) ).
|
ro_html->add( lcl_gui_chunk_lib=>render_repo_top( lo_repo ) ).
|
||||||
ro_html->add( '<br>' ).
|
ro_html->add( '<br>' ).
|
||||||
|
|
||||||
ro_html->add( '<u>Method</u><br>' ) ##NO_TEXT.
|
ro_html->add( '<u>Method</u><br>' ) ##NO_TEXT.
|
||||||
|
@ -222,22 +238,12 @@ CLASS lcl_gui_page_background IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
DATA lo_toolbar TYPE REF TO lcl_html_toolbar.
|
|
||||||
|
|
||||||
|
|
||||||
CREATE OBJECT lo_toolbar.
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
lo_toolbar->add( iv_txt = 'Run background logic'
|
|
||||||
iv_act = gc_action-go_background_run ) ##NO_TEXT.
|
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( iv_title = 'BACKGROUND' io_menu = lo_toolbar ) ).
|
|
||||||
ro_html->add( render_data( ) ).
|
ro_html->add( render_data( ) ).
|
||||||
ro_html->add( footer( ) ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
|
@ -302,15 +302,17 @@ ENDCLASS.
|
||||||
|
|
||||||
***********************
|
***********************
|
||||||
|
|
||||||
CLASS lcl_gui_page_branch_overview DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_branch_overview DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS:
|
METHODS:
|
||||||
constructor
|
constructor
|
||||||
IMPORTING io_repo TYPE REF TO lcl_repo_online
|
IMPORTING io_repo TYPE REF TO lcl_repo_online
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
lif_gui_page~on_event REDEFINITION,
|
lif_gui_page~on_event REDEFINITION.
|
||||||
lif_gui_page~render REDEFINITION.
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA: mo_repo TYPE REF TO lcl_repo_online,
|
DATA: mo_repo TYPE REF TO lcl_repo_online,
|
||||||
|
@ -333,13 +335,13 @@ CLASS lcl_gui_page_branch_overview DEFINITION FINAL INHERITING FROM lcl_gui_page
|
||||||
refresh
|
refresh
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
body
|
body
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
form_select
|
form_select
|
||||||
IMPORTING iv_name TYPE string
|
IMPORTING iv_name TYPE string
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html,
|
||||||
render_merge
|
render_merge
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
decode_merge
|
decode_merge
|
||||||
IMPORTING it_postdata TYPE cnht_post_data_tab
|
IMPORTING it_postdata TYPE cnht_post_data_tab
|
||||||
|
@ -360,6 +362,8 @@ CLASS lcl_gui_page_branch_overview IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
super->constructor( ).
|
super->constructor( ).
|
||||||
|
ms_control-page_title = 'BRANCH_OVERVIEW'.
|
||||||
|
ms_control-page_menu = build_menu( ).
|
||||||
mo_repo = io_repo.
|
mo_repo = io_repo.
|
||||||
refresh( ).
|
refresh( ).
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
@ -416,7 +420,7 @@ CLASS lcl_gui_page_branch_overview IMPLEMENTATION.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( render_repo_top(
|
ro_html->add( lcl_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_show_branch = abap_false ) ).
|
iv_show_branch = abap_false ) ).
|
||||||
|
@ -577,17 +581,14 @@ CLASS lcl_gui_page_branch_overview IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( iv_title = 'BRANCH_OVERVIEW' io_menu = build_menu( ) ) ).
|
|
||||||
ro_html->add( '<div id="toc">' ).
|
ro_html->add( '<div id="toc">' ).
|
||||||
ro_html->add( body( ) ).
|
ro_html->add( body( ) ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
ro_html->add( footer( ) ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
|
@ -2,7 +2,7 @@
|
||||||
*& Include ZABAPGIT_PAGE_COMMIT
|
*& Include ZABAPGIT_PAGE_COMMIT
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_page_commit DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_commit DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -16,24 +16,26 @@ CLASS lcl_gui_page_commit DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
||||||
IMPORTING io_repo TYPE REF TO lcl_repo_online
|
IMPORTING io_repo TYPE REF TO lcl_repo_online
|
||||||
io_stage TYPE REF TO lcl_stage
|
io_stage TYPE REF TO lcl_stage
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
lif_gui_page~render REDEFINITION,
|
|
||||||
lif_gui_page~on_event REDEFINITION.
|
lif_gui_page~on_event REDEFINITION.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS:
|
||||||
|
render_content REDEFINITION,
|
||||||
|
scripts REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA: mo_repo TYPE REF TO lcl_repo_online,
|
DATA: mo_repo TYPE REF TO lcl_repo_online,
|
||||||
mo_stage TYPE REF TO lcl_stage.
|
mo_stage TYPE REF TO lcl_stage.
|
||||||
|
|
||||||
METHODS:
|
METHODS:
|
||||||
render_menu
|
render_menu
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html,
|
||||||
render_stage
|
render_stage
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
render_form
|
render_form
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception.
|
||||||
scripts
|
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
|
@ -44,6 +46,8 @@ CLASS lcl_gui_page_commit IMPLEMENTATION.
|
||||||
|
|
||||||
mo_repo = io_repo.
|
mo_repo = io_repo.
|
||||||
mo_stage = io_stage.
|
mo_stage = io_stage.
|
||||||
|
|
||||||
|
ms_control-page_title = 'COMMIT'.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_gui_page~on_event.
|
METHOD lif_gui_page~on_event.
|
||||||
|
@ -68,15 +72,12 @@ CLASS lcl_gui_page_commit IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( 'COMMIT' ) ).
|
|
||||||
|
|
||||||
ro_html->add( '<div class="repo">' ).
|
ro_html->add( '<div class="repo">' ).
|
||||||
ro_html->add( render_repo_top(
|
ro_html->add( lcl_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_stage->get_branch_name( ) ) ).
|
iv_branch = mo_stage->get_branch_name( ) ) ).
|
||||||
|
@ -86,9 +87,7 @@ CLASS lcl_gui_page_commit IMPLEMENTATION.
|
||||||
ro_html->add( render_stage( ) ).
|
ro_html->add( render_stage( ) ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
ro_html->add( footer( io_include_script = scripts( ) ) ).
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDMETHOD. "lif_gui_page~render
|
|
||||||
|
|
||||||
METHOD render_stage.
|
METHOD render_stage.
|
||||||
|
|
||||||
|
@ -201,7 +200,7 @@ CLASS lcl_gui_page_commit IMPLEMENTATION.
|
||||||
lo_toolbar->add( iv_act = 'submitFormById(''commit_form'');'
|
lo_toolbar->add( iv_act = 'submitFormById(''commit_form'');'
|
||||||
iv_txt = 'Commit'
|
iv_txt = 'Commit'
|
||||||
iv_typ = gc_action_type-onclick
|
iv_typ = gc_action_type-onclick
|
||||||
iv_opt = gc_html_opt-emphas ) ##NO_TEXT.
|
iv_opt = gc_html_opt-strong ) ##NO_TEXT.
|
||||||
|
|
||||||
lo_toolbar->add( iv_act = 'commit_cancel'
|
lo_toolbar->add( iv_act = 'commit_cancel'
|
||||||
iv_txt = 'Cancel'
|
iv_txt = 'Cancel'
|
||||||
|
|
|
@ -2,14 +2,15 @@
|
||||||
*& Include ZABAPGIT_PAGE_DB
|
*& Include ZABAPGIT_PAGE_DB
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_page_db_display DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_db_display DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS lif_gui_page~render REDEFINITION.
|
|
||||||
|
|
||||||
METHODS: constructor
|
METHODS: constructor
|
||||||
IMPORTING is_key TYPE lcl_persistence_db=>ty_content.
|
IMPORTING is_key TYPE lcl_persistence_db=>ty_content.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA: ms_key TYPE lcl_persistence_db=>ty_content.
|
DATA: ms_key TYPE lcl_persistence_db=>ty_content.
|
||||||
|
|
||||||
|
@ -20,9 +21,10 @@ CLASS lcl_gui_page_db_display IMPLEMENTATION.
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
super->constructor( ).
|
super->constructor( ).
|
||||||
ms_key = is_key.
|
ms_key = is_key.
|
||||||
|
ms_control-page_title = 'CONFIG DISPLAY'.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
DATA: lv_data TYPE lcl_persistence_db=>ty_content-data_str,
|
DATA: lv_data TYPE lcl_persistence_db=>ty_content-data_str,
|
||||||
ls_action TYPE lcl_persistence_db=>ty_content,
|
ls_action TYPE lcl_persistence_db=>ty_content,
|
||||||
|
@ -44,8 +46,6 @@ CLASS lcl_gui_page_db_display IMPLEMENTATION.
|
||||||
format = cl_abap_format=>e_html_attr ).
|
format = cl_abap_format=>e_html_attr ).
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( 'CONFIG DISPLAY' ) ).
|
|
||||||
|
|
||||||
ro_html->add( '<div class="db_entry">' ).
|
ro_html->add( '<div class="db_entry">' ).
|
||||||
ro_html->add( '<table class="toolbar"><tr><td>' ).
|
ro_html->add( '<table class="toolbar"><tr><td>' ).
|
||||||
|
@ -56,26 +56,25 @@ CLASS lcl_gui_page_db_display IMPLEMENTATION.
|
||||||
| <td>{ ms_key-value }</td></tr></table>| ).
|
| <td>{ ms_key-value }</td></tr></table>| ).
|
||||||
|
|
||||||
ro_html->add( '</td><td class="right">' ).
|
ro_html->add( '</td><td class="right">' ).
|
||||||
ro_html->add_anchor( iv_txt = 'Edit' iv_act = |{ gc_action-db_edit }?{ lv_action }| ).
|
ro_html->add_a( iv_txt = 'Edit' iv_act = |{ gc_action-db_edit }?{ lv_action }| ).
|
||||||
ro_html->add( '</td></tr></table>' ).
|
ro_html->add( '</td></tr></table>' ).
|
||||||
|
|
||||||
ro_html->add( |<pre>{ lv_data }</pre>| ).
|
ro_html->add( |<pre>{ lv_data }</pre>| ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
ro_html->add( footer( ) ).
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS lcl_gui_page_db_edit DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_db_edit DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS lif_gui_page~render REDEFINITION.
|
|
||||||
|
|
||||||
METHODS: constructor
|
METHODS: constructor
|
||||||
IMPORTING is_key TYPE lcl_persistence_db=>ty_content.
|
IMPORTING is_key TYPE lcl_persistence_db=>ty_content.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA: ms_key TYPE lcl_persistence_db=>ty_content.
|
DATA: ms_key TYPE lcl_persistence_db=>ty_content.
|
||||||
|
|
||||||
|
@ -86,9 +85,10 @@ CLASS lcl_gui_page_db_edit IMPLEMENTATION.
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
super->constructor( ).
|
super->constructor( ).
|
||||||
ms_key = is_key.
|
ms_key = is_key.
|
||||||
|
ms_control-page_title = 'CONFIG EDIT'.
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
DATA: lv_data TYPE lcl_persistence_db=>ty_content-data_str,
|
DATA: lv_data TYPE lcl_persistence_db=>ty_content-data_str,
|
||||||
lo_toolbar TYPE REF TO lcl_html_toolbar.
|
lo_toolbar TYPE REF TO lcl_html_toolbar.
|
||||||
|
@ -112,9 +112,6 @@ CLASS lcl_gui_page_db_edit IMPLEMENTATION.
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
CREATE OBJECT lo_toolbar.
|
CREATE OBJECT lo_toolbar.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( 'CONFIG EDIT' ) ).
|
|
||||||
|
|
||||||
ro_html->add( '<div class="db_entry">' ).
|
ro_html->add( '<div class="db_entry">' ).
|
||||||
|
|
||||||
" Banners
|
" Banners
|
||||||
|
@ -135,7 +132,7 @@ CLASS lcl_gui_page_db_edit IMPLEMENTATION.
|
||||||
lo_toolbar->add( iv_act = 'submitFormById(''db_form'');'
|
lo_toolbar->add( iv_act = 'submitFormById(''db_form'');'
|
||||||
iv_txt = 'Save'
|
iv_txt = 'Save'
|
||||||
iv_typ = gc_action_type-onclick
|
iv_typ = gc_action_type-onclick
|
||||||
iv_opt = gc_html_opt-emphas ) ##NO_TEXT.
|
iv_opt = gc_html_opt-strong ) ##NO_TEXT.
|
||||||
|
|
||||||
ro_html->add( '<div class="paddings">' ).
|
ro_html->add( '<div class="paddings">' ).
|
||||||
ro_html->add( lo_toolbar->render( ) ).
|
ro_html->add( lo_toolbar->render( ) ).
|
||||||
|
@ -143,16 +140,17 @@ CLASS lcl_gui_page_db_edit IMPLEMENTATION.
|
||||||
|
|
||||||
ro_html->add( '</div>' ). "db_entry
|
ro_html->add( '</div>' ). "db_entry
|
||||||
|
|
||||||
ro_html->add( footer( ) ).
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS lcl_gui_page_db DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_db DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS lif_gui_page~render REDEFINITION.
|
METHODS constructor.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS explain_content
|
METHODS explain_content
|
||||||
|
@ -160,12 +158,16 @@ CLASS lcl_gui_page_db DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
||||||
RETURNING VALUE(rv_text) TYPE string
|
RETURNING VALUE(rv_text) TYPE string
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
|
||||||
CLASS lcl_gui_page_db IMPLEMENTATION.
|
CLASS lcl_gui_page_db IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD constructor.
|
||||||
|
super->constructor( ).
|
||||||
|
ms_control-page_title = 'DATABASE PERSISTENCY'.
|
||||||
|
ENDMETHOD. " constructor.
|
||||||
|
|
||||||
|
METHOD render_content.
|
||||||
|
|
||||||
DATA: lt_data TYPE lcl_persistence_db=>tt_content,
|
DATA: lt_data TYPE lcl_persistence_db=>tt_content,
|
||||||
lv_action TYPE string,
|
lv_action TYPE string,
|
||||||
|
@ -179,9 +181,6 @@ CLASS lcl_gui_page_db IMPLEMENTATION.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( 'DATABASE PERSISTENCY' ) ).
|
|
||||||
|
|
||||||
ro_html->add( '<div class="db_list">' ).
|
ro_html->add( '<div class="db_list">' ).
|
||||||
ro_html->add( '<table class="db_tab">' ).
|
ro_html->add( '<table class="db_tab">' ).
|
||||||
|
|
||||||
|
@ -220,9 +219,7 @@ CLASS lcl_gui_page_db IMPLEMENTATION.
|
||||||
ro_html->add( '</table>' ).
|
ro_html->add( '</table>' ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
ro_html->add( footer( ) ).
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDMETHOD. "lif_gui_page~render
|
|
||||||
|
|
||||||
METHOD explain_content.
|
METHOD explain_content.
|
||||||
DATA: lv_result TYPE match_result,
|
DATA: lv_result TYPE match_result,
|
||||||
|
@ -241,9 +238,10 @@ CLASS lcl_gui_page_db IMPLEMENTATION.
|
||||||
FIND FIRST OCCURRENCE OF REGEX '<OFFLINE/>'
|
FIND FIRST OCCURRENCE OF REGEX '<OFFLINE/>'
|
||||||
IN is_data-data_str IGNORING CASE MATCH COUNT lv_cnt.
|
IN is_data-data_str IGNORING CASE MATCH COUNT lv_cnt.
|
||||||
IF lv_cnt > 0.
|
IF lv_cnt > 0.
|
||||||
rv_text = |<b>On-line</b>, Name: <b>{ lcl_url=>name( rv_text ) }</b>|.
|
rv_text = |<strong>On-line</strong>, Name: <strong>{
|
||||||
|
lcl_url=>name( rv_text ) }</strong>|.
|
||||||
ELSE.
|
ELSE.
|
||||||
rv_text = |Off-line, Name: <b>{ rv_text }</b>|.
|
rv_text = |Off-line, Name: <strong>{ rv_text }</strong>|.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
WHEN 'BACKGROUND'.
|
WHEN 'BACKGROUND'.
|
||||||
|
|
|
@ -2,15 +2,18 @@
|
||||||
*& Include ZABAPGIT_PAGE_DEBUG
|
*& Include ZABAPGIT_PAGE_DEBUG
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_page_debuginfo DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_debuginfo DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS lif_gui_page~render REDEFINITION.
|
METHODS constructor.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS:
|
||||||
|
render_content REDEFINITION,
|
||||||
|
scripts REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS scripts
|
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
|
||||||
METHODS render_debug_info
|
METHODS render_debug_info
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS render_supported_object_types
|
METHODS render_supported_object_types
|
||||||
RETURNING VALUE(rv_html) TYPE string.
|
RETURNING VALUE(rv_html) TYPE string.
|
||||||
|
|
||||||
|
@ -18,21 +21,21 @@ ENDCLASS. "lcl_gui_page_debuginfo
|
||||||
|
|
||||||
CLASS lcl_gui_page_debuginfo IMPLEMENTATION.
|
CLASS lcl_gui_page_debuginfo IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD constructor.
|
||||||
|
super->constructor( ).
|
||||||
|
ms_control-page_title = 'DEBUG INFO'.
|
||||||
|
ENDMETHOD. " constructor.
|
||||||
|
|
||||||
|
METHOD render_content.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( 'DEBUG INFO' ) ).
|
|
||||||
|
|
||||||
ro_html->add( '<div id="debug_info" class="debug_container">' ).
|
ro_html->add( '<div id="debug_info" class="debug_container">' ).
|
||||||
ro_html->add( render_debug_info( ) ).
|
ro_html->add( render_debug_info( ) ).
|
||||||
ro_html->add( render_supported_object_types( ) ).
|
ro_html->add( render_supported_object_types( ) ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
ro_html->add( footer( io_include_script = scripts( ) ) ).
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
METHOD render_debug_info.
|
METHOD render_debug_info.
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
*& Include ZABAPGIT_PAGE_DIFF
|
*& Include ZABAPGIT_PAGE_DIFF
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_page_diff DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_diff DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
|
@ -28,26 +28,27 @@ CLASS lcl_gui_page_diff DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
||||||
is_object TYPE ty_item OPTIONAL
|
is_object TYPE ty_item OPTIONAL
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
METHODS lif_gui_page~render REDEFINITION.
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA: mt_diff_files TYPE tt_file_diff.
|
DATA: mt_diff_files TYPE tt_file_diff.
|
||||||
|
|
||||||
METHODS render_diff
|
METHODS render_diff
|
||||||
IMPORTING is_diff TYPE ty_file_diff
|
IMPORTING is_diff TYPE ty_file_diff
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS render_diff_head
|
METHODS render_diff_head
|
||||||
IMPORTING is_diff TYPE ty_file_diff
|
IMPORTING is_diff TYPE ty_file_diff
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS render_table_head
|
METHODS render_table_head
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS render_lines
|
METHODS render_lines
|
||||||
IMPORTING is_diff TYPE ty_file_diff
|
IMPORTING is_diff TYPE ty_file_diff
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS render_beacon
|
METHODS render_beacon
|
||||||
IMPORTING is_diff_line TYPE lcl_diff=>ty_diff
|
IMPORTING is_diff_line TYPE lcl_diff=>ty_diff
|
||||||
is_diff TYPE ty_file_diff
|
is_diff TYPE ty_file_diff
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS get_line_hl
|
METHODS get_line_hl
|
||||||
IMPORTING iv_mod TYPE char1
|
IMPORTING iv_mod TYPE char1
|
||||||
iv_result TYPE lcl_diff=>ty_diff-result
|
iv_result TYPE lcl_diff=>ty_diff-result
|
||||||
|
@ -73,6 +74,7 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
|
||||||
FIELD-SYMBOLS: <ls_status> LIKE LINE OF lt_status.
|
FIELD-SYMBOLS: <ls_status> LIKE LINE OF lt_status.
|
||||||
|
|
||||||
super->constructor( ).
|
super->constructor( ).
|
||||||
|
ms_control-page_title = 'DIFF'.
|
||||||
|
|
||||||
ASSERT is_file IS INITIAL OR is_object IS INITIAL. " just one passed
|
ASSERT is_file IS INITIAL OR is_object IS INITIAL. " just one passed
|
||||||
|
|
||||||
|
@ -174,7 +176,7 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
|
||||||
ENDMETHOD. "append_diff
|
ENDMETHOD. "append_diff
|
||||||
|
|
||||||
METHOD render_diff_head.
|
METHOD render_diff_head.
|
||||||
DATA: lo_html TYPE REF TO lcl_html_helper,
|
DATA: lo_html TYPE REF TO lcl_html,
|
||||||
ls_stats TYPE lcl_diff=>ty_count.
|
ls_stats TYPE lcl_diff=>ty_count.
|
||||||
|
|
||||||
CREATE OBJECT lo_html.
|
CREATE OBJECT lo_html.
|
||||||
|
@ -191,7 +193,8 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
|
||||||
lo_html->add( |<span class="diff_banner diff_del">- { ls_stats-delete }</span>| ).
|
lo_html->add( |<span class="diff_banner diff_del">- { ls_stats-delete }</span>| ).
|
||||||
lo_html->add( |<span class="diff_banner diff_upd">~ { ls_stats-update }</span>| ).
|
lo_html->add( |<span class="diff_banner diff_upd">~ { ls_stats-update }</span>| ).
|
||||||
lo_html->add( |<span class="diff_name">{ is_diff-filename }</span>| ). "#EC NOTEXT
|
lo_html->add( |<span class="diff_name">{ is_diff-filename }</span>| ). "#EC NOTEXT
|
||||||
lo_html->add( render_item_state( iv1 = is_diff-lstate iv2 = is_diff-rstate ) ).
|
lo_html->add( lcl_gui_chunk_lib=>render_item_state( iv1 = is_diff-lstate
|
||||||
|
iv2 = is_diff-rstate ) ).
|
||||||
lo_html->add( '</div>' ). "#EC NOTEXT
|
lo_html->add( '</div>' ). "#EC NOTEXT
|
||||||
|
|
||||||
ro_html = lo_html.
|
ro_html = lo_html.
|
||||||
|
@ -221,7 +224,7 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
|
||||||
|
|
||||||
" Content
|
" Content
|
||||||
ro_html->add( '<div class="diff_content">' ). "#EC NOTEXT
|
ro_html->add( '<div class="diff_content">' ). "#EC NOTEXT
|
||||||
ro_html->add( '<table width="100%" class="diff_tab">' ). "#EC NOTEXT
|
ro_html->add( '<table class="diff_tab">' ). "#EC NOTEXT
|
||||||
ro_html->add( render_table_head( ) ).
|
ro_html->add( render_table_head( ) ).
|
||||||
ro_html->add( render_lines( is_diff ) ).
|
ro_html->add( render_lines( is_diff ) ).
|
||||||
ro_html->add( '</table>' ). "#EC NOTEXT
|
ro_html->add( '</table>' ). "#EC NOTEXT
|
||||||
|
@ -342,15 +345,12 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD. " get_line_hl.
|
ENDMETHOD. " get_line_hl.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
DATA ls_diff_file LIKE LINE OF mt_diff_files.
|
DATA ls_diff_file LIKE LINE OF mt_diff_files.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( 'DIFF' ) ).
|
|
||||||
|
|
||||||
LOOP AT mt_diff_files INTO ls_diff_file.
|
LOOP AT mt_diff_files INTO ls_diff_file.
|
||||||
lcl_progress=>show( iv_key = 'Diff'
|
lcl_progress=>show( iv_key = 'Diff'
|
||||||
iv_current = sy-tabix
|
iv_current = sy-tabix
|
||||||
|
@ -360,8 +360,6 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
|
||||||
ro_html->add( render_diff( ls_diff_file ) ).
|
ro_html->add( render_diff( ls_diff_file ) ).
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ro_html->add( footer( ) ).
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
ENDCLASS. "lcl_gui_page_diff
|
ENDCLASS. "lcl_gui_page_diff
|
|
@ -2,19 +2,28 @@
|
||||||
*& Include ZABAPGIT_PAGE_EXPLORE
|
*& Include ZABAPGIT_PAGE_EXPLORE
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_page_explore DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_explore DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS lif_gui_page~render REDEFINITION.
|
|
||||||
|
CONSTANTS c_explore_url TYPE string
|
||||||
|
VALUE 'http://larshp.github.io/abapGit/explore.html'.
|
||||||
|
|
||||||
|
METHODS constructor.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
ENDCLASS. "lcl_gui_page_explore DEFINITION
|
ENDCLASS. "lcl_gui_page_explore DEFINITION
|
||||||
|
|
||||||
CLASS lcl_gui_page_explore IMPLEMENTATION.
|
CLASS lcl_gui_page_explore IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD constructor.
|
||||||
|
super->constructor( ).
|
||||||
|
ms_control-redirect_url = c_explore_url.
|
||||||
|
ENDMETHOD. "constructor
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
METHOD render_content.
|
||||||
ro_html->add( redirect( 'http://larshp.github.io/abapGit/explore.html' ) ).
|
ASSERT 1 = 1. " Dummy
|
||||||
|
ENDMETHOD. "render_content.
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
ENDCLASS. "lcl_gui_page_explore IMPLEMENTATION
|
ENDCLASS. "lcl_gui_page_explore IMPLEMENTATION
|
|
@ -2,15 +2,17 @@
|
||||||
*& Include ZABAPGIT_PAGE_MAIN
|
*& Include ZABAPGIT_PAGE_MAIN
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_page_main DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_main DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS:
|
METHODS:
|
||||||
constructor
|
constructor
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
lif_gui_page~render REDEFINITION,
|
|
||||||
lif_gui_page~on_event REDEFINITION.
|
lif_gui_page~on_event REDEFINITION.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
CONSTANTS: BEGIN OF c_actions,
|
CONSTANTS: BEGIN OF c_actions,
|
||||||
show TYPE string VALUE 'show' ##NO_TEXT,
|
show TYPE string VALUE 'show' ##NO_TEXT,
|
||||||
|
@ -27,16 +29,16 @@ CLASS lcl_gui_page_main DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
render_toc
|
render_toc
|
||||||
IMPORTING it_repo_list TYPE lcl_repo_srv=>ty_repo_tt
|
IMPORTING it_repo_list TYPE lcl_repo_srv=>ty_repo_tt
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
build_main_menu
|
build_main_menu
|
||||||
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar,
|
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar,
|
||||||
render_explore
|
render_explore
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
render_repo
|
render_repo
|
||||||
IMPORTING io_repo TYPE REF TO lcl_repo
|
IMPORTING io_repo TYPE REF TO lcl_repo
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
||||||
|
@ -46,6 +48,8 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
super->constructor( ).
|
super->constructor( ).
|
||||||
|
ms_control-page_title = 'HOME'.
|
||||||
|
ms_control-page_menu = build_main_menu( ).
|
||||||
ENDMETHOD. " constructor
|
ENDMETHOD. " constructor
|
||||||
|
|
||||||
METHOD lif_gui_page~on_event.
|
METHOD lif_gui_page~on_event.
|
||||||
|
@ -112,7 +116,7 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
* RENDERING
|
* RENDERING
|
||||||
**********************************************************************
|
**********************************************************************
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
DATA: lt_repos TYPE lcl_repo_srv=>ty_repo_tt,
|
DATA: lt_repos TYPE lcl_repo_srv=>ty_repo_tt,
|
||||||
lx_error TYPE REF TO lcx_exception,
|
lx_error TYPE REF TO lcx_exception,
|
||||||
|
@ -123,14 +127,10 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( iv_title = 'HOME'
|
|
||||||
io_menu = build_main_menu( ) ) ).
|
|
||||||
|
|
||||||
TRY.
|
TRY.
|
||||||
lt_repos = lcl_app=>repo_srv( )->list( ).
|
lt_repos = lcl_app=>repo_srv( )->list( ).
|
||||||
CATCH lcx_exception INTO lx_error.
|
CATCH lcx_exception INTO lx_error.
|
||||||
ro_html->add( render_error( lx_error ) ).
|
ro_html->add( lcl_gui_chunk_lib=>render_error( ix_error = lx_error ) ).
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ro_html->add( render_toc( lt_repos ) ).
|
ro_html->add( render_toc( lt_repos ) ).
|
||||||
|
@ -139,15 +139,13 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
ro_html->add( render_explore( ) ).
|
ro_html->add( render_explore( ) ).
|
||||||
ELSEIF mv_show IS INITIAL.
|
ELSEIF mv_show IS INITIAL.
|
||||||
CREATE OBJECT lo_tutorial.
|
CREATE OBJECT lo_tutorial.
|
||||||
ro_html->add( lo_tutorial->lif_gui_page~render( ) ).
|
ro_html->add( lo_tutorial->render( ) ).
|
||||||
ELSE.
|
ELSE.
|
||||||
lo_repo = lcl_app=>repo_srv( )->get( mv_show ).
|
lo_repo = lcl_app=>repo_srv( )->get( mv_show ).
|
||||||
ro_html->add( render_repo( lo_repo ) ).
|
ro_html->add( render_repo( lo_repo ) ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ro_html->add( footer( ) ).
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDMETHOD. "render
|
|
||||||
|
|
||||||
METHOD retrieve_active_repo.
|
METHOD retrieve_active_repo.
|
||||||
|
|
||||||
|
@ -235,7 +233,7 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
LOOP AT it_repo_list INTO lo_repo.
|
LOOP AT it_repo_list INTO lo_repo.
|
||||||
lv_key = lo_repo->get_key( ).
|
lv_key = lo_repo->get_key( ).
|
||||||
IF lv_key = mv_show.
|
IF lv_key = mv_show.
|
||||||
lv_opt = gc_html_opt-emphas.
|
lv_opt = gc_html_opt-strong.
|
||||||
ELSE.
|
ELSE.
|
||||||
CLEAR lv_opt.
|
CLEAR lv_opt.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -256,9 +254,9 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
IF lo_repo->is_offline( ) = abap_true.
|
IF lo_repo->is_offline( ) = abap_true.
|
||||||
lv_icon = '<img src="img/repo_offline">'.
|
lv_icon = 'repo_offline'.
|
||||||
ELSE.
|
ELSE.
|
||||||
lv_icon = '<img src="img/repo_online">'.
|
lv_icon = 'repo_online'.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
lo_allbar->add( iv_txt = lv_repo_title
|
lo_allbar->add( iv_txt = lv_repo_title
|
||||||
|
@ -279,22 +277,24 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
|
|
||||||
**********************************************************************
|
**********************************************************************
|
||||||
|
|
||||||
ro_html->add( '<table width="100%"><tr>' ).
|
ro_html->add( '<table class="w100"><tr>' ).
|
||||||
ro_html->add( '<td class="pad-sides"><img src="img/star"></td>' ).
|
ro_html->add( |<td class="pad-sides">{
|
||||||
|
lcl_html=>icon( iv_name = 'star' iv_alt = 'Favs' iv_hint = 'Favorites' )
|
||||||
|
}</td>| ).
|
||||||
|
|
||||||
ro_html->add( '<td class="pad-sides" width="100%">' ). " Maximize width
|
ro_html->add( '<td class="pad-sides w100">' ). " Maximize width
|
||||||
IF lo_favbar->count( ) > 0.
|
IF lo_favbar->count( ) > 0.
|
||||||
ro_html->add( lo_favbar->render( iv_sort = abap_true ) ).
|
ro_html->add( lo_favbar->render( iv_sort = abap_true ) ).
|
||||||
ELSE.
|
ELSE.
|
||||||
ro_html->add( `<span class="grey">No favorites so far. For more info please check ` ).
|
ro_html->add( |<span class="grey">No favorites so far. For more info please check {
|
||||||
ro_html->add_anchor( iv_txt = 'tutorial' iv_act = gc_action-go_tutorial ).
|
lcl_html=>a( iv_txt = 'tutorial' iv_act = gc_action-go_tutorial )
|
||||||
ro_html->add( '</span>' ).
|
}</span>| ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ro_html->add( '</td>' ).
|
ro_html->add( '</td>' ).
|
||||||
|
|
||||||
ro_html->add( '<td class="right">' ).
|
ro_html->add( '<td class="right">' ).
|
||||||
ro_html->add( lo_allbar->render(
|
ro_html->add( lo_allbar->render(
|
||||||
iv_as_droplist_with_label = '<img class="pad4px" src="img/burger">'
|
iv_as_droplist_with_label = lcl_html=>icon( iv_name = 'burger' iv_class = 'pad4px' )
|
||||||
iv_sort = abap_true
|
iv_sort = abap_true
|
||||||
iv_with_icons = abap_true
|
iv_with_icons = abap_true
|
||||||
iv_add_minizone = abap_true ) ).
|
iv_add_minizone = abap_true ) ).
|
||||||
|
@ -330,8 +330,9 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( |<div class="repo" id="repo{ io_repo->get_key( ) }">| ).
|
ro_html->add( |<div class="repo" id="repo{ io_repo->get_key( ) }">| ).
|
||||||
ro_html->add( render_repo_top( io_repo = io_repo iv_interactive_branch = abap_true ) ).
|
ro_html->add( lcl_gui_chunk_lib=>render_repo_top( io_repo = io_repo
|
||||||
ro_html->add( mo_repo_content->lif_gui_page~render( ) ).
|
iv_interactive_branch = abap_true ) ).
|
||||||
|
ro_html->add( mo_repo_content->render( ) ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
ENDMETHOD. "render_repo
|
ENDMETHOD. "render_repo
|
||||||
|
|
|
@ -315,7 +315,7 @@ ENDCLASS.
|
||||||
|
|
||||||
*********************************
|
*********************************
|
||||||
|
|
||||||
CLASS lcl_gui_page_merge DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_merge DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS:
|
METHODS:
|
||||||
|
@ -324,8 +324,10 @@ CLASS lcl_gui_page_merge DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
||||||
iv_source TYPE string
|
iv_source TYPE string
|
||||||
iv_target TYPE string
|
iv_target TYPE string
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
lif_gui_page~on_event REDEFINITION,
|
lif_gui_page~on_event REDEFINITION.
|
||||||
lif_gui_page~render REDEFINITION.
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA: mo_repo TYPE REF TO lcl_repo_online,
|
DATA: mo_repo TYPE REF TO lcl_repo_online,
|
||||||
|
@ -346,6 +348,8 @@ CLASS lcl_gui_page_merge IMPLEMENTATION.
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
super->constructor( ).
|
super->constructor( ).
|
||||||
|
ms_control-page_title = 'MERGE'.
|
||||||
|
ms_control-page_menu = build_menu( ).
|
||||||
|
|
||||||
mo_repo = io_repo.
|
mo_repo = io_repo.
|
||||||
|
|
||||||
|
@ -381,7 +385,7 @@ CLASS lcl_gui_page_merge IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
DEFINE _show_file.
|
DEFINE _show_file.
|
||||||
READ TABLE &1 ASSIGNING <ls_show>
|
READ TABLE &1 ASSIGNING <ls_show>
|
||||||
|
@ -410,10 +414,8 @@ CLASS lcl_gui_page_merge IMPLEMENTATION.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( iv_title = 'MERGE' io_menu = build_menu( ) ) ).
|
|
||||||
ro_html->add( '<div id="toc">' ).
|
ro_html->add( '<div id="toc">' ).
|
||||||
ro_html->add( render_repo_top(
|
ro_html->add( lcl_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_show_branch = abap_false ) ).
|
iv_show_branch = abap_false ) ).
|
||||||
|
@ -473,8 +475,7 @@ CLASS lcl_gui_page_merge IMPLEMENTATION.
|
||||||
ro_html->add( ms_merge-conflict ).
|
ro_html->add( ms_merge-conflict ).
|
||||||
ro_html->add( '</b>' ).
|
ro_html->add( '</b>' ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
ro_html->add( footer( ) ).
|
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDCLASS.
|
ENDCLASS.
|
|
@ -2,17 +2,20 @@
|
||||||
*& Include ZABAPGIT_PAGE_SETTINGS
|
*& Include ZABAPGIT_PAGE_SETTINGS
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_page_settings DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_settings DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
|
||||||
METHODS lif_gui_page~render REDEFINITION.
|
|
||||||
METHODS lif_gui_page~on_event REDEFINITION.
|
|
||||||
CONSTANTS:
|
CONSTANTS:
|
||||||
BEGIN OF c_action,
|
BEGIN OF c_action,
|
||||||
save_settings TYPE string VALUE 'save_settings',
|
save_settings TYPE string VALUE 'save_settings',
|
||||||
END OF c_action.
|
END OF c_action.
|
||||||
|
|
||||||
|
METHODS constructor.
|
||||||
|
METHODS lif_gui_page~on_event REDEFINITION.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS render_content REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
|
|
||||||
DATA:
|
DATA:
|
||||||
|
@ -20,13 +23,13 @@ CLASS lcl_gui_page_settings DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
||||||
mv_error TYPE abap_bool.
|
mv_error TYPE abap_bool.
|
||||||
|
|
||||||
METHODS render_proxy
|
METHODS render_proxy
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS render_development_internals
|
METHODS render_development_internals
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS render_form_begin
|
METHODS render_form_begin
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS render_form_end
|
METHODS render_form_end
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
METHODS build_settings
|
METHODS build_settings
|
||||||
IMPORTING
|
IMPORTING
|
||||||
it_post_fields TYPE tihttpnvp.
|
it_post_fields TYPE tihttpnvp.
|
||||||
|
@ -45,24 +48,24 @@ ENDCLASS.
|
||||||
|
|
||||||
CLASS lcl_gui_page_settings IMPLEMENTATION.
|
CLASS lcl_gui_page_settings IMPLEMENTATION.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD constructor.
|
||||||
|
super->constructor( ).
|
||||||
|
ms_control-page_title = 'SETTINGS'.
|
||||||
|
ENDMETHOD. " constructor.
|
||||||
|
|
||||||
|
METHOD render_content.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
read_settings( ).
|
read_settings( ).
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( 'Settings' ) ).
|
|
||||||
|
|
||||||
ro_html->add( render_form_begin( ) ).
|
ro_html->add( render_form_begin( ) ).
|
||||||
ro_html->add( render_proxy( ) ).
|
ro_html->add( render_proxy( ) ).
|
||||||
ro_html->add( |<hr>| ).
|
ro_html->add( |<hr>| ).
|
||||||
ro_html->add( render_development_internals( ) ).
|
ro_html->add( render_development_internals( ) ).
|
||||||
ro_html->add( render_form_end( ) ).
|
ro_html->add( render_form_end( ) ).
|
||||||
|
|
||||||
ro_html->add( footer( ) ).
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDMETHOD.
|
|
||||||
|
|
||||||
METHOD render_proxy.
|
METHOD render_proxy.
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
*& Include ZABAPGIT_PAGE_STAGE
|
*& Include ZABAPGIT_PAGE_STAGE
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_page_stage DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_page_stage DEFINITION FINAL INHERITING FROM lcl_gui_page.
|
||||||
|
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
CONSTANTS: BEGIN OF c_action,
|
CONSTANTS: BEGIN OF c_action,
|
||||||
|
@ -14,9 +14,13 @@ CLASS lcl_gui_page_stage DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
||||||
constructor
|
constructor
|
||||||
IMPORTING io_repo TYPE REF TO lcl_repo_online
|
IMPORTING io_repo TYPE REF TO lcl_repo_online
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
lif_gui_page~render REDEFINITION,
|
|
||||||
lif_gui_page~on_event REDEFINITION.
|
lif_gui_page~on_event REDEFINITION.
|
||||||
|
|
||||||
|
PROTECTED SECTION.
|
||||||
|
METHODS:
|
||||||
|
render_content REDEFINITION,
|
||||||
|
scripts REDEFINITION.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA: mo_repo TYPE REF TO lcl_repo_online,
|
DATA: mo_repo TYPE REF TO lcl_repo_online,
|
||||||
ms_files TYPE ty_stage_files,
|
ms_files TYPE ty_stage_files,
|
||||||
|
@ -25,15 +29,13 @@ CLASS lcl_gui_page_stage DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
||||||
|
|
||||||
METHODS:
|
METHODS:
|
||||||
render_list
|
render_list
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html,
|
||||||
render_file
|
render_file
|
||||||
IMPORTING is_file TYPE ty_file
|
IMPORTING is_file TYPE ty_file
|
||||||
iv_context TYPE string
|
iv_context TYPE string
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html,
|
||||||
render_menu
|
render_menu
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
scripts
|
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
|
||||||
|
|
||||||
METHODS process_stage_list
|
METHODS process_stage_list
|
||||||
IMPORTING it_postdata TYPE cnht_post_data_tab
|
IMPORTING it_postdata TYPE cnht_post_data_tab
|
||||||
|
@ -46,6 +48,7 @@ CLASS lcl_gui_page_stage IMPLEMENTATION.
|
||||||
METHOD constructor.
|
METHOD constructor.
|
||||||
|
|
||||||
super->constructor( ).
|
super->constructor( ).
|
||||||
|
ms_control-page_title = 'STAGE'.
|
||||||
mo_repo = io_repo.
|
mo_repo = io_repo.
|
||||||
|
|
||||||
ms_files = lcl_stage_logic=>get( mo_repo ).
|
ms_files = lcl_stage_logic=>get( mo_repo ).
|
||||||
|
@ -150,8 +153,8 @@ CLASS lcl_gui_page_stage IMPLEMENTATION.
|
||||||
ro_html->add('<thead><tr>').
|
ro_html->add('<thead><tr>').
|
||||||
ro_html->add('<th></th><th colspan="2">LOCAL</th><th>' ).
|
ro_html->add('<th></th><th colspan="2">LOCAL</th><th>' ).
|
||||||
IF lines( ms_files-local ) > 1.
|
IF lines( ms_files-local ) > 1.
|
||||||
ro_html->add_anchor( iv_txt = |{ lines( ms_files-local ) } diffs|
|
ro_html->add_a( iv_txt = |{ lines( ms_files-local ) } diffs|
|
||||||
iv_act = |{ gc_action-go_diff }?key={ mo_repo->get_key( ) }| ).
|
iv_act = |{ gc_action-go_diff }?key={ mo_repo->get_key( ) }| ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ro_html->add('</th></tr></thead>').
|
ro_html->add('</th></tr></thead>').
|
||||||
ro_html->add('<tbody class="local">').
|
ro_html->add('<tbody class="local">').
|
||||||
|
@ -200,7 +203,7 @@ CLASS lcl_gui_page_stage IMPLEMENTATION.
|
||||||
ig_file = is_file ).
|
ig_file = is_file ).
|
||||||
ro_html->add( '<td class="cmd"><a>add</a></td>' ).
|
ro_html->add( '<td class="cmd"><a>add</a></td>' ).
|
||||||
ro_html->add( '<td>' ).
|
ro_html->add( '<td>' ).
|
||||||
ro_html->add_anchor( iv_txt = 'diff' iv_act = |{ gc_action-go_diff }?{ lv_param }| ).
|
ro_html->add_a( iv_txt = 'diff' iv_act = |{ gc_action-go_diff }?{ lv_param }| ).
|
||||||
ro_html->add( '</td>' ).
|
ro_html->add( '</td>' ).
|
||||||
WHEN 'remote'.
|
WHEN 'remote'.
|
||||||
ro_html->add( '<td class="cmd"><a>ignore</a><a>remove</a></td>' ).
|
ro_html->add( '<td class="cmd"><a>ignore</a><a>remove</a></td>' ).
|
||||||
|
@ -211,38 +214,33 @@ CLASS lcl_gui_page_stage IMPLEMENTATION.
|
||||||
|
|
||||||
ENDMETHOD. "render_file
|
ENDMETHOD. "render_file
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD render_content.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( header( ) ).
|
|
||||||
ro_html->add( title( 'STAGE' ) ).
|
|
||||||
|
|
||||||
ro_html->add( '<div class="repo">' ).
|
ro_html->add( '<div class="repo">' ).
|
||||||
ro_html->add( render_repo_top( mo_repo ) ).
|
ro_html->add( lcl_gui_chunk_lib=>render_repo_top( mo_repo ) ).
|
||||||
ro_html->add( render_menu( ) ).
|
ro_html->add( render_menu( ) ).
|
||||||
ro_html->add( render_list( ) ).
|
ro_html->add( render_list( ) ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
ro_html->add( footer( scripts( ) ) ).
|
ENDMETHOD. "render_content
|
||||||
|
|
||||||
ENDMETHOD. "lif_gui_page~render
|
|
||||||
|
|
||||||
METHOD render_menu.
|
METHOD render_menu.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( '<div class="paddings">' ).
|
ro_html->add( '<div class="paddings">' ).
|
||||||
ro_html->add_anchor( iv_act = 'gHelper.submit();'
|
ro_html->add_a( iv_act = 'gHelper.submit();'
|
||||||
iv_typ = gc_action_type-onclick
|
iv_typ = gc_action_type-onclick
|
||||||
iv_id = 'act_commit'
|
iv_id = 'act_commit'
|
||||||
iv_style = 'display: none'
|
iv_style = 'display: none'
|
||||||
iv_txt = 'Commit'
|
iv_txt = 'Commit'
|
||||||
iv_opt = gc_html_opt-emphas ) ##NO_TEXT.
|
iv_opt = gc_html_opt-strong ) ##NO_TEXT.
|
||||||
IF lines( ms_files-local ) > 0.
|
IF lines( ms_files-local ) > 0.
|
||||||
ro_html->add_anchor( iv_act = |{ c_action-stage_all }|
|
ro_html->add_a( iv_act = |{ c_action-stage_all }|
|
||||||
iv_id = 'act_commit_all'
|
iv_id = 'act_commit_all'
|
||||||
iv_txt = 'Add all and commit') ##NO_TEXT.
|
iv_txt = 'Add all and commit') ##NO_TEXT.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
|
|
|
@ -1237,7 +1237,7 @@ ENDCLASS. "lcl_abap_unit IMPLEMENTATION
|
||||||
CLASS ltcl_html_helper DEFINITION FOR TESTING RISK LEVEL HARMLESS DURATION SHORT FINAL.
|
CLASS ltcl_html_helper DEFINITION FOR TESTING RISK LEVEL HARMLESS DURATION SHORT FINAL.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
DATA: mo_html TYPE REF TO lcl_html_helper.
|
DATA: mo_html TYPE REF TO lcl_html.
|
||||||
|
|
||||||
METHODS:
|
METHODS:
|
||||||
indent1 FOR TESTING RAISING lcx_exception,
|
indent1 FOR TESTING RAISING lcx_exception,
|
||||||
|
|
|
@ -1043,7 +1043,7 @@ CLASS lcl_log DEFINITION FINAL.
|
||||||
count
|
count
|
||||||
RETURNING VALUE(rv_count) TYPE i,
|
RETURNING VALUE(rv_count) TYPE i,
|
||||||
to_html
|
to_html
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html,
|
||||||
clear,
|
clear,
|
||||||
has_rc "For unit tests mainly
|
has_rc "For unit tests mainly
|
||||||
IMPORTING iv_rc TYPE balsort
|
IMPORTING iv_rc TYPE balsort
|
||||||
|
|
|
@ -2,8 +2,10 @@
|
||||||
*& Include ZABAPGIT_VIEW_REPO
|
*& Include ZABAPGIT_VIEW_REPO
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_view_repo_content DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_view_repo_content DEFINITION FINAL.
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
|
INTERFACES lif_gui_page.
|
||||||
|
ALIASES render FOR lif_gui_page~render.
|
||||||
|
|
||||||
CONSTANTS: BEGIN OF c_actions,
|
CONSTANTS: BEGIN OF c_actions,
|
||||||
change_dir TYPE string VALUE 'change_dir' ##NO_TEXT,
|
change_dir TYPE string VALUE 'change_dir' ##NO_TEXT,
|
||||||
|
@ -12,9 +14,6 @@ CLASS lcl_gui_view_repo_content DEFINITION FINAL INHERITING FROM lcl_gui_page_su
|
||||||
toggle_changes TYPE string VALUE 'toggle_changes' ##NO_TEXT,
|
toggle_changes TYPE string VALUE 'toggle_changes' ##NO_TEXT,
|
||||||
END OF c_actions.
|
END OF c_actions.
|
||||||
|
|
||||||
METHODS: lif_gui_page~render REDEFINITION,
|
|
||||||
lif_gui_page~on_event REDEFINITION.
|
|
||||||
|
|
||||||
METHODS constructor
|
METHODS constructor
|
||||||
IMPORTING iv_key TYPE lcl_persistence_repo=>ty_repo-key
|
IMPORTING iv_key TYPE lcl_persistence_repo=>ty_repo-key
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
@ -31,21 +30,21 @@ CLASS lcl_gui_view_repo_content DEFINITION FINAL INHERITING FROM lcl_gui_page_su
|
||||||
render_head_menu
|
render_head_menu
|
||||||
IMPORTING iv_lstate TYPE char1
|
IMPORTING iv_lstate TYPE char1
|
||||||
iv_rstate TYPE char1
|
iv_rstate TYPE char1
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
render_grid_menu
|
render_grid_menu
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
render_item
|
render_item
|
||||||
IMPORTING is_item TYPE lcl_repo_content_browser=>ty_repo_item
|
IMPORTING is_item TYPE lcl_repo_content_browser=>ty_repo_item
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception,
|
RAISING lcx_exception,
|
||||||
render_item_files
|
render_item_files
|
||||||
IMPORTING is_item TYPE lcl_repo_content_browser=>ty_repo_item
|
IMPORTING is_item TYPE lcl_repo_content_browser=>ty_repo_item
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html,
|
||||||
render_item_command
|
render_item_command
|
||||||
IMPORTING is_item TYPE lcl_repo_content_browser=>ty_repo_item
|
IMPORTING is_item TYPE lcl_repo_content_browser=>ty_repo_item
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html,
|
||||||
get_item_class
|
get_item_class
|
||||||
IMPORTING is_item TYPE lcl_repo_content_browser=>ty_repo_item
|
IMPORTING is_item TYPE lcl_repo_content_browser=>ty_repo_item
|
||||||
RETURNING VALUE(rv_html) TYPE string,
|
RETURNING VALUE(rv_html) TYPE string,
|
||||||
|
@ -55,7 +54,7 @@ CLASS lcl_gui_view_repo_content DEFINITION FINAL INHERITING FROM lcl_gui_page_su
|
||||||
render_empty_package
|
render_empty_package
|
||||||
RETURNING VALUE(rv_html) TYPE string,
|
RETURNING VALUE(rv_html) TYPE string,
|
||||||
render_parent_dir
|
render_parent_dir
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html
|
||||||
RAISING lcx_exception.
|
RAISING lcx_exception.
|
||||||
|
|
||||||
METHODS:
|
METHODS:
|
||||||
|
@ -150,7 +149,7 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
ro_html->add( render_grid_menu( ) ).
|
ro_html->add( render_grid_menu( ) ).
|
||||||
|
|
||||||
" Repo content table
|
" Repo content table
|
||||||
ro_html->add( '<table width="100%" class="repo_tab">' ).
|
ro_html->add( '<table class="repo_tab">' ).
|
||||||
|
|
||||||
IF lcl_path=>is_root( mv_cur_dir ) = abap_false.
|
IF lcl_path=>is_root( mv_cur_dir ) = abap_false.
|
||||||
ro_html->add( render_parent_dir( ) ).
|
ro_html->add( render_parent_dir( ) ).
|
||||||
|
@ -169,7 +168,7 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
|
|
||||||
CATCH lcx_exception INTO lx_error.
|
CATCH lcx_exception INTO lx_error.
|
||||||
ro_html->add( render_head_menu( iv_lstate = lv_lstate iv_rstate = lv_rstate ) ).
|
ro_html->add( render_head_menu( iv_lstate = lv_lstate iv_rstate = lv_rstate ) ).
|
||||||
ro_html->add( lcl_gui_page_super=>render_error( lx_error ) ).
|
ro_html->add( lcl_gui_chunk_lib=>render_error( ix_error = lx_error ) ).
|
||||||
ENDTRY.
|
ENDTRY.
|
||||||
|
|
||||||
ENDMETHOD. "lif_gui_page~render
|
ENDMETHOD. "lif_gui_page~render
|
||||||
|
@ -233,7 +232,7 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
lv_wp_opt = gc_html_opt-crossout.
|
lv_wp_opt = gc_html_opt-crossout.
|
||||||
lv_pull_opt = gc_html_opt-crossout.
|
lv_pull_opt = gc_html_opt-crossout.
|
||||||
ELSE.
|
ELSE.
|
||||||
lv_pull_opt = gc_html_opt-emphas.
|
lv_pull_opt = gc_html_opt-strong.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
" Build branch drop-down ========================
|
" Build branch drop-down ========================
|
||||||
|
@ -283,12 +282,12 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
IF iv_lstate IS NOT INITIAL. " Something new at local
|
IF iv_lstate IS NOT INITIAL. " Something new at local
|
||||||
lo_toolbar->add( iv_txt = 'Stage'
|
lo_toolbar->add( iv_txt = 'Stage'
|
||||||
iv_act = |{ gc_action-go_stage }?{ lv_key }|
|
iv_act = |{ gc_action-go_stage }?{ lv_key }|
|
||||||
iv_opt = gc_html_opt-emphas ).
|
iv_opt = gc_html_opt-strong ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
IF iv_rstate IS NOT INITIAL OR iv_lstate IS NOT INITIAL. " Any changes
|
IF iv_rstate IS NOT INITIAL OR iv_lstate IS NOT INITIAL. " Any changes
|
||||||
lo_toolbar->add( iv_txt = 'Show diff'
|
lo_toolbar->add( iv_txt = 'Show diff'
|
||||||
iv_act = |{ gc_action-go_diff }?key={ lv_key }|
|
iv_act = |{ gc_action-go_diff }?key={ lv_key }|
|
||||||
iv_opt = gc_html_opt-emphas ).
|
iv_opt = gc_html_opt-strong ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
CATCH lcx_exception ##NO_HANDLER.
|
CATCH lcx_exception ##NO_HANDLER.
|
||||||
" authorization error or repository does not exist
|
" authorization error or repository does not exist
|
||||||
|
@ -299,10 +298,10 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
ELSE.
|
ELSE.
|
||||||
lo_toolbar->add( iv_txt = 'Import ZIP'
|
lo_toolbar->add( iv_txt = 'Import ZIP'
|
||||||
iv_act = |{ gc_action-zip_import }?{ lv_key }|
|
iv_act = |{ gc_action-zip_import }?{ lv_key }|
|
||||||
iv_opt = gc_html_opt-emphas ).
|
iv_opt = gc_html_opt-strong ).
|
||||||
lo_toolbar->add( iv_txt = 'Export ZIP'
|
lo_toolbar->add( iv_txt = 'Export ZIP'
|
||||||
iv_act = |{ gc_action-zip_export }?{ lv_key }|
|
iv_act = |{ gc_action-zip_export }?{ lv_key }|
|
||||||
iv_opt = gc_html_opt-emphas ).
|
iv_opt = gc_html_opt-strong ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
lo_toolbar->add( iv_txt = 'Advanced'
|
lo_toolbar->add( iv_txt = 'Advanced'
|
||||||
|
@ -312,7 +311,7 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
|
|
||||||
" Render ==========================================
|
" Render ==========================================
|
||||||
ro_html->add( '<div class="paddings">' ).
|
ro_html->add( '<div class="paddings">' ).
|
||||||
ro_html->add( '<table width="100%"><tr>' ).
|
ro_html->add( '<table class="w100"><tr>' ).
|
||||||
|
|
||||||
IF mv_show_folders = abap_true.
|
IF mv_show_folders = abap_true.
|
||||||
ro_html->add( |<td class="current_dir">{ mv_cur_dir }</td>| ).
|
ro_html->add( |<td class="current_dir">{ mv_cur_dir }</td>| ).
|
||||||
|
@ -349,17 +348,17 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
|
|
||||||
CASE is_item-obj_type.
|
CASE is_item-obj_type.
|
||||||
WHEN 'PROG' OR 'CLAS' OR 'FUGR'.
|
WHEN 'PROG' OR 'CLAS' OR 'FUGR'.
|
||||||
rv_html = |<img src="img/code">|.
|
rv_html = lcl_html=>icon( 'code' ).
|
||||||
WHEN 'W3MI' OR 'W3HT'.
|
WHEN 'W3MI' OR 'W3HT'.
|
||||||
rv_html = |<img src="img/bin">|.
|
rv_html = lcl_html=>icon( 'bin' ).
|
||||||
WHEN ''.
|
WHEN ''.
|
||||||
rv_html = space. " no icon
|
rv_html = space. " no icon
|
||||||
WHEN OTHERS.
|
WHEN OTHERS.
|
||||||
rv_html = |<img src="img/obj">|.
|
rv_html = lcl_html=>icon( 'obj' ).
|
||||||
ENDCASE.
|
ENDCASE.
|
||||||
|
|
||||||
IF is_item-is_dir = abap_true.
|
IF is_item-is_dir = abap_true.
|
||||||
rv_html = |<img src="img/dir">|.
|
rv_html = lcl_html=>icon( 'dir' ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD. "get_item_icon
|
ENDMETHOD. "get_item_icon
|
||||||
|
@ -436,7 +435,8 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
|
|
||||||
ro_html->add( '<div>' ).
|
ro_html->add( '<div>' ).
|
||||||
ro_html->add( |<span class="grey">{ is_item-changes } changes</span>| ).
|
ro_html->add( |<span class="grey">{ is_item-changes } changes</span>| ).
|
||||||
ro_html->add( render_item_state( iv1 = is_item-lstate iv2 = is_item-rstate ) ).
|
ro_html->add( lcl_gui_chunk_lib=>render_item_state( iv1 = is_item-lstate
|
||||||
|
iv2 = is_item-rstate ) ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
ELSEIF is_item-changes > 0.
|
ELSEIF is_item-changes > 0.
|
||||||
|
@ -448,9 +448,10 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
ig_object = is_item ).
|
ig_object = is_item ).
|
||||||
|
|
||||||
ro_html->add( '<div>' ).
|
ro_html->add( '<div>' ).
|
||||||
ro_html->add_anchor( iv_txt = |view diff ({ is_item-changes })|
|
ro_html->add_a( iv_txt = |view diff ({ is_item-changes })|
|
||||||
iv_act = |{ gc_action-go_diff }?{ lv_difflink }| ).
|
iv_act = |{ gc_action-go_diff }?{ lv_difflink }| ).
|
||||||
ro_html->add( render_item_state( iv1 = is_item-lstate iv2 = is_item-rstate ) ).
|
ro_html->add( lcl_gui_chunk_lib=>render_item_state( iv1 = is_item-lstate
|
||||||
|
iv2 = is_item-rstate ) ).
|
||||||
ro_html->add( '</div>' ).
|
ro_html->add( '</div>' ).
|
||||||
|
|
||||||
ELSE.
|
ELSE.
|
||||||
|
@ -461,10 +462,10 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
lv_difflink = lcl_html_action_utils=>file_encode(
|
lv_difflink = lcl_html_action_utils=>file_encode(
|
||||||
iv_key = mo_repo->get_key( )
|
iv_key = mo_repo->get_key( )
|
||||||
ig_file = ls_file ).
|
ig_file = ls_file ).
|
||||||
ro_html->add_anchor(
|
ro_html->add_a( iv_txt = 'view diff'
|
||||||
iv_txt = 'view diff'
|
iv_act = |{ gc_action-go_diff }?{ lv_difflink }| ).
|
||||||
iv_act = |{ gc_action-go_diff }?{ lv_difflink }| ).
|
ro_html->add( lcl_gui_chunk_lib=>render_item_state( iv1 = ls_file-lstate
|
||||||
ro_html->add( render_item_state( iv1 = ls_file-lstate iv2 = ls_file-rstate ) ).
|
iv2 = ls_file-rstate ) ).
|
||||||
ELSE.
|
ELSE.
|
||||||
ro_html->add( ' ' ).
|
ro_html->add( ' ' ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
@ -490,7 +491,7 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
|
||||||
ro_html->add( '<tr class="folder">' ).
|
ro_html->add( '<tr class="folder">' ).
|
||||||
ro_html->add( |<td class="icon"><img src="img/dir"></td>| ).
|
ro_html->add( |<td class="icon">{ lcl_html=>icon( 'dir' ) }</td>| ).
|
||||||
ro_html->add( |<td class="object" colspan="2">{ build_dir_jump_link( '..' ) }</td>| ).
|
ro_html->add( |<td class="object" colspan="2">{ build_dir_jump_link( '..' ) }</td>| ).
|
||||||
IF mo_repo->is_offline( ) = abap_false.
|
IF mo_repo->is_offline( ) = abap_false.
|
||||||
ro_html->add( |<td colspan="2"></td>| ). " Dummy for online
|
ro_html->add( |<td colspan="2"></td>| ). " Dummy for online
|
||||||
|
@ -503,14 +504,14 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
|
|
||||||
DATA: lv_path TYPE string,
|
DATA: lv_path TYPE string,
|
||||||
lv_encode TYPE string,
|
lv_encode TYPE string,
|
||||||
lo_html TYPE REF TO lcl_html_helper.
|
lo_html TYPE REF TO lcl_html.
|
||||||
|
|
||||||
lv_path = iv_path.
|
lv_path = iv_path.
|
||||||
REPLACE FIRST OCCURRENCE OF mv_cur_dir IN lv_path WITH ''.
|
REPLACE FIRST OCCURRENCE OF mv_cur_dir IN lv_path WITH ''.
|
||||||
lv_encode = lcl_html_action_utils=>dir_encode( lv_path ).
|
lv_encode = lcl_html_action_utils=>dir_encode( lv_path ).
|
||||||
|
|
||||||
CREATE OBJECT lo_html.
|
CREATE OBJECT lo_html.
|
||||||
lo_html->add_anchor( iv_txt = lv_path iv_act = |{ c_actions-change_dir }?{ lv_encode }| ).
|
lo_html->add_a( iv_txt = lv_path iv_act = |{ c_actions-change_dir }?{ lv_encode }| ).
|
||||||
rv_html = lo_html->mv_html.
|
rv_html = lo_html->mv_html.
|
||||||
|
|
||||||
ENDMETHOD. "build_dir_jump_link
|
ENDMETHOD. "build_dir_jump_link
|
||||||
|
@ -518,14 +519,14 @@ CLASS lcl_gui_view_repo_content IMPLEMENTATION.
|
||||||
METHOD build_obj_jump_link.
|
METHOD build_obj_jump_link.
|
||||||
|
|
||||||
DATA: lv_encode TYPE string,
|
DATA: lv_encode TYPE string,
|
||||||
lo_html TYPE REF TO lcl_html_helper.
|
lo_html TYPE REF TO lcl_html.
|
||||||
|
|
||||||
lv_encode = lcl_html_action_utils=>jump_encode( iv_obj_type = is_item-obj_type
|
lv_encode = lcl_html_action_utils=>jump_encode( iv_obj_type = is_item-obj_type
|
||||||
iv_obj_name = is_item-obj_name ).
|
iv_obj_name = is_item-obj_name ).
|
||||||
|
|
||||||
CREATE OBJECT lo_html.
|
CREATE OBJECT lo_html.
|
||||||
lo_html->add_anchor( iv_txt = |{ is_item-obj_name }|
|
lo_html->add_a( iv_txt = |{ is_item-obj_name }|
|
||||||
iv_act = |{ gc_action-jump }?{ lv_encode }| ).
|
iv_act = |{ gc_action-jump }?{ lv_encode }| ).
|
||||||
rv_html = lo_html->mv_html.
|
rv_html = lo_html->mv_html.
|
||||||
|
|
||||||
ENDMETHOD. "build_obj_jump_link
|
ENDMETHOD. "build_obj_jump_link
|
||||||
|
|
|
@ -2,18 +2,23 @@
|
||||||
*& Include ZABAPGIT_PAGE_TUTORIAL
|
*& Include ZABAPGIT_PAGE_TUTORIAL
|
||||||
*&---------------------------------------------------------------------*
|
*&---------------------------------------------------------------------*
|
||||||
|
|
||||||
CLASS lcl_gui_view_tutorial DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
CLASS lcl_gui_view_tutorial DEFINITION FINAL.
|
||||||
PUBLIC SECTION.
|
PUBLIC SECTION.
|
||||||
METHODS lif_gui_page~render REDEFINITION.
|
INTERFACES lif_gui_page.
|
||||||
|
ALIASES render FOR lif_gui_page~render.
|
||||||
|
|
||||||
PRIVATE SECTION.
|
PRIVATE SECTION.
|
||||||
METHODS render_content
|
METHODS render_content
|
||||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
RETURNING VALUE(ro_html) TYPE REF TO lcl_html.
|
||||||
|
|
||||||
ENDCLASS. "lcl_gui_view_tutorial
|
ENDCLASS. "lcl_gui_view_tutorial
|
||||||
|
|
||||||
CLASS lcl_gui_view_tutorial IMPLEMENTATION.
|
CLASS lcl_gui_view_tutorial IMPLEMENTATION.
|
||||||
|
|
||||||
|
METHOD lif_gui_page~on_event.
|
||||||
|
ev_state = gc_event_state-not_handled.
|
||||||
|
ENDMETHOD. " lif_gui_page~on_event.
|
||||||
|
|
||||||
METHOD lif_gui_page~render.
|
METHOD lif_gui_page~render.
|
||||||
|
|
||||||
CREATE OBJECT ro_html.
|
CREATE OBJECT ro_html.
|
||||||
|
@ -34,10 +39,10 @@ CLASS lcl_gui_view_tutorial IMPLEMENTATION.
|
||||||
_add '<h2>Adding and cloning repos</h2>'.
|
_add '<h2>Adding and cloning repos</h2>'.
|
||||||
_add '<p><ul>'.
|
_add '<p><ul>'.
|
||||||
_add `<li>To clone a remote repo (e.g. from github) click `.
|
_add `<li>To clone a remote repo (e.g. from github) click `.
|
||||||
ro_html->add_anchor( iv_txt = '+ Clone' iv_act = gc_action-repo_clone ).
|
ro_html->add_a( iv_txt = '+ Clone' iv_act = gc_action-repo_clone ).
|
||||||
_add ' from the top menu. This will copy a remote repo to your system.</li>'.
|
_add ' from the top menu. This will copy a remote repo to your system.</li>'.
|
||||||
_add `<li>To add a local package as a repo click `.
|
_add `<li>To add a local package as a repo click `.
|
||||||
ro_html->add_anchor( iv_txt = '+ Offline' iv_act = gc_action-repo_newoffline ).
|
ro_html->add_a( iv_txt = '+ Offline' iv_act = gc_action-repo_newoffline ).
|
||||||
_add ' from the top menu. This will track a repo which already exist in'.
|
_add ' from the top menu. This will track a repo which already exist in'.
|
||||||
_add ' the system with abapGit. You''ll be able to attach it to remote origin'.
|
_add ' the system with abapGit. You''ll be able to attach it to remote origin'.
|
||||||
_add ' or just serialize as a zip file</li>'.
|
_add ' or just serialize as a zip file</li>'.
|
||||||
|
@ -45,18 +50,20 @@ CLASS lcl_gui_view_tutorial IMPLEMENTATION.
|
||||||
|
|
||||||
_add '<h2>Repository list and favorites</h2>'.
|
_add '<h2>Repository list and favorites</h2>'.
|
||||||
_add '<p><ul>'.
|
_add '<p><ul>'.
|
||||||
_add '<li>To choose a repo press <img src="img/burger"> at the favorite bar.</li>'.
|
ro_html->add( |<li>To choose a repo press {
|
||||||
_add '<li>To favorite a repo click <img src="img/star-grey"> icon at repo toolbar.</li>'.
|
lcl_html=>icon( 'burger' ) } at the favorite bar.</li>| ).
|
||||||
|
ro_html->add( |<li>To favorite a repo click {
|
||||||
|
lcl_html=>icon( 'star-grey' ) } icon at repo toolbar.</li>| ).
|
||||||
_add '</ul></p>'.
|
_add '</ul></p>'.
|
||||||
|
|
||||||
_add '<h2>abapGit related repositories</h2>'.
|
_add '<h2>abapGit related repositories</h2>'.
|
||||||
_add '<p><ul>'.
|
_add '<p><ul>'.
|
||||||
_add '<li>'.
|
_add '<li>'.
|
||||||
ro_html->add_anchor( iv_txt = 'install abapGit repo' iv_act = gc_action-abapgit_install ).
|
ro_html->add_a( iv_txt = 'install abapGit repo' iv_act = gc_action-abapgit_install ).
|
||||||
_add ' - To keep abapGit up-to-date (or also to contribute) you need to'.
|
_add ' - To keep abapGit up-to-date (or also to contribute) you need to'.
|
||||||
_add 'install it as a repository.</li>'.
|
_add 'install it as a repository.</li>'.
|
||||||
_add '<li>'.
|
_add '<li>'.
|
||||||
ro_html->add_anchor( iv_txt = 'install abapGit plugins' iv_act = gc_action-abapgit_install_pi ).
|
ro_html->add_a( iv_txt = 'install abapGit plugins' iv_act = gc_action-abapgit_install_pi ).
|
||||||
_add ' - you can also install plugins to extend supported object types</li>'.
|
_add ' - you can also install plugins to extend supported object types</li>'.
|
||||||
_add '</ul></p>'.
|
_add '</ul></p>'.
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user