1: <?php
2: 3: 4: 5:
6: if (!defined('XOOPS_ROOT_PATH')) exit();
7:
8: require_once XOOPS_ROOT_PATH.'/modules/legacy/admin/class/ModuleInstaller.class.php';
9:
10: class Message_myInstaller extends Legacy_ModuleInstaller
11: {
12: function Message_myInstaller()
13: {
14: parent::Legacy_ModuleInstaller();
15: }
16:
17: function executeInstall()
18: {
19: if ( version_compare(PHP_VERSION, '5.0.0', '>') ) {
20: if ( $this->check_pm() ) {
21: return parent::executeInstall();
22: }
23: } else {
24: $this->mLog->addError(_MI_MESSAGE_INSTALL_ERROR);
25: }
26: return false;
27: }
28:
29: function check_pm()
30: {
31: $hand = xoops_gethandler('module');
32: $obj = $hand->getByDirname('pm');
33: if ( is_object($obj) ) {
34: $this->mLog->addError(_MI_MESSAGE_INSTALL_ERROR2);
35: return false;
36: }
37: return true;
38: }
39:
40: function _processScript()
41: {
42: $root = XCube_Root::getSingleton();
43: $db = $root->mController->getDB();
44:
45: 46: 47: 48: 49: 50: 51: 52: 53: 54:
55:
56:
57: $INBOX = "INSERT INTO `".$db->prefix('message_inbox')."` (`inbox_id`, `uid`, `from_uid`, `title`, `message`, `utime`, `is_read`) VALUES (0, %d, %d, '%s', '%s', %d, %d)";
58: $OUTBOX = "INSERT INTO `".$db->prefix('message_outbox')."` (`outbox_id`, `uid`, `to_uid`, `title`, `message`, `utime`) VALUES (0, %d, %d, '%s', '%s', %d)";
59:
60: $num = 0;
61: $sql = "SELECT * FROM `".$db->prefix('priv_msgs')."` ORDER BY `msg_id`";
62: $result = $db->query($sql);
63: while ($val = $db->fetchArray($result)) {
64: $sql = sprintf($INBOX, $val['to_userid'], $val['from_userid'], mysql_real_escape_string($val['subject']), mysql_real_escape_string($val['msg_text']), $val['msg_time'], $val['read_msg']);
65: $result = $db->queryF($sql);
66:
67: $sql = sprintf($OUTBOX, $val['from_userid'], $val['to_userid'], mysql_real_escape_string($val['subject']), mysql_real_escape_string($val['msg_text']), $val['msg_time']);
68: $result = $db->queryF($sql);
69: $num++;
70: }
71: $this->mLog->addReport('Update to '.$num.' records.');
72:
73: }
74: }
75: ?>
76: