fmsystem-commits
[Top][All Lists]
Advanced

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

[Fmsystem-commits] [11217] more on controller


From: Sigurd Nes
Subject: [Fmsystem-commits] [11217] more on controller
Date: Sat, 29 Jun 2013 15:01:40 +0000

Revision: 11217
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=11217
Author:   sigurdne
Date:     2013-06-29 15:01:39 +0000 (Sat, 29 Jun 2013)
Log Message:
-----------
more on controller

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

Modified: trunk/controller/inc/class.socontrol.inc.php
===================================================================
--- trunk/controller/inc/class.socontrol.inc.php        2013-06-28 13:39:14 UTC 
(rev 11216)
+++ trunk/controller/inc/class.socontrol.inc.php        2013-06-29 15:01:39 UTC 
(rev 11217)
@@ -941,7 +941,19 @@
                        }
                        if(isset($filters['control_areas']))
                        {
-                               $filter_clauses[] = 
"controller_control.control_area_id = 
{$this->marshal($filters['control_areas'],'int')}";
+//                             $filter_clauses[] = 
"controller_control.control_area_id = 
{$this->marshal($filters['control_areas'],'int')}";
+
+                               $cat_id = (int) $filters['control_areas'];
+                               $cats   = CreateObject('phpgwapi.categories', 
-1, 'controller', '.control');
+                               $cats->supress_info     = true;
+                               $cat_list       = $cats->return_sorted_array(0, 
false, '', '', '', false, $cat_id, false);
+                               $cat_filter = array($cat_id);
+                               foreach ($cat_list as $_category)
+                               {
+                                       $cat_filter[] = $_category['id'];
+                               }
+
+                               $filter_clauses[] = 
"controller_control.control_area_id IN (" .  implode(',', $cat_filter) .')';
                        }
                        if(isset($filters['responsibilities']))
                        {

Modified: trunk/controller/inc/class.socontrol_group.inc.php
===================================================================
--- trunk/controller/inc/class.socontrol_group.inc.php  2013-06-28 13:39:14 UTC 
(rev 11216)
+++ trunk/controller/inc/class.socontrol_group.inc.php  2013-06-29 15:01:39 UTC 
(rev 11217)
@@ -290,7 +290,19 @@
                        }
                        if(isset($filters['control_areas']))
                        {
-                               $filter_clauses[] = 
"controller_control_group.control_area_id = 
{$this->marshal($filters['control_areas'],'int')}";
+//                             $filter_clauses[] = 
"controller_control_group.control_area_id = 
{$this->marshal($filters['control_areas'],'int')}";
+
+                               $cat_id = (int) $filters['control_areas'];
+                               $cats   = CreateObject('phpgwapi.categories', 
-1, 'controller', '.control');
+                               $cats->supress_info     = true;
+                               $cat_list       = $cats->return_sorted_array(0, 
false, '', '', '', false, $cat_id, false);
+                               $cat_filter = array($cat_id);
+                               foreach ($cat_list as $_category)
+                               {
+                                       $cat_filter[] = $_category['id'];
+                               }
+
+                               $filter_clauses[] = 
"controller_control_group.control_area_id IN (" .  implode(',', $cat_filter) 
.')';
                        }
 
                        if(count($filter_clauses))

Modified: trunk/controller/inc/class.socontrol_item.inc.php
===================================================================
--- trunk/controller/inc/class.socontrol_item.inc.php   2013-06-28 13:39:14 UTC 
(rev 11216)
+++ trunk/controller/inc/class.socontrol_item.inc.php   2013-06-29 15:01:39 UTC 
(rev 11217)
@@ -312,7 +312,19 @@
                        }
                        if(isset($filters['control_areas']))
                        {
-                               $filter_clauses[] = 
"controller_control_item.control_area_id = 
{$this->marshal($filters['control_areas'],'int')}";
+//                             $filter_clauses[] = 
"controller_control_item.control_area_id = 
{$this->marshal($filters['control_areas'],'int')}";
+
+                               $cat_id = (int) $filters['control_areas'];
+                               $cats   = CreateObject('phpgwapi.categories', 
-1, 'controller', '.control');
+                               $cats->supress_info     = true;
+                               $cat_list       = $cats->return_sorted_array(0, 
false, '', '', '', false, $cat_id, false);
+                               $cat_filter = array($cat_id);
+                               foreach ($cat_list as $_category)
+                               {
+                                       $cat_filter[] = $_category['id'];
+                               }
+
+                               $filter_clauses[] = 
"controller_control_item.control_area_id IN (" .  implode(',', $cat_filter) 
.')';
                        }
                        
 

