mirror of
https://github.com/abapGit/abapGit.git
synced 2025-04-30 20:03:20 +08:00
#226, some more work on images and main_page
This commit is contained in:
parent
4b102d9749
commit
a5a73d0811
|
@ -369,18 +369,22 @@ ENDCLASS. "lcl_html_helper IMPLEMENTATION
|
|||
*----------------------------------------------------------------------*
|
||||
CLASS lcl_html_toolbar DEFINITION FINAL.
|
||||
PUBLIC SECTION.
|
||||
METHODS add IMPORTING iv_txt TYPE string
|
||||
iv_sub TYPE REF TO lcl_html_toolbar OPTIONAL
|
||||
iv_cmd TYPE string OPTIONAL.
|
||||
METHODS add IMPORTING iv_txt TYPE string
|
||||
iv_sub TYPE REF TO lcl_html_toolbar OPTIONAL
|
||||
iv_cmd TYPE string OPTIONAL
|
||||
iv_emph TYPE abap_bool OPTIONAL
|
||||
iv_canc TYPE abap_bool OPTIONAL.
|
||||
METHODS render IMPORTING iv_as_droplist_with_label TYPE string OPTIONAL
|
||||
ib_no_separator TYPE abap_bool OPTIONAL
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
||||
|
||||
PRIVATE SECTION.
|
||||
TYPES: BEGIN OF ty_item,
|
||||
txt TYPE string,
|
||||
cmd TYPE string,
|
||||
sub TYPE REF TO lcl_html_toolbar,
|
||||
txt TYPE string,
|
||||
cmd TYPE string,
|
||||
sub TYPE REF TO lcl_html_toolbar,
|
||||
emphasis TYPE abap_bool,
|
||||
cancel TYPE abap_bool,
|
||||
END OF ty_item.
|
||||
TYPES: tt_items TYPE STANDARD TABLE OF ty_item.
|
||||
|
||||
|
@ -399,9 +403,11 @@ CLASS lcl_html_toolbar IMPLEMENTATION.
|
|||
ASSERT iv_cmd IS INITIAL AND iv_sub IS NOT INITIAL
|
||||
OR iv_cmd IS NOT INITIAL AND iv_sub IS INITIAL. " Only one supplied
|
||||
|
||||
ls_item-txt = iv_txt.
|
||||
ls_item-cmd = iv_cmd.
|
||||
ls_item-sub = iv_sub.
|
||||
ls_item-txt = iv_txt.
|
||||
ls_item-cmd = iv_cmd.
|
||||
ls_item-sub = iv_sub.
|
||||
ls_item-emphasis = iv_emph.
|
||||
ls_item-cancel = iv_canc.
|
||||
APPEND ls_item TO mt_items.
|
||||
ENDMETHOD.
|
||||
|
||||
|
@ -435,8 +441,19 @@ CLASS lcl_html_toolbar IMPLEMENTATION.
|
|||
IF <item>-sub IS INITIAL.
|
||||
CLEAR lv_class.
|
||||
IF lb_last = abap_true AND iv_as_droplist_with_label IS INITIAL.
|
||||
lv_class = ' class="menu_end"'.
|
||||
lv_class = 'menu_end'.
|
||||
ENDIF.
|
||||
IF <item>-emphasis = abap_true.
|
||||
lv_class = lv_class && ' emphasis'.
|
||||
ENDIF.
|
||||
IF <item>-cancel = abap_true.
|
||||
lv_class = lv_class && ' cancel'.
|
||||
ENDIF.
|
||||
IF lv_class IS NOT INITIAL.
|
||||
SHIFT lv_class LEFT DELETING LEADING space.
|
||||
lv_class = | class="{ lv_class }"|.
|
||||
ENDIF.
|
||||
|
||||
lo_html->add( |<a{ lv_class } href="{ <item>-cmd }">{ <item>-txt }</a>| ).
|
||||
ELSE.
|
||||
lo_html->add( <item>-sub->render( iv_as_droplist_with_label = <item>-txt
|
||||
|
@ -17859,9 +17876,90 @@ CLASS lcl_gui_page_super IMPLEMENTATION.
|
|||
&& 'X9K+ygQTFGDcHhaaoGJyouDNV7JH+eGj4mF6gspoC+tzJt1ObsT4MDsF2zxs886+Ml5v'
|
||||
&& '/PogUvEwPUGFiE+SX4gAtQa1gkhV7onQR4oJMR5oxC6stDeghd7Dh6E+CPw/HL4vVO2f'
|
||||
&& 'cpUAAAAASUVORK5CYII='.
|
||||
|
||||
lcl_gui=>cache_image( iv_url = 'img/logo' iv_base64 = lv_image ).
|
||||
|
||||
lv_image =
|
||||
'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAFVBMVEUAAACAgICAgICA'
|
||||
&& 'gICAgICAgICAgIAO39T0AAAABnRSTlMABBCRlMXJzV0oAAAAN0lEQVQIW2NgwABuaWlB'
|
||||
&& 'YWlpDgwJDAxiAgxACshgYwAz0tLY2NISSBWBMYAmg4ADyBZhARCJAQBBchGypGCbQgAA'
|
||||
&& 'AABJRU5ErkJggg=='.
|
||||
lcl_gui=>cache_image( iv_url = 'img/toc' iv_base64 = lv_image ).
|
||||
|
||||
lv_image =
|
||||
'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABZUlEQVQ4jY3TsWuTYRAG'
|
||||
&& '8N8XQuggpVgIVKwgdNLNQRxEWggOdZWEUtTFgtBBiiCIgydOoo4iCqZ/gDgUlW5t6aLW'
|
||||
&& '0bp1U0sRB5FQRCQ4fO8HHyEJOXg5uId77p67ezNDLCLO4BlO4QNu4je+RQSoDEkexzr2'
|
||||
&& '0EIXX/AV7yNiArIByWOp8mVMRsTfRHgVG1jDPq4MIniKeTyIiHYf/Bweopb1AHX8wmc8'
|
||||
&& 'iYgXQyQ28CYrBW4n1hYWUMddbEdENyIqyU+k+EX8yEoD+44j2EkEq7iAOWzjNV7hOO6j'
|
||||
&& 'jXvV1EAzJcNZvMQSVvAOB6mjefk2lovZFGu81iNxFpt4niQ9wmlMYRqHxR1UI2IG5/vM'
|
||||
&& '6Rg+YQs/cQcnSvgudqt9qpetisYArFUQfMQiagkYeJ1y/fAHnaLCJdwYklS2f+mN4THe'
|
||||
&& 'VuQbGNVaOJk6aRYddHB0RII5+TorShJW5B9nfASC68kf4Bb8B2i6ZO2+FsBYAAAAAElF'
|
||||
&& 'TkSuQmCC'.
|
||||
lcl_gui=>cache_image( iv_url = 'img/repo_online' iv_base64 = lv_image ).
|
||||
|
||||
lv_image =
|
||||
'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBB'
|
||||
&& 'ZG9iZSBJbWFnZVJlYWR5ccllPAAAAWNJREFUeNrEkr1KxFAQhe9P/iS6goLWiiB2PoCN'
|
||||
&& 'lYW9ChbbiFhYRAQ7MaS2SOdT2PkSvoGPINiF1YTNz/WceC+sohDYwoFvZ/Zm78mcmZXG'
|
||||
&& 'GDFPKDFn/L+AdEWWZUIptRmG4bLWeglHNXjHjGoppUa9CiaoX3ieJEl/z3MCXdfdIKXT'
|
||||
&& '6bRFju2xYeASJ618338Dl6gf8zw3FOktpGk6QrrFmyPP82J0IgmCHxq1F0URBdbxuzuw'
|
||||
&& '9nMGR2CRltCBbJpG1HUtmNGZcN/tynfAgbPgBMbWxp/DcmIIDaFdWOjtK7S/hbxnDQu0'
|
||||
&& 'LGBFBEHQg7YNbAnCZ5xJWZbnRVFsuw7GM4P8hhXkPLgh0batqKqKFmM8O3FbeAanIOAM'
|
||||
&& 'cJFQWNoBLpAv/e6D4PKEK3UCh+DiN9/sgG8lbhSWCNyDJ2U3MDSOwQa7cfc828rKQIF9'
|
||||
&& '+x9QsxauwAMYDRA4s/kVXLP4FGAAajajeu7yxJkAAAAASUVORK5CYII='.
|
||||
lcl_gui=>cache_image( iv_url = 'img/repo_offline' iv_base64 = lv_image ).
|
||||
|
||||
lv_image =
|
||||
'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAA30lEQVQoU43OIUuDcRSF'
|
||||
&& '8fvqhuB0mFwaKLbVBVdkX0GTFss+wYL2H4rJIIgyQQSzZcUPoGHZ9CKCmAwTMS8Y/ga3'
|
||||
&& 'BWVjT7hwOQ+HEzEbMhU7jrTd69q2KhtFRU2nrvS927dm3pyqPXcuNRVD7sxiRIQlDSc+'
|
||||
&& 'PGjZUFDWkYekLfdoV2XYua4rSZ61pZBkEUq2XPty41XuXJIiZGNhPDVZiFCYIMSor+Db'
|
||||
&& '7RQhYnQnCsNvNmGgPFFYMQh1PU9aqrLxyGUNx/p66r9mUc2hFx3JhU9vDtQU4y9KGjaV'
|
||||
&& '/gXT+AGZVIinhU2EAwAAAABJRU5ErkJggg=='.
|
||||
lcl_gui=>cache_image( iv_url = 'img/pkg' iv_base64 = lv_image ).
|
||||
|
||||
lv_image =
|
||||
'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAqFBMVEUAAACAgICAgICA'
|
||||
&& 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA'
|
||||
&& 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA'
|
||||
&& 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA'
|
||||
&& 'gICAgID/OyosAAAAN3RSTlMAAQIDBAYICQ8TFRweJScoKSo3Oj1FRk1dYWJjZmhzdIaJ'
|
||||
&& 'j5GVm6CwsrS5vsHDyszV19ne7/X583teZAAAAIFJREFUGFdVytkagVAYheFvFzJlnqc0'
|
||||
&& 'EEoR+u//zhxI7dbZ9z4LMJ1op9DmjpntdXiBigHbLiAYqukBVr63+YGRSazgCY/iEooP'
|
||||
&& 'xKZxr0EnSbo14B1Rg4msKzj150fJrQpERPLBv7mIfNxlq+zRbZsu0JYpGlcdwjY9Twfr'
|
||||
&& 'nAbNsr6IKQxJI/U5CgAAAABJRU5ErkJggg=='.
|
||||
lcl_gui=>cache_image( iv_url = 'img/branch' iv_base64 = lv_image ).
|
||||
|
||||
lv_image =
|
||||
'iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAXVBMVEUAAACAgICAgICA'
|
||||
&& 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA'
|
||||
&& 'gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICVwFMKAAAAHnRSTlMAAwQFBgcK'
|
||||
&& 'FR4gIiMmP0JHSm+RmKDByM/R09rg+/0jN/q+AAAAX0lEQVQYV43Nxw6AIBAE0FGw916Z'
|
||||
&& '//9MRQ0S4sG5bPZlCxqSCyBGXgFUJKUA4A8PUOKONzuQOxOZIjcLkrMvxGQg3skSCFYL'
|
||||
&& 'Kl1Ds5LWz+33yyf4rQOSf6CjnV6rHeAA87gJtKzI8ocAAAAASUVORK5CYII='.
|
||||
lcl_gui=>cache_image( iv_url = 'img/link' iv_base64 = lv_image ).
|
||||
|
||||
lv_image =
|
||||
'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOBAMAAADtZjDiAAAAElBMVEUAAACAgICAgICA'
|
||||
&& 'gICAgICAgIC07w1vAAAABXRSTlMABECUxcOwZQcAAAA1SURBVAhbY2AODQ0NEWBgYGVg'
|
||||
&& 'YGByhNAMKgIMrKyhAQxMDhA+QwCCZgVqIIUP1Q+yJzTUAAAfUAq+Os55uAAAAABJRU5E'
|
||||
&& 'rkJggg=='.
|
||||
lcl_gui=>cache_image( iv_url = 'img/code' iv_base64 = lv_image ).
|
||||
|
||||
lv_image =
|
||||
'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOBAMAAADtZjDiAAAAElBMVEUAAACAgICAgICA'
|
||||
&& 'gICAgICAgIC07w1vAAAABXRSTlMABECUxcOwZQcAAABBSURBVAhbXcqxDYAwAMRAK8h9'
|
||||
&& 'hmAARoANvuD3X4UCiojqZMlsbe8JAuN6ZZ9ozThRCVmsJe9H0HwdXf19W9v2eAA6Fws2'
|
||||
&& 'RotPsQAAAABJRU5ErkJggg=='.
|
||||
lcl_gui=>cache_image( iv_url = 'img/bin' iv_base64 = lv_image ).
|
||||
|
||||
lv_image =
|
||||
'iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOBAMAAADtZjDiAAAAIVBMVEUAAACAgICAgICA'
|
||||
&& 'gICAgICAgICAgICAgICAgICAgICAgIDcWqnoAAAACnRSTlMABD1AZI+RlcPFIaFe1gAA'
|
||||
&& 'AEVJREFUCFtjYF+1atVKAQYGLgYGBuaJEJrBUgBCM0+A0AwLgLQIgyOIZmwCSgNptgAG'
|
||||
&& '1gQQfzKDhgCSPFw9Kg2yZ9WqAgBWJBENLk6V3AAAAABJRU5ErkJggg=='.
|
||||
lcl_gui=>cache_image( iv_url = 'img/obj' iv_base64 = lv_image ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD header.
|
||||
|
@ -17946,6 +18044,8 @@ CLASS lcl_gui_page_super IMPLEMENTATION.
|
|||
ro_html->add('}').
|
||||
ro_html->add('a:hover, a:active { text-decoration: underline; }').
|
||||
ro_html->add('img { border: 0px; }').
|
||||
ro_html->add('.error { color: red; }').
|
||||
ro_html->add('table { border-collapse: collapse; }').
|
||||
|
||||
" Structure div styles: header, footer, toc
|
||||
ro_html->add('/* STRUCTURE DIVS */').
|
||||
|
@ -17967,6 +18067,12 @@ CLASS lcl_gui_page_super IMPLEMENTATION.
|
|||
ro_html->add(' color: grey;').
|
||||
ro_html->add(' text-align: center;').
|
||||
ro_html->add('}').
|
||||
ro_html->add('div.dummydiv {').
|
||||
ro_html->add(' display: block;').
|
||||
ro_html->add(' background-color: #f2f2f2;').
|
||||
ro_html->add(' padding: 1em;').
|
||||
ro_html->add(' text-align: center;').
|
||||
ro_html->add('}').
|
||||
|
||||
" Header, footer and menu styles
|
||||
ro_html->add('/* HEADER, FOOTER & MENU */').
|
||||
|
@ -17991,6 +18097,8 @@ CLASS lcl_gui_page_super IMPLEMENTATION.
|
|||
ro_html->add(' color: #bbb;').
|
||||
ro_html->add(' vertical-align: super;').
|
||||
ro_html->add('}').
|
||||
ro_html->add('.emphasis { font-weight: bold; }').
|
||||
ro_html->add('.cancel { color: red !important; }').
|
||||
|
||||
" Drop down styles
|
||||
ro_html->add('/*DROP DOWN*/').
|
||||
|
@ -18082,19 +18190,38 @@ CLASS lcl_gui_page_main DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
|||
PRIVATE SECTION.
|
||||
CLASS-DATA: go_user TYPE REF TO lcl_persistence_user.
|
||||
|
||||
METHODS build_menu
|
||||
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar.
|
||||
|
||||
METHODS styles
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
||||
|
||||
CLASS-METHODS render_repo_online
|
||||
METHODS render_error
|
||||
IMPORTING ix_error TYPE REF TO lcx_exception
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
||||
|
||||
METHODS render_toc
|
||||
IMPORTING it_list TYPE lcl_repo_srv=>ty_repo_tt
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
||||
RAISING lcx_exception.
|
||||
|
||||
METHODS build_menu
|
||||
RETURNING VALUE(ro_menu) TYPE REF TO lcl_html_toolbar.
|
||||
|
||||
METHODS render_repo_top
|
||||
IMPORTING io_repo TYPE REF TO lcl_repo
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
||||
RAISING lcx_exception.
|
||||
|
||||
METHODS render_repo_menu
|
||||
IMPORTING io_repo TYPE REF TO lcl_repo
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
||||
RAISING lcx_exception.
|
||||
|
||||
METHODS render_repo_online
|
||||
IMPORTING io_repo TYPE REF TO lcl_repo_online
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
||||
RAISING lcx_exception.
|
||||
|
||||
CLASS-METHODS render_top
|
||||
IMPORTING io_repo TYPE REF TO lcl_repo_online
|
||||
METHODS render_repo_offline
|
||||
IMPORTING io_repo TYPE REF TO lcl_repo_offline
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
||||
RAISING lcx_exception.
|
||||
|
||||
|
@ -18102,11 +18229,6 @@ CLASS lcl_gui_page_main DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
|||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
||||
RAISING lcx_exception.
|
||||
|
||||
CLASS-METHODS render_repo_offline
|
||||
IMPORTING io_repo TYPE REF TO lcl_repo_offline
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
||||
RAISING lcx_exception.
|
||||
|
||||
CLASS-METHODS jump_link
|
||||
IMPORTING iv_obj_type TYPE tadir-object
|
||||
iv_obj_name TYPE tadir-obj_name
|
||||
|
@ -18123,20 +18245,6 @@ CLASS lcl_gui_page_main DEFINITION FINAL INHERITING FROM lcl_gui_page_super.
|
|||
ev_obj_name TYPE tadir-obj_name
|
||||
RAISING lcx_exception.
|
||||
|
||||
CLASS-METHODS render_error
|
||||
IMPORTING ix_error TYPE REF TO lcx_exception
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper.
|
||||
|
||||
CLASS-METHODS render_toc
|
||||
IMPORTING it_list TYPE lcl_repo_srv=>ty_repo_tt
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
||||
RAISING lcx_exception.
|
||||
|
||||
CLASS-METHODS render_repo_menu
|
||||
IMPORTING iv_key TYPE lcl_persistence_db=>ty_value
|
||||
RETURNING VALUE(ro_html) TYPE REF TO lcl_html_helper
|
||||
RAISING lcx_exception.
|
||||
|
||||
CLASS-METHODS install
|
||||
IMPORTING iv_url TYPE string
|
||||
RAISING lcx_exception.
|
||||
|
@ -18270,7 +18378,6 @@ CLASS lcl_gui_page_diff IMPLEMENTATION.
|
|||
lo_html->add( '}' ). "#EC NOTEXT
|
||||
lo_html->add( 'table.diff_tab {' ). "#EC NOTEXT
|
||||
lo_html->add( ' width: 98%;' ). "#EC NOTEXT
|
||||
lo_html->add( ' border-collapse: collapse;' ). "#EC NOTEXT
|
||||
lo_html->add( ' font-family: Consolas, Courier, monospace;' ). "#EC NOTEXT
|
||||
lo_html->add( '}' ). "#EC NOTEXT
|
||||
lo_html->add( 'table.diff_tab th {' ). "#EC NOTEXT
|
||||
|
@ -19236,6 +19343,25 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
|
||||
ENDMETHOD. "encode_struct
|
||||
|
||||
METHOD jump_link.
|
||||
|
||||
DATA: lv_encode TYPE string.
|
||||
|
||||
|
||||
lv_encode = jump_encode(
|
||||
iv_obj_type = iv_obj_type
|
||||
iv_obj_name = iv_obj_name ).
|
||||
|
||||
rv_html = iv_obj_type &&
|
||||
' ' &&
|
||||
'<a href="sapevent:jump?' &&
|
||||
lv_encode &&
|
||||
'">' &&
|
||||
iv_obj_name &&
|
||||
'</a>'.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD uninstall.
|
||||
|
||||
DATA: lt_tadir TYPE lcl_tadir=>ty_tadir_tt,
|
||||
|
@ -19533,6 +19659,9 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
ro_html->add('.repo_attr span {').
|
||||
ro_html->add(' margin-right: 1em;').
|
||||
ro_html->add('}').
|
||||
ro_html->add('.repo_attr img {').
|
||||
ro_html->add(' margin-right: 0.3em;').
|
||||
ro_html->add('}').
|
||||
ro_html->add('.repo_attr input {').
|
||||
ro_html->add(' background-color: transparent;').
|
||||
ro_html->add(' border-style: none;').
|
||||
|
@ -19540,6 +19669,7 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
ro_html->add(' color: grey;').
|
||||
ro_html->add('}').
|
||||
ro_html->add('.repo_tab {').
|
||||
ro_html->add(' width: 98%;').
|
||||
ro_html->add(' border: 1px solid #DDD;').
|
||||
ro_html->add(' border-radius: 3px;').
|
||||
ro_html->add(' background: #ffffff;').
|
||||
|
@ -19567,6 +19697,77 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
ro_html->add(' padding-left: 0.5em;').
|
||||
ro_html->add(' padding-right: 0.5em;').
|
||||
ro_html->add('}').
|
||||
ro_html->add( '.repo_tab tr.firstrow td { border-top: 0px; } ' ).
|
||||
ro_html->add( '.repo_attr input {').
|
||||
ro_html->add( ' background-color: transparent;').
|
||||
ro_html->add( ' border-style: none;').
|
||||
ro_html->add( ' text-overflow: ellipsis;').
|
||||
ro_html->add( ' color: grey;').
|
||||
ro_html->add( '}').
|
||||
ro_html->add( '.repo_tab td.files span { display: block; }').
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD render_repo_menu.
|
||||
DATA lo_toolbar TYPE REF TO lcl_html_toolbar.
|
||||
DATA lv_key TYPE lcl_persistence_db=>ty_value.
|
||||
|
||||
CREATE OBJECT ro_html.
|
||||
CREATE OBJECT lo_toolbar.
|
||||
|
||||
lv_key = io_repo->get_key( ).
|
||||
|
||||
IF go_user->is_hidden( lv_key ) = abap_true.
|
||||
lo_toolbar->add( iv_txt = 'Show' iv_cmd = |sapevent:unhide?{ lv_key }| ).
|
||||
ELSE.
|
||||
IF io_repo->is_offline( ) = abap_true.
|
||||
lo_toolbar->add( iv_txt = 'Import ZIP' iv_cmd = |sapevent:zipimport?{ lv_key }| iv_emph = abap_true ).
|
||||
lo_toolbar->add( iv_txt = 'Export ZIP' iv_cmd = |sapevent:zipexport?{ lv_key }| iv_emph = abap_true ).
|
||||
lo_toolbar->add( iv_txt = 'Export&Commit' iv_cmd = |sapevent:files_commit?{ lv_key }| iv_emph = abap_true ).
|
||||
ELSE.
|
||||
ENDIF.
|
||||
lo_toolbar->add( iv_txt = 'Remove' iv_cmd = |sapevent:remove?{ lv_key }| ).
|
||||
lo_toolbar->add( iv_txt = 'Uninstall' iv_cmd = |sapevent:uninstall?{ lv_key }| ).
|
||||
lo_toolbar->add( iv_txt = 'Refresh' iv_cmd = |sapevent:refresh?{ lv_key }| ).
|
||||
lo_toolbar->add( iv_txt = 'Hide' iv_cmd = |sapevent:hide?{ lv_key }| ).
|
||||
ENDIF.
|
||||
|
||||
ro_html->add( '<div class="mixed_height_bar right">' ).
|
||||
ro_html->add( lo_toolbar->render( ) ).
|
||||
ro_html->add( '</div>' ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD render_repo_top.
|
||||
DATA lo_repo_online TYPE REF TO lcl_repo_online.
|
||||
|
||||
CREATE OBJECT ro_html.
|
||||
|
||||
ro_html->add( |<a id="{ io_repo->get_name( ) }"></a>| ).
|
||||
ro_html->add( '<table class="mixed_height_bar"><tr>' ).
|
||||
|
||||
ro_html->add( '<td class="repo_name">' ).
|
||||
IF io_repo->is_offline( ) = abap_false.
|
||||
ro_html->add( '<img src="img/repo_online">' ).
|
||||
ELSE.
|
||||
ro_html->add( '<img src="img/repo_offline">' ).
|
||||
ENDIF.
|
||||
ro_html->add( |<span>{ io_repo->get_name( ) }</span>| ).
|
||||
ro_html->add( '</td>' ).
|
||||
|
||||
ro_html->add( '<td class="repo_attr right">' ).
|
||||
ro_html->add( '<img src="img/pkg">' ).
|
||||
ro_html->add( |<span>{ io_repo->get_package( ) }</span>| ).
|
||||
IF io_repo->is_offline( ) = abap_false.
|
||||
lo_repo_online ?= io_repo.
|
||||
ro_html->add( '<img src="img/branch">' ).
|
||||
ro_html->add( |<span>{ lo_repo_online->get_branch_name( ) }</span>| ).
|
||||
ro_html->add( '<img src="img/link">' ).
|
||||
ro_html->add( |<input type="text" value="{ lo_repo_online->get_url( ) }" readonly>| ).
|
||||
ENDIF.
|
||||
ro_html->add( '</td>' ).
|
||||
|
||||
ro_html->add( '</tr></table>' ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
|
@ -19579,117 +19780,39 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
CREATE OBJECT ro_html.
|
||||
|
||||
ro_html->add( '<div class="repo">' ).
|
||||
ro_html->add( '<a id="' && io_repo->get_name( ) && '"></a>' ).
|
||||
ro_html->add( '<table class="mixed_height_bar">' ).
|
||||
ro_html->add( '<tr>' ).
|
||||
ro_html->add( '<td class="repo_name">' ).
|
||||
ro_html->add( '<span>' && io_repo->get_name( ) && '</span>' ).
|
||||
ro_html->add( '</td>' ).
|
||||
ro_html->add( '<td class="repo_attr right">' ).
|
||||
ro_html->add( '<span>' && io_repo->get_package( ) && '</span>' ).
|
||||
ro_html->add( '</td>' ).
|
||||
ro_html->add( '</tr>' ).
|
||||
ro_html->add( '</table>' ).
|
||||
ro_html->add( render_repo_menu( io_repo->get_key( ) ) ).
|
||||
ro_html->add( render_repo_top( io_repo ) ).
|
||||
ro_html->add( render_repo_menu( io_repo ) ).
|
||||
|
||||
IF go_user->is_hidden( io_repo->get_key( ) ) = abap_false.
|
||||
|
||||
lt_tadir = lcl_tadir=>read( io_repo->get_package( ) ).
|
||||
IF lines( lt_tadir ) = 0.
|
||||
ro_html->add( 'Empty package<br><br>' ) ##NO_TEXT.
|
||||
ro_html->add( '<table class="repo_tab"><tr class="unsupported"><td>'
|
||||
&& '<center>Empty package</center>'
|
||||
&& '</td></tr></table>' ) ##NO_TEXT.
|
||||
ELSE.
|
||||
ro_html->add( '<table class="repo_tab">' ).
|
||||
ro_html->add( '<tbody>' ).
|
||||
LOOP AT lt_tadir ASSIGNING <ls_tadir>.
|
||||
ro_html->add( '<tr>' ).
|
||||
IF sy-tabix = 1.
|
||||
ro_html->add( '<tr class="firstrow">' ).
|
||||
ELSE.
|
||||
ro_html->add( '<tr>' ).
|
||||
ENDIF.
|
||||
ro_html->add( '<td>' ).
|
||||
ro_html->add(
|
||||
jump_link( iv_obj_type = <ls_tadir>-object
|
||||
iv_obj_name = <ls_tadir>-obj_name ) ).
|
||||
ro_html->add( jump_link( iv_obj_type = <ls_tadir>-object
|
||||
iv_obj_name = <ls_tadir>-obj_name ) ).
|
||||
ro_html->add( '</td>' ).
|
||||
ro_html->add( '</tr>' ).
|
||||
ENDLOOP.
|
||||
ro_html->add( '</tbody>' ).
|
||||
ro_html->add( '</table>' ).
|
||||
ENDIF.
|
||||
|
||||
ro_html->add( '<a href="sapevent:zipimport?' &&
|
||||
io_repo->get_key( ) &&
|
||||
'">' && 'Import ZIP' &&
|
||||
'</a>' ) ##NO_TEXT.
|
||||
|
||||
ro_html->add( '<a href="sapevent:zipexport?' &&
|
||||
io_repo->get_key( ) &&
|
||||
'">' && 'Export ZIP' &&
|
||||
'</a>' ) ##NO_TEXT.
|
||||
|
||||
ro_html->add( '<a href="sapevent:files_commit?' &&
|
||||
io_repo->get_key( ) &&
|
||||
'">' && 'Export files and commit' &&
|
||||
'</a>' ) ##NO_TEXT.
|
||||
ENDIF.
|
||||
|
||||
ro_html->add( '</div>' ).
|
||||
|
||||
ENDMETHOD. "render_repo_offline
|
||||
|
||||
METHOD render_repo_menu.
|
||||
|
||||
CREATE OBJECT ro_html.
|
||||
|
||||
ro_html->add( '<div class="mixed_height_bar right menu">' ).
|
||||
|
||||
IF go_user->is_hidden( iv_key ) = abap_true.
|
||||
ro_html->add( '<a class="menu_end" href="sapevent:unhide?' && iv_key && '">Show</a>' ).
|
||||
ELSE.
|
||||
ro_html->add( '<a href="sapevent:remove?' && iv_key && '">Remove</a>' ).
|
||||
ro_html->add( '<a href="sapevent:uninstall?' && iv_key && '">Uninstall</a>' ).
|
||||
ro_html->add( '<a href="sapevent:refresh_single?' && iv_key && '">Refresh</a>' ).
|
||||
ro_html->add( '<a class="menu_end" href="sapevent:hide?' && iv_key && '">Hide</a>' ).
|
||||
ENDIF.
|
||||
|
||||
ro_html->add( '</div>' ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD jump_link.
|
||||
|
||||
DATA: lv_encode TYPE string.
|
||||
|
||||
|
||||
lv_encode = jump_encode(
|
||||
iv_obj_type = iv_obj_type
|
||||
iv_obj_name = iv_obj_name ).
|
||||
|
||||
rv_html = iv_obj_type &&
|
||||
' ' &&
|
||||
'<a href="sapevent:jump?' &&
|
||||
lv_encode &&
|
||||
'">' &&
|
||||
iv_obj_name &&
|
||||
'</a>'.
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD render_top.
|
||||
|
||||
CREATE OBJECT ro_html.
|
||||
|
||||
ro_html->add( '<table class="mixed_height_bar">' ).
|
||||
ro_html->add( '<tr>' ).
|
||||
ro_html->add( '<td class="repo_name">' ).
|
||||
ro_html->add( '<span>' && io_repo->get_name( ) && '</span>' ).
|
||||
ro_html->add( '</td>' ).
|
||||
ro_html->add( '<td class="repo_attr right">' ).
|
||||
ro_html->add( '<span>' && io_repo->get_package( ) && '</span>' ).
|
||||
ro_html->add( '<span>' && io_repo->get_branch_name( ) && '</span>' ).
|
||||
ro_html->add( '<span>' && io_repo->get_url( ) && '</span>' ).
|
||||
ro_html->add( '</td>' ).
|
||||
ro_html->add( '</tr>' ).
|
||||
ro_html->add( '</table>' ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD render_repo_online.
|
||||
|
||||
DATA: lv_link TYPE string,
|
||||
|
@ -19711,9 +19834,8 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
CREATE OBJECT ro_html.
|
||||
|
||||
ro_html->add( '<div class="repo">' ).
|
||||
ro_html->add( '<a id="' && io_repo->get_name( ) && '"></a>' ).
|
||||
ro_html->add( render_top( io_repo ) ).
|
||||
ro_html->add( render_repo_menu( io_repo->get_key( ) ) ).
|
||||
ro_html->add( render_repo_top( io_repo ) ).
|
||||
ro_html->add( render_repo_menu( io_repo ) ).
|
||||
|
||||
IF go_user->is_hidden( io_repo->get_key( ) ) = abap_false.
|
||||
TRY.
|
||||
|
@ -19766,6 +19888,7 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
CLEAR lv_object.
|
||||
ENDIF.
|
||||
|
||||
|
||||
ro_html->add( '<tr' && lv_trclass && '>' ).
|
||||
ro_html->add( lv_object ).
|
||||
ro_html->add( '<td>' ).
|
||||
|
@ -19938,11 +20061,12 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
lv_key = iv_getdata.
|
||||
remove( lv_key ).
|
||||
WHEN 'refresh'.
|
||||
lcl_repo_srv=>refresh( ).
|
||||
lcl_gui=>render( ).
|
||||
WHEN 'refresh_single'.
|
||||
lv_key = iv_getdata.
|
||||
lcl_repo_srv=>get( lv_key )->refresh( ).
|
||||
IF lv_key IS INITIAL. " Refresh all or single
|
||||
lcl_repo_srv=>refresh( ).
|
||||
ELSE.
|
||||
lcl_repo_srv=>get( lv_key )->refresh( ).
|
||||
ENDIF.
|
||||
lcl_gui=>render( ).
|
||||
WHEN 'hide'.
|
||||
lv_key = iv_getdata.
|
||||
|
@ -19996,8 +20120,7 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
METHOD render_toc.
|
||||
|
||||
DATA: lo_repo LIKE LINE OF it_list,
|
||||
lo_toolbar TYPE REF TO lcl_html_toolbar,
|
||||
lv_class TYPE string.
|
||||
lo_toolbar TYPE REF TO lcl_html_toolbar.
|
||||
|
||||
CREATE OBJECT ro_html.
|
||||
CREATE OBJECT lo_toolbar.
|
||||
|
@ -20007,10 +20130,12 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
ENDIF.
|
||||
|
||||
LOOP AT it_list INTO lo_repo.
|
||||
lo_toolbar->add( iv_txt = lo_repo->get_name( ) iv_cmd = |#{ lo_repo->get_name( ) }| ).
|
||||
lo_toolbar->add( iv_txt = lo_repo->get_name( )
|
||||
iv_cmd = |#{ lo_repo->get_name( ) }| ).
|
||||
ENDLOOP.
|
||||
|
||||
ro_html->add( '<div id="toc">' ) ##NO_TEXT.
|
||||
ro_html->add( '<img src="img/toc">' ).
|
||||
ro_html->add( lo_toolbar->render( ) ).
|
||||
ro_html->add( '</div>' ).
|
||||
|
||||
|
@ -20020,19 +20145,24 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
|
||||
CREATE OBJECT ro_html.
|
||||
|
||||
ro_html->add( '<div id="toc">' ).
|
||||
ro_html->add( 'Error:<br>' ) ##NO_TEXT.
|
||||
ro_html->add( ix_error->mv_text ).
|
||||
ro_html->add( '<div class="dummydiv error">' ).
|
||||
ro_html->add( |Error: { ix_error->mv_text }| ).
|
||||
ro_html->add( '</div>' ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
||||
METHOD render_explore.
|
||||
|
||||
CREATE OBJECT ro_html.
|
||||
DATA lo_toolbar TYPE REF TO lcl_html_toolbar.
|
||||
|
||||
ro_html->add( '<div id="toc">' ).
|
||||
ro_html->add( '<a href="sapevent:explore">Explore</a> new projects' ).
|
||||
CREATE OBJECT ro_html.
|
||||
CREATE OBJECT lo_toolbar.
|
||||
|
||||
lo_toolbar->add( iv_txt = 'Explore new projects'
|
||||
iv_cmd = 'explore' ).
|
||||
|
||||
ro_html->add( '<div class="dummydiv">' ).
|
||||
ro_html->add( lo_toolbar->render( ) ).
|
||||
ro_html->add( '</div>' ).
|
||||
|
||||
ENDMETHOD.
|
||||
|
@ -20047,7 +20177,6 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
|
||||
|
||||
CREATE OBJECT ro_html.
|
||||
|
||||
CREATE OBJECT go_user.
|
||||
|
||||
ro_html->add( header( io_include_style = styles( ) ) ).
|
||||
|
@ -20056,14 +20185,12 @@ CLASS lcl_gui_page_main IMPLEMENTATION.
|
|||
TRY.
|
||||
lt_repos = lcl_repo_srv=>list( ).
|
||||
CATCH lcx_exception INTO lx_error.
|
||||
* if wrong meta data exists in database, make sure to still render the menu
|
||||
* where it is possible to use the database tool
|
||||
ro_html->add( render_error( lx_error ) ).
|
||||
ENDTRY.
|
||||
|
||||
ro_html->add( render_toc( lt_repos ) ).
|
||||
|
||||
IF lines( lt_repos ) = 0.
|
||||
IF lines( lt_repos ) = 0 AND lx_error IS INITIAL.
|
||||
ro_html->add( render_explore( ) ).
|
||||
ELSE.
|
||||
LOOP AT lt_repos INTO lo_repo.
|
||||
|
|
Loading…
Reference in New Issue
Block a user