Helpdesk da PluGzOne, baseado no osTicket
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

138 lines
2.4 KiB

<?php
define('TABLE_PREFIX', '%');
Bootstrap::defineTables(TABLE_PREFIX);
function db_connect($source) {
global $__db;
$__db = $source;
}
function db_input($what) {
return sprintf("'%8.8s'", md5($what));
}
function db_query($sql) {
global $__db;
return $__db->query($sql);
}
function db_prepare($sql) {
global $__db;
return $__db->prepare($sql);
}
function db_fetch_row($res) {
return $res->fetch_row();
}
function db_fetch_array($res) {
return $res->fetch_array();
}
function db_affected_row() {
global $__db;
return $__db->affected_rows;
}
function db_insert_id() {
global $__db;
return $__db->insert_id;
}
function db_num_rows($res) {
return $res->num_rows();
}
function db_real_escape($val, $quote=false) {
return $quote ? "'$val'" : $val;
}
class MockDbSource {
var $insert_id = 1;
var $affected_rows = 1;
var $data;
function __construct($data=array()) {
$this->data = $data;
}
function query($sql) {
$hash = md5($sql);
if (!isset($this->data[$sql]))
print ($hash.": No data found:\n".$sql."\n");
return new MockDbCursor($this->data[$hash] ?: array());
}
function prepare($sql) {
$cursor = $this->query($sql);
$cursor->param_count = preg_match_all('/ \? /', $sql);
return $cursor;
}
function addRecordset($hash, &$data) {
$this->data[$hash] = $data;
}
}
class MockDbCursor {
var $data;
function __construct($data) {
$this->data = $data;
}
function fetch_fields() {
return array();
}
function fetch_row() {
list($i, $row) = each($this->data);
return $row;
}
function fetch_array() {
list($i, $row) = each($this->data);
return $row;
}
function num_rows() {
return count($this->data);
}
function fetch() {
return $this->fetch_array();
}
function execute() {
return $this;
}
function bind_result() {
return true;
}
function bind_param() {
return true;
}
function store_result() {
return true;
}
function result_metadata() {
return new DbMetaData();
}
function close() {
return true;
}
}
class DbMetaData {
function fetch_fields() {
return array();
}
function free_result() {
}
}