• ¡Bienvenido a XenFácil!

    Estás viendo el sitio como Invitado. Para poder participar en este sitio

    y obtendrás privilegios adicionales, acceso a otras áreas y mucho mas.

    ¡Es gratis!


    ¿Ya eres miembro? Inicia sesión

XenPortal Módulo XenFacil del RecentNews de XenPorta

lms

Administrador
Mensajes
7.743
Puntuación de reacciones
2.158
Puntos
2.613
Sitio web
xenfacil.com
País
España
Versión de XenForo
2.1.x
PayPal
Donar dinero a este usuario
Página web
Web
Editáis la plantilla EWRporta_Block_RecentNews y cambiáis todo su contenido por:
Insertar CODE, HTML o PHP:
<xen:require css="bb_code.css" />
<xen:require css="EWRporta_Block_RecentNews.css" />

<div id="recentNews">
    <xen:foreach loop="$RecentNews" key="$i" value="$news">
        <div>
                <div class="lmsRecentNewsFirst">
                    <div class="primaryContent">

                        <div class="lmsMessageUserBlock avatarHolder" style="max-height: 150px; max-width: 150px; float: left;">
                            <xen:avatar user="$news" size="m" itemprop="photo" />
                        </div>

                        <div class="rightDate newsDate secondaryContent">
                            <div class="newsMonth heading">{xen:date $news.post_date, 'M'}</div><xen:comment>{$news.month}</div></xen:comment>
                            <div class="newsDay">{xen:date $news.post_date, 'd'}</div><xen:comment>{$news.day}</div></xen:comment>
                        </div>

                        <div style="float: right; margin-right: 2px;">
                            <a href="{xen:link threads, $news}"><xen:datetime time="$news.promote_date" /></a>
                            <xen:if is="{$visitor.permissions.EWRporta.canPromote}">
                                &nbsp; (<a href="{xen:link 'threads/edit', $news}" class="OverlayTrigger">{xen:phrase edit}</a>)
                            </xen:if>
                        </div>

                        <div class="Title"><a href="{xen:link threads, $news}">{$news.title}</a></div>

                        <div class="messageContent baseHtml">
                            <div class="postedBy">
                                <span class="posted">{xen:phrase by} <a href="{xen:link members, $news}" class="username">{$news.username}</a>
                                {xen:phrase at} <a href="{xen:link threads, $news}">{xen:time $news.post_date, 'absolute'}</a></span>
                                <span class="views">({$news.view_count} {xen:phrase views})</span>
                                <span class="comments"><a href="{xen:link threads, $news}">{$news.reply_count} {xen:phrase comments}</a></span>
                            </div>
                            <div class="clearFix"></div>
                        </div>

                        <xen:if is="({$news.attach} OR {$news.medio} OR {$news.image})">

                        <div class="miniaturaNoticia">
                            <xen:if is="{$news.image}">
                                <a href="{xen:link threads, $news}"><img src="{$news.image}" alt="{$news.image}" /></a>

                            <xen:elseif is="{$news.attach}" />
                                <a href="{xen:link threads, $news}"><img src="{$news.attach.thumbnailUrl}" alt="{$news.attach.filename}" /></a>
                            <xen:elseif is="{$news.medio}" />
                                <div style="background: url('data/media/{$news.medio.media_id}.jpg') no-repeat;">
                                <a href="{xen:link 'full:media/popout', $news.medio}" class="OverlayTrigger"><img src="js/8wayrun/EWRmedio_play.png" width="160" height="90" /></a>
                            </div>
                            </xen:if>
                        </div>

                        </xen:if>

                        <div class="messageContent baseHtml">
                            <div class="newsText"><h2>{xen:raw $news.messageHtml}</h2></div>
                            <div class="clearFix"></div>
                        </div>

                        <div class="sectionFooter {xen:if '{$option.social}', 'social'}">
                            <xen:if is="{$option.social}">
                                <xen:if hascontent="true">
                                    <div class="sharePage">
                                        <xen:require css="share_page.css" />

                                        <xen:contentcheck>
                                            <xen:if is="{$xenOptions.tweet.enabled}">
                                                <div class="tweet shareControl">
                                                    <a href="http://twitter.com/share" class="twitter-share-button"
                                                        data-count="horizontal"
                                                        data-lang="{xen:helper twitterLang, $visitorLanguage.language_code}"
                                                        data-url="{xen:link canonical:threads, $news}"
                                                        {xen:if {$news.title}, 'data-text="{$news.title}"'}
                                                        {xen:if {$xenOptions.tweet.via}, 'data-via="{$xenOptions.tweet.via}"'}
                                                        {xen:if {$xenOptions.tweet.related}, 'data-related="{$xenOptions.tweet.related}"'}>{xen:phrase tweet}</a>
                                                </div>
                                            </xen:if>
                                            <xen:if is="{$xenOptions.plusone}">
                                                <div class="plusone shareControl">
                                                    <div class="g-plusone" data-size="medium" data-count="true" data-href="{xen:link canonical:threads, $news}" data-lang="{$visitorLanguage.language_code}"></div>
                                                </div>
                                            </xen:if>
                                            <xen:if is="{$xenOptions.facebookLike}">
                                                <div class="facebookLike shareControl">
                                                    <xen:container var="$facebookSdk">1</xen:container>
                                                    <fb:like href="{xen:link canonical:threads, $news}" layout="button_count" action="{$xenOptions.facebookLikeAction}" font="trebuchet ms" colorscheme="@fbColorScheme"></fb:like>
                                                </div>
                                            </xen:if>
                                        </xen:contentcheck>
                                    </div>
                                </xen:if>
                            <xen:else />
                                {xen:phrase discussion_in_x_started_by_y_date_z, 'forum=<a href="{xen:link forums, $news}">{$news.node_title}</a>', 'name=<a href="{xen:link members, $news}" class="username">{$news.username}</a>', 'date=<a href="{xen:link threads, $news}">{xen:datetime $news.post_date, html}</a>'}
                            </xen:if>

                            <div class="continue">
                                <a href="{xen:link threads, $news}" style="background: transparent url('@imagePath/xenforo/icons/redirect.png') no-repeat left bottom; padding-left: 20px;">
                                    {xen:phrase continue_reading}
                                </a>
                            </div>
                        </div>
                    </div>
                </div>
        </div>
    </xen:foreach>

    <xen:if hascontent="true">
        <div class="section sectionMain">
            <xen:contentcheck>
                <xen:if is="{$xenOptions.EWRporta_breakout}">
                    <div style="margin: -5px 0px; {xen:if '{$option.pagenav} && {$option.count} > {$option.limit}', 'float: right;'}">
                        <xen:include template="EWRporta_Footer" />
                    </div>
                </xen:if>
                <xen:if is="{$option.pagenav} && {$option.count} > {$option.limit}">
                    <div style="margin-left: 5px;">
                        <xen:pagenav link="noticias" page="{$page}" perpage="{$option.limit}" total="{$option.count}" />
                    </div>
                </xen:if>
            </xen:contentcheck>
        </div>
    </xen:if>
</div>
En la plantilla EWRporta_Block_RecentNews.css cambiáis todo su contenido por:
Insertar CODE, HTML o PHP:
.lmsRecentNewsFirst
{
    font-family: Arial;
    border: @primaryMedium 0px solid;
    padding: 1px;
    border-radius: 5px;5px;
    box-shadow: 1px rgba(0,0,0,1);
}

.recentNews .subHeading { margin: -10px -10px 10px; }
.recentNews .subHeading a { color: @primaryMedium; font-size: 14px;  font-weight: bold; }
.recentNews .messageUserBlock { float: right; margin-left: 10px; }

.lmsRecentNewsFirst .newsDate { float: right; position: relative; top: -12px; right: -22px; margin: 0px 10px 10px 0px; padding: 0px 10px 5px; width: 35px; font-weight: bold; text-align: center; }
.lmsRecentNewsFirst .newsDate .newsMonth { padding: 10px 0px 5px !important; margin: 0px -10px 5px !important; text-transform: uppercase; background: @primaryLight; }
.lmsRecentNewsFirst .newsDate .newsDay { font-size: 26px; }

.lmsRecentNewsFirst .rightDate .newsDate { top: -10px; right: -11px; }
.lmsRecentNewsFirst .rightDate .newsText { margin-left: 25px; }

