' ).
@@ -350,40 +270,4 @@ CLASS lcl_gui_page_db IMPLEMENTATION.
ENDCASE.
ENDMETHOD. "explain_content
- METHOD styles.
-
- CREATE OBJECT ro_html.
-
- _add '/* DB ENTRIES */'.
- _add 'div.db_list {'.
- _add ' background-color: #f2f2f2;'.
- _add ' padding: 0.5em;'.
- _add '}'.
- _add 'table.db_tab pre {'.
- _add ' display: inline-block;'.
- _add ' overflow: hidden;'.
- _add ' word-wrap:break-word;'.
- _add ' white-space: pre-wrap;'.
- _add ' margin: 0px;'.
- _add ' width: 30em;'.
- _add '}'.
- _add 'table.db_tab tr.firstrow td { padding-top: 0.5em; }'.
- _add 'table.db_tab th {'.
- _add ' text-align: left;'.
- _add ' color: #888;'.
- _add ' padding: 0.5em;'.
- _add ' border-bottom: 1px #ddd solid;'.
- _add '}'.
- _add 'table.db_tab td {'.
- _add ' color: #333;'.
- _add ' padding: 0.5em;'.
- _add ' vertical-align: top;'.
- _add '}'.
- _add 'table.db_tab td.data {'.
- _add ' color: #888;'.
- _add ' font-style: italic;'.
- _add '}'.
-
- ENDMETHOD. "styles
-
ENDCLASS.
\ No newline at end of file
diff --git a/src/zabapgit_page_debug.prog.abap b/src/zabapgit_page_debug.prog.abap
index db2641f77..151ca4017 100644
--- a/src/zabapgit_page_debug.prog.abap
+++ b/src/zabapgit_page_debug.prog.abap
@@ -6,8 +6,6 @@ CLASS lcl_gui_page_debuginfo DEFINITION FINAL INHERITING FROM lcl_gui_page_super
PUBLIC SECTION.
METHODS lif_gui_page~render REDEFINITION.
- METHODS styles
- RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
METHODS scripts
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
@@ -25,7 +23,7 @@ CLASS lcl_gui_page_debuginfo IMPLEMENTATION.
CREATE OBJECT ro_html.
- ro_html->add( header( io_include_style = styles( ) ) ).
+ ro_html->add( header( ) ).
ro_html->add( title( 'DEBUG INFO' ) ).
ro_html->add( '
' ).
@@ -89,23 +87,6 @@ CLASS lcl_gui_page_debuginfo IMPLEMENTATION.
ENDMETHOD. " render_supported_object_types
- METHOD styles.
-
- CREATE OBJECT ro_html.
-
- _add '/* DEBUG INFO STYLES */'.
- _add 'div.debug_container {'.
- _add ' padding: 0.5em;'.
- _add ' font-size: 10pt;'.
- _add ' color: #444;'.
- _add ' font-family: Consolas, Courier, monospace;'.
- _add '}'.
- _add 'div.debug_container p {'.
- _add ' margin: 0px;'.
- _add '}'.
-
- ENDMETHOD.
-
METHOD scripts.
CREATE OBJECT ro_html.
diff --git a/src/zabapgit_page_diff.prog.abap b/src/zabapgit_page_diff.prog.abap
index 9c0a97d04..e026a1d8e 100644
--- a/src/zabapgit_page_diff.prog.abap
+++ b/src/zabapgit_page_diff.prog.abap
@@ -33,7 +33,6 @@ CLASS lcl_gui_page_diff DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
PRIVATE SECTION.
DATA: mt_diff_files TYPE tt_file_diff.
- METHODS styles RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
METHODS render_diff
IMPORTING is_diff TYPE ty_file_diff
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
@@ -175,133 +174,6 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
ENDMETHOD. "append_diff
- METHOD styles.
-
- CREATE OBJECT ro_html.
-
- _add '/* DIFF */'. "#EC NOTEXT
- _add 'div.diff {'. "#EC NOTEXT
- _add ' background-color: #f2f2f2;'. "#EC NOTEXT
- _add ' padding: 0.7em '. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'div.diff_head {'. "#EC NOTEXT
- _add ' padding-bottom: 0.7em;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'span.diff_name {'. "#EC NOTEXT
- _add ' padding-left: 0.5em;'. "#EC NOTEXT
- _add ' color: grey;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'span.diff_name strong {'. "#EC NOTEXT
- _add ' color: #333;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'span.diff_banner {'. "#EC NOTEXT
- _add ' border-style: solid;'. "#EC NOTEXT
- _add ' border-width: 1px;'. "#EC NOTEXT
- _add ' border-radius: 3px;'. "#EC NOTEXT
- _add ' padding-left: 0.3em;'. "#EC NOTEXT
- _add ' padding-right: 0.3em;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add '.diff_ins {'. "#EC NOTEXT
- _add ' border-color: #7bea7b;'. "#EC NOTEXT
- _add ' background-color: #d3f8d3;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add '.diff_del {'. "#EC NOTEXT
- _add ' border-color: #ff667d;'. "#EC NOTEXT
- _add ' background-color: #ffccd4;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add '.diff_upd {'. "#EC NOTEXT
- _add ' border-color: #dada00;'. "#EC NOTEXT
- _add ' background-color: #ffffcc;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'div.diff_content {'. "#EC NOTEXT
- _add ' background: #fff;'. "#EC NOTEXT
- _add ' border-top: 1px solid #DDD;'. "#EC NOTEXT
- _add ' border-bottom: 1px solid #DDD;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
-
- _add 'div.diff_head span.state-block {'.
- _add ' margin-left: 0.5em;'.
- _add ' font-family: Consolas, Lucida Console, Courier, monospace;'.
- _add ' display: inline-block;'.
- _add ' text-align: center;'.
- _add '}'.
- _add 'div.diff_head span.state-block span {'.
- _add ' display: inline-block;'.
- _add ' padding: 0px 4px;'.
- _add ' border: 1px solid #000;'.
- _add '}'.
- _add 'div.diff_head span.state-block span.added {'.
- _add ' background-color: #69ad74; '.
- _add ' border-color: #579e64;'.
- _add ' color: white;'.
- _add '}'.
- _add 'div.diff_head span.state-block span.changed {'.
- _add ' background-color: #e0c150;'.
- _add ' border-color: #d4af25;'.
- _add ' color: white;'.
- _add '}'.
- _add 'div.diff_head span.state-block span.mixed {'.
- _add ' background-color: #e0c150;'.
- _add ' border-color: #579e64;'.
- _add ' color: #69ad74;'.
- _add '}'.
- _add 'div.diff_head span.state-block span.deleted {'.
- _add ' background-color: #c76861;'.
- _add ' border-color: #b8605a;'.
- _add ' color: white;'.
- _add '}'.
- _add 'div.diff_head span.state-block span.none {'.
- _add ' background-color: #e8e8e8;'.
- _add ' border-color: #dbdbdb;'.
- _add ' color: #c8c8c8;'.
- _add '}'.
-
- " Table part
- _add '/* DIFF TABLE */'. "#EC NOTEXT
- _add 'table.diff_tab {'. "#EC NOTEXT
- _add ' font-family: Consolas, Courier, monospace;'. "#EC NOTEXT
- _add ' font-size: 10pt;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'table.diff_tab td,th {'. "#EC NOTEXT
- _add ' color: #444;'. "#EC NOTEXT
- _add ' padding-left: 0.5em;'. "#EC NOTEXT
- _add ' padding-right: 0.5em;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'table.diff_tab th {'. "#EC NOTEXT
- _add ' text-align: left;'. "#EC NOTEXT
- _add ' font-weight: normal;'. "#EC NOTEXT
- _add ' padding-top: 3px;'. "#EC NOTEXT
- _add ' padding-bottom: 3px;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'table.diff_tab thead.header th {'. "#EC NOTEXT
- _add ' color: #EEE;'. "#EC NOTEXT
- _add ' background-color: #BBB;'. "#EC NOTEXT
- _add ' text-align: left;'. "#EC NOTEXT
- _add ' font-weight: bold;'. "#EC NOTEXT
- _add ' padding-left: 0.5em;'. "#EC NOTEXT
- _add ' font-size: 9pt;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'table.diff_tab thead.nav_line {'. "#EC NOTEXT
- _add ' background-color: #edf2f9;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'table.diff_tab thead.nav_line th {'. "#EC NOTEXT
- _add ' color: #bbb;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'table.diff_tab td.num, th.num {'. "#EC NOTEXT
- _add ' text-align: right;'. "#EC NOTEXT
- _add ' color: #ccc;'. "#EC NOTEXT
- _add ' border-left: 1px solid #eee;'. "#EC NOTEXT
- _add ' border-right: 1px solid #eee;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'table.diff_tab code {'. "#EC NOTEXT
- _add ' font-family: inherit;'. "#EC NOTEXT
- _add ' white-space: pre;'. "#EC NOTEXT
- _add '}'. "#EC NOTEXT
- _add 'table.diff_tab tbody tr:first-child td { padding-top: 0.5em; }'.
- _add 'table.diff_tab tbody tr:last-child td { padding-bottom: 0.5em; }'.
-
- ENDMETHOD.
-
METHOD render_diff_head.
DATA: lo_html TYPE REF TO lcl_html_helper,
ls_stats TYPE lcl_diff=>ty_count.
@@ -467,7 +339,7 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
CREATE OBJECT ro_html.
- ro_html->add( header( io_include_style = styles( ) ) ).
+ ro_html->add( header( ) ).
ro_html->add( title( 'DIFF' ) ).
LOOP AT mt_diff_files INTO ls_diff_file.
diff --git a/src/zabapgit_page_main.prog.abap b/src/zabapgit_page_main.prog.abap
index ecbda3159..a294c53a8 100644
--- a/src/zabapgit_page_main.prog.abap
+++ b/src/zabapgit_page_main.prog.abap
@@ -9,8 +9,7 @@ CLASS lcl_gui_page_main DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
constructor
RAISING lcx_exception,
lif_gui_page~render REDEFINITION,
- lif_gui_page~on_event REDEFINITION,
- lif_gui_page~get_assets REDEFINITION.
+ lif_gui_page~on_event REDEFINITION.
PRIVATE SECTION.
CONSTANTS: BEGIN OF c_actions,
@@ -24,8 +23,6 @@ CLASS lcl_gui_page_main DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
METHODS:
test_changed_by
RAISING lcx_exception,
- styles
- RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
retrieve_active_repo
RAISING lcx_exception,
render_toc
@@ -125,7 +122,7 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
CREATE OBJECT ro_html.
- ro_html->add( header( io_include_style = styles( ) ) ).
+ ro_html->add( header( ) ).
ro_html->add( title( iv_title = 'HOME'
io_menu = build_main_menu( ) ) ).
@@ -338,255 +335,4 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
ENDMETHOD. "render_repo
-**********************************************************************
-* ASSETS, STYLES, SCRIPTS
-**********************************************************************
-
- METHOD styles.
-
- CREATE OBJECT ro_html.
-
- _add '/* REPOSITORY TABLE*/'.
- _add 'div.repo_container {'.
- _add ' position: relative;'.
- _add '}'.
- _add '.repo_tab {'.
- _add ' border: 1px solid #DDD;'.
- _add ' border-radius: 3px;'.
- _add ' background: #fff;'.
- _add ' margin-top: 0.5em;'.
- _add '}'.
- _add '.repo_tab td {'.
- _add ' border-top: 1px solid #eee;'.
- _add ' vertical-align: middle;'.
- _add ' color: #333;'.
- _add ' padding-top: 2px;'.
- _add ' padding-bottom: 2px;'.
- _add '}'.
- _add '.repo_tab td.icon {'.
- _add ' width: 32px;'.
- _add ' text-align: center;'.
- _add '}'.
- _add '.repo_tab td.type {'.
- _add ' width: 3em;'.
- _add '}'.
- _add '.repo_tab td.object {'.
- _add ' padding-left: 0.5em;'.
- _add '}'.
- _add '.repo_tab td.files {'.
- _add ' padding-left: 0.5em;'.
- _add '}'.
- _add '.repo_tab td.cmd {'.
- _add ' text-align: right;'.
- _add ' padding-left: 0.5em;'.
- _add ' padding-right: 0.7em;'.
- _add '}'.
- _add '.repo_tab tr.unsupported { color: lightgrey; }'.
- _add '.repo_tab tr.modified { background: #fbf7e9; }'.
- _add '.repo_tab tr:first-child td { border-top: 0px; }'.
- _add '.repo_tab td.current_dir { color: #ccc; }'.
-
- " States
- _add '.repo_tab td.cmd span.state-block {'.
- _add ' margin-left: 1em;'.
- _add ' font-family: Consolas, Lucida Console, Courier, monospace;'.
- _add ' font-size: x-small;'.
- _add ' vertical-align: 13%;'.
- _add ' display: inline-block;'.
- _add ' text-align: center;'.
- _add '}'.
- _add '.repo_tab td.cmd span.state-block span {'.
- _add ' display: inline-block;'.
- _add ' padding: 0px 2px;'.
- _add ' border: 1px solid #000;'.
- _add '}'.
-
- _add '.repo_tab td.cmd span.state-block span.added {'.
- _add ' background-color: #69ad74; '.
- _add ' border-color: #579e64;'.
- _add ' color: white;'.
- _add '}'.
- _add '.repo_tab td.cmd span.state-block span.changed {'.
- _add ' background-color: #e0c150;'.
- _add ' border-color: #d4af25;'.
- _add ' color: white;'.
- _add '}'.
- _add '.repo_tab td.cmd span.state-block span.mixed {'.
- _add ' background-color: #e0c150;'.
- _add ' border-color: #579e64;'.
- _add ' color: #69ad74;'.
- _add '}'.
- _add '.repo_tab td.cmd span.state-block span.deleted {'.
- _add ' background-color: #c76861;'.
- _add ' border-color: #b8605a;'.
- _add ' color: white;'.
- _add '}'.
- _add '.repo_tab td.cmd span.state-block span.none {'.
- _add ' background-color: #e8e8e8;'.
- _add ' border-color: #dbdbdb;'.
- _add ' color: #c8c8c8;'.
- _add '}'.
-
- ENDMETHOD. "styles
-
- METHOD lif_gui_page~get_assets.
-* http://fa2png.io/r/octicons/
-* colour: #808080
-* size: 16
-* https://www.base64-image.de/ can be used to convert images to base64
-
- DATA ls_image TYPE ty_web_asset.
-
- rt_assets = super->lif_gui_page~get_assets( ).
-
- ls_image-url = 'img/sync' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAA6ElEQVQYGY3BIWuUAQAG'
- && '4Pc7N72xsbGBYNE8tYpVZKDZX2CcYLEZ9yQxOQSz3D/YmkUsVovRQ2SYNJnlkFfH7VZu'
- && 'wefJgrGHXnjrpQeu5B93smCwr6qqqp54433mDI5Ucds1u577o+p35hyoqe2cMThWVatJ'
- && '7KiZrZxz18SJqqtJPFXPssRgw0oSH9WNXMCQU76qzSxx2cxxTlk3yhKb6mcSQy7kvjpM'
- && 'Ylt98tpjN3POyFTdSuKSqppayxkjE/Uhc36p+m7PhhXr7vmmfhhnzpHPJqqqquqdcRY8'
- && 'spq47sAXMyde2c3/+wvX7Y18BexhBwAAAABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/toc' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAFVBMVEUAAACAgICAgICA'
- && 'gICAgICAgICAgIAO39T0AAAABnRSTlMABBCRlMXJzV0oAAAAN0lEQVQIW2NgwABuaWlB'
- && 'YWlpDgwJDAxiAgxACshgYwAz0tLY2NISSBWBMYAmg4ADyBZhARCJAQBBchGypGCbQgAA'
- && 'AABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/repo_online' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAApVBMVEUAAABQbJxQbJxQ'
- && 'bJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQ'
- && 'bJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQ'
- && 'bJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQbJxQ'
- && 'bJz+TJ01AAAANnRSTlMAAQIDBAcJCgwSFBocHygqMTM1NkRHSU1QUWFiZGlweHuDiImL'
- && 'lZiio6a5vsfT3uTo6e3x9fsxY2JuAAAAgUlEQVQYGXXB6RaBUBSA0e+IEuIiMs9zhlDn'
- && '/R/NZWmt/LA3f1RcoaB50SydCbn20wjedkPu3sKSpMGH21PhLdZ0BATZ+cCXtxtDHGLV'
- && 'pgFW9QqJj2U0wvJvMF+5jiNGI3HK9dMQSouH6sRoFGoWd8l1dEDRWlWPQsFS98KPvvDH'
- && 'C3HLClrWc70ZAAAAAElFTkSuQmCC'.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/repo_offline' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAVFBMVEUAAACAgICAgICA'
- && 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA'
- && 'gICAgICAgICAgICAgICAgICAgICAgICuaWnmAAAAG3RSTlMAAgQFBgsQFxweIiMtN3yI'
- && 'nqOvt9Hp6/Hz9fktMNR/AAAAXElEQVQYV5WO2xJAMAxES1q3ugfF/v9/0qLyyL4k58xk'
- && 'J0p9D7N5oeqZgSwy7fDZnHNdEE1gWK116tksl7hPimGFFPWYl7MU0zksRCl8TStKg1AJ'
- && '0XNC8Zm4/c0BUVQHi0llOUYAAAAASUVORK5CYII='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/pkg' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAA30lEQVQoU43OIUuDcRSF'
- && '8fvqhuB0mFwaKLbVBVdkX0GTFss+wYL2H4rJIIgyQQSzZcUPoGHZ9CKCmAwTMS8Y/ga3'
- && 'BWVjT7hwOQ+HEzEbMhU7jrTd69q2KhtFRU2nrvS927dm3pyqPXcuNRVD7sxiRIQlDSc+'
- && 'PGjZUFDWkYekLfdoV2XYua4rSZ61pZBkEUq2XPty41XuXJIiZGNhPDVZiFCYIMSor+Db'
- && '7RQhYnQnCsNvNmGgPFFYMQh1PU9aqrLxyGUNx/p66r9mUc2hFx3JhU9vDtQU4y9KGjaV'
- && '/gXT+AGZVIinhU2EAwAAAABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/branch' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAqFBMVEUAAACAgICAgICA'
- && 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA'
- && 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA'
- && 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA'
- && 'gICAgID/OyosAAAAN3RSTlMAAQIDBAYICQ8TFRweJScoKSo3Oj1FRk1dYWJjZmhzdIaJ'
- && 'j5GVm6CwsrS5vsHDyszV19ne7/X583teZAAAAIFJREFUGFdVytkagVAYheFvFzJlnqc0'
- && 'EEoR+u//zhxI7dbZ9z4LMJ1op9DmjpntdXiBigHbLiAYqukBVr63+YGRSazgCY/iEooP'
- && 'xKZxr0EnSbo14B1Rg4msKzj150fJrQpERPLBv7mIfNxlq+zRbZsu0JYpGlcdwjY9Twfr'
- && 'nAbNsr6IKQxJI/U5CgAAAABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/link' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAXVBMVEUAAACAgICAgICA'
- && 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA'
- && 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICVwFMKAAAAHnRSTlMAAwQFBgcK'
- && 'FR4gIiMmP0JHSm+RmKDByM/R09rg+/0jN/q+AAAAX0lEQVQYV43Nxw6AIBAE0FGw916Z'
- && '//9MRQ0S4sG5bPZlCxqSCyBGXgFUJKUA4A8PUOKONzuQOxOZIjcLkrMvxGQg3skSCFYL'
- && 'Kl1Ds5LWz+33yyf4rQOSf6CjnV6rHeAA87gJtKzI8ocAAAAASUVORK5CYII='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/code' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOBAMAAADtZjDiAAAAElBMVEUAAACAgICAgICA'
- && 'gICAgICAgIC07w1vAAAABXRSTlMABECUxcOwZQcAAAA1SURBVAhbY2AODQ0NEWBgYGVg'
- && 'YGByhNAMKgIMrKyhAQxMDhA+QwCCZgVqIIUP1Q+yJzTUAAAfUAq+Os55uAAAAABJRU5E'
- && 'rkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/bin' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOBAMAAADtZjDiAAAAElBMVEUAAACAgICAgICA'
- && 'gICAgICAgIC07w1vAAAABXRSTlMABECUxcOwZQcAAABBSURBVAhbXcqxDYAwAMRAK8h9'
- && 'hmAARoANvuD3X4UCiojqZMlsbe8JAuN6ZZ9ozThRCVmsJe9H0HwdXf19W9v2eAA6Fws2'
- && 'RotPsQAAAABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/obj' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOBAMAAADtZjDiAAAAIVBMVEUAAACAgICAgICA'
- && 'gICAgICAgICAgICAgICAgICAgICAgIDcWqnoAAAACnRSTlMABD1AZI+RlcPFIaFe1gAA'
- && 'AEVJREFUCFtjYF+1atVKAQYGLgYGBuaJEJrBUgBCM0+A0AwLgLQIgyOIZmwCSgNptgAG'
- && '1gQQfzKDhgCSPFw9Kg2yZ9WqAgBWJBENLk6V3AAAAABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/lock' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAOVBMVEUAAACIiIiIiIiI'
- && 'iIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIjNaTNB'
- && 'AAAAEnRSTlMABgdBVXt8iYuRsNXZ3uDi6Pmu6tfUAAAASUlEQVQYV63KSxJAQBAE0TQ0'
- && 'Znym1f0PayE0QdjJ5asCgGTu1hClqjppvaRXB60swBeA2QNUAIq+ICvKx367nqAn/P8Y'
- && 't2jg3Q5rgASaF3KNRwAAAABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/dir' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAASFBMVEUAAABmksxmksxm'
- && 'ksxmksxmksxmksxmksxmksxmksxmksxmksxmksxmksxmksxmksxmksxmksxmksxmksxm'
- && 'ksxmksxmksxmksxMwQo8AAAAF3RSTlMABhIYIy1fZmhpe3+IiYuMkZvD7e/x93sipD4A'
- && 'AAA+SURBVBhXY2BABzwiokAgzAYXEGdiBAIWIYQAPzcQCApzgwEXM4M4KuBDFxAYKAEx'
- && 'VAFeBlYOTiTAzoThewD5hBAcnWM4gwAAAABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/burger' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAHlBMVEUAAABtktltktlt'
- && 'ktltktltktltktltktltktltktk7ccVDAAAACXRSTlMAFDBLY2SFoPGv/DFMAAAAJ0lE'
- && 'QVQIW2NggIHKmWAwmaETwpjGoBoKBo4MmIAkxXApuGK4dgwAAJa5IzLs+gRBAAAAAElF'
- && 'TkSuQmCC'.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/star' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAilBMVEUAAABejclejcle'
- && 'jclejclejclejclejclejclejclejclejclejclejclejclejclejclejclejclejcle'
- && 'jclejclejclejclejclejclejclejclejclejclejclejclejclejclejclejclejcle'
- && 'jclejclejclejclejclejclejclejclejcn2yvsVAAAALXRSTlMAAQIFBwkKCw0QERUY'
- && 'HB4jLzEzNjg7PVdYYmRvd3mDm52eub7R0+Tr8fX3+/16wo8zAAAAcElEQVQYGW3BBxKC'
- && 'MABFwYcQETv2hg1UVP79ryeTZBxw3MWL+JGltBgVtGRSSoORVOAE8Xi5zVU7rWfDCOaV'
- && 'Gu59mLz0dTPUBg95eYjVK2VdOzjBW9YZL5FT4i2k5+YoKcY5VPsQkoumOLsu1mjFHx8o'
- && 'ahA3YV7OfwAAAABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ls_image-url = 'img/star-grey' ##NO_TEXT.
- ls_image-content =
- 'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAilBMVEUAAADQ0NDQ0NDQ'
- && '0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ'
- && '0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ'
- && '0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NC2QdifAAAALXRSTlMAAQIFBwkKCw0QERUY'
- && 'HB4jLzEzNjg7PVdYYmRvd3mDm52eub7R0+Tr8fX3+/16wo8zAAAAcElEQVQYGW3BBxKC'
- && 'MABFwYcQETv2hg1UVP79ryeTZBxw3MWL+JGltBgVtGRSSoORVOAE8Xi5zVU7rWfDCOaV'
- && 'Gu59mLz0dTPUBg95eYjVK2VdOzjBW9YZL5FT4i2k5+YoKcY5VPsQkoumOLsu1mjFHx8o'
- && 'ahA3YV7OfwAAAABJRU5ErkJggg=='.
- APPEND ls_image TO rt_assets.
-
- ENDMETHOD. "get_assets
-
ENDCLASS.
\ No newline at end of file
diff --git a/src/zabapgit_page_settings.prog.abap b/src/zabapgit_page_settings.prog.abap
index 797f4fa56..a81637801 100644
--- a/src/zabapgit_page_settings.prog.abap
+++ b/src/zabapgit_page_settings.prog.abap
@@ -11,8 +11,6 @@ CLASS lcl_gui_page_settings DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
save_settings TYPE string VALUE 'save_settings',
END OF c_action.
PRIVATE SECTION.
- METHODS styles
- RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
METHODS render_proxy
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
METHODS render_development_internals
@@ -46,7 +44,7 @@ CLASS lcl_gui_page_settings IMPLEMENTATION.
read_settings( ).
- ro_html->add( header( io_include_style = styles( ) ) ).
+ ro_html->add( header( ) ).
ro_html->add( title( 'Settings' ) ).
ro_html->add( render_form_begin( ) ).
@@ -56,18 +54,6 @@ CLASS lcl_gui_page_settings IMPLEMENTATION.
ro_html->add( render_form_end( ) ).
ENDMETHOD.
- METHOD styles.
- CREATE OBJECT ro_html.
-
- _add '/* settings STYLES */'.
- _add 'div.settings_container {'.
- _add ' padding: 0.5em;'.
- _add ' font-size: 10pt;'.
- _add ' color: #444;'.
- _add ' background-color: #f2f2f2;'.
- _add '}'.
- ENDMETHOD.
-
METHOD render_proxy.
CREATE OBJECT ro_html.
ro_html->add( |
Proxy
| ).
diff --git a/src/zabapgit_page_stage.prog.abap b/src/zabapgit_page_stage.prog.abap
index eeb1debe2..bd254fdaa 100644
--- a/src/zabapgit_page_stage.prog.abap
+++ b/src/zabapgit_page_stage.prog.abap
@@ -32,8 +32,6 @@ CLASS lcl_gui_page_stage DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
render_menu
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
- styles
- RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper,
scripts
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
@@ -217,7 +215,7 @@ CLASS lcl_gui_page_stage IMPLEMENTATION.
CREATE OBJECT ro_html.
- ro_html->add( header( io_include_style = styles( ) ) ).
+ ro_html->add( header( ) ).
ro_html->add( title( 'STAGE' ) ).
ro_html->add( '
' ).
@@ -235,7 +233,7 @@ CLASS lcl_gui_page_stage IMPLEMENTATION.
CREATE OBJECT ro_html.
ro_html->add( '
' ).
- ro_html->add_anchor( iv_act = |commit('{ c_action-stage_commit }');|
+ ro_html->add_anchor( iv_act = 'gHelper.submit();'
iv_typ = gc_action_type-onclick
iv_id = 'act_commit'
iv_style = 'display: none'
@@ -248,152 +246,18 @@ CLASS lcl_gui_page_stage IMPLEMENTATION.
ENDMETHOD. "render_menu
- METHOD styles.
-
- CREATE OBJECT ro_html.
-
- _add '/* STAGE */'.
- _add '.stage_tab {'.
- _add ' border: 1px solid #DDD;'.
- _add ' background: #fff;'.
- _add ' margin-top: 0.2em;'.
- _add '}'.
- _add '.stage_tab td {'.
- _add ' border-top: 1px solid #eee;'.
- _add ' color: #333;'.
- _add ' vertical-align: middle;'.
- _add ' padding: 2px 0.5em;'.
- _add '}'.
- _add '.stage_tab th {'.
- _add ' color: #BBB;'.
- _add ' font-size: 10pt;'.
- _add ' text-align: left;'.
- _add ' font-weight: normal;'.
- _add ' background-color: #edf2f9;'.
- _add ' padding: 4px 0.5em;'.
- _add '}'.
- _add '.stage_tab td.status {'.
- _add ' width: 2em;'.
- _add ' text-align: center;'.
- _add '}'.
- _add '.stage_tab tbody tr:first-child td { padding-top: 0.5em; }'.
- _add '.stage_tab tbody tr:last-child td { padding-bottom: 0.5em; }'.
- _add '.stage_tab td.cmd a { padding: 0px 4px; }'.
-
- ENDMETHOD. "styles
-
METHOD scripts.
CREATE OBJECT ro_html.
- " Globals & initialization
- ro_html->add( |var gPageID = "stage{ mv_ts }";| ).
- _add 'var gChoiceCount = 0;'.
- _add 'setHook();'.
-
- " Hook global click listener on table, global action counter
- _add 'function setHook() {'.
- _add ' var stageTab = document.getElementById("stage_tab");'.
- _add ' if (stageTab.addEventListener) {'.
- _add ' stageTab.addEventListener("click", onEvent);'.
- _add ' } else {'.
- _add ' stageTab.attachEvent("onclick", onEvent);'. "
= 0; i--) {'.
- _add ' var tr = stage.rows[i];'.
- _add ' if (tr.parentNode.tagName == "THEAD") continue;'.
- _add ' var context = tr.parentNode.className;'.
- _add ' var cmd = data[tr.cells[1].innerText];'.
- _add ' if (!cmd) continue;'.
- _add ' formatTR(tr, cmd, context);'.
- _add ' if (countChoiceImpact(cmd) > 0) gChoiceCount++;'.
- _add ' }'.
- _add ' updateMenu();'.
- _add '}'.
-
- " Event handler, change status
- _add 'function onEvent(event) {'.
- _add ' if (!event.target) {'. " affects menu update after
- _add 'function countChoiceImpact(cmd) {'.
- _add ' if ("ARI".indexOf(cmd) > -1) return 1;'.
- _add ' else if ("?".indexOf(cmd) > -1) return -1;'.
- _add ' else alert("Unknown command");'.
- _add '}'.
-
- " Re-format table line
- _add 'function formatTR(tr, cmd, context) {'.
- _add ' var cmdReset = "reset"; '.
- _add ' var cmdLocal = "add"; '.
- _add ' var cmdRemote = "ignoreremove";'.
- _add ' tr.cells[0].innerText = cmd;'.
- _add ' tr.cells[0].style.color = (cmd == "?")?"#CCC":"";'.
- _add ' tr.cells[2].innerHTML = (cmd != "?")?cmdReset'.
- _add ' :(context == "local")?cmdLocal:cmdRemote;'.
- _add '}'.
-
- " Update menu items visibility
- _add 'function updateMenu() {'.
- _add ' if (gChoiceCount > 0) {'.
- _add ' document.getElementById("act_commit").style.display = "inline";'.
- _add ' document.getElementById("act_commit_all").style.display = "none";'.
- _add ' } else {'.
- _add ' document.getElementById("act_commit").style.display = "none";'.
- _add ' document.getElementById("act_commit_all").style.display = "inline";'.
- _add ' }'.
- _add '}'.
-
- " Commit change to the server
- _add 'function commit(action) {'.
- _add ' var data = collectData();'.
- _add ' submitForm(data, action);'.
- _add '}'.
-
- " Extract data from the table
- _add 'function collectData() {'.
- _add ' var stage = document.getElementById("stage_tab");'.
- _add ' var data = {};'.
- _add ' for (var i = stage.rows.length - 1; i >= 0; i--) {'.
- _add ' var row = stage.rows[i];'.
- _add ' if (row.parentNode.tagName == "THEAD") continue;'.
- _add ' data[row.cells[1].innerText] = row.cells[0].innerText;'.
- _add ' }'.
- _add ' return data; '.
- _add '}'.
+ ro_html->add( 'var gStageParams = {' ).
+ ro_html->add( | seed: "stage{ mv_ts }",| ).
+ ro_html->add( ' stageTabId: "stage_tab",' ).
+ ro_html->add( ' formAction: "stage_commit",' ).
+ ro_html->add( ' commitNodeId: "act_commit",' ).
+ ro_html->add( ' commitAllNodeId: "act_commit_all"' ).
+ ro_html->add( '}' ).
+ ro_html->add( 'var gHelper = new StageHelper(gStageParams);' ).
ENDMETHOD. "scripts
diff --git a/src/zabapgit_unit_test.prog.abap b/src/zabapgit_unit_test.prog.abap
index 2dabe4cd0..9ff966597 100644
--- a/src/zabapgit_unit_test.prog.abap
+++ b/src/zabapgit_unit_test.prog.abap
@@ -1676,6 +1676,7 @@ CLASS ltcl_path DEFINITION
METHODS split_file_location FOR TESTING.
METHODS is_subdir FOR TESTING.
METHODS change_dir FOR TESTING.
+ METHODS get_filename_from_syspath FOR TESTING.
ENDCLASS. "ltcl_path
@@ -1794,6 +1795,30 @@ CLASS ltcl_path IMPLEMENTATION.
ENDMETHOD.
+ METHOD get_filename_from_syspath.
+
+ DATA lv_filename TYPE string.
+
+ lv_filename = lcl_path=>get_filename_from_syspath( 'file.txt' ).
+ assert_equals( act = lv_filename exp = 'file.txt' ).
+
+ lv_filename = lcl_path=>get_filename_from_syspath( 'c:\dir\file.txt' ).
+ assert_equals( act = lv_filename exp = 'file.txt' ).
+
+ lv_filename = lcl_path=>get_filename_from_syspath( 'c:\file.txt' ).
+ assert_equals( act = lv_filename exp = 'file.txt' ).
+
+ lv_filename = lcl_path=>get_filename_from_syspath( '/dir/file.txt' ).
+ assert_equals( act = lv_filename exp = 'file.txt' ).
+
+ lv_filename = lcl_path=>get_filename_from_syspath( '/file.txt' ).
+ assert_equals( act = lv_filename exp = 'file.txt' ).
+
+ lv_filename = lcl_path=>get_filename_from_syspath( '\\server$\file.txt' ).
+ assert_equals( act = lv_filename exp = 'file.txt' ).
+
+ ENDMETHOD. " get_filename_from_syspath.
+
ENDCLASS. "ltcl_path
CLASS ltcl_file_status DEFINITION
diff --git a/src/zabapgit_util.prog.abap b/src/zabapgit_util.prog.abap
index 98700dbbe..282848d42 100644
--- a/src/zabapgit_util.prog.abap
+++ b/src/zabapgit_util.prog.abap
@@ -360,6 +360,10 @@ CLASS lcl_path DEFINITION FINAL.
iv_cd TYPE string
RETURNING VALUE(rv_path) TYPE string.
+ CLASS-METHODS get_filename_from_syspath
+ IMPORTING iv_path TYPE string
+ RETURNING VALUE(rv_filename) TYPE string.
+
ENDCLASS. "lcl_path
CLASS lcl_path IMPLEMENTATION.
@@ -434,6 +438,15 @@ CLASS lcl_path IMPLEMENTATION.
ENDMETHOD. "change_dir
+ METHOD get_filename_from_syspath.
+
+ " filename | c:\filename | /dir/filename | \\server\filename
+ FIND FIRST OCCURRENCE OF REGEX '^(?:/(?:.+/)*|(?:\w:|\\)\\(?:.+\\)*)?([^\\/]+)$'
+ IN iv_path
+ SUBMATCHES rv_filename.
+
+ ENDMETHOD. " get_filename_from_syspath.
+
ENDCLASS. "lcl_path
*----------------------------------------------------------------------*