fmsystem-commits
[Top][All Lists]
Advanced

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

[Fmsystem-commits] [7725] Added more functions to the sequence register


From: Torstein
Subject: [Fmsystem-commits] [7725] Added more functions to the sequence register control items
Date: Tue, 27 Sep 2011 05:53:39 +0000

Revision: 7725
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=7725
Author:   vator
Date:     2011-09-27 05:53:39 +0000 (Tue, 27 Sep 2011)
Log Message:
-----------
Added more functions to the sequence register control items

Modified Paths:
--------------
    trunk/controller/inc/class.uicontrol.inc.php

Modified: trunk/controller/inc/class.uicontrol.inc.php
===================================================================
--- trunk/controller/inc/class.uicontrol.inc.php        2011-09-27 05:51:01 UTC 
(rev 7724)
+++ trunk/controller/inc/class.uicontrol.inc.php        2011-09-27 05:53:39 UTC 
(rev 7725)
@@ -5,10 +5,12 @@
        phpgw::import_class('controller.socontrol_group');
        phpgw::import_class('controller.socontrol_area');
        phpgw::import_class('controller.socontrol_item');
+       phpgw::import_class('controller.socontrol_item_list');
        phpgw::import_class('controller.soprocedure');
        
        include_class('controller', 'control', 'inc/model/');
        include_class('controller', 'control_area', 'inc/model/');
+       include_class('controller', 'control_item_list', 'inc/model/');
 
        class controller_uicontrol extends controller_uicommon
        {
@@ -17,7 +19,8 @@
                private $so_proc;
                private $so_control_group;
                private $so_control_area; 
-               private $so_control_item; 
+               private $so_control_item;
+               private $so_control_item_list;
                
                public $public_functions = array
                (
@@ -34,6 +37,7 @@
                        $this->so_control_group = 
CreateObject('controller.socontrol_group');
                        $this->so_control_area = 
CreateObject('controller.socontrol_area');
                        $this->so_control_item = 
CreateObject('controller.socontrol_item');
+                       $this->so_control_item_list = 
CreateObject('controller.socontrol_item_list');
                        
                        self::set_active_menu('controller::control');
                }
@@ -52,6 +56,10 @@
                        {
                                $this->edit_control_items();
                        }
+                       else if( isset($_POST['show_receipt']) )
+                       {
+                               $this->show_receipt();
+                       }
                        else{
                                $this->view_control();
                        }
@@ -109,8 +117,8 @@
                                'control_items'         => array('label' => 
lang('Control_items'), 'link' => '#control_items')
                        );
                        
-                       $control_area_id = phpgw::get_var('control_area_id');
-                               
+                       $control_area_id = phpgw::get_var('control_area_id', 
'int');    
+                       
                        if(isset($control)) // Edit control
                        {
                                $control = $this->populate($control);
@@ -118,7 +126,7 @@
                        }else{
                                $new_control = new controller_control();
                                $control = $this->populate($new_control);
-                               //$this->so->add($control);
+                               $saved_control_id = $this->so->add($control);
                        }
                        
                        $control_group_array = 
$this->so_control_group->get_control_groups($control_area_id);
@@ -138,7 +146,8 @@
                                'value_id'                                      
=> !empty($control) ? $control->get_id() : 0,
                                'img_go_home'                           => 
'rental/templates/base/images/32x32/actions/go-home.png',
                                'editable'                                      
=> true,
-                               'title'                                         
=> $control_area->get_title(),
+                               'control_id'                            => 
$saved_control_id,
+                               'control_area'                          => 
$control_area->toArray(),
                                'control_groups'                        => 
$control_groups                                      
                        );
                        
@@ -150,16 +159,19 @@
                        
                        $tabs = array
                        (
-                               'details'       => array('label' => 
lang('Details'), 'link' => '#details'),
-                               'control_groups'                => 
array('label' => lang('Control_groups'), 'link' => '#control_groups'),
+                               'details'                       => 
array('label' => lang('Details'), 'link' => '#details'),
+                               'control_groups'        => array('label' => 
lang('Control_groups'), 'link' => '#control_groups'),
                                'control_items'         => array('label' => 
lang('Control_items'), 'link' => '#control_items')
                        );
                        
+                       $control_id = phpgw::get_var('control_id', 'int');      
+                       
                        $control_group_ids = array();
                        $control_group_ids = 
phpgw::get_var('control_group_ids');
 
                        $control_items_2D = array();
                        
+                       // Fetching control items for each control group and 
populate array that is sent to xslt template
                        foreach ($control_group_ids as $control_group_id)
                        {       
                                $control_items_array = 
$this->so_control_item->get_control_items($control_group_id);    
@@ -173,7 +185,7 @@
 
                                $control_group = 
$this->so_control_group->get_single($control_group_id);
                                
-                               $control_items_2D[] = array("group_name" => 
$control_group->get_group_name(), "control_item" => $control_items);
+                               $control_items_2D[] = array("control_group" => 
$control_group->toArray(), "control_item" => $control_items);
                        }
                        
                        phpgwapi_yui::tabview_setup('control_tabview');
@@ -183,30 +195,152 @@
                                'tabs'                                  => 
phpgwapi_yui::tabview_generate($tabs, 'control_items'),
                                'value_id'                              => 
!empty($control) ? $control->get_id() : 0,
                                'img_go_home'                   => 
'rental/templates/base/images/32x32/actions/go-home.png',
-                               'editable'                              => true,
+                               'choose_control_items'  => true,
+                               'control_id'                    => $control_id,
                                'control_items'                 => 
$control_items_2D                    
                        );
                        
                        self::add_javascript('controller', 'yahoo', 
'control_tabs.js');
+                       self::add_javascript('controller', 'controller', 
'jquery.js');
+                       self::add_javascript('controller', 'controller', 
'custom_ui.js');
                        self::render_template_xsl(array('control_tabs', 
'control', 'control_groups', 'control_items'), $data);
                }
                
+               public function edit_control_items(){
+                       
+                       //Setting up tab menu
+                       $tabs = array
+                       (
+                               'details'                       => 
array('label' => lang('Details'), 'link' => '#details'),
+                               'control_groups'        => array('label' => 
lang('Control_groups'), 'link' => '#control_groups'),
+                               'control_items'         => array('label' => 
lang('Control_items'), 'link' => '#control_items')
+                       );
+                               
+                       $control_id = phpgw::get_var('control_id');
+                       
+                       $control_item_ids = array();
+                       // Fetching selected control items
+                       $control_tag_ids = phpgw::get_var('control_tag_ids');
+                       
+                       // Saving control items
+                       foreach ($control_tag_ids as $control_item_tag)
+                       {       
+                               $control_item_id = substr($control_item_tag, 2, 
2);
+                               
+                               $control_item_list = new 
controller_control_item_list();
+                               $control_item_list->set_control_id($control_id);
+                               
$control_item_list->set_control_item_id($control_item_id);
+                                                               
+                               
$this->so_control_item_list->add($control_item_list);
+                       }
+                       
+                       $control_group_ids = array();
+                       
+                       //Putting control_group_ids in array
+                       foreach ($control_tag_ids as $control_tag)
+                       {       
+                               $control_group_id = substr($control_tag, 0, 1);
+
+                               if(!in_array($control_group_id, 
$control_group_ids))
+                                       $control_group_ids[] = 
$control_group_id;  
+                       }
+                       
+                       $control_receipt_items = array();
+                       
+                       //Populating array that is displayed as receipe
+                       foreach ($control_group_ids as $control_group_id)
+                       {       
+                               $saved_control_items = 
$this->so_control_item->get_control_items_by_control_id_and_group($control_id, 
$control_group_id);
+                               
+                               $control_group = 
$this->so_control_group->get_single($control_group_id);
+                               
+                               $control_item = 
$this->so_control_item->get_single($control_item_id);
+                               
+                               $control_receipt_items[] = 
array("control_group" => $control_group->toArray(), "control_items" => 
$saved_control_items);  
+                       }
+                       
+                       var_dump("Skriver ut control_receipt");
+                       print_r($control_receipt_items);
+                                               
+                       phpgwapi_yui::tabview_setup('control_tabview');
+                                       
+                       $data = array
+                       (
+                               'tabs'                                  => 
phpgwapi_yui::tabview_generate($tabs, 'control_items'),
+                               'value_id'                              => 
!empty($control) ? $control->get_id() : 0,
+                               'img_go_home'                   => 
'rental/templates/base/images/32x32/actions/go-home.png',
+                               'control_id'                    => $control_id,
+                               'control_receipt_items' => 
$control_receipt_items                       
+                       );
+                       
+                       self::add_javascript('controller', 'yahoo', 
'control_tabs.js');
+                       self::add_javascript('controller', 'controller', 
'jquery.js');
+                       self::add_javascript('controller', 'controller', 
'custom_ui.js');
+                       self::render_template_xsl(array('control_tabs', 
'control', 'control_groups', 'control_items'), $data);
+
+               }
                
