[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [7943] added control_area_id to procedure
From: |
Erik Holm-Larsen |
Subject: |
[Fmsystem-commits] [7943] added control_area_id to procedure |
Date: |
Wed, 26 Oct 2011 07:49:41 +0000 |
Revision: 7943
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=7943
Author: erikhl
Date: 2011-10-26 07:49:40 +0000 (Wed, 26 Oct 2011)
Log Message:
-----------
added control_area_id to procedure
Modified Paths:
--------------
trunk/controller/inc/class.soprocedure.inc.php
trunk/controller/inc/class.uiprocedure.inc.php
trunk/controller/inc/model/class.procedure.inc.php
trunk/controller/templates/base/procedure_item.xsl
Modified: trunk/controller/inc/class.soprocedure.inc.php
===================================================================
--- trunk/controller/inc/class.soprocedure.inc.php 2011-10-26 07:34:08 UTC
(rev 7942)
+++ trunk/controller/inc/class.soprocedure.inc.php 2011-10-26 07:49:40 UTC
(rev 7943)
@@ -39,7 +39,8 @@
'end_date',
'procedure_id',
'revision_no',
- 'revision_date'
+ 'revision_date',
+ 'control_area_id'
);
$values = array(
@@ -53,7 +54,8 @@
$this->marshal($procedure->get_end_date(), 'int'),
$this->marshal($procedure->get_procedure_id(), 'int'),
$this->marshal($procedure->get_revision_no(), 'int'),
- $this->marshal($procedure->get_revision_date(), 'int')
+ $this->marshal($procedure->get_revision_date(), 'int'),
+ $this->marshal($procedure->get_control_area_id(), 'int')
);
$result = $this->db->query('INSERT INTO controller_procedure ('
. join(',', $cols) . ') VALUES (' . join(',', $values) . ')',
__LINE__,__FILE__);
@@ -91,7 +93,8 @@
'end_date = ' .
$this->marshal($procedure->get_end_date(), 'int'),
'procedure_id = ' .
$this->marshal($procedure->get_procedure_id(), 'int'),
'revision_no = ' .
$this->marshal($procedure->get_revision_no(), 'int'),
- 'revision_date = ' .
$this->marshal($procedure->get_revision_date(), 'int')
+ 'revision_date = ' .
$this->marshal($procedure->get_revision_date(), 'int'),
+ 'control_area_id = ' .
$this->marshal($procedure->get_control_area_id(), 'int')
);
$result = $this->db->query('UPDATE controller_procedure SET ' .
join(',', $values) . " WHERE id=$id", __LINE__,__FILE__);
@@ -109,7 +112,8 @@
{
$id = (int)$id;
- $sql = "SELECT p.* FROM controller_procedure p WHERE p.id = " .
$id;
+ $joins = " {$this->left_join} controller_control_area ON
(p.control_area_id = controller_control_area.id)";
+ $sql = "SELECT p.*, controller_control_area.title AS
control_area_name FROM controller_procedure p {$joins} WHERE p.id = " . $id;
$this->db->limit_query($sql, 0, __LINE__, __FILE__, 1);
$this->db->next_record();
@@ -125,6 +129,8 @@
$procedure->set_procedure_id($this->unmarshal($this->db->f('procedure_id'),
'int'));
$procedure->set_revision_no($this->unmarshal($this->db->f('revision_no'),
'int'));
$procedure->set_revision_date($this->unmarshal($this->db->f('revision_date'),
'int'));
+
$procedure->set_control_area_id($this->unmarshal($this->db->f('control_aera_id',
'int')));
+
$procedure->set_control_area_name($this->unmarshal($this->db->f('control_area_name',
'string')));
return $procedure;
}
@@ -195,7 +201,9 @@
{
$results = array();
- $sql = "SELECT * FROM controller_procedure WHERE procedure_id =
{$id} ORDER BY end_date DESC";
+ $joins = " {$this->left_join} controller_control_area ON
(p.control_area_id = controller_control_area.id)";
+
+ $sql = "SELECT p.*, controller_control_area.title AS
control_area_name FROM controller_procedure p {$joins} WHERE procedure_id =
{$id} ORDER BY end_date DESC";
$this->db->limit_query($sql, $start, __LINE__, __FILE__,
$limit);
while ($this->db->next_record()) {
@@ -211,6 +219,8 @@
$procedure->set_procedure_id($this->unmarshal($this->db->f('procedure_id'),
'int'));
$procedure->set_revision_no($this->unmarshal($this->db->f('revision_no'),
'int'));
$procedure->set_revision_date(date($GLOBALS['phpgw_info']['user']['preferences']['common']['dateformat'],
$this->unmarshal($this->db->f('revision_date'), 'int')));
+
$procedure->set_control_area_id($this->unmarshal($this->db->f('control_area_id'),
'int'));
+
$procedure->set_control_area_name($this->unmarshal($this->db->f('control_area_name'),
'string'));
$results[] = $procedure->toArray();;
}
@@ -273,6 +283,10 @@
{
$filter_clauses[] = "controller_procedure.id =
{$this->marshal($filters[$this->get_id_field_name()],'int')}";
}
+ if(isset($filters['control_areas']))
+ {
+ $filter_clauses[] =
"controller_procedure.control_area_id =
{$this->marshal($filters['control_areas'], 'int')}";
+ }
if(count($filter_clauses))
{
@@ -280,6 +294,8 @@
}
$condition = join(' AND ', $clauses);
+
+ $joins = " {$this->left_join} controller_control_area ON
(controller_procedure.control_area_id = controller_control_area.id)";
$tables = "controller_procedure";
@@ -316,6 +332,8 @@
$procedure->set_procedure_id($this->unmarshal($this->db->f('procedure_id'),
'int'));
$procedure->set_revision_no($this->unmarshal($this->db->f('revision_no'),
'int'));
$procedure->set_revision_date($this->unmarshal($this->db->f('revision_date'),
'int'));
+
$procedure->set_control_area_id($this->unmarshal($this->db->f('control_aera_id',
'int')));
+
$procedure->set_control_area_name($this->unmarshal($this->db->f('control_area_name',
'string')));
}
return $procedure;
Modified: trunk/controller/inc/class.uiprocedure.inc.php
===================================================================
--- trunk/controller/inc/class.uiprocedure.inc.php 2011-10-26 07:34:08 UTC
(rev 7942)
+++ trunk/controller/inc/class.uiprocedure.inc.php 2011-10-26 07:49:40 UTC
(rev 7943)
@@ -1,12 +1,14 @@
<?php
phpgw::import_class('controller.uicommon');
phpgw::import_class('controller.soprocedure');
+ phpgw::import_class('controller.socontrol_area');
include_class('controller', 'procedure', 'inc/model/');
class controller_uiprocedure extends controller_uicommon
{
private $so;
+ private $so_control_area;
public $public_functions = array
(
@@ -22,6 +24,7 @@
parent::__construct();
$this->so = CreateObject('controller.soprocedure');
+ $this->so_control_area =
CreateObject('controller.socontrol_area');
$GLOBALS['phpgw_info']['flags']['menu_selection'] =
"controller::procedure";
//$this->bo = CreateObject('property.boevent',true);
}
@@ -45,6 +48,11 @@
'value' =>
lang('f_new_procedure'),
'href' =>
self::link(array('menuaction' => 'controller.uiprocedure.add'))
),
+ array('type' =>
'filter',
+ 'name' =>
'control_areas',
+ 'text' => lang('Control_area').':',
+ 'list' =>
$this->so_control_area->get_control_area_select_array(),
+ ),
array('type' => 'text',
'text' => lang('search'),
'name' =>
'query'
@@ -77,6 +85,11 @@
'sortable' => false
),
array(
+ 'key' => 'control_area',
+ 'label' =>
lang('Control area'),
+ 'sortable' => false
+ ),
+ array(
'key' =>
'revision_date',
'label' =>
lang('Procedure revision date'),
'sortable' => true
@@ -119,6 +132,7 @@
$procedure->set_start_date(strtotime(phpgw::get_var('start_date_hidden')));
$procedure->set_end_date(strtotime(phpgw::get_var('end_date_hidden')));
$procedure->set_revision_date(strtotime(phpgw::get_var('revision_date_hidden')));
+
$procedure->set_control_area_id(phpgw::get_var('control_area'));
if(isset($procedure_id) &&
$procedure_id > 0)
{
@@ -170,6 +184,7 @@
$procedure->set_attachment(phpgw::get_var('attachment'));
$procedure->set_start_date(strtotime(phpgw::get_var('start_date_hidden')));
$procedure->set_end_date(strtotime(phpgw::get_var('end_date_hidden')));
+
$procedure->set_control_area_id(phpgw::get_var('control_area'));
if(isset($procedure_id) &&
$procedure_id > 0)
{
@@ -211,7 +226,27 @@
$msgbox_data =
$GLOBALS['phpgw']->common->msgbox_data($this->flash_msgs);
$msgbox_data =
$GLOBALS['phpgw']->common->msgbox($msgbox_data);
}
-
+ $control_area_array =
$this->so_control_area->get_control_area_array();
+ foreach ($control_area_array as $control_area)
+ {
+ if($procedure->get_control_area_id() &&
$control_area->get_id() == $procedure->get_control_area_id())
+ {
+ $control_area_options[] = array
+ (
+ 'id' =>
$control_area->get_id(),
+ 'name' =>
$control_area->get_title(),
+ 'selected' => 'yes'
+ );
+ }
+ else
+ {
+ $control_area_options[] = array
+ (
+ 'id' =>
$control_area->get_id(),
+ 'name' =>
$control_area->get_title()
+ );
+ }
+ }
$procedure_array = $procedure->toArray();
//_debug_array($procedure_array);
@@ -224,6 +259,7 @@
'img_go_home' =>
'rental/templates/base/images/32x32/actions/go-home.png',
'editable'
=> true,
'procedure'
=> $procedure_array,
+ 'control_area'
=> array('options' => $control_area_options),
);
@@ -342,6 +378,12 @@
'filters' => $filters
);
+ $ctrl_area = phpgw::get_var('control_areas');
+ if(isset($ctrl_area) && $ctrl_area > 0)
+ {
+ $filters['control_areas'] = $ctrl_area;
+ }
+
if($GLOBALS['phpgw_info']['user']['preferences']['common']['maxmatchs'] > 0)
{
$user_rows_per_page =
$GLOBALS['phpgw_info']['user']['preferences']['common']['maxmatchs'];
@@ -377,7 +419,7 @@
{
default: // ... all composites, filters (active
and vacant)
phpgwapi_cache::session_set('controller', 'procedure_query', $search_for);
- $filters = array();
+ //$filters = array();
$result_objects =
$this->so->get($start_index, $num_of_objects, $sort_field, $sort_ascending,
$search_for, $search_type, $filters);
$object_count =
$this->so->get_count($search_for, $search_type, $filters);
break;
Modified: trunk/controller/inc/model/class.procedure.inc.php
===================================================================
--- trunk/controller/inc/model/class.procedure.inc.php 2011-10-26 07:34:08 UTC
(rev 7942)
+++ trunk/controller/inc/model/class.procedure.inc.php 2011-10-26 07:49:40 UTC
(rev 7943)
@@ -17,6 +17,8 @@
protected $procedure_id;
protected $revision_no;
protected $revision_date;
+ protected $control_area_id;
+ protected $control_area_name;
/**
* Constructor. Takes an optional ID. If a procedure is
created from outside
@@ -113,6 +115,20 @@
public function get_revision_date() { return
$this->revision_date; }
+ public function set_control_area_id($control_area_id)
+ {
+ $this->control_area_id = $control_area_id;
+ }
+
+ public function get_control_area_id() { return
$this->control_area_id; }
+
+ public function set_control_area_name($control_area_name)
+ {
+ $this->control_area_name = $control_area_name;
+ }
+
+ public function get_control_area_name() { return
$this->control_area_name; }
+
/**
* Get a static reference to the storage object associated with
this model object
*
@@ -141,7 +157,8 @@
'end_date' => $this->get_end_date(),
'procedure_id' =>
$this->get_procedure_id(),
'revision_no' =>
$this->get_revision_no(),
- 'revision_date' =>
($this->get_revision_date())?date($GLOBALS['phpgw_info']['user']['preferences']['common']['dateformat'],
$this->get_revision_date()):''
+ 'revision_date' =>
($this->get_revision_date())?date($GLOBALS['phpgw_info']['user']['preferences']['common']['dateformat'],
$this->get_revision_date()):'',
+ 'control_area' =>
$this->get_control_area_name()
);
}
}
Modified: trunk/controller/templates/base/procedure_item.xsl
===================================================================
--- trunk/controller/templates/base/procedure_item.xsl 2011-10-26 07:34:08 UTC
(rev 7942)
+++ trunk/controller/templates/base/procedure_item.xsl 2011-10-26 07:49:40 UTC
(rev 7943)
@@ -61,6 +61,21 @@
</xsl:choose>
</dd>
<dt>
+ <label
for="control_area"><xsl:value-of select="php:function('lang','Control area')"
/></label>
+ </dt>
+ <dd>
+ <xsl:choose>
+ <xsl:when test="editable">
+ <select
id="control_area" name="control_area">
+
<xsl:apply-templates select="control_area/options"/>
+ </select>
+ </xsl:when>
+ <xsl:otherwise>
+ <xsl:value-of
select="procedure/control_area_name" />
+ </xsl:otherwise>
+ </xsl:choose>
+ </dd>
+ <dt>
<label
for="description"><xsl:value-of select="php:function('lang','Procedure
description')" /></label>
</dt>
<dd>
@@ -184,4 +199,13 @@
</xsl:for-each>
</tr>
</xsl:for-each>
+ </xsl:template>
+
+ <xsl:template match="options">
+ <option value="{id}">
+ <xsl:if test="selected != 0">
+ <xsl:attribute name="selected" value="selected"
/>
+ </xsl:if>
+ <xsl:value-of disable-output-escaping="yes"
select="name"/>
+ </option>
</xsl:template>
\ No newline at end of file
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [7943] added control_area_id to procedure,
Erik Holm-Larsen <=