fmsystem-commits
[Top][All Lists]
Advanced

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

[Fmsystem-commits] [13547]


From: Nelson Guerra
Subject: [Fmsystem-commits] [13547]
Date: Wed, 01 Jul 2015 23:07:24 +0000

Revision: 13547
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=13547
Author:   nelson224
Date:     2015-07-01 23:07:23 +0000 (Wed, 01 Jul 2015)
Log Message:
-----------


Modified Paths:
--------------
    branches/dev-syncromind/rental/inc/class.uiadjustment.inc.php

Modified: branches/dev-syncromind/rental/inc/class.uiadjustment.inc.php
===================================================================
--- branches/dev-syncromind/rental/inc/class.uiadjustment.inc.php       
2015-07-01 22:06:28 UTC (rev 13546)
+++ branches/dev-syncromind/rental/inc/class.uiadjustment.inc.php       
2015-07-01 23:07:23 UTC (rev 13547)
@@ -24,11 +24,198 @@
                $GLOBALS['phpgw_info']['flags']['app_header'] .= 
'::'.lang('adjustment');
        }
        
+       private function _get_filters()
+       {
+               $filters = array();
+
+               $types = 
rental_socontract::get_instance()->get_fields_of_responsibility();
+               $party_types = array();
+               foreach($types as $id => $label)
+               {
+                       $names = $this->locations->get_name($id);
+                       if($names['appname'] == 
$GLOBALS['phpgw_info']['flags']['currentapp'])
+                       {
+                               
if($this->hasPermissionOn($names['location'],PHPGW_ACL_ADD))
+                               {
+                                       $party_types[] = array('id' => $id, 
'name' =>lang($label));
+                               }
+                       }
+               }
+               $filters[] = array
+                                       (
+                                               'type'   => 'filter',
+                                               'name'   => 'responsibility_id',
+                                               'text'   => 
lang('new_adjustment'),
+                                               'list'   => $party_types
+                                       );
+               
+               return $filters;
+       }
+       
+       
        public function index()
        {
-               $this->render('adjustment_list.php');
+               if (phpgw::get_var('phpgw_return_as') == 'json')
+               {
+                       return $this->query();
+               }
+                       
+               $appname = lang('adjustment_list');
+               $type = 'non_manual_adjustments';
+
+               $data = array(
+                       'datatable_name'        => $appname,
+                       'form' => array(
+                               'toolbar' => array(
+                                       'item' => array(
+                                               array(
+                                                       'type'   => 'link',
+                                                       'value'  => lang('new'),
+                                                       'onclick'=> 
'onNew_adjustment()',
+                                                       'class'  => 'new_item'
+                                               )                               
                
+                                       )
+                               )
+                       ),
+                       'datatable' => array(
+                               'source'        => self::link(array(
+                                       'menuaction'    => 
'rental.uiadjustment.index', 
+                                       'type'                  => $type,
+                                       'phpgw_return_as' => 'json'
+                               )),
+                               'allrows'       => true,
+                               'editor_action' => '',
+                               'field' => array(
+                                       array(
+                                               'key'           => 'year', 
+                                               'label'         => 
lang('year'), 
+                                               'className'     => '', 
+                                               'sortable'      => true, 
+                                               'hidden'        => false
+                                       ),
+                                       array(
+                                               'key'           => 
'adjustment_date', 
+                                               'label'         => 
lang('adjustment_date'), 
+                                               'className'     => '', 
+                                               'sortable'      => true, 
+                                               'hidden'        => false
+                                       ),
+                                       array(
+                                               'key'           => 
'price_item_id', 
+                                               'label'         => 
lang('price_item'), 
+                                               'className'     => '', 
+                                               'sortable'      => false, 
+                                               'hidden'        => true
+                                       ),
+                                       array(
+                                               'key'           => 'new_price', 
+                                               'label'         => 
lang('new_price'), 
+                                               'className'     => '', 
+                                               'sortable'      => false, 
+                                               'hidden'        => true
+                                       ),
+                                       array(
+                                               'key'           => 
'adjustment_type', 
+                                               'label'         => 
lang('adjustment_type'), 
+                                               'className'     => '', 
+                                               'sortable'      => false, 
+                                               'hidden'        => false
+                                       ),
+                                       array(
+                                               'key'           => 'percent', 
+                                               'label'         => 
lang('percent'), 
+                                               'className'     => '', 
+                                               'sortable'      => false, 
+                                               'hidden'        => false
+                                       ),
+                                       array(
+                                               'key'           => 'interval', 
+                                               'label'         => 
lang('interval'), 
+                                               'className'     => '', 
+                                               'sortable'      => false, 
+                                               'hidden'        => false
+                                       ),
+                                       array(
+                                               'key'           => 
'responsibility_title', 
+                                               'label'         => 
lang('responsibility'), 
+                                               'className'     => '', 
+                                               'sortable'      => true, 
+                                               'hidden'        => false
+                                       ),
+                                       array(
+                                               'key'           => 
'extra_adjustment', 
+                                               'label'         => 
lang('extra_adjustment'), 
+                                               'className'     => '', 
+                                               'sortable'      => true, 
+                                               'hidden'        => false
+                                       ),
+                                       array(
+                                               'key'           => 
'is_executed', 
+                                               'label'         => 
lang('is_executed'), 
+                                               'className'     => '', 
+                                               'sortable'      => true, 
+                                               'hidden'        => false
+                                       )
+                               )
+                       )
+               );
+                               
+               $filters = $this->_get_Filters();
+               krsort($filters);
+               foreach($filters as $filter){
+                       array_unshift($data['form']['toolbar']['item'], 
$filter);
+               }
+                       
+               $parameters = array
+                       (
+                               'parameter' => array
+                               (
+                                       array
+                                       (
+                                               'name'          => 'id',
+                                               'source'        => 'id'
+                                       ),
+                               )
+                       );
+               
+               $data['datatable']['actions'][] = array
+                       (
+                               'my_name'               => 'view',
+                               'text'                  => lang('show'),
+                               'action'                => 
$GLOBALS['phpgw']->link('/index.php',array
+                               (
+                                       'menuaction'    => 
'rental.uiadjustment.show_affected_contracts'
+                               )),
+                               'parameters'    => json_encode($parameters)
+                       );
+                                       
+               $data['datatable']['actions'][] = array
+                       (
+                               'my_name'               => 'edit',
+                               'text'                  => lang('edit'),
+                               'action'                => 
$GLOBALS['phpgw']->link('/index.php',array
+                               (
+                                       'menuaction'    => 
'rental.uiadjustment.edit'
+                               )),
+                               'parameters'    => json_encode($parameters)
+                       );
+               
+               $data['datatable']['actions'][] = array
+                       (
+                               'my_name'               => 'delete',
+                               'text'                  => lang('delete'),
+                               'action'                => 
$GLOBALS['phpgw']->link('/index.php',array
+                               (
+                                       'menuaction'    => 
'rental.uiadjustment.delete'
+                               )),
+                               'parameters'    => json_encode($parameters)
+                       );
+               
+               self::add_javascript('rental', 'rental', 'adjustment.index.js');
+               self::render_template_xsl('datatable_jquery', $data);
        }
        
