fmsystem-commits
[Top][All Lists]
Advanced

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

[Fmsystem-commits] [7754]


From: Erik Holm-Larsen
Subject: [Fmsystem-commits] [7754]
Date: Thu, 29 Sep 2011 12:29:57 +0000

Revision: 7754
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=7754
Author:   erikhl
Date:     2011-09-29 12:29:57 +0000 (Thu, 29 Sep 2011)
Log Message:
-----------


Modified Paths:
--------------
    trunk/controller/inc/class.socontrol_group.inc.php
    trunk/controller/inc/class.uicontrol_group.inc.php
    trunk/controller/templates/base/control_group.xsl

Modified: trunk/controller/inc/class.socontrol_group.inc.php
===================================================================
--- trunk/controller/inc/class.socontrol_group.inc.php  2011-09-29 09:22:26 UTC 
(rev 7753)
+++ trunk/controller/inc/class.socontrol_group.inc.php  2011-09-29 12:29:57 UTC 
(rev 7754)
@@ -89,14 +89,22 @@
        {
                $id = (int)$id;
                
-               $sql = "SELECT p.* FROM controller_control_group p WHERE p.id = 
" . $id;
+               $joins = "      {$this->left_join} fm_building_part ON 
(p.building_part_id = CAST(fm_building_part.id AS INT))";
+               $joins .= "     {$this->left_join} controller_procedure ON 
(p.procedure_id = controller_procedure.id)";
+               $joins .= "     {$this->left_join} controller_control_area ON 
(p.control_area_id = controller_control_area.id)";
+               
+               $sql = "SELECT p.*, fm_building_part.descr AS 
building_part_descr, controller_procedure.title as procedure_title, 
controller_control_area.title as control_area_name FROM 
controller_control_group p {$joins} WHERE p.id = " . $id;
                $this->db->limit_query($sql, 0, __LINE__, __FILE__, 1);
                $this->db->next_record();
                
                $control_group = new 
controller_control_group($this->unmarshal($this->db->f('id', true), 'int'));
                
$control_group->set_group_name($this->unmarshal($this->db->f('group_name', 
true), 'string'));
-               
$control_group->set_procedure_id($this->unmarshal($this->db->f('procedure_id', 
true), 'string'));
-               
$control_group->set_control_area_id($this->unmarshal($this->db->f('control_area_id',
 true), 'string'));
+               
$control_group->set_procedure_id($this->unmarshal($this->db->f('procedure_id'), 
'int'));
+               
$control_group->set_procedure_name($this->unmarshal($this->db->f('procedure_title'),
 'string'));
+               
$control_group->set_control_area_id($this->unmarshal($this->db->f('control_area_id'),
 'int'));
+               
$control_group->set_control_area_name($this->unmarshal($this->db->f('control_area_name'),
 'string'));
+               
$control_group->set_building_part_id($this->unmarshal($this->db->f('building_part_id'),
 'int'));
+               
$control_group->set_building_part_descr($this->unmarshal($this->db->f('building_part_descr'),
 'string'));
                
                return $control_group;
        }
@@ -145,15 +153,25 @@
                        return $results;
        }
        
