
it should be named or style.css.php, or there should be .htaccess that makes css executed with php (will not work on non-apache servers, or servers behind an static proxies).
2. src/commands/ban.class.php
if I'm right, trim() are not needed since move to new paramaters parser, so
- Code: Select all
--- src/commands/ban.class.php (revision 944)
+++ src/commands/ban.class.php (working copy)
@@ -18,7 +18,7 @@
$c =& $this->c;
$u =& $this->u;
- $nick = isset($params[0]) ? trim($params[0]) : '';
+ $nick = isset($params[0]) ? ($params[0]) : '';
$reason = isset($params[1]) ? $params[1] : '';
if ($reason == '') $reason = _pfc("no reason");
$channame = $u->channels[$recipientid]["name"];
(for myself, i have removed kick from ban command -- i'm use ban and kick separately)
3. src/commands/kick.class.php
same 'trim' patch as above.
4. src/containers/mysql.class.php
since `server` is recommend to md5(_FILE_), better to limit `server` field to 32 chars. The less size of index -- the faster search!
group/subgroup/leaf -- also, may be limit to a bit less, than 256? On mine chat i'm use:
- Code: Select all
var $_sql_create_table = "
";
That slight speed-up system, but still "usign temporary; using filesort" here. I think, this because of TEXT column, may be for speedup move text to separate table, and select it with join?
For example, one used query:
- Code: Select all
EXPLAIN SELECT `leaf` , `timestamp`
FROM u43471.freechat
WHERE `server` = 'a7cadd6352026d04d4133315cc20deaf'
AND `group` = 'channelid-to-msg'
AND `subgroup` = 'ch_%D0%92%D1%81%D0%B5'
GROUP BY `leaf`
ORDER BY timestamp
"GROUP BY" from it MUST be removed in that case -- and "Using temporary" from explain query have gone
So, looks like SQL should be not generic, but constructed for all possible varations and tuned...
I have played with database in queries, the maximum perfomance get if add one index:
- Code: Select all
ALTER TABLE `freechat` ADD INDEX ( `server` , `group` , `subgroup` , `timestamp` )
And remove "group by" from query -- then, query took 10 times less time!

5. data/public/js/pfcgui.js
add into loadSmileyBox after
container.appendChild(img);
this:
- Code: Select all
container.appendChild(document.createTextNode(' '));
so smileys will wrap fine if lot of smiles in theme.