+       
        public function query()
        {
                
if($GLOBALS['phpgw_info']['user']['preferences']['common']['maxmatchs'] > 0)
@@ -38,17 +225,23 @@
                else {
                        $user_rows_per_page = 10;
                }
-               // YUI variables for paging and sorting
-               $start_index    = phpgw::get_var('startIndex', 'int');
-               $num_of_objects = phpgw::get_var('results', 'int', 'GET', 
$user_rows_per_page);
-               $sort_field             = phpgw::get_var('sort');
+               
+               $order                  = phpgw::get_var('order');
+               $draw                   = phpgw::get_var('draw', 'int');
+               $columns                = phpgw::get_var('columns');
+
+               $start_index    = phpgw::get_var('start', 'int', 'REQUEST', 0);
+               $num_of_objects = (phpgw::get_var('length', 'int') <= 0) ? 
$user_rows_per_page : phpgw::get_var('length', 'int');
+               $sort_field             = 
($columns[$order[0]['column']]['data']) ? $columns[$order[0]['column']]['data'] 
: 'year'; 
+               $sort_ascending = ($order[0]['dir'] == 'desc') ? false : true;
+               // Form variables
+               $search_for     = '';
+               $search_type    = '';
+               
                if($sort_field == 'responsibility_title'){
                        $sort_field = "responsibility_id";
                }
-               $sort_ascending = phpgw::get_var('dir') == 'desc' ? false : 
true;
-               // Form variables
-               $search_for     = phpgw::get_var('query');
-               $search_type    = phpgw::get_var('search_option');
+
                // Create an empty result set
                $result_objects = array();
                $result_count = 0;
@@ -77,11 +270,13 @@
                }
                
                //Add context menu columns (actions and labels)
-               array_walk($rows, array($this, 'add_actions'), array($type));
+               //array_walk($rows, array($this, 'add_actions'), array($type));
 
