/LANE/connect.php
PHP | 447 lines | 303 code | 87 blank | 57 comment | 85 complexity | c330e97939a6a39b5ef22642da8bfe57 MD5 | raw file
- <?php
- /*******************************************************************************
- Copyright 2001, 2004 Wedge Community Co-op
- This file is part of IS4C.
- IS4C is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
- IS4C is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- in the file license.txt along with IS4C; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *********************************************************************************/
- if (!function_exists("setglobalflags")) include("loadconfig.php");
- if (!function_exists("pinghost")) include("lib.php");
- if (!function_exists("wmdiscount")) include("prehkeys.php");
- /***********************************************************************************************
- Functions transcribed from connect.asp on 07.13.03 by Brandon.
- ***********************************************************************************************/
- function tDataConnect()
- {
- $connection = sql_connect("127.0.0.1", $_SESSION["localUser"], $_SESSION["localPass"]);
- $dbID = sql_select_db($_SESSION["tDatabase"], $connection);
- return $connection;
- }
- function pDataConnect()
- {
- $connection = sql_connect("127.0.0.1", $_SESSION["localUser"], $_SESSION["localPass"]);
- sql_select_db($_SESSION["pDatabase"], $connection);
- return $connection;
- }
- function mDataConnect()
- {
- $_SESSION["standalone"] = 1;
- if ($_SESSION["remoteDBMS"] == "mssql") {
- if ($connection = mssql_connect($_SESSION["mServer"], $_SESSION["mUser"], $_SESSION["mPass"])) {
- if ($connection) {
- if (mssql_select_db($_SESSION["mDatabase"], $connection)) {
- $_SESSION["standalone"] = 0;
- }
- }
- }
- }
- else {
- if ($connection = mysql_connect($_SESSION["mServer"], $_SESSION["mUser"], $_SESSION["mPass"])) {
- if ($connection) {
- if (mysql_select_db($_SESSION["mDatabase"], $connection)) {
- $_SESSION["standalone"] = 0;
- }
- }
- }
- }
- if ($_SESSION["standalone"] == 0) {
- return $connection;
- }
- else {
- return 0;
- }
- }
- function cDataConnect()
- {
- $connection = mysql_connect($_SESSION["ccServer"], $_SESSION["ccUser"], $_SESSION["ccPass"]);
- mysql_select_db($_SESSION["ccDatabase"], $connection);
- return $connection;
- }
- // ----------getsubtotals()----------
- // getsubtotals() updates the values held in our session variables.
- function getsubtotals() {
- $query = "SELECT * FROM subtotals";
- $connection = tDataConnect();
- $result = sql_query($query, $connection);
- $row = sql_fetch_array($result);
- if (!$row || $row["LastID"] == 0) {
- $_SESSION["LastID"] = 0;
- $_SESSION["runningTotal"] = 0;
- $_SESSION["subtotal"] = 0;
- $_SESSION["taxTotal"] = 0;
- $_SESSION["discounttotal"] = 0;
- $_SESSION["tenderTotal"] = 0;
- $_SESSION["memSpecial"] = 0;
- $_SESSION["staffSpecial"] = 0;
- $_SESSION["percentDiscount"] = 0;
- $_SESSION["transDiscount"] = 0;
- $_SESSION["fsTaxExempt"] = 0;
- $_SESSION["fsEligible"] = 0;
- $_SESSION["ttlflag"] = 0;
- $_SESSION["fntlflag"] = 0;
- $_SESSION["memCouponTTL"] = 0;
- $_SESSION["refundTotal"] = 0;
- $_SESSION["chargeTotal"] = 0;
- $_SESSION["ccTotal"] = 0;
- $_SESSION["memChargeTotal"] = 0;
- $_SESSION["madCoup"] = 0;
- $_SESSION["scTaxTotal"] = 0;
- $_SESSION["scDiscount"] = 0;
- $_SESSION["paymentTotal"] = 0;
- $_SESSION['patronageTotal'] = 0;
- $_SESSION['NBdisc'] = 0;
- $_SESSION['memID'] = 0;
- setglobalflags(0);
- }
- else {
- $_SESSION["LastID"] = (double) $row["LastID"];
- $_SESSION["memberID"] = trim($row["card_no"]);
- $_SESSION["runningTotal"] = (double) $row["runningTotal"];
- $_SESSION["taxTotal"] = (double) $row["taxTotal"];
- $_SESSION["discounttotal"] = (double) $row["discountTTL"];
- // $_SESSION["madCoup"]= (double) $row["madCoupon"];
- $_SESSION["memSpecial"] = (double) $row["memSpecial"];
- $_SESSION["staffSpecial"] = (double) $row["staffSpecial"];
- $_SESSION["tenderTotal"] = (double) $row["tenderTotal"];
- $_SESSION["percentDiscount"] = (double) $row["percentDiscount"];
- $_SESSION["transDiscount"] = (double) $row["transDiscount"];
- $_SESSION["scDiscount"] = (double) $row["scDiscount"];
- $_SESSION["scTaxTotal"] = (double) $row["scTaxTotal"];
- $_SESSION["fsTaxExempt"] = (double) $row["fsTaxExempt"];
- $_SESSION["fsEligible"] = (double) $row["fsEligible"];
- $_SESSION["memCouponTTL"] = -1 * ((double) $row["couponTotal"]) + ((double) $row["memCoupon"]);
- $_SESSION["refundTotal"] = (double) $row["refundTotal"];
- $_SESSION["chargeTotal"] = (double) $row["chargeTotal"];
- $_SESSION["ccTotal"] = (double) $row["ccTotal"];
- $_SESSION["paymentTotal"] = (double) $row["paymentTotal"];
- $_SESSION["memChargeTotal"] = (double) $row["memChargeTotal"];
- $_SESSION["discountableTotal"] = (double) $row["discountableTotal"];
- $_SESSION["patronageTotal"] = (double) $row["discountableTotal"];
- }
- if (isset($_SESSION["memberID"]) && $_SESSION["runningTotal"] > 0) {
- if ($_SESSION["SSI"] != 0 && ($_SESSION["isStaff"] == 3 || $_SESSION["isStaff"] == 6)) wmdiscount();
- }
- if ($_SESSION["sc"] == 1) {
- $_SESSION["taxTotal"] = $_SESSION["scTaxTotal"];
- }
- if ( $_SESSION["TaxExempt"] == 1 ) {
- $_SESSION["taxable"] = 0;
- $_SESSION["taxTotal"] = 0;
- $_SESSION["fsTaxable"] = 0;
- $_SESSION["fsTaxExempt"] = 0;
- }
- $_SESSION["subtotal"] = number_format($_SESSION["runningTotal"] - $_SESSION["transDiscount"], 2);
- $_SESSION["amtdue"] = $_SESSION["runningTotal"] - $_SESSION["transDiscount"] + $_SESSION["taxTotal"];
-
- if ( $_SESSION["fsEligible"] > $_SESSION["subtotal"] ) {
- $_SESSION["fsEligible"] = $_SESSION["subtotal"];
- }
-
- sql_close($connection);
- }
- // ----------gettransno($CashierNo /int)----------
- //
- // Given $CashierNo, gettransno() will look up the number of the most recent transaction.
- function gettransno($CashierNo) {
- $database = $_SESSION["tDatabase"];
- $register_no = $_SESSION["laneno"];
- $query = "SELECT max(trans_no) as maxtransno from localtranstoday where emp_no = '"
- .$CashierNo."' and register_no = '"
- .$register_no."' GROUP by register_no, emp_no";
- $connection = tDataConnect();
- $result = sql_query($query, $connection);
- $row = sql_fetch_array($result);
- if (!$row || !$row["maxtransno"]) {
- $trans_no = 1;
- }
- else {
- $trans_no = $row["maxtransno"] + 1;
- }
- sql_close($connection);
- return $trans_no;
- }
- // ------------------------------------------------------------------
- function testremote() {
- /*
- if ($_SESSION["remoteDBMS"] == "mysql") {
- if (file_exists("/pos/is4c/tmp/mysql.sock")) $intConnected = 1;
- else $intConnected = 0;
- }
- else {
- */
- $intConnected = pinghost($_SESSION["mServer"]);
- // }
- if ($intConnected == 1) {
- uploadtoServer();
- }
- else {
- $_SESSION["standalone"] = 1;
- }
- return ($_SESSION["standalone"] + 1) % 2;
- }
- // ------------------------------------------------------------------
- function testcc() {
- $ccConnected = pinghost($_SESSION["ccServer"]);
- if ($ccConnected == 1) {
- $cn = mysql_connect($_SESSION["ccServer"],'sa');
- //mysql_select_db('is4cc',$cn);
- //$query1 = "SELECT * FROM globalvalues";
- //$result1 = mysql_query($query1);
- if($cn){
- $_SESSION["ccMysql"]=1;
- }else{
- $_SESSION["ccMysql"]=0;
- }
- }else{
- $_SESSION["ccMysql"]=0;
- }
- }
- // ------------------------------------------------------------------
- function uploadtoServer()
- {
- $uploaded = 0;
- if ($_SESSION["DBMS"] == "mssql") {
- $strUploadDTrans = "insert ".trim($_SESSION["mServer"]).".".trim($_SESSION["mDatabase"]).".dbo.dtransactions select * from dtransactions";
- $strUploadAlog = "insert ".trim($_SESSION["mServer"]).".".trim($_SESSION["mDatabase"]).".dbo.alog select * from alog";
- $strUploadsuspended = "insert ".trim($_SESSION["mServer"]).".".trim($_SESSION["mDatabase"]).".dbo.suspended select * from suspended";
- $connect = tDataConnect();
- if ( sql_query($strUploadDTrans, $connect) ) {
- sql_query("truncate table dtransactions", $connect);
- sql_query($strUploadAlog, $connect);
- sql_query("truncate table alog", $connect);
- sql_query($strUploadsuspended, $connect);
- sql_query("truncate table suspended", $connect);
- $uploaded = 1;
- $_SESSION["standalone"] = 0;
- } else {
- $uploaded = 0;
- $_SESSION["standalone"] = 1;
- }
- }
- else {
- $uploaded = uploadtable("dtransactions");
- if ($uploaded == 1) {
- uploadtable("suspended");
- uploadtable("alog");
- $_SESSION["standalone"] = 0;
- } else {
- $uploaded = 0;
- $_SESSION["standalone"] = 1;
- }
- }
-
- return $uploaded;
- }
- function uploadtable($table) {
- $output = "";
- // openlog("is4c_connect", LOG_PID | LOG_PERROR, LOG_LOCAL0);
- if ($_SESSION["localPass"] == "") {
- $localpass = "";
- }
- else {
- $localpass = "-p".$_SESSION["localPass"];
- }
- if ($_SESSION["mPass"] == "") {
- $serverpass = "";
- }
- else {
- $serverpass = "-p".$_SESSION["mPass"];
- }
- $upload = "mysqldump -u ".$_SESSION['localUser']." ".$localpass." -t ".$_SESSION['tDatabase']." ".$table
- ." | mysql -h ".$_SESSION['mServer']." -u ".$_SESSION["mUser"]." ".$serverpass." ".$_SESSION['mDatabase']." 2>&1";
- // echo $upload;
- exec($upload, $aResult);
- $error = 0;
- $output = 0;
- foreach ($aResult as $errormsg) {
- if ($errormsg && strlen($errormsg) > 0) {
- $output = $output."\n".$errormsg;
- $error = 1;
- }
- }
- if ($error == 1) {
- syslog(LOG_WARNING, "uploadtable($table) failed; rc: errormsg: '$output'");
- return 0;
- } else {
- $t_conn = tDataConnect();
- mysql_query("TRUNCATE TABLE ".$table, $t_conn);
- return 1;
- }
- }
- /* acg
- function wmupdate($memID,$hours) {
- exec('mysql -u root -h '.$_SESSION['mServer'].' -e "update is4c_op.custdata set SSI = (SSI - '.$hours.') where id = '.$memID.';"');
- exec('mysqldump -u root -h '.$_SESSION['mServer'].' is4c_op custdata | mysql -u root '.$_SESSION['pDatabase']);
-
- }
- */
- // ------------------------ Data Abstraction ----------------------------
- function sql_connect($server, $user, $pass) {
- if ($_SESSION["DBMS"] == "mssql") {
- $connection = mssql_connect($server, $user, $pass);
- } else {
- $connection = mysql_connect($server, $user, $pass) or die(mysql_error());
- }
- return $connection;
- }
- function sql_select_db($db, $connection) {
- if ($_SESSION["DBMS"] == "mssql") {
- $selectdb = mssql_select_db($db, $connection);
- } else {
- $selectdb = mysql_select_db($db, $connection) or die(mysql_error());
- }
- return $selectdb;
- }
- function sql_query($query, $connection)
- {
- if ($_SESSION["DBMS"] == "mssql") {
- $result = mssql_query($query, $connection);
- } else {
- $result = mysql_query($query, $connection) or die(mysql_error());
- }
- return $result;
- }
- function sql_num_rows($result) {
- if ($_SESSION["DBMS"] == "mssql") {
- $num_rows = mssql_num_rows($result);
- } else {
- $num_rows = mysql_num_rows($result);
- }
- if (!$num_rows) $num_rows = 0;
- return $num_rows;
- }
- function sql_fetch_array($result) {
- if ($_SESSION["DBMS"] == "mssql") {
- $row = mssql_fetch_array($result);
- } else {
- $row = mysql_fetch_array($result);
- }
- return $row;
- }
- function sql_fetch_row($result) {
- if ($_SESSION["DBMS"] == "mssql") {
- $row = mssql_fetch_row($result);
- } else {
- $row = mysql_fetch_row($result);
- }
- return $row;
- }
- function sql_close($connection) {
- if ($_SESSION["DBMS"] == "mssql") {
- $close = mssql_close($connection);
- } else {
- $close = "";
- // $close = mysql_close($connection) or die(mysql_error());
- }
- return $close;
- }
- function sql_error($connection) {
- if ($_SESSION["DBMS"] == "mssql") {
- $error = "";
- } else {
- $error = mysql_error($connection);
- }
- return $error;
- }
- ?>