Diskuse

Téma: Tabulkový shoutbox

Dobrý den,

potřebuji rozšířit formulář shoutboxu, aby mi umožnil napsat text do různých sloupců v tabulce.

Tedy aby byl formulář součást tabulky, která má sedm sloupců a jen jedno tlačítko odeslat.

Vyhodnocení SB zvládnu.

Snad to nebude špatné na pochopení, předem děkuji za vaší pomoc.
postZaslat odpověď
Defacto by mi stačilo říct, kde tenhle formulář upravit, nebo jestli se vyplatí vytvořit nový.
To je na napsání úplně nového rozšíření, k tomu shoutbox přemluvit nepůjde.
Mně se styl toho shutboxu moc líbí, výpis mi funguje, jen potřebuji, aby to co ručně zadám do tabulky se mi načetlo v databáze, a to se mi vůbec nedaří 🤨
<?php
/* --- kontrola jadra --- */
if (!defined('_core')) {
exit;
}

/* --- definice funkce modulu --- */
function _HCM_sboxp($id = null)
{
// priprava
$result = "";
$id = intval($id);

// nacteni dat shoutboxu
$sboxdata = DB::query("SELECT * FROM `" . _mysql_prefix . "-sboxes` WHERE id=" . $id);
if (DB::size($sboxdata) != 0) {
$sboxdata = DB::row($sboxdata);
$rcontinue = true;
} else {
$rcontinue = false;
}

// sestaveni kodu
if ($rcontinue) {

$result = "
<div class='anchor'><a name='hcm_sbox_" . SL::$hcmUid . "'></a></div>
<div class='sbox'>
<div class='sbox-content'>
" . (($sboxdata['title'] != "") ? "<div class='sbox-title'>" . $sboxdata['title'] . "</div>" : '') . "<div class='sbox-item'" . (($sboxdata['title'] == "") ? " style='border-top:none;'" : '') . ">";

// formular na pridani
if ($sboxdata['locked'] != 1 and _publicAccess($sboxdata['public'])) {

// priprava bunek
// $captcha = _captchaInit();
if (!_loginindicator) {
$inputs[] = array($GLOBALS['_lang']['posts.guestname'], "<input type='text' name='guest' class='sbox-input' maxlength='22' />");
}
$inputs[] = array($GLOBALS['_lang']['posts.text'], "<input type='text' name='text' class='sbox-input' maxlength='255' /><input type='hidden' name='_posttype' value='4' /><input type='hidden' name='_posttarget' value='" . $id . "' />");
if (!_loginindicator) {
$inputs[1][2] = true;
// $inputs[] = $captcha;
}

$result .= _formOutput("hcm_sboxform_" . SL::$hcmUid, _indexroot . "remote/post.php?_return=" . urlencode(_indexOutput_url . "#hcm_sbox_" . SL::$hcmUid), $inputs, null, null);

} else {
if ($sboxdata['locked'] != 1) {
$result .= $GLOBALS['_lang']['posts.loginrequired'];
} else {
$result .= "<img src='" . _templateImage("icons/lock.png") . "' alt='locked' class='icon' /> " . $GLOBALS['_lang']['posts.locked2'];
}
}

$result .= "\n</div>\n<div class='sbox-posts'>";

// vypis prispevku

$result .= "
<style>
* {
box-sizing: border-box;
}

#myInput {
background-image: url('/css/searchicon.png');
background-position: 10px 10px;
background-repeat: no-repeat;
width: 100%;
font-size: 16px;
padding: 12px 20px 12px 40px;
border: 1px solid #ddd;
margin-bottom: 12px;
}
</style>
<input type='text' id='myInput' onkeyup='myFunction()' placeholder='Vyhledat podle města..' title=''>";

$result .= "<center><table class='tg', id='myTable'>
<tbody>
<tr>
<th class='tg-2ro4'>Čas</th>
<th class='tg-2ro4'>Auror</th>
<th class='tg-2ro4'>Město</th>
<th class='tg-2ro4'>Služba</th>
<th class='tg-2ro4'>Cena</th>
<th class='tg-2ro4'>Kontakt</th>
<th class='tg-2ro4'>Upravit</th>
</tr>
</tbody>";
$sposts = DB::query("SELECT id,text,author,guest,time,ip FROM `" . _mysql_prefix . "-posts` WHERE home=" . $id . " AND type=4 ORDER BY id DESC");
if (DB::size($sposts) != 0) {
while ($spost = DB::row($sposts)) {

// nacteni autora
if ($spost['author'] != -1) {
$author = _linkUser($spost['author'], "post-author' title='" . _formatTime($spost['time']), false, false, 16, ":");
} else {
$author = "<span class='post-author-guest' title='" . _formatTime($spost['time']) . ", ip=" . _showIP($spost['ip']) . "'>" . $spost['guest'] . ":</span>";
}

// odkaz na spravu
if (_postAccess($spost)) {
$alink = " <a href='index.php?m=editpost&amp;id=" . $spost['id'] . "'><img src='" . _templateImage("icons/edit.png") . "' alt='edit' class='icon' /></a>";
} else {
$alink = "";
}
// kod polozky
$result .=
"<tr>"
."<td class='tg-ek65'>"
._formatTime($spost['time'])
."</td>"
."<center><td class='tg-ek65'>"
. $author
."</td></center>"
."<td class='tg-ek65'>"
. _parsePost($spost['text'], true, false, false)
."</td>"
."<td class='tg-ek65'>"
. ""
."</td>"
."<td class='tg-ek65'>"
.""
."</td>"
."<td class='tg-ek65'>"
.""
."</td>"
."<td class='tg-ek65'>"
."&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;".$alink
."</td>"
."</tr>"
;

}
} else {
$result .= "\n<div class='sbox-item'>" . $GLOBALS['_lang']['posts.noposts'] . "</div>\n";
}

$result .= "
</div>
</div>
</div>
</table>
</center>
";

$result .= "
<script>
function myFunction() {
var input, filter, table, tr, td, i;
input = document.getElementById('myInput');
filter = input.value.toUpperCase();
table = document.getElementById('myTable');
tr = table.getElementsByTagName('tr');
for (i = 0; i < tr.length; i++) {
td = tr.getElementsByTagName('td')[2];
if (td) {
if (td.innerHTML.toUpperCase().indexOf(filter) > -1) {
tr.style.display = '';
} else {
tr.style.display = 'none';
}
}
}
}
</script>";

}

return $result;
}