I've noticed a couple of forums that I recently visited had a feature that I thought was pretty cool.
If I had read or posted in a topic the next time I visited the topic I was directed to the spot on the page with the newer posts instead of to the top of the page. This saves a lot of scrolling down to find the new stuff, especially at 99 posts per page like I typically use.
The basic idea being that if you had previously read or posted in a topic that you would want to automatically end up at the newer posts when you click on a topic instead of at the beginning of the thread or the top of a page.
It would be fairly easy to add this to our forum. Is this something that people would find helpful?
Very. I've never seen that anywhere, but I had actually considered asking for just this feature, but figured it'd be a bitch to implement.
On a related issue: in some threads just about to get another page, the number of pages (I mean the links) listed above the posts is incorrect and one count higher than the number below the posts.
It would have been a bitch a while back but I recently made a significant change that reorganizes a thread's view based on a user's posts-per-page setting. It's trivial to expand this to automatically direct a visitor to a specific post on a page.
The one concern that I have over this type of "feature" is that it might be very confusing for some people. Specifically if they click on the 'mark all topics read' link and subsequently go to a thread that they never actually had previously read.
I like the idea, but also understand the possible confusion. Pretty sure it's more complex than this, but is it something that could be turned on and off for users in their profile?????
"Vegetarianism for me is about saying ‘yes’ to things - even meat." - Coupling
Its okay, not really a necessity. I usually open to the last page and if needed go back to where I had last read. Some forums also have a preview function, where if you hold the mouse arrow on the link for a thread, it gives a 50 word view in a box of the originating post. Semi-useful.
I've looked at stuff like that but I don't like it from a programming perspective. It really bloats the HTML code in the page. Most of those kinds of things are done with dynamic HTML/ which implies that the 50 words per post are sent over the wire. Wasteful for a forum that sees lots of traffic. I could do it with Ajax but that's slow for dialup users and people unlucky enough to be on a satellite.
I added the jump-to-last-read post functionality today. it only kicks in for threads that a user actually visited. It doesn't apply to threads that get marked as read by using the 'mark topics read' links.
The forum code only keeps track of which threads were read by a member for 10 days. After 10 days those records are automatically deleted. So if you haven't visited a topic in 10 days you might not get directed to the next newest post since the last time the topic was read.
Long and Cursive road to the Ivory Pagoda in the province of Loraine 4076 Posts 12/03
Posted - Feb 13 2007 : 3:57PM
Something I just noticed.
When you click on active topics, and it takes you to a page on that topic, it won't let you go to a different page in that topic. I was reading the Sasha Grey thread and wanted to go back a page, but it wouldn't let me.
When you click on a different page number, it just takes you back to the last post.
I'm not sure if this is related to the 'go to the first post you haven't read in the thread' feature or not, because this has happened to me before that feature got implemented, but if the last post I read was at the bottom of page one then the next time I hit that thread I get a blank 'page 2.'
It must be inaccurately determining post position for paging. I'll try to look into it tomorrow if I can. We've got 30 inches of snow on the way and I'll be off playing. (I doubt the satellite is going to work for most of tomorrow and the next day.)
Everything is better on a stick. But it is good to get some exercise and air too.
[Link]
john thomas Deactivated User
1168 Posts 6/06
Posted - Feb 14 2007 : 6:21PM
I'm finding that when I get to a thread I have to scroll up a little to remind myself what point the conversation had reached. Maybe the feature could be tweaked a bit so we're redirected to the last post in the thread that we did read rather than to the first of the new posts?
It was the strangest problem that I've ever encountered in debugging. The html header of the topic pages (and many other pages on the site) have http-equiv content-type/charset tags. This tag was causing Firefox to launch two requests to the server. The first one was recording the "read" of the topic and the second one would think you just read the topic within the last second and would redirect you to the latest post.
I need to go strip those tags from everywhere on the site. IF every page request is actually two hitting the server that's a whole bunch of extra headroom we should have.
I remember reading that before. I'm not positive, but I vaguely recall that IE might also restart the parsing of an XHTML page from scratch, when it encounters the charset tag. Or perhaps that was Firefox too.
Anyhu, instead of having a charset in the XHTML output, I put in the following line of code in my PHP files before anything else was written:
header('Content-type: text/html; charset=iso-8859-1'); [/code] Does ASP have something similar?
BTW, didn't you mention planning to rewrite the site to XHTML + CSS in an effort to slim down the pages a little?
Asp has response.addheader "name","value". I could do that.
Yes, we do want to rewrite the forum and most of the site to be more dependent on CSS but for the moment I'm working on new features and someday we'll get to the other stuff, most likely as part of a complete redesign of the site.
[Link]
nietzsche Deactivated User
5470 Posts 8/03
Posted - Feb 15 2007 : 11:47PM
Is there a reason you use ASP over Apache Linux, Mysql?
We started with ASP and MSSQL back when we launched the site. I started developing with it well before then. So it's what I knew at the time. PHP and MySQL were not as good of a solution as ASP and MSSQL back then.
Things are different now. If we were starting today I would definitely go the PHP route but still not sure about MySQL. I do all of the database access code in stored procedures. As of 6 months ago MySQL's support of stored procedures was still not that great. I'd most likely go with PHP/MSSQL.
If you get to feeling squirrelly and want to mess around with some, this is the hat I'm throwing my lot in with: CodeIgniter
I'll probably be spending a lot more time on their forum than here. I've been putting off some of this development work far too long and people are getting antsy.
Anyway:
You'd probably want to use ADODB for your dal (but you don't have to) with SQL Server: ADODB
As for MySQL, I too have some reservations about it, but one place I use it doesn't need stored procs or triggers and I hand coded all the referential integrity in the source (don't judge me). Other places I've used it to replace things that were running in drag-n-drop Access database apps (ugh). Works great! If you don't need the features.
For mission-critical production databases, though, ain't no way I'd use anything other than Oracle, DB2, MSSQL, or .. hell, that's about it. Maybe Postgres is there yet. I tried it 6-7 years ago and it threw poo at me. Once bitten twice shy.
As for the feature you asked about, in general I'd say "is it something I can turn on/off if I figure out I want/need it", then sure, otherwise, don't fuck with me, man.
I like adt. I'm used to it. I'm not as young as I used to be and change fucks me up. Be gentle.
If you're not interested in looking into PHP frameworks, I understand. If you are, the other one I'd recommend considering if I were you, as a friend whose already spent many many hours researching this, it would be Cake: CakePHP
I've used ADOdb in the past. I had a client that had a legacy ASP website that was transitioning to PHP and needed to share session data between the PHP and ASP portions of the site. Using ADOdb and MSSQL I was able to write an ASP class and a corresponding PHP object that made the session handling pretty much transparent to the existing code. Just a little global searching and replacing on strings with response/request.cookies. (I used portions of the code I wrote for them here on ADT to transition to encrypted cookies. Next step is to drop the use of the ASP session object altogether. yeah, maybe someday.)