-       function get_building_part_select_array()
+       function get_building_part_select_array($selected_building_part_id)
        {
             $results = array();
                        $results[] = array('id' =>  0,'name' => lang('Not 
selected'));
                        $this->db->query("SELECT id, descr as name FROM 
fm_building_part ORDER BY id ASC", __LINE__, __FILE__);
                        while ($this->db->next_record())
                        {
-                               $results[] = array('id' => $this->db->f('id', 
false),
-                                                          'name' => 
$this->db->f('name', false));
+                               $curr_id = $this->db->f('id', false);
+                               if($selected_building_part_id && 
$selected_building_part_id > 0 && $selected_building_part_id == $curr_id)
+                               {
+                                       $results[] = array('id' => 
$this->db->f('id', false),
+                                                                  'name' => 
$this->db->f('name', false),
+                                                                          
'selected' => 'yes');
+                               }
+                               else
+                               {
+                                       $results[] = array('id' => 
$this->db->f('id', false),
+                                                                  'name' => 
$this->db->f('name', false));
+                               }
                        }
                        return $results;
        }

Modified: trunk/controller/inc/class.uicontrol_group.inc.php
===================================================================
--- trunk/controller/inc/class.uicontrol_group.inc.php  2011-09-29 09:22:26 UTC 
(rev 7753)
+++ trunk/controller/inc/class.uicontrol_group.inc.php  2011-09-29 12:29:57 UTC 
(rev 7754)
@@ -224,25 +224,47 @@
        
                                foreach ($control_area_array as $control_area)
                                {
-                                       $control_area_options[] = array
-                                       (
-                                               'id'    => 
$control_area->get_id(),
-                                               'name'  => 
$control_area->get_title()
-                                                
-                                       );
+                                       
if($control_group->get_control_area_id() && $control_area->get_id() == 
$control_group->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()
+                                               );
+                                       }
                                }
        
                                foreach ($procedure_array as $procedure)
                                {
-                                       $procedure_options[] = array
-                                       (
-                                               'id'    => $procedure->get_id(),
-                                               'name'  => 
$procedure->get_title()
-                                                
-                                       );
+                                       if($control_group->get_procedure_id() 
&& $procedure->get_id() == $control_group->get_procedure_id())
+                                       {
+                                               $procedure_options[] = array
+                                               (
+                                                       'id'    => 
$procedure->get_id(),
+                                                       'name'  => 
$procedure->get_title(),
+                                                       'selected' => 'yes'
+                                               );
+                                       }
+                                       else
+                                       {
+                                               $procedure_options[] = array
+                                               (
+                                                       'id'    => 
$procedure->get_id(),
+                                                       'name'  => 
$procedure->get_title()
+                                               );
+                                       }
                                }
                                
-                               $building_part_options = 
$this->so->get_building_part_select_array();
+                               $building_part_options = 
$this->so->get_building_part_select_array($control_group->get_building_part_id());
                                
                                $control_group_array = 
$control_group->toArray();
        
@@ -254,7 +276,7 @@
                                        'procedure'                             
=> array('options' => $procedure_options),
                                        'control_area'                  => 
array('options' => $control_area_options),
                                        'control_group'                 => 
$control_group_array,
-                                       'building_part'                 => 
array('options' => $building_part_options),
+                                       'building_part'                 => 
array('building_part_options' => $building_part_options),
                                );
        
        
@@ -535,6 +557,7 @@
                                }
                                
                                $control_group_array = 
$control_group->toArray();
+                               var_dump($control_group_array);
        
                                $data = array
                                (

Modified: trunk/controller/templates/base/control_group.xsl
===================================================================
--- trunk/controller/templates/base/control_group.xsl   2011-09-29 09:22:26 UTC 
(rev 7753)
+++ trunk/controller/templates/base/control_group.xsl   2011-09-29 12:29:57 UTC 
(rev 7754)
@@ -39,7 +39,7 @@
                                                        </select>
                                                </xsl:when>
                                                <xsl:otherwise>
-                                                       <xsl:value-of 
select="control_group/control_area_id" />
+                                                       <xsl:value-of 
select="control_group/control_area_name" />
                                                </xsl:otherwise>
                                        </xsl:choose>
                                        </dd>
@@ -54,7 +54,7 @@
                                                        </select>
                                                </xsl:when>
                                                <xsl:otherwise>
-                                                       <xsl:value-of 
select="control_group/procedure_id" />
+                                                       <xsl:value-of 
select="control_group/procedure_name" />
                                                </xsl:otherwise>
                                        </xsl:choose>
                                        </dd>
@@ -65,11 +65,11 @@
                                        <xsl:choose>
                                                <xsl:when test="editable">
                                                        <select 
id="building_part" name="building_part">
-                                                               
<xsl:apply-templates select="building_part/options"/>
+                                                               
<xsl:apply-templates select="building_part/building_part_options"/>
                                                        </select>
                                                </xsl:when>
                                                <xsl:otherwise>
-                                                       <xsl:value-of 
select="control_group/building_part_descr" />
+                                                       <xsl:value-of 
select="control_group/building_part_id" /> - <xsl:value-of 
select="control_group/building_part_descr" />
                                                </xsl:otherwise>
                                        </xsl:choose>
                                        </dd>
@@ -105,3 +105,12 @@
        </option>
 </xsl:template>
 
+<xsl:template match="building_part_options">
+       <option value="{id}">
+               <xsl:if test="selected != 0">
+                       <xsl:attribute name="selected" value="selected" />
+               </xsl:if>
+               <xsl:value-of select="id"/> - <xsl:value-of 
disable-output-escaping="yes" select="name"/>
+       </option>
+</xsl:template>
+




reply via email to

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