phpgroupware-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Phpgroupware-cvs] property/class.sodrawing.php, 1.1.1.3


From: nomail
Subject: [Phpgroupware-cvs] property/class.sodrawing.php, 1.1.1.3
Date: Fri, 21 May 2004 19:05:00 -0000

Update of /property
Modified Files:
        Branch: 
          class.sodrawing.php

date: 2004/04/23 21:26:33;  author: sigurdne;  state: Exp;  lines: +441 -441

Log Message:
no message
=====================================================================
Index: property/class.sodrawing.php
diff -u property/class.sodrawing.php:1.1.1.2 
property/class.sodrawing.php:1.1.1.3
--- property/class.sodrawing.php:1.1.1.2        Fri Apr 23 20:25:47 2004
+++ property/class.sodrawing.php        Fri Apr 23 21:26:33 2004
@@ -1,441 +1,441 @@
-<?php
-       
/**************************************************************************\
-       * phpGroupWare - property                                               
   *
-       * http://www.phpgroupware.org                                           
   *
-       *                                                                       
   *
-       * Facilities Management                                                 
   *
-       * Written by Sigurd Nes [sigurdne at online.no]                         
   *
-       * 
------------------------------------------------------------------------ *
-       * Copyright 2000 - 2003 Free Software Foundation, Inc                   
   *
-       * This program is part of the GNU project, see http://www.gnu.org/      
   *
-       * 
------------------------------------------------------------------------ *
-       * This program 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.                                            
   *
-       
\**************************************************************************/
-
-       class property_sodrawing
-       {
-
-               function property_sodrawing()
-               {
-                       $this->currentapp       = 'property'; 
//$GLOBALS['phpgw_info']['flags']['currentapp'];
-                       $this->db                       = $GLOBALS['phpgw']->db;
-                       $this->db2                      = $this->db;
-                       $this->account          = 
$GLOBALS['phpgw_data']['user']['id'];
-                       $this->bocommon         = 
CreateObject($this->currentapp.'_bocommon',True);
-                       $this->historylog       = 
CreateObject($this->currentapp.'_historylog','drawing');
-                       $this->vfs                      = 
CreateObject('phpgwapi_vfs');
-                       $this->rootdir          = $this->vfs->basedir;
-                       $this->fakebase         = $this->vfs->fakebase;
-                       $this->socommon         = 
CreateObject($this->currentapp.'_socommon');
-
-                       $this->join                     = $this->socommon->join;
-               }
-
-               function select_category_list()
-               {
-                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT id, 
descr FROM fm_drawing_category  ORDER BY descr ");
-
-                       $i = 0;
-                       while (!$dbresult->EOF)
-                       {
-                               $categories[$i]['id']                           
= $dbresult->fields['id'];
-                               $categories[$i]['name']                         
= stripslashes($dbresult->fields['descr']);
-                               $i++;
-                               $dbresult->MoveNext();
-                       }
-                       return $categories;
-               }
-
-               function read_single_category($id='')
-               {
-                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT 
descr FROM fm_drawing_category where id='$id' ");
-
-                       return $dbresult->fields['descr'];
-               }
-
-               function select_status_list()
-               {
-                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT id, 
descr FROM fm_drawing_status ORDER BY id ");
-
-                       $i = 0;
-                       while (!$dbresult->EOF)
-                       {
-                               $status_entries[$i]['id']                       
        = $dbresult->fields['id'];
-                               $status_entries[$i]['name']                     
        = stripslashes($dbresult->fields['descr']);
-                               $i++;
-                               $dbresult->MoveNext();
-                       }
-                       return $status_entries;
-               }
-
-               function select_branch_list()
-               {
-                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT id, 
descr FROM fm_branch ORDER BY id ");
-
-                       $i = 0;
-                       while (!$dbresult->EOF)
-                       {
-                               $branch_entries[$i]['id']                       
        = $dbresult->fields['id'];
-                               $branch_entries[$i]['name']                     
        = stripslashes($dbresult->fields['descr']);
-                               $i++;
-                               $dbresult->MoveNext();
-                       }
-                       return $branch_entries;
-               }
-
-               function read($data)
-               {
-                       if(is_array($data))
-                       {
-                               if ($data['start'])
-                               {
-                                       $start=$data['start'];
-                               }
-                               else
-                               {
-                                       $start=0;
-                               }
-                               $filter = 
(isset($data['filter'])?$data['filter']:'');
-                               $query = 
(isset($data['query'])?$data['query']:'');
-                               $sort = 
(isset($data['sort'])?$data['sort']:'DESC');
-                               $order = 
(isset($data['order'])?$data['order']:'');
-                               $cat_id = 
(isset($data['cat_id'])?$data['cat_id']:0);
-                               $status_id = 
(isset($data['status_id'])?$data['status_id']:0);
-                       }
-
-                       $entity_table = 'fm_drawing';
-
-                       $cols .= $entity_table . '.location_code';
-                       $cols_return[] = 'location_code';
-
-                       $cols .= ",$entity_table.id as drawing_id";
-                       $cols_return[]                          = 'drawing_id';
-
-                       $cols .= ",$entity_table.drawing_name";
-                       $cols_return[]                          = 
'drawing_name';
-                       $uicols['input_type'][]         = 'text';
-                       $uicols['name'][]                       = 
'drawing_name';
-                       $uicols['descr'][]                      = lang('drawing 
name');
-                       $uicols['statustext'][]         = lang('drawing name');
-
-                       $cols .= ",fm_drawing_category.descr as category";
-                       $cols_return[]                          = 'category';
-                       $uicols['input_type'][]         = 'text';
-                       $uicols['name'][]                       = 'category';
-                       $uicols['descr'][]                      = 
lang('category');
-                       $uicols['statustext'][]         = lang('category');
-
-                       $joinmethod .= " $this->join  fm_drawing_category ON 
($entity_table.category = fm_drawing_category.id))";
-                       $paranthesis .='(';
-
-
-                       $sql    = 
$this->bocommon->generate_sql(array('entity_table'=>$entity_table,'cols'=>$cols,'cols_return'=>$cols_return,
-                                                                               
                                        
'uicols'=>$uicols,'joinmethod'=>$joinmethod,'paranthesis'=>$paranthesis,'query'=>$query));
-
-                       if ($order)
-                       {
-                               $ordermethod = " order by fm_drawing.$order 
$sort";
-                       }
-                       else
-                       {
-                               $ordermethod = ' order by 
fm_drawing.location_code ASC';
-                       }
-
-                       $where= 'WHERE';
-
-                       if ($cat_id > 0)
-                       {
-                               $filtermethod .= " $where 
fm_drawing.category='$cat_id' ";
-                               $where= 'AND';
-                       }
-
-                       if ($status_id)
-                       {
-                               $filtermethod .= " $where 
fm_drawing.status='$status_id' ";
-                               $where= 'AND';
-                       }
-
-                       if ($filter)
-                       {
-                               $filtermethod .= " $where 
fm_drawing.coordinator='$filter' ";
-                               $where= 'AND';
-                       }
-
-                       if($query)
-                       {
-                               $query = ereg_replace("'",'',$query);
-                               $query = ereg_replace('"','',$query);
-
-                               $querymethod = " $where (fm_drawing.address 
LIKE '%$query%' or fm_drawing.location_code LIKE '%$query%')";
-                       }
-
-
-                       $sql .= " $filtermethod $querymethod";
-//echo $sql;
-                       $this->uicols           = $this->bocommon->uicols;
-                       $cols_return            = $this->bocommon->cols_return;
-                       $type_id                        = 
$this->bocommon->type_id;
-                       $this->cols_extra       = $this->bocommon->cols_extra;
-
-                       $dbresult2 = $GLOBALS['phpgw']->db->Execute($sql);
-                       $this->total_records = $dbresult2->_numOfRows;
-                       $maxmatchs = 15;
-
-                       if(!$allrows)
-                       {
-                               $dbresult = 
$GLOBALS['phpgw']->db->SelectLimit($sql . $ordermethod,$maxmatchs,$start);
-
-                       }
-                       else
-                       {
-                               $dbresult = $GLOBALS['phpgw']->db->Execute($sql 
. $ordermethod);
-                       }
-
-                       $j=0;
-                       while (!$dbresult->EOF)
-                       {
-                               for ($i=0;$i<count($cols_return);$i++)
-                               {
-                                       $drawing_list[$j][$cols_return[$i]] = 
$this->db->f($cols_return[$i]);
-                               }
-
-                               $location_code= 
$dbresult->fields['location_code'];
-                               $location = split('-',$location_code);
-                               for ($m=0;$m<count($location);$m++)
-                               {
-                                       $drawing_list[$j]['loc' . ($m+1)] = 
$location[$m];
-                                       
$drawing_list[$j]['query_location']['loc' . ($m+1)]=implode("-", 
array_slice($location, 0, ($m+1)));
-                               }
-
-                               $j++;
-                               $dbresult->MoveNext();
-                       }
-                       return $drawing_list;
-               }
-
-               function read_single($drawing_id)
-               {
-                       $sql = "SELECT * from fm_drawing where 
id='$drawing_id'";
-
-                       $dbresult = $GLOBALS['phpgw']->db->Execute($sql);
-
-                       if (!$dbresult->EOF)
-                       {
-                               $drawing['drawing_id']                  = 
$dbresult->fields['id'];
-                               $drawing['title']                               
= $dbresult->fields['title'];
-                               $drawing['drawing_name']                = 
$dbresult->fields['drawing_name'];
-                               $drawing['location_code']               = 
$dbresult->fields['location_code'];
-                               $drawing['branch_id']                   = 
$dbresult->fields['branch_id'];
-                               $drawing['version']                             
= $dbresult->fields['version'];
-                               $drawing['vendor_id']                   = 
$dbresult->fields['vendor_id'];
-                               $drawing['floor_id']                    = 
$dbresult->fields['floor_id'];
-                               $drawing['charge_tenant']               = 
$dbresult->fields['charge_tenant'];
-                               $drawing['descr']                               
= $dbresult->fields['descr'];
-                               $drawing['status']                              
= $dbresult->fields['status'];
-                               $drawing['tenant_id']                   = 
$dbresult->fields['tenant_id'];
-                               $drawing['user_id']                             
= $dbresult->fields['user_id'];
-                               $drawing['coordinator']                 = 
$dbresult->fields['coordinator'];
-                               $drawing['access']                              
= $dbresult->fields['access'];
-                               $drawing['drawing_date']                = 
$dbresult->fields['drawing_date'];
-                               $drawing['cat_id']                              
= $dbresult->fields['category'];
-                               $drawing['p_num']                               
= $dbresult->fields['p_num'];
-                               $drawing['p_entity_id']                 = 
$dbresult->fields['p_entity_id'];
-                               $drawing['p_cat_id']                    = 
$dbresult->fields['p_cat_id'];
-                       }
-
-//html_print_r($drawing);
-                               return $drawing;
-               }
-
-               function add($drawing)
-               {
-
-                       while (is_array($drawing['location']) && 
list($input_name,$value) = each($drawing['location']))
-                       {
-                               if($value)
-                               {
-                                       $cols[] = $input_name;
-                                       $vals[] = $value;
-                               }
-                       }
-
-                       while (is_array($drawing['extra']) && 
list($input_name,$value) = each($drawing['extra']))
-                       {
-                               if($value)
-                               {
-                                       $cols[] = $input_name;
-                                       $vals[] = $value;
-                               }
-                       }
-
-                       if($cols)
-                       {
-                               $cols   = "," . implode(",", $cols);
-                               $vals   = ",'" . implode("','", $vals) . "'";
-                       }
-
-                       if($drawing['street_name'])
-                       {
-                               $address[]= $drawing['street_name'];
-                               $address[]= $drawing['street_number'];
-                               $address        = implode(" ", $address);
-                       }
-
-                       if(!$address)
-                       {
-                               $address = $drawing['location_name'];
-                       }
-
-                       $drawing['descr'] = 
$this->db->db_addslashes($drawing['descr']);
-                       $drawing['name'] = 
$this->db->db_addslashes($drawing['name']);
-                       $drawing['title'] = 
$this->db->db_addslashes($drawing['title']);
-//html_print_r($drawing);
-                       $GLOBALS['phpgw']->db->Execute("INSERT INTO fm_drawing 
(drawing_name,title,access,category,entry_date,drawing_date,version,coordinator,status,"
-                               . 
"descr,location_code,floor_id,address,branch_id,vendor_id,user_id $cols) "
-                               . "VALUES ('"
-                               . $drawing['drawing_name']. "','"
-                               . $drawing['title']. "','"
-                               . "public','"
-                               . $drawing['cat_id']. "','"
-                               . time() . "','"
-                               . $drawing['drawing_date']. "','"
-                               . $drawing['version']. "','"
-                               . $drawing['coordinator']. "','"
-                               . $drawing['status']. "','"
-                               . $drawing['descr']. "','"
-                               . $drawing['location_code']. "','"
-                               . $drawing['floor_id'] . "','"
-                               . $address . "','"
-                               . $drawing['branch_id']. "','"
-                               . $drawing['vendor_id']. "','"
-                               . $this->account. "' $vals)");
-
-                       $receipt['drawing_id'] = 
$this->db->get_last_insert_id('fm_drawing','id');
-
-                       
$this->historylog->add('SO',$receipt['drawing_id'],$drawing['status']);
-                       
$this->historylog->add('TO',$receipt['drawing_id'],$drawing['cat_id']);
-                       
$this->historylog->add('CO',$receipt['drawing_id'],$drawing['coordinator']);
-
-                       $receipt['message'][] = array('msg'=>lang('drawing %1 
has been saved',"'".$drawing['drawing_name']."'"));
-                       return $receipt;
-               }
-
-               function edit($drawing)
-               {
-                       while (is_array($drawing['location']) && 
list($input_name,$value) = each($drawing['location']))
-                       {
-                               $vals[] = "$input_name = '$value'";
-                       }
-
-                       while (is_array($drawing['extra']) && 
list($input_name,$value) = each($drawing['extra']))
-                       {
-                               $vals[] = "$input_name = '$value'";
-                       }
-
-                       if($vals)
-                       {
-                               $vals   = "," . implode(",",$vals);
-                       }
-
-                       if($drawing['street_name'])
-                       {
-                               $address[]= $drawing['street_name'];
-                               $address[]= $drawing['street_number'];
-                               $address        = implode(" ", $address);
-                       }
-
-                       if(!$address)
-                       {
-                               $address = $drawing['location_name'];
-                       }
-
-                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT 
status,category,coordinator FROM fm_drawing where id='" 
.$drawing['drawing_id']."'");
-
-
-                       $old_status = $dbresult->fields['status'];
-                       $old_categroy = $dbresult->fields['category'];
-                       $old_coordinator = $dbresult->fields['coordinator'];
-                       if ($old_status != $drawing['status'])
-                       {
-                               
$this->historylog->add('S',$drawing['drawing_id'],$drawing['status']);
-                       }
-                       if ($old_categroy != $drawing['cat_id'])
-                       {
-                               
$this->historylog->add('T',$drawing['drawing_id'],$drawing['cat_id']);
-                       }
-                       if ((int)$old_coordinator != 
(int)$drawing['coordinator'])
-                       {
-                               
$this->historylog->add('C',$drawing['drawing_id'],$drawing['coordinator']);
-                       }
-
-                       if($drawing['drawing_name_orig'] && 
!$drawing['drawing_name'] )
-                       {
-                               $drawing['drawing_name'] = 
$drawing['drawing_name_orig'];
-                       }
-
-
-                       $drawing['descr'] = 
$this->db->db_addslashes($drawing['descr']);
-                       $drawing['name'] = 
$this->db->db_addslashes($drawing['name']);
-                       $drawing['title'] = 
$this->db->db_addslashes($drawing['title']);
-//html_print_r($drawing);
-
-                       $GLOBALS['phpgw']->db->Execute("UPDATE fm_drawing set
-                               drawing_name    ='" . $drawing['drawing_name'] 
. "',
-                               title                   ='"     . 
$drawing['title'] . "',
-                               branch_id               ='" . 
$drawing['branch_id'] . "',
-                               status                  ='" . 
$drawing['status'] . "',
-                               category                ='" . 
$drawing['cat_id'] . "',
-                               drawing_date    ='" . $drawing['drawing_date'] 
. "',
-                               coordinator             ='" . 
$drawing['coordinator'] . "',
-                               descr                   ='" . $drawing['descr'] 
. "',
-                               version                 ='" . 
$drawing['version'] . "',
-                               location_code   ='" . $drawing['location_code'] 
. "',
-                               floor_id                ='" . 
$drawing['floor_id'] . "',
-                               vendor_id               ='" . 
$drawing['vendor_id'] . "',
-                               address                 ='" . $address
-                               . "' $vals WHERE id= '" . 
$drawing['drawing_id'] ."'");
-
-                       $receipt['drawing_id'] = $drawing['drawing_id'];
-                       $receipt['message'][] = array('msg'=>lang('drawing %1 
has been edited',"'".$drawing['drawing_name']."'"));
-                       return $receipt;
-
-               }
-
-               function delete($drawing_id )
-               {
-                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT 
drawing_name FROM fm_drawing where id='$drawing_id'");
-
-                       $drawing_name = $dbresult->fields['drawing_name'];
-
-//echo $this->fakebase. SEP . 'drawing'. SEP . $drawing_name;
-                       if($this->vfs->file_exists(array(
-                                       'string' => $this->fakebase. SEP . 
'drawing'. SEP . $drawing_name,
-                                       'relatives' => Array(RELATIVE_NONE)
-                               )))
-                       {
-                               $this->vfs->override_acl = 1;
-
-                               if(!$this->vfs->rm (array(
-                                       'string' => $this->fakebase. SEP . 
'drawing'. SEP . $drawing_name,
-                                    'relatives' => array(
-                                         RELATIVE_NONE
-                                    )
-                               )))
-                               {
-                                       
$receipt['error'][]=array('msg'=>lang('failed to delete file') . ' :'. 
$this->fakebase. SEP . 'drawing'. SEP . $drawing_name);
-                               }
-                               else
-                               {
-                                       
$receipt['message'][]=array('msg'=>lang('file deleted') . ' :'. 
$this->fakebase. SEP . 'drawing'. SEP . $drawing_name);
-                               }
-                               $this->vfs->override_acl = 0;
-                       }
-
-                       $GLOBALS['phpgw']->db->Execute("DELETE FROM fm_drawing 
WHERE id='$drawing_id'");
-                       $GLOBALS['phpgw']->db->Execute("DELETE FROM 
fm_drawing_history  WHERE  history_record_id='$drawing_id'");
-               }
-       }
-?>
+<?php
+       
/**************************************************************************\
+       * phpGroupWare - property                                               
   *
+       * http://www.phpgroupware.org                                           
   *
+       *                                                                       
   *
+       * Facilities Management                                                 
   *
+       * Written by Sigurd Nes [sigurdne at online.no]                         
   *
+       * 
------------------------------------------------------------------------ *
+       * Copyright 2000 - 2003 Free Software Foundation, Inc                   
   *
+       * This program is part of the GNU project, see http://www.gnu.org/      
   *
+       * 
------------------------------------------------------------------------ *
+       * This program 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.                                            
   *
+       
\**************************************************************************/
+
+       class property_sodrawing
+       {
+
+               function property_sodrawing()
+               {
+                       $this->currentapp       = 'property'; 
//$GLOBALS['phpgw_info']['flags']['currentapp'];
+                       $this->db                       = $GLOBALS['phpgw']->db;
+                       $this->db2                      = $this->db;
+                       $this->account          = 
$GLOBALS['phpgw_data']['user']['id'];
+                       $this->bocommon         = 
CreateObject($this->currentapp.'_bocommon',True);
+                       $this->historylog       = 
CreateObject($this->currentapp.'_historylog','drawing');
+                       $this->vfs                      = 
CreateObject('phpgwapi_vfs');
+                       $this->rootdir          = $this->vfs->basedir;
+                       $this->fakebase         = $this->vfs->fakebase;
+                       $this->socommon         = 
CreateObject($this->currentapp.'_socommon');
+
+                       $this->join                     = $this->socommon->join;
+               }
+
+               function select_category_list()
+               {
+                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT id, 
descr FROM fm_drawing_category  ORDER BY descr ");
+
+                       $i = 0;
+                       while (!$dbresult->EOF)
+                       {
+                               $categories[$i]['id']                           
= $dbresult->fields['id'];
+                               $categories[$i]['name']                         
= stripslashes($dbresult->fields['descr']);
+                               $i++;
+                               $dbresult->MoveNext();
+                       }
+                       return $categories;
+               }
+
+               function read_single_category($id='')
+               {
+                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT 
descr FROM fm_drawing_category where id='$id' ");
+
+                       return $dbresult->fields['descr'];
+               }
+
+               function select_status_list()
+               {
+                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT id, 
descr FROM fm_drawing_status ORDER BY id ");
+
+                       $i = 0;
+                       while (!$dbresult->EOF)
+                       {
+                               $status_entries[$i]['id']                       
        = $dbresult->fields['id'];
+                               $status_entries[$i]['name']                     
        = stripslashes($dbresult->fields['descr']);
+                               $i++;
+                               $dbresult->MoveNext();
+                       }
+                       return $status_entries;
+               }
+
+               function select_branch_list()
+               {
+                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT id, 
descr FROM fm_branch ORDER BY id ");
+
+                       $i = 0;
+                       while (!$dbresult->EOF)
+                       {
+                               $branch_entries[$i]['id']                       
        = $dbresult->fields['id'];
+                               $branch_entries[$i]['name']                     
        = stripslashes($dbresult->fields['descr']);
+                               $i++;
+                               $dbresult->MoveNext();
+                       }
+                       return $branch_entries;
+               }
+
+               function read($data)
+               {
+                       if(is_array($data))
+                       {
+                               if ($data['start'])
+                               {
+                                       $start=$data['start'];
+                               }
+                               else
+                               {
+                                       $start=0;
+                               }
+                               $filter = 
(isset($data['filter'])?$data['filter']:'');
+                               $query = 
(isset($data['query'])?$data['query']:'');
+                               $sort = 
(isset($data['sort'])?$data['sort']:'DESC');
+                               $order = 
(isset($data['order'])?$data['order']:'');
+                               $cat_id = 
(isset($data['cat_id'])?$data['cat_id']:0);
+                               $status_id = 
(isset($data['status_id'])?$data['status_id']:0);
+                       }
+
+                       $entity_table = 'fm_drawing';
+
+                       $cols .= $entity_table . '.location_code';
+                       $cols_return[] = 'location_code';
+
+                       $cols .= ",$entity_table.id as drawing_id";
+                       $cols_return[]                          = 'drawing_id';
+
+                       $cols .= ",$entity_table.drawing_name";
+                       $cols_return[]                          = 
'drawing_name';
+                       $uicols['input_type'][]         = 'text';
+                       $uicols['name'][]                       = 
'drawing_name';
+                       $uicols['descr'][]                      = lang('drawing 
name');
+                       $uicols['statustext'][]         = lang('drawing name');
+
+                       $cols .= ",fm_drawing_category.descr as category";
+                       $cols_return[]                          = 'category';
+                       $uicols['input_type'][]         = 'text';
+                       $uicols['name'][]                       = 'category';
+                       $uicols['descr'][]                      = 
lang('category');
+                       $uicols['statustext'][]         = lang('category');
+
+                       $joinmethod .= " $this->join  fm_drawing_category ON 
($entity_table.category = fm_drawing_category.id))";
+                       $paranthesis .='(';
+
+
+                       $sql    = 
$this->bocommon->generate_sql(array('entity_table'=>$entity_table,'cols'=>$cols,'cols_return'=>$cols_return,
+                                                                               
                                        
'uicols'=>$uicols,'joinmethod'=>$joinmethod,'paranthesis'=>$paranthesis,'query'=>$query));
+
+                       if ($order)
+                       {
+                               $ordermethod = " order by fm_drawing.$order 
$sort";
+                       }
+                       else
+                       {
+                               $ordermethod = ' order by 
fm_drawing.location_code ASC';
+                       }
+
+                       $where= 'WHERE';
+
+                       if ($cat_id > 0)
+                       {
+                               $filtermethod .= " $where 
fm_drawing.category='$cat_id' ";
+                               $where= 'AND';
+                       }
+
+                       if ($status_id)
+                       {
+                               $filtermethod .= " $where 
fm_drawing.status='$status_id' ";
+                               $where= 'AND';
+                       }
+
+                       if ($filter)
+                       {
+                               $filtermethod .= " $where 
fm_drawing.coordinator='$filter' ";
+                               $where= 'AND';
+                       }
+
+                       if($query)
+                       {
+                               $query = ereg_replace("'",'',$query);
+                               $query = ereg_replace('"','',$query);
+
+                               $querymethod = " $where (fm_drawing.address 
LIKE '%$query%' or fm_drawing.location_code LIKE '%$query%')";
+                       }
+
+
+                       $sql .= " $filtermethod $querymethod";
+//echo $sql;
+                       $this->uicols           = $this->bocommon->uicols;
+                       $cols_return            = $this->bocommon->cols_return;
+                       $type_id                        = 
$this->bocommon->type_id;
+                       $this->cols_extra       = $this->bocommon->cols_extra;
+
+                       $dbresult2 = $GLOBALS['phpgw']->db->Execute($sql);
+                       $this->total_records = $dbresult2->_numOfRows;
+                       $maxmatchs = 15;
+
+                       if(!$allrows)
+                       {
+                               $dbresult = 
$GLOBALS['phpgw']->db->SelectLimit($sql . $ordermethod,$maxmatchs,$start);
+
+                       }
+                       else
+                       {
+                               $dbresult = $GLOBALS['phpgw']->db->Execute($sql 
. $ordermethod);
+                       }
+
+                       $j=0;
+                       while (!$dbresult->EOF)
+                       {
+                               for ($i=0;$i<count($cols_return);$i++)
+                               {
+                                       $drawing_list[$j][$cols_return[$i]] = 
$this->db->f($cols_return[$i]);
+                               }
+
+                               $location_code= 
$dbresult->fields['location_code'];
+                               $location = split('-',$location_code);
+                               for ($m=0;$m<count($location);$m++)
+                               {
+                                       $drawing_list[$j]['loc' . ($m+1)] = 
$location[$m];
+                                       
$drawing_list[$j]['query_location']['loc' . ($m+1)]=implode("-", 
array_slice($location, 0, ($m+1)));
+                               }
+
+                               $j++;
+                               $dbresult->MoveNext();
+                       }
+                       return $drawing_list;
+               }
+
+               function read_single($drawing_id)
+               {
+                       $sql = "SELECT * from fm_drawing where 
id='$drawing_id'";
+
+                       $dbresult = $GLOBALS['phpgw']->db->Execute($sql);
+
+                       if (!$dbresult->EOF)
+                       {
+                               $drawing['drawing_id']                  = 
$dbresult->fields['id'];
+                               $drawing['title']                               
= $dbresult->fields['title'];
+                               $drawing['drawing_name']                = 
$dbresult->fields['drawing_name'];
+                               $drawing['location_code']               = 
$dbresult->fields['location_code'];
+                               $drawing['branch_id']                   = 
$dbresult->fields['branch_id'];
+                               $drawing['version']                             
= $dbresult->fields['version'];
+                               $drawing['vendor_id']                   = 
$dbresult->fields['vendor_id'];
+                               $drawing['floor_id']                    = 
$dbresult->fields['floor_id'];
+                               $drawing['charge_tenant']               = 
$dbresult->fields['charge_tenant'];
+                               $drawing['descr']                               
= $dbresult->fields['descr'];
+                               $drawing['status']                              
= $dbresult->fields['status'];
+                               $drawing['tenant_id']                   = 
$dbresult->fields['tenant_id'];
+                               $drawing['user_id']                             
= $dbresult->fields['user_id'];
+                               $drawing['coordinator']                 = 
$dbresult->fields['coordinator'];
+                               $drawing['access']                              
= $dbresult->fields['access'];
+                               $drawing['drawing_date']                = 
$dbresult->fields['drawing_date'];
+                               $drawing['cat_id']                              
= $dbresult->fields['category'];
+                               $drawing['p_num']                               
= $dbresult->fields['p_num'];
+                               $drawing['p_entity_id']                 = 
$dbresult->fields['p_entity_id'];
+                               $drawing['p_cat_id']                    = 
$dbresult->fields['p_cat_id'];
+                       }
+
+//html_print_r($drawing);
+                               return $drawing;
+               }
+
+               function add($drawing)
+               {
+
+                       while (is_array($drawing['location']) && 
list($input_name,$value) = each($drawing['location']))
+                       {
+                               if($value)
+                               {
+                                       $cols[] = $input_name;
+                                       $vals[] = $value;
+                               }
+                       }
+
+                       while (is_array($drawing['extra']) && 
list($input_name,$value) = each($drawing['extra']))
+                       {
+                               if($value)
+                               {
+                                       $cols[] = $input_name;
+                                       $vals[] = $value;
+                               }
+                       }
+
+                       if($cols)
+                       {
+                               $cols   = "," . implode(",", $cols);
+                               $vals   = ",'" . implode("','", $vals) . "'";
+                       }
+
+                       if($drawing['street_name'])
+                       {
+                               $address[]= $drawing['street_name'];
+                               $address[]= $drawing['street_number'];
+                               $address        = implode(" ", $address);
+                       }
+
+                       if(!$address)
+                       {
+                               $address = $drawing['location_name'];
+                       }
+
+                       $drawing['descr'] = 
$this->db->db_addslashes($drawing['descr']);
+                       $drawing['name'] = 
$this->db->db_addslashes($drawing['name']);
+                       $drawing['title'] = 
$this->db->db_addslashes($drawing['title']);
+//html_print_r($drawing);
+                       $GLOBALS['phpgw']->db->Execute("INSERT INTO fm_drawing 
(drawing_name,title,access,category,entry_date,drawing_date,version,coordinator,status,"
+                               . 
"descr,location_code,floor_id,address,branch_id,vendor_id,user_id $cols) "
+                               . "VALUES ('"
+                               . $drawing['drawing_name']. "','"
+                               . $drawing['title']. "','"
+                               . "public','"
+                               . $drawing['cat_id']. "','"
+                               . time() . "','"
+                               . $drawing['drawing_date']. "','"
+                               . $drawing['version']. "','"
+                               . $drawing['coordinator']. "','"
+                               . $drawing['status']. "','"
+                               . $drawing['descr']. "','"
+                               . $drawing['location_code']. "','"
+                               . $drawing['floor_id'] . "','"
+                               . $address . "','"
+                               . $drawing['branch_id']. "','"
+                               . $drawing['vendor_id']. "','"
+                               . $this->account. "' $vals)");
+
+                       $receipt['drawing_id'] = 
$this->db->get_last_insert_id('fm_drawing','id');
+
+                       
$this->historylog->add('SO',$receipt['drawing_id'],$drawing['status']);
+                       
$this->historylog->add('TO',$receipt['drawing_id'],$drawing['cat_id']);
+                       
$this->historylog->add('CO',$receipt['drawing_id'],$drawing['coordinator']);
+
+                       $receipt['message'][] = array('msg'=>lang('drawing %1 
has been saved',"'".$drawing['drawing_name']."'"));
+                       return $receipt;
+               }
+
+               function edit($drawing)
+               {
+                       while (is_array($drawing['location']) && 
list($input_name,$value) = each($drawing['location']))
+                       {
+                               $vals[] = "$input_name = '$value'";
+                       }
+
+                       while (is_array($drawing['extra']) && 
list($input_name,$value) = each($drawing['extra']))
+                       {
+                               $vals[] = "$input_name = '$value'";
+                       }
+
+                       if($vals)
+                       {
+                               $vals   = "," . implode(",",$vals);
+                       }
+
+                       if($drawing['street_name'])
+                       {
+                               $address[]= $drawing['street_name'];
+                               $address[]= $drawing['street_number'];
+                               $address        = implode(" ", $address);
+                       }
+
+                       if(!$address)
+                       {
+                               $address = $drawing['location_name'];
+                       }
+
+                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT 
status,category,coordinator FROM fm_drawing where id='" 
.$drawing['drawing_id']."'");
+
+
+                       $old_status = $dbresult->fields['status'];
+                       $old_categroy = $dbresult->fields['category'];
+                       $old_coordinator = $dbresult->fields['coordinator'];
+                       if ($old_status != $drawing['status'])
+                       {
+                               
$this->historylog->add('S',$drawing['drawing_id'],$drawing['status']);
+                       }
+                       if ($old_categroy != $drawing['cat_id'])
+                       {
+                               
$this->historylog->add('T',$drawing['drawing_id'],$drawing['cat_id']);
+                       }
+                       if ((int)$old_coordinator != 
(int)$drawing['coordinator'])
+                       {
+                               
$this->historylog->add('C',$drawing['drawing_id'],$drawing['coordinator']);
+                       }
+
+                       if($drawing['drawing_name_orig'] && 
!$drawing['drawing_name'] )
+                       {
+                               $drawing['drawing_name'] = 
$drawing['drawing_name_orig'];
+                       }
+
+
+                       $drawing['descr'] = 
$this->db->db_addslashes($drawing['descr']);
+                       $drawing['name'] = 
$this->db->db_addslashes($drawing['name']);
+                       $drawing['title'] = 
$this->db->db_addslashes($drawing['title']);
+//html_print_r($drawing);
+
+                       $GLOBALS['phpgw']->db->Execute("UPDATE fm_drawing set
+                               drawing_name    ='" . $drawing['drawing_name'] 
. "',
+                               title                   ='"     . 
$drawing['title'] . "',
+                               branch_id               ='" . 
$drawing['branch_id'] . "',
+                               status                  ='" . 
$drawing['status'] . "',
+                               category                ='" . 
$drawing['cat_id'] . "',
+                               drawing_date    ='" . $drawing['drawing_date'] 
. "',
+                               coordinator             ='" . 
$drawing['coordinator'] . "',
+                               descr                   ='" . $drawing['descr'] 
. "',
+                               version                 ='" . 
$drawing['version'] . "',
+                               location_code   ='" . $drawing['location_code'] 
. "',
+                               floor_id                ='" . 
$drawing['floor_id'] . "',
+                               vendor_id               ='" . 
$drawing['vendor_id'] . "',
+                               address                 ='" . $address
+                               . "' $vals WHERE id= '" . 
$drawing['drawing_id'] ."'");
+
+                       $receipt['drawing_id'] = $drawing['drawing_id'];
+                       $receipt['message'][] = array('msg'=>lang('drawing %1 
has been edited',"'".$drawing['drawing_name']."'"));
+                       return $receipt;
+
+               }
+
+               function delete($drawing_id )
+               {
+                       $dbresult = $GLOBALS['phpgw']->db->Execute("SELECT 
drawing_name FROM fm_drawing where id='$drawing_id'");
+
+                       $drawing_name = $dbresult->fields['drawing_name'];
+
+//echo $this->fakebase. SEP . 'drawing'. SEP . $drawing_name;
+                       if($this->vfs->file_exists(array(
+                                       'string' => $this->fakebase. SEP . 
'drawing'. SEP . $drawing_name,
+                                       'relatives' => Array(RELATIVE_NONE)
+                               )))
+                       {
+                               $this->vfs->override_acl = 1;
+
+                               if(!$this->vfs->rm (array(
+                                       'string' => $this->fakebase. SEP . 
'drawing'. SEP . $drawing_name,
+                                    'relatives' => array(
+                                         RELATIVE_NONE
+                                    )
+                               )))
+                               {
+                                       
$receipt['error'][]=array('msg'=>lang('failed to delete file') . ' :'. 
$this->fakebase. SEP . 'drawing'. SEP . $drawing_name);
+                               }
+                               else
+                               {
+                                       
$receipt['message'][]=array('msg'=>lang('file deleted') . ' :'. 
$this->fakebase. SEP . 'drawing'. SEP . $drawing_name);
+                               }
+                               $this->vfs->override_acl = 0;
+                       }
+
+                       $GLOBALS['phpgw']->db->Execute("DELETE FROM fm_drawing 
WHERE id='$drawing_id'");
+                       $GLOBALS['phpgw']->db->Execute("DELETE FROM 
fm_drawing_history  WHERE  history_record_id='$drawing_id'");
+               }
+       }
+?>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]