90 lines
No EOL
3.3 KiB
PHP
90 lines
No EOL
3.3 KiB
PHP
<?php
|
||
|
||
class module_chat extends admin_module{
|
||
|
||
function admin_panels(){
|
||
$panels=array(array("manage_chat","Manage Chat","server_edit"));
|
||
return $panels;
|
||
}
|
||
|
||
function get_info(){
|
||
$info["name"]="TopiaChat";
|
||
$info["file"]="chat";
|
||
$info["author"]="genuineparts";
|
||
$info["version"]="1.1.0";
|
||
$info["url"]="http://www.becast.at";
|
||
//$info["depends"]='mybb_bridge';
|
||
return $info;
|
||
}
|
||
|
||
function install(){
|
||
global $config, $db;
|
||
|
||
/*$db->query("CREATE TABLE IF NOT EXISTS `yac_users` (
|
||
`uid` int(11) NOT NULL,
|
||
`color` varchar(7) NOT NULL,
|
||
`lastonline` int(11) NOT NULL,
|
||
`chattime` bigint(20) NOT NULL,
|
||
`rights` smallint(6) NOT NULL,
|
||
KEY `uid` (`uid`)
|
||
) ENGINE=MyISAM DEFAULT CHARSET=latin1;");
|
||
|
||
$db->query("INSERT INTO `" . $config["prefix"] . "config_categorys` (
|
||
`cid` ,
|
||
`categoryname`
|
||
)
|
||
VALUES (
|
||
NULL , 'PT Chat'
|
||
);");
|
||
$cid=$db->last_id();
|
||
$db->query("INSERT INTO `" . $config["prefix"] . "config` (`name`, `value`, `title`, `description`, `option`, `category`) VALUES
|
||
('LOGINKEY', '', 'Loginkey', 'Der Secure Key des Chats.', 'text', ".$cid."),
|
||
('SOCK_PORT', '8090', 'Chatport', 'Der Port auf dem der Server l<>uft.', 'text', ".$cid."),
|
||
('ENABLE_WATCHSERVER', '', 'Watchserver einschalten', 'Soll der Watchserver aktiviert werden?.', 'select(Ja|true;Nein|false)', ".$cid."),
|
||
('SMILIES_URL', 'http://forum.recensio.org/', 'Smilieurl', 'Die Url zu den Smiliebildern', 'text', ".$cid.");");
|
||
|
||
$db->query("CREATE VIEW `v_yac_users` AS select `u`.`id` AS `uid`,`u`.`name` AS `name`,`c`.`color` AS `color`,`c`.`lastonline` AS `lastonline`,`c`.`rights` AS `rights`,`c`.`chattime` AS `chattime`,`u`.`bgmusic` AS `bgmusic` from `" . $config["prefix"] . "rp_chars` `u` left join `yac_users` `c` ON `u`.`id` = `c`.`uid`");
|
||
|
||
$db->query("CREATE TABLE IF NOT EXISTS `yac_chatlog` (
|
||
`id` int(11) NOT NULL AUTO_INCREMENT,
|
||
`uid` int(11) NOT NULL,
|
||
`user` varchar(50) CHARACTER SET latin1 NOT NULL,
|
||
`color` varchar(6) CHARACTER SET latin1 NOT NULL,
|
||
`room` varchar(30) CHARACTER SET latin1 NOT NULL,
|
||
`timestamp` int(11) NOT NULL,
|
||
`action` varchar(25) CHARACTER SET latin1 NOT NULL,
|
||
`text` text CHARACTER SET latin1 NOT NULL,
|
||
PRIMARY KEY (`id`),
|
||
KEY `user` (`user`),
|
||
KEY `room` (`room`),
|
||
KEY `timestamp` (`timestamp`)
|
||
) ENGINE=MyISAM DEFAULT CHARSET=utf8");
|
||
|
||
|
||
|
||
/*$db->query("CREATE PROCEDURE `sp_yac_saveuserdata`(vUID INT(11), vColor VARCHAR(6), vLastonline INT(11), vChattime BIGINT(20))
|
||
BEGIN
|
||
SET @x = (SELECT COUNT(`uid`) FROM `yac_users` WHERE `uid` = vUID);
|
||
IF @x >= 1 THEN
|
||
UPDATE `yac_users` SET `color` = vColor, `lastonline` = vLastonline, `chattime` = vChattime WHERE `uid` = vUID;
|
||
ELSE
|
||
INSERT INTO `yac_users` (`uid`, `color`, `lastonline`, `chattime`) VALUES (vUID, vColor, vLastonline, vChattime);
|
||
END IF;
|
||
END");
|
||
if($db->error()!=""){
|
||
return $db->error();
|
||
}*/
|
||
return true;
|
||
}
|
||
|
||
function uninstall(){
|
||
global $config, $db;
|
||
//$db->query("DROP VIEW `v_yac_users`");
|
||
//$db->query("DROP VIEW `v_yac_smilies`");
|
||
//$db->query("DROP TABLE `yac_users`");
|
||
//$db->query("DELETE FROM `" . $config["prefix"] . "config_categorys` WHERE categoryname='yac Chat'");
|
||
//$db->query("DELETE FROM `" . $config["prefix"] . "config` WHERE name in ('LOGINKEY','SOCK_PORT','ENABLE_WATCHSERVER','SMILIES_URL')");
|
||
return TRUE;
|
||
}
|
||
|
||
} |