Sessions

eFiction session system was fully rewritten with the e107 session system.

Available sessions in efiction:

Session

Note

SITEKEY."_agecontsent"

Age Consent

SITEKEY."_skin"

Selected Skin (deprecated)

SITEKEY."_viewed"

? Stories IDs with viewed chapter (for counting correct views)

SITEKEY."warned_{$rid}"

User was warned for each rating with warning

SITEKEY."_digit"

? Used for numeric captcha (deprecated)

$_SESSION[$sitekey."_salt"], $_SESSION[$sitekey."_useruid"], $_COOKIE[$sitekey."_useruid"], $_COOKIE[$sitekey.'_salt'] related to registration/login system - replaced with e107 functionality

Used e107 functionality:

Method

Note

e107::getSession()->set('session_name', session_value);

Set session value

e107::getSession()->is('session_name',)

Check if session exists

e107::getSession()->get(('session_name',)

Get session value

‌Code examples:

File

header.php

efiction

if(!isset($_SESSION)) session_start();

e107

removed

efiction

$_SESSION[SITEKEY."_skin"] = $siteskin;

e107

e107::getSession()->set(SITEKEY."_skin", $siteskin);

efiction

if(isset($_SESSION[SITEKEY."_viewed"])) $viewed = $_SESSION[SITEKEY."_viewed"];

e107

if(e107::getSession()->is(SITEKEY."_viewed")) $viewed = e107::getSession()->get(SITEKEY."_viewed");

efiction

if(isset($_GET['ageconsent'])) $_SESSION[SITEKEY."_ageconsent"] = 1;

e107

if(isset($_GET['ageconsent'])) e107::getSession()->set(SITEKEY."_ageconsent", 1);

efiction

if(!empty($_SESSION[SITEKEY."_skin"])) $siteskin = $_SESSION[SITEKEY."_skin"];

e107

if (e107::getSession()->is(SITEKEY.'_skin')) $siteskin = e107::getSession()->get(SITEKEY.'_skin');

File:

includes/get_session_vars.php

efiction

if(EMPTY($_SESSION[$sitekey."_agecontsent"])) $ageconsent = $userdata['ageconsent']; else $ageconsent = $_SESSION[$sitekey."_agecontsent"];

e107

if (e107::getSession()->is(SITEKEY.'_ageconsent'))

$ageconsent = e107::getSession()->get(SITEKEY.'_ageconsent');

else $ageconsent = $authordata['ageconsent'];

efiction

if(!isset($_SESSION[$sitekey."_agecontsent"])) $ageconsent = $userdata['ageconsent']; else $ageconsent = $_SESSION[$sitekey."_agecontsent"];

e107

if (e107::getSession()->is(SITEKEY.'_ageconsent'))

$ageconsent = e107::getSession()->get(SITEKEY.'_ageconsent');

else $ageconsent = $authordata['ageconsent'];

efiction

if(!isset($_SESSION[$sitekey."_skin"]) && !empty($userdata['userskin'])) $siteskin = $userdata['userskin']; else if(isset($_SESSION[$sitekey."_skin"])) $siteskin = $_SESSION[$sitekey."_skin"]; else $siteskin = $defaultskin;

e107

if (e107::getSession()->is(SITEKEY.'_skin')) $siteskin= e107::getSession()->get(SITEKEY.'_skin');

elseif(!empty($userdata['userskin']) $siteskin = $userdata['userskin'];

else $siteskin = $defaultskin;

File:

viewstory.php

efiction

empty($_SESSION[SITEKEY."_ageconsent"])

e107

!e107::getSession()->is(SITEKEY."_ageconsent")

efiction

empty($_SESSION[SITEKEY."_warned"][$storyinfo['rid']])

e107

!e107::getSession()->is(SITEKEY."_warned_{$storyinfo['rid']}")

efiction

$_SESSION['viewed'] = $viewed; $_SESSION[SITEKEY."_viewed"] = $viewed;

e107

e107::getSession()->set(SITEKEY."_viewed", $viewed);

Files:

includes/plain.button.php, includes/button.php

efiction

unset($_SESSION[$sitekey.'_digit']);

e107

e107::getSession()->clear(SITEKEY."_digit");

efiction

$_SESSION[$sitekey.'_digit'] = md5($sitekey.$digit);

e107

e107::getSession()->set(SITEKEY."_digit", md5($sitekey.$digit));

Files:

user/editprefs.php

efiction

$_SESSION[$sitekey."_skin"] = $skinnew;

e107

e107::getSession()->set(SITEKEY."_skin", $skinnew);

File:

inlcudes/corefunctions.php

efiction

if(empty($_SESSION[SITEKEY.'_digit'])) return false;

e107

$digit = e107::getSession()->get(SITEKEY."_digit");

efiction

$digit = $_SESSION[SITEKEY.'_digit'];

e107

$digit = e107::getSession()->get(SITEKEY."_digit");

efiction

unset($_SESSION[SITEKEY.'_digit']);

e107

e107::getSession()->clear(SITEKEY."_digit");

efiction

!isset($_SESSION[SITEKEY."_warned"][$rating])

e107

!e107::getSession()->is(SITEKEY . "warned{$rating}")

efiction

empty($_SESSION[SITEKEY.'_ageconsent'])

e107

!e107::getSession()->is(SITEKEY . "_ageconsent")

Sessions in files: user/login.php and user/logout.php

related to registration/login system - replaced with e107 functionality

All changes are in this commit:

Last updated