ilch Forum » Ilch CMS 2.X » Kritik und Verbesserungen » [ERLEDIGT] Letzter Besuch Memberliste

Geschlossen
  1. #1
    User Pic
    MonkeyOnKeyboard Moderator
    Registriert seit
    10.02.2014
    Beiträge
    437
    Beitragswertungen
    20 Beitragspunkte
    Ich hab mal etwas experimentiert, weil ich die Anzeige in der Memberliste ( Letzter Besuch) vermisst habe.

    <?php $userMapper = $this->get('userMapper'); ?>
    
    <link href="<?=$this->getModuleUrl('static/css/user.css') ?>" rel="stylesheet">
    
    <h1><?=$this->getTrans('menuUserList') ?></h1>
    <?=$this->get('pagination')->getHtml($this, ['action' => 'index']) ?>
    <div class="userlist">
        <div class="row">
            <div class="col-lg-12">
                <div class="table-responsive">
                    <table class="table table-hover table-bordered">
                        <colgroup>
                            <col class="col-lg-3" />
                            <col class="col-lg-3" />
    						<col class="col-lg-3" />
                            <col class="col-lg-3" />
                        </colgroup>
                        <thead>
                        <tr>
                            <th><?=$this->getTrans('userlistName') ?></th>
                            <th><?=$this->getTrans('userlistRegist') ?></th>
    						<th><?=$this->getTrans('userDateLastActivity') ?></th>
                            <th><?=$this->getTrans('userlistContact') ?></th>
                        </tr>
                        </thead>
                        <tbody>
                            <?php foreach ($this->get('userList') as $userlist): ?>
    						    <?php $ilchDate =  new Ilch\Date($userlist->getDateCreated()); ?>
    							<?php $ilchLastDate =  new Ilch\Date($userlist->getDateLastActivity()); ?>
                                <tr>
                                    <td>
                                        <a href="<?=$this->getUrl(['controller' => 'profil', 'action' => 'index', 'user' => $userlist->getId()]) ?>" title="<?=$this->escape($userlist->getName()) ?>s <?=$this->getTrans('profile') ?>" class="user-link"><?=$this->escape($userlist->getName()) ?></a>
                                    </td>
                                    <td>
                                        <?=substr($this->getTrans($ilchDate->format('l')), 0, 2).', '.$ilchDate->format('d. ').substr($this->getTrans($ilchDate->format('F')), 0, 4).$ilchDate->format(' Y') ?>
                                    </td>
    								<td>
    									<?=substr($this->getTrans($ilchLastDate->format('l')), 0, 2).', '.$ilchLastDate->format('d. ').substr($this->getTrans($ilchLastDate->format('F')), 0, 4).$ilchLastDate->format(' Y') ?>
    								</td>
                                    <td>
                                        <?php if ($this->getUser() AND $this->getUser()->getId() != $this->escape($userlist->getID())): ?>
                                            <a href="<?=$this->getUrl(['controller' => 'panel', 'action' => 'dialognew', 'id' => $userlist->getId()]) ?>" class="fa fa-comment fa-lg user-link" title="<?=$this->getTrans('privateMessage') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($userlist->getOptMail() == 1 AND $this->getUser() AND $this->getUser()->getId() != $userlist->getID()): ?>
                                            <a href="<?=$this->getUrl(['controller' => 'mail', 'action' => 'index', 'user' => $userlist->getId()]) ?>" class="fa fa-envelope fa-lg user-link" title="<?=$this->getTrans('email') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($this->escape($userlist->getHomepage()) != ''): ?>
                                            <a href="<?=$userMapper->getHomepage($this->escape($userlist->getHomepage())) ?>" target="_blank" class="fa fa-globe fa-lg user-link" title="<?=$this->getTrans('website') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($this->escape($userlist->getFacebook()) != ''): ?>
                                            <a href="https://www.facebook.com/<?=$this->escape($userlist->getFacebook()) ?>" target="_blank" class="fa fa-facebook fa-lg user-link" title="<?=$this->getTrans('profileFacebook') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($this->escape($userlist->getTwitter()) != ''): ?>
                                            <a href="https://twitter.com/<?=$this->escape($userlist->getTwitter()) ?>" target="_blank" class="fa fa-twitter fa-lg user-link" title="<?=$this->getTrans('profileTwitter') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($this->escape($userlist->getGoogle()) != ''): ?>
                                            <a href="https://plus.google.com/<?=$this->escape($userlist->getGoogle()) ?>" target="_blank" class="fa fa-google-plus fa-lg user-link" title="<?=$this->getTrans('profileGoogle') ?>"></a>
                                        <?php endif; ?>
                                    </td>
                                </tr>
                            <?php endforeach; ?>
                        </tbody>
                    </table>
                </div>
            </div>
        </div>
    </div>
    <?=$this->get('pagination')->getHtml($this, ['action' => 'index']) ?>



    verwendete ilch Version: 2.0 (alpha)

    betroffene Homepage: sandbox.caelum-et-infernum.eu


    Zuletzt modifiziert von magicmarkus am 22.04.2017 - 01:07:48
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    blackcoder Entwickler
    Registriert seit
    22.05.2014
    Beiträge
    2.277
    Beitragswertungen
    356 Beitragspunkte
    Ja, von mir aus könnte man das übernehmen.

    Jetzt wird allerdings für einen neu angelegten Benutzer, welcher noch nie eingeloggt war, das heutige Datum als letzter Besuch angezeigt. Möchtest du dort nachbessern?

    Hier wird übrigens bereits das Datum des letzten Besuchs angezeigt:
    github.com/IlchCMS/Ilch-2.0/blob/master/application/modules/user/views/profil/index.php#L34
    sandbox.caelum-et-infernum.eu/index.php/user/profil/index/user/1

    Falls du bei GitHub bist:
    redmine.ilch2.de/projects/dev2/wiki/Git
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    MonkeyOnKeyboard Moderator
    Registriert seit
    10.02.2014
    Beiträge
    437
    Beitragswertungen
    20 Beitragspunkte
    ZitatZitat geschrieben von blackcoder
    Ja, von mir aus könnte man das übernehmen.

    Jetzt wird allerdings für einen neu angelegten Benutzer, welcher noch nie eingeloggt war, das heutige Datum als letzter Besuch angezeigt. Möchtest du dort nachbessern?

    Hier wird übrigens bereits das Datum des letzten Besuchs angezeigt:
    github.com/IlchCMS/Ilch-2.0/blob/master/application/modules/user/views/profil/index.php#L34
    sandbox.caelum-et-infernum.eu/index.php/user/profil/index/user/1

    Falls du bei GitHub bist:
    redmine.ilch2.de/projects/dev2/wiki/Git


    Grundsätzlich möchte ich das schon nachbessern, nur weiß ich nicht wie ich die funktion so anpassen kann aus der Profilansicht zur Memberliste.

    Wenn du da ne Idee hast, wäre ich offen für.
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    blackcoder Entwickler
    Registriert seit
    22.05.2014
    Beiträge
    2.277
    Beitragswertungen
    356 Beitragspunkte
    Das Problem war im Grunde genommen nur in Zeile 29, weil $userlist->getDateLastActivity() in dem Fall einen leeren String zurückliefert.

    <?php $userMapper = $this->get('userMapper'); ?>
    
    <link href="<?=$this->getModuleUrl('static/css/user.css') ?>" rel="stylesheet">
    
    <h1><?=$this->getTrans('menuUserList') ?></h1>
    <?=$this->get('pagination')->getHtml($this, ['action' => 'index']) ?>
    <div class="userlist">
        <div class="row">
            <div class="col-lg-12">
                <div class="table-responsive">
                    <table class="table table-hover table-bordered">
                        <colgroup>
                            <col class="col-lg-3" />
                            <col class="col-lg-3" />
                            <col class="col-lg-3" />
                            <col class="col-lg-3" />
                        </colgroup>
                        <thead>
                        <tr>
                            <th><?=$this->getTrans('userlistName') ?></th>
                            <th><?=$this->getTrans('userlistRegist') ?></th>
                            <th><?=$this->getTrans('userDateLastActivity') ?></th>
                            <th><?=$this->getTrans('userlistContact') ?></th>
                        </tr>
                        </thead>
                        <tbody>
                            <?php foreach ($this->get('userList') as $userlist): ?>
                                <?php $ilchDate = new Ilch\Date($userlist->getDateCreated()); ?>
                                <?php $ilchLastDate = (!empty($userlist->getDateLastActivity())) ? new Ilch\Date($userlist->getDateLastActivity()) : ''; ?>
                                <tr>
                                    <td>
                                        <a href="<?=$this->getUrl(['controller' => 'profil', 'action' => 'index', 'user' => $userlist->getId()]) ?>" title="<?=$this->escape($userlist->getName()) ?>s <?=$this->getTrans('profile') ?>" class="user-link"><?=$this->escape($userlist->getName()) ?></a>
                                    </td>
                                    <td>
                                        <?=substr($this->getTrans($ilchDate->format('l')), 0, 2).', '.$ilchDate->format('d. ').substr($this->getTrans($ilchDate->format('F')), 0, 4).$ilchDate->format(' Y') ?>
                                    </td>
                                    <td>
                                        <?=(!empty($ilchLastDate)) ? substr($this->getTrans($ilchLastDate->format('l')), 0, 2).', '.$ilchLastDate->format('d. ').substr($this->getTrans($ilchLastDate->format('F')), 0, 4).$ilchLastDate->format(' Y') : ''; ?>
                                    </td>
                                    <td>
                                        <?php if ($this->getUser() AND $this->getUser()->getId() != $this->escape($userlist->getID())): ?>
                                            <a href="<?=$this->getUrl(['controller' => 'panel', 'action' => 'dialognew', 'id' => $userlist->getId()]) ?>" class="fa fa-comment fa-lg user-link" title="<?=$this->getTrans('privateMessage') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($userlist->getOptMail() == 1 AND $this->getUser() AND $this->getUser()->getId() != $userlist->getID()): ?>
                                            <a href="<?=$this->getUrl(['controller' => 'mail', 'action' => 'index', 'user' => $userlist->getId()]) ?>" class="fa fa-envelope fa-lg user-link" title="<?=$this->getTrans('email') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($this->escape($userlist->getHomepage()) != ''): ?>
                                            <a href="<?=$userMapper->getHomepage($this->escape($userlist->getHomepage())) ?>" target="_blank" class="fa fa-globe fa-lg user-link" title="<?=$this->getTrans('website') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($this->escape($userlist->getFacebook()) != ''): ?>
                                            <a href="https://www.facebook.com/<?=$this->escape($userlist->getFacebook()) ?>" target="_blank" class="fa fa-facebook fa-lg user-link" title="<?=$this->getTrans('profileFacebook') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($this->escape($userlist->getTwitter()) != ''): ?>
                                            <a href="https://twitter.com/<?=$this->escape($userlist->getTwitter()) ?>" target="_blank" class="fa fa-twitter fa-lg user-link" title="<?=$this->getTrans('profileTwitter') ?>"></a>
                                        <?php endif; ?>
                                        <?php if ($this->escape($userlist->getGoogle()) != ''): ?>
                                            <a href="https://plus.google.com/<?=$this->escape($userlist->getGoogle()) ?>" target="_blank" class="fa fa-google-plus fa-lg user-link" title="<?=$this->getTrans('profileGoogle') ?>"></a>
                                        <?php endif; ?>
                                    </td>
                                </tr>
                            <?php endforeach; ?>
                        </tbody>
                    </table>
                </div>
            </div>
        </div>
    </div>
    <?=$this->get('pagination')->getHtml($this, ['action' => 'index']) ?>

    github.com/IlchCMS/Ilch-2.0/commit/a7ca218f985353239c6341b22a76775aceec3669


    Zuletzt modifiziert von blackcoder am 22.04.2017 - 11:24:09
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Kritik und Verbesserungen

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten