Пример #1
0
 /**
  * Returns a specific field of the current row.
  *
  * @param string $field
  * @return mixed
  */
 public function fetchResult($field)
 {
     if ($this->currentRowNumber >= $this->numRows()) {
         return false;
     }
     return pg_fetch_result($this->result, $this->currentRowNumber, $field);
 }
function getWeekNumber($mday, $month, $year)
{
    $sql = "SELECT EXTRACT(week FROM DATE '{$year}-{$month}-{$mday}')";
    $rslt = db_exec($sql);
    return pg_fetch_result($rslt, 0, 0);
    //return round(date("z", mktime(0,0,0,$month,$mday,$year) ) / 7);
}
function display()
{
    extract($_REQUEST);
    $sql = "SELECT * FROM cubit.documents WHERE id='{$id}'";
    $doc_rslt = db_exec($sql) or errDie("Unable to retrieve documents.");
    $doc_data = pg_fetch_array($doc_rslt);
    extract($doc_data);
    if (!empty($doc_type)) {
        $sql = "SELECT type_name FROM cubit.document_types WHERE id='{$doc_type}'";
        $type_rslt = db_exec($sql) or errDie("Unable to retrieve document type.");
        $type_name = pg_fetch_result($type_rslt, 0);
    } else {
        $type_name = "";
    }
    if (!empty($team_id)) {
        $sql = "SELECT team_name FROM cubit.teams WHERE id='{$team_id}'";
        $team_rslt = db_exec($sql) or errDie("Unable to retrieve team.");
        $team_name = pg_fetch_result($team_rslt, 0);
    } else {
        $team_name = "";
    }
    $OUTPUT = "<table " . TMPL_tblDflts . ">\n\t<tr><td valign='top'>\n\t<table " . TMPL_tblDflts . ">\n\t\t<tr>\n\t\t\t<th colspan='2'>Details</th>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Title</td>\n\t\t\t<td>{$title}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Project</td>\n\t\t\t<td>{$project}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Area</td>\n\t\t\t<td>{$area}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Discipline</td>\n\t\t\t<td>{$discipline}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Document Type</td>\n\t\t\t<td>{$type_name}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Revision</td>\n\t\t\t<td>{$revision}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Drawing Number</td>\n\t\t\t<td>{$drawing_num}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Sheet Number</td>\n\t\t\t<td>{$sheet_num}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>File Location</td>\n\t\t\t<td>{$location}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Contract</td>\n\t\t\t<td>{$contract}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Contractor</td>\n\t\t\t<td>{$contractor}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Code</td>\n\t\t\t<td>{$code}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Issue For</td>\n\t\t\t<td>{$issue_for}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Comments</td>\n\t\t\t<td>{$comments}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>QS</td>\n\t\t\t<td>{$qs}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Team Permissions</td>\n\t\t\t<td>{$team_name}</td>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>Status</td>\n\t\t\t<td>{$status}</td>\n\t\t</tr>\n\t</table>\n\t</td><td valign='top'>";
    $sql = "SELECT * FROM document_files WHERE doc_id='{$id}'";
    $df_rslt = db_exec($sql) or errDie("Unable to retrieve files.");
    $file_out = "";
    while ($df_data = pg_fetch_array($df_rslt)) {
        $file_out .= "<tr class='" . bg_class() . "'>\n\t\t\t<td><a href='getfile.php?key=doc&id={$df_data['id']}'>{$df_data['filename']}</a></td>\n\t\t\t<td>" . getFilesize($df_data["size"]) . "</td>\n\t\t</tr>";
    }
    if (empty($file_out)) {
        $file_out = "<tr class='" . bg_class() . "'>\n\t\t\t<td colspan='2'>No files found.</td>\n\t\t</tr>";
    }
    $OUTPUT .= "<table " . TMPL_tblDflts . ">\n\t\t<tr>\n\t\t\t<th colspan='2'>Files</th>\n\t\t</tr>\n\t\t<tr>\n\t\t\t<th>File</th>\n\t\t\t<th>Size</th>\n\t\t</tr>\n\t\t{$file_out}\n\t</table>\n\t</td></tr>\n\t</table>";
    return $OUTPUT;
}
function display()
{
    $sql = "SELECT * FROM cubit.stock ORDER BY stkcod ASC";
    $stock_rslt = db_exec($sql) or errDie("Unable to retrieve stock.");
    $stock_out = "";
    while ($stock_data = pg_fetch_array($stock_rslt)) {
        // Retrieve units on order
        $sql = "SELECT sum(qty) FROM cubit.sorders_items WHERE stkid='{$stock_data['stkid']}'";
        $order_rslt = db_exec($sql) or errDie("Unable to retrieve orders.");
        $order_qty = pg_fetch_result($order_rslt, 0);
        if (empty($stock_data["minlvl"])) {
            continue;
        }
        if (empty($order_qty)) {
            $order_qty = 0;
        }
        $units = $stock_data["units"] - $order_qty;
        $required = abs($units - $stock_data["minlvl"]);
        // We're not required to purchase this item
        if ($units > $stock_data["minlvl"]) {
            continue;
        }
        $stock_out .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>{$stock_data['stkcod']}</td>\n\t\t\t\t<td>{$stock_data['stkdes']}</td>\n\t\t\t\t<td align='center'>" . sprint3($stock_data['units']) . "</td>\n\t\t\t\t<td align='center'>" . sprint3($order_qty) . "</td>\n\t\t\t\t<td align='center'>" . sprint3($stock_data['minlvl']) . "</td>\n\t\t\t\t<td align='center'><b>" . sprint3($required) . "</b></td>\n\t\t\t\t<td><a href='purchase-new.php'>Purchase</a></td>\n\t\t\t</tr>";
    }
    if (empty($stock_out)) {
        $stock_out = "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td colspan='7'>No items required for purchase.</td>\n\t\t\t</tr>";
    }
    $OUTPUT = "\n\t\t<center>\n\t\t<h3>Required Purchases</h3>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<tr>\n\t\t\t\t<th>Stock Code</th>\n\t\t\t\t<th>Stock Description</th>\n\t\t\t\t<th>Current Units</th>\n\t\t\t\t<th>Units on Order</th>\n\t\t\t\t<th>Minimum Level</th>\n\t\t\t\t<th>Minimum Required</th>\n\t\t\t\t<th>Options</th>\n\t\t\t</tr>\n\t\t\t{$stock_out}\n\t\t</table>\n\t\t</center>";
    return $OUTPUT;
}
 function get_db_variables()
 {
     $sql_str = "SELECT " . "var_name, " . "var_value " . "FROM " . "portal_config_variables ";
     $this->dbconn->connect();
     $result = pg_query($this->dbconn->conn, $sql_str);
     if (!$result) {
         echo "An error occurred while executing the query - " . $sql_str . " - " . pg_last_error($this->dbconn->conn);
         $this->dbconn->disconnect();
         return false;
     }
     $n_rows = pg_num_rows($result);
     $vars = array();
     for ($i = 0; $i < $n_rows; $i++) {
         $vars[pg_fetch_result($result, $i, 'var_name')] = pg_fetch_result($result, $i, 'var_value');
     }
     $this->dbconn->disconnect();
     // set member variables from name/value pairs
     $this->upload_path = $vars["upload_path"];
     $this->mapfile_path = $vars["mapfile_path"];
     $this->layer_config_path = $vars["layer_config_path"];
     $this->mapservice_config_path = $vars["mapservice_config_path"];
     $this->mapservice_name = $vars["mapservice_name"];
     $this->map_agent = $vars["map_agent"];
     $this->map_agent_launch_url = $vars["map_agent_launch_url"];
     $this->output_dir = $vars["output_dir"];
     $this->ogr2ogr_path = $vars["ogr2ogr_path"];
     $this->confirmation_email_template = $vars["confirmation_email_template"];
     return true;
 }
