fmsystem-commits
[Top][All Lists]
Advanced

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

[Fmsystem-commits] [10977] property: condition survey / request


From: Sigurd Nes
Subject: [Fmsystem-commits] [10977] property: condition survey / request
Date: Mon, 11 Mar 2013 14:53:01 +0000

Revision: 10977
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=10977
Author:   sigurdne
Date:     2013-03-11 14:53:01 +0000 (Mon, 11 Mar 2013)
Log Message:
-----------
property: condition survey / request

Modified Paths:
--------------
    trunk/property/inc/class.socondition_survey.inc.php
    trunk/property/inc/class.sorequest.inc.php
    trunk/property/inc/class.uicondition_survey.inc.php
    trunk/property/inc/hook_config.inc.php
    trunk/property/templates/base/config.tpl
    trunk/property/templates/base/css/base.css

Modified: trunk/property/inc/class.socondition_survey.inc.php
===================================================================
--- trunk/property/inc/class.socondition_survey.inc.php 2013-03-11 09:09:47 UTC 
(rev 10976)
+++ trunk/property/inc/class.socondition_survey.inc.php 2013-03-11 14:53:01 UTC 
(rev 10977)
@@ -295,12 +295,16 @@
                                throw new 
Exception('property_socondition_survey::import - condition survey import 
categories not configured');
                        }
 
-
                        
