<?php
# Copyright by Manuel
# Support www.ilch.de
defined (
'main'
)
or
die
(
'no direct access'
);
function
smilies (
$string
) {
global
$smilies_array
;
if
(!isset(
$smilies_array
)) {
$smilies_array
=
array
();
$erg
= db_query(
"SELECT ent, url, emo FROM `prefix_smiliesshb`"
);
while
(
$row
= db_fetch_object(
$erg
) ) {
$smilies_array
[
$row
->ent] =
$row
->emo.
'#@#-_-_-#@#'
.
$row
->url;
}
}
foreach
(
$smilies_array
as
$k
=>
$v
) {
list(
$emo
,
$url
) =
explode
(
'#@#-_-_-#@#'
,
$v
);
$string
=
str_replace
(
$k
,
'<img src="include/images/smiliesshb/'
.
$url
.
'" border="0" alt="'
.
$emo
.
'" title="'
.
$emo
.
'" />'
,
$string
);
}
return
$string
;
}
function
smiliesshb () {
global
$lang
;
$zeilen
= 5;
$i
= 0;
$b
=
'<script language="JavaScript" type="text/javascript">function moreSmilies () { var x = window.open("about:blank", "moreSmilies", "width=250,height=200,left=200,top=300,status=no,scrollbars=yes,resizable=yes"); '
;
$a
=
''
;
$erg
= db_query(
'SELECT emo, ent, url FROM `prefix_smiliesshb`'
);
while
(
$row
= db_fetch_object(
$erg
) ) {
$b
.=
'x.document.write ("<a href=\"javascript:opener.put_shb(\''
.
addslashes
(
addslashes
(
$row
->ent)).
'\')\">");'
;
$b
.=
'x.document.write ("<img style=\"border: 0px; padding: 5px;\" src=\"include/images/smiliesshb/'
.
$row
->url.
'\" title=\"'
.
$row
->emo.
'\"></a>");'
;
if
(
$i
<0) {
# float einbauen
if
(
$i
%
$zeilen
== 0 AND
$i
<> 0) {
$a
.=
'<br /><br />'
; }
$a
.=
'<a href="javascript:put_shb(\''
.
addslashes
(
$row
->ent).
'\')">'
;
$a
.=
'<img style="margin: 2px;" src="include/images/smilesshb/'
.
$row
->url.
'" border="0" title="'
.
$row
->emo.
'"></a>'
;
}
$i
++;
}
$b
.=
' x.document.write("<br /><br /><center><a href=\"javascript:window.close();\">'
.
$lang
[
'close'
].
'</a></center>"); x.document.close(); }</script>'
;
$a
=
$b
.
$a
;
return
(
$a
);
}
$shoutbox_VALUE_name2
=
getenv
(
"REMOTE_ADDR"
);
$datum
=
date
(
"j.n.Y"
);
$zeit
=
date
(
" H:i "
);
$abf
=
'SELECT avatar FROM prefix_user WHERE name = "'
.
$_SESSION
[
'authname'
].
'"'
;
$erg
= db_query(
$abf
);
$row
= db_fetch_object(
$erg
);
if
(
$allgAr
[
'sh_avatar'
] == 1) {
if
(loggedin ()) {
if
(
file_exists
(
$row
->avatar)) {
$avatar
=
$row
->avatar;
}
else
{
$avatar
=
'include/images/avatars/noavatar.jpg'
;
}
}
else
{
$avatar
=
'include/images/avatars/gast.png'
;
}
$avatar
=
'<img src="'
.
$avatar
.
'" border="0" style="max-width:50px;" />'
;
}
else
{
$avatar
=
''
;
}
if
( loggedin() ) {
$shoutbox_VALUE_name
=
$_SESSION
[
'authname'
];
}
else
{
$shoutbox_VALUE_name
=
'Gast'
;
}
if
(has_right(
$allgAr
[
'sb_recht'
])){
if
(!
empty
(
$_POST
[
'shoutbox_submit'
]) AND chk_antispam (
'shoutbox'
)) {
$insert
= true;
if
(!loggedin()) {
$shoutbox_nickname
= escape(
$_POST
[
'shoutbox_nickname'
],
'string'
);
$shoutbox_nickname
=
substr
(
$shoutbox_nickname
, 0, 15);
if
(db_count_query(
"SELECT COUNT(*) FROM prefix_user WHERE name LIKE '%$shoutbox_nickname%'"
) > 0) {
$insert
= false;
echo
'<center><font color="#ff0000">Benutzen sie einen anderen Namen, dieser ist bereits vergeben.</font></center><br />'
;
}
}
else
{
$shoutbox_nickname
= escape(
$_SESSION
[
'authname'
],
'string'
);
}
$shoutbox_textarea
= escape(
$_POST
[
'shoutbox_textarea'
],
'textarea'
);
$shoutbox_textarea
= preg_replace(
"/\[.?(code|quote)[^\]]*?\]/i"
,
""
,
$shoutbox_textarea
);
$shoutbox_textarea
=
strip_tags
(
$shoutbox_textarea
);
if
(!
empty
(
$shoutbox_nickname
) AND !
empty
(
$shoutbox_textarea
) AND
$insert
) {
db_query(
'INSERT INTO `prefix_shoutbox` (`nickname`,`textarea`,`time`) VALUES ( "'
.
$shoutbox_nickname
.
'" , "'
.
$shoutbox_textarea
.
'", '
. time() .
' ) '
);
}
}
?>
<script type=
"text/javascript"
>
function
simple_insert_shb(aTag,eTag) {
var
input = document.forms[
'shoutbox'
].elements[
'shoutbox_textarea'
];
input.focus();
if
(typeof document.selection !=
'undefined'
) {
var
range = document.selection.createRange();
var
insText = range.text;
range.text = aTag + insText + eTag;
range = document.selection.createRange();
if
(insText.length == 0) {
range.move(
'character'
, -eTag.length);
}
else
{
range.moveStart(
'character'
, aTag.length + insText.length + eTag.length);
}
range.select();
}
else
if
(typeof input.selectionStart !=
'undefined'
)
{
var
start = input.selectionStart;
var
end
= input.selectionEnd;
var
insText = input.value.substring(start,
end
);
input.value = input.value.
substr
(0, start) + aTag + insText + eTag + input.value.
substr
(
end
);
var
pos;
if
(insText.length == 0) {
pos = start + aTag.length;
}
else
{
pos = start + aTag.length + insText.length + eTag.length;
}
input.selectionStart = pos;
input.selectionEnd = pos;
}
else
{
var
pos = input.value.length;
var
insText = prompt(
"Bitte geben Sie den zu formatierenden Text ein:"
);
input.value = input.value.
substr
(0, pos) + aTag + insText + eTag + input.value.
substr
(pos);
}
}
function
put_shb ( towrite ) {
simple_insert_shb ( towrite,
''
);
}
</script>
<?php
echo
'<link rel="stylesheet" href="include/boxes/shoutbox/shoutbox_style.css" type="text/css"/>'
;
echo
'<form action="index.php" method="POST" name="shoutbox">'
;
echo
'<table width=
"100%"
cellpadding=
"2"
cellspacing=
"1"
border=
"0"
class
=
"shoutbox_oben"
>
<tr><td style=
"font-size:11px; text-align:center;"
>Heute ist der
'.$datum.'
<br />um
'.$zeit.'
Uhr<br />Deine IP:<b>
'.$shoutbox_VALUE_name2.'
</b></td></tr>
';
echo
'
<tr><td align=
"center"
>
'.$avatar.'
<br />
<input type=
"text"
size=
"15"
name=
"shoutbox_nickname"
value=
"'.$shoutbox_VALUE_name.'"
onFocus=
"if (value == \''.$shoutbox_VALUE_name.'\') {value = \'\'}"
onBlur=
"if (value == \'\') {value = \''.$shoutbox_VALUE_name.'\'}"
maxlength=
"15"
>
<textarea style=
"width: 85%"
cols=
"15"
rows=
"4"
name=
"shoutbox_textarea"
></textarea><br>
'.getBBCodeButtons_shoutbox().smiliesshb ('
shoutbox
', 0).'
</td></tr>
';
echo
'
<tr><td align=
"center"
>
'.get_antispam ('
shoutbox
', 0).'
<input type=
"submit"
value=
"'.$lang['formsub'].'"
name=
"shoutbox_submit"
></td></tr>
</table><br/>';
echo
'</form>'
;
}
else
{
echo
'<link rel="stylesheet" href="include/boxes/shoutbox/shoutbox_style.css" type="text/css"/>'
;
echo
'<table width=
"100%"
cellpadding=
"2"
cellspacing=
"1"
border=
"0"
class
=
"shoutbox_oben"
>
<tr><td style=
"font-size:11px; text-align:center;"
><b>Zum Posten<br />Bitte Einloggen!<br /></b>Deine IP:
'.$shoutbox_VALUE_name2.'
</td></tr>
</table><br/>';
}
echo
'<table width="100%" cellpadding="0" cellspacing="0" border="0">'
;
$erg
= db_query(
'SELECT `prefix_shoutbox`.*, `prefix_user`.name, `prefix_user`.avatar FROM `prefix_shoutbox` LEFT JOIN `prefix_user` ON `prefix_user`.name = `prefix_shoutbox`.nickname ORDER BY id DESC LIMIT '
. (
is_numeric
(
$allgAr
[
'sb_limit'
])?
$allgAr
[
'sb_limit'
]:5));
$class
=
'Cnorm'
;
while
(
$row
= db_fetch_object(
$erg
)) {
if
(
$allgAr
[
'sh_avatar'
] == 1) {
if
(
$row
->name) {
if
(
file_exists
(
$row
->avatar)) {
$avatar
=
$row
->avatar;
}
else
{
$avatar
=
'include/images/avatars/wurstegal.jpg'
;
}
}
else
{
$avatar
=
'include/images/avatars/wurstegal_gast.jpg'
;
}
$avatar
=
'<img src="'
.
$avatar
.
'" class="avatar_box"/>'
;
}
else
{
$avatar
=
''
;
}
$class
= (
$class
==
'Cmite'
?
'Cnorm'
:
'Cmite'
);
$time
=
is_null
(
$row
->time) ?
'<br />'
:
' '
.
date
(
'd.m.y - H:i'
,
$row
->time).
' Uhr'
;
echo
'<tr><td class="shoutboxuser">'
.
$row
->nickname.
'<br/><span class="time_sh_box" title="Eintrag von '
.
$row
->nickname.
' am '
.
$time
.
'">'
.
$time
.'</span></td></tr>
<tr><td
class
=
"shoutboxfeld"
>
'.$avatar.'
'.smilies(bbcode($row->textarea)).'
</td></tr>
<tr><td
class
=
"shoutboxend"
></td></tr>
<tr><td
class
=
"losse"
></td></tr>';
}
echo
'</table><span style="float:right;"><a class="archivbut_sh_box" href="index.php?shoutbox" title="Shoutbox Archiv anzeigen">'
.
$lang
[
'archiv'
].
'</a></span>'
;
?>