[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [7230] Merge 7227:7229 from trunk
From: |
Sigurd Nes |
Subject: |
[Fmsystem-commits] [7230] Merge 7227:7229 from trunk |
Date: |
Fri, 15 Apr 2011 17:02:15 +0000 |
Revision: 7230
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=7230
Author: sigurdne
Date: 2011-04-15 17:02:14 +0000 (Fri, 15 Apr 2011)
Log Message:
-----------
Merge 7227:7229 from trunk
Modified Paths:
--------------
branches/Version-1_0-branch/phpgwapi/templates/portico/navbar.inc.php
branches/Version-1_0-branch/property/inc/class.menu.inc.php
branches/Version-1_0-branch/property/inc/class.sogeneric.inc.php
branches/Version-1_0-branch/property/inc/class.uigeneric.inc.php
branches/Version-1_0-branch/property/setup/setup.inc.php
branches/Version-1_0-branch/property/setup/tables_current.inc.php
branches/Version-1_0-branch/property/setup/tables_update.inc.php
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
+
/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
Modified: branches/Version-1_0-branch/phpgwapi/templates/portico/navbar.inc.php
===================================================================
--- branches/Version-1_0-branch/phpgwapi/templates/portico/navbar.inc.php
2011-04-15 16:55:22 UTC (rev 7229)
+++ branches/Version-1_0-branch/phpgwapi/templates/portico/navbar.inc.php
2011-04-15 17:02:14 UTC (rev 7230)
@@ -225,6 +225,11 @@
{
$target = "target = '{$item['target']}'";
}
+ if(isset($item['local_files']) && $item['local_files'])
+ {
+ $item['url'] = 'file:///' .
str_replace(':','|',$item['url']);
+ }
+
return <<<HTML
$out
<a
href="{$item['url']}"{$link_class}{$icon_style} id="{$id}" {$target}>
Modified: branches/Version-1_0-branch/property/inc/class.menu.inc.php
===================================================================
--- branches/Version-1_0-branch/property/inc/class.menu.inc.php 2011-04-15
16:55:22 UTC (rev 7229)
+++ branches/Version-1_0-branch/property/inc/class.menu.inc.php 2011-04-15
17:02:14 UTC (rev 7230)
@@ -882,6 +882,9 @@
);
}
+ $custom_menus = CreateObject('property.sogeneric');
+
$custom_menus->get_location_info('custom_menu_items',false);
+
if ( $acl->check('.document', PHPGW_ACL_READ,
'property') )
{
$laws_url =
$GLOBALS['phpgw']->link('/redirect.php',array('go' =>
urlencode('http://www.regelhjelp.no/')));
@@ -926,20 +929,15 @@
'text' => lang('gallery')
);
- $custom_menus =
CreateObject('property.sogeneric');
-
$custom_menus->get_location_info('custom_menu_items',false);
$custom_menu_items=
$custom_menus->read(array('type' => 'custom_menu_items' , 'filter' =>
array('location' => '.document')));
foreach($custom_menu_items as $item)
{
- if($item['local_files'])
- {
- $item['url'] = 'file:///' .
str_replace(':','|',$item['url']);
- }
$menus['navigation']['documentation']['children'][] = array
(
- 'url' => $item['url'],
- 'text' =>
$item['name'],
- 'target'=> '_blank'
+ 'url'
=> $item['url'],
+ 'text'
=> $item['text'],
+ 'target'
=> $item['target'] ? $item['target']: '_blank',
+ 'local_files' =>
$item['local_files']
);
}
}
@@ -971,6 +969,30 @@
{
$menus['navigation']["entity_{$entry['id']}"]['children'] =
$entity->read_category_tree($entry['id'],'property.uientity.index',
PHPGW_ACL_READ);
}
+
+
+ $custom_menu_items=
$custom_menus->read_tree(array('type' => 'custom_menu_items' , 'filter' =>
array('location' => ".entity.{$entry['id']}")));
+
+ if($custom_menu_items)
+ {
+
$menus['navigation']["entity_{$entry['id']}"]['children'] =
array_merge($menus['navigation']["entity_{$entry['id']}"]['children'],
$custom_menu_items);
+ }
+
+/*
+ foreach($custom_menu_items as
$item)
+ {
+ if($item['local_files'])
+ {
+ $item['url'] =
'file:///' . str_replace(':','|',$item['url']);
+ }
+
$menus['navigation']["entity_{$entry['id']}"]['children'][] = array
+ (
+ 'url'
=> $item['url'],
+ 'text'
=> $item['name'],
+
'target'=> '_blank'
+ );
+ }
+*/
}
}
}
Modified: branches/Version-1_0-branch/property/inc/class.sogeneric.inc.php
===================================================================
--- branches/Version-1_0-branch/property/inc/class.sogeneric.inc.php
2011-04-15 16:55:22 UTC (rev 7229)
+++ branches/Version-1_0-branch/property/inc/class.sogeneric.inc.php
2011-04-15 17:02:14 UTC (rev 7230)
@@ -45,6 +45,7 @@
$this->account =
$GLOBALS['phpgw_info']['user']['account_id'];
$this->custom =
createObject('property.custom_fields');
$this->_db = & $GLOBALS['phpgw']->db;
+ $this->_db2 = clone($this->_db);
$this->_like = & $this->_db->like;
$this->_join = & $this->_db->join;
}
@@ -1874,7 +1875,23 @@
(
array
(
- 'name' =>
'name',
+ 'name'
=> 'parent_id',
+ 'descr'
=> lang('parent'),
+ 'type'
=> 'select',
+ 'sortable'
=> true,
+ 'nullable'
=> true,
+ 'filter'
=> false,
+ 'role'
=> 'parent',
+ 'values_def'
=> array
+ (
+
'valueset' => false,
+
'method' => 'property.bogeneric.get_list',
+
'method_input' => array('type' => 'custom_menu_items', 'role' => 'parent',
'selected' => '##parent_id##')
+ )
+ ),
+ array
+ (
+ 'name' =>
'text',
'descr' =>
lang('name'),
'type' =>
'varchar'
),
@@ -1886,6 +1903,17 @@
),
array
(
+ 'name'
=> 'target',
+ 'descr'
=> lang('target'),
+ 'type'
=> 'select',
+ 'filter'
=> false,
+ 'values_def'
=> array
+ (
+
'valueset' => array( array('id' => '_blank', 'name' =>
'_blank'),array('id' => '_parent', 'name' => '_parent') ),
+ )
+ ),
+ array
+ (
'name'
=> 'location',
'descr'
=> lang('location'),
'type'
=> 'select',
@@ -2518,7 +2546,7 @@
{
return $this->tree;
}
- $sql = "SELECT * FROM {$table} WHERE parent_id =
{$parent} ORDER BY name ASC";
+ $sql = "SELECT * FROM {$table} WHERE parent_id =
{$parent}";
$db->query($sql,__LINE__,__FILE__);
while ($db->next_record())
@@ -2535,7 +2563,124 @@
return $this->tree;
}
+
/**
+ * used for retrive a child-node from a hierarchy
+ *
+ * @param integer $entity_id Entity id
+ * @param integer $parent is the parent of the children we want
to see
+ * @param integer $level is increased when we go deeper into
the tree,
+ * @return array $child Children
+ */
+
+ protected function get_children($data, $parent, $level)
+ {
+ $children = array();
+
+ $this->get_location_info($data['type'],
$data['type_id']);
+
+ if (!isset($this->location_info['table']) || !$table =
$this->location_info['table'])
+ {
+ return $children;
+ }
+ $this->table = $table;
+
+ $filtermthod = 'WHERE parent_id = ' . (int)$parent;
+
+ $sql = "SELECT * FROM {$table} {$filtermthod}";
+ $this->_db2->query($sql,__LINE__,__FILE__);
+
+ $fields = array(0 => 'id');
+ foreach ($this->location_info['fields'] as $field)
+ {
+ $fields[] = $field['name'];
+ }
+
+ while ($this->_db2->next_record())
+ {
+ $id = $this->_db2->f('id');
+ foreach($fields as $field)
+ {
+ $children[$id][$field] =
$this->_db2->f($field,true);
+ }
+ }
+
+ foreach($children as &$child)
+ {
+ $_children = $this->get_children($data,
$child['id'], $level+1);
+ if($_children)
+ {
+ $child['children'] = $_children;
+ }
+ }
+ return $children;
+ }
+
+
+ public function read_tree($data)
+ {
+ $tree = array();
+
+ $this->get_location_info($data['type'],
$data['type_id']);
+
+ if (!isset($this->location_info['table']) || !$table =
$this->location_info['table'])
+ {
+ return $tree;
+ }
+ $this->table = $table;
+
+ $filtermthod = 'WHERE (parent_id = 0 OR parent_id IS
NULL)';
+
+ if (isset($data['filter']) && is_array($data['filter']))
+ {
+ $_filter = array();
+ foreach ($data['filter'] as $_field => $_value)
+ {
+ $_filter[] = "{$_field} = '{$_value}'";
+ }
+ if($_filter)
+ {
+ $filtermthod .= ' AND ' . implode(' AND
', $_filter);
+ }
+ }
+
+ $sql = "SELECT * FROM {$table} {$filtermthod}";
+
+ $this->_db2->query($sql,__LINE__,__FILE__);
+ $this->total_records = $this->_db2->num_rows();
+
+ $fields = array(0 => 'id');
+ foreach ($this->location_info['fields'] as $field)
+ {
+ $fields[] = $field['name'];
+ }
+ $node = array();
+ while ($this->_db2->next_record())
+ {
+ $id = $this->_db2->f('id');
+
+ foreach($fields as $field)
+ {
+ $tree[$id][$field] =
$this->_db2->f($field,true);
+ }
+ }
+
+ foreach($tree as &$node)
+ {
+ $children = $this->get_children($data,
$node['id'], 0);
+ if ($children)
+ {
+ $node['children'] = $children;
+ }
+ }
+if($tree)
+{
+// _debug_array($tree);die();
+}
+ return $tree;
+ }
+
+ /**
* used for retrive the path for a particular node from a
hierarchy
*
* @param integer $node is the id of the node we want the path
of
Modified: branches/Version-1_0-branch/property/inc/class.uigeneric.inc.php
===================================================================
--- branches/Version-1_0-branch/property/inc/class.uigeneric.inc.php
2011-04-15 16:55:22 UTC (rev 7229)
+++ branches/Version-1_0-branch/property/inc/class.uigeneric.inc.php
2011-04-15 17:02:14 UTC (rev 7230)
@@ -772,10 +772,13 @@
$field['value'] =
isset($values[$field['name']]) ? $values[$field['name']] : '';
if(isset($field['values_def']))
{
- if($field['values_def']['valueset'])
+ if($field['values_def']['valueset'] &&
is_array($field['values_def']['valueset']))
{
$field['valueset'] =
$field['values_def']['valueset'];
- // TODO find selected value
+ foreach($field['valueset'] as
&$_entry)
+ {
+ $_entry['selected'] =
$_entry['id'] == $field['value'] ? 1 : 0;
+ }
}
else
if(isset($field['values_def']['method']))
{
Modified: branches/Version-1_0-branch/property/setup/setup.inc.php
===================================================================
--- branches/Version-1_0-branch/property/setup/setup.inc.php 2011-04-15
16:55:22 UTC (rev 7229)
+++ branches/Version-1_0-branch/property/setup/setup.inc.php 2011-04-15
17:02:14 UTC (rev 7230)
@@ -12,7 +12,7 @@
*/
$setup_info['property']['name'] = 'property';
- $setup_info['property']['version'] = '0.9.17.615';
+ $setup_info['property']['version'] = '0.9.17.617';
$setup_info['property']['app_order'] = 8;
$setup_info['property']['enable'] = 1;
$setup_info['property']['app_group'] = 'office';
Modified: branches/Version-1_0-branch/property/setup/tables_current.inc.php
===================================================================
--- branches/Version-1_0-branch/property/setup/tables_current.inc.php
2011-04-15 16:55:22 UTC (rev 7229)
+++ branches/Version-1_0-branch/property/setup/tables_current.inc.php
2011-04-15 17:02:14 UTC (rev 7230)
@@ -2220,8 +2220,10 @@
'fm_custom_menu_items' => array(
'fd' => array(
'id' => array('type' => 'auto', 'precision' =>
4,'nullable' => False),
- 'name' => array('type' => 'varchar',
'precision' => 200,'nullable' => False),
+ 'parent_id' => array('type' =>
'int','precision' => '4','nullable' => True),
+ 'text' => array('type' => 'varchar',
'precision' => 200,'nullable' => False),
'url' => array('type' => 'text','nullable' =>
True),
+ 'target' => array('type' =>
'varchar','precision' => '15','nullable' => True),
'location' => array('type' => 'varchar',
'precision' => 200,'nullable' => False),
'local_files' => array('type' => 'int',
'precision' => 2,'nullable' => true),
'user_id' => array('type' => 'int', 'precision'
=> 4,'nullable' => True),
Modified: branches/Version-1_0-branch/property/setup/tables_update.inc.php
===================================================================
--- branches/Version-1_0-branch/property/setup/tables_update.inc.php
2011-04-15 16:55:22 UTC (rev 7229)
+++ branches/Version-1_0-branch/property/setup/tables_update.inc.php
2011-04-15 17:02:14 UTC (rev 7230)
@@ -5201,8 +5201,49 @@
}
}
+ /**
+ * Update property version from 0.9.17.615 to 0.9.17.616
+ * Enable hierarchy to custom menu
+ *
+ */
+ $test[] = '0.9.17.615';
+ function property_upgrade0_9_17_615()
+ {
+ $GLOBALS['phpgw_setup']->oProc->m_odb->transaction_begin();
+
+
$GLOBALS['phpgw_setup']->oProc->AddColumn('fm_custom_menu_items','parent_id',
array('type' => 'int','precision' => '4','nullable' => True));
+
+ if($GLOBALS['phpgw_setup']->oProc->m_odb->transaction_commit())
+ {
+ $GLOBALS['setup_info']['property']['currentver'] =
'0.9.17.616';
+ return $GLOBALS['setup_info']['property']['currentver'];
+ }
+ }
+
/**
+ * Update property version from 0.9.17.616 to 0.9.17.617
+ * rename field, add customized url-target
+ *
+ */
+
+ $test[] = '0.9.17.616';
+ function property_upgrade0_9_17_616()
+ {
+ $GLOBALS['phpgw_setup']->oProc->m_odb->transaction_begin();
+
+
$GLOBALS['phpgw_setup']->oProc->RenameColumn('fm_custom_menu_items','name','text');
+
$GLOBALS['phpgw_setup']->oProc->AddColumn('fm_custom_menu_items','target',
array('type' => 'varchar','precision' => '15','nullable' => True));
+
+ if($GLOBALS['phpgw_setup']->oProc->m_odb->transaction_commit())
+ {
+ $GLOBALS['setup_info']['property']['currentver'] =
'0.9.17.617';
+ return $GLOBALS['setup_info']['property']['currentver'];
+ }
+ }
+
+
+ /**
* Update property version from 0.9.17.607 to 0.9.17.608
* Add more room for address at tickets
*
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [7230] Merge 7227:7229 from trunk,
Sigurd Nes <=