New version of database, add last_access_time field
This commit is contained in:
		| @@ -28,7 +28,7 @@ | ||||
|  */ | ||||
| $MAX_ENTRY_LEN = 512; | ||||
| $USERS_PATH = "./users/"; | ||||
| $TARGET_DB_VERSION = 1; | ||||
| $TARGET_DB_VERSION = 2; | ||||
|  | ||||
| function sanitize($val) | ||||
| { | ||||
| @@ -106,15 +106,35 @@ function _migrate_0($user, $db) | ||||
|     return 0; | ||||
| } | ||||
|  | ||||
| function _migrate_1($user, $db) | ||||
| { | ||||
|     try { | ||||
|         $db->query("CREATE TABLE conf(db_version INTEGER, last_access_time INTEGER)"); | ||||
|         $db->query("INSERT INTO conf VALUES(2, 0)"); | ||||
|     } | ||||
|     catch(Exception $e) | ||||
|     { | ||||
|         $db->close(); | ||||
|         echo "<div class=\"error\">Unable to load database for user $user ! : $e</div>"; | ||||
|         return -1; | ||||
|     } | ||||
|  | ||||
|     return 0; | ||||
| } | ||||
|  | ||||
| function migrate_database($user, $db) | ||||
| { | ||||
|     global $TARGET_DB_VERSION; | ||||
|  | ||||
|     $migration_functions = ['_migrate_0']; | ||||
|     $migration_functions = ['_migrate_0', '_migrate_1']; | ||||
|  | ||||
|     $version = $db->querySingle("SELECT version FROM db_version"); | ||||
|     if ($version == false) | ||||
|         $version = 0; | ||||
|     $version = $db->querySingle("SELECT db_version FROM conf"); | ||||
|     if ($version == false || $version == -1) | ||||
|     { | ||||
|         $version = $db->querySingle("SELECT version FROM db_version"); | ||||
|         if ($version == false || $version == -1) | ||||
|             $version = 0; | ||||
|     } | ||||
|  | ||||
|     for($i=$version; $i<$TARGET_DB_VERSION; $i++) | ||||
|     { | ||||
|   | ||||
| @@ -1,3 +1,3 @@ | ||||
| CREATE TABLE gpass(login VARCHAR(512) PRIMARY KEY, password VARCHAR(512), shadow_login VARCHAR(32), salt VARCHAR(32), access_token VARCHAR(32)); | ||||
| CREATE TABLE db_version(version INTEGER); | ||||
| INSERT INTO db_version VALUES (1); | ||||
| CREATE TABLE conf(db_version INTEGER, last_access_time INTEGER); | ||||
| INSERT INTO conf VALUES (2, 0); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user