Modified: trunk/controller/inc/class.soprocedure.inc.php
===================================================================
--- trunk/controller/inc/class.soprocedure.inc.php      2013-06-28 13:39:14 UTC 
(rev 11216)
+++ trunk/controller/inc/class.soprocedure.inc.php      2013-06-29 15:01:39 UTC 
(rev 11217)
@@ -267,10 +267,21 @@
 
                function get_procedures_by_control_area($control_area_id)
                {
-                       $control_area_id = (int) $control_area_id;
+                       $cat_id = (int) $control_area_id;
+                       $cats   = CreateObject('phpgwapi.categories', -1, 
'controller', '.control');
+                       $cats->supress_info     = true;
+                       $cat_list       = $cats->return_sorted_array(0, false, 
'', '', '', false, $cat_id, false);
+                       $cat_filter = array($cat_id);
+                       foreach ($cat_list as $_category)
+                       {
+                               $cat_filter[] = $_category['id'];
+                       }
+
+                       $filter_control_area = 
"controller_procedure.control_area_id IN (" .  implode(',', $cat_filter) .')';
+
                        $results = array();
 
-                       $sql = "SELECT * FROM controller_procedure WHERE 
control_area_id={$control_area_id} AND end_date IS NULL ORDER BY title ASC";
+                       $sql = "SELECT * FROM controller_procedure WHERE 
{$filter_control_area} AND end_date IS NULL ORDER BY title ASC";
                        $this->db->query($sql);
 
                        while($this->db->next_record())
@@ -301,19 +312,42 @@
                        }
                }
 
-               function get_procedures($start = 0, $results = 1000, $sort = 
null, $dir = '', $query = null, $search_option = null, $filters = array())
+               function get_procedures($start = 0, $results = 0, $sort = null, 
$dir = '', $query = null, $search_option = null, $filters = array())
                {
-                       $results = array();
-
                        //$condition = $this->get_conditions($query, 
$filters,$search_option);
                        $order = $sort ? "ORDER BY $sort $dir ": '';
 
                        //$sql = "SELECT * FROM controller_procedure WHERE 
$condition $order";
 
                        $condition = "WHERE end_date IS NULL";
+
+                       if(isset($filters['control_areas']) && 
$filters['control_areas'])
+                       {
+                               $cat_id = (int) $filters['control_areas'];
+                               $cats   = CreateObject('phpgwapi.categories', 
-1, 'controller', '.control');
+                               $cats->supress_info     = true;
+                               $cat_list       = $cats->return_sorted_array(0, 
false, '', '', '', false, $cat_id, false);
+                               $cat_filter = array($cat_id);
+                               foreach ($cat_list as $_category)
+                               {
+                                       $cat_filter[] = $_category['id'];
+                               }
+
+                               $condition .= " AND control_area_id IN (" .  
implode(',', $cat_filter) .')';
+                       }
+
                        $sql = "SELECT * FROM controller_procedure $condition 
$order";
-                       $this->db->limit_query($sql, $start, __LINE__, 
__FILE__, $results);
 
+                       if($results)
+                       {
+                               $this->db->limit_query($sql, $start, __LINE__, 
__FILE__, $results);
+                       }
+                       else
+                       {
+                               $this->db->query($sql, __LINE__, __FILE__);
+                       }
+
+                       $values = array();
                        while ($this->db->next_record())
                        {
                                $procedure = new 
controller_procedure($this->unmarshal($this->db->f('id'), 'int'));
@@ -329,10 +363,10 @@
                                
$procedure->set_revision_no($this->unmarshal($this->db->f('revision_no'), 
'int'));
                                
$procedure->set_revision_date($this->unmarshal($this->db->f('revision_date'), 
'int'));
 
-                               $results[] = $procedure;
+                               $values[] = $procedure;
                        }
 
