diff options
-rwxr-xr-x | include/text.php | 18 | ||||
-rw-r--r-- | view/css/mod_chat.css | 31 | ||||
-rw-r--r-- | view/theme/redbasic/css/style.css | 2 | ||||
-rw-r--r-- | view/tpl/chat.tpl | 13 |
4 files changed, 44 insertions, 20 deletions
diff --git a/include/text.php b/include/text.php index cf68ee121..1eef4e37a 100755 --- a/include/text.php +++ b/include/text.php @@ -889,8 +889,8 @@ function smilies($s, $sample = false) { || (local_user() && intval(get_pconfig(local_user(),'system','no_smilies')))) return $s; - $s = preg_replace_callback('{<(pre|code)>(?<target>.*?)</\1>}ism','smile_encode',$s); - $s = preg_replace_callback('/<[a-z]+ (?<target>.*?)>/ism','smile_encode',$s); + $s = preg_replace_callback('{<(pre|code)>.*?</\1>}ism','smile_shield',$s); + $s = preg_replace_callback('/<[a-z]+ .*?>/ism','smile_shield',$s); $texts = array( '<3', @@ -981,20 +981,18 @@ function smilies($s, $sample = false) { $s = str_replace($params['texts'],$params['icons'],$params['string']); } - $s = preg_replace_callback( - '/<!--base64:(.*?)-->/ism', - function ($m) { return base64url_decode($m[1]); }, - $s - ); + $s = preg_replace_callback('/<!--base64:(.*?)-->/ism', 'smile_unshield', $s); return $s; } +function smile_shield($m) { + return '<!--base64:' . base64url_encode($m[0]) . '-->'; +} -function smile_encode($m) { - $cleartext = $m['target']; - return str_replace($cleartext,'<!--base64:' . base64url_encode($cleartext) . '-->',$m[0]); +function smile_unshield($m) { + return base64url_decode($m[1]); } // expand <3333 to the correct number of hearts diff --git a/view/css/mod_chat.css b/view/css/mod_chat.css new file mode 100644 index 000000000..7f33f2c48 --- /dev/null +++ b/view/css/mod_chat.css @@ -0,0 +1,31 @@ + .chatContainer { + height: 100%; + width: 100%; + } + + .chatTopBar { + float: left; + height: 400px; + width: 650px; + overflow-y: auto; + } + + .chatUsers { + float: right; + width: 120px; + height: 100%; + border: 1px solid #000; + } + + .chatBottomBar { + position: relative; + bottom: 0; + height: 150px; + margin-top: 20px; + } + + section { + padding-bottom: 0; + } + +
\ No newline at end of file diff --git a/view/theme/redbasic/css/style.css b/view/theme/redbasic/css/style.css index fe6d24f18..776b4c31a 100644 --- a/view/theme/redbasic/css/style.css +++ b/view/theme/redbasic/css/style.css @@ -44,7 +44,7 @@ a, a:visited, a:link, .fakelink, .fakelink:visited, .fakelink:link { text-decoration: none; } -a:hover, .fakelink:hover { color: #44AAFF; text-decoration: underline; } +a:hover, .fakelink:hover { color: $link_colour; text-decoration: underline; } .fakelink { cursor: pointer; diff --git a/view/tpl/chat.tpl b/view/tpl/chat.tpl index dba6a777f..eb98063fa 100644 --- a/view/tpl/chat.tpl +++ b/view/tpl/chat.tpl @@ -1,14 +1,14 @@ <h1>{{$room_name}}</h1> -<div id="chatContainer" style="height: 100%; width: 100%;"> +<div id="chatContainer""> - <div id="chatTopBar" style="float: left; height: 400px; width: 650px; overflow-y: auto;"> + <div id="chatTopBar"> <div id="chatLineHolder"></div> </div> - <div id="chatUsers" style="float: right; width: 120px; height: 100%; border: 1px solid #000;" ></div> + <div id="chatUsers"></div> <div class="clear"></div> - <div id="chatBottomBar" style="position: relative; bottom: 0; height: 150px; margin-top: 20px;"> + <div id="chatBottomBar"> <div class="tip"></div> <form id="chat-form" method="post" action="#"> @@ -22,11 +22,6 @@ </div> </div> -<style> -section { - padding-bottom: 0; -} -</style> <script> var room_id = {{$room_id}}; |