1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | |
28 | |
29 |
30 |
31 |
32 | FORM html_main_header |
33 | USING |
34 | value(i_title) |
35 | value(i_name_field) |
36 | value(i_name_value) |
37 | value(i_name_active) |
38 | value(i_descr_field) |
39 | value(i_descr_value) |
40 | value(i_onresize) |
41 | it_tabstrip TYPE it_tabstrip |
42 | it_link TYPE it_link |
43 | CHANGING |
44 | ct_html TYPE it_string. |
45 | |
46 | DATA: |
47 | lt_tabstrip TYPE it_tabstrip, |
48 | ls_html TYPE string, |
49 | l_class TYPE string, |
50 | l_laiso TYPE laiso, |
51 | l_sptxt TYPE sptxt, |
52 | l_title TYPE string. |
53 | |
54 | FIELD-SYMBOLS: |
55 | <ls_link> TYPE st_link, |
56 | <ls_tabstrip> TYPE st_tabstrip. |
57 | |
58 | l_title = i_title. |
59 | PERFORM replace_single |
60 | USING '#NAME_VALUE#' i_name_value |
61 | CHANGING l_title. |
62 | |
63 | PERFORM get_spras |
64 | USING |
65 | sy-langu |
66 | l_laiso |
67 | l_sptxt. |
68 | PERFORM get_tabstrip_defined |
69 | USING it_tabstrip |
70 | CHANGING lt_tabstrip. |
71 |
72 | CONCATENATE |
73 | '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"' |
74 | ' "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' |
75 | INTO ls_html. |
76 | APPEND ls_html TO ct_html. |
77 | CONCATENATE |
78 | '<html xmlns="http://www.w3.org/1999/xhtml"' |
79 | ' xml:lang="' l_laiso '" lang="' l_laiso '">' |
80 | INTO ls_html. |
81 | APPEND ls_html TO ct_html. |
82 | CONCATENATE |
83 | '<head>' |
84 | '<title id="title">' l_title '</title>' |
85 | INTO ls_html. |
86 | APPEND ls_html TO ct_html. |
87 | PERFORM html_add_meta CHANGING ct_html. |
88 |
89 | PERFORM html_main_js |
90 | USING |
91 | l_title |
92 | i_onresize |
93 | lt_tabstrip |
94 | CHANGING |
95 | ct_html. |
96 |
97 | PERFORM html_main_style |
98 | CHANGING |
99 | ct_html. |
100 | * |
101 | CONCATENATE |
102 | '</head>' |
103 | '<body id="body" onload="myOnResize()">' INTO ls_html. |
104 | APPEND ls_html TO ct_html. |
105 | * |
106 | CONCATENATE |
107 | '<script type="text/javascript">' |
108 | '<!--' |
109 | INTO ls_html. |
110 | APPEND ls_html TO ct_html. |
111 | CONCATENATE |
112 | 'if(top==self){' |
113 | 'document.write("' |
114 | '<table>' |
115 | '<tr>' |
116 | '<td class=\"button\">' |
117 | '<a href=\"../index.htm\"' |
118 | ' onclick=\"addFrame();return false\">' |
119 | txt_frameset |
120 | '<\/a>' |
121 | '<\/td>' |
122 | '<\/tr>' |
123 | '<\/table>' |
124 | '");' |
125 | '}' |
126 | INTO ls_html. |
127 | APPEND ls_html TO ct_html. |
128 | APPEND '//-->' TO ct_html. |
129 | APPEND '</script>' TO ct_html. |
130 | * |
131 | CONCATENATE |
132 | '<form action="../index.htm" id="addFrame"' |
133 | ' method="get">' |
134 | '<p style="display:none;visibility:hidden">' |
135 | '<input id="addFrameA" name="pgmid" type="hidden"/>' |
136 | '<input id="addFrameB" name="object" type="hidden"/>' |
137 | '<input id="addFrameC" name="obj_name" type="hidden"/>' |
138 | '</p>' |
139 | '</form>' |
140 | INTO ls_html. |
141 | APPEND ls_html TO ct_html. |
142 | * |
143 | IF ( NOT i_name_field IS INITIAL AND NOT i_name_value IS INITIAL ) |
144 | OR ( NOT i_descr_field IS INITIAL AND NOT i_descr_value IS INITIAL ). |
145 | APPEND '<table class="titleTable">' TO ct_html. |
146 | IF NOT i_name_field IS INITIAL AND NOT i_name_value IS INITIAL. |
147 | CONCATENATE |
148 | '<tr>' |
149 | '<td class="titleTableText">' i_name_field '</td>' |
150 | '<td class="titleTableDescr">' i_name_value '</td>' |
151 | '<td>' i_name_active '</td>' |
152 | '<td style="width:100px">' |
153 | '     ' |
154 | '</td>' |
155 | INTO ls_html. |
156 | LOOP AT it_link ASSIGNING <ls_link>. |
157 | CONCATENATE |
158 | ls_html |
159 | '<td> </td>' |
160 | '<td class="button">' |
161 | '<a href="' <ls_link>-href '"' |
162 | ' onclick="' <ls_link>-onclick ';return false"' |
163 | ' title="' <ls_link>-title '">' |
164 | <ls_link>-descript |
165 | '</a>' |
166 | '</td>' |
167 | INTO ls_html. |
168 | ENDLOOP. |
169 | CONCATENATE ls_html '</tr>' INTO ls_html. |
170 | APPEND ls_html TO ct_html. |
171 | ENDIF. |
172 | IF NOT i_descr_field IS INITIAL AND NOT i_descr_value IS INITIAL. |
173 | CONCATENATE |
174 | '<tr>' |
175 | '<td class="titleTableText">' i_descr_field '</td>' |
176 | '<td class="titleTableDescr" colspan="2">' |
177 | i_descr_value |
178 | '</td>' |
179 | '<td> </td>' |
180 | INTO ls_html. |
181 | LOOP AT it_link ASSIGNING <ls_link>. |
182 | CONCATENATE |
183 | ls_html |
184 | '<td colspan="2"> </td>' |
185 | INTO ls_html. |
186 | ENDLOOP. |
187 | CONCATENATE ls_html '</tr>' INTO ls_html. |
188 | APPEND ls_html TO ct_html. |
189 | ENDIF. |
190 | APPEND '</table><div> </div>' TO ct_html. |
191 | ENDIF. |
192 | CONCATENATE |
193 | '<table border="0" cellpadding="0" cellspacing="0"' |
194 | ' class="contentTable" width="100%">' INTO ls_html. |
195 | APPEND ls_html TO ct_html. |
196 | IF NOT lt_tabstrip IS INITIAL. |
197 | READ TABLE lt_tabstrip TRANSPORTING NO FIELDS |
198 | WITH KEY firstrow = abap_true |
199 | hidden = abap_false |
200 | parent_id = space. |
201 | IF sy-subrc = 0. |
202 | CONCATENATE |
203 | '<tr>' |
204 | '<td class="contentTable">' |
205 | '<table border="0" cellpadding="0" cellspacing="0"' |
206 | ' class="contentTable">' |
207 | '<tr>' |
208 | INTO ls_html. |
209 | APPEND ls_html TO ct_html. |
210 | LOOP AT lt_tabstrip ASSIGNING <ls_tabstrip> |
211 | WHERE hidden = abap_false |
212 | AND firstrow = abap_true |
213 | AND parent_id IS INITIAL. |
214 | IF <ls_tabstrip>-disabled = abap_true. |
215 | l_class = 'contentTabDisabled'. |
216 | ELSEIF <ls_tabstrip>-active = abap_true. |
217 | l_class = 'contentTabOn'. |
218 | ELSE. |
219 | l_class = 'contentTabOff'. |
220 | ENDIF. |
221 | IF <ls_tabstrip>-disabled = abap_false. |
222 | CONCATENATE '<td class="' l_class '" id="' <ls_tabstrip>-id |
223 | 'tab"><a href="#" onclick="openTab(''' |
224 | <ls_tabstrip>-id ''')">' |
225 | <ls_tabstrip>-text '</a></td>' INTO ls_html. |
226 | APPEND ls_html TO ct_html. |
227 | ELSE. |
228 | CONCATENATE '<td class="' l_class '" id="' <ls_tabstrip>-id |
229 | 'tab"><a class="linkDisabled" href="#"' |
230 | ' onclick="return false">' |
231 | <ls_tabstrip>-text '</a></td>' INTO ls_html. |
232 | APPEND ls_html TO ct_html. |
233 | ENDIF. |
234 | ENDLOOP. |
235 | CONCATENATE |
236 | '</tr>' |
237 | '</table>' |
238 | '</td>' |
239 | '</tr>' |
240 | INTO ls_html. |
241 | APPEND ls_html TO ct_html. |
242 | ENDIF. |
243 | CONCATENATE |
244 | '<tr>' |
245 | '<td class="contentTable">' |
246 | '<table border="0" cellpadding="0" cellspacing="0"' |
247 | ' class="contentTable">' |
248 | '<tr>' |
249 | INTO ls_html. |
250 | APPEND ls_html TO ct_html. |
251 | LOOP AT lt_tabstrip ASSIGNING <ls_tabstrip> |
252 | WHERE hidden = abap_false |
253 | AND firstrow = abap_false |
254 | AND parent_id IS INITIAL. |
255 | IF <ls_tabstrip>-disabled = abap_true. |
256 | l_class = 'contentTabDisabled'. |
257 | ELSEIF <ls_tabstrip>-active = abap_true. |
258 | l_class = 'contentTabOn'. |
259 | ELSE. |
260 | l_class = 'contentTabOff'. |
261 | ENDIF. |
262 | IF <ls_tabstrip>-disabled = abap_false. |
263 | CONCATENATE '<td class="' l_class '" id="' <ls_tabstrip>-id |
264 | 'tab"><a href="#" onclick="openTab(''' |
265 | <ls_tabstrip>-id ''')">' |
266 | <ls_tabstrip>-text '</a></td>' INTO ls_html. |
267 | APPEND ls_html TO ct_html. |
268 | ELSE. |
269 | CONCATENATE '<td class="' l_class '" id="' <ls_tabstrip>-id |
270 | 'tab"><a class="linkDisabled" href="#"' |
271 | ' onclick="return false">' |
272 | <ls_tabstrip>-text '</a></td>' INTO ls_html. |
273 | APPEND ls_html TO ct_html. |
274 | ENDIF. |
275 | ENDLOOP. |
276 | CONCATENATE |
277 | '</tr>' |
278 | '</table>' |
279 | '</td>' |
280 | '</tr>' |
281 | INTO ls_html. |
282 | APPEND ls_html TO ct_html. |
283 | ENDIF. |
284 | APPEND '<tr>' TO ct_html. |
285 | APPEND '<td class="contentBox">' TO ct_html. |
286 | |
287 | ENDFORM. "html_main_header |
288 | |
289 | |
290 |
291 |
292 |
293 | FORM html_main_js |
294 | USING |
295 | value(i_title) |
296 | value(i_onresize) |
297 | it_tabstrip TYPE it_tabstrip |
298 | CHANGING |
299 | ct_html TYPE it_string. |
300 | |
301 | DATA: |
302 | ls_html TYPE string. |
303 | |
304 | FIELD-SYMBOLS: |
305 | <ls_tabstrip> TYPE st_tabstrip. |
306 | |
307 | CONCATENATE |
308 | '<script type="text/javascript">' |
309 | '<!--' |
310 | INTO ls_html. |
311 | APPEND ls_html TO ct_html. |
312 |
313 | CONCATENATE |
314 | 'function addFrame() {' |
315 | 'var parts;' |
316 | 'if(window.location.pathname.indexOf("\\") >= 0) {' |
317 | 'parts = window.location.pathname.split("\\");' |
318 | '}' |
319 | 'else {' |
320 | 'parts = window.location.pathname.split("/");' |
321 | '}' |
322 | 'var po = parts[parts.length-2].split("_");' |
323 | 'document.getElementById("addFrameA").value = po[0];' |
324 | 'document.getElementById("addFrameB").value = po[1];' |
325 | 'var objName = parts[parts.length-1];' |
326 | 'objName = objName.substring(0,objName.lastIndexOf("."));' |
327 | 'document.getElementById("addFrameC").value = objName;' |
328 | 'document.getElementById("addFrame").submit();' |
329 | '}' |
330 | INTO ls_html. |
331 | APPEND ls_html TO ct_html. |
332 |
333 | CONCATENATE |
334 | 'function loadIFrame(id, url) {' |
335 | 'var iframeElem;' |
336 | 'var myHTML;' |
337 | 'myHTML="<iframe frameborder=\"0\"' |
338 | ' height=\"400\"' |
339 | ' id=\""+id+"scroll\"' |
340 | ' scrolling=\"auto\"' |
341 | ' src=\""+url+"\"' |
342 | ' width=\"90%\">' |
343 | '<\/iframe>";' |
344 | 'iframeElem=document.getElementById(id+"iframe");' |
345 | 'iframeElem.innerHTML=myHTML;' |
346 | '}' |
347 | INTO ls_html. |
348 | APPEND ls_html TO ct_html. |
349 |
350 | CONCATENATE |
351 | 'function makeDivSize(divName) {' |
352 | 'var winHeight;' |
353 | 'var winWidth;' |
354 | 'var bodyHeight;' |
355 | 'var divPar;' |
356 | 'var divElem;' |
357 | 'var divHeight;' |
358 | 'var divHeightNew;' |
359 | 'var divWidthNew;' |
360 | 'divPar = document.getElementById(divName+"div");' |
361 | 'if(divPar == null' |
362 | ' || divPar.style.visibility == "hidden") {' |
363 | 'return;' |
364 | '}' |
365 | 'divElem = document.getElementById(divName+"scroll");' |
366 | 'if(divElem == null) {' |
367 | 'return;' |
368 | '}' |
369 | 'divElem.style.overflowX = "auto";' |
370 | 'divElem.style.overflowY = "auto";' |
371 | 'winHeight = window.innerHeight;' |
372 | 'winWidth = window.innerWidth;' |
373 | 'bodyHeight = document.body.offsetHeight;' |
374 | 'divHeight = divElem.offsetHeight;' |
375 | 'divHeightNew = divHeight+winHeight-bodyHeight-20;' |
376 | 'divWidthNew = winWidth-40;' |
377 | 'divElem.style.height = divHeightNew + "px";' |
378 | 'divElem.style.width = divWidthNew + "px";' |
379 | '}' |
380 | INTO ls_html. |
381 | APPEND ls_html TO ct_html. |
382 |
383 | CONCATENATE |
384 | 'function myOnResize() {' |
385 | i_onresize ';' |
386 | '}' |
387 | INTO ls_html. |
388 | APPEND ls_html TO ct_html. |
389 |
390 | CONCATENATE |
391 | 'function openChildTab(parentID, tabID) {' |
392 | 'var elem;' |
393 | 'switchChildContent(parentID, tabID);' |
394 | INTO ls_html. |
395 | APPEND ls_html TO ct_html. |
396 | LOOP AT it_tabstrip ASSIGNING <ls_tabstrip> |
397 | WHERE disabled = abap_false |
398 | AND NOT parent_id IS INITIAL. |
399 | IF <ls_tabstrip>-hidden = abap_false. |
400 | CONCATENATE |
401 | 'document.getElementById("' <ls_tabstrip>-id 'tab")' |
402 | '.className="contentTabOff";' |
403 | INTO ls_html. |
404 | APPEND ls_html TO ct_html. |
405 | ENDIF. |
406 | ENDLOOP. |
407 | LOOP AT it_tabstrip ASSIGNING <ls_tabstrip> |
408 | WHERE disabled = abap_false |
409 | AND NOT parent_id IS INITIAL |
410 | and ACTIVE = abap_true. |
411 | CONCATENATE |
412 | 'if(parentID!="' <ls_tabstrip>-parent_id '"){' |
413 | 'document.getElementById(tabID+"tab")' |
414 | '.className="contentTabOn";' |
415 | '}' |
416 | INTO ls_html. |
417 | APPEND ls_html TO ct_html. |
418 | ENDLOOP. |
419 | CONCATENATE |
420 | 'document.getElementById(tabID+"tab")' |
421 | '.className="contentTabOn";' |
422 | '}' |
423 | INTO ls_html. |
424 | APPEND ls_html TO ct_html. |
425 |
426 | CONCATENATE |
427 | 'function openTab(tabID) {' |
428 | 'var elem;' |
429 | 'switchContent(tabID);' |
430 | INTO ls_html. |
431 | APPEND ls_html TO ct_html. |
432 | LOOP AT it_tabstrip ASSIGNING <ls_tabstrip> |
433 | WHERE disabled = abap_false |
434 | AND parent_id IS INITIAL. |
435 | IF <ls_tabstrip>-hidden = abap_false. |
436 | CONCATENATE |
437 | 'document.getElementById("' <ls_tabstrip>-id 'tab")' |
438 | '.className="contentTabOff";' |
439 | INTO ls_html. |
440 | APPEND ls_html TO ct_html. |
441 | ENDIF. |
442 | ENDLOOP. |
443 | CONCATENATE |
444 | 'document.getElementById(tabID+"tab")' |
445 | '.className="contentTabOn";' |
446 | '}' |
447 | INTO ls_html. |
448 | APPEND ls_html TO ct_html. |
449 |
450 | CONCATENATE |
451 | 'function setTitle() {' |
452 | 'try {' |
453 | 'if(top!=self) {' |
454 | 'parent.setTitle("' i_title '");' |
455 | '}' |
456 | '}' |
457 | 'catch(e) {' |
458 | '}' |
459 | '}' |
460 | INTO ls_html. |
461 | APPEND ls_html TO ct_html. |
462 |
463 | CONCATENATE |
464 | 'function switchChildContent(parentID, tabID) {' |
465 | 'var elem;' |
466 | INTO ls_html. |
467 | APPEND ls_html TO ct_html. |
468 | LOOP AT it_tabstrip ASSIGNING <ls_tabstrip> |
469 | WHERE disabled = abap_false |
470 | AND NOT parent_id IS INITIAL. |
471 | CONCATENATE |
472 | 'elem=document.getElementById("' |
473 | <ls_tabstrip>-id 'div");' |
474 | 'elem.style.display="none";' |
475 | 'elem.style.visibility="hidden";' |
476 | INTO ls_html. |
477 | APPEND ls_html TO ct_html. |
478 | ENDLOOP. |
479 | LOOP AT it_tabstrip ASSIGNING <ls_tabstrip> |
480 | WHERE disabled = abap_false |
481 | AND NOT parent_id IS INITIAL |
482 | and ACTIVE = abap_true. |
483 | CONCATENATE |
484 | 'if(parentID!="' <ls_tabstrip>-parent_id '"){' |
485 | 'elem=document.getElementById(tabID+"div");' |
486 | 'elem.style.display="block";' |
487 | 'elem.style.visibility="visible";' |
488 | '}' |
489 | INTO ls_html. |
490 | APPEND ls_html TO ct_html. |
491 | ENDLOOP. |
492 | CONCATENATE |
493 | 'elem=document.getElementById(tabID+"div");' |
494 | 'elem.style.display="block";' |
495 | 'elem.style.visibility="visible";' |
496 | i_onresize ';' |
497 | '}' |
498 | INTO ls_html. |
499 | APPEND ls_html TO ct_html. |
500 |
501 | CONCATENATE |
502 | 'function switchContent(tabID) {' |
503 | 'var elem;' |
504 | INTO ls_html. |
505 | APPEND ls_html TO ct_html. |
506 | LOOP AT it_tabstrip ASSIGNING <ls_tabstrip> |
507 | WHERE disabled = abap_false |
508 | AND parent_id IS INITIAL. |
509 | CONCATENATE |
510 | 'elem=document.getElementById("' |
511 | <ls_tabstrip>-id 'div");' |
512 | 'elem.style.display="none";' |
513 | 'elem.style.visibility="hidden";' |
514 | INTO ls_html. |
515 | APPEND ls_html TO ct_html. |
516 | ENDLOOP. |
517 | CONCATENATE |
518 | 'elem=document.getElementById(tabID+"div");' |
519 | 'elem.style.display="block";' |
520 | 'elem.style.visibility="visible";' |
521 | i_onresize ';' |
522 | '}' |
523 | INTO ls_html. |
524 | APPEND ls_html TO ct_html. |
525 | * |
526 | APPEND '//--></script>' TO ct_html. |
527 | |
528 | ENDFORM. "html_main_js |
529 | |
530 | |
531 |
532 |
533 |
534 | FORM html_main_footer |
535 | CHANGING |
536 | ct_html TYPE it_string. |
537 | |
538 | DATA: |
539 | ls_html TYPE string. |
540 | |
541 | CONCATENATE |
542 | '</td>' |
543 | '</tr>' |
544 | '</table>' |
545 | '<script type="text/javascript">' |
546 | '<!--' |
547 | INTO ls_html. |
548 | APPEND ls_html TO ct_html. |
549 | APPEND 'window.setTimeout("setTitle()",50);' TO ct_html. |
550 | APPEND 'window.onresize = myOnResize;' TO ct_html. |
551 | APPEND '//-->' TO ct_html. |
552 | APPEND '</script>' TO ct_html. |
553 | CONCATENATE |
554 | '</body>' |
555 | '</html>' |
556 | INTO ls_html. |
557 | APPEND ls_html TO ct_html. |
558 | |
559 | ENDFORM. "mainAddHTMLFooter |
560 | |
561 | |
562 |
563 |
564 |
565 | FORM html_main_iframeheader |
566 | USING |
567 | value(i_title) |
568 | CHANGING |
569 | ct_html TYPE it_string. |
570 | |
571 | DATA: |
572 | ls_html TYPE string, |
573 | l_laiso TYPE laiso, |
574 | l_sptxt TYPE sptxt. |
575 | |
576 | FIELD-SYMBOLS: |
577 | <ls_tabstrip> TYPE st_tabstrip. |
578 | |
579 | PERFORM get_spras |
580 | USING |
581 | sy-langu |
582 | l_laiso |
583 | l_sptxt. |
584 | |
585 | CONCATENATE |
586 | '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"' |
587 | ' "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' |
588 | INTO ls_html. |
589 | APPEND ls_html TO ct_html. |
590 | CONCATENATE |
591 | '<html xmlns="http://www.w3.org/1999/xhtml"' |
592 | ' xml:lang="' l_laiso '" lang="' l_laiso '">' |
593 | INTO ls_html. |
594 | APPEND ls_html TO ct_html. |
595 | CONCATENATE |
596 | '<head>' |
597 | '<title id="title">' i_title '</title>' |
598 | INTO ls_html. |
599 | APPEND ls_html TO ct_html. |
600 | PERFORM html_add_meta CHANGING ct_html. |
601 | PERFORM html_main_style |
602 | CHANGING |
603 | ct_html. |
604 | CONCATENATE |
605 | '</head>' |
606 | '<body class="iframebody" id="body">' |
607 | INTO ls_html. |
608 | APPEND ls_html TO ct_html. |
609 | |
610 | ENDFORM. "html_main_iFrameHeader |
611 | |
612 | |
613 |
614 |
615 |
616 | FORM html_main_iframefooter |
617 | CHANGING |
618 | ct_html TYPE it_string. |
619 | |
620 | DATA: |
621 | ls_html TYPE string. |
622 | |
623 | CONCATENATE |
624 | '</body>' |
625 | '</html>' |
626 | INTO ls_html. |
627 | APPEND ls_html TO ct_html. |
628 | |
629 | ENDFORM. "html_main_iFrameFooter |
630 | |
631 | |
632 |
633 |
634 |
635 | FORM html_main_popupheader |
636 | USING |
637 | value(i_title) |
638 | CHANGING |
639 | ct_html TYPE it_string. |
640 | |
641 | DATA: |
642 | ls_html TYPE string, |
643 | l_laiso TYPE laiso, |
644 | l_sptxt TYPE sptxt. |
645 | |
646 | FIELD-SYMBOLS: |
647 | <ls_tabstrip> TYPE st_tabstrip. |
648 | |
649 | PERFORM get_spras |
650 | USING |
651 | sy-langu |
652 | l_laiso |
653 | l_sptxt. |
654 | |
655 | CONCATENATE |
656 | '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"' |
657 | ' "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">' |
658 | INTO ls_html. |
659 | APPEND ls_html TO ct_html. |
660 | CONCATENATE |
661 | '<html xmlns="http://www.w3.org/1999/xhtml"' |
662 | ' xml:lang="' l_laiso '" lang="' l_laiso '">' |
663 | INTO ls_html. |
664 | APPEND ls_html TO ct_html. |
665 | CONCATENATE |
666 | '<head>' |
667 | '<title id="title">' i_title '</title>' |
668 | INTO ls_html. |
669 | APPEND ls_html TO ct_html. |
670 | PERFORM html_add_meta CHANGING ct_html. |
671 | PERFORM html_main_style |
672 | CHANGING |
673 | ct_html. |
674 | CONCATENATE |
675 | '</head>' |
676 | '<body class="popupbody" id="body">' |
677 | INTO ls_html. |
678 | APPEND ls_html TO ct_html. |
679 | |
680 | ENDFORM. "html_main_popupHeader |
681 | |
682 | |
683 |
684 |
685 |
686 | FORM html_main_popupfooter |
687 | CHANGING |
688 | ct_html TYPE it_string. |
689 | |
690 | DATA: |
691 | ls_html TYPE string. |
692 | |
693 | CONCATENATE |
694 | '</body>' |
695 | '</html>' |
696 | INTO ls_html. |
697 | APPEND ls_html TO ct_html. |
698 | |
699 | ENDFORM. "html_main_popupFooter |
700 | |
701 | |
702 |
703 |
704 |
705 | FORM html_main_style |
706 | CHANGING |
707 | ct_html TYPE it_string. |
708 | |
709 | DATA: |
710 | ls_html TYPE string. |
711 | |
712 | APPEND '<style type="text/css">' TO ct_html. |
713 | CONCATENATE |
714 | 'a {' |
715 | 'color:black;' |
716 | 'font-family:arial;' |
717 | 'font-size:10px;' |
718 | 'font-style:normal;' |
719 | 'font-weight:normal;' |
720 | 'text-decoration:none;' |
721 | '}' |
722 | 'a:active {' |
723 | 'color:darkred;' |
724 | '}' |
725 | 'a:focus {' |
726 | 'color:darkred;' |
727 | '}' |
728 | 'a:hover {' |
729 | 'color:red;' |
730 | '}' |
731 | 'a:link {' |
732 | 'color:black;' |
733 | '}' |
734 | 'a:visited {' |
735 | 'color:#000000;' |
736 | '}' |
737 | 'body {' |
738 | 'background-color:#94b6c6;' |
739 | 'margin:10px;' |
740 | '}' |
741 | 'pre {' |
742 | 'font-size:11px;' |
743 | 'margin:0px;' |
744 | 'padding:0px;' |
745 | '}' |
746 | 'span {' |
747 | 'color:#000000;' |
748 | 'font-family:arial;' |
749 | 'font-size:10px;' |
750 | 'font-style:normal;' |
751 | 'font-weight:normal;' |
752 | 'text-decoration:none;' |
753 | 'white-space:nowrap;' |
754 | '}' |
755 | 'td {' |
756 | 'color:black;' |
757 | 'empty-cells:show;' |
758 | 'font-family:arial;' |
759 | 'font-size:10px;' |
760 | 'font-style:normal;' |
761 | 'font-weight:normal;' |
762 | 'text-align:left;' |
763 | 'text-decoration:none;' |
764 | 'white-space:nowrap;' |
765 | '}' |
766 | 'th {' |
767 | 'color:black;' |
768 | 'empty-cells:show;' |
769 | 'font-family:arial;' |
770 | 'font-size:10px;' |
771 | 'font-style:normal;' |
772 | 'font-weight:normal;' |
773 | 'text-align:center;' |
774 | 'text-decoration:none;' |
775 | 'white-space:nowrap;' |
776 | '}' |
777 | '.box {' |
778 | 'border:1px solid #73716b;' |
779 | 'border-spacing:0px !important;' |
780 | 'padding:0px !important;' |
781 | 'margin:0px !important;' |
782 | '}' |
783 | '.boxContent {' |
784 | 'background-color:#ded7c5;' |
785 | 'border-spacing:0px !important;' |
786 | 'padding:0px !important;' |
787 | 'margin:0px !important;' |
788 | '}' |
789 | '.boxName {' |
790 | 'background-color:#cecabd;' |
791 | 'border-bottom:1px solid #73716b;' |
792 | 'border-left-width:0px;' |
793 | 'border-right:1px solid #73716b;' |
794 | 'border-top-width:0px;' |
795 | 'border-spacing:0px !important;' |
796 | 'margin:0px 3px 2px 0px !important;' |
797 | 'padding:1px 2px 1px 2px;' |
798 | '}' |
799 | '.boxContainerTd {' |
800 | 'border-spacing:0px !important;' |
801 | 'padding:0px !important;' |
802 | 'margin:0px !important;' |
803 | 'vertical-align:top;' |
804 | '}' |
805 | '.button {' |
806 | 'background-color:#efefde;' |
807 | 'border:1px solid #73716b;' |
808 | 'color:#000000;' |
809 | 'font-weight:bolder;' |
810 | 'font-size:8px;' |
811 | 'padding:1px 3px 1px 3px;' |
812 | 'text-align:center;' |
813 | 'vertical-align:middle;' |
814 | '}' |
815 | '.container {' |
816 | 'border-spacing:0px !important;' |
817 | '}' |
818 | '.containerContent {' |
819 | 'border:1px solid #73716b;' |
820 | 'border-spacing:0px !important;' |
821 | 'padding:2px;' |
822 | 'margin:0px !important;' |
823 | '}' |
824 | '.containerTitle {' |
825 | 'background-color:#cecabd;' |
826 | 'border-color:#73716b;' |
827 | 'border-spacing:0px !important;' |
828 | 'border-style:solid;' |
829 | 'border-width:1px 1px 0px 1px;' |
830 | 'margin:0px !important;' |
831 | 'padding:1px 2px 1px 2px;' |
832 | '}' |
833 | '.contentBox {' |
834 | 'background-color:#ded7c5;' |
835 | 'border-color:#ffffff #000000 #000000 #ffffff;' |
836 | 'border-style:solid;' |
837 | 'border-width:1px;' |
838 | 'padding:20px 5px 20px 5px;' |
839 | '}' |
840 | '.contentDiv {' |
841 | 'background-color:#ded7c5;' |
842 | 'height:100%;' |
843 | 'width:100%;' |
844 | '}' |
845 | '.contentTable {' |
846 | 'padding:0px;' |
847 | 'border-spacing:0px;' |
848 | '}' |
849 | '.contentTabDisabled {' |
850 | 'background-color:#c5c6b5;' |
851 | 'border-color:#ffffff #000000 #000000 #ffffff;' |
852 | 'border-style:solid;' |
853 | 'border-width:1px;' |
854 | 'color:#999999;' |
855 | 'padding:1px 10px 1px 10px;' |
856 | '}' |
857 | '.contentTabOff {' |
858 | 'background-color:#c5c6b5;' |
859 | 'border-color:#ffffff #000000 #000000 #ffffff;' |
860 | 'border-style:solid;' |
861 | 'border-width:1px;' |
862 | 'padding:1px 10px 1px 10px;' |
863 | '}' |
864 | '.contentTabOn {' |
865 | 'background-color:#ded7c5;' |
866 | 'border-color:#ffffff #000000 #000000 #ffffff;' |
867 | 'border-style:solid;' |
868 | 'border-width:1px 1px 0px 1px;' |
869 | 'padding:1px 10px 1px 10px;' |
870 | '}' |
871 | '.iframebody {' |
872 | 'background-color:#ded7c5;' |
873 | 'margin:0px;' |
874 | '}' |
875 | '.info {' |
876 | 'color:#0000ff' |
877 | '}' |
878 | '.innerTable {' |
879 | 'border-color:#73716b;' |
880 | 'border-style:solid;' |
881 | 'border-width:0px 0px 1px 1px;' |
882 | '}' |
883 | '.innerTableButton {' |
884 | 'background-color:#efefde;' |
885 | 'border:1px solid #73716b;' |
886 | 'color:#000000;' |
887 | 'font-weight:bolder;' |
888 | 'font-size:8px;' |
889 | 'padding:1px 3px 1px 3px;' |
890 | 'text-align:center;' |
891 | 'vertical-align:middle;' |
892 | 'width:20px;' |
893 | '}' |
894 | '.innerTableFlag {' |
895 | 'background-color:#cecebd;' |
896 | 'border:1px solid #ffffff;' |
897 | 'border-spacing:0px;' |
898 | 'color:#73716b;' |
899 | 'height:12px !important;' |
900 | 'margin:0px;' |
901 | 'padding:0px;' |
902 | 'width:12px !important;' |
903 | '}' |
904 | '.innerTableTD {' |
905 | 'background-color:#cecebd;' |
906 | 'border-color:#73716b;' |
907 | 'border-style:solid;' |
908 | 'border-width:1px 1px 0px 0px;' |
909 | 'empty-cells:show;' |
910 | 'padding:1px 3px 1px 3px;' |
911 | '}' |
912 | '.innerTableTDColored {' |
913 | 'background-color:#cecebd;' |
914 | 'border-color:#73716b;' |
915 | 'border-style:solid;' |
916 | 'border-width:1px 1px 0px 0px;' |
917 | 'color:#0000ff !important;' |
918 | 'empty-cells:show;' |
919 | 'padding:1px 3px 1px 3px;' |
920 | '}' |
921 | '.innerTableTH {' |
922 | 'background-color:#efefde;' |
923 | 'border-color:#73716b;' |
924 | 'border-style:solid;' |
925 | 'border-width:1px 1px 0px 0px;' |
926 | 'padding:1px 3px 1px 3px;' |
927 | '}' |
928 | '.innerTableTHtop {' |
929 | 'background-color:#cecabd;' |
930 | 'border-color:#73716b;' |
931 | 'border-style:solid;' |
932 | 'border-width:1px 1px 0px 0px;' |
933 | 'padding:1px 3px 1px 3px;' |
934 | '}' |
935 | '.linkDisabled {' |
936 | 'color:#888888 !important;' |
937 | '}' |
938 | '.popupbody {' |
939 | 'background-color:#94b2c5;' |
940 | 'margin:0px;' |
941 | '}' |
942 | '.radio {' |
943 | 'margin:0px' |
944 | '}' |
945 | '.scrollDiv {' |
946 | 'background-color:#ded7c5;' |
947 | '}' |
948 | '.scrollTable {' |
949 | 'border-spacing:0px;' |
950 | 'padding:0px;' |
951 | '}' |
952 | '.src {' |
953 | 'background-color:#cdcbbd;' |
954 | 'border-color:#ffffff #8c8e8c #8c8e8c #ffffff;' |
955 | 'border-style:solid;' |
956 | 'border-width:1px;' |
957 | 'overflow:auto;' |
958 | '}' |
959 | '.srcLine {' |
960 | 'color:#000000;' |
961 | 'empty-cells:show;' |
962 | '}' |
963 | '.srcLineComment {' |
964 | 'color:#0000ff;' |
965 | 'empty-cells:show;' |
966 | '}' |
967 | '.srcLineNumber {' |
968 | 'padding-right:5px;' |
969 | 'text-align:right;' |
970 | '}' |
971 | '.tableLink {' |
972 | 'color:#000000 !important;' |
973 | '}' |
974 | '.tableLinkColored {' |
975 | 'color:#0000ff !important;' |
976 | '}' |
977 | '.titleTable {' |
978 | 'border-spacing:2px;' |
979 | '}' |
980 | '.titleTableDescr {' |
981 | 'background-color:#cecebd;' |
982 | 'border:1px solid #ffffff;' |
983 | 'padding:1px 5px 1px 5px;' |
984 | '}' |
985 | '.titleTableText {' |
986 | 'border-bottom:1px solid #ffffff;' |
987 | 'padding-right:20px;' |
988 | '}' |
989 | INTO ls_html. |
990 | APPEND ls_html TO ct_html. |
991 | APPEND '</style>' TO ct_html. |
992 | |
993 | ENDFORM. "addHTMLStyle |