-               //Build a YUI result from the data
-               $result_data = array('results' => $rows, 'total_records' => 
$result_count);
-               return $this->yui_results($result_data, 'total_records', 
'results');
+               $result_data    =   array('results' =>  $rows);
+               $result_data['total_records']   = $result_count;
+               $result_data['draw']    = $draw;
+
+               return $this->jquery_results($result_data);
        }
        
        public function add_actions(&$value, $key, $params)
@@ -181,10 +376,63 @@
                                        $error = lang('messages_form_error');
                                }
                        }
-                       $GLOBALS['phpgw']->redirect_link('/index.php', 
array('menuaction' => 'rental.uiadjustment.edit', 'id' => 
$adjustment->get_id(), 'message' => $message, 'error' => $error));
+                       //$GLOBALS['phpgw']->redirect_link('/index.php', 
array('menuaction' => 'rental.uiadjustment.edit', 'id' => 
$adjustment->get_id(), 'message' => $message, 'error' => $error));
                }
                        
-               return $this->viewedit(true, $adjustment_id, null, 
$responsibility_id, $message, $error);
+               $current_adjustment_type = $adjustment->get_adjustment_type();
+               $adjustment_type_options[] = array('id'=>'adjustment_type_KPI', 
'name'=>'adjustment_type_KPI', 'selected'=>(($current_adjustment_type == 
'adjustment_type_KPI') ? 1 : 0));
+               $adjustment_type_options[] = 
array('id'=>'adjustment_type_deflator', 'name'=>'adjustment_type_deflator', 
'selected'=>(($current_adjustment_type == 'adjustment_type_deflator') ? 1 : 0));
+                       
+               $current_interval = $adjustment->get_interval();
+               $interval_options[] = array('id'=>'1', 'name'=>'1 
'.lang('year'), 'selected'=>(($current_interval == '1') ? 1 : 0));
+               $interval_options[] = array('id'=>'2', 'name'=>'2 
'.lang('year'), 'selected'=>(($current_interval == '2') ? 1 : 0));
+               $interval_options[] = array('id'=>'10', 'name'=>'10 
'.lang('year'), 'selected'=>(($current_interval == '10') ? 1 : 0));
+               
+               $adjustment_year = $adjustment->get_year();
+               $years = rental_contract::get_year_range();
+               $years_options = array();
+               foreach($years as $year)
+               {
+                       $years_options[] = array('id'=>$year, 'name'=>$year, 
'selected'=>(($adjustment_year == $year) ? 1 : 0));
+               }                                       
+               
+               $link_index = array
+                       (
+                               'menuaction'    => 'rental.uiadjustment.index',
+                               'populate_form' => 'yes'
+                       );
+                       
+               $tabs = array();
+               $tabs['details']        = array('label' => lang('Details'), 
'link' => '#details');
+               $active_tab = 'details';
+               
+               $data = array
+               (
+                       'tabs'                                                  
=> phpgwapi_jquery::tabview_generate($tabs, $active_tab),               
+                       'form_action'                                   => 
$GLOBALS['phpgw']->link('/index.php',array('menuaction' => 
'rental.uiadjustment.edit')),
+                       'cancel_url'                                    => 
$GLOBALS['phpgw']->link('/index.php',$link_index),
+                       'lang_save'                                             
=> lang('save'),
+                       'lang_cancel'                                   => 
lang('cancel'),                      
+                       'editable'                                              
=> true,
+                       
+                       'lang_field_of_responsibility'  => 
lang('field_of_responsibility'),
+                       'lang_adjustment_type'                  => 
lang('adjustment_type'),
+                       'lang_percent'                                  => 
lang('percent'),
+                       'lang_interval'                                 => 
lang('interval'),
+                       'lang_year'                                             
=> lang('year'),
+                       
+                       'value_field_of_responsibility' => 
lang(rental_socontract::get_instance()->get_responsibility_title($adjustment->get_responsibility_id())),
+                       'list_adjustment_type'                  => 
array('options' => $adjustment_type_options),
+                       'value_percent'                                 => 
$adjustment->get_percent(),
+                       'list_interval'                                 => 
array('options' => $interval_options),
+                       'list_years'                                    => 
array('options' => $years_options),
+                                       
+                       'validator'                                             
=> phpgwapi_jquery::formvalidator_generate(array('location', 'date', 
'security', 'file'))
+               );
+               
+               self::render_template_xsl(array('adjustment'), array('edit' => 
$data));
+               
+               //return $this->viewedit(true, $adjustment_id, null, 
$responsibility_id, $message, $error);
        }
        
        /**




reply via email to

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