Improve docs.
[phpmyadmin/crack.git] / pmd_general.php
blob386d27fe81c61117bd774c5a97b5258f22d8bf7f
1 <?php
2 /* $Id$ */
3 // vim: expandtab sw=4 ts=4 sts=4:
5 /*
6 @author Ivan A Kirillov (develop.php@gmail.com)
7 www.phpMyDesigner.net
8 */
9 include_once "./pmd_session.php";
11 $tab_column = get_tab_info();
12 $script_tabs = get_script_tabs();
13 $script_contr = get_script_contr();
14 $tab_pos = get_tab_pos();
15 $tab_pk = get_p_k_contr();
16 $tables_all_keys = get_all_keys();
17 $hidden = "hidden";
20 <html>
21 <head>
22 <link rel="SHORTCUT ICON" href="pmd/images/favicon.ico" />
23 <?php if(0){ ?>
24 <meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
25 <link rel="stylesheet" type="text/css" href="pmd/styles/default/style1.css">
26 <?php } ?>
27 <meta http-equiv="Content-Type" content="text/html; charset=<?php echo $charset ?>" />
28 <link rel="stylesheet" type="text/css" href="pmd/styles/<?php echo $GLOBALS['PMD']['STYLE'] ?>/style1.css">
31 <title>Designer</title>
32 </head>
34 <?php
35 echo "
36 <script>
37 var db = '".$db."';
38 var token = '".$token."';
39 var LangSelectReferencedKey = '$strSelectReferencedKey';
40 var LangSelectForeignKey = '$strSelectForeignKey';
41 var LangNotThePrimaryKey = '$strNotThePrimaryKey';
42 </script>";
44 <script language=javascript src="pmd/scripts/ajax.js" type=text/javascript></script>
45 <script language=javascript src="pmd/scripts/move.js" type=text/javascript></script>
46 <?php
47 echo $script_tabs.$script_contr;
49 <body onLoad="Main()" class="general_body" marginheight="0" marginwidth="0">
50 <ul class="header" id="top_menu">
51 <table width="100%" border="0" cellpadding="0" cellspacing="0">
52 <tr>
53 <td width="10%">
54 <a
55 href="javascript:Show_left_menu(document.getElementById('key_Show_left_menu'));" onMouseDown="return false;" class="M_butt" target="_self"><img id='key_Show_left_menu' title="<?php echo $strShowHideLeftMenu; ?>" alt="v" src="pmd/images/downarrow2_m.png" ></a><a
56 href="javascript:Small_tab_invert();" onMouseDown="return false;" class="M_butt" target="_self"></a></td>
57 <td width="80%" align="center" nowrap>
59 href="javascript:Save2();" onMouseDown="return false;" class="M_butt" target="_self"><img title="<?php echo $strSavePosition ?>" src="pmd/images/save.png"></a><a
60 href="javascript:Start_table_new();" onMouseDown="return false;" class="M_butt" target="_self"><img title="<?php echo $strCreateTable ?>" src="pmd/images/table.png"></a><a
61 href="javascript:Start_relation();" onMouseDown="return false;" class="M_butt" id="rel_button" target="_self"><img title="<?php echo $strCreateRelation ?>" src="pmd/images/relation.png"></a><a
62 href="javascript:location.reload();" onMouseDown="return false;" class="M_butt" target="_self"><img title="<?php echo $strReload; ?>" src="pmd/images/reload.png"></a><a
63 href="javascript:Help();" onMouseDown="return false;" class="M_butt" target="_self"><img title="Help" src="pmd/images/help.png"></a><img class="M_bord" src="pmd/images/bord.png"><a
64 href="javascript:Small_tab_all(document.getElementById('key_SB_all'));" onMouseDown="return false;" class="M_butt" target="_self"><img id='key_SB_all' title="<?php echo $strSmallBigAll; ?>" alt="v" src="pmd/images/downarrow1.png" ></a>
65 <a href="javascript:PDF_save();" onMouseDown="return false;" class="M_butt" target="_self"><img src="pmd/images/pdf.png" alt="key" width="20" height="20" title="<?php echo $strImportExportCoords; ?>"></a> </td>
66 <td width="10%" align="right">
68 href="javascript:Top_menu_right(document.getElementById('key_Left_Right'));" onMouseDown="return false;" class="M_butt" target="_self"><img src="pmd/images/2rightarrow_m.png" id="key_Left_Right" alt=">" title="<?php echo $strMoveMenu; ?>"></a>
69 </td>
70 </tr>
71 </table>
72 </ul>
74 <div id="osn_tab">
75 <CANVAS id="canvas" onClick="Canvas_click(this)">Your browser does not support &lt;canvas&gt;</CANVAS>
76 </div>
78 <form action="" method="post" name="form1">
79 <div id="layer_menu" style="left:0px; top:28px; width:150px; visibility:<?PHP echo $hidden ?>; position:fixed; z-index:1000; background-color:#EAEEF0; border:#999999 solid 1px;">
80 <table width="100%" height="100%" border="0" cellpadding="0" cellspacing="0">
81 <tr>
82 <td height="1px">
83 <div align="center" style="padding-top:5px;">
84 <select name="view_relation" style=" vertical-align:text-top;" id="view_relation" onChange="relation_style = this.value; Re_load();">
85 <option value="0"><?php echo $strAngularLinks; ?></option>
86 <option value="1"><?php echo $strDirectLinks; ?></option>
87 </select>
88 </div>
89 <div align="center">
90 <label title="<?php echo $strDisableForFasterScrolling; ?>"><input name="checkbox" type="checkbox" id='show_relation_olways' value="checkbox" checked><?php echo $strAlwaysShowLinks; ?></label>
91 </div>
92 <div align="center" style="padding-top:5px">
93 <a
94 href="javascript:Hide_tab_all(document.getElementById('key_HS_all'));" onMouseDown="return false;" class="M_butt" target="_self"><img title="<?php echo $strHideShowAll; ?>" alt="v" src="pmd/images/downarrow1.png" id='key_HS_all' ></a><a
95 href="javascript:No_have_constr(document.getElementById('key_HS'));" onMouseDown="return false;" class="M_butt" target="_self"><img title="<?php echo $strHideShowNoRelation; ?>" alt="v" src="pmd/images/downarrow2.png" id='key_HS'></a>
96 </div>
97 </td>
98 </tr>
99 <tr>
100 <td>
101 <div id="id_scroll_tab" class="scroll_tab">
102 <table width="100%" style="padding-left:3px;">
103 <?php
104 for ( $i=0; $i < sizeof( $GLOBALS['PMD']['TABLE_NAME'] ); $i++ )
107 <tr>
108 <td title="<?php echo $strStructure; ?>" width="1px" onMouseOver="this.className='L_butt2_2'" onMouseOut="this.className='L_butt2_1'" ><img onClick="Start_tab_upd('<?php echo $GLOBALS['PMD']["TABLE_NAME_SMALL"][$i]; ?>');" src="pmd/images/exec.png"></td>
109 <td width="1px"><input onChange="VisibleTab(this,'<?php echo $GLOBALS['PMD']["TABLE_NAME"][$i]; ?>')" title="<?php echo $strHide ?>" id="check_vis_<?php echo $GLOBALS['PMD']["TABLE_NAME"][$i]; ?>" style="margin:0px;" type="checkbox" value="<?php echo $GLOBALS['PMD']["TABLE_NAME"][$i]; ?>" <?php if( isset($tab_pos[$GLOBALS['PMD']["TABLE_NAME"][$i]]) ) echo $tab_pos[$GLOBALS['PMD']["TABLE_NAME"][$i]]["H"]?"checked":""; else echo "checked"; ?>></td>
110 <td class="Tabs" onMouseOver="this.className='Tabs2'" onMouseOut="this.className='Tabs'" onClick="Select_tab('<?php echo $GLOBALS['PMD']["TABLE_NAME"][$i]; ?>');"><?php echo $GLOBALS['PMD']["TABLE_NAME"][$i]; ?></td>
111 </tr>
112 <?php
115 </table>
116 </div>
117 </td>
118 </tr>
119 <tr>
120 <td height="1px">
121 <div align="center"><?php echo $strNumberOfTables ?>: <?php echo sizeof( $GLOBALS['PMD']['TABLE_NAME'] ) ?></div>
122 <div align="right"><div style=" background-image:url(pmd/images/resize.png); cursor:nw-resize; width:16px; height:16px; " onMouseDown="layer_menu_cur_click=1" onMouseUp="layer_menu_cur_click=0"></div></div>
123 </td>
124 </tr>
125 </table>
126 </div>
127 <?php
128 for ( $i=0; $i < sizeof( $GLOBALS['PMD']["TABLE_NAME"] ); $i++ )
130 $t_n = $GLOBALS['PMD']["TABLE_NAME"][$i];
132 <input name="t_x[<?php echo $t_n ?>]" type="hidden" id="t_x[<?php echo $t_n ?>]">
133 <input name="t_y[<?php echo $t_n ?>]" type="hidden" id="t_y[<?php echo $t_n ?>]">
134 <input name="t_v[<?php echo $t_n ?>]" type="hidden" id="t_v[<?php echo $t_n ?>]">
135 <input name="t_h[<?php echo $t_n ?>]" type="hidden" id="t_h[<?php echo $t_n ?>]">
137 <table id="<?php echo $t_n ?>" cellpadding="0" cellspacing="0" class="tab"
138 style="position:absolute;
139 left: <?php if( isset($tab_pos[$t_n]) ) echo $tab_pos[$t_n]["X"]; else echo rand(180,800); ?>;
140 top: <?php if( isset($tab_pos[$t_n]) ) echo $tab_pos[$t_n]["Y"]; else echo rand(30,500); ?>;
141 visibility: <?php if( isset($tab_pos[$t_n]) ) echo $tab_pos[$t_n]["H"]?"visible":"hidden"; ?>
143 <tr>
144 <td class="small_tab" onMouseOver="this.className='small_tab2';" onMouseOut="this.className='small_tab';" id="_|_hide_tbody_<?php echo $t_n ?>" onClick="Small_tab('<?php echo $t_n ?>',1)"><?php if( isset($tab_pos[$t_n]) ) echo $tab_pos[$t_n]["V"]?"v":">";else echo "v"; ?></td>
145 <td class="small_tab_pref" onMouseOver="this.className='small_tab_pref2';" onMouseOut="this.className='small_tab_pref';" onClick="Start_tab_upd('<?php echo $GLOBALS['PMD']["TABLE_NAME_SMALL"][$i]; ?>');"><img src="pmd/images/exec_small.png"></td>
146 <td nowrap id="_|_zag_<?php echo $t_n ?>" class="tab_zag" onMouseDown="cur_click=document.getElementById('<?php echo $t_n ?>');"
147 onMouseOver="this.className = 'tab_zag_2'" onMouseOut="this.className = 'tab_zag'"
148 ><?php echo "<span class='owner'>".strtolower($GLOBALS['PMD']["OWNER"][$i]).".</span>".$GLOBALS['PMD']["TABLE_NAME_SMALL"][$i]; ?></td>
149 </tr>
150 <tbody id="_|_tbody_<?php echo $t_n ?>"
151 style="display:<?php if( isset($tab_pos[$t_n]) ) echo $tab_pos[$t_n]["V"]?"":"none"; ?>;">
152 <?php
153 for ( $j=0; $j < sizeof( $tab_column[$t_n]["COLUMN_ID"] ); $j++ )
156 <tr onMouseOver="this.id = 'tab_field_2'" onMouseOut="this.id = 'tab_field'" onMouseDown="Click_field('<?php
157 echo $GLOBALS['PMD']["TABLE_NAME_SMALL"][$i]."','".$tab_column[$t_n]["COLUMN_NAME"][$j]."',";
158 if ($GLOBALS['PMD']['TABLE_TYPE'][$i] != 'INNODB') {
159 echo (isset( $tab_pk[ $t_n.".".$tab_column[$t_n]["COLUMN_NAME"][$j] ] ) ? 1 : 0);
160 } else {
161 // if this is an InnoDB table, it's not necessary that the
162 // index is a primary key
163 echo (isset( $tables_all_keys[ $t_n.".".$tab_column[$t_n]["COLUMN_NAME"][$j] ] ) ? 1 : 0);
165 ?>)">
166 <td width="10px" colspan="3" id="<?php echo $t_n.".".$tab_column[$t_n]["COLUMN_NAME"][$j] ?>"
167 ><div style="white-space:nowrap">
168 <?php if(isset($tab_pk[$t_n.".".$tab_column[$t_n]["COLUMN_NAME"][$j]])){?><img src="pmd/styles/<?php echo $GLOBALS['PMD']['STYLE']?>/images/FieldKey_small.png" alt="*"><?php } else {?><img src="pmd/styles/<?php echo $GLOBALS['PMD']['STYLE']?>/images/Field_small.png" alt="*"><?php } ?>
169 <?php echo $tab_column[$t_n]["COLUMN_NAME"][$j]." : ".$tab_column[$t_n]["TYPE"][$j] ?>
170 </div>
171 </td>
172 </tr>
173 <?php
176 </tbody>
177 </table>
178 <?php
181 </form>
182 <div id="hint"></div>
183 <div id='layer_action' style="position:absolute; left:638px; top:52px; z-index:1000;
184 visibility:<?PHP echo $hidden ?>; background-color:#CCFF99; padding:3px; border:#009933 solid 1px; white-space:nowrap; font-weight:bold">Load...</div>
186 <table id="layer_new_relation" style="visibility:<?PHP echo $hidden ?>; position:absolute; left:636px; top:85px; z-index:1000; width: 153px;" width="5%" border="0" cellpadding="0" cellspacing="0">
187 <tr>
188 <td id="frams1" width="10px"></td>
189 <td width="99%" id="frams5"></td>
190 <td width="10px" id="frams2"><div class="bor"></div></td>
191 </tr>
192 <tr>
193 <td id="frams8"></td>
194 <td class="input_tab"><table width="168" border="0" align="center" cellpadding="2" cellspacing="0">
195 <tr>
196 <td colspan="2" align="center" nowrap><b><?php echo $strCreateRelation; ?></b></td>
197 </tr>
198 <tbody id="InnoDB_relation">
199 <tr>
200 <td colspan="2" align="center" nowrap><b>InnoDB</b></td>
201 </tr>
202 <tr>
203 <td width="58" nowrap>on delete</td>
204 <td width="102"><select name="on_delete" id="on_delete">
205 <option value="nix" selected="selected">--</option>
206 <option value="CASCADE">CASCADE</option>
207 <option value="SET NULL">SET NULL</option>
208 <option value="NO ACTION">NO ACTION</option>
209 <option value="RESTRICT">RESTRICT</option>
210 </select> </td>
211 </tr>
212 <tr>
213 <td nowrap>on update</td>
214 <td><select name="on_update" id="on_update">
215 <option value="nix" selected="selected">--</option>
216 <option value="CASCADE">CASCADE</option>
217 <option value="SET NULL">SET NULL</option>
218 <option value="NO ACTION">NO ACTION</option>
219 <option value="RESTRICT">RESTRICT</option>
220 </select> </td>
221 </tr>
222 </tbody>
223 <tr>
224 <td colspan="2" align="center" nowrap>
225 <input type="button" id="butt" name="Button" value="OK" onClick="New_relation()" >
226 <input type="button" id="butt" name="Button" value="Cancel" onClick="document.getElementById('layer_new_relation').style.visibility = 'hidden';">
227 </td>
228 </tr>
229 </table></td>
230 <td id="frams6"></td>
231 </tr>
232 <tr>
233 <td id="frams4"><div class="bor"></div></td>
234 <td id="frams7"></td>
235 <td id="frams3"></td>
236 </tr>
237 </table>
238 <table id="layer_upd_relation" style="visibility:<?PHP echo $hidden ?>; position:absolute; left:637px; top:224px; z-index:1000;" width="5%" border="0" cellpadding="0" cellspacing="0">
239 <tr>
240 <td id="frams1" width="10px"></td>
241 <td width="99%" id="frams5"></td>
242 <td width="10px" id="frams2"><div class="bor"></div></td>
243 </tr>
244 <tr>
245 <td id="frams8"></td>
246 <td class="input_tab"><table width="100%" border="0" align="center" cellpadding="2" cellspacing="0">
247 <tr>
248 <td colspan="3" align="center" nowrap><b>Update relation</b></td>
249 </tr>
250 <tr>
251 <td colspan="3" align="center" nowrap>
252 <input name="Button" type="button" id="butt" onClick="Upd_relation()" value="Delete" >
253 <input type="button" id="butt" name="Button" value="Cancel" onClick="document.getElementById('layer_upd_relation').style.visibility = 'hidden'; Re_load();">
254 </td>
255 </tr>
256 </table></td>
257 <td id="frams6"></td>
258 </tr>
259 <tr>
260 <td id="frams4"><div class="bor"></div></td>
261 <td id="frams7"></td>
262 <td id="frams3"></td>
263 </tr>
264 </table>
265 <!-- cache images -->
266 <img src="pmd/images/2leftarrow_m.png" width="0" height="0">
267 <img src="pmd/images/rightarrow1.png" width="0" height="0">
268 <img src="pmd/images/rightarrow2.png" width="0" height="0">
269 <img src="pmd/images/uparrow2_m.png" width="0" height="0">
270 </body>
271 </html>