summaryrefslogtreecommitdiff
path: root/admin
diff options
context:
space:
mode:
authorbitweaver.org <bitweaver@users.sourceforge.net>2005-06-19 04:56:31 +0000
committerbitweaver.org <bitweaver@users.sourceforge.net>2005-06-19 04:56:31 +0000
commitdb60c85506a212d5eae4ffc6eecf43ece2a9b7f9 (patch)
tree441c9f624e4d6dd5beb28ce677c4955f5811022b /admin
downloadmessages-db60c85506a212d5eae4ffc6eecf43ece2a9b7f9.tar.gz
messages-db60c85506a212d5eae4ffc6eecf43ece2a9b7f9.tar.bz2
messages-db60c85506a212d5eae4ffc6eecf43ece2a9b7f9.zip
IMPORT TikiPro CLYDE FINAL
Diffstat (limited to 'admin')
-rw-r--r--admin/schema_inc.php55
-rw-r--r--admin/upgrade_inc.php53
2 files changed, 108 insertions, 0 deletions
diff --git a/admin/schema_inc.php b/admin/schema_inc.php
new file mode 100644
index 0000000..905d995
--- /dev/null
+++ b/admin/schema_inc.php
@@ -0,0 +1,55 @@
+<?php
+
+$tables = array(
+
+'messu_messages' => "
+ msg_id I4 AUTO PRIMARY,
+ to_user_id I4 NOTNULL,
+ from_user_id I4 NOTNULL,
+ msg_to X,
+ msg_cc X,
+ msg_bcc X,
+ subject C(255),
+ body X,
+ hash C(32),
+ date I8,
+ is_read C(1),
+ is_replied C(1),
+ is_flagged C(1),
+ priority I4
+"
+// CONSTRAINT ', CONSTRAINT tiki_messu_to_user_ref FOREIGN KEY (to_user_id) REFERENCES `".BIT_DB_PREFIX."users_users` (user_id)
+// , CONSTRAINT tiki_messu_from_user_ref FOREIGN KEY (from_user_id) REFERENCES `".BIT_DB_PREFIX."users_users` (user_id)'
+
+);
+
+global $gBitInstaller;
+
+foreach( array_keys( $tables ) AS $tableName ) {
+ $gBitInstaller->registerSchemaTable( MESSU_PKG_NAME, $tableName, $tables[$tableName] );
+}
+
+$gBitInstaller->registerPackageInfo( MESSU_PKG_NAME, array(
+ 'description' => "An intra-site messaging system for users.",
+ 'license' => '<a href="http://www.gnu.org/licenses/licenses.html#LGPL">LGPL</a>',
+ 'version' => '0.1',
+ 'state' => 'beta',
+ 'dependencies' => '',
+) );
+
+
+// ### Default User Permissions
+$gBitInstaller->registerUserPermissions( FISHEYE_PKG_NAME, array(
+ array('bit_p_messages', 'Can use the messaging system', 'registered', 'messu'),
+) );
+
+// ### Indexes
+$indices = array (
+ 'tiki_messu_to_user_id_idx' => array( 'table' => 'messu_messages', 'cols' => 'to_user_id', 'opts' => NULL ),
+ 'tiki_messu_from_user_id_idx' => array( 'table' => 'messu_messages', 'cols' => 'from_user_id', 'opts' => NULL )
+);
+// TODO - SPIDERR - following seems to cause time _decrease_ cause bigint on postgres. need more investigation
+// 'tiki_blog_posts_created_idx' => array( 'table' => 'tiki_blog_posts', 'cols' => 'created', 'opts' => NULL ),
+$gBitInstaller->registerSchemaIndexes( MESSU_PKG_NAME, $indices );
+
+?>
diff --git a/admin/upgrade_inc.php b/admin/upgrade_inc.php
new file mode 100644
index 0000000..0010cd4
--- /dev/null
+++ b/admin/upgrade_inc.php
@@ -0,0 +1,53 @@
+<?php
+global $gBitSystem, $gUpgradeFrom, $gUpgradeTo;
+
+$upgrades = array(
+
+'BONNIE' => array(
+ 'CLYDE' => array(
+// STEP 1
+array( 'DATADICT' => array(
+array( 'RENAMECOLUMN' => array(
+ 'messu_messages' => array(
+ '`msgId`' => '`msg_id` I4 AUTO',
+ '`isRead`' => '`is_read` VARCHAR(1)',
+ '`isReplied`' => '`is_replied` VARCHAR(1)',
+ '`isFlagged`' => '`is_flagged` VARCHAR(1)',
+ '`user_to`' => '`msg_to` X',
+ '`user_cc`' => '`msg_cc` X',
+ '`user_bcc`' => '`msg_bcc` X',
+ ),
+)),
+array( 'ALTER' => array(
+ 'messu_messages' => array(
+ 'to_user_id' => array( '`to_user_id`', 'I4' ), // , 'NOTNULL' ),
+ 'from_user_id' => array( '`from_user_id`', 'I4' ), // , 'NOTNULL' ),
+ ),
+))
+)),
+
+// STEP 3
+array( 'QUERY' =>
+ array( 'SQL92' => array(
+ "UPDATE `".BIT_DB_PREFIX."messu_messages` SET `to_user_id`=(SELECT `user_id` FROM `".BIT_DB_PREFIX."users_users` WHERE `".BIT_DB_PREFIX."users_users`.`login`=`".BIT_DB_PREFIX."messu_messages`.`user`)",
+ "UPDATE `".BIT_DB_PREFIX."messu_messages` SET `from_user_id`=(SELECT `user_id` FROM `".BIT_DB_PREFIX."users_users` WHERE `".BIT_DB_PREFIX."users_users`.`login`=`".BIT_DB_PREFIX."messu_messages`.`user_from`)",
+ ),
+)),
+
+// STEP 4
+array( 'DATADICT' => array(
+ array( 'DROPCOLUMN' => array(
+ 'messu_messages' => array( '`user`', '`user_from`' ),
+ )),
+)),
+
+ )
+)
+);
+
+if( isset( $upgrades[$gUpgradeFrom][$gUpgradeTo] ) ) {
+ $gBitSystem->registerUpgrade( MESSU_PKG_NAME, $upgrades[$gUpgradeFrom][$gUpgradeTo] );
+}
+
+
+?>