Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Define functions unconditionally

git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@1075 7c3ca157-0c34-0410-bff1-cbf682f78f5c
  • Loading branch information...
commit 464d84afd7cbf165bb8781176423021ebef5e5c2 1 parent b9ffd64
jakubvrana authored
View
25 adminer/dump.inc.php
@@ -1,31 +1,6 @@
<?php
$TABLE = $_GET["dump"];
-function tar_file($filename, $contents) {
- $return = pack("a100a8a8a8a12a12", $filename, 644, 0, 0, decoct(strlen($contents)), decoct(time()));
- $checksum = 8*32; // space for checksum itself
- for ($i=0; $i < strlen($return); $i++) {
- $checksum += ord($return{$i});
- }
- $return .= sprintf("%06o", $checksum) . "\0 ";
- return $return . str_repeat("\0", 512 - strlen($return)) . $contents . str_repeat("\0", 511 - (strlen($contents) + 511) % 512);
-}
-
-function dump_triggers($table, $style) {
- global $dbh;
- if ($_POST["format"] == "sql" && $style && $dbh->server_info >= 5) {
- $result = $dbh->query("SHOW TRIGGERS LIKE " . $dbh->quote(addcslashes($table, "%_")));
- if ($result->num_rows) {
- $s = "\nDELIMITER ;;\n";
- while ($row = $result->fetch_assoc()) {
- $s .= "\n" . ($style == 'CREATE+ALTER' ? "DROP TRIGGER IF EXISTS " . idf_escape($row["Trigger"]) . ";;\n" : "")
- . "CREATE TRIGGER " . idf_escape($row["Trigger"]) . " $row[Timing] $row[Event] ON " . idf_escape($row["Table"]) . " FOR EACH ROW\n$row[Statement];;\n";
- }
- dump("$s\nDELIMITER ;\n");
- }
- }
-}
-
if ($_POST) {
$ext = dump_headers((strlen($TABLE) ? $TABLE : DB), (!strlen(DB) || count((array) $_POST["tables"] + (array) $_POST["data"]) > 1));
if ($_POST["format"] == "sql") {
View
2  adminer/include/adminer.inc.php
@@ -457,3 +457,5 @@ function navigation($missing) {
}
}
+
+$adminer = (function_exists('adminer_object') ? adminer_object() : new Adminer);
View
1  adminer/include/bootstrap.inc.php
@@ -82,7 +82,6 @@
include "../adminer/include/lang.inc.php";
include "../adminer/lang/$LANG.inc.php";
include "./include/adminer.inc.php";
-$adminer = (function_exists('adminer_object') ? adminer_object() : new Adminer);
include "../adminer/include/design.inc.php";
include "../adminer/include/pdo.inc.php";
include "../adminer/include/mysql.inc.php";
View
16 adminer/include/editing.inc.php
@@ -20,7 +20,7 @@ function referencable_primary($self) {
function edit_type($key, $field, $collations, $foreign_keys = array()) {
global $structured_types, $unsigned, $inout;
?>
-<td><select name="<?php echo $key; ?>[type]" onchange="editing_type_change(this);"><?php echo optionlist($structured_types + ($foreign_keys ? array(lang('Foreign keys') => $foreign_keys) : array()), $field["type"]); ?></select>
+<td><select name="<?php echo $key; ?>[type]" onchange="editing_type_change(this);"><?php echo optionlist($structured_types + ($foreign_keys ? array(lang('Foreign keys') => $foreign_keys) : array()), $field["type"]); // foreign keys can be wide but style="width: 15ex;" narrows expanded optionlist in IE too ?></select>
<td><input name="<?php echo $key; ?>[length]" value="<?php echo h($field["length"]); ?>" size="3">
<td><?php
echo "<select name='$key" . "[collation]'" . (ereg('(char|text|enum|set)$', $field["type"]) ? "" : " class='hidden'") . '><option value="">(' . lang('collation') . ')' . optionlist($collations, $field["collation"]) . '</select>';
@@ -171,3 +171,17 @@ function routine($name, $type) {
$returns = array("type" => $match[10], "length" => $match[11], "unsigned" => $match[13], "collation" => $match[14]);
return array("fields" => $fields, "returns" => $returns, "definition" => $match[15]);
}
+
+function grant($grant, $privileges, $columns, $on) {
+ if (!$privileges) {
+ return true;
+ }
+ if ($privileges == array("ALL PRIVILEGES", "GRANT OPTION")) {
+ // can't be granted or revoked together
+ return ($grant == "GRANT"
+ ? queries("$grant ALL PRIVILEGES$on WITH GRANT OPTION")
+ : queries("$grant ALL PRIVILEGES$on") && queries("$grant GRANT OPTION$on")
+ );
+ }
+ return queries("$grant " . preg_replace('~(GRANT OPTION)\\([^)]*\\)~', '\\1', implode("$columns, ", $privileges) . $columns) . $on);
+}
View
25 adminer/include/export.inc.php
@@ -1,4 +1,29 @@
<?php
+function tar_file($filename, $contents) {
+ $return = pack("a100a8a8a8a12a12", $filename, 644, 0, 0, decoct(strlen($contents)), decoct(time()));
+ $checksum = 8*32; // space for checksum itself
+ for ($i=0; $i < strlen($return); $i++) {
+ $checksum += ord($return{$i});
+ }
+ $return .= sprintf("%06o", $checksum) . "\0 ";
+ return $return . str_repeat("\0", 512 - strlen($return)) . $contents . str_repeat("\0", 511 - (strlen($contents) + 511) % 512);
+}
+
+function dump_triggers($table, $style) {
+ global $dbh;
+ if ($_POST["format"] == "sql" && $style && $dbh->server_info >= 5) {
+ $result = $dbh->query("SHOW TRIGGERS LIKE " . $dbh->quote(addcslashes($table, "%_")));
+ if ($result->num_rows) {
+ $s = "\nDELIMITER ;;\n";
+ while ($row = $result->fetch_assoc()) {
+ $s .= "\n" . ($style == 'CREATE+ALTER' ? "DROP TRIGGER IF EXISTS " . idf_escape($row["Trigger"]) . ";;\n" : "")
+ . "CREATE TRIGGER " . idf_escape($row["Trigger"]) . " $row[Timing] $row[Event] ON " . idf_escape($row["Table"]) . " FOR EACH ROW\n$row[Statement];;\n";
+ }
+ dump("$s\nDELIMITER ;\n");
+ }
+ }
+}
+
function dump_table($table, $style, $is_view = false) {
global $dbh;
if ($_POST["format"] == "csv") {
View
14 adminer/user.inc.php
@@ -19,20 +19,6 @@
unset($privileges["Databases"][$key]);
}
-function grant($grant, $privileges, $columns, $on) {
- if (!$privileges) {
- return true;
- }
- if ($privileges == array("ALL PRIVILEGES", "GRANT OPTION")) {
- // can't be granted or revoked together
- return ($grant == "GRANT"
- ? queries("$grant ALL PRIVILEGES$on WITH GRANT OPTION")
- : queries("$grant ALL PRIVILEGES$on") && queries("$grant GRANT OPTION$on")
- );
- }
- return queries("$grant " . preg_replace('~(GRANT OPTION)\\([^)]*\\)~', '\\1', implode("$columns, ", $privileges) . $columns) . $on);
-}
-
$new_grants = array();
if ($_POST) {
foreach ($_POST["objects"] as $key => $val) {
View
1  changes.txt
@@ -5,6 +5,7 @@ Compress export and import
Display column comments in table overview
Use ON DUPLICATE KEY UPDATE for CSV import
Click on row selects it
+Print ALTER export instead of executing it
Fix Editor date format
Fix long SQL query crash (bug #2839231)
Traditional Chinese translation
View
2  editor/include/adminer.inc.php
@@ -355,3 +355,5 @@ function navigation($missing) {
}
}
+
+$adminer = (function_exists('adminer_object') ? adminer_object() : new Adminer);
Please sign in to comment.
Something went wrong with that request. Please try again.