]> git.joonet.de Git - adminer.git/commitdiff
Timestamp ON UPDATE
authorjakubvrana <jakubvrana@7c3ca157-0c34-0410-bff1-cbf682f78f5c>
Wed, 25 Jul 2007 17:10:03 +0000 (17:10 +0000)
committerjakubvrana <jakubvrana@7c3ca157-0c34-0410-bff1-cbf682f78f5c>
Wed, 25 Jul 2007 17:10:03 +0000 (17:10 +0000)
git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@253 7c3ca157-0c34-0410-bff1-cbf682f78f5c

edit.inc.php
lang.inc.php

index eeca462ad61ef8cd0dfc2ca5075f7fcbe89ce1ba..701ffe51bf81f58a610fa055153f1c55a73ea5e6 100644 (file)
@@ -19,7 +19,7 @@ if ($_POST && !$error) {
                                if (!isset($_GET["default"])) {
                                        $set[] = idf_escape($name) . " = $val";
                                } elseif ($field["type"] == "timestamp") {
-                                       $set[] = " MODIFY " . idf_escape($name) . " timestamp" . ($field["null"] ? " NULL" : "") . " DEFAULT $val"; //! ON UPDATE
+                                       $set[] = " MODIFY " . idf_escape($name) . " timestamp" . ($field["null"] ? " NULL" : "") . " DEFAULT $val" . ($_POST["on_update"][bracket_escape($name)] ? " ON UPDATE CURRENT_TIMESTAMP" : "");
                                } else {
                                        $set[] = " ALTER " . idf_escape($name) . ($val == "NULL" ? " DROP DEFAULT" : " SET DEFAULT $val");
                                }
@@ -70,6 +70,7 @@ if ($_POST) {
 <form action="" method="post" enctype="multipart/form-data">
 <?php
 if ($fields) {
+       unset($create);
        echo "<table border='0' cellspacing='0' cellpadding='2'>\n";
        foreach ($fields as $name => $field) {
                echo "<tr><th>" . htmlspecialchars($name) . "</th><td>";
@@ -81,6 +82,14 @@ if ($fields) {
                        $value = $row[$name];
                }
                input($name, $field, $value);
+               if (isset($_GET["default"]) && $field["type"] == "timestamp") {
+                       $id = htmlspecialchars("on_update-$name");
+                       if (!isset($create) && !$_POST) {
+                               $create = $mysql->result($mysql->query("SHOW CREATE TABLE " . idf_escape($_GET["edit"])), 1);
+                       }
+                       $checked = ($_POST ? $_POST["on_update"][bracket_escape($name)] : preg_match("~\n\\s*" . preg_quote(idf_escape($name), '~') . " timestamp.* on update CURRENT_TIMESTAMP~i", $create));
+                       echo '<label for="' . $id . '"><input type="checkbox" name="on_update[' . htmlspecialchars(bracket_escape($name)) . ']" id="' . $id . '" value="1"' . ($checked ? ' checked="checked"' : '') . ' />' . lang('ON UPDATE CURRENT_TIMESTAMP') . '</label>';
+               }
                echo "</td></tr>\n";
        }
        echo "</table>\n";
index d5e4b25b1e93a7dd2b6b6e6fe0d1805fde1c97d7..438cd02c063efd02f89ac0b537e040f25965241c 100644 (file)
@@ -117,8 +117,8 @@ static $translations = array(
                'Add column' => 'Přidat sloupec',
                'Alter' => 'Změnit',
                'Add foreign key' => 'Přidat cizí klíč',
-               'ON DELETE' => 'ON DELETE',
-               'ON UPDATE' => 'ON UPDATE',
+               'ON DELETE' => 'Při smazání',
+               'ON UPDATE' => 'Při změně',
                'Index Type' => 'Typ indexu',
                'Column (length)' => 'Sloupec (délka)',
                'View has been dropped.' => 'Pohled byl odstraněn.',
@@ -156,6 +156,7 @@ static $translations = array(
                'MySQL version' => 'Verze MySQL',
                'through PHP extension' => 'přes PHP extenzi',
                '%d row(s)' => array('%d řádek', '%d řádky', '%d řádků'),
+               'ON UPDATE CURRENT_TIMESTAMP' => 'Při změně aktuální čas',
        ),
 );