-                       return $results;
+                       return $values;
                }
 
                function get_procedures_as_array($start = 0, $results = 1000, 
$sort = null, $dir = '', $query = null, $search_option = null, $filters = 
array())
@@ -459,7 +493,19 @@
                        }
                        if(isset($filters['control_areas']))
                        {
-                               $filter_clauses[] = "procedure.control_area_id 
= {$this->marshal($filters['control_areas'], 'int')}";
+//                             $filter_clauses[] = "procedure.control_area_id 
= {$this->marshal($filters['control_areas'], 'int')}";
+
+                               $cat_id = (int) $filters['control_areas'];
+                               $cats   = CreateObject('phpgwapi.categories', 
-1, 'controller', '.control');
+                               $cats->supress_info     = true;
+                               $cat_list       = $cats->return_sorted_array(0, 
false, '', '', '', false, $cat_id, false);
+                               $cat_filter = array($cat_id);
+                               foreach ($cat_list as $_category)
+                               {
+                                       $cat_filter[] = $_category['id'];
+                               }
+
+                               $filter_clauses[] = "procedure.control_area_id 
IN (" .  implode(',', $cat_filter) .')';
                        }
 
                        if(count($filter_clauses))

Modified: trunk/controller/inc/class.uicontrol_group.inc.php
===================================================================
--- trunk/controller/inc/class.uicontrol_group.inc.php  2013-06-28 13:39:14 UTC 
(rev 11216)
+++ trunk/controller/inc/class.uicontrol_group.inc.php  2013-06-29 15:01:39 UTC 
(rev 11217)
@@ -201,9 +201,9 @@
                                'control_items'         => array('label' => 
lang('Control_items'), 'link' => '#control_items')
                        );
                        $tab_to_display = 'control_group';
-                       $control_group_id = phpgw::get_var('id');
+                       $control_group_id = phpgw::get_var('id', 'int');
                        $new_control_group = false;
-                       if(isset($control_group_id) && $control_group_id > 0)
+                       if( $control_group_id )
                        {
                                $control_group = 
$this->so->get_single($control_group_id);
                        }
@@ -331,12 +331,12 @@
                                        (
                                                'id'    => $cat_list['cat_id'],
                                                'name'  => $cat_list['name'],
+                                               'selected' => 
$control_group->get_control_area_id() == $cat_list['cat_id'] ? 1 : 0
                                        );
                                }
                                // END as categories
 
-                               //$control_area_array = 
$this->so_control_area->get_control_area_array();
-                               $procedure_array = 
$this->so_procedure->get_procedures(null,null,'title','ASC',null,null,null);
+                               $procedure_array = 
$this->so_procedure->get_procedures(0,0,'title','ASC',null,null,array('control_areas'
 => $control_group->get_control_area_id()));
 
                                if($this->flash_msgs)
                                {
@@ -344,27 +344,6 @@
                                        $msgbox_data = 
$GLOBALS['phpgw']->common->msgbox($msgbox_data);
                                }
 
-/*                             foreach ($control_area_array as $control_area)
-                               {
-                                       
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)
                                {
                                        if($control_group->get_procedure_id() 
&& $procedure->get_id() == $control_group->get_procedure_id())
@@ -478,8 +457,7 @@
                                }
                                // END as categories
 
-                               //$control_area_array = 
$this->so_control_area->get_control_area_array();
-                               $procedure_array = 
$this->so_procedure->get_procedures(null,null,'title','ASC',null,null,null);
+                               $procedure_array = 
$this->so_procedure->get_procedures(0,0,'title','ASC',null,null,array('control_areas'
 => $control_group->get_control_area_id()));
 
                                if($this->flash_msgs)
                                {

Modified: trunk/controller/templates/base/control_group/control_group.xsl
===================================================================
--- trunk/controller/templates/base/control_group/control_group.xsl     
2013-06-28 13:39:14 UTC (rev 11216)
+++ trunk/controller/templates/base/control_group/control_group.xsl     
2013-06-29 15:01:39 UTC (rev 11217)
@@ -117,7 +117,11 @@
                                                                                
                                        </select>
                                                                                
                                </xsl:when>
                                                                                
                                <xsl:otherwise>
-                                                                               
                                        <input type= 'text' 
name='attributes[{id}]' id='attribute_{id}' value = '{value}'/>                 
    
+                                                                               
                                        <input type= 'text' 
name='attributes[{id}]' id='attribute_{id}' value = '{value}'>
+                                                                               
                                                <xsl:attribute name="title" 
value="selected" >
+                                                                               
                                                        <xsl:text>Verdi eller 
formel - f.eks: date('Y') - 20</xsl:text>
+                                                                               
                                                </xsl:attribute>
+                                                                               
                                        </input>                        
                                                                                
                                </xsl:otherwise>
                                                                                
                        </xsl:choose>
                                                                                
                </td>




reply via email to

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