Пример #6
0
 function stock_is_blocked($stkid)
 {
     $sql = "SELECT blocked FROM cubit.stock WHERE stkid='{$stkid}'";
     $stock_rslt = db_exec($sql) or errDie("Unable to check if stock is blocked.");
     $blocked = pg_fetch_result($stock_rslt, 0);
     return $blocked;
 }
function budgetTotalFromYear($accid, $budfor)
{
    db_conn("cubit");
    $sql = "SELECT SUM(bi.amt) FROM cubit.buditems bi, cubit.budgets bd\n\t\t\tWHERE bi.budid=bd.budid AND bi.id='{$accid}' AND bd.budfor='{$budfor}'\n\t\t\t\tAND bd.prdtyp='yr' AND bi.prd='" . BUDGET_YEARS_INDEX . "'";
    $rslt = db_exec($sql) or errDie("Error reading monthly budget total.");
    return pg_fetch_result($rslt, 0, 0);
}
Пример #8
0
function getNumOfComm($postId)
{
    $sql = pg_prepare(getDatabaseConnection(), "getNumOfComm", "SELECT count(*) FROM comments_posts WHERE post_id=\$1");
    $result = pg_execute(getDatabaseConnection(), "getNumOfComm", [$postId]) or die('Query failed: ' . pg_last_error());
    $numComm = pg_fetch_result($result, 0, 0);
    return $numComm;
}
Пример #9
0
    private function getObjIds()
    {
        $this->conn = $this->openConnectionTrans();
        if ($this->conn) {
            $sql = <<<SQL
\t\t\t\tSELECT 
\t\t\t\t\tSTRING_AGG((OBJ_ID)::TEXT, ',') AS OBJ_IDS
\t\t\t\tFROM GARAGE.CONTAINERS AS A 
\t\t\t\tINNER JOIN HAULAGE_LIST H on (A.haulage_list_id=H.id)
\t\t\t\tINNER JOIN HAULAGE_NOTICE_CONTAINERS HNC ON (HNC.ID = A.HAULAGE_NOTICE_CONTAINERS_ID)
\t\t\t\tLEFT JOIN ATP.HAULAGE_LIST HL ON (HL.CONTAINERS_NEW_ID = HNC.CONTAINERS_NEW_ID)
\t\t\t\tLEFT JOIN DRIVERS_CARS DC ON (DC.ID = HL.DRIVERS_CARS_ID)
\t\t\t\tWHERE A.DRIVERS_ID IS NOT NULL 
\t\t\t\tAND (A.LOCATION_ID IS NOT NULL AND NOT (A.LOCATION_ID = 400 AND A.CONTAINERS_STATUS_ID = 13 ))
\t\t\t\tAND (A.containers_status_id is distinct from 13) AND OUR_CARS IS TRUE AND H.ROUTE IS NOT NULL
\t\t\t\tAND CHANGED_ROUTE IS NOT TRUE --не обновлять статусы для машин которые сменили маршрут
SQL;
            if ($cur = pg_query($this->conn, $sql)) {
                return pg_fetch_result($cur, 0, 'obj_ids');
            } else {
                return false;
            }
        } else {
            return false;
        }
    }
