DBA Data[Home] [Help]

PACKAGE BODY: SYS.HTF

Source


1 package body htf as
2 
3 /* This function is private to the HTF package */
4 function IFNOTNULL(str1 in varchar2 character set any_cs,
5                    str2 in varchar2 character set any_cs)
6                    return varchar2 character set str2%charset
7 is
8 begin
9    if (str1 is NULL)
10      then return (NULL);
11      else return (str2);
12    end if;
13 end;
14 
15 /* STRUCTURE tags */
16 function bodyOpen(cbackground in varchar2 DEFAULT NULL,
17                   cattributes in varchar2 DEFAULT NULL) return varchar2 is
18     l_str varchar2(32767);
19 begin
20     l_str := '<body';
21     if cbackground is not null then
22         l_str := l_str||' background="'||cbackground||'"';
23     end if;
24     if cattributes is not null then
25         l_str := l_str||' '||cattributes;
26     end if;
27     l_str := l_str||'>';
28     return l_str;
29 end;
30 /* END STRUCTURE tags */
31 
32 /* HEAD Related elements tags */
33 function title  (ctitle in varchar2 character set any_cs) return varchar2 character set ctitle%charset is
34 begin return ('<title>'||ctitle||'</title>'); end;
35 
36 function htitle(ctitle      in varchar2 character set any_cs,
37                 nsize       in integer  DEFAULT 1,
38                 calign      in varchar2 DEFAULT NULL,
39                 cnowrap     in varchar2 DEFAULT NULL,
40                 cclear      in varchar2 DEFAULT NULL,
41                 cattributes in varchar2 DEFAULT NULL)
42                 return varchar2 character set ctitle%charset is
43 begin return (title(ctitle)||
44               header(nsize,ctitle,calign,cnowrap,cclear,cattributes)); end;
45 
46 function base(ctarget   in varchar2 DEFAULT NULL,
47               cattributes in varchar2 DEFAULT NULL) return varchar2 is
48    protocol varchar2(2000);
49 begin
50    protocol := owa_util.get_cgi_env ('REQUEST_PROTOCOL');
51    if (protocol is null) then
52       protocol := 'http';
53    else
54       protocol := lower (protocol);
55    end if;
56 
57    return('<base'||
58        IFNOTNULL(ctarget,' target="'||ctarget||'"')||
59             IFNOTNULL(cattributes,' '||cattributes)||
60        ' href="' || protocol || '://'||
61                  owa_util.get_cgi_env('SERVER_NAME')||':'||
62                  owa_util.get_cgi_env('SERVER_PORT')||
63                  owa_util.get_cgi_env('SCRIPT_NAME')||
64                  owa_util.get_cgi_env('PATH_INFO')||'" />');
65 end;
66 
67 function isindex(cprompt in varchar2 character set any_cs DEFAULT NULL,
68                  curl    in varchar2 DEFAULT NULL)
69                  return varchar2 character set cprompt%charset is
70 begin return('<isindex'||
71               IFNOTNULL(cprompt,' prompt="'||cprompt||'"')||
72               IFNOTNULL(curl,' href="'||curl||'"')||
73              '>'); end;
74 
75 function linkRel(crel   in varchar2,
76                  curl   in varchar2,
77                  ctitle in varchar2 character set any_cs DEFAULT NULL)
78                  return varchar2 character set ctitle%charset is
79 begin return('<link rel="'||crel||'"'||
80                   ' href="'||curl||'"'||
81                IFNOTNULL(ctitle,' title="'||ctitle||'"')||
82              '>'); end;
83 
84 function linkRev(crev   in varchar2,
85                  curl   in varchar2,
86                  ctitle in varchar2 character set any_cs DEFAULT NULL)
87                  return varchar2 character set ctitle%charset is
88 begin return('<link rev="'||crev||'"'||
89                   ' href="'||curl||'"'||
90                IFNOTNULL(ctitle,' title="'||ctitle||'"')||
91              '>'); end;
92 
93 function meta(chttp_equiv in varchar2,
94               cname       in varchar2,
95               ccontent    in varchar2) return varchar2 is
96 begin return('<meta http-equiv="'||chttp_equiv||
97                        '" name="'||cname||
98                     '" content="'||ccontent||
99                     '">');
100 end;
101 
102 function nextid(cidentifier in varchar2) return varchar2 is
103 begin return ('<nextid n="'||cidentifier||'>'); end;
104 
105 function style(cstyle in varchar2 character set any_cs)
106               return varchar2 character set cstyle%charset is
107 begin return ('<style>'||cstyle||'</style>'); end;
108 
109 function script(cscript in varchar2,
110                 clanguage in varchar2 DEFAULT NULL) return varchar2 is
111 begin return('<script'||
112        IFNOTNULL(clanguage,' language='''||clanguage||'''')||
113        '>'||cscript||
114        '</script>');
115 end;
116 
117 /* END HEAD Related elements tags */
118 
119 /* BODY ELEMENT tags */
120 function hr  (cclear      in varchar2 DEFAULT NULL,
121               csrc        in varchar2 DEFAULT NULL,
122               cattributes in varchar2 DEFAULT NULL) return varchar2 is
123 begin return('<hr'||
124               IFNOTNULL(cclear,' clear="'||cclear||'"')||
125               IFNOTNULL(csrc,' src="'||csrc||'"')||
126               IFNOTNULL(cattributes,' '||cattributes)||
127              ' />');
128 end;
129 
130 function line(cclear      in varchar2 DEFAULT NULL,
131               csrc        in varchar2 DEFAULT NULL,
132               cattributes in varchar2 DEFAULT NULL) return varchar2 is
133 begin return(hr(cclear, csrc, cattributes)); end;
134 
135 function br(cclear      in varchar2 DEFAULT NULL,
136             cattributes in varchar2 DEFAULT NULL) return varchar2 is
137 begin return('<br'||
138               IFNOTNULL(cclear,' clear="'||cclear||'"')||
139               IFNOTNULL(cattributes,' '||cattributes)||
140              ' />');
141 end;
142 
143 function nl(cclear      in varchar2 DEFAULT NULL,
144             cattributes in varchar2 DEFAULT NULL) return varchar2 is
145 begin return(br(cclear, cattributes)); end;
146 
147 function header(nsize   in integer,
148                 cheader in varchar2 character set any_cs,
149                 calign  in varchar2 DEFAULT NULL,
150                 cnowrap in varchar2 DEFAULT NULL,
151                 cclear  in varchar2 DEFAULT NULL,
152                 cattributes in varchar2 DEFAULT NULL)
153                 return varchar2 character set cheader%charset is
154     ch varchar2(2);
155 begin
156     ch := 'h'||to_char(least(abs(nsize),6));
157     return('<'||ch||
158                 IFNOTNULL(calign,' align="'||calign||'"')||
159                 IFNOTNULL(cclear,' clear="'||cclear||'"')||
160                 IFNOTNULL(cnowrap,' nowrap="nowrap"')||
161                 IFNOTNULL(cattributes,' '||cattributes)||
162                '>'||cheader||
163                '</'||ch||'>');
164 end;
165 
166 function anchor(curl        in varchar2,
167                 ctext       in varchar2 character set any_cs,
168                 cname       in varchar2 character set any_cs DEFAULT NULL,
169                 cattributes in varchar2 DEFAULT NULL)
170                 return varchar2 character set ctext%charset is
171 begin return(anchor2(curl,
172           ctext,
173           cname,
174           NULL,
175           cattributes));
176           end;
177 
178 function anchor2(curl       in varchar2,
179                 ctext       in varchar2 character set any_cs,
180                 cname       in varchar2 character set any_cs DEFAULT NULL,
181                 ctarget     in varchar2 DEFAULT NULL,
182                 cattributes in varchar2 DEFAULT NULL)
183                 return varchar2 character set ctext%charset is
184     curl_cname_null EXCEPTION;
185     l_str varchar2(32767);
186 begin
187     if curl is NULL and cname is NULL then
188         l_str := '<!-- ERROR in anchor2 usage, curl and cname cannot be NULL --><a name=" "';
189         if ctext is not null then
190             l_str := l_str||'> '||ctext||' </a';
191         end if;
192         l_str := l_str||'>';
193         return l_str;
194     end if;
195 
196     if curl is NULL then
197         l_str := '<a name="'||cname||'"';
198         if ctext is not null then
199             l_str := l_str||'> '||ctext||' </a';
200         end if;
201         l_str := l_str||'>';
202     else
203         l_str := '<a href="'||curl||'"';
204         if cname is not null then
205             l_str := l_str||' name="'||cname||'"';
206         end if;
207         if ctarget is not null then
208             l_str := l_str||' target="'||ctarget||'"';
209         end if;
210         if cattributes is not null then
211             l_str := l_str||' '||cattributes;
212         end if;
213         l_str := l_str||'>'||ctext||'</a>';
214     end if;
215     return l_str;
216 end;
217 
218 
219 function mailto(caddress in varchar2,
220                 ctext    in varchar2 character set any_cs,
221                 cname       in varchar2 character set any_cs DEFAULT NULL,
222                 cattributes in varchar2 DEFAULT NULL)
223                 return varchar2 character set ctext%charset is
224 begin return (anchor('mailto:'||caddress,ctext,cname,cattributes)); end;
225 
226 function img(curl        in varchar2,
227              calign      in varchar2 DEFAULT NULL,
228              calt        in varchar2 DEFAULT NULL,
229              cismap      in varchar2 DEFAULT NULL,
230              cattributes in varchar2 DEFAULT NULL
231              ) return varchar2 is
232     l_str varchar2(32767);
233 begin
234     l_str := '<img src="'||curl||'"';
235     if calign is not null then
236         l_str := l_str||' align="'||calign||'"';
237     end if;
238     if calt is not null then
239         l_str := l_str||' alt="'||calt||'"';
240     end if;
241     if cismap is not null then
242         l_str := l_str||' ismap="ismap"';
243     end if;
244     if cattributes is not null then
245         l_str := l_str||' '||cattributes;
246     end if;
247     l_str := l_str||' />';
248     return l_str;
249 end;
250 
251 function img2(curl        in varchar2,
252              calign      in varchar2 DEFAULT NULL,
253              calt        in varchar2 DEFAULT NULL,
254              cismap      in varchar2 DEFAULT NULL,
255              cusemap     in varchar2 DEFAULT NULL,
256              cattributes in varchar2 DEFAULT NULL
257              ) return varchar2 is
258 begin return('<img src="'||curl||'"'||
259                IFNOTNULL(calign,' align="'||calign||'"')||
260                IFNOTNULL(calt,' alt="'||calt||'"')||
261                IFNOTNULL(cismap,' ismap="ismap"')||
262                IFNOTNULL(cusemap,' usemap="'||cusemap||'"')||
263                IFNOTNULL(cattributes,' '||cattributes)||
264              ' />'); end;
265 
266 
267 function area(    ccoords    in varchar2,
268                  cshape    in varchar2 DEFAULT NULL,
269                  chref    in varchar2 DEFAULT NULL,
270                  cnohref    in varchar2 DEFAULT NULL,
271         ctarget in varchar2 DEFAULT NULL,
272         cattributes in varchar2 DEFAULT NULL) return varchar2 is
273 begin return('<area'||
274         IFNOTNULL(cshape,' shape="'||cshape||'"')||
275         ' coords="'||ccoords||'"'||
276                 IFNOTNULL(chref,' href="'||chref||'"')||
277                 IFNOTNULL(cnohref,' nohref="nohref"')||
278                 IFNOTNULL(ctarget,' target="'||ctarget||'"')||
279         IFNOTNULL(cattributes,' '||cattributes)||
280              ' />'); end;
281 
282 function mapOpen(cname    in varchar2,cattributes in varchar2 DEFAULT NULL) return varchar2 is
283 begin return('<map name="'||cname||'"'||
284         IFNOTNULL(cattributes,' '||cattributes)||
285         '>'); end;
286 
287 function bgsound(csrc    in varchar2,
288          cloop    in varchar2 DEFAULT NULL,
289          cattributes in varchar2 DEFAULT NULL) return varchar2 is
290 begin return('<bgsound src="'||csrc||'"'||
291         IFNOTNULL(cloop,' loop="'||cloop||'"')||
292         IFNOTNULL(cattributes,' '||cattributes)||
293         '>');end;
294 
295 
296 function paragraph(calign       in varchar2 DEFAULT NULL,
297                    cnowrap      in varchar2 DEFAULT NULL,
298                    cclear       in varchar2 DEFAULT NULL,
299                    cattributes  in varchar2 DEFAULT NULL) return varchar2 is
300 begin return('<p'||
301               IFNOTNULL(calign,' align="'||calign||'"')||
302               IFNOTNULL(cclear,' clear="'||cclear||'"')||
303               IFNOTNULL(cnowrap,' nowrap="nowrap"')||
304               IFNOTNULL(cattributes,' '||cattributes)||
305              '>');
306 end;
307 
308 function div(    calign       in varchar2 DEFAULT NULL,
309                    cattributes  in varchar2 DEFAULT NULL) return varchar2 is
310 begin return('<div'||
311               IFNOTNULL(calign,' align="'||calign||'"')||
312               IFNOTNULL(cattributes,' '||cattributes)||
313              '>');
314 end;
315 
316 function address(cvalue       in varchar2 character set any_cs,
317                  cnowrap      in varchar2 DEFAULT NULL,
318                  cclear       in varchar2 DEFAULT NULL,
319                  cattributes  in varchar2 DEFAULT NULL)
320                  return varchar2 character set cvalue%charset is
321 begin return('<address'||
322                IFNOTNULL(cclear,' clear="'||cclear||'"')||
323                IFNOTNULL(cnowrap,' nowrap="nowrap"')||
324                IFNOTNULL(cattributes,' '||cattributes)||
325              '>'||cvalue||
326              '</address>'); end;
327 
328 function comment(ctext in varchar2 character set any_cs)
329                  return varchar2 character set ctext%charset is
330 begin return('<!-- '||ctext||' -->'); end;
331 
332 function preOpen(cclear      in varchar2 DEFAULT NULL,
333                  cwidth      in varchar2 DEFAULT NULL,
334                  cattributes in varchar2 DEFAULT NULL) return varchar2 is
335 begin return('<pre'||
336               IFNOTNULL(cclear,' clear="'||cclear||'"')||
337               IFNOTNULL(cwidth,' width="'||cwidth||'"')||
338               IFNOTNULL(cattributes,' '||cattributes)||
339              '>'); end;
340 
341 function nobr(ctext in varchar2 character set any_cs)
342               return varchar2 character set ctext%charset is
343 begin return('<nobr>'||ctext||'</nobr>'); end;
344 
345 function center(ctext in varchar2 character set any_cs)
346                 return varchar2 character set ctext%charset is
347 begin return('<center>'||ctext||'</center>'); end;
348 
349 
350 function blockquoteOpen(cnowrap      in varchar2 DEFAULT NULL,
351                         cclear       in varchar2 DEFAULT NULL,
352                         cattributes  in varchar2 DEFAULT NULL) return varchar2
353  is
354 begin return('<blockquote'||
355               IFNOTNULL(cclear,' clear="'||cclear||'"')||
356               IFNOTNULL(cnowrap,' nowrap="nowrap"')||
357               IFNOTNULL(cattributes,' '||cattributes)||
358              '>'); end;
359 
360 /* LIST tags */
361 function listHeader(ctext in varchar2 character set any_cs,
362                     cattributes in varchar2 DEFAULT NULL)
363                     return varchar2 character set ctext%charset is
364 begin return('<lh'||
365               IFNOTNULL(cattributes,' '||cattributes)||
366             '>'||ctext||
367             '</lh>'); end;
368 
369 function listItem(ctext       in varchar2 character set any_cs DEFAULT NULL,
370                   cclear      in varchar2 DEFAULT NULL,
371                   cdingbat    in varchar2 DEFAULT NULL,
372                   csrc        in varchar2 DEFAULT NULL,
373                   cattributes in varchar2 DEFAULT NULL)
374                   return varchar2 character set ctext%charset is
375 begin return('<li'||
376               IFNOTNULL(cclear,' clear="'||cclear||'"')||
377               IFNOTNULL(cdingbat,' dingbat="'||cdingbat||'"')||
378               IFNOTNULL(csrc,' src="'||csrc||'"')||
379               IFNOTNULL(cattributes,' '||cattributes)||
380              '>'||ctext);
381 end;
382 
383 function ulistOpen(cclear      in varchar2 DEFAULT NULL,
384                    cwrap       in varchar2 DEFAULT NULL,
385                    cdingbat    in varchar2 DEFAULT NULL,
389               IFNOTNULL(cclear,' clear="'||cclear||'"')||
386                    csrc        in varchar2 DEFAULT NULL,
387                    cattributes in varchar2 DEFAULT NULL) return varchar2 is
388 begin return('<ul'||
390               IFNOTNULL(cwrap,' wrap="'||cwrap||'"')||
391               IFNOTNULL(cdingbat,' dingbat="'||cdingbat||'"')||
392               IFNOTNULL(csrc,' src="'||csrc||'"')||
393               IFNOTNULL(cattributes,' '||cattributes)||
394              '>');
395 end;
396 
397 function olistOpen(cclear      in varchar2 DEFAULT NULL,
398                    cwrap       in varchar2 DEFAULT NULL,
399                    cattributes in varchar2 DEFAULT NULL) return varchar2 is
400 begin return('<ol'||
401               IFNOTNULL(cclear,' clear="'||cclear||'"')||
402               IFNOTNULL(cwrap,' wrap="'||cwrap||'"')||
403               IFNOTNULL(cattributes,' '||cattributes)||
404              '>');
405 end;
406 
407 function dlistOpen(cclear      in varchar2 DEFAULT NULL,
408                    cattributes in varchar2 DEFAULT NULL) return varchar2 is
409 begin return('<dl'||
410               IFNOTNULL(cclear,' clear="'||cclear||'"')||
411               IFNOTNULL(cattributes,' '||cattributes)||
412              '>');
413 end;
414 
415 function dlistTerm(ctext       in varchar2 character set any_cs DEFAULT NULL,
416                    cclear      in varchar2 DEFAULT NULL,
417                    cattributes in varchar2 DEFAULT NULL)
418                    return varchar2 character set ctext%charset is
419 begin return('<dt'||
420               IFNOTNULL(cclear,' clear="'||cclear||'"')||
421               IFNOTNULL(cattributes,' '||cattributes)||
422              '>'||ctext);
423 end;
424 
425 function dlistDef(ctext       in varchar2 character set any_cs DEFAULT NULL,
426                   cclear      in varchar2 DEFAULT NULL,
427                   cattributes in varchar2 DEFAULT NULL)
428                   return varchar2 character set ctext%charset is
429 begin return('<dd'||
430               IFNOTNULL(cclear,' clear="'||cclear||'"')||
431               IFNOTNULL(cattributes,' '||cattributes)||
432              '>'||ctext);
433 end;
434 /* END LIST tags */
435 
436 /* SEMANTIC FORMAT ELEMENTS */
437 function dfn(ctext in varchar2 character set any_cs,
438               cattributes in varchar2 DEFAULT NULL)
439               return varchar2 character set ctext%charset is
440 begin return('<dfn'||
441               IFNOTNULL(cattributes,' '||cattributes)||
442              '>'||ctext||'</dfn>'); end;
443 
444 function cite(ctext in varchar2 character set any_cs,
445                cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
446 begin return('<cite'||
447               IFNOTNULL(cattributes,' '||cattributes)||
448              '>'||ctext||'</cite>'); end;
449 
450 function code(ctext in varchar2 character set any_cs,
451               cattributes in varchar2 DEFAULT NULL) return varchar2  character set ctext%charset is
452 begin return('<code'||
453               IFNOTNULL(cattributes,' '||cattributes)||
454              '>'||ctext||'</code>'); end;
455 
456 function em   (ctext  in varchar2 character set any_cs,
457                cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
458 begin return('<em'||
459               IFNOTNULL(cattributes,' '||cattributes)||
460              '>'||ctext||'</em>'); end;
461 
462 function emphasis(ctext in varchar2 character set any_cs,
463                   cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
464 begin return(em(ctext,cattributes)); end;
465 
466 function kbd(ctext in varchar2 character set any_cs,
467              cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
468 begin return('<kbd'||
469               IFNOTNULL(cattributes,' '||cattributes)||
470              '>'||ctext||'</kbd>'); end;
471 
472 function keyboard(ctext in varchar2 character set any_cs,
473                   cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
474 begin return(kbd(ctext,cattributes)); end;
475 
476 function sample(ctext in varchar2 character set any_cs,
477                 cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
478 begin return('<samp'||
479               IFNOTNULL(cattributes,' '||cattributes)||
480              '>'||ctext||'</samp>'); end;
481 
482 function strong   (ctext  in varchar2 character set any_cs,
483                    cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
484 begin return('<strong'||
485               IFNOTNULL(cattributes,' '||cattributes)||
486              '>'||ctext||'</strong>'); end;
487 
488 function variable(ctext in varchar2 character set any_cs,
489                   cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
490 begin return('<var'||
491               IFNOTNULL(cattributes,' '||cattributes)||
492              '>'||ctext||'</var>'); end;
493 
494 function big(    ctext          in varchar2 character set any_cs,
495                 cattributes     in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
496 begin return('<big'||
497               IFNOTNULL(cattributes,' '||cattributes)||
498              '>'||ctext||'</big>'); end;
499 
500 function small(    ctext          in varchar2 character set any_cs,
504              '>'||ctext||'</small>'); end;
501                 cattributes     in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
502 begin return('<small'||
503               IFNOTNULL(cattributes,' '||cattributes)||
505 
506 function sub(     ctext          in varchar2 character set any_cs,
507         calign        in varchar2 DEFAULT NULL,
508                 cattributes     in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
509 begin return('<sub'||
510               IFNOTNULL(calign,' align="'||calign||'"')||
511               IFNOTNULL(cattributes,' '||cattributes)||
512              '>'||ctext||'</sub>'); end;
513 
514 function sup(    ctext          in varchar2 character set any_cs,
515         calign        in varchar2 DEFAULT NULL,
516                 cattributes     in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
517 begin return('<sup'||
518               IFNOTNULL(calign,' align="'||calign||'"')||
519               IFNOTNULL(cattributes,' '||cattributes)||
520              '>'||ctext||'</sup>'); end;
521 
522 /* END SEMANTIC FORMAT ELEMENTS */
523 
524 /* PHYSICAL FORMAT ELEMENTS */
525 function basefont(nsize in integer,
526           cattributes in varchar2 DEFAULT NULL) return varchar2 is
527 begin return('<basefont size="'||nsize||'"'||
528         IFNOTNULL(cattributes,' '||cattributes)||
529         ' />'); end;
530 
531 
532 function fontOpen(    ccolor    in varchar2 DEFAULT NULL,
533         cface    in varchar2 DEFAULT NULL,
534         csize    in varchar2 DEFAULT NULL,
535         cattributes in varchar2 DEFAULT NULL) return varchar2 is
536     l_str varchar2(32767);
537 begin
538     l_str := '<font';
539     if ccolor is not null then
540         l_str := l_str||' color="'||ccolor||'"';
541     end if;
542     if cface is not null then
543         l_str := l_str||' face="'||cface||'"';
544     end if;
545     if csize is not null then
546         l_str := l_str||' size="'||csize||'"';
547     end if;
548     if cattributes is not null then
549         l_str := l_str||' '||cattributes;
550     end if;
551     l_str := l_str||'>';
552     return l_str;
553 end;
554 
555 function bold   (ctext  in varchar2 character set any_cs,
556                  cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
557 begin return('<b'||
558               IFNOTNULL(cattributes,' '||cattributes)||
559              '>'||ctext||'</b>'); end;
560 
561 function italic (ctext  in varchar2 character set any_cs,
562                  cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
563 begin return('<i'||
564               IFNOTNULL(cattributes,' '||cattributes)||
565              '>'||ctext||'</i>'); end;
566 
567 function teletype(ctext in varchar2 character set any_cs,
568                   cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
569 begin return('<tt'||
570               IFNOTNULL(cattributes,' '||cattributes)||
571              '>'||ctext||'</tt>'); end;
572 
573 function plaintext   (ctext  in varchar2 character set any_cs,
574                  cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
575 begin return('<plaintext'||
576               IFNOTNULL(cattributes,' '||cattributes)||
577              '>'||ctext||'</plaintext>'); end;
578 function s   (ctext  in varchar2 character set any_cs,
579                  cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
580 begin return('<s'||
581               IFNOTNULL(cattributes,' '||cattributes)||
582              '>'||ctext||'</s>'); end;
583 function strike   (ctext  in varchar2 character set any_cs,
584                  cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
585 begin return('<strike'||
586               IFNOTNULL(cattributes,' '||cattributes)||
587              '>'||ctext||'</strike>'); end;
588 function underline   (ctext  in varchar2 character set any_cs,
589                  cattributes in varchar2 DEFAULT NULL) return varchar2 character set ctext%charset is
590 begin return('<u'||
591               IFNOTNULL(cattributes,' '||cattributes)||
592              '>'||ctext||'</u>'); end;
593 /* END PHYSICAL FORMAT ELEMENTS */
594 
595 
596 /* HTML FORMS */
597 
598 function formOpen(curl in varchar2,
599                   cmethod  in varchar2 DEFAULT 'post',
600           ctarget  in varchar2 DEFAULT NULL,
601           cenctype in varchar2 DEFAULT NULL,
602           cattributes in varchar2 DEFAULT NULL) return varchar2 is
603 begin return('<form action="'||curl||'" method="'||cmethod||'"'||
604         IFNOTNULL(ctarget,' target="'||ctarget||'"')||
605         IFNOTNULL(cenctype,' enctype="'||cenctype||'"')||
606         IFNOTNULL(cattributes,' '||cattributes)||
607         '>'); end;
608 
609 function formCheckbox(cname in varchar2,
610                       cvalue      in varchar2 character set any_cs DEFAULT 'on',
611                       cchecked    in varchar2 DEFAULT NULL,
612                       cattributes in varchar2 DEFAULT NULL)
613                       return varchar2 character set cvalue%charset is
614 begin
615    return('<input type="checkbox" name="'||cname||'"'||
616            IFNOTNULL(cvalue,' value="'||cvalue||'"')||
617            IFNOTNULL(cchecked,' checked="checked"')||
618            IFNOTNULL(cattributes,' '||cattributes)||
622 function formFile(cname       in varchar2,
619           ' />');
620 end;
621 
623                   caccept     in varchar2 DEFAULT NULL,
624                   cattributes in varchar2 DEFAULT NULL) return varchar2 is
625 begin return('<input type="file"'||
626               IFNOTNULL(cname,' name="'||cname||'"')||
627               IFNOTNULL(caccept,' accept="'||caccept||'"')||
628               IFNOTNULL(cattributes,' '||cattributes)||
629              ' />'); end;
630 
631 function formHidden(cname       in varchar2,
632                     cvalue      in varchar2 character set any_cs DEFAULT NULL,
633                     cattributes in varchar2 DEFAULT NULL) return varchar2 character set cvalue%charset is
634 begin
635    return('<input type="hidden" name="'||cname||'"'||' value="'||cvalue||'"'||
636            IFNOTNULL(cattributes,' '||cattributes)||
637           ' />');
638 end;
639 
640 function formImage(cname       in varchar2,
641                    csrc        in varchar2,
642                    calign      in varchar2 DEFAULT NULL,
643                    cattributes in varchar2 DEFAULT NULL) return varchar2 is
644 begin return('<input type="image" name="'||cname||'"'||
645                                  ' src="'||csrc||'"'||
646               IFNOTNULL(calign,' align="'||calign||'"')||
647               IFNOTNULL(cattributes,' '||cattributes)||
648              ' />');
649 end;
650 
651 function formPassword(cname       in varchar2,
652                       csize       in varchar2 DEFAULT NULL,
653                       cmaxlength  in varchar2 DEFAULT NULL,
654                       cvalue      in varchar2 character set any_cs DEFAULT NULL,
655                       cattributes in varchar2 DEFAULT NULL)
656                       return varchar2 character set cvalue%charset is
657 begin
658    return('<input type="password" name="'||cname||'"'||
659            IFNOTNULL(csize,' size="'||csize||'"')||
660            IFNOTNULL(cmaxlength,' maxlength="'||cmaxlength||'"')||
661            IFNOTNULL(cvalue,' value="'||cvalue||'"')||
662            IFNOTNULL(cattributes,' '||cattributes)||
663           ' />');
664 end;
665 
666 function formRadio(cname       in varchar2,
667                    cvalue      in varchar2 character set any_cs,
668                    cchecked    in varchar2 DEFAULT NULL,
669                    cattributes in varchar2 DEFAULT NULL)
670                    return varchar2 character set cvalue%charset is
671 begin return('<input type="radio" name="'||cname||'"'||
672                                ' value="'||cvalue||'"'||
673               IFNOTNULL(cchecked,' checked="checked"')||
674               IFNOTNULL(cattributes,' '||cattributes)||
675              ' />');
676 end;
677 
678 function formReset(cvalue      in varchar2 character set any_cs DEFAULT 'Reset',
679                    cattributes in varchar2 DEFAULT NULL)
680                    return varchar2 character set cvalue%charset is
681 begin return('<input type="reset" VALUE="'||cvalue||'"'||
682               IFNOTNULL(cattributes,' '||cattributes)||
683              ' />'); end;
684 
685 function formSubmit(cname       in varchar2 DEFAULT NULL,
686                     cvalue      in varchar2 character set any_cs DEFAULT 'Submit',
687                     cattributes in varchar2 DEFAULT NULL) return varchar2 character set cvalue%charset is
688 begin return('<input type="submit"'||
689               IFNOTNULL(cname,' name="'||cname||'"')||
690               IFNOTNULL(cvalue,' value="'||cvalue||'"')||
691               IFNOTNULL(cattributes,' '||cattributes)||
692              ' />'); end;
693 
694 function formText(cname       in varchar2,
695                   csize       in varchar2 DEFAULT NULL,
696                   cmaxlength  in varchar2 DEFAULT NULL,
697                   cvalue      in varchar2 character set any_cs DEFAULT NULL,
698                   cattributes in varchar2 DEFAULT NULL) return varchar2  character set cvalue%charset is
699 begin
700    return('<input type="text" name="'||cname||'"'||
701            IFNOTNULL(csize,' size="'||csize||'"')||
702            IFNOTNULL(cmaxlength,' maxlength="'||cmaxlength||'"')||
703            IFNOTNULL(cvalue,' value="'||cvalue||'"')||
704            IFNOTNULL(cattributes,' '||cattributes)||
705           ' />');
706 end;
707 
708 function formSelectOpen(cname       in varchar2,
709                         cprompt     in varchar2 character set any_cs DEFAULT NULL,
710                         nsize       in integer  DEFAULT NULL,
711                         cattributes in varchar2 DEFAULT NULL)
712                         return varchar2 character set cprompt%charset is
713 begin return(cprompt||
714             '<select name="'||cname||'"'||
715              IFNOTNULL(nsize,' size="'||nsize||'"')||
716              IFNOTNULL(cattributes,' '||cattributes)||
717             '>');
718 end;
719 
720 function formSelectOption(cvalue      in varchar2 character set any_cs,
721                           cselected   in varchar2 DEFAULT NULL,
722                           cattributes in varchar2) return varchar2 character set cvalue%charset is
723 begin return('<option'||
724               IFNOTNULL(cselected,' selected="selected"')||
725               IFNOTNULL(cattributes,' '||cattributes)||
726              '>'||cvalue||'</option>'); end;
727 
728 function formTextarea(cname       in varchar2,
729                       nrows       in integer,
730                       ncolumns    in integer,
734                       ' rows="'||to_char(nrows)||'"'||
731                       calign      in varchar2 DEFAULT NULL,
732                       cattributes in varchar2 DEFAULT NULL) return varchar2 is
733 begin return('<textarea name="'||cname||'"'||
735                       ' cols="'||to_char(ncolumns)||'"'||
736               IFNOTNULL(calign,' align="'||calign||'"')||
737               IFNOTNULL(cattributes,' '||cattributes)||
738              '></textarea>');
739 end;
740 
741 
742 function formTextarea2(cname       in varchar2,
743                       nrows       in integer,
744                       ncolumns    in integer,
745                       calign      in varchar2 DEFAULT NULL,
746                       cwrap       in varchar2 DEFAULT NULL,
747                       cattributes in varchar2 DEFAULT NULL) return varchar2 is
748 begin return('<textarea name="'||cname||'"'||
749                       ' rows="'||to_char(nrows)||'"'||
750                       ' cols="'||to_char(ncolumns)||'"'||
751               IFNOTNULL(calign,' align="'||calign||'"')||
752               IFNOTNULL(cwrap,' wrap="'||cwrap||'"')||
753               IFNOTNULL(cattributes,' '||cattributes)||
754              '></textarea>');
755 end;
756 
757 function formTextareaOpen(cname       in varchar2,
758                           nrows       in integer,
759                           ncolumns    in integer,
760                           calign      in varchar2 DEFAULT NULL,
761                           cattributes in varchar2 DEFAULT NULL) return varchar2
762  is
763 begin return('<textarea name="'||cname||'"'||
764                       ' rows="'||to_char(nrows)||'"'||
765                       ' cols="'||to_char(ncolumns)||'"'||
766               IFNOTNULL(calign,' align="'||calign||'"')||
767               IFNOTNULL(cattributes,' '||cattributes)||
768              '>');
769 end;
770 
771 
772 function formTextareaOpen2(cname       in varchar2,
773                           nrows       in integer,
774                           ncolumns    in integer,
775                           calign      in varchar2 DEFAULT NULL,
776                           cwrap       in varchar2 DEFAULT NULL,
777                           cattributes in varchar2 DEFAULT NULL) return varchar2
778  is
779 begin return('<textarea name="'||cname||'"'||
780                       ' rows="'||to_char(nrows)||'"'||
781                       ' cols="'||to_char(ncolumns)||'"'||
782               IFNOTNULL(calign,' align="'||calign||'"')||
783               IFNOTNULL(cwrap,' wrap="'||cwrap||'"')||
784               IFNOTNULL(cattributes,' '||cattributes)||
785              '>');
786 end;
787 /* END HTML FORMS */
788 
789 /* HTML TABLES */
790 function tableOpen(cborder     in varchar2 DEFAULT NULL,
791                    calign      in varchar2 DEFAULT NULL,
792                    cnowrap     in varchar2 DEFAULT NULL,
793                    cclear      in varchar2 DEFAULT NULL,
794                    cattributes in varchar2 DEFAULT NULL) return varchar2 is
795     l_str varchar2(32767);
796 begin
797     l_str := '<table ';
798     if cborder is not null then
799         l_str := l_str||' '||cborder;
800     end if;
801     if cnowrap is not null then
802         l_str := l_str||' nowrap="nowrap"';
803     end if;
804     if calign is not null then
805         l_str := l_str||' align="'||calign||'"';
806     end if;
807     if cclear is not null then
808         l_str := l_str||' clear="'||cclear||'"';
809     end if;
810     if cattributes is not null then
811         l_str := l_str||' '||cattributes;
812     end if;
813     l_str := l_str||'>';
814     return l_str;
815 end;
816 
817 function tableCaption(ccaption in varchar2 character set any_cs,
818                       calign   in varchar2 DEFAULT NULL,
819                       cattributes in varchar2 DEFAULT NULL)
820                       return varchar2 character set ccaption%charset is
821 begin return ('<caption'||
822                IFNOTNULL(calign,' align="'||calign||'"')||
823                IFNOTNULL(cattributes,' '||cattributes)||
824               '>'||
825               ccaption||'</caption>'); end;
826 
827 function tableRowOpen(calign      in varchar2 DEFAULT NULL,
828                       cvalign     in varchar2 DEFAULT NULL,
829                       cdp         in varchar2 DEFAULT NULL,
830                       cnowrap     in varchar2 DEFAULT NULL,
831                       cattributes in varchar2 DEFAULT NULL) return varchar2 is
832     l_str varchar2(32767);
833 begin
834     l_str := '<tr';
835     if calign is not null then
836         l_str := l_str||' align="'||calign||'"';
837     end if;
838     if cvalign is not null then
839         l_str := l_str||' valign="'||cvalign||'"';
840     end if;
841     if cdp is not null then
842         l_str := l_str||' dp="'||cdp||'"';
843     end if;
844     if cnowrap is not null then
845         l_str := l_str||' nowrap="nowrap"';
846     end if;
847     if cattributes is not null then
848         l_str := l_str||' '||cattributes;
849     end if;
850     l_str := l_str||'>';
851     return l_str;
852 end;
853 
854 function tableHeader(cvalue      in varchar2 character set any_cs DEFAULT NULL,
855                      calign      in varchar2 DEFAULT NULL,
859                      ccolspan    in varchar2 DEFAULT NULL,
856                      cdp         in varchar2 DEFAULT NULL,
857                      cnowrap     in varchar2 DEFAULT NULL,
858                      crowspan    in varchar2 DEFAULT NULL,
860                      cattributes in varchar2 DEFAULT NULL)
861                      return varchar2 character set cvalue%charset is
862 begin return ('<th'||
863                IFNOTNULL(calign,' align="'||calign||'"')||
864                IFNOTNULL(cdp,' dp="'||cdp||'"')||
865                IFNOTNULL(crowspan,' rowspan="'||crowspan||'"')||
866                IFNOTNULL(ccolspan,' colspan="'||ccolspan||'"')||
867                IFNOTNULL(cnowrap,' nowrap="nowrap"')||
868                IFNOTNULL(cattributes,' '||cattributes)||
869               '>'||
870               cvalue||'</th>'); end;
871 
872 function tableData(cvalue      in varchar2 character set any_cs DEFAULT NULL,
873                    calign      in varchar2 DEFAULT NULL,
874                    cdp         in varchar2 DEFAULT NULL,
875                    cnowrap     in varchar2 DEFAULT NULL,
876                    crowspan    in varchar2 DEFAULT NULL,
877                    ccolspan    in varchar2 DEFAULT NULL,
878                    cattributes in varchar2 DEFAULT NULL)
879                    return varchar2 character set cvalue%charset is
880     l_str varchar2(32767);
881 begin
882     l_str := '<td';
883     if calign is not null then
884         l_str := l_str||' align="'||calign||'"';
885     end if;
886     if cdp is not null then
887         l_str := l_str||' dp="'||cdp||'"';
888     end if;
889     if crowspan is not null then
890         l_str := l_str||' rowspan="'||crowspan||'"';
891     end if;
892     if ccolspan is not null then
893         l_str := l_str||' colspan="'||ccolspan||'"';
894     end if;
895     if cnowrap is not null then
896         l_str := l_str||' nowrap="nowrap"';
897     end if;
898     if cattributes is not null then
899         l_str := l_str||' '||cattributes;
900     end if;
901     l_str := l_str||'>'||cvalue||'</td>';
902     return l_str;
903 end;
904 
905 function format_cell( columnValue in varchar2 character set any_cs,
906                       format_numbers in varchar2 default null)
907                       return varchar2 character set columnvalue%charset is
908    function tochar(d in number, f in varchar2) return varchar2 is
909    begin
910       return nvl(ltrim(to_char(d,f)), '(null)');
911    end tochar;
912 begin
913    if (format_numbers is NULL) then
914       return(tableData(columnValue));
915    end if;
916 
917    return(tableData(tochar(to_number(columnValue),format_numbers),'right'));
918 
919    exception
920    when others then
921        return(tableData(nvl(columnValue, '(null)')));
922 end format_cell;
923 /* END HTML TABLES */
924 
925 /* BEGIN HTML FRAMES - Netscape Extensions FRAMESET, FRAME tags */
926 function framesetOpen(crows in varchar2 DEFAULT NULL,/* row height value list */
927             ccols    in varchar2 DEFAULT NULL,
928 cattributes in varchar2 DEFAULT NULL) return varchar2 is /* column width list */
929 begin
930  return('<frameset'||
931     IFNOTNULL(crows, ' rows="'||crows||'"')||
932     IFNOTNULL(ccols, ' cols="'||ccols||'"')||
933     IFNOTNULL(cattributes,' '||cattributes)||
934     '>');
935 end framesetOpen;
936 
937 
938 function frame(        csrc    in varchar2,                /* URL */
939             cname    in varchar2 DEFAULT NULL,        /* Window name */
940             cmarginwidth     in varchar2 DEFAULT NULL,    /* value in pixels */
941             cmarginheight    in varchar2 DEFAULT NULL,    /* value in pixels */
942             cscrolling    in varchar2 DEFAULT NULL,    /* yes | no | auto */
943             cnoresize    in varchar2 DEFAULT NULL,
944             cattributes    in varchar2 DEFAULT NULL) return varchar2 is    /* user cannot resize frame */
945 begin
946  return('<frame src="'||csrc||'"'||
947     IFNOTNULL(cname, ' name="'||cname||'"')||
948     IFNOTNULL(cmarginwidth, ' marginwidth="'||cmarginwidth||'"')||
949     IFNOTNULL(cmarginheight, ' marginheight="'||cmarginheight||'"')||
950     IFNOTNULL(cscrolling, ' scrolling="'||cscrolling||'"')||
951     IFNOTNULL(cnoresize, ' noresize="noresize"')||
952     IFNOTNULL(cattributes,' '||cattributes)||
953     ' />');
954 end frame;
955 
956 
957 /* END HTML FRAMES */
958 
959 /* SPECIAL HTML TAGS */
960 function appletOpen(ccode     in varchar2,
961             cwidth    in integer,
962             cheight    in integer,
963             cattributes in varchar2 DEFAULT NULL) return varchar2 is
964 begin return('<applet code='||ccode||
965         ' width='||cwidth||
966         ' height='||cheight||
967         IFNOTNULL(cattributes,' '||cattributes)||
968         '>');
969 end;
970 
971 function param(cname    in varchar2,
972            cvalue    in varchar2 character set any_cs)
973                return varchar2 character set cvalue%charset is
974 begin return('<param name='||cname||' value= "'||cvalue||
975         '" >');
976 end;
977 
978 /* END SPECIAL HTML TAGS */
979 
980 /* SPECIAL FUNCTIONS */
981 function escape_sc(ctext in varchar2 character set any_cs)
982          return varchar2 character set ctext%charset is
983 begin return(replace(
984              replace(
985              replace(
986              replace(ctext, '&', '&' || 'amp;'),
987                             '"', '&' || 'quot;'),
988                             '<', '&' || 'lt;'),
989                             '>', '&' || 'gt;'));
990 end;
991 
992 function escape_url(p_url in varchar2 character set any_cs)
993                     return varchar2 character set p_url%charset is
994 begin
995         return replace(escape_sc(p_url), '%', '%25');
996 end;
997 /* END SPECIAL FUNCTIONS */
998 
999 /* END BODY ELEMENT tags */
1000 end;