From 4a8ada694fe8cab6380df9fd84a68d7dbe56f5b3 Mon Sep 17 00:00:00 2001 From: Egil Moeller Date: Tue, 30 Mar 2010 19:55:51 +0200 Subject: Added a DB migration to set up plugin DB tables --- .../db_migrations/m0040_create_plugin_tables.js | 40 ++++++++++++++++++++++ .../src/etherpad/db_migrations/migration_runner.js | 3 +- 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 etherpad/src/etherpad/db_migrations/m0040_create_plugin_tables.js diff --git a/etherpad/src/etherpad/db_migrations/m0040_create_plugin_tables.js b/etherpad/src/etherpad/db_migrations/m0040_create_plugin_tables.js new file mode 100644 index 0000000..62e8ff7 --- /dev/null +++ b/etherpad/src/etherpad/db_migrations/m0040_create_plugin_tables.js @@ -0,0 +1,40 @@ +/** + * Copyright 2009 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS-IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import("etherpad.utils.isPrivateNetworkEdition"); +import("sqlbase.sqlobj"); +import("sqlbase.sqlcommon"); + +function run() { + sqlobj.createTable('plugin', { + id: 'INT NOT NULL '+sqlcommon.autoIncrementClause()+' PRIMARY KEY', + name: 'VARCHAR(128) character set utf8 collate utf8_bin UNIQUE NOT NULL' + }); + sqlobj.createTable('hook_type', { + id: 'INT NOT NULL '+sqlcommon.autoIncrementClause()+' PRIMARY KEY', + name: 'VARCHAR(128) character set utf8 collate utf8_bin UNIQUE NOT NULL' + }); + sqlobj.createTable('hook', { + id: 'INT NOT NULL '+sqlcommon.autoIncrementClause()+' PRIMARY KEY', + type_id: 'INT NOT NULL REFERENCES hook_type(id)', + name: 'VARCHAR(128) character set utf8 collate utf8_bin NOT NULL' + }); + sqlobj.createTable('plugin_hook', { + plugin_id: 'INT NOT NULL REFERENCES plugin(id)', + hook_id: 'INT NOT NULL REFERENCES hook(id)', + original_name: 'VARCHAR(128) character set utf8 collate utf8_bin' + }); +} diff --git a/etherpad/src/etherpad/db_migrations/migration_runner.js b/etherpad/src/etherpad/db_migrations/migration_runner.js index ddf201d..f4fa861 100644 --- a/etherpad/src/etherpad/db_migrations/migration_runner.js +++ b/etherpad/src/etherpad/db_migrations/migration_runner.js @@ -69,7 +69,8 @@ var migrations = [ "m0035_add_email_to_paymentinfo", "m0036_create_missing_subscription_records", "m0037_create_pro_referral_table", - "m0038_pad_coarse_revs" + "m0038_pad_coarse_revs", + "m0040_create_plugin_tables" ]; var mscope = this; -- cgit v1.2.3