ilch Forum » Ilch CMS 2.X » Module und Modifikationen » Shoutbox

Geschlossen
  1. #1
    User Pic
    Slipi ilch.de Design
    Registriert seit
    19.01.2018
    Beiträge
    938
    Beitragswertungen
    117 Beitragspunkte
    Hallo

    Ich habe das Problem , das man in der Shoutbox nichts schreiben kann ( schreibrechte auf User Gast und admin) . Habe das Modul vom Server genommen und neu hochgeladen (back up ).

    Lg
    <script >
    $(function() {
        var $shoutboxContainer = $('#shoutbox-container'),
            showForm = function() {
                $("#shoutbox-button-container").slideUp(200, function() {
                    $("#shoutbox-form-container").slideDown(400);
                });
            },
            hideForm = function(afterHide) {
                $("#shoutbox-form-container").slideUp(400, function() {
                    $("#shoutbox-button-container").slideDown(200, afterHide);
                });
            };
    
    
        //slideup-down
        $shoutboxContainer.on('click', '#shoutbox-slide-down', showForm);
    
        //slideup-down reset on click out
        $(document.body).on('mousedown', function(event) {
            var target = $(event.target);
    
            if (!target.parents().addBack().is('#shoutbox-container')) {
                hideForm();
            }
        });
    
        //ajax send
        $shoutboxContainer.on('click', 'button[type=submit]', function(ev) {
            ev.preventDefault();
            var $btn = $(this),
                $form = $btn.closest('form'),
                dataString = $form.serialize();
    
            if ($form.find('[name=shoutbox_name]').val() == '') {
                alert(<?=json_encode($this->getTrans('missingName')) ?>);
            } else if ($form.find('[name=shoutbox_textarea]').val() == '') {
                alert(<?=json_encode($this->getTrans('missingMessage')) ?>);
            } else {
                $.ajax({
                    type: "POST",
                    url: "<?=$this->getUrl('shoutbox/index/ajax') ?>",
                    data: dataString,
                    cache: false,
                    success: function(html) {
                        var $htmlWithoutScript = $(html).filter('#shoutbox-container');
                        hideForm(function() {
                            $shoutboxContainer.html($htmlWithoutScript.html());
                        });
                    }
                });
            }
        });
    });
    </script>
    
    <?php $config = \Ilch\Registry::get('config'); ?>
    
    <div id="shoutbox-container">
        <div id="shoutbox-button-container" class="form-horizontal">
            <div class="form-group">
                <div class="col-lg-12">
                    <?php if (is_in_array($this->get('writeAccess'), explode(',', $config->get('shoutbox_writeaccess')))): ?>
                        <div class="pull-left">
                            <button class="btn" id="shoutbox-slide-down"><?=$this->getTrans('answer') ?></button>
                        </div>
                    <?php endif; ?>
                    <?php if (count($this->get('shoutbox')) == $config->get('shoutbox_limit')): ?>
                        <div class="pull-right">
                            <a href="<?=$this->getUrl('shoutbox/index/index/') ?>" class="btn btn-default"><?=$this->getTrans('archive') ?></a>
                        </div>
                    <?php endif; ?>
                </div>
            </div>
        </div>
    
        <?php if (is_in_array($this->get('writeAccess'), explode(',', $config->get('shoutbox_writeaccess')))): ?>
            <div id="shoutbox-form-container" style="display: none;">
                <form class="form-horizontal" action="" method="post">
                   <?=$this->getTokenField() ?>
                    <div class="form-group hidden">
                        <label class="col-lg-2 control-label">
                            <?=$this->getTrans('bot') ?>
                        </label>
                        <div class="col-lg-8">
                            <input type="text"
                                   class="form-control"
                                   name="bot"
                                   placeholder="Bot" />
                        </div>
                    </div>
                    <div class="form-group <?=$this->validation()->hasError('shoutbox_name') ? 'has-error' : '' ?>">
                        <div class="col-lg-12">
                            <input type="text"
                                   class="form-control"
                                   name="shoutbox_name"
                                   placeholder="Name"
                                   value="<?=($this->getUser() !== null) ? $this->escape($this->getUser()->getName()) : '' ?>"
                                   <?=($this->getUser() !== null) ? 'readonly' : 'required' ?> />
                        </div>
                    </div>
                    <div class="form-group <?=$this->validation()->hasError('shoutbox_textarea') ? 'has-error' : '' ?>">
                        <div class="col-lg-12">
                            <textarea class="form-control"
                                      style="resize: vertical"
                                      name="shoutbox_textarea"
                                      cols="10"
                                      rows="5"
                                      maxlength="<?=$config->get('shoutbox_maxtextlength') ?>"
                                      placeholder="<?=$this->getTrans('message') ?>"
                                      required></textarea>
                        </div>
                    </div>
                    <div class="form-group">
                        <div class="col-lg-12">
                            <div class="pull-left">
                                <button type="submit" class="btn" name="form_<?=$this->get('uniqid') ?>">
                                    <?=$this->getTrans('answer') ?>
                                </button>
                            </div>
                            <?php if (count($this->get('shoutbox')) == $config->get('shoutbox_limit')): ?>
                                <div class="pull-right">
                                    <a href="<?=$this->getUrl('shoutbox/index/index/') ?>" class="btn btn-default"><?=$this->getTrans('archive') ?></a>
                                </div>
                            <?php endif; ?>
                        </div>
                    </div>
                </form>
            </div>
        <?php endif; ?>
    
        <div class="table-responsive">
            <table class="table table-bordered table-striped">
                <?php if ($this->get('shoutbox') != ''): ?>
                    <?php foreach ($this->get('shoutbox') as $shoutbox): ?>
                        <?php $userMapper = new \Modules\User\Mappers\User() ?>
                        <?php $user = $userMapper->getUserById($shoutbox->getUid()) ?>
                        <?php $date = new \Ilch\Date($shoutbox->getTime()) ?>
                        <tr>
                            <?php if ($shoutbox->getUid() == '0'): ?>
                                <td>
                                    <b><?=$this->escape($shoutbox->getName()) ?>:</b><br />
                                    <span class="small"><?=$date->format("d.m.Y H:i", true) ?></span>
                                </td>
                            <?php else: ?>
                                <td>
                                    <b><a href="<?=$this->getUrl('user/profil/index/user/'.$user->getId()) ?>"><?=$this->escape($user->getName()) ?></a></b>:<br />
                                    <span class="small"><?=$date->format("d.m.Y H:i", true) ?></span>
                                </td>
                            <?php endif; ?>
                        </tr>
                        <tr>
                            <?php
                            /*
                             * @todo should fix this regex.
                             */
                            ?>
                            <td><?=preg_replace('/([^\s]{' . $this->get('maxwordlength') . '})(?=[^\s])/', "$1\n", $this->escape($shoutbox->getTextarea())) ?></td>
                        </tr>
                    <?php endforeach; ?>
                <?php else: ?>
                    <tr>
                        <td><?=$this->getTrans('noEntrys') ?></td>
                    </tr>
                <?php endif; ?>
            </table>
        </div>
    </div>



    verwendete ilch Version: 2.x

    betroffene Homepage: www.slipi.square7.ch
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Phoenix1303 Mitglied
    Registriert seit
    04.06.2011
    Beiträge
    137
    Beitragswertungen
    12 Beitragspunkte
    Moin Slipi,

    dass Problem war bei mir auch wurde behoben, indem die Shoutbox in die rechte Navigation verschoben wurde.
    Als Info habe ich noch bekommen, dass es sich wohl um eine Überschneidung mit von mir verwendeter Java-Frames handeln könnte.

    Versuch einfach erstmal die Shoutbox im "Menü 2" einzubauen und da zu testen.

    LG Manu


    Hab gerade gesehen, dass du ja nur eine Navigationsleiste nutzt...


    Zuletzt modifiziert von Phoenix1303 am 04.03.2018 - 10:30:38
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    Slipi ilch.de Design
    Registriert seit
    19.01.2018
    Beiträge
    938
    Beitragswertungen
    117 Beitragspunkte
    Das ist blöd , da mein Design nur 2 spalten hat . Menü1 ist links und Menü2 ist im Header ( last forum) .

    Wenn dies ein bekanntes Problem ist , wird es hoffentlich pald eine Lösung geben , wenn nicht muss ich das Design ändern

    Lg


    Zuletzt modifiziert von Slipi am 04.03.2018 - 11:56:54
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    Phoenix1303 Mitglied
    Registriert seit
    04.06.2011
    Beiträge
    137
    Beitragswertungen
    12 Beitragspunkte
    Ich denke schon mal, das da früher oder später nochmals danach geschaut wird glaube aber nicht, dass das in nächster Zeit sein wird, weil das Problem nicht allzu häufig vorzukommen scheint...
    Als Alternative könntest du auch einen externen Chat wie "Chatango" nutzen und einbinden, aber da müsste sich wieder jeder User einen Account anlegen und du müsstest den separat von ilch administrieren...

    LG Manu
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    Slipi ilch.de Design
    Registriert seit
    19.01.2018
    Beiträge
    938
    Beitragswertungen
    117 Beitragspunkte
    Bin beim Überlegen , das ich in der navigation , einen Link einbinde ( Chat ) , so das die Shoutbox im main berreich vorkommt . Bei 1.1 gab es solche Erweiterung . Sollte es nicht funken , werde ich das design ändern müssen .
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    Slipi ilch.de Design
    Registriert seit
    19.01.2018
    Beiträge
    938
    Beitragswertungen
    117 Beitragspunkte
    So hab mal eine Lösung gefunden , die mir gefällt .

    Habe einen Slider erstellt , wo man denn Inhalt unter Menü3 einstellen kann , js geschrieben und fertig .
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    Nex4T Moderator
    Registriert seit
    28.02.2007
    Beiträge
    3.414
    Beitragswertungen
    213 Beitragspunkte
    Behebe aber noch den z-index bug, bei mir ist das Loginfeld über dem chat
    while(!asleep()) sheep++;
    www.movely.biz
    www.webplant.eu
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    Slipi ilch.de Design
    Registriert seit
    19.01.2018
    Beiträge
    938
    Beitragswertungen
    117 Beitragspunkte
    Danke dir , die einheit war zu klein .

    lg
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Module und Modifikationen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten