Jump to content

View new content links, why they doesnt take me to first unread post?


Owdy

Recommended Posts

Is this a bug or feature? If topic is unread, subject is bolded, good. But if i click that subject, it doesnt take me to first unread post, it just takes me to first post in that topick. If i click that star image, it takes me to first unread, good. Why bolded subject doesnt take to first unread?

Subject link url ends to "page__fromsearch__1", star images "/unread/"

Link to comment
Share on other sites

  • Replies 59
  • Created
  • Last Reply

It doesn't work for me either. It's going to first post.




As Charles said above, this was changed in 3.2.0, they no longer take you to the "New content" when clicking on a link on the new content results page, it now takes you to the first post in a thread. You now have to click the little star to go directly to the new content (post).
Link to comment
Share on other sites


We want to keep behavior consistent across all the areas. On topic view it works as you described so it should also work that way on view new content.



Yes, it should take you to first unread in all areas.
Link to comment
Share on other sites

Can you highlight the change needed in the template charles?

This is the Search>asforumTopics template

<tr class='__topic __tid{$data['tid']} <if test="!$data['_icon']['is_read']">unread</if> expandable <if test="$data['approved'] != 1"> moderated</if>' id='trow_{$data['tid']}' data-tid="{$data['tid']}"> <td class='col_f_icon short altrow'> {parse template="generateTopicIcon" group="global_other" params="$data['_icon'], $data['_unreadUrl']"} </td> <td> <if test="hasPrefix:|:!empty($data['tags']['formatted']['prefix'])"> {$data['tags']['formatted']['prefix']} </if> <h4><a href='{parse url="showtopic={$data['tid']}<if test="isNewPostTR:|:$this->request['do']=='new_posts' OR $this->request['do']=='active'">&amp;view=getnewpost<else /><if test="resultIsPostTR:|:$data['pid'] AND $data['pid'] != $data['topic_firstpost']">&amp;view=findpost&amp;p={$data['pid']}</if></if>&amp;hl={$data['cleanSearchTerm']}&amp;fromsearch=1" seotitle="{$data['title_seo']}" template="showtopic" base="public"}' title='{$this->lang->words['view_result']}'>{$data['_shortTitle']}</a></h4> <span class='desc blend_links'> <foreach loop="topicsForumTrail:$data['_forum_trail'] as $i => $f"> <if test="notLastFtAsForum:|:$i+1 == count( $data['_forum_trail'] )"><span class='desc lighter'>in</span> <a href='{parse url="{$f[1]}" template="showforum" seotitle="{$f[2]}" base="public"}'>{$f[0]}</a></if> </foreach>


















Link to comment
Share on other sites

People sometimes want to re-read the last post(s) of a topic or after having read it earlier they come back to the forum and want to post a reply. View new content gives us a quick way of seeing the topics that had activity recently, it's quicker than going though the forum.

The problem with this new behavior is that from the new content page we have no way of going straight to the last post of a topic. If there's no unread posts, the start/circle is disabled and the only link is the topic title.

Suggestion: Change the behavior of the star/circle for it to go to the first unread post if there's any or straight to the last post of the topic if there's no unread ones.

Link to comment
Share on other sites


Can you highlight the change needed in the template charles?



This is the Search>asforumTopics template






<tr class='__topic __tid{$data['tid']} <if test="!$data['_icon']['is_read']">unread</if> expandable <if test="$data['approved'] != 1"> moderated</if>' id='trow_{$data['tid']}' data-tid="{$data['tid']}">

<td class='col_f_icon short altrow'>

{parse template="generateTopicIcon" group="global_other" params="$data['_icon'], $data['_unreadUrl']"}

</td>

<td>

<if test="hasPrefix:|:!empty($data['tags']['formatted']['prefix'])">

{$data['tags']['formatted']['prefix']}

</if>

<h4><a href='{parse url="showtopic={$data['tid']}<if test="isNewPostTR:|:$this->request['do']=='new_posts' OR $this->request['do']=='active'">&amp;view=getnewpost<else /><if test="resultIsPostTR:|:$data['pid'] AND $data['pid'] != $data['topic_firstpost']">&amp;view=findpost&amp;p={$data['pid']}</if></if>&amp;hl={$data['cleanSearchTerm']}&amp;fromsearch=1" seotitle="{$data['title_seo']}" template="showtopic" base="public"}' title='{$this->lang->words['view_result']}'>{$data['_shortTitle']}</a></h4>