+               public function show_receipt(){
+                       
+                       $tabs = array
+                       (
+                               'details'                       => 
array('label' => lang('Details'), 'link' => '#details'),
+                               'control_groups'        => array('label' => 
lang('Control_groups'), 'link' => '#control_groups'),
+                               'control_items'         => array('label' => 
lang('Control_items'), 'link' => '#control_items')
+                       );                      
+                       
+                       $control_id = phpgw::get_var('control_id');
+                       
+                       $control_item_ids = array();
+                       $control_item_ids = phpgw::get_var('control_item_ids');
+                       
+                       
+                       
+                       foreach ($control_item_ids as $control_item_id)
+                       {       
+                               $control_item = 
$this->so_control_item->get_single($control_item_id);
+                                               
+                               $control_item_list = new 
controller_control_item_list();
+                               $control_item_list->set_control_id($control_id);
+                               
$control_item_list->set_control_item_id($control_item->get_id());
+                                                               
+                               
$this->so_control_item_list->add($control_item_list);
+                       }
+                       
+                       phpgwapi_yui::tabview_setup('control_tabview');
+                       
+                       $data = array
+                       (
+                               'tabs'                                  => 
phpgwapi_yui::tabview_generate($tabs, 'control_items'),
+                               'value_id'                              => 
!empty($control) ? $control->get_id() : 0,
+                               'img_go_home'                   => 
'rental/templates/base/images/32x32/actions/go-home.png',
+                               'edit_control_items'    => false,
+                               'control_id'                    => $control_id,
+                               'control_items'                 => 
$control_items_2D                    
+                       );
+                       
+                       self::add_javascript('controller', 'yahoo', 
'control_tabs.js');
+                       self::add_javascript('controller', 'controller', 
'jquery.js');
+                       self::add_javascript('controller', 'controller', 
'custom_ui.js');
+                       self::render_template_xsl(array('control_tabs', 
'control', 'control_groups', 'control_items'), $data);
+
+               }
+               
+               
                public function query()
                {
-                       var_dump("Er i uicontrol");
-
+                       
                }       
                
                public function populate($control){
-                       
-                       $control->set_title(phpgw::get_var('title'));
-                       
$control->set_description(phpgw::get_var('description'));
-                       $control->set_start_date( strtotime( 
phpgw::get_var('start_date')  ) );
-                       $control->set_end_date( strtotime( 
phpgw::get_var('end_date') ) );
-                       $control->set_repeat_day( strtotime( 
phpgw::get_var('repeat_day') ) );
-                       $control->set_repeat_type( strtotime( 
phpgw::get_var('repeat_type') ) );
-                       $control->set_repeat_interval( strtotime( 
phpgw::get_var('repeat_interval') ) );
+                                               
+                       $control->set_title(phpgw::get_var('title', 'string'));
+                       $control->set_description(phpgw::get_var('description', 
'string'));
+                       $control->set_start_date( strtotime( 
phpgw::get_var('start_date_hidden', 'int')));
+                       $control->set_end_date( strtotime( 
phpgw::get_var('end_date_hidden', 'int')));
+                       $control->set_repeat_type( 
phpgw::get_var('repeat_type', 'string'));
+                       $control->set_repeat_interval( 
phpgw::get_var('repeat_interval', 'string'));
+                       $control->set_procedure_id( 
phpgw::get_var('procedure_id', 'int'));
                        $control->set_enabled( true );
                        
                        return $control;




reply via email to

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