Code

#Fixed resizing in opera
[gosa.git] / test.php
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2 <html>
3 <head>
4 <style type="text/css">
6 .ObjectListViewport {
7         width:100%;
8         height:100%;
9         border-collapse:collapse;
10 }
12 .ObjectListViewport_Header_Table {
13         width:100%;
14         border: 0px;
15         border-collapse:collapse;
16 }       
17         
18 .ObjectListViewport_Entry_Table {
19         width:100%;
20         border: 0px;
21         border-collapse:collapse;
22 }
24 .ObjectListViewport_Footer_Table {
25     width:100%;
26     border: 0px;
27     border-collapse:collapse;
28 }
31 .ObjectListViewport_Table {
32         border-collapse:collapse;
33     width:100%;
34         height:100%;
35         border: 0px;
36 }
38 .ObjectListViewport_TD_Header {
39         height:20px;
40         background-color: #CCCCCC;
41         vertical-align:middle;
42         border: 0px;
43         margin:0px;
44         padding:0px;
45 }
46 .ObjectListViewport_TD_Entries {
47         vertical-align:middle;
48         border: 0px;
49         margin:0px;
50         padding:0px;
51 }
52 .ObjectListViewport_TD_Footer {
53         height:20px;
54         background-color: #CCCCCC;
55         vertical-align:middle;
56         border: 0px;
57         margin:0px;
58         padding:0px;
59 }
60 .ObjectListViewport_Entry_Cover{
61         overflow:auto;
62         height:20px;
63 }
64 .ObjectListViewport_Entry_Cell {
65         border-left: solid 1px;
66         font-size:10px;
67         height:18px;
68 }
70 </style>
71 <script type="text/javascript">
73 <!--
75 /* Register resize event to force redraw of all 
76  *  displayed lists 
77  */
78 window.onload = updateObjectListViewportSize;
79 window.onresize = updateObjectListViewportSize;
81         function updateObjectListViewportSize() {
83                 var dbg = document.getElementById('debug');
84                 dbg.value ="";
85                 
86                 /* Somehow IE do not need to be resized 
87          *  So skip the following part if the client uses ie
88          */
89                 if(document.all && !window.opera){
90                         var all = getElementsByStyleClass('ObjectListViewport_Entry_Cover');
91                         for (var i = 0; i < all.length; ++i){
92                                 document.getElementById(all[i].id).style.height= "100%";
93                         }
94                         return;
95                 }
96         
97                 var all = getElementsByStyleClass('ObjectListViewport');
98                 for (var i = 0; i < all.length; ++i){
100                         var id_pref = all[i].id.replace(/[^0-9]*/,"");
102                         /* Set Viewport to min height, to ensure 
103                          *  that resize will work correctly in konqueror 
104                          */
105                         document.getElementById('ObjectListViewport_Entry_Cover' + id_pref).style.height= "50px";
107                         /* Get values of displayed header and footer heights to be 
108                          *  able to recalculate the Viewport 
109                          */
110                         var viewport    = getObjectHeight('ObjectListViewport_Table' + id_pref);
111                         var header      = getObjectHeight('ObjectListViewport_TD_Header' + id_pref);
112                         var footer      = getObjectHeight('ObjectListViewport_TD_Footer' + id_pref);
114                         /* Calculate the new visible entry part height. */
115                         var calc = (viewport  - ( header + footer ));
116                         document.getElementById('ObjectListViewport_Entry_Cover' + id_pref).style.height = calc;
118                         /* Reduce width of entry list, we need some space to 
119                          *  display the scrollbar without breaking the layout
120                          */
121                         dbg.value += " " + calc;
122                         var viewport = getObjectWidth('ObjectListViewport_Table' + id_pref);
123                         document.getElementById('ObjectListViewport_Entry_Table' + id_pref).style.width = (viewport - 16) + 'px';
124                 }
125         }
127         
128         /* Return all elements of a specific class */   
129         function getElementsByStyleClass (className) {
130                 var all = document.all ? document.all : document.getElementsByTagName('*');
131                 var elements = new Array();
132                 for (var e = 0; e < all.length; e++)
133                         if (all[e].className == className)
134                                 elements[elements.length] = all[e];
135                 return elements;
136         }
139         /* Return integer value of style attribute width for specified ID  */
140         function getObjectWidth(obj){
141                 obj = getComputedStyle(document.getElementById(obj),"").width;
142                 return(parseInt(obj.replace(/px/,''))); 
143         }
145         /* Return integer value of style attribute height for specified ID  */
146         function getObjectHeight(obj){
147                 obj = getComputedStyle(document.getElementById(obj),"").height;
148                 return(parseInt(obj.replace(/px/,'')));
149         }       
151 -->
152 </script>
153 </head>
154 <body>
155 <input type='text' id='debug' value="" style='width:100%;'>
157     <table style='height:90%;width:90%;background-color:#DDDDDD; border: solid 1px;'
158         cellspacing=2 cellpadding=2>
159         <tr>
160             <td style='width:30%;height:30%;'>
161                 <?php echo passthru("./test"); ?>
162             </td>
163             <td>
164                 <?php echo passthru("./test"); ?>
165             </td>
166         </tr>
167         <tr>
168             <td>
169                 <?php echo passthru("./test"); ?>
170             </td>
171             <td>
172                 <?php echo passthru("./test"); ?>
173             </td>
174         </tr>
175         <tr>
176             <td>
177                 <?php echo passthru("./test"); ?>
178             </td>
179             <td>
180                 <?php echo passthru("./test"); ?>
181             </td>
182         </tr>
183     </table>
185 </body>
186 </html>