.lmsRecentNewsFirst .messageContent { font-size: 13px; background: transparent; }
.lmsRecentNewsFirst .messageContent .postedBy { margin-bottom: 10px; padding-bottom: 5px; border-bottom: 1px dashed @faintTextColor; background: transparent; }
.lmsRecentNewsFirst .messageContent .username { font-weight: bold; }
.lmsRecentNewsFirst .messageContent .posted { background: transparent; padding-left: 20px; }
.lmsRecentNewsFirst .messageContent .comments { float: right; background: transparent; padding-left: 20px; font-weight: bold; }
.lmsRecentNewsFirst .messageContent .clearFix { clear: right; }

.lmsRecentNewsFirst .sectionFooter { margin: 10px -10px -10px; text-align: right; background: transparent; }
.lmsRecentNewsFirst .sectionFooter .continue { font-size: 12px; }
.lmsRecentNewsFirst .sectionFooter .continue a { background: transparent url('@imagePath/xenforo/icons/redirect.png') no-repeat left bottom; padding-left: 20px; }
.lmsRecentNewsFirst .sectionFooter .continue a:hover { text-decoration: none; }
.lmsRecentNewsFirst .sectionFooter.social .continue { padding: 6px; }
.lmsRecentNewsFirst .sectionFooter .shareControl { float: left; margin-top: 4px !important; }
.lmsRecentNewsFirst .sectionFooter .sharePage::after { clear: none; }

.lmsRecentNewsFirst .miniaturaNoticia
{
    border: 0px transparent;

    align: center;
    text-align: center;
    background-color: transparent;
}
.lmsRecentNewsFirst .miniaturaNoticia img
{
    border: 0px transparent;
    background-color: transparent;
    width: 50%;
    height: auto;
}

    .lmsRecentNewsFirst .avatar
    {
        float: left;

        padding: 5px;
        padding-right: -5px;
    }

        .lmsRecentNewsFirst .avatar img
        {
            width: 150px;
            height: 150px;
        }

    .lmsMessageUserBlock
    {

        background: @secondaryMedium url('@imagePath/xenforo/gradients/tab-selected-light.png') repeat-x bottom;
        margin-top: 0px;
        margin-left: 0px;
        border: 1px solid @primaryLight;
        border-radius: 5px;

        position: relative;
    }

        .lmsMessageUserBlock div.avatarHolder
        {

            background-color: @secondaryLighter;
            padding: 5px;
            border-radius: 4px;

        }

            .lmsMessageUserBlock div.avatarHolder a
            {
                display: block;
            }

    .lmsRecentNewsFirst .likedPost
    {
        position: relative;
    }

    .lmsRecentNewsFirst .primaryContent
    {
        background-attachment: scroll;
        background-clip: border-box;
        background-color: transparent;
        background-image: url("/styles/default/xenforo/gradients/category-23px-light.png");
        background-origin: padding-box;
        background-position: 50% 0%;
        background-repeat: repeat-x;
        background-size: auto;
        border-color: 1 px solid @primaryDark;
        border-radius: 2px;
        box-shadow: 0px 0px 3px;
        padding: 10px;
    }

    .lmsRecentNewsFirst .primaryContent .Title
    {
        margin-bottom: 2px;
        padding-left: 140px;
    }

    .lmsRecentNewsFirst .primaryContent .Title a
    {
        font-size: 14pt;
        font-weight:bold;
        font-color: @textCtrlText;
        text-shadow: 0 0 0 transparent, 1px 1px 3px @faintTextColor;

    }

    .lmsRecentNewsFirst .primaryContent:hover
    {
        background-attachment: scroll;
        background-clip: border-box;
        background-color: @secondaryLightest;
        background-image: url("/styles/default/xenforo/gradients/category-23px-light.png");
        background-origin: padding-box;
        background-position: 50% 0%;
        background-repeat: repeat-x;
        background-size: auto;
        border-color: 1 px solid @primaryDark;
        border-radius: 2px;
        box-shadow: 0px 0px 3px;
        padding: 10px;
    }

    .lmsRecentNewsFirst .messageContent:hover
    {
        background-color: transparent;
    }

    .lmsRecentNewsFirst .sectionFooter:hover
    {
        background-color: transparent;
    }

    .lmsRecentNewsFirst h2
    {
        font-size: 11pt;
        padding-left: 135px;
        font-color: @textCtrlText;
        text-shadow: 0 0 0 transparent, 1px 1px 3px @faintTextColor;
        margin-bottom: 2px;

    }
