mirror of
https://github.com/YunoHost-Apps/limesurvey_ynh.git
synced 2024-09-03 19:36:32 +02:00
79 lines
1.9 KiB
PHP
79 lines
1.9 KiB
PHP
|
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
||
|
/*
|
||
|
* LimeSurvey
|
||
|
* Copyright (C) 2013 The LimeSurvey Project Team / Carsten Schmitz
|
||
|
* All rights reserved.
|
||
|
* License: GNU/GPL License v2 or later, see LICENSE.php
|
||
|
* LimeSurvey is free software. This version may have been modified pursuant
|
||
|
* to the GNU General Public License, and as distributed it includes or
|
||
|
* is derivative of works licensed under the GNU General Public License or
|
||
|
* other free or open source software licenses.
|
||
|
* See COPYRIGHT.php for copyright notices and details.
|
||
|
*
|
||
|
* Files Purpose: lots of common functions
|
||
|
*/
|
||
|
|
||
|
class Session extends CActiveRecord
|
||
|
{
|
||
|
/**
|
||
|
* Returns the static model of Session table
|
||
|
*
|
||
|
* @static
|
||
|
* @access public
|
||
|
* @param string $class
|
||
|
* @return CActiveRecord
|
||
|
*/
|
||
|
public static function model($class = __CLASS__)
|
||
|
{
|
||
|
return parent::model($class);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Returns the setting's table name to be used by the model
|
||
|
*
|
||
|
* @access public
|
||
|
* @return string
|
||
|
*/
|
||
|
public function tableName()
|
||
|
{
|
||
|
return '{{sessions}}';
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Returns the primary key of this table
|
||
|
*
|
||
|
* @access public
|
||
|
* @return string
|
||
|
*/
|
||
|
public function primaryKey()
|
||
|
{
|
||
|
return 'id';
|
||
|
}
|
||
|
|
||
|
public function afterFind()
|
||
|
{
|
||
|
// MSSQL delivers hex data
|
||
|
$sDatabasetype = Yii::app()->db->getDriverName();
|
||
|
if($sDatabasetype=='sqlsrv' || $sDatabasetype=='mssql' || $sDatabasetype=='dblib')
|
||
|
{
|
||
|
$this->data=$this->hexToStr($this->data);
|
||
|
}
|
||
|
// Postgres delivers a stream pointer
|
||
|
if (gettype($this->data)=='resource')
|
||
|
{
|
||
|
$this->data=stream_get_contents($this->data,-1,0);
|
||
|
}
|
||
|
return parent::afterFind();
|
||
|
}
|
||
|
|
||
|
private function hexToStr($hex){
|
||
|
$string='';
|
||
|
for ($i=0; $i < strlen($hex)-1; $i+=2){
|
||
|
$string .= chr(hexdec($hex[$i].$hex[$i+1]));
|
||
|
}
|
||
|
return $string;
|
||
|
}
|
||
|
|
||
|
}
|
||
|
?>
|