<span class='desc blend_links'>

<foreach loop="topicsForumTrail:$data['_forum_trail'] as $i => $f">

<if test="notLastFtAsForum:|:$i+1 == count( $data['_forum_trail'] )"><span class='desc lighter'>in</span> <a href='{parse url="{$f[1]}" template="showforum" seotitle="{$f[2]}" base="public"}'>{$f[0]}</a></if>

</foreach>


I do not have a large enough testing environment.. but from what i'm seeing in initial behavior this should do it



<h4><a href='{parse url="showtopic={$data['tid']}<if test="isNewPostTR:|:$this->request['do']=='new_posts' OR $this->request['do']=='active'">&amp;view=getnewpost<else /><if test="resultIsPostTR:|:$data['pid'] OR $data['pid'] != $data['topic_firstpost']">&amp;view=getlastpost</if></if>&amp;hl={$data['cleanSearchTerm']}&amp;fromsearch=1" seotitle="{$data['title_seo']}" template="showtopic" base="public"}' title='{$this->lang->words['view_result']}'>{$data['_shortTitle']}</a></h4>



Twould be a mod to links themselves.


People sometimes want to re-read the last post(s) of a topic or after having read it earlier they come back to the forum and want to post a reply. View new content gives us a quick way of seeing the topics that had activity recently, it's quicker than going though the forum.



The problem with this new behavior is that from the new content page we have no way of going straight to the last post of a topic. If there's no unread posts, the start/circle is disabled and the only link is the topic title.



Suggestion: Change the behavior of the star/circle for it to go to the first unread post if there's any or straight to the last post of the topic if there's no unread ones.



on top of that, if you read but did not post, there is no image at all... taking a look at that atm.
Link to comment
Share on other sites

Mobile skin?



<a class="title" href='{parse url="showtopic={$data['tid']}<if test="isNewPostTR:|:$this->request['do']=='new_posts' OR $this->request['do']=='active'">&amp;view=getnewpost<else /><if test="resultIsPostTR:|:$data['pid'] OR $data['pid'] != $data['topic_firstpost']">&amp;view=getlastpost</if></if>&amp;hl={$data['cleanSearchTerm']}&amp;fromsearch=1" seotitle="{$data['title_seo']}" template="showtopic" base="public"}' title='{$this->lang->words['view_result']}'>{$data['_shortTitle']}</a>


Link to comment
Share on other sites

dont see how it wouldnt? relevant bit is right here:



<if test="resultIsPostTR:|:$data['pid'] OR $data['pid'] != $data['topic_firstpost']">&amp;view=getlastpost</if>



Default code is as above in r1's post.
All ive done is modified the iftest dealing with the topic having a post not first to an OR, and swapped the link thereof from a "find post" to a get last, if anyone has a more elegant solution, feel free, twas what i could come up with upon seeing r1's post in another topic ;)

Link to comment
Share on other sites

We don't want to go to the last post though.... but to the first unread... hmmmm

After looking at some other pages and the code it seems your change above should work, it doesn't make sense to me though but I'll try it today and see. :)

Link to comment
Share on other sites

Ya that takes it to the last post...

What we want to do is this..

If a topic has a new post, then it takes us to /unread
If a topic is read then it takes us to the first post.

I have tried a few more things and still no dice.

Matt? Brandon? Can you give us a little help please? I'll buy the first one of you a 12 pack that helps! :)

Link to comment
Share on other sites

i believe Ive stumbled into the root of this:



<if test="isNewPostTR:|:$this->request['do']=='new_posts' OR $this->request['do']=='active' OR $this->request['do']=='viewNewContent'">&amp;view=getnewpost<else />


they have limited the "getnewpost(or unread)" quite effectively by the request, and ONLY the request, not wether its been read or not:



<if test="isNewPostTR:|:$this->request['do']=='new_posts' OR $this->request['do']=='active' ">&amp;view=getnewpost<else />


Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.

×
×
  • Create New...