8.png
Listo. Advertir que este formato está diseñado para verse correctamente arriba y abajo del Portal valer una posición izquierda o centrada si no hay módulos centrados o a la izquierda.

Salud2
 

lms

Administrador
Mensajes
7.743
Puntuación de reacciones
2.158
Puntos
2.613
Sitio web
xenfacil.com
País
España
Versión de XenForo
2.1.x
PayPal
Donar dinero a este usuario
Página web
Web
He visto que el módulo funciona con las miniaturas o thumbnails de los adjuntos.
Para poder poner la imagen del adjunto a tamaño completo he tenido que modificar (sobre lo puesto arriba) la plantilla EWRporta_Block_RecentNews, Buscad:
Insertar CODE, HTML o PHP:
                            <xen:elseif is="{$news.attach}" />
                                <a href="{xen:link threads, $news}"><img src="{$news.attach.thumbnailUrl}" alt="{$news.attach.filename}" /></a>
y reemplazáis por
Insertar CODE, HTML o PHP:
                            <xen:elseif is="{$news.attach}" />
                                <xen:comment><a href="{xen:link threads, $news}"><img src="{$news.attach.thumbnailUrl}" alt="{$news.attach.filename}" /></a></xen:comment>
Detrás, debéis modificar el archivo library/EWRporta/RecentNews.php, en la línea 79 (versión 1.4.4):
Insertar CODE, HTML o PHP:
    public function getThumb($post)
    {
        if (preg_match('#\[medio\](\d+)\[/medio\]#i', $post['message'], $matches))
        {
            if ($post['medio'] = $this->getModelFromCache('EWRmedio_Model_Media')->getMediaByID($matches[1]))
            {
                $post['message'] = str_ireplace('[medio]'.$matches[1].'[/medio]', '', $post['message']);
                $post['message'] = str_ireplace('[medio=full]'.$matches[1].'[/medio]', '', $post['message']);
                return $post;
            }
        }

        if (!empty($post['attachments']))
        {
            foreach ($post['attachments'] AS $attach)
            {
                if ($attach['thumbnailUrl'])
                {
                    $post['attach'] = $attach;
                    $post['message'] = str_ireplace('[attach]'.$attach['attachment_id'].'[/attach]', '', $post['message']);
                    $post['message'] = str_ireplace('[attach=full]'.$attach['attachment_id'].'[/attach]', '', $post['message']);
                    return $post;
                }
            }
        }

        if (preg_match('#\[img\](.+?)\[/img\]#i', $post['message'], $matches))
        {
            $post['image'] = $matches[1];
            $post['message'] = str_ireplace('[img]'.$matches[1].'[/img]', '', $post['message']);
            return $post;
        }

        return $post;
    }
y lo cambiáis por
Insertar CODE, HTML o PHP:
    public function getThumb($post)
    {

        if (preg_match('#\[img\](.+?)\[/img\]#i', $post['message'], $matches))
        {
            $post['image'] = $matches[1];
            $post['message'] = str_ireplace('[img]'.$matches[1].'[/img]', '', $post['message']);
            return $post;
        }

        if (preg_match('#\[medio\](\d+)\[/medio\]#i', $post['message'], $matches))
        {
            if ($post['medio'] = $this->getModelFromCache('EWRmedio_Model_Media')->getMediaByID($matches[1]))
            {
                $post['message'] = str_ireplace('[medio]'.$matches[1].'[/medio]', '', $post['message']);
                $post['message'] = str_ireplace('[medio=full]'.$matches[1].'[/medio]', '', $post['message']);
                return $post;
            }
        }

        if (!empty($post['attachments']))
        {
            foreach ($post['attachments'] AS $attach)
            {
                    $post['message'] = str_ireplace('[attach]'.$attach['attachment_id'].'[/attach]', '', $post['message']);
                    $post['message'] = str_ireplace('[attach=full]'.$attach['attachment_id'].'[/attach]', '', $post['message']);
                    $post['message'] = '[attach=full]'.$attach['attachment_id'].'[/attach]' . $post['message'];
                    return $post;
            }
        }

        return $post;
    }
Así logramos que aparezca el adjunto a tamaño completo.

Salud2
 
Arriba