Furious at timeout - lost my work

Morgain

Well-known member
I have written before about how the timeout is awkward and unfriendly.
Today it chewed up a whole lot of detailed work took me a lot of careful thought to write. Totally lost.

I was answering a (forum) post from a developer on my own board. I wrote out a careful decription of all the details we'd been discussing today to keep our records clear.
Clicked to send - timeout.

I exited the timeout message and CTRL+A and CTRL+C on my post.
Wearily (Because I do get sick of this) clicked to log out/ clicked to log in/ logged in.
Went to that thread again, oh joy, and tried to Paste.
Gobbledegook - no not rubbish. Just it had copied everyuthing on the page EXCEPT my new text.

So I lost all my careful work which had not just been written out, but rearranged several times over to get it clear.
WHY can't timeout flash uip a warning a minute or two in advance so I have time to Save or Copy what I'm doing?
WHY can't timeout OFFER a link to transfer me straight to the login page with a courtesy explanation that I need to login again?

This is the only bit that I actually HATE about XF.
 
# If you timeout there is NO WARNING this is about to happen.
# If you timeout and return to the pc you are not shown you have timed out. The page looks normal exactly as if logged in.This is dishonest presentation!
# You can continue to enter content because you don't know. On a lot of sites if you try to type in a textarea and you've timed out, you can't type and it flags up why.
# If you timeout on XF all you get is a nasty red black warning saying you can't do that. No offer where to go next. When you exit the popup the page STILL displays you as logged in!
# So to get back you have to exit the popup - you have to log out - even though you are logged out - and even then you don't get presented with the login page. You have to click Login. Finally you can log in but your position is not saved, you have to navigate to where you were before.

This is all XF design. Totally unlike the rest of XF. Unfriendly obstructive unhelpful.
 
Well, I can say that your copy and paste is not anything XenForo can help with. That is your operating system, and perhaps your browser (or whatever program you are in when you are exexuting that function). Ctrl + A only works to select text if your textarea or input box is focused, otherwise yes it will try to select the entire page.

To be safe, I often tell my clients that blog to work out of a basic text editor such as wordpad, notepad, or even MS Word if you understand the differences between web-safe characters or know how to disable unsafe characters (such as fancy quotes). That way, you can always save the file and work out of there.

If what you are typing isn't very lengthy, and you think there are going to be problems, just make sure by highlighting all the text (triple click or focus + (ctrl + A)) and pressing ctrl + v 1-3 times to make sure it is saved in the clipboard.
 
Which browser was this ?

I get this problem as well.

I've learned to avoid this by:
#1) copy and paste the post to Notepad, before doing anything.
#2) clicking the back button is safer in many situations.
#3) actually logging in after the message seems to destroy the unposted post information.

The interesting thing is that when someone takes a long time to make a great post ... works really hard ... that seems when forums seem to perform the worst ! Forums perform really well with the "two word" replies though ;).
 
Well, I can say that your copy and paste is not anything XenForo can help with. That is your operating system, and perhaps your browser (or whatever program you are in when you are exexuting that function). Ctrl + A only works to select text if your textarea or input box is focused, otherwise yes it will try to select the entire page.
That is a key point.
 
Thank you both of you and a couyple ofr your points are new to me so especially welcome.

But my main point is that the design is poor here.
I mean yes I can anxiously prepare my text in another program and paste it. Or keep an eye on the clkock. Or other workarounds.
But none of these are RELAXED. They don't add up to XF looking after me and making it easy. Which XF DOES do everywhere else.

Here not only do I get kicked out but I get no help at all to get back, and in fact the return route is counter intuitive and obstructive.
Add to that the safety requirement to "back up" my posts if more than a fluffy few words and it adds up to an anxiety experience not a relaxation experience.

Definitely room for an addon here but better still better core design.
I :love: XF - this is my only big gripe.
 
I think it's a valid complaint and one I have raised in other software.

Trashing your response because of a Timeout is undesirable, and because of browser design, it's 50-50 whether the browser is gonna eat it when you hit Back. The information was POSTed and exists somewhere, why trash it?

At the very least, the content of the submitted post could appear in a textarea on the Timeout/Error page with an offer to save it somewhere, or let you grab it and save it somewhere.
 
Feldon thank you for kind and practical words.
I've simmered down a bit now but it was a pretty nasty experience yesterday. Working 12 hour days and more I do not need to lose work and be forced to duplicate.
Nor do I like the idea that I can't RELY on XF - if I've got to use another software to keep a draft safe then XF is not reliable.

I don't think of XF as just somewhere to have fun and chat. I see it also as a vital human line of communication which can apply to mutual support networks, or businesses where livelihood is at stake. Efficiency on both human personal need and financial transactions is essential. XF is not only a toy, but even where it is, I think it should be a good one. It almost entirely is, except this bad glitch.,
 
I feel your pain Morgain! hey - that rhymes! ahem. Anyway, I've had similar issues before with vB, which is why on my own forum I hide the 'keep me logged in' box and force it on when people login. This solves it most of the time.

However, with your situation, I suspect you thought you'd selected the textbox and pressed Ctrl+A when infact you'd selected the entire page - easily done when you're tired. Been there, got the t-shirt.

I agree with Feldon though, there should really be no need to nuke the post data. XF could either add the ability to save draft posts, so it could then automatically save a draft every 5 minutes or something. More directly with this instance, it should detect the session has expired, save the post to the db, redirect you to the login page, then when you've logged in, it checks to see if there is anything in the post data store, if so redirects to the thread & pre-populates the reply box with the contents.
 
I'm still not sure how the timeout occurred.

It would require logging in without checking "Stay logged in" and not have the XenForo page tab focussed for more than an hour.
 
With sessions being based in the APC cache, they could be 'logged out' if the apache process was ever restarted - one reason I won't be using that method.

Not saying that's the case here, but its a scenario where users could get logged out automatically.

I can't recall if the session db in XF is memory or not, if it is, then the same could happen if mySQL was restarted - that said, I haven't had to restart mySQL in the past 5 years....
 
I can't recall if the session db in XF is memory or not, if it is, then the same could happen if mySQL was restarted - that said, I haven't had to restart mySQL in the past 5 years....

It is not. Only the xf_session_activity is in memory.

Code:
CREATE TABLE xf_session (
session_id VARBINARY(32) NOT NULL,
session_data MEDIUMBLOB NOT NULL,
expiry_date INT UNSIGNED NOT NULL,
PRIMARY KEY (session_id),
KEY expiry_date (expiry_date)
) ENGINE = MyISAM CHARACTER SET utf8 COLLATE utf8_general_ci
 
CREATE TABLE xf_session_activity (
user_id INT UNSIGNED NOT NULL,
unique_key INT UNSIGNED NOT NULL,
ip INT UNSIGNED NOT NULL DEFAULT 0,
controller_name VARBINARY(50) NOT NULL,
controller_action VARBINARY(50) NOT NULL,
view_state ENUM('valid','error') NOT NULL,
params VARBINARY(100) NOT NULL,
view_date INT UNSIGNED NOT NULL,
PRIMARY KEY (user_id, unique_key),
KEY view_date (view_date)
) ENGINE = MEMORY CHARACTER SET utf8 COLLATE utf8_general_ci
 
Top Bottom