if(!isset($config->config_data['condition_survey_initial_status']) || 
!$config->config_data['condition_survey_initial_status'])
                        {
                                throw new 
Exception('property_socondition_survey::import - condition survey initial 
status not configured');
                        }
 
+                       
if(!isset($config->config_data['condition_survey_hidden_status']) || 
!$config->config_data['condition_survey_hidden_status'])
+                       {
+                               throw new 
Exception('property_socondition_survey::import - condition survey hidden status 
not configured');
+                       }
+
                        $cats   = CreateObject('phpgwapi.categories', -1, 
'property', '.project');
                        $cats->supress_info = true;
                        $categories = $cats->return_sorted_array(0, false, '', 
'', '', $globals = true, '', $use_acl = false);
@@ -314,6 +318,19 @@
                        3 => 'Users/Customers responsibility',
                );
 */
+
+
+               $import_type_responsibility = array();
+               
+               $import_type_responsibility[1] = 1; //hidden => 
responsible_unit 1
+               $import_type_responsibility[2] = 1; //'Normal import' => 
responsible_unit 1
+               $import_type_responsibility[3] = 2; //'Customers' => 
responsible_unit 2
+               $import_type_responsibility[4] = 3; //'Customers' => 
responsible_unit 3
+               $import_type_responsibility[5] = 4; //'Customers' => 
responsible_unit 3
+               $import_type_responsibility[6] = 5; //'Customers' => 
responsible_unit 3
+               $import_type_responsibility[7] = 6; //'Customers' => 
responsible_unit 3
+               $import_type_responsibility[8] = 7; //'Customers' => 
responsible_unit 3
+
 /*
                $cats_candidates = array
                (
@@ -331,8 +348,8 @@
                                $_update_buildingpart = 
array("filter_{$filter_key}" => 1);
                        }
 
-
-_debug_array($import_data);die();
+//_debug_array($import_data);die();
+                       $origin_id = 
$GLOBALS['phpgw']->locations->get_id('property', '.project.condition_survey');
                        foreach ($import_data as $entry)
                        {
 
@@ -375,19 +392,32 @@
                                        $request['street_number']               
        = $location_data['street_number'];
                                        $request['location']                    
        = $location;
                                        $request['location_code']               
        = $survey['location_code'];
-                                       $request['origin_id']                   
        = $GLOBALS['phpgw']->locations->get_id('property', 
'.project.condition_survey');
+                                       $request['origin_id']                   
        = $origin_id;
                                        $request['origin_item_id']              
        = (int)$survey['id'];
                                        $request['title']                       
                = substr($entry['title'], 0, 255);
                                        $request['descr']                       
                = $entry['descr'];
                                        $request['building_part']               
        = $entry['building_part'];
                                        $request['coordinator']                 
        = $survey['coordinator_id'];
-                                       $request['status']                      
                = $config->config_data['condition_survey_initial_status'];
+
+                                       if($entry['import_type'] == 1)
+                                       {
+                                               $request['status']              
                = $config->config_data['condition_survey_hidden_status'];
+                                       }
+                                       else
+                                       {
+                                               $request['status']              
                = $config->config_data['condition_survey_initial_status'];      
                                
+                                       }
+
                                        $request['amount_investment']           
= $entry['amount_investment'];
                                        $request['amount_operation']            
= $entry['amount_operation'];
                                        $request['amount_potential_grants']     
= $entry['amount_potential_grants'];
 
-                                       $request['planning_value']              
= $entry['amount'];
-                                       $request['planning_date']               
= mktime(13,0,0,7,1, $entry['due_year']?$entry['due_year']:date('Y'));
+                                       $request['planning_value']              
        = $entry['amount'];
+                                       $request['planning_date']               
        = mktime( 13,0,0,7,1, $entry['due_year'] ? (int) $entry['due_year'] : 
date('Y') );
+                                       $request['recommended_year']            
= $entry['due_year'] ? (int)$entry['due_year'] : date('Y');
+
+                                       $request['responsible_unit']            
= (int)$import_type_responsibility[$entry['import_type']];
+
                                        $request['condition']                   
= array
                                        (
                                                array
@@ -399,6 +429,7 @@
                                                )
                                        );
 
+//_debug_array($request);
                                        $sorequest->add($request, 
$values_attribute = array());
                                }
                        }

Modified: trunk/property/inc/class.sorequest.inc.php
===================================================================
--- trunk/property/inc/class.sorequest.inc.php  2013-03-11 09:09:47 UTC (rev 
10976)
+++ trunk/property/inc/class.sorequest.inc.php  2013-03-11 14:53:01 UTC (rev 
10977)
@@ -206,8 +206,11 @@
                        {
                                switch($order)
                                {
+                                       case 'recommended_year':
+                                               $ordermethod = " ORDER BY 
recommended_year $sort";
+                                               break;
                                        case 'planned_year':
-                                               $ordermethod = " ORDER BY 
planned_year $sort";
+                                               $ordermethod = " ORDER BY 
start_date $sort";
                                                break;
                                        case 'url':
                                                $ordermethod = " ORDER BY 
fm_request.id $sort";
@@ -232,17 +235,20 @@
                        $sql = "SELECT DISTINCT fm_request.id as 
request_id,fm_request_status.descr as status,fm_request.building_part,"
                        . " 
fm_request.start_date,fm_request.closed_date,fm_request.in_progress_date,fm_request.category
 as cat_id,"
                        . " fm_request.delivered_date,fm_request.title as 
title,max(fm_request_condition.degree) as condition_degree,"
-                       . " sum(fm_request_planning.amount) as planned_budget, 
fm_request.amount_investment,"
-                       . " 
fm_request.amount_operation,fm_request.amount_potential_grants,fm_request.score,min(fm_request_planning.date)
 as planned_year"
-                       . " FROM (((( fm_request  LEFT JOIN fm_request_status 
ON fm_request.status = fm_request_status.id)"
-                       . " LEFT JOIN fm_request_planning ON fm_request.id = 
fm_request_planning.request_id)"
-                       . " LEFT JOIN fm_request_consume ON fm_request.id = 
fm_request_consume.request_id)"
+       //              . " sum(fm_request_planning.amount) as planned_budget,"
+                       . " fm_request.amount_investment,"
+                       . " 
fm_request.amount_operation,fm_request.amount_potential_grants,fm_request.score,"
+                       . " fm_request.recommended_year,"
+                       . " fm_request.start_date"
+                       . " FROM (( fm_request  LEFT JOIN fm_request_status ON 
fm_request.status = fm_request_status.id)"
+       //              . " LEFT JOIN fm_request_planning ON fm_request.id = 
fm_request_planning.request_id)"
+       //              . " LEFT JOIN fm_request_consume ON fm_request.id = 
fm_request_consume.request_id)"
                        . " LEFT JOIN fm_request_condition ON fm_request.id = 
fm_request_condition.request_id)"
                        . " {$filtermethod}"
                        . " GROUP BY fm_request_status.descr,"
                        . " 
building_part,fm_request.start_date,fm_request.entry_date,fm_request.closed_date,"
                        . " 
fm_request.in_progress_date,fm_request.delivered_date,title,amount_investment,amount_operation,amount_potential_grants,score,fm_request.id,fm_request_status.descr";
-
+//_debug_array($sql);
                        $sql2 = "SELECT count(*) as cnt, sum(amount_investment) 
as sum_investment, sum(amount_operation) as sum_operation, 
sum(amount_potential_grants) as sum_potential_grants FROM ({$sql}) as t";
 
                        $this->_db->query($sql2,__LINE__,__FILE__);
@@ -252,8 +258,8 @@
                        $this->sum_operation    = 
$this->_db->f('sum_operation');
                        $this->sum_potential_grants     = 
$this->_db->f('sum_potential_grants');
        
-//_debug_array($sql);
 
+
 /*
                        $sql3 = "SELECT sum(fm_request_consume.amount) as 
sum_consume  FROM {$sql_arr[1]}";
                        $this->_db->query($sql3,__LINE__,__FILE__);
@@ -286,7 +292,8 @@
                                        'amount_potential_grants'       => 
$this->_db->f('amount_potential_grants'),
                                        'planned_budget'                        
=> $this->_db->f('planned_budget'),
                                        'score'                                 
        => $this->_db->f('score'),
-                                       'planned_year'                          
=> $this->_db->f('planned_year') ? date('Y', $this->_db->f('planned_year')) : 
'',
+                                       'recommended_year'                      
=> $this->_db->f('recommended_year') ?  $this->_db->f('recommended_year') : '',
+                                       'planned_year'                          
=> $this->_db->f('start_date') ? date('Y', $this->_db->f('start_date')) : '',
                                        'cat_id'                                
        => $this->_db->f('cat_id'),
                                );
                        }
@@ -302,7 +309,7 @@
                        $order                                  = 
isset($data['order'])?$data['order']:'';
                        $cat_id                                 = 
isset($data['cat_id'])?$data['cat_id']:0;
                        $property_cat_id                = 
isset($data['property_cat_id'])?$data['property_cat_id']:0;
-                       $status_id                              = 
isset($data['status_id']) && $data['status_id'] ? $data['status_id']:'';
+                       $status_id                              = 
isset($data['status_id']) && $data['status_id'] ? $data['status_id'] : 'open';
                        $district_id                    = 
isset($data['district_id']) && $data['district_id'] ? $data['district_id']:0;
                        $project_id                             = 
isset($data['project_id'])?$data['project_id']:'';
                        $allrows                                = 
isset($data['allrows'])?$data['allrows']:'';

Modified: trunk/property/inc/class.uicondition_survey.inc.php
===================================================================
--- trunk/property/inc/class.uicondition_survey.inc.php 2013-03-11 09:09:47 UTC 
(rev 10976)
+++ trunk/property/inc/class.uicondition_survey.inc.php 2013-03-11 14:53:01 UTC 
(rev 10977)
@@ -400,7 +400,8 @@
                                array('key' => 
'amount_operation','label'=>lang('operation'),'sortable'=>true,'resizeable'=>true,'formatter'=>'YAHOO.portico.FormatterAmount0'),
                                array('key' => 
'amount_potential_grants','label'=>lang('potential 
grants'),'sortable'=>true,'resizeable'=>true,'formatter'=>'YAHOO.portico.FormatterAmount0'),
 //                             array('key' => 
'planned_budget','label'=>lang('planned 
budget'),'sortable'=>true,'resizeable'=>true,'formatter'=>'YAHOO.portico.FormatterAmount0'),
-                               array('key' => 
'planned_year','label'=>lang('year'),'sortable'=>true,'resizeable'=>true),
+                               array('key' => 
'recommended_year','label'=>lang('recommended 
year'),'sortable'=>true,'resizeable'=>true),
+                               array('key' => 
'planned_year','label'=>lang('planned 
year'),'sortable'=>true,'resizeable'=>true),
                                array('key' => 
'related','label'=>lang('related'),'sortable'=>false,'resizeable'=>true),
                        );
 

Modified: trunk/property/inc/hook_config.inc.php
===================================================================
--- trunk/property/inc/hook_config.inc.php      2013-03-11 09:09:47 UTC (rev 
10976)
+++ trunk/property/inc/hook_config.inc.php      2013-03-11 14:53:01 UTC (rev 
10977)
@@ -419,3 +419,31 @@
                return $out;
        }
 
+       /**
+       * Get HTML listbox with initial status that are to be set when 
condition survey are imported
+       *
+       * @param $config
+       * @return string HTML listboxes to be placed in a table
+       */
+       function condition_survey_hidden_status($config)
+       {
+               $status_entries = 
execMethod('property.sorequest.select_status_list');
+
+               $status_assigned = 
isset($config['condition_survey_hidden_status']) ? 
$config['condition_survey_hidden_status'] : array();
+
+               $out = '<option value="">' . lang('none selected') . 
'</option>' . "\n";
+               foreach ( $status_entries as $status)
+               {
+                       $selected = '';
+                       if ( $status_assigned == $status['id'])
+                       {
+                               $selected = 'selected =  "selected"';
+                       }
+
+                       $out .=  <<<HTML
+                       <option 
value='{$status['id']}'{$selected}>{$status['name']}</option>
+HTML;
+               }
+
+               return $out;
+       }

Modified: trunk/property/templates/base/config.tpl
===================================================================
--- trunk/property/templates/base/config.tpl    2013-03-11 09:09:47 UTC (rev 
10976)
+++ trunk/property/templates/base/config.tpl    2013-03-11 14:53:01 UTC (rev 
10977)
@@ -522,6 +522,14 @@
                </td>
        </tr>
 
+       <tr class="row_off">
+               
<td>{lang_hidden_status_that_are_to_be_set_when_condition_survey_are_imported}:</td>
+               <td>
+                       <select 
name="newsettings[condition_survey_hidden_status]">
+                               {hook_condition_survey_hidden_status}
+                       </select>
+               </td>
+       </tr>
 
                <!--
                groupnotification

Modified: trunk/property/templates/base/css/base.css
===================================================================
--- trunk/property/templates/base/css/base.css  2013-03-11 09:09:47 UTC (rev 
10976)
+++ trunk/property/templates/base/css/base.css  2013-03-11 14:53:01 UTC (rev 
10977)
@@ -133,12 +133,17 @@
   vertical-align: middle;
 }
 fieldset {
-  margin-top: 0.5em;   
+  margin-top: 0.5em;
+  border:1px solid #cccccc;
 }
 
 legend {
+  padding: 0.2em 0.5em;
+  border:1px solid #cccccc;
+/*  color:#cccccc;*/
+  font-size:90%;
+  text-align:right;
   font-weight: bolder;
-  margin-bottom: 0.2em;        
 }
 
 label {




reply via email to

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