function orderDate($stkid, $from_date, $to_date)
{
    $sql = "SELECT minlvl FROM cubit.stock WHERE stkid='{$stkid}'";
    $min_rslt = db_exec($sql) or errDie("Unable to retrieve stock minimum stock level.");
    $min = pg_fetch_result($min_rslt, 0);
    if (empty($min)) {
        $min = 0;
    }
    $from_time = strtotime($from_date);
    $to_time = strtotime(date("Y-m-t", $from_time));
    $sales = averageSalesQty($stkid, date("Y-m-d", $from_time), date("Y-m-d", $to_time), "DAILY");
    if ($sales <= $min) {
        return date("Y-m-d");
    } else {
        $tmp_sales = $sales;
        $ret = 0;
        while ($tmp_sales > $min) {
            $to_time = $from_time * (1 * (60 * 60 * 24));
            $tmp_sales = averageSalesQty($stkid, date("Y-m-d", $from_time), date("Y-m-d", $to_time), "MONTHLY");
            $ret = 1;
        }
        if ($ret) {
            return date("Y-m-d", $to_time);
        }
    }
    return;
}
Пример #11
0
function _send_cake_info($res, $from, $to_session)
{
    global $connection;
    global $logger;
    $result = pg_query($connection, 'SELECT *, users.nick as author_nick
                        FROM pies
                             JOIN users ON users.id = pies.author
                        WHERE pies.id = ' . $from->pieid);
    if (!$result) {
        throw new Exception("Failed to load pie information");
    }
    $row = pg_fetch_assoc($result);
    $settings = json_decode($row['settings'], true);
    $info = array();
    $info['name'] = $row['name'];
    $info['description'] = $row['description'];
    $info['created_at'] = $row['start'];
    $info['author'] = $row['author_nick'];
    $info['visible'] = $row['visible'] == 't';
    $info['links'] = $settings['links'] ?: array();
    $info['statuses'] = $settings['statuses'] ?: array('', '', '', '', '', '', '', '', '', 'all done');
    $result = pg_query($connection, 'SELECT count(pieces.id) as pieces_count FROM pieces WHERE pie = ' . $from->pieid);
    $info['pieces_count'] = pg_fetch_result($result, 0, "pieces_count");
    $msg = array('cake_info', $info);
    if ($to_session) {
        $res->to_session($from, $msg);
    } else {
        $res->to_pie($from, $msg);
    }
}
function amtOnOrder($stkid)
{
    $sql = "\n\tSELECT sum(qty) FROM cubit.purchases\n\t\tLEFT JOIN cubit.pur_items ON purchases.purid=pur_items.purid\n\tWHERE stkid='{$stkid}' AND received='n'";
    $pur_rslt = db_exec($sql) or errDie("Unable to retrieve purchases.");
    $on_order = pg_fetch_result($pur_rslt, 0);
    return $on_order;
}
Пример #13
0
 public function getMisc()
 {
     $query_result = $this->get('id', null, null);
     $array = $query_result->result_array();
     $infos = null;
     foreach ($array as $invite) {
         $id = $invite['id'];
         // Calcul du nombre de vols total
         $this->db->where('invite', $id);
         $this->db->from('vol');
         $infos[$id]['locations'] = $this->db->count_all_results();
         // Calcul du nombre moyen de vols par mois
         $res = pg_query_params("SELECT * FROM GSI.F_INVITE_GETMOIS(\$1)", array($id));
         $nb_mois = pg_fetch_result($res, 0, 0);
         if ($nb_mois == 0) {
             $infos[$id]['locations_par_mois'] = $infos[$id]['locations'];
         } else {
             $infos[$id]['locations_par_mois'] = round($infos[$id]['locations'] / $nb_mois, 2);
         }
         // Calcul du chiffre d'affaire
         $this->db->select_sum('prix', 'total');
         $this->db->where('invite', $id);
         $query = $this->db->get('vol');
         $row = $query->row_array();
         if ($row['total'] == null) {
             $row['total'] = 0;
         }
         $infos[$id]['chiffre_d\'affaire (€)'] = $row['total'];
     }
     return $infos;
 }
Пример #14
0
function setActiveGroup($verbose)
{
    global $dbManager;
    $stmt = __METHOD__;
    $sql = "SELECT user_pk,group_pk FROM users LEFT JOIN groups ON group_name=user_name WHERE group_fk IS NULL";
    $dbManager->prepare($stmt, $sql);
    $res = $dbManager->execute($stmt);
    if (pg_num_rows($res) == 0) {
        pg_free_result($res);
        return 0;
    }
    $userGroupMap = pg_fetch_all($res);
    pg_free_result($res);
    $selectStmt = __METHOD__ . '.select';
    $sql = "SELECT user_fk,min(group_fk) group_fk FROM group_user_member WHERE user_fk=\$1";
    $updateStmt = __METHOD__ . '.update';
    $dbManager->prepare($updateStmt, "UPDATE users SET group_fk=\$2 WHERE user_pk=\$1");
    foreach ($userGroupMap as $row) {
        if (!empty($row['group_pk'])) {
            pg_free_result($dbManager->execute($updateStmt, $row));
            continue;
        }
        $rowrow = $dbManager->getSingleRow($sql, array($row['user_pk']), $selectStmt);
        pg_fetch_result($dbManager->execute($updateStmt, $rowrow));
    }
}
Пример #15
0
function view()
{
    global $_GET;
    extract($_GET);
    if (!isset($target)) {
        $OUTPUT = "<li class=err>Invalid use of module</li>";
        require "template.php";
    }
    $vars = "";
    foreach ($_GET as $key => $value) {
        if ($key != "target") {
            $vars .= "&{$key}={$value}";
        }
    }
    // compute the auth url
    db_conn("cubit");
    $sql = "SELECT * FROM cubitnet_sitesettings WHERE div='" . USER_DIV . "'";
    $rslt = db_exec($sql) or errDie("Error reading username and password for Cubit.co.za");
    if (pg_num_rows($rslt) < 1) {
        $OUTPUT = "<li class=err>Cubit.co.za Settings not set up yet.\r\n\t\t\tPlease <a href='cubitnet_settings.php'>enter</a> the settings first</li>";
        require "template.php";
    }
    extract(pg_fetch_array($rslt));
    db_conn("cubit");
    $sql = "SELECT setting_value FROM cubitnet_settings WHERE setting_name='cubitnet_hash'";
    $rslt = db_exec($sql) or errDie("Error reading hash value for Cubit.co.za.");
    if (pg_num_rows($rslt) < 1) {
        $OUTPUT = "<li class=err>Cubit.co.za Settings not set up yet.\r\n\t\t\tPlease <a href='cubitnet_settings.php'>enter</a> the settings first</li>";
        require "template.php";
    }
    $cubitnet_hash = pg_fetch_result($rslt, 0, 0);
    print "\r\n\t<frameset rows=0,* border=0>\r\n\t\t<frame name=https_auth src='" . IDENTIFY_URL . "?hash={$cubitnet_hash}&username={$cn_username}&password={$cn_password}'>\r\n\t\t<frame name=data_frame src='{$target}?{$vars}'>\r\n\t</frameset>";
}
Пример #16
0
function show_image($_POST)
{
    extract($_POST);
    if (!isset($picid)) {
        return "";
    }
    db_connect();
    $get_img = "SELECT type,ident_id FROM display_images WHERE id = '{$picid}' LIMIT 1";
    $run_img = db_exec($get_img) or errDie("Unable to get image information.");
    if (pg_numrows($run_img) < 1) {
        #image not found ??
        $previous = "";
        $next = "";
    } else {
        $arr = pg_fetch_array($run_img);
        $previous = "";
        $next = "";
        #check for any additional images for this member
        #get prev button
        $get_other = "SELECT id FROM display_images WHERE type = '{$arr['type']}' AND ident_id = '{$arr['ident_id']}' AND id < '{$picid}' ORDER BY id desc LIMIT 1";
        $run_other = db_exec($get_other) or errDie("Unable to get images information.");
        if (pg_numrows($run_other) > 0) {
            $previous = "<input type='button' onCLick=\"document.location='view_image.php?picid=" . pg_fetch_result($run_other, 0, 0) . "'\" value='Previous'>";
        }
        $get_other = "SELECT id FROM display_images WHERE type = '{$arr['type']}' AND ident_id = '{$arr['ident_id']}' AND id > '{$picid}' LIMIT 1";
        $run_other = db_exec($get_other) or errDie("Unable to get images information.");
        if (pg_numrows($run_other) > 0) {
            $next = "<input type='button' onCLick=\"document.location='view_image.php?picid=" . pg_fetch_result($run_other, 0, 0) . "'\" value='Next'>";
        }
    }
    $buttons = "<tr height='20%' valign='bottom'><td width='40%' align='right'>{$previous}</td><td>{$next}</td></tr>";
    $display = "\n\t\t\t\t\t<table " . TMPL_tblDflts . " height='95%' width='100%'>\n\t\t\t\t\t\t<tr height='80%'>\n\t\t\t\t\t\t\t<td colspan='2'><img src='show_dimg.php?picid={$picid}' width='160' height='185' border='1'></td>\n\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t{$buttons}\n\t\t\t\t\t</table>\n\t\t\t\t";
    return $display;
}
function posttake_display()
{
    extract($_REQUEST);
    $fields = array();
    $fields["page"] = 1;
    extract($fields, EXTR_SKIP);
    $sql = "\n\t\tSELECT stock.stkid, stock.whid, stkcod, stkdes, bar, adjusted, qty \n\t\tFROM cubit.stock_take \n\t\t\tLEFT JOIN cubit.stock ON stock_take.stkid=stock.stkid \n\t\tWHERE page='{$page}' AND (adjusted='0' OR adjusted IS NULL) \n\t\tORDER BY stkcod ASC, whid";
    $stock_rslt = db_exec($sql) or errDie("Unable to retrieve stock.");
    $stock_out = "";
    while ($stock_data = pg_fetch_array($stock_rslt)) {
        db_conn("exten");
        $get_wh = "SELECT whname FROM warehouses WHERE whid = '{$stock_data['whid']}' LIMIT 1";
        $run_wh = db_exec($get_wh) or errDie("Unable to get warehouse information.");
        if (pg_numrows($run_wh) < 1) {
            $whname = "Default";
        } else {
            $whname = trim(pg_fetch_result($run_wh, 0, 0));
        }
        $stock_out .= "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>{$stock_data['bar']}</td>\n\t\t\t\t<td>{$whname}</td>\n\t\t\t\t<td>{$stock_data['stkcod']}</td>\n\t\t\t\t<td>{$stock_data['stkdes']}</td>\n\t\t\t\t<td align='center'><input type='text' name='qty[{$stock_data['stkid']}]' value='{$stock_data['qty']}' size='3' style='text-align: center' /></td>\n\t\t\t\t<td><input type='submit' name='update[{$stock_data['stkid']}]' value='OK' /></td>\n\t\t\t</tr>";
    }
    if (empty($stock_out)) {
        $stock_out = "\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td colspan='5'>No results found.</td>\n\t\t\t</tr>";
    }
    $OUTPUT = "\n\t\t<center>\n\t\t<h3>Stock Take</h3>\n\t\t<form method='POST' action='" . SELF . "'>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<tr>\n\t\t\t\t<th colspan='2'>Page</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td><input type='text' name='page' value='{$page}' size='3' style='font-weight: bold; text-align: center' /></td>\n\t\t\t\t<td><input type='submit' value='OK' /></td>\n\t\t\t</tr>\n\t\t</table>\n\t\t</form>\n\t\t<form method='POST' action='" . SELF . "'>\n\t\t\t<input type='hidden' name='key' value='take_update' />\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<tr>\n\t\t\t\t<th>Barcode</th>\n\t\t\t\t<th>Store</th>\n\t\t\t\t<th>Stock Code</th>\n\t\t\t\t<th>Stock Description</th>\n\t\t\t\t<th>Quantity</th>\n\t\t\t\t<th>&nbsp;</th>\n\t\t\t</tr>\n\t\t\t{$stock_out}\n\t\t</table>\n\t\t<input type='submit' name='button[adjustments]' value='Adjustments' />\n\t\t</form>\n\t\t</center>";
    return $OUTPUT;
}
function adjust_display()
{
    extract($_REQUEST);
    $fields = array();
    $fields["page"] = 1;
    extract($fields, EXTR_SKIP);
    $sql = "SELECT stock.stkid, bar, stkcod, stkdes, catname, csprice,\n\t\t\t\t(qty-units) AS adjust_qty\n\t\t\tFROM cubit.stock_take\n\t\t\t\tLEFT JOIN cubit.stock ON stock.stkid=stock_take.stkid\n\t\t\tWHERE adjusted='0' AND page='{$page}'\n\t\t\tORDER BY stkcod ASC";
    $adjust_rslt = db_exec($sql) or errDie("Unable to retrieve adjustments.");
    $adjust_out = "";
    while ($adjust_data = pg_fetch_array($adjust_rslt)) {
        if ($adjust_data["adjust_qty"] == 0) {
            continue;
        }
        $value = $adjust_data["csprice"] * $adjust_data["adjust_qty"];
        $adjust_out .= "\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>{$adjust_data['bar']}</td>\n\t\t\t<td>{$adjust_data['catname']}</td>\n\t\t\t<td>{$adjust_data['stkcod']}</td>\n\t\t\t<td>{$adjust_data['stkdes']}</td>\n\t\t\t<td align='center'>" . sprint3($adjust_data['adjust_qty']) . "</td>\n\t\t\t<td align='right'>" . sprint($value) . "</th>\n\t\t\t<td>\n\t\t\t\t<input type='hidden' name='adjust_qty[{$adjust_data['stkid']}]'\n\t\t\t\tvalue='{$adjust_data['adjust_qty']}' />\n\t\t\t\t<input type='submit' name='update[{$adjust_data['stkid']}]'\n\t\t\t\tvalue='Adjust' />\n\t\t\t</td>\n\t\t</tr>";
    }
    if (empty($adjust_out)) {
        $adjust_out = "\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td colspan='7'>\n\t\t\t\t<li>No results found for this page.</li>\n\t\t\t</td>\n\t\t</tr>";
    }
    $sql = "SELECT max(page) FROM cubit.stock_take";
    $mp_rslt = db_exec($sql) or errDie("Unable to retrieve total pages.");
    $max_page = pg_fetch_result($mp_rslt, 0);
    if ($page < $max_page) {
        $adjust_btn = "\n\t\t\t<a href='" . SELF . "?key=adjust_display&page=" . ($page + 1) . "'>\n\t\t\t\tNext &raquo\n\t\t\t</a>";
    } else {
        $adjust_btn = "";
    }
    $OUTPUT = "\n\t<center>\n\t<h3>Stock Take - Adjustments</h3>\n\t<form method='post' action='" . SELF . "'>\n\t<table " . TMPL_tblDflts . ">\n\t\t<tr>\n\t\t\t<th colspan='2'>Page</th>\n\t\t</tr>\n\t\t<tr class='" . bg_class() . "'>\n\t\t\t<td>\n\t\t\t\t<input type='text' name='page' value='{$page}' size='3'\n\t\t\t\tstyle='font-weight: bold; text-align: center' />\n\t\t\t</td>\n\t\t\t<td><input type='submit' value='OK' /></td>\n\t\t</tr>\n\t</table>\n\t</form>\n\t<form method='post' action='" . SELF . "'>\n\t<input type='hidden' name='key' value='adjust_update' />\n\t<input type='hidden' name='page' value='{$page}' />\n\t<table " . TMPL_tblDflts . ">\n\t\t<tr>\n\t\t\t<th>Barcode</th>\n\t\t\t<th>Category</th>\n\t\t\t<th>Stock Code</th>\n\t\t\t<th>Stock Description</th>\n\t\t\t<th>Adjustment</th>\n\t\t\t<th>Value</th>\n\t\t\t<th>&nbsp;</th>\n\t\t</tr>\n\t\t{$adjust_out}\n\t</table>\n\t<input type='submit' name='button[page_complete]' value='Adjust Page' />\n\t<br />\n\t{$adjust_btn}\n\t</center>";
    return $OUTPUT;
}
function enter($errors = "")
{
    // Retrieve the settings from Cubit
    db_conn("cubit");
    $sql = "SELECT filename FROM template_settings WHERE template='invoices' AND div='" . USER_DIV . "'";
    $invRslt = db_exec($sql) or errDie("Unable to retrieve the invoices template setting from Cubit.");
    $invoices_db = pg_fetch_result($invRslt, 0);
    $sql = "SELECT filename FROM template_settings WHERE template='statements' AND div='" . USER_DIV . "'";
    $stmntRslt = db_exec($sql) or errDie("Unable to retrieve the statement template setting from Cubit.");
    $statements_db = pg_fetch_result($stmntRslt, 0);
    $sql = "SELECT filename FROM template_settings WHERE template='reprints' AND div='" . USER_DIV . "'";
    $rprntRslt = db_exec($sql) or errDie("Unable to retrieve pdf reprint template setting from Cubit.");
    $reprints_db = pg_fetch_result($rprntRslt, 0);
    //	$invoices_ar = array (
    //		"PDF Tax Invoice"=>"pdf/pdf-tax-invoice.php",
    //		"HTML Tax Invoice"=>"invoice-print.php",
    //	);
    //
    //	$statements_ar = array (
    //		"PDF Statement"=>"pdf/pdf-statement.php",
    //		"Default PDF"=>"pdf/cust-pdf-stmnt.php"
    //	);
    //
    //	$reprints_ar = array (
    //		"PDF Tax Invoice"=>"new",
    //		"Default PDF"=>"default"
    //	);
    $invoices_ar = array("PDF Tax Invoice" => "pdf/pdf-tax-invoice.php", "HTML Tax Invoice" => "invoice-print.php");
    $statements_ar = array("New Format PDF Statement" => "pdf/pdf-statement.php", "Old Format PDF" => "pdf/cust-pdf-stmnt.php");
    $reprints_ar = array("New Format PDF Tax Invoice" => "new", "Old Format PDF Tax Invoice" => "default");
    $invoices = "";
    foreach ($invoices_ar as $key => $val) {
        if ($invoices_db == $val) {
            $selected = "checked";
        } else {
            $selected = "";
        }
        $invoices .= "<input type=radio name='invoices' value='{$key}::{$val}' {$selected}>{$key}<br>";
    }
    $statements = "";
    foreach ($statements_ar as $key => $val) {
        if ($statements_db == $val) {
            $selected = "checked";
        } else {
            $selected = "";
        }
        $statements .= "<input type=radio name='statements' value='{$key}::{$val}' {$selected}>{$key}<br>";
    }
    $reprints = "";
    foreach ($reprints_ar as $key => $val) {
        if ($reprints_db == $val) {
            $selected = "checked";
        } else {
            $selected = "";
        }
        $reprints .= "<input type=radio name='reprints' value='{$key}::{$val}' {$selected}>{$key}<br>";
    }
    $OUTPUT = "\n\t\t<h3>Template Settings</h3>\n\t\t{$errors}\n\t\t<form method='POST' action='" . SELF . "'>\n\t\t\t<input type='hidden' name='key' value='confirm'>\n\t\t<table " . TMPL_tblDflts . ">\n\t\t\t<tr>\n\t\t\t\t<th>Option</th>\n\t\t\t\t<th>Layout</th>\n\t\t\t\t<th>Preview</th>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Invoices / Credit Notes</td>\n\t\t\t\t<td valign='top'>{$invoices}</td>\n\t\t\t\t<td valign='middle'>\n\t\t\t\t\t<a href='pdf-tax-invoice-prev.png' target='blank'>Preview PDF Tax Invoice</a><br>\n\t\t\t\t\t<a href='html-tax-invoice-prev.png' target='blank'>Preview HTML Tax Invoice</a>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Statements</th>\n\t\t\t\t<td valign='top'>{$statements}</td>\n\t\t\t\t<td valign='middle'>\n\t\t\t\t\t<a href='pdf-statement-prev.png' target='blank'>Preview PDF Statement</a><br>\n\t\t\t\t\t<a href='default-statement-prev.png' target='blank'>Preview Default PDF Statement</a>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t\t<tr class='" . bg_class() . "'>\n\t\t\t\t<td>Invoice PDF Reprints</td>\n\t\t\t\t<td valign='top'>{$reprints}</td>\n\t\t\t\t<td>&nbsp</td>\n\t\t\t</tr>\n\t\t\t<tr>\n\t\t\t\t<td colspan='3' align='right'><input type='submit' value='Confirm &raquo'\\></td>\n\t\t\t</tr>\n\t\t</table>\n\t\t</form>" . mkQuickLinks(ql("../cust-credit-stockinv.php", "New Invoice"), ql("../purchase-new.php", "New Purchase"));
    return $OUTPUT;
}
Пример #20
0
 function get_attributes()
 {
     $sql_str = "SELECT " . "name, " . "style_desc, " . "symbol_name, " . "symbol_size, " . "angle, " . "width, " . "color_r, " . "color_g, " . "color_b, " . "outlinecolor_r, " . "outlinecolor_b, " . "outlinecolor_g, " . "bgcolor_r, " . "bgcolor_g, " . "bgcolor_b " . "FROM " . "tng_mapserver_style " . "WHERE " . "id = " . $this->id;
     $this->dbconn->connect();
     $result = pg_query($this->dbconn->conn, $sql_str);
     if (!$result) {
         echo "An error occurred while executing the query - " . $sql_str . " - " . pg_last_error($this->dbconn->conn);
         //$this->dbconn->disconnect();
         return false;
     }
     // successfuly ran the query
     // store attributes
     $this->name = pg_fetch_result($result, 0, 'name');
     $this->style_desc = pg_fetch_result($result, 0, 'style_desc');
     $this->symbol_name = pg_fetch_result($result, 0, 'symbol_name');
     $this->symbol_size = pg_fetch_result($result, 0, 'symbol_size');
     $this->angle = pg_fetch_result($result, 0, 'angle');
     $this->width = pg_fetch_result($result, 0, 'width');
     $this->color_r = pg_fetch_result($result, 0, 'color_r');
     $this->color_g = pg_fetch_result($result, 0, 'color_g');
     $this->color_b = pg_fetch_result($result, 0, 'color_b');
     $this->outlinecolor_r = pg_fetch_result($result, 0, 'outlinecolor_r');
     $this->outlinecolor_g = pg_fetch_result($result, 0, 'outlinecolor_g');
     $this->outlinecolor_b = pg_fetch_result($result, 0, 'outlinecolor_b');
     $this->bgcolor_r = pg_fetch_result($result, 0, 'bgcolor_r');
     $this->bgcolor_g = pg_fetch_result($result, 0, 'bgcolor_g');
     $this->bgcolor_b = pg_fetch_result($result, 0, 'bgcolor_b');
     $this->dbconn->disconnect();
     return true;
 }
function transform($x, $y, $oldEPSG, $newEPSG)
{
    if (is_null($x) || !is_numeric($x) || is_null($y) || !is_numeric($y) || is_null($oldEPSG) || !is_numeric($oldEPSG) || is_null($newEPSG) || !is_numeric($newEPSG)) {
        return null;
    }
    if (SYS_DBTYPE == 'pgsql') {
        $con = db_connect(DBSERVER, OWNER, PW);
        $sqlMinx = "SELECT X(transform(GeometryFromText('POINT(" . pg_escape_string($x) . " " . pg_escape_string($y) . ")'," . pg_escape_string($oldEPSG) . ")," . pg_escape_string($newEPSG) . ")) as minx";
        $resMinx = db_query($sqlMinx);
        $minx = floatval(db_result($resMinx, 0, "minx"));
        $sqlMiny = "SELECT Y(transform(GeometryFromText('POINT(" . pg_escape_string($x) . " " . pg_escape_string($y) . ")'," . pg_escape_string($oldEPSG) . ")," . pg_escape_string($newEPSG) . ")) as miny";
        $resMiny = db_query($sqlMiny);
        $miny = floatval(db_result($resMiny, 0, "miny"));
    } else {
        $con_string = "host=" . GEOS_DBSERVER . " port=" . GEOS_PORT . " dbname=" . GEOS_DB . "user="******"password="******"Error while connecting database");
        /*
         * @security_patch sqli done
         */
        $sqlMinx = "SELECT X(transform(GeometryFromText('POINT(" . pg_escape_string($x) . " " . pg_escape_string($y) . ")'," . pg_escape_string($oldEPSG) . ")," . pg_escape_string($newEPSG) . ")) as minx";
        $resMinx = pg_query($con, $sqlMinx);
        $minx = floatval(pg_fetch_result($resMinx, 0, "minx"));
        $sqlMiny = "SELECT Y(transform(GeometryFromText('POINT(" . pg_escape_string($x) . " " . pg_escape_string($y) . ")'," . pg_escape_string($oldEPSG) . ")," . pg_escape_string($newEPSG) . ")) as miny";
        $resMiny = pg_query($con, $sqlMiny);
        $miny = floatval(pg_fetch_result($resMiny, 0, "miny"));
    }
    return array("x" => $minx, "y" => $miny);
}
function total_pages()
{
    $sql = "SELECT count(stkid) FROM cubit.stock";
    $stock_rslt = db_exec($sql) or errDie("Unable to retrieve total pages.");
    $stock_count = pg_fetch_result($stock_rslt, 0);
    return intval($stock_count / OFFSET_SIZE + 1);
}
function write()
{
    extract($_REQUEST);
    require_lib("validate");
    $v = new validate();
    $v->isOk($invid, "num", 1, 20, "Invalid invoice selection.");
    if ($v->isError()) {
        return edit($v->genErrors());
    }
    pglib_transaction("BEGIN");
    $subtotal = 0;
    if (isset($unitprices) && is_array($unitprices)) {
        foreach ($unitprices as $id => $unitprice) {
            $sql = "SELECT qty FROM cubit.inv_items WHERE id='{$id}'";
            $qty_rslt = db_exec($sql) or errDie("Unable to retrieve qty.");
            $qty = pg_fetch_result($qty_rslt, 0);
            $sql = "\n\t\t\tUPDATE cubit.inv_items SET unitcost='{$unitprice}'\n\t\t\tWHERE id='{$id}'";
            db_exec($sql) or errDie("Unable to update unit cost.");
            $subtotal += $unitprice * $qty;
        }
    }
    $vat = $subtotal / 100 * 14;
    $total = $subtotal + $vat;
    $sql = "\n\tUPDATE cubit.invoices SET total='{$total}', subtot='{$subtotal}', vat='{$vat}'\n\tWHERE invid='{$invid}'";
    db_exec($sql) or errDie("Unable to update invoice totals.");
    pglib_transaction("COMMIT");
    return edit();
}
Пример #24
0
function numOfActiveProjects()
{
    global $dbconn;
    $query = "SELECT COUNT(*) FROM projects_own_by_user p WHERE is_deleted = FALSE;";
    $result = pg_query($dbconn, $query);
    $val = pg_fetch_result($result, 0, 0);
    return $val;
}
function enter($error = "")
{
    $sql = "SELECT value FROM settings WHERE constant='DEFAULT_COMMENTS'";
    $rslt = db_exec($sql) or errDie("Unable to retrieve default comments from Cubit.");
    $comments = base64_decode(pg_fetch_result($rslt, 0));
    $OUTPUT = "<h3>Default Comments for Invoices</h3>\r\n\t<form method=post action='" . SELF . "'>\r\n\t<input type=hidden name=key value='confirm'>\r\n\t<table border=0 cellpadding='" . TMPL_tblCellPadding . "' cellspacing='" . TMPL_tblCellSpacing . "'>\r\n\t  <tr>\r\n\t    <th>Option</th>\r\n\t    <th>Value</th>\r\n\t  <tr>\r\n\t  <tr class='bg-odd'>\r\n\t    <td>" . REQ . "Comment text</td>\r\n\t    <td><textarea rows=5 cols=20 name=comments>{$comments}</textarea></td>\r\n\t  </tr>\r\n\t  <tr>\r\n\t    <td colspan=2 align=right><input type=submit value='Confirm &raquo'></td>\r\n\t  </tr>\r\n\t</table>\r\n\t</form>";
    return $OUTPUT;
}
function enter($error = "")
{
    $sql = "SELECT value FROM settings WHERE constant='DEFAULT_STMNT_COMMENTS'";
    $rslt = db_exec($sql) or errDie("Unable to retrieve default comments from Cubit.");
    $comments = base64_decode(pg_fetch_result($rslt, 0));
    $OUTPUT = "\r\n\t\t\t\t<h3>Default Comments for Statements</h3>\r\n\t\t\t\t<form method='POST' action='" . SELF . "'>\r\n\t\t\t\t\t<input type='hidden' name='key' value='confirm'>\r\n\t\t\t\t<table " . TMPL_tblDflts . ">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<th>Option</th>\r\n\t\t\t\t\t\t<th>Value</th>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t\t\t\t<td>" . REQ . "Comment text</td>\r\n\t\t\t\t\t\t<td><textarea rows='5' cols='20' name='comments'>{$comments}</textarea></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td colspan='2' align='right'><input type='submit' value='Confirm &raquo'></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table>\r\n\t\t\t\t</form>";
    return $OUTPUT;
}
Пример #27
0
 public function value()
 {
     if ($this->isEmpty()) {
         return null;
     }
     $value = pg_fetch_result($this->result, 0, 0);
     return $this->executeConvertTypeValue($this->getColumnName(0), $value, $this->getType(0));
 }
