[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [11162] Merge 11152:11161 from trunk
From: |
Sigurd Nes |
Subject: |
[Fmsystem-commits] [11162] Merge 11152:11161 from trunk |
Date: |
Sun, 09 Jun 2013 19:40:45 +0000 |
Revision: 11162
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=11162
Author: sigurdne
Date: 2013-06-09 19:40:44 +0000 (Sun, 09 Jun 2013)
Log Message:
-----------
Merge 11152:11161 from trunk
Modified Paths:
--------------
branches/Version-1_0-branch/controller/inc/class.uicase.inc.php
branches/Version-1_0-branch/controller/inc/class.uicheck_list.inc.php
branches/Version-1_0-branch/frontend/inc/class.uientity.inc.php
branches/Version-1_0-branch/frontend/templates/base/entityview.xsl
branches/Version-1_0-branch/phpgwapi/templates/base/datatable_common.xsl
branches/Version-1_0-branch/property/inc/class.bocondition_survey.inc.php
branches/Version-1_0-branch/property/inc/class.socondition_survey.inc.php
branches/Version-1_0-branch/property/inc/class.uicondition_survey.inc.php
branches/Version-1_0-branch/property/inc/class.uientity.inc.php
branches/Version-1_0-branch/property/js/yahoo/entity.index.js
Property Changed:
----------------
branches/Version-1_0-branch/
Property changes on: branches/Version-1_0-branch
___________________________________________________________________
Modified: svn:mergeinfo
-
/trunk:6439-6441,6443,6445-6447,6449-6464,6466-6468,6470-6474,6476-6477,6479-6480,6483-6488,6490-6491,6493-6494,6496-6501,6503-6504,6506,6508,6510-6511,6513,6515-6516,6518,6520-6524,6526-6528,6533-6534,6536-6541,6543-6565,6567,6569,6571-6576,6578,6580-6586,6588-6596,6598-6600,6602-6604,6606-6607,6609-6611,6613-6625,6629-6639,6641-6643,6645-6646,6648,6650-6654,6656-6659,6661-6663,6665-6666,6668-6669,6672-6673,6675,6677-6678,6680,6682-6686,6688-6717,6719,6721-6722,6724-6728,6730,6732-6734,6736-6739,6741,6743,6745-6746,6748-6756,6758-6762,6764,6766-6788,6790,6792-6798,6800-6814,6816-6819,6821-6822,6824-6826,6828-6837,6839,6841,6843-6849,6851,6853-6869,6871-6874,6876-6877,6879,6881,6883,6885-6886,6888-6893,6895-6897,6899-6901,6903,6905-6907,6909,6911-6929,6931-6936,6938-6947,6949,6951,6953,6955-6956,6958-6959,6961-6968,6970-6971,6973-6974,6976-6978,6980,6982-7017,7019-7025,7027-7035,7037-7039,7041-7045,7047-7055,7057,7059-7065,7067-7069,7071,7073,7075-7076,7078,7080-7081,7083,7085,7087,7089-7097,7099-7102,7104-7105,7107-7111,7113-7120,7122-7124,7126-7129,7131,7133-7141,7143,7145-7146,7148-7150,7152-7153,7155-7158,7160-7164,7166-7167,7169-7170,7172,7174,7176,7178,7180-7181,7183,7185,7187-7188,7190,7192-7196,7198-7199,7201-7203,7205,7207,7209-7210,7212,7214,7216-7217,7219-7222,7224-7226,7228-7229,7231,7233-7234,7236-7238,7240-7241,7243-7244,7246,7248,7250,7252-7256,7258-7259,7261-7264,7266-7273,7275-7279,7281-7332,7334-7338,7340-7348,7350,7352-7353,7355-7361,7363-7366,7368-7370,7372,7374,7376,7378,7380-7386,7388-7400,7402,7404-7433,7435-7439,7441-7446,7448-7458,7460-7469,7471-7483,7485-7487,7489-7490,7492,7494,7496-7497,7499,7501-7502,7504,7506-7507,7509-7511,7513-7517,7519-7521,7523,7525,7527-7529,7531,7533,7535-7538,7540-7542,7544-7549,7551-7552,7554-7561,7563,7565,7567-7573,7575-7578,7580-7584,7586-7591,7593-7624,7627-7636,7638-7656,7658-7718,7720-7732,7734,7736,7738-7750,7754-7759,7761-7767,7769-7780,7782,7784-7809,7811-7812,7814-7835,7837-7847,7849-7887,7889-7895,7897,7899,7901,7903-7905,7907-7921,7923-7925,7927-7933,7935,7937-7952,7954-7968,7970-7974,7976,7978-7979,7981-7982,7984-7988,7990-7992,7994-8041,8043-8066,8068-8087,8089,8091-8108,8110-8124,8126-8129,8131,8133-8150,8152-8154,8156-8162,8164-8167,8169-8170,8172-8179,8181,8183-8196,8198-8207,8209-8211,8213-8214,8216-8217,8219-8220,8222,8224-8225,8227-8247,8249,8251,8253-8282,8284-8352,8354-8368,8370-8396,8398-8430,8432,8434-8440,8442-8445,8447-8453,8455-8456,8458,8460,8462-8464,8466-8473,8475-8479,8481,8483-8501,8503-8523,8525,8527-8531,8533,8535-8536,8538-8550,8552-8554,8556-8557,8559-8579,8581-8587,8589,8591-8592,8594-8595,8597-8601,8603-8610,8612-8613,8615,8617,8619-8645,8647-8650,8652-8661,8663-8666,8668-8669,8671-8683,8685-8691,8693-8730,8732-8737,8739,8741-8767,8769,8771-8772,8774,8776-8797,8799-8812,8814-8819,8821,8823-8833,8835-8837,8839,8841,8843-8849,8852-8858,8860-8867,8869-8870,8872,8874-8877,8879,8881,8883-8888,8890,8892-8901,8903-8911,8913-8917,8920-8923,8925-8933,8935-8938,8940-8943,8945,8947-8948,8950,8952-8953,8955-8962,8964,8966,8968-8970,8972-8975,8977-8983,8985-8993,8995-9001,9003,9005,9007,9009,9011-9019,9021-9023,9025,9027-9028,9030-9044,9046-9047,9049-9050,9052-9056,9058-9059,9061,9063-9064,9066-9068,9071-9092,9094-9112,9114-9117,9119,9121-9160,9162-9166,9169-9207,9209-9211,9213-9215,9217,9219,9221-9253,9255,9257,9259-9260,9262,9264-9269,9271-9273,9275,9277-9278,9280,9282-9283,9285-9289,9291-9299,9301-9310,9312-9313,9315-9320,9322-9324,9326-9338,9340-9342,9344,9346-9348,9350-9358,9360-9362,9364-9366,9368-9374,9376-9382,9384,9386,9388-9390,9392-9396,9398-9402,9404-9410,9412,9414,9416-9417,9419-9425,9427,9429-9430,9432,9434-9463,9465-9502,9504-9506,9508-9521,9523-9526,9528,9530-9537,9539,9541-9551,9553,9555-9556,9558-9578,9580-9581,9583,9585,9587,9589,9591-9624,9626-9655,9657-9700,9702-9726,9728-9729,9731-9749,9751,9753-9754,9756-9832,9834-9836,9838-9839,9841-9846,9848-9850,9852-9858,9860-9863,9865,9867,9869-9871,9873-9893,9895,9897-9912,9914-9919,9921-9928,9930-9952,9954,9956,9958-9963,9965-9993,9995-9997,9999-10001,10003-10004,10006-10007,10009-10012,10014-10031,10033-10073,10075-10107,10109-10165,10167-10210,10222-10226,10228-10311,10313-10378,10380,10382,10384-10393,10395-10478,10480-10482,10484-10494,10496-10503,10505,10507,10509-10521,10523,10525-10528,10530-10540,10542-10543,10545-10568,10570-10584,10586-10590,10592-10594,10596,10598-10599,10601-10611,10613,10615,10617-10626,10628-10636,10638,10640-10654,10656-10658,10660,10662-10672,10674,10676-10682,10684,10686,10688-10690,10692-10694,10696-10697,10699-10701,10703,10705-10706,10708-10724,10726-10731,10734,10736-10748,10750-10796,10798-10939,10941,10943,10945,10947-10953,10955,10957-10961,10963,10965-10966,10968-11001,11003-11030,11032-11034,11036,11038,11040,11042-11053,11055-11059,11061-11062,11064-11068,11070-11073,11075-11077,11079-11083,11085,11087-11088,11090-11093,11095-11108,11110-11111,11113,11115-11116,11118-11120,11122,11124-11129,11131-11132,11134,11136,11138,11140-11151
+
/trunk:6439-6441,6443,6445-6447,6449-6464,6466-6468,6470-6474,6476-6477,6479-6480,6483-6488,6490-6491,6493-6494,6496-6501,6503-6504,6506,6508,6510-6511,6513,6515-6516,6518,6520-6524,6526-6528,6533-6534,6536-6541,6543-6565,6567,6569,6571-6576,6578,6580-6586,6588-6596,6598-6600,6602-6604,6606-6607,6609-6611,6613-6625,6629-6639,6641-6643,6645-6646,6648,6650-6654,6656-6659,6661-6663,6665-6666,6668-6669,6672-6673,6675,6677-6678,6680,6682-6686,6688-6717,6719,6721-6722,6724-6728,6730,6732-6734,6736-6739,6741,6743,6745-6746,6748-6756,6758-6762,6764,6766-6788,6790,6792-6798,6800-6814,6816-6819,6821-6822,6824-6826,6828-6837,6839,6841,6843-6849,6851,6853-6869,6871-6874,6876-6877,6879,6881,6883,6885-6886,6888-6893,6895-6897,6899-6901,6903,6905-6907,6909,6911-6929,6931-6936,6938-6947,6949,6951,6953,6955-6956,6958-6959,6961-6968,6970-6971,6973-6974,6976-6978,6980,6982-7017,7019-7025,7027-7035,7037-7039,7041-7045,7047-7055,7057,7059-7065,7067-7069,7071,7073,7075-7076,7078,7080-7081,7083,7085,7087,7089-7097,7099-7102,7104-7105,7107-7111,7113-7120,7122-7124,7126-7129,7131,7133-7141,7143,7145-7146,7148-7150,7152-7153,7155-7158,7160-7164,7166-7167,7169-7170,7172,7174,7176,7178,7180-7181,7183,7185,7187-7188,7190,7192-7196,7198-7199,7201-7203,7205,7207,7209-7210,7212,7214,7216-7217,7219-7222,7224-7226,7228-7229,7231,7233-7234,7236-7238,7240-7241,7243-7244,7246,7248,7250,7252-7256,7258-7259,7261-7264,7266-7273,7275-7279,7281-7332,7334-7338,7340-7348,7350,7352-7353,7355-7361,7363-7366,7368-7370,7372,7374,7376,7378,7380-7386,7388-7400,7402,7404-7433,7435-7439,7441-7446,7448-7458,7460-7469,7471-7483,7485-7487,7489-7490,7492,7494,7496-7497,7499,7501-7502,7504,7506-7507,7509-7511,7513-7517,7519-7521,7523,7525,7527-7529,7531,7533,7535-7538,7540-7542,7544-7549,7551-7552,7554-7561,7563,7565,7567-7573,7575-7578,7580-7584,7586-7591,7593-7624,7627-7636,7638-7656,7658-7718,7720-7732,7734,7736,7738-7750,7754-7759,7761-7767,7769-7780,7782,7784-7809,7811-7812,7814-7835,7837-7847,7849-7887,7889-7895,7897,7899,7901,7903-7905,7907-7921,7923-7925,7927-7933,7935,7937-7952,7954-7968,7970-7974,7976,7978-7979,7981-7982,7984-7988,7990-7992,7994-8041,8043-8066,8068-8087,8089,8091-8108,8110-8124,8126-8129,8131,8133-8150,8152-8154,8156-8162,8164-8167,8169-8170,8172-8179,8181,8183-8196,8198-8207,8209-8211,8213-8214,8216-8217,8219-8220,8222,8224-8225,8227-8247,8249,8251,8253-8282,8284-8352,8354-8368,8370-8396,8398-8430,8432,8434-8440,8442-8445,8447-8453,8455-8456,8458,8460,8462-8464,8466-8473,8475-8479,8481,8483-8501,8503-8523,8525,8527-8531,8533,8535-8536,8538-8550,8552-8554,8556-8557,8559-8579,8581-8587,8589,8591-8592,8594-8595,8597-8601,8603-8610,8612-8613,8615,8617,8619-8645,8647-8650,8652-8661,8663-8666,8668-8669,8671-8683,8685-8691,8693-8730,8732-8737,8739,8741-8767,8769,8771-8772,8774,8776-8797,8799-8812,8814-8819,8821,8823-8833,8835-8837,8839,8841,8843-8849,8852-8858,8860-8867,8869-8870,8872,8874-8877,8879,8881,8883-8888,8890,8892-8901,8903-8911,8913-8917,8920-8923,8925-8933,8935-8938,8940-8943,8945,8947-8948,8950,8952-8953,8955-8962,8964,8966,8968-8970,8972-8975,8977-8983,8985-8993,8995-9001,9003,9005,9007,9009,9011-9019,9021-9023,9025,9027-9028,9030-9044,9046-9047,9049-9050,9052-9056,9058-9059,9061,9063-9064,9066-9068,9071-9092,9094-9112,9114-9117,9119,9121-9160,9162-9166,9169-9207,9209-9211,9213-9215,9217,9219,9221-9253,9255,9257,9259-9260,9262,9264-9269,9271-9273,9275,9277-9278,9280,9282-9283,9285-9289,9291-9299,9301-9310,9312-9313,9315-9320,9322-9324,9326-9338,9340-9342,9344,9346-9348,9350-9358,9360-9362,9364-9366,9368-9374,9376-9382,9384,9386,9388-9390,9392-9396,9398-9402,9404-9410,9412,9414,9416-9417,9419-9425,9427,9429-9430,9432,9434-9463,9465-9502,9504-9506,9508-9521,9523-9526,9528,9530-9537,9539,9541-9551,9553,9555-9556,9558-9578,9580-9581,9583,9585,9587,9589,9591-9624,9626-9655,9657-9700,9702-9726,9728-9729,9731-9749,9751,9753-9754,9756-9832,9834-9836,9838-9839,9841-9846,9848-9850,9852-9858,9860-9863,9865,9867,9869-9871,9873-9893,9895,9897-9912,9914-9919,9921-9928,9930-9952,9954,9956,9958-9963,9965-9993,9995-9997,9999-10001,10003-10004,10006-10007,10009-10012,10014-10031,10033-10073,10075-10107,10109-10165,10167-10210,10222-10226,10228-10311,10313-10378,10380,10382,10384-10393,10395-10478,10480-10482,10484-10494,10496-10503,10505,10507,10509-10521,10523,10525-10528,10530-10540,10542-10543,10545-10568,10570-10584,10586-10590,10592-10594,10596,10598-10599,10601-10611,10613,10615,10617-10626,10628-10636,10638,10640-10654,10656-10658,10660,10662-10672,10674,10676-10682,10684,10686,10688-10690,10692-10694,10696-10697,10699-10701,10703,10705-10706,10708-10724,10726-10731,10734,10736-10748,10750-10796,10798-10939,10941,10943,10945,10947-10953,10955,10957-10961,10963,10965-10966,10968-11001,11003-11030,11032-11034,11036,11038,11040,11042-11053,11055-11059,11061-11062,11064-11068,11070-11073,11075-11077,11079-11083,11085,11087-11088,11090-11093,11095-11108,11110-11111,11113,11115-11116,11118-11120,11122,11124-11129,11131-11132,11134,11136,11138,11140-11151,11153-11161
Modified: branches/Version-1_0-branch/controller/inc/class.uicase.inc.php
===================================================================
--- branches/Version-1_0-branch/controller/inc/class.uicase.inc.php
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/controller/inc/class.uicase.inc.php
2013-06-09 19:40:44 UTC (rev 11162)
@@ -97,10 +97,10 @@
$this->location_finder = new location_finder();
- $this->read =
$GLOBALS['phpgw']->acl->check('.control', PHPGW_ACL_READ, 'controller');//1
- $this->add =
$GLOBALS['phpgw']->acl->check('.control', PHPGW_ACL_ADD, 'controller');//2
- $this->edit =
$GLOBALS['phpgw']->acl->check('.control', PHPGW_ACL_EDIT, 'controller');//4
- $this->delete =
$GLOBALS['phpgw']->acl->check('.control', PHPGW_ACL_DELETE, 'controller');//8
+ $this->read =
$GLOBALS['phpgw']->acl->check('.checklist', PHPGW_ACL_READ, 'controller');//1
+ $this->add =
$GLOBALS['phpgw']->acl->check('.checklist', PHPGW_ACL_ADD, 'controller');//2
+ $this->edit =
$GLOBALS['phpgw']->acl->check('.checklist', PHPGW_ACL_EDIT, 'controller');//4
+ $this->delete =
$GLOBALS['phpgw']->acl->check('.checklist', PHPGW_ACL_DELETE, 'controller');//8
}
function add_case()
Modified: branches/Version-1_0-branch/controller/inc/class.uicheck_list.inc.php
===================================================================
--- branches/Version-1_0-branch/controller/inc/class.uicheck_list.inc.php
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/controller/inc/class.uicheck_list.inc.php
2013-06-09 19:40:44 UTC (rev 11162)
@@ -96,10 +96,10 @@
$this->acl_location = '.control';
- $this->read =
$GLOBALS['phpgw']->acl->check('.control', PHPGW_ACL_READ, 'controller');//1
- $this->add =
$GLOBALS['phpgw']->acl->check('.control', PHPGW_ACL_ADD, 'controller');//2
- $this->edit =
$GLOBALS['phpgw']->acl->check('.control', PHPGW_ACL_EDIT, 'controller');//4
- $this->delete =
$GLOBALS['phpgw']->acl->check('.control', PHPGW_ACL_DELETE, 'controller');//8
+ $this->read =
$GLOBALS['phpgw']->acl->check('.checklist', PHPGW_ACL_READ, 'controller');//1
+ $this->add =
$GLOBALS['phpgw']->acl->check('.checklist', PHPGW_ACL_ADD, 'controller');//2
+ $this->edit =
$GLOBALS['phpgw']->acl->check('.checklist', PHPGW_ACL_EDIT, 'controller');//4
+ $this->delete =
$GLOBALS['phpgw']->acl->check('.checklist', PHPGW_ACL_DELETE, 'controller');//8
self::set_active_menu('controller::control::check_list');
}
Modified: branches/Version-1_0-branch/frontend/inc/class.uientity.inc.php
===================================================================
--- branches/Version-1_0-branch/frontend/inc/class.uientity.inc.php
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/frontend/inc/class.uientity.inc.php
2013-06-09 19:40:44 UTC (rev 11162)
@@ -427,6 +427,20 @@
$uicols = $this->bo->uicols;
+ $j = count($uicols['name']);
+ for ($i=0;$i<$j;$i++)
+ {
+ switch ($uicols['name'][$i])
+ {
+ case 'entry_date':
+ $uicols['input_type'][$i] =
'hidden';
+ break;
+
+ }
+ }
+
+
+
$uicols['name'][] = 'img_id';
$uicols['descr'][] = 'dummy';
$uicols['sortable'][] = false;
@@ -456,24 +470,70 @@
$uicols['sortable'][] = false;
$uicols['sort_field'][] = '';
$uicols['format'][] = '';
- $uicols['formatter'][] = 'show_picture';
+ /**
+ * def of next $uicols['formatter'][] is moved down
+ *
+ */
$uicols['input_type'][] = '';
- $vfs = CreateObject('phpgwapi.vfs');
- $vfs->override_acl = 1;
+ $location_id =
$GLOBALS['phpgw']->locations->get_id('property', $this->acl_location);
+ $custom_config =
CreateObject('admin.soconfig',$location_id);
+ $_config = isset($custom_config->config_data) &&
$custom_config->config_data ? $custom_config->config_data : array();
+
+ $remote_image_in_table = false;
+ foreach ($_config as $_config_section =>
$_config_section_data)
+ {
+
+ if($_config_section_data['image_in_table'])
+ {
+
+ $remote_image_in_table = true;
+ $js = <<<JS
+ var show_picture_remote = function(elCell, oRecord, oColumn, oData)
+ {
+ if(oRecord.getData('img_id'))
+ {
+ sUrl = '{$_config_section_data['url']}';
+ sUrl += '&{$_config_section_data['img_key_remote']}=' +
oRecord.getData('img_id');
+ elCell.innerHTML = "<a href=\""+sUrl+"\"
title=\""+oRecord.getData('file_name')+"\" id=\""+oRecord.getData('img_id')+"\"
rel=\"colorbox\" target=\"_blank\"><img
src=\""+sUrl+"&{$_config_section_data['thumbnail_flag']}\"
alt=\""+oRecord.getData('file_name')+"\" /></a>";
+ }
+ }
+JS;
+ $GLOBALS['phpgw']->js->add_code('',
$js);
+
+ break;
+ }
+ }
+
+
+ if(!$remote_image_in_table)
+ {
+
+ $uicols['formatter'][] = 'show_picture';
+
+ $vfs = CreateObject('phpgwapi.vfs');
+ $vfs->override_acl = 1;
+
+ $img_types = array
+ (
+ 'image/jpeg',
+ 'image/png',
+ 'image/gif'
+ );
+ }
+ else
+ {
+ $uicols['formatter'][] =
'show_picture_remote';
+ }
+
+
$j = count($ticket['files']);
for ($i=0;$i<$j;$i++)
{
$ticket['files'][$i]['file_name']=urlencode($ticket['files'][$i]['name']);
}
- $img_types = array
- (
- 'image/jpeg',
- 'image/png',
- 'image/gif'
- );
$j=0;
if (isset($entity_list) && is_array($entity_list))
@@ -482,17 +542,27 @@
{
$_loc1 = isset($entity_entry['loc1'])
&& $entity_entry['loc1'] ? $entity_entry['loc1'] : 'dummy';
- $_files = $vfs->ls(array(
- 'string' =>
"/property/{$this->category_dir}/{$_loc1}/{$entity_entry['id']}",
- 'relatives' =>
array(RELATIVE_NONE)));
-
- if(isset($_files[0]) && $_files[0] &&
in_array($_files[0]['mime_type'], $img_types))
+
+ if($remote_image_in_table)
{
- $entity_entry['file_name']
= urlencode($_files[0]['name']);
- $entity_entry['directory']
= urlencode($_files[0]['directory']);
- $entity_entry['img_id']
= $_files[0]['file_id'];
+ $entity_entry['file_name']
= $entity_entry[$_config_section_data['img_key_local']];
+ // $entity_entry['directory']
= urlencode('external_source');
+ $entity_entry['img_id']
= $entity_entry[$_config_section_data['img_key_local']];
}
-
+ else
+ {
+ $_files = $vfs->ls(array(
+ 'string' =>
"/property/{$this->category_dir}/{$_loc1}/{$entity_entry['id']}",
+ 'relatives' =>
array(RELATIVE_NONE)));
+
+ if(isset($_files[0]) &&
$_files[0] && in_array($_files[0]['mime_type'], $img_types))
+ {
+
$entity_entry['file_name'] = urlencode($_files[0]['name']);
+
$entity_entry['directory'] = urlencode($_files[0]['directory']);
+ $entity_entry['img_id']
= $_files[0]['file_id'];
+ }
+ }
+
for
($i=0;$i<count($uicols['name']);$i++)
{
switch ($uicols['name'][$i])
@@ -590,13 +660,13 @@
'action' =>
$GLOBALS['phpgw']->link('/index.php',array
(
'menuaction' =>
'frontend.uientity.view',
- 'entity_id'
=> $this->entity_id,
- 'cat_id'
=> $this->cat_id,
- 'type'
=> $this->type
+ 'location_id'
=>$location_id,
)),
'parameters'
=> $parameters
);
}
+
+/*
if($this->acl_edit)
{
$datatable['rowactions']['action'][] = array
@@ -613,7 +683,7 @@
'parameters'
=> $parameters
);
}
-
+*/
if( $category['start_ticket'])
{
$datatable['rowactions']['action'][] = array
@@ -637,7 +707,7 @@
}
$GLOBALS['phpgw']->js->validate_file('tinybox2',
'packed' , 'property');
-
$GLOBALS['phpgw']->css->add_external_file('property/js/tinybox2/style.css');
+
$GLOBALS['phpgw']->css->add_external_file('phpgwapi/js/tinybox2/style.css');
$jasper = execMethod('property.sojasper.read',
array('location_id' =>
$GLOBALS['phpgw']->locations->get_id($this->type_app[$this->type],
$this->acl_location)));
@@ -923,6 +993,150 @@
}
+// ---- START INTEGRATION -------------------------
+
+ $custom_config =
CreateObject('admin.soconfig',$GLOBALS['phpgw']->locations->get_id($this->type_app[$this->type],
$this->acl_location));
+ $_config = isset($custom_config->config_data) &&
$custom_config->config_data ? $custom_config->config_data : array();
+//_debug_array($custom_config->config_data);die();
+ // required settings:
+/*
+ integration_tab
+ integration_height
+ integration_url
+ integration_parametres
+ integration_action
+ integration_action_view
+ integration_action_edit
+ integration_auth_key_name
+ integration_auth_url
+ integration_auth_hash_name
+ integration_auth_hash_value
+ integration_location_data
+ */
+ $tabs = array();
+ $tabs['info'] = array('label' => 'Info', 'link' =>
'#info');
+ $active_tab = $active_tab ? $active_tab : 'info';
+
+ $integration = array();
+ foreach ($_config as $_config_section =>
$_config_section_data)
+ {
+ if(isset($_config_section_data['tab']) &&
$values['id'])
+ {
+ if(!isset($_config_section_data['url']))
+ {
+
phpgwapi_cache::message_set("'url' is a required setting for integrations,
'{$_config_section}' is disabled", 'error');
+ break;
+ }
+
+ //get session key from remote system
+ $arguments =
array($_config_section_data['auth_hash_name'] =>
$_config_section_data['auth_hash_value']);
+ $query = http_build_query($arguments);
+ $auth_url =
$_config_section_data['auth_url'];
+ $request = "{$auth_url}?{$query}";
+
+ $aContext = array
+ (
+ 'http' => array
+ (
+ 'request_fulluri' =>
true,
+ ),
+ );
+
+
if(isset($GLOBALS['phpgw_info']['server']['httpproxy_server']))
+ {
+ $aContext['http']['proxy'] =
"{$GLOBALS['phpgw_info']['server']['httpproxy_server']}:{$GLOBALS['phpgw_info']['server']['httpproxy_port']}";
+ }
+
+ $cxContext =
stream_context_create($aContext);
+ $response =
trim(file_get_contents($request, False, $cxContext));
+
+ $_config_section_data['url']
= htmlspecialchars_decode($_config_section_data['url']);
+ $_config_section_data['parametres']
= htmlspecialchars_decode($_config_section_data['parametres']);
+
+
parse_str($_config_section_data['parametres'], $output);
+
+ foreach ($output as $_dummy =>
$_substitute)
+ {
+ $_keys[] = $_substitute;
+
+ $__value = false;
+ if(!$__value =
urlencode($values[str_replace(array('__','*'),array('',''), $_substitute)]))
+ {
+ foreach
($values['attributes'] as $_attribute)
+ {
+
if(str_replace(array('__','*'),array('',''), $_substitute) ==
$_attribute['name'])
+ {
+
$__value = urlencode($_attribute['value']);
+ break;
+ }
+ }
+ }
+
+ if($__value)
+ {
+ $_values[] = $__value;
+ }
+ }
+
+
//_debug_array($_config_section_data['parametres']);
+// _debug_array($_values);
+// _debug_array($output);
+ unset($output);
+ unset($__value);
+ $_sep = '?';
+ if
(stripos($_config_section_data['url'],'?'))
+ {
+ $_sep = '&';
+ }
+ $_param = str_replace($_keys, $_values,
$_config_section_data['parametres']);
+ unset($_keys);
+ unset($_values);
+ // $integration_src =
phpgw::safe_redirect("{$_config_section_data['url']}{$_sep}{$_param}");
+ $integration_src =
"{$_config_section_data['url']}{$_sep}{$_param}";
+ if($_config_section_data['action'])
+ {
+ $_sep = '?';
+ if
(stripos($integration_src,'?'))
+ {
+ $_sep = '&';
+ }
+ $integration_src .=
"{$_sep}{$_config_section_data['action']}=" .
$_config_section_data["action_{$mode}"];
+ }
+
+ $arguments =
array($_config_section_data['auth_key_name'] => $response);
+
+
if(isset($_config_section_data['location_data']) &&
$_config_section_data['location_data'])
+ {
+
$_config_section_data['location_data'] =
htmlspecialchars_decode($_config_section_data['location_data']);
+
parse_str($_config_section_data['location_data'], $output);
+ foreach ($output as $_dummy =>
$_substitute)
+ {
+ $_keys[] = $_substitute;
+ $_values[] =
urlencode($values['location_data'][trim($_substitute, '_')]);
+ }
+ $integration_src .= '&' .
str_replace($_keys, $_values, $_config_section_data['location_data']);
+ }
+
+ $integration_src .=
"&{$_config_section_data['auth_key_name']}={$response}";
+ //_debug_array($values);
+ //_debug_array($integration_src);die();
+ $tabs[$_config_section] = array('label'
=> $_config_section_data['tab'], 'link' => "#{$_config_section}", 'function' =>
"document.getElementById('{$_config_section}_content').src =
'{$integration_src}';");
+
+ $integration[] = array
+ (
+ 'section' =>
$_config_section,
+ 'height' =>
isset($_config_section_data['height']) && $_config_section_data['height'] ?
$_config_section_data['height'] : 500,
+ 'src' =>
$integration_src
+ );
+
+ }
+ }
+
+//_debug_array($integration);die();
+// ---- END INTEGRATION -------------------------
+
+
+
$link_file_data = array
(
'menuaction' =>
'property.uientity.view_file',
@@ -955,6 +1169,8 @@
}
}
+
+
$datavalues[0] = array
(
'name'
=> "0",
@@ -1004,7 +1220,10 @@
"cat_id:'{$this->cat_id}',".
"type:'{$this->type}'}",
'datatable'
=> $datavalues,
- 'myColumnDefs' =>
$myColumnDefs,
+ 'myColumnDefs' =>
$myColumnDefs,
+ 'tabs'
=> phpgwapi_yui::tabview_generate($tabs, $active_tab),
+ 'active_tab' =>
$active_tab,
+ 'integration' =>
$integration,
)
);
phpgwapi_yui::load_widget('dragdrop');
Modified: branches/Version-1_0-branch/frontend/templates/base/entityview.xsl
===================================================================
--- branches/Version-1_0-branch/frontend/templates/base/entityview.xsl
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/frontend/templates/base/entityview.xsl
2013-06-09 19:40:44 UTC (rev 11162)
@@ -39,6 +39,9 @@
<div class="yui-content">
<div id="entityinfo">
<ul style="margin: 2em;">
+ <!-- <xsl:value-of
disable-output-escaping="yes" select="tabs"/>-->
+ <div id="info">
+
<li style="margin-bottom: 1em;">
<a href="{entitylist}"> <<
<xsl:value-of select="php:function('lang', 'show all entities')"/></a>
</li>
@@ -60,6 +63,7 @@
<xsl:apply-templates
select="custom_attributes/attributes"/>
<hr/>
</li>
+<!--
<xsl:choose>
<xsl:when test="files!=''">
<li>
@@ -67,7 +71,21 @@
</li>
</xsl:when>
</xsl:choose>
+-->
+ </div>
+
+ <xsl:for-each select="integration">
+ <div id="{section}">
+ <iframe
id="{section}_content" width="100%" height="{height}" src="{src}">
+ <p>Your browser
does not support iframes.</p>
+ </iframe>
+ </div>
+ </xsl:for-each>
+
+
</ul>
+
+
</div>
</div>
</div>
Modified:
branches/Version-1_0-branch/phpgwapi/templates/base/datatable_common.xsl
===================================================================
--- branches/Version-1_0-branch/phpgwapi/templates/base/datatable_common.xsl
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/phpgwapi/templates/base/datatable_common.xsl
2013-06-09 19:40:44 UTC (rev 11162)
@@ -265,6 +265,9 @@
<xsl:if
test="parameters">
parameters: <xsl:value-of select="parameters"/>,
</xsl:if>
+ <xsl:if
test="confirm_msg">
+
confirm_msg: "<xsl:value-of select="confirm_msg"/>",
+ </xsl:if>
action:
"<xsl:value-of select="action"/>"
}<xsl:value-of
select="phpgw:conditional(not(position() = last()), ',', '')"/>
</xsl:for-each>
Modified:
branches/Version-1_0-branch/property/inc/class.bocondition_survey.inc.php
===================================================================
--- branches/Version-1_0-branch/property/inc/class.bocondition_survey.inc.php
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/property/inc/class.bocondition_survey.inc.php
2013-06-09 19:40:44 UTC (rev 11162)
@@ -318,10 +318,10 @@
$i=0;
foreach ($data as $entry)
{
- $i = $entry['building_part'] . '_' .
$entry['cat_id'];
+ $i = $entry['building_part'] . '_' .
$entry['category'];
$values[$i]['building_part'] =
$entry['building_part'];
- $values[$i]['category'] =
$this->get_category_name($entry['cat_id']);
+ $values[$i]['category'] = $entry['category'];
$diff = $entry['year'] - date('Y');
if($diff < 0)
Modified:
branches/Version-1_0-branch/property/inc/class.socondition_survey.inc.php
===================================================================
--- branches/Version-1_0-branch/property/inc/class.socondition_survey.inc.php
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/property/inc/class.socondition_survey.inc.php
2013-06-09 19:40:44 UTC (rev 11162)
@@ -492,15 +492,13 @@
public function get_summation($id)
{
- $table = 'fm_request';
-
$condition_survey_id = (int)$id;
- $sql = "SELECT category as cat_id,
left(building_part,1) as building_part_,"
+ $sql = "SELECT left(building_part,1) as building_part_,"
. " sum(amount_investment) as investment
,sum(amount_operation) as operation,"
. " recommended_year as year"
- ." FROM {$table}"
- ." WHERE condition_survey_id={$condition_survey_id}"
- ." GROUP BY building_part_ ,category, year ORDER BY
building_part_";
+ ." FROM fm_request {$this->_join} fm_request_status ON
fm_request.status = fm_request_status.id"
+ ." WHERE condition_survey_id={$condition_survey_id} AND
fm_request_status.closed IS NULL"
+ ." GROUP BY building_part_ , year ORDER BY
building_part_";
$this->_db->query($sql,__LINE__,__FILE__);
@@ -512,26 +510,75 @@
$values[] = array
(
'building_part' =>
$this->_db->f('building_part_'),
- 'amount' =>
$amount,
+ 'amount_investment' =>
$this->_db->f('investment'),
+ 'amount_operation' =>
$this->_db->f('operation'),
'year' =>
$this->_db->f('year'),
- 'cat_id' =>
$this->_db->f('cat_id'),
);
}
- return $values;
+ $lang_operation = lang('operation');
+ $lang_investment = lang('investment');
+
+ $return = array();
+ foreach ($values as $entry)
+ {
+ if ($entry['amount_investment'])
+ {
+ $return[] = array
+ (
+ 'building_part' =>
$entry['building_part'],
+ 'amount' =>
$entry['amount_investment'],
+ 'year' =>
$entry['year'],
+ 'category' =>
$lang_investment,
+ );
+ }
+ if ($entry['amount_operation'])
+ {
+ $return[] = array
+ (
+ 'building_part' =>
$entry['building_part'],
+ 'amount' =>
$entry['amount_operation'],
+ 'year' =>
$entry['year'],
+ 'category' =>
$lang_operation,
+ );
+ }
+ }
+
+ return $return;
}
public function delete($id)
{
$id = (int) $id;
+ $interlink = CreateObject('property.interlink');
$this->_db->transaction_begin();
+
+ $requests = array();
+ $this->_db->query("SELECT id AS request_id FROM
fm_request WHERE condition_survey_id={$id}",__LINE__,__FILE__);
+ while ($this->_db->next_record())
+ {
+ $requests[] = $this->_db->f('request_id');
+ }
try
{
$this->_db->Exception_On_Error = true;
- $this->_db->query("DELETE FROM
fm_condition_survey WHERE id={$id}",__LINE__,__FILE__);
- $this->_db->query("DELETE FROM fm_request WHERE
condition_survey_id={$id}",__LINE__,__FILE__);
+ if($requests)
+ {
+ $this->_db->query('DELETE FROM
fm_request_planning WHERE request_id IN (' . implode(',', $requests) .
')',__LINE__,__FILE__);
+ $this->_db->query('DELETE FROM
fm_request_consume WHERE request_id IN (' . implode(',', $requests) .
')',__LINE__,__FILE__);
+ $this->_db->query('DELETE FROM
fm_request_condition WHERE request_id IN (' . implode(',', $requests) .
')',__LINE__,__FILE__);
+ $this->_db->query('DELETE FROM
fm_request_history WHERE history_record_id IN (' . implode(',', $requests) .
')',__LINE__,__FILE__);
+ }
+ $this->_db->query("DELETE FROM fm_request WHERE
condition_survey_id = {$id}",__LINE__,__FILE__);
+ $this->_db->query("DELETE FROM
fm_condition_survey WHERE id = {$id}",__LINE__,__FILE__);
+
+ foreach ($requests as $request_id)
+ {
+
$interlink->delete_at_target('property', '.project.request', $request_id,
$this->_db);
+ }
+
$this->_db->Exception_On_Error = false;
}
@@ -539,6 +586,7 @@
{
if ( $e )
{
+ $this->_db->transaction_abort();
throw $e;
}
}
Modified:
branches/Version-1_0-branch/property/inc/class.uicondition_survey.inc.php
===================================================================
--- branches/Version-1_0-branch/property/inc/class.uicondition_survey.inc.php
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/property/inc/class.uicondition_survey.inc.php
2013-06-09 19:40:44 UTC (rev 11162)
@@ -43,6 +43,7 @@
'add' => true,
'edit' => true,
'save' => true,
+ 'delete' => true,
'get_vendors' => true,
'get_users' => true,
'edit_survey_title' => true,
@@ -219,6 +220,17 @@
$data['datatable']['actions'][] = array
(
+ 'my_name' =>
'view_survey',
+ 'text' =>
lang('view'),
+ 'action' =>
$GLOBALS['phpgw']->link('/index.php',array
+ (
+ 'menuaction' =>
'property.uicondition_survey.view'
+ )),
+ 'parameters' =>
json_encode($parameters)
+ );
+
+ $data['datatable']['actions'][] = array
+ (
'my_name' =>
'edit_survey',
'text' =>
lang('edit'),
'action' =>
$GLOBALS['phpgw']->link('/index.php',array
@@ -239,6 +251,22 @@
'parameters' =>
json_encode($parameters)
);
+
+ if($GLOBALS['phpgw']->acl->check('.admin',
PHPGW_ACL_DELETE, 'property'))
+ {
+ $data['datatable']['actions'][] = array
+ (
+ 'my_name' =>
'delete_survey',
+ 'text' =>
lang('delete'),
+ 'confirm_msg' => lang('do you
really want to delete this entry') . '?',
+ 'action' =>
$GLOBALS['phpgw']->link('/index.php',array
+ (
+ 'menuaction' =>
'property.uicondition_survey.delete'
+ )),
+ 'parameters' =>
json_encode($parameters)
+ );
+ }
+
self::render_template_xsl('datatable_common', $data);
}
@@ -1197,6 +1225,36 @@
}
}
+ /**
+ * Delete survey and all related info
+ *
+ * @param int $id id of entity
+ *
+ * @return string text to appear in ui as receipt on action
+ */
+
+ public function delete()
+ {
+ if(!$GLOBALS['phpgw']->acl->check('.admin',
PHPGW_ACL_DELETE, 'property'))
+ {
+ return 'No access';
+ }
+ $id = phpgw::get_var('id', 'int', 'GET');
+
+ try
+ {
+ $this->bo->delete($id);
+ }
+ catch(Exception $e)
+ {
+ if ( $e )
+ {
+ return $e->getMessage();
+ }
+ }
+ return 'Deleted';
+ }
+
/*
* Overrides with incoming data from POST
*/
Modified: branches/Version-1_0-branch/property/inc/class.uientity.inc.php
===================================================================
--- branches/Version-1_0-branch/property/inc/class.uientity.inc.php
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/property/inc/class.uientity.inc.php
2013-06-09 19:40:44 UTC (rev 11162)
@@ -473,6 +473,31 @@
if( phpgw::get_var('phpgw_return_as') != 'json' )
{
+
+///// integration
+/*
+ integration_tab
+ integration_height
+ integration_url
+ integration_parametres
+ integration_action
+ integration_action_view
+ integration_action_edit
+ integration_auth_key_name
+ integration_auth_url
+ integration_auth_hash_name
+ integration_auth_hash_value
+ integration_location_data
+ */
+
+
+
+
+ $_integration_set = array();
+
+///// integration
+
+
$datatable['menu']
= $this->bocommon->get_menu($this->type_app[$this->type]);
$datatable['config']['base_url'] =
$GLOBALS['phpgw']->link('/index.php', array
@@ -766,8 +791,45 @@
}
}
- $code = 'var ' . implode(',', $button_def) .
";\n";
+
+ $NormalButton_def[] = "oNormalButton_0";
+ $NormalButton_def[] = "oNormalButton_1";
+ $NormalButton_def[] = "oNormalButton_2";
+ $NormalButton_inner[] = "{order:0,
name:'btn_search',funct:'onSearchClick'}";
+ $NormalButton_inner[] = "{order:1,
name:'btn_new', funct:'onNewClick'}";
+ $NormalButton_inner[] = "{order:2,
name:'btn_export',funct:'onDownloadClick'}";
+
+
+ foreach ($_integration_set as $i =>
$_integration)
+ {
+
+ $NormalButton_def[] = 'oNormalButton_'
. ($i + 3);
+ $NormalButton_inner[] = "{order:" . ($i
+ 3) .", name:'btn_integration_{$i}',funct:'onIntegrationClick_{$i}'}";
+
+
$datatable['actions']['form'][0]['fields']['field'][] = array
+ (
+ 'type' => 'button',
+ 'id' =>
"btn_integration_{$i}",
+ 'value' =>
$_integration['name'],
+ 'tab_index' => 10 + $i
+ );
+
+ $_js_functions .= <<<JS
+ this.onIntegrationClick_{$i} =
function()
+ {
+
window.open(values_ds.integrationurl_{$i},'window');
+ }
+JS;
+ }
+
+ $code = 'var ' . implode(',',
$NormalButton_def) . ";\n";
+ $code .= 'var normalButtons = [' . "\n" .
implode(",\n",$NormalButton_inner) . "\n];";
+
+
+ $code .= 'var ' . implode(',', $button_def) .
";\n";
$code .= 'var selectsButtons = [' . "\n" .
implode(",\n",$code_inner) . "\n];";
+ //new
+ $code .= $_js_functions;
$GLOBALS['phpgw']->js->add_code('', $code);
@@ -827,20 +889,58 @@
$uicols['sortable'][] = false;
$uicols['sort_field'][] = '';
$uicols['format'][] = '';
- $uicols['formatter'][] = 'show_picture';
$uicols['input_type'][] = '';
- $vfs = CreateObject('phpgwapi.vfs');
- $vfs->override_acl = 1;
+ $location_id =
$GLOBALS['phpgw']->locations->get_id('property', $this->acl_location);
+ $custom_config =
CreateObject('admin.soconfig',$location_id);
+ $_config = isset($custom_config->config_data) &&
$custom_config->config_data ? $custom_config->config_data : array();
+ $remote_image_in_table = false;
+ foreach ($_config as $_config_section =>
$_config_section_data)
+ {
- $img_types = array
- (
- 'image/jpeg',
- 'image/png',
- 'image/gif'
- );
+ if($_config_section_data['image_in_table'])
+ {
+
+ $remote_image_in_table = true;
+ $js = <<<JS
+ var show_picture_remote = function(elCell, oRecord, oColumn, oData)
+ {
+ if(oRecord.getData('img_id'))
+ {
+ sUrl = '{$_config_section_data['url']}';
+ sUrl += '&{$_config_section_data['img_key_remote']}=' +
oRecord.getData('img_id');
+ elCell.innerHTML = "<a href=\""+sUrl+"\"
title=\""+oRecord.getData('file_name')+"\" id=\""+oRecord.getData('img_id')+"\"
rel=\"colorbox\" target=\"_blank\"><img
src=\""+sUrl+"&{$_config_section_data['thumbnail_flag']}\"
alt=\""+oRecord.getData('file_name')+"\" /></a>";
+ }
+ }
+JS;
+ $GLOBALS['phpgw']->js->add_code('',
$js);
+ break;
+ }
+ }
+
+
+ if(!$remote_image_in_table)
+ {
+
+ $uicols['formatter'][] = 'show_picture';
+
+ $vfs = CreateObject('phpgwapi.vfs');
+ $vfs->override_acl = 1;
+
+ $img_types = array
+ (
+ 'image/jpeg',
+ 'image/png',
+ 'image/gif'
+ );
+ }
+ else
+ {
+ $uicols['formatter'][] =
'show_picture_remote';
+ }
+
$content = array();
$j=0;
if (isset($entity_list) && is_array($entity_list))
@@ -849,11 +949,11 @@
{
$_loc1 = isset($entity_entry['loc1'])
&& $entity_entry['loc1'] ? $entity_entry['loc1'] : 'dummy';
- if(false)
+ if($remote_image_in_table)
{
- $entity_entry['file_name']
= $entity_entry['museumsnr'];
- $entity_entry['directory']
= urlencode('external_source');
- $entity_entry['img_id']
= $entity_entry['museumsnr'];
+ $entity_entry['file_name']
= $entity_entry[$_config_section_data['img_key_local']];
+ // $entity_entry['directory']
= urlencode('external_source');
+ $entity_entry['img_id']
= $entity_entry[$_config_section_data['img_key_local']];
}
else
{
@@ -1906,14 +2006,27 @@
foreach ($output as $_dummy =>
$_substitute)
{
+
+ /**
+ * Alternative
+
+ $regex = "/__([\w]+)__/";
+ preg_match_all($regex,
$_substitute, $matches);
+ foreach($matches[1] as
$__substitute)
+ {
+ $_values[] =
urlencode($values[$__substitute]);
+ }
+ */
+
+
$_keys[] = $_substitute;
$__value = false;
- if(!$__value =
urlencode($values[trim($_substitute, '_')]))
+ if(!$__value =
urlencode($values[str_replace(array('__','*'),array('',''), $_substitute)]))
{
foreach
($values['attributes'] as $_attribute)
{
-
if(trim($_substitute, '_') == $_attribute['name'])
+
if(str_replace(array('__','*'),array('',''), $_substitute) ==
$_attribute['name'])
{
$__value = urlencode($_attribute['value']);
break;
@@ -2314,7 +2427,10 @@
$GLOBALS['phpgw']->js->validate_file( 'tinybox2',
'packed', 'phpgwapi' );
$GLOBALS['phpgw']->css->add_external_file('phpgwapi/js/tinybox2/style.css');
+ phpgw::import_class('phpgwapi.jquery');
+ phpgwapi_jquery::load_widget('core');
+
$criteria = array
(
'appname' =>
$this->type_app[$this->type],
@@ -2324,11 +2440,6 @@
$custom_functions =
$GLOBALS['phpgw']->custom_functions->find($criteria);
- if($custom_functions)
- {
- phpgw::import_class('phpgwapi.jquery');
- phpgwapi_jquery::load_widget('core');
- }
foreach ( $custom_functions as $entry )
{
Modified: branches/Version-1_0-branch/property/js/yahoo/entity.index.js
===================================================================
--- branches/Version-1_0-branch/property/js/yahoo/entity.index.js
2013-06-07 13:20:29 UTC (rev 11161)
+++ branches/Version-1_0-branch/property/js/yahoo/entity.index.js
2013-06-09 19:40:44 UTC (rev 11162)
@@ -12,14 +12,16 @@
{order:4, var_URL:'criteria_id',
name:'btn_criteria_id',style:'criteriabutton',dependiente:''}
]
*/
+
// define buttons
+/*
var oNormalButton_0, oNormalButton_1, oNormalButton_2;
var normalButtons = [
{order:0, name:'btn_search',funct:"onSearchClick"},
{order:1, name:'btn_new', funct:"onNewClick"},
{order:2, name:'btn_export',funct:"onDownloadClick"}
]
-
+*/
var toolTips = [
{name:'btn_export', title:'download', description:'Download table to your
browser',ColumnDescription:''}
]
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [11162] Merge 11152:11161 from trunk,
Sigurd Nes <=