This commit is contained in:
2017-06-24 00:58:56 +03:00
commit 315d1fded7
2331 changed files with 296580 additions and 0 deletions
.gitignore.htaccessREADME.md
admin
.htaccessadmin.favicon.icoadmin.phpblocks.phpbrowser.phpdbsettings.phpdocs.phpfields.phpfinder.php
functions
groups.phpindex.phpinit.php
lang
logs.phpmodules.phpnavigation.phprequest.phprubs.phpsettings.phpstart.phpsysblocks.phptemplates.php
templates
blocks
browser
css
dbactions
documents
error.tpl
finder
fonts
groups
images
IconHome.gifNavBg.pngaccordion_off.pngaccordion_on.pngadd.pngalertOpacityOverlay.pngarrow.gif
backgrounds
blanc.gifchevron.gifchosen-sprite.pngchosen-sprite@2x.pngclippy.svgdarkBg.jpgdarkBg.png
fancybox
file.giffolder.giffolder_up.gif
forms
icons
jquery_ui
leftNavBg.pngleftNavSub.pngleft_menu_show.pnglevel.pngloader2.gifloader3.gifloading.gifloginLogo.pnglogosmall.png
mediapool
middlebg.pngnav_level_2.gifnav_level_3.gifnumberTop.pngref.pngsearchSmall.pngsprites.gifsprites_doc.pngtable_level.pngtabsSep.pngtipsy.giftitleBg.pngtopNav.jpgui.totop.png
ui
upload.png
uploader
user.pnguserPic.pngwidgetBg.png
js
login.tpllogin_scripts.tpl
logs
main.tpl
modules
navi
navigation
noperm.tplonlycontent.tplpop.tpl
request
rubs
scripts.tpl
settings
start.tpl
sysblocks
templates
user
user.php
backup
cache
class
fields
.htaccess
checkbox
code
date
doc_from_rub
doc_from_rub_check
doc_from_rub_search
download
drop_down
drop_down_key
flash
image_mega
image_multi
image_multi_new_3inputs
image_single
link
multi_checkbox
multi_line
multi_line_simple
multi_line_slim
multi_list
multi_list_single
multi_list_triple
multi_select
single_line
single_line_numeric
teasers
text_to_image
youtube
functions
inc
index.php
install
lib
Smarty
.htaccessConfig_File.class.phpSmarty.class.phpSmarty_Compiler.class.phpdebug.tpl
internals
plugins
StripTagsSmart
SwiftMailer
classes
Swift.php
Swift
Attachment.php
ByteStream
CharacterReader.php
CharacterReader
CharacterReaderFactory.php
CharacterReaderFactory
CharacterStream.php
CharacterStream
ConfigurableSpool.phpDependencyContainer.phpDependencyException.phpEmbeddedFile.phpEncoder.php
Encoder
Encoding.php
Events
FailoverTransport.phpFileSpool.phpFileStream.phpFilterable.phpImage.phpInputByteStream.phpIoException.phpKeyCache.php
KeyCache
LoadBalancedTransport.phpMailTransport.phpMailer.php
Mailer
MemorySpool.phpMessage.php
Mime
MimePart.phpNullTransport.phpOutputByteStream.php
Plugins
Preferences.phpReplacementFilterFactory.phpRfcComplianceException.phpSendmailTransport.phpSignedMessage.phpSigner.php
Signers
SmtpTransport.phpSpool.phpSpoolTransport.phpStreamFilter.php
StreamFilters
SwiftException.phpTransport.php
Transport
TransportException.phpValidate.php
dependency_maps
mime_types.phppreferences.phpswift_init.phpswift_required.phpswift_required_pear.phpswiftmailer_generate_mimes_config.phpversion.txt
bootstrap
combine
flags
ad.pngae.pngaf.pngag.pngai.pngal.pngam.pngan.pngao.pngar.pngas.pngat.pngau.pngaw.pngax.pngaz.pngba.pngbb.pngbd.pngbe.pngbf.pngbg.pngbh.pngbi.pngbj.pngbm.pngbn.pngbo.pngbr.pngbs.pngbt.pngbv.pngbw.pngby.pngbz.pngca.pngcatalonia.pngcc.pngcd.pngcf.pngcg.pngch.pngci.pngck.pngcl.pngcm.pngcn.pngco.pngcr.pngcs.pngcu.pngcv.pngcx.pngcy.pngcz.pngde.pngdj.pngdk.pngdm.pngdo.pngdz.pngec.pngee.pngeg.pngeh.pngen.pngengland.pnger.pnges.pnget.pngeu.pngfam.pngfi.pngfj.pngfk.pngfm.pngfo.pngfr.pngga.pnggb.pnggd.pngge.pnggf.pnggh.pnggi.pnggl.pnggm.pnggn.pnggp.pnggq.pnggr.pnggs.pnggt.pnggu.pnggw.pnggy.pnghk.pnghm.pnghn.pnghr.pnght.pnghu.pngid.pngie.pngil.pngin.pngio.pngiq.pngir.pngis.pngit.pngjm.pngjo.pngjp.pngke.pngkg.pngkh.pngki.pngkm.pngkn.pngkp.pngkr.pngkw.pngky.pngkz.pngla.pnglb.pnglc.pngli.pnglk.pnglr.pngls.pnglt.pnglu.pnglv.pngly.pngma.pngmc.pngmd.pngme.pngmg.pngmh.pngmk.pngml.pngmm.pngmn.pngmo.pngmp.pngmq.pngmr.pngms.pngmt.pngmu.pngmv.pngmw.pngmx.pngmy.pngmz.pngna.pngnc.pngne.pngnf.pngng.pngni.pngnl.pngno.pngnp.pngnr.pngnu.pngnz.pngom.pngpa.pngpe.pngpf.pngpg.pngph.pngpk.pngpl.pngpm.pngpn.pngpr.pngps.pngpt.pngpw.pngpy.pngqa.pngre.pngro.pngrs.pngru.pngrw.pngsa.pngsb.pngsc.pngscotland.pngsd.pngse.pngsg.pngsh.pngsi.pngsj.pngsk.pngsl.pngsm.pngsn.pngso.pngsp.pngsr.pngst.pngsv.pngsy.pngsz.pngtc.pngtd.pngtf.pngtg.pngth.pngtj.pngtk.pngtl.pngtm.pngtn.pngto.pngtr.pngtt.pngtv.pngtw.pngtz.pngua.pngug.pngum.pnguy.pnguz.pngva.pngvc.pngve.pngvg.pngvi.pngvn.pngvu.pngwales.pngwf.pngws.pngye.pngyt.pngza.pngzm.pngzw.png
kcaptcha
mobile_detect
redactor
ckeditor
.htaccess
adapters
block.jsckeditor.jsconfig.default.jsconfig.jscontents.css
lang
plugins
a11yhelp
about
clipboard
dialogs
codemirror
css
icons
js
lang
plugin.js
theme
colordialog
copyformatting
dialog
div
dialogs
find
dialogs
flash
forms
icons.pngicons_hidpi.png
iframe
image
dialogs
images
link
liststyle
magicline
pagebreak
pastefromword
placeholder
preview
savedocs
scayt
showblocks
smiley
specialchar
table
dialogs
tabletools
templates
wsc
skins
styles.jssysblock.js
codemirror
addon
codemirror_connect.tplcodemirror_editor.tplconfig.jsconfig_css.jsfunctions.jsindex.php
lib
mode
theme
elfinder
css
img
inc
js
sounds
elrte
scripts
translate
license.txt
modules
robots.txt
session
templates
uploads

