if (!session.user && (req.data.submit == "save" || req.data.save)) rescueText(req.data); checkIfLoggedIn(this.href(req.action)); if (session.data.rescuedText) restoreRescuedText(); var deny = this.isEditDenied(session.user); if (deny) { res.message = getMessage("error",deny); res.redirect(this.site.href()); } // storing referrer in session-cache in case user clicks cancel later if (!session.data.referrer && req.data.http_referer) session.data.referrer = req.data.http_referer; if (req.data.set) { this.toggleOnline(req.data.set); if (req.data.http_referer) res.redirect(req.data.http_referer); res.redirect(this.site.stories.href()); } else if (req.data.submit == "cancel" || req.data.cancel) { if (!this.online) var url = this.site.stories.href(); else var url = session.data.referrer ? session.data.referrer : this.site.stories.href(); session.data.referrer = null; res.redirect(url); } else if (req.data.submit == "save" || req.data.save) { var result = this.evalStory(req.data,session.user); res.message = result.message; if (!result.error) { session.data.referrer = null; res.redirect(result.url); } } res.data.action = this.href(req.action); res.data.title = this.site.title; if (this.title) res.data.title += " - " + encode(this.title); res.data.body = this.renderSkinAsString("edit"); path.site.renderSkin("page");