[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [14715] editable inline tables
From: |
Sigurd Nes |
Subject: |
[Fmsystem-commits] [14715] editable inline tables |
Date: |
Tue, 09 Feb 2016 20:42:15 +0000 |
Revision: 14715
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=14715
Author: sigurdne
Date: 2016-02-09 20:41:31 +0000 (Tue, 09 Feb 2016)
Log Message:
-----------
editable inline tables
Modified Paths:
--------------
branches/dev-syncromind/rental/inc/class.uicontract.inc.php
branches/dev-syncromind/rental/inc/class.uiprice_item.inc.php
branches/dev-syncromind/rental/js/rental/contract.edit.js
Modified: branches/dev-syncromind/rental/inc/class.uicontract.inc.php
===================================================================
--- branches/dev-syncromind/rental/inc/class.uicontract.inc.php 2016-02-09
20:38:22 UTC (rev 14714)
+++ branches/dev-syncromind/rental/inc/class.uicontract.inc.php 2016-02-09
20:41:31 UTC (rev 14715)
@@ -443,26 +443,17 @@
private function _get_tableDef_price($mode, $contract_id)
{
$columns_def = array(
- array('key' => 'agresso_id', 'label' =>
lang('agresso_id'), 'className' => '',
- 'sortable' => true, 'hidden' => false),
- array('key' => 'title', 'label' =>
lang('name'), 'className' => '', 'sortable' => true,
- 'hidden' => false),
- array('key' => 'is_area', 'label' =>
lang('title'), 'className' => '', 'sortable' => true,
- 'hidden' => false),
- array('key' => 'price', 'label' =>
lang('price'), 'sortable' => false, 'hidden' => false,
- 'formatter' => 'formatterPrice',
'className' => 'right'),
- array("key" => "area", "label" => lang('area'),
"formatter" => "formatterArea",
- 'className' => 'right'),
- array("key" => "count", "label" =>
lang('count')),
- array("key" => "total_price", "label" =>
lang('total_price'), 'formatter' => 'formatterPrice',
- 'className' => 'right'),
- array("key" => "date_start", "label" =>
lang('date_start'), 'formatter' => 'formatterDateStart_price_item',
- 'className' => 'center'),
- array("key" => "date_end", "label" =>
lang('date_end'), 'formatter' => 'formatterDateEnd_price_item',
- 'className' => 'center'),
- array("key" => "is_one_time", "label" =>
lang('is_one_time'), 'className' => 'center'),
- array("key" => "price_type_title", "label" =>
lang('type'), 'sortable' => false,
- 'className' => 'center')
+ array('key' => 'agresso_id', 'label' =>
lang('agresso_id'), 'className' => '', 'sortable' => true, 'hidden' => false),
+ array('key' => 'title', 'label' =>
lang('name'), 'className' => '', 'sortable' => true, 'hidden' => false,
'editor'=> true),
+ array('key' => 'is_area', 'label' =>
lang('title'), 'className' => '', 'sortable' => true, 'hidden' => false),
+ array('key' => 'price', 'label' =>
lang('price'), 'sortable' => false, 'hidden' => false,'formatter' =>
'formatterPrice', 'className' => 'right', 'editor'=> true),
+ array("key" => "area", "label" => lang('area'),
"formatter" => "formatterArea", 'className' => 'right'),
+ array("key" => "count", "label" =>
lang('count'), 'editor'=> true),
+ array("key" => "total_price", "label" =>
lang('total_price'), 'formatter' => 'formatterPrice', 'className' => 'right'),
+ array("key" => "date_start", "label" =>
lang('date_start'), 'formatter' => 'formatterDateStart_price_item',
'className' => 'center'),
+ array("key" => "date_end", "label" =>
lang('date_end'), 'formatter' => 'formatterDateEnd_price_item','className' =>
'center'),
+ array("key" => "is_one_time", "label" =>
lang('is_one_time'), 'formatter' => 'formatterIs_one_time', 'className' =>
'center'),
+ array("key" => "price_type_title", "label" =>
lang('type'), 'sortable' => false,'className' => 'center')
);
if($mode == 'edit')
@@ -509,7 +500,8 @@
'ColumnDefs' => $columns_def,
'tabletools' => $tabletools_price1,
'config' => array(
- array('disableFilter' => true)
+ array('disableFilter' => true),
+ array('editor_action' =>
self::link(array('menuaction' => 'rental.uiprice_item.set_value')))
)
);
Modified: branches/dev-syncromind/rental/inc/class.uiprice_item.inc.php
===================================================================
--- branches/dev-syncromind/rental/inc/class.uiprice_item.inc.php
2016-02-09 20:38:22 UTC (rev 14714)
+++ branches/dev-syncromind/rental/inc/class.uiprice_item.inc.php
2016-02-09 20:41:31 UTC (rev 14715)
@@ -386,22 +386,33 @@
return;
}
- $field = phpgw::get_var('field');
+ $field_name = phpgw::get_var('field_name');
$value = phpgw::get_var('value');
$id = phpgw::get_var('id');
+ switch($field_name)
+ {
+ case 'date_start':
+ case 'date_end':
+ $value =
phpgwapi_datetime::date_to_timestamp(phpgw::get_var('value'));
+ break;
+ default:
+ $value = phpgw::get_var('value');
+ break;
+ }
+
$price_item =
rental_socontract_price_item::get_instance()->get_single($id);
- $price_item->set_field($field,
phpgwapi_datetime::date_to_timestamp($value));
+ $price_item->set_field($field_name, $value);
$result =
rental_socontract_price_item::get_instance()->store($price_item);
$message = array();
if($result)
{
- $message['message'][] = array('msg' =>
lang('date has been saved'));
+ $message['message'][] = array('msg' =>
lang('data has been saved'));
}
else
{
- $message['error'][] = array('msg' => lang('date
has not been saved'));
+ $message['error'][] = array('msg' => lang('data
has not been saved'));
}
return $message;
Modified: branches/dev-syncromind/rental/js/rental/contract.edit.js
===================================================================
--- branches/dev-syncromind/rental/js/rental/contract.edit.js 2016-02-09
20:38:22 UTC (rev 14714)
+++ branches/dev-syncromind/rental/js/rental/contract.edit.js 2016-02-09
20:41:31 UTC (rev 14715)
@@ -33,7 +33,7 @@
var data = {};
data['id'] = arr[1];
- data['field'] = arr[0];
+ data['field_name'] = arr[0];
data['value'] = value;
var requestUrl = phpGWLink('index.php', oArgs_request, true);
@@ -46,7 +46,38 @@
}, data, 'POST', 'JSON');
}
+function changeOne_time_price_item(param, value)
+{
+ var oArgs_request = {menuaction: 'rental.uiprice_item.set_value'};
+ var arr = param.split('__');
+ var data = {};
+ data['id'] = arr[1];
+ data['field_name'] = arr[0];
+ if(value == "false")
+ {
+ data['value'] = true;
+ }
+ else
+ {
+ data['value'] = false;
+ }
+
+ var requestUrl = phpGWLink('index.php', oArgs_request, true);
+
+ JqueryPortico.execute_ajax(requestUrl, function (result) {
+
+ var message = result.message[0]['msg'];
+ alert(message);
+ JqueryPortico.show_message(5, result);
+
+ oTable5.fnDraw();
+
+ }, data, 'POST', 'JSON');
+}
+
+
+
setDatePicker_price_item = function ()
{
var date_start = $('.date_start');
@@ -106,6 +137,20 @@
});
};
+setOne_price_item = function ()
+{
+ var one_time = $('.one_time');
+
+ one_time.each(function (i, obj)
+ {
+ $("#" + obj.id).on('change', function ()
+ {
+ changeOne_time_price_item(obj.id, $(this).val());
+ });
+ });
+
+};
+
function formatterDateStart_price_item(key, oData)
{
var name = 'date_start__' + oData['id'];
@@ -118,6 +163,17 @@
return '<input id="' + name + '" class="date_end" name="' + name + '"
size="10" value="' + oData[key] + '" type="text" readonly="readonly"></input>';
}
+function formatterIs_one_time(key, oData)
+{
+ var name = 'is_one_time__' + oData['id'];
+ var checked = '';
+ if (oData[key] == true)
+ {
+ checked = 'checked="checked"';
+ }
+ return '<input id="' + name + '" class="one_time" name="' + name + '"
size="10" value="' + oData[key] + '" type="checkbox" ' + checked + '></input>';
+}
+
$(document).ready(function ()
{
$("#date_start").change(function () {
@@ -270,6 +326,7 @@
var api = oTable5.api();
api.on('draw', setDatePicker_price_item);
+ api.on('draw', setOne_price_item);
oTable6.dataTableSettings[6]['oFeatures']['bServerSide'] = true;
oTable6.dataTableSettings[6]['ajax'] = {url:
link_not_included_price_items, data: {}, type: 'GET'};
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [14715] editable inline tables,
Sigurd Nes <=