161
class/class.session.php Normal file

@ -0,0 +1,161 @@
<?php
/**
* AVE.cms
*
* @package AVE.cms
* @version 3.x
* @filesource
* @copyright © 2007-2014 AVE.cms, http://www.ave-cms.ru
*
* @license GPL v.2
*/
class AVE_Session_DB
{
public $sess_lifetime;
/**
* Хост
*
* @var string
*/
protected $db_host;
/**
* Имя пользователя
*
* @var string
*/
protected $db_user;
/**
* Пароль
*
* @var string
*/
protected $db_pass;
/**
* Имя текущей БД.
*
* @var string
*/
protected $db_dbase;
/**
* Префикс БД.
*
* @var string
*/
protected $db_prefix;
private $mysql_connect = null;
private $mysql_db = null;
/* Create a connection to a database */
function __construct()
{
// Подключаем конфигурационный файл с параметрами подключения
require (BASE_DIR . '/inc/db.config.php');
$this->db_host = $config['dbhost'];
$this->db_user = $config['dbuser'];
$this->db_pass = $config['dbpass'];
$this->db_dbase = $config['dbname'];
$this->db_prefix = $config['dbpref'];
$this->sess_lifetime = (defined('SESSION_LIFETIME') && is_numeric(SESSION_LIFETIME))
? SESSION_LIFETIME
: (get_cfg_var("session.gc_maxlifetime") < 1440
? 1440
: get_cfg_var("session.gc_maxlifetime"));
if (! $this->mysql_connect = mysqli_connect ($this->db_host, $this->db_user, $this->db_pass))
{
$this->error();
}
if (! $this->mysql_db = mysqli_select_db ($this->mysql_connect, $this->db_dbase))
{
$this->error();
}
$this->mysql_connect->set_charset('utf8');
return true;
}
/* Open session */
function _open($path, $name)
{
return true;
}
/* Close session */
function _close()
{
@mysqli_query($this->mysql_connect, "DELETE FROM " . PREFIX . "_sessions WHERE expiry < '" . time() . "'");
if ($this->mysql_connect !== null)
@mysqli_close($this->mysql_connect);
return true;
}
/* Read session */
function _read($ses_id)
{
$qid = @mysqli_query($this->mysql_connect, "SELECT value, Ip FROM " . PREFIX . "_sessions WHERE sesskey = '" . $ses_id . "' AND expiry > '" . time() . "'");
if ((list($value, $ip) = @mysqli_fetch_row($qid)) && $ip == $_SERVER['REMOTE_ADDR'])
{
return $value;
}
return '';
}
/* Write new data */
function _write($ses_id, $data)
{
if (! $qid = @mysqli_query($this->mysql_connect, "INSERT INTO ".PREFIX."_sessions VALUES ('".$ses_id."', ".(time()+$this->sess_lifetime).", '".addslashes($data)."', '".$_SERVER['REMOTE_ADDR']."', FROM_UNIXTIME(expiry, '%d.%m.%Y, %H:%i:%s'))"))
{
$qid = @mysqli_query($this->mysql_connect, "UPDATE ".PREFIX."_sessions SET expiry = ".(time()+$this->sess_lifetime).", expire_datum = FROM_UNIXTIME(expiry,'%d.%m.%Y, %H:%i:%s'), value = '".addslashes($data)."', Ip = '".$_SERVER['REMOTE_ADDR']."' WHERE sesskey = '".$ses_id."' AND expiry > '".time()."'");
}
return $qid;
}
/* Destroy session */
function _destroy($ses_id)
{
return @mysqli_query($this->mysql_connect, "DELETE FROM ".PREFIX."_sessions WHERE sesskey = '".$ses_id."'");
}
/* Garbage collection, deletes old sessions */
function _gc($maxlifetime)
{
$session_res = @mysqli_query($this->mysql_connect, "DELETE FROM ".PREFIX."_sessions WHERE expiry < UNIX_TIMESTAMP(NOW() - '" . $maxlifetime . "')");
if (!$session_res) {
return false;
}
else
{
return true;
}
}
function error() {
ob_start();
header('HTTP/1.1 503 Service Temporarily Unavailable');
header('Status: 503 Service Temporarily Unavailable');
header('Retry-After: 3600');
header('X-Powered-By:');
display_notice("Error connect to MySQL.");
die;
}
}
?>