function enter()
{
    extract($_REQUEST);
    $sql = "SELECT value FROM cubit.settings WHERE constant='HIRE_COMMENTS'";
    $comm_rslt = db_exec($sql) or errDie("Unable to retrieve hire comments.");
    $comments = pg_fetch_result($comm_rslt, 0);
    $OUTPUT = "<h3>Default Hire Note Comments</h3>\r\n\t<form method='post' action='" . SELF . "'>\r\n\t<input type='hidden' name='key' value='confirm' />\r\n\t<table " . TMPL_tblDflts . ">\r\n\t\t<tr>\r\n\t\t\t<th>Comments</th>\r\n\t\t</tr>\r\n\t\t<tr class='" . bg_class() . "'>\r\n\t\t\t<td>\r\n\t\t\t\t<textarea name='comments' cols='20' rows='5'>{$comments}</textarea>\r\n\t\t\t</td>\r\n\t\t</tr>\r\n\t\t<tr>\r\n\t\t\t<td align='center'><input type='submit' value='Confirm &raquo' /></td>\r\n\t\t</tr>\r\n\t</table>\r\n\t</form>";
    return $OUTPUT;
}
Пример #29
0
 /**
  * Get one result from a SELECT query
  *
  * @param string $sql
  * @return string
  */
 function GetOne($sql)
 {
     $this->Execute($sql);
     $data = '';
     if ($this->result) {
         $data = pg_fetch_result($this->result, 0);
     }
     return $data;
 }
Пример #30
0
function handle_vote_claim($type, $from, $data, $res)
{
    global $connection;
    $from->need_level("member");
    validate_required($data, 'claim_id', 'vote');
    $claim_id = $data['claim_id'];
    $vote = intval($data['vote']);
    $textvote = $vote > 0 ? 'pro' : ($vote < 0 ? 'contra' : 'neutrally');
    $result = pg_query($connection, 'SELECT author, piece, pieces.index, users.nick FROM claims JOIN pieces ON pieces.id = claims.piece JOIN users ON users.id = author WHERE claims.id = ' . $claim_id);
    $num = pg_num_rows($result);
    if ($num == 0) {
        throw new Exception("Not found such claim.");
    }
    $claim = pg_fetch_assoc($result);
    // Protection from self-voting
    if (intval($claim['author']) == intval($from->user_id())) {
        throw new Exception("Not vote for yourself.");
    }
    $result = pg_query($connection, 'SELECT COUNT(*) FROM votes WHERE claim = ' . $claim_id . ' AND author = ' . $from->user_id());
    $num = intval(pg_fetch_result($result, 0, 0));
    if ($num == 0) {
        pg_query($connection, 'INSERT INTO votes VALUES(' . $claim_id . ',' . $from->user_id() . ',' . $vote . ')');
        $res->to_sender(info_msg('You voted „' . $textvote . '“.'));
    } else {
        pg_query($connection, 'UPDATE votes SET value = ' . $vote . ' WHERE claim = ' . $claim_id . ' AND author = ' . $from->user_id());
        $res->to_sender(info_msg('You changed vote to „' . $textvote . '“.'));
    }
    // Recalcing score (vote_balance)
    $result = pg_query($connection, 'SELECT sum(value) AS score FROM votes WHERE claim = ' . $claim_id);
    $score = intval(pg_fetch_result($result, 0, 0));
    if ($score > 2) {
        // Getting old owner from db
        $result = pg_query($connection, 'SELECT owner, users.nick FROM pieces JOIN users ON users.id = pieces.owner WHERE pieces.id = ' . $claim['piece']);
        $old_owner = pg_fetch_assoc($result);
        // Updating piece in db
        pg_query($connection, 'UPDATE pieces SET owner = ' . $claim['author'] . ' WHERE id = ' . $claim['piece']);
        $res->to_pie($from, array('piece_owner', array('piece_index' => $claim['index'], 'owner' => $claim['nick'])));
        // Removing claim
        pg_query($connection, 'DELETE FROM claims WHERE id = ' . $claim_id);
        $res->to_pie($from, array('claim_remove', array('claim_id' => $claim_id)));
        $res->to_pie($from, info_msg('Claim by ' . $claim['nick'] . ' for piece #' . $claim['index'] . ' is accepted.'));
        update_kml($from->pieid);
        _update_user_reserved($res, $from, $claim['author'], $claim['nick']);
        _update_user_reserved($res, $from, $old_owner['owner'], $old_owner['nick']);
    } else {
        if ($score < -2) {
            pg_query($connection, 'DELETE FROM claims WHERE id = ' . $claim_id);
            $msg = array('claim_remove', array('claim_id' => $claim_id));
            $res->to_pie($from, $msg);
            $res->to_pie($from, error_msg('Claim by ' . $claim['nick'] . ' for piece #' . $claim['index'] . ' is dismissed.'));
        } else {
            pg_query($connection, 'UPDATE claims SET score = ' . $score . ' WHERE id = ' . $claim_id);
            $msg = array('claim_update', array('claim_id' => $claim_id, 'vote_balance' => $score));
            $res->to_pie($from, $msg);
        }
    }
}