[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Fmsystem-commits] [14503] more on new portico-layout
From: |
Sigurd Nes |
Subject: |
[Fmsystem-commits] [14503] more on new portico-layout |
Date: |
Sun, 29 Nov 2015 14:52:41 +0000 |
Revision: 14503
http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=14503
Author: sigurdne
Date: 2015-11-29 14:52:40 +0000 (Sun, 29 Nov 2015)
Log Message:
-----------
more on new portico-layout
Modified Paths:
--------------
branches/dev-syncromind/phpgwapi/inc/class.menu.inc.php
branches/dev-syncromind/phpgwapi/templates/portico/head.inc.php
branches/dev-syncromind/phpgwapi/templates/portico/js/ajax_jsmenu.js
branches/dev-syncromind/phpgwapi/templates/portico/js/base.js
branches/dev-syncromind/phpgwapi/templates/portico/navbar.inc.php
branches/dev-syncromind/phpgwapi/templates/portico/navbar.tpl
Modified: branches/dev-syncromind/phpgwapi/inc/class.menu.inc.php
===================================================================
--- branches/dev-syncromind/phpgwapi/inc/class.menu.inc.php 2015-11-28
19:12:03 UTC (rev 14502)
+++ branches/dev-syncromind/phpgwapi/inc/class.menu.inc.php 2015-11-29
14:52:40 UTC (rev 14503)
@@ -370,9 +370,37 @@
return $menu;
}
+ public function get_top_level_menu_ajax()
+ {
+ $navbar = $this->get('navbar');
+ $exclude = array('logout', 'about', 'preferences');
+ $top_level_menu = array();
+ foreach ( $navbar as $app => $app_data )
+ {
+ if ( in_array($app, $exclude) )
+ {
+ continue;
+ }
+
+ $top_level_menu[] = array
+ (
+ 'app' => $app,
+ 'text' => $app_data['text'],
+ 'url' => str_replace('&','&',
$app_data['url']),
+ 'children' => true
+ );
+
+ }
+
+ return $top_level_menu;
+ }
public function get_local_menu_ajax()
{
$node = phpgw::get_var('node');
+ if($node == 'top_level')
+ {
+ return $this->get_top_level_menu_ajax();
+ }
$selection = explode('|',$node);
$app = $selection[0];
@@ -400,8 +428,10 @@
{
$menu[] = array
(
+ 'app'
=> 'admin',
'key'
=> $_app,
'is_leaf' => count($navigation[$_app]) > 1 ? false : true,
+
'children' => count($navigation[$_app]) > 1 ? true : false,
'text'
=> $GLOBALS['phpgw']->translation->translate($_app, array(), true),
'url'
=> $GLOBALS['phpgw']->link('/index.php',
array('menuaction' => 'admin.uiconfig.index', 'appname'
=> $_app))
@@ -462,8 +492,6 @@
$menu[$i] = $vals;
$menu[$i]['app'] = $app;
$menu[$i]['key'] = $key;
- $menu[$i]['is_leaf'] = true;
- $menu[$i]['children'] = false;
if(isset($menu[$i]['children']))
{
$menu[$i]['is_leaf'] = false;
@@ -471,6 +499,11 @@
// unset($menu[$i]['children']);
}
+ else
+ {
+ $menu[$i]['is_leaf'] = true;
+ $menu[$i]['children'] = false;
+ }
$i++;
}
Modified: branches/dev-syncromind/phpgwapi/templates/portico/head.inc.php
===================================================================
--- branches/dev-syncromind/phpgwapi/templates/portico/head.inc.php
2015-11-28 19:12:03 UTC (rev 14502)
+++ branches/dev-syncromind/phpgwapi/templates/portico/head.inc.php
2015-11-29 14:52:40 UTC (rev 14503)
@@ -32,7 +32,6 @@
if( !isset($GLOBALS['phpgw_info']['flags']['noframework']) )
{
- phpgwapi_yui::load_widget('layout');
$javascripts[] = "/phpgwapi/templates/portico/js/base.js";
}
@@ -40,7 +39,7 @@
{
phpgwapi_jquery::load_widget('treeview');
-
$GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'] =
'jsmenu';//ajax_menu|jsmenu
+
$GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'] =
'ajax_menu';//ajax_menu|jsmenu
if
(isset($GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'])
&& $GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'] ==
'ajax_menu')
{
$javascripts[] =
"/phpgwapi/templates/portico/js/ajax_jsmenu.js";
Modified: branches/dev-syncromind/phpgwapi/templates/portico/js/ajax_jsmenu.js
===================================================================
--- branches/dev-syncromind/phpgwapi/templates/portico/js/ajax_jsmenu.js
2015-11-28 19:12:03 UTC (rev 14502)
+++ branches/dev-syncromind/phpgwapi/templates/portico/js/ajax_jsmenu.js
2015-11-29 14:52:40 UTC (rev 14503)
@@ -5,16 +5,22 @@
'data': {
'url': function (node) {
- console.log(node);
+// console.log(node);
var oArgs = {};
if(node.id === '#')
{
- oArgs
={menuaction:'phpgwapi.menu.get_local_menu_ajax',node:'property'};
+ oArgs
={menuaction:'phpgwapi.menu.get_local_menu_ajax',node:'top_level'};
}
else
{
- var app = node.original.app +
'|' + node.original.key;
+
+ var app = node.original.app;
+ if(typeof(node.original.key)
!== 'undefined')
+ {
+ app += '|' +
node.original.key;
+ }
+
oArgs
={menuaction:'phpgwapi.menu.get_local_menu_ajax',node: app};
}
@@ -24,11 +30,27 @@
return {'id': node.id};
}
}
- }
+ },
+ plugins: ["state", "search"]
+
});
var to = false;
+ $('#navbar_search').hide();
+
+ $('#collapseNavbar').on('click', function () {
+ $(this).attr('href', 'javascript:;');
+ $('#navbar').jstree('close_all');
+ $('#navbar_search').hide();
+ })
+
+ $('#expandNavbar').on('click', function () {
+ $(this).attr('href', 'javascript:;');
+ $('#navbar').jstree('open_all');
+ $('#navbar_search').show();
+ });
+
$('#navbar_search').keyup(function () {
if (to) {
clearTimeout(to);
@@ -38,16 +60,15 @@
$('#navbar').jstree(true).search(v);
}, 250);
});
+
+
$('#navbar').bind('select_node.jstree', function (e, data) {
if (typeof (data.event) == 'undefined')
{
return false;
}
- // var treeInst = $('#treeDiv1').jstree(true);
- // treeInst.save_state();
setTimeout(function () {
- update_content(data.node.a_attr.href);
- //window.location.href = data.node.a_attr.href;
+ window.location.href = data.node.original.url;
}, 100);
});
Modified: branches/dev-syncromind/phpgwapi/templates/portico/js/base.js
===================================================================
--- branches/dev-syncromind/phpgwapi/templates/portico/js/base.js
2015-11-28 19:12:03 UTC (rev 14502)
+++ branches/dev-syncromind/phpgwapi/templates/portico/js/base.js
2015-11-29 14:52:40 UTC (rev 14503)
@@ -26,22 +26,19 @@
, south: {
maxSize: 200
, spacing_closed: 0
// HIDE resizer & toggler when 'closed'
+ , spacing_open: 0
, slidable: false
// REFERENCE - cannot slide if spacing_closed = 0
, initClosed: false
+ , resizable: false
}
});
- $('#collapseNavbar').on('click', function () {
- $(this).attr('href', 'javascript:;');
- $('#navbar').jstree('close_all');
- })
- $('#expandNavbar').on('click', function () {
- $(this).attr('href', 'javascript:;');
- $('#navbar').jstree('open_all');
- });
-
+ /**
+ * Experimental : requires live update of js and css
+ * @param {type} requestUrl
+ */
update_content = function(requestUrl)
{
Modified: branches/dev-syncromind/phpgwapi/templates/portico/navbar.inc.php
===================================================================
--- branches/dev-syncromind/phpgwapi/templates/portico/navbar.inc.php
2015-11-28 19:12:03 UTC (rev 14502)
+++ branches/dev-syncromind/phpgwapi/templates/portico/navbar.inc.php
2015-11-29 14:52:40 UTC (rev 14503)
@@ -112,56 +112,10 @@
}
}
- if
(isset($GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'])
&& $GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'] ==
'ajax_menu')
+ if
(isset($GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'])
&& $GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'] ==
'jsmenu'
+ && !phpgwapi_cache::session_get('navbar', 'compiled')
== true
+ )
{
- $exclude = array('logout', 'about', 'preferences');
- $i = 1;
- foreach ( $navbar as $app => $app_data )
- {
- if ( in_array($app, $exclude) )
- {
- continue;
- }
-
- $applications[] = array
- (
- 'value'=> array
- (
- 'id' => $i,
- 'app' => $app,
- 'label' => $app_data['text'],
- 'href' =>
str_replace('&','&', $app_data['url']),
- ),
- 'children' => array()
- );
-
- $mapping[$i] = array
- (
- 'id' => $i,
- 'name' => $app,
- 'expanded' => false,
- 'highlight' => $app == $currentapp
? true : false,
- 'is_leaf' => false
- );
-
- $i ++;
- }
- $applications = json_encode($applications);
- $mapping = json_encode($mapping);
- $_menu_selection = str_replace('::', '|',
$GLOBALS['phpgw_info']['flags']['menu_selection']);
-
- $var['treemenu'] = <<<HTML
- <script type="text/javascript">
- var apps = {$applications};
- var mapping = {$mapping};
- var proxy_data =
['first_element_is_dummy'];
- var menu_selection =
'{$_menu_selection}';
- </script>
-HTML;
- }
- else
- {
-// prepare_navbar($navbar);
$navigation = execMethod('phpgwapi.menu.get',
'navigation');
$treemenu = '';
foreach($navbar as $app => $app_data)
@@ -178,20 +132,62 @@
</ul>
HTML;
+
+ /**
+ * Check for HTML5
+ */
+ if(!preg_match('/MSIE (6|7|8)/',
$_SERVER['HTTP_USER_AGENT']))
+ {
+ phpgwapi_cache::session_set('navbar',
'compiled', true);
+ }
}
if
(isset($GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'])
&& $GLOBALS['phpgw_info']['user']['preferences']['common']['sidecontent'] ==
'jsmenu')
{
- $var['treemenu'] .= <<<JS
+ $var['tree_script'] = <<<JS
<script type="text/javascript">
+
$(function() {
- $('#navbar').jstree({
+
+ if(typeof(Storage)!=="undefined")
+ {
+ var cached_menu_tree_data =
$("#navbar").html();
+ if(cached_menu_tree_data)
+ {
+
sessionStorage.cached_menu_tree_data = cached_menu_tree_data;
+ }
+ else
+ {
+ cached_menu_tree_data =
sessionStorage.cached_menu_tree_data;
+ }
+
+ if(typeof(cached_menu_tree_data)
!='undefined' && cached_menu_tree_data)
+ {
+
$('#navbar').html(cached_menu_tree_data);
+ }
+ }
+
+ $('#navbar').jstree({
core:{
multiple: false
},
plugins: ["state", "search"]
});
- var to = false;
+
+ $('#collapseNavbar').on('click',
function () {
+ $(this).attr('href',
'javascript:;');
+
$('#navbar').jstree('close_all');
+
$('#navbar_search').hide();
+ })
+
+ $('#expandNavbar').on('click', function
() {
+ $(this).attr('href',
'javascript:;');
+ $('#navbar').jstree('open_all');
+ $('#navbar_search').show();
+ });
+
+
+ var to = false;
$('#navbar_search').keyup(function () {
if(to) { clearTimeout(to); }
to = setTimeout(function () {
@@ -204,8 +200,6 @@
{
return false;
}
- // var treeInst =
$('#treeDiv1').jstree(true);
- // treeInst.save_state();
setTimeout(function() {
update_content(data.node.a_attr.href);
//window.location.href
= data.node.a_attr.href;
Modified: branches/dev-syncromind/phpgwapi/templates/portico/navbar.tpl
===================================================================
--- branches/dev-syncromind/phpgwapi/templates/portico/navbar.tpl
2015-11-28 19:12:03 UTC (rev 14502)
+++ branches/dev-syncromind/phpgwapi/templates/portico/navbar.tpl
2015-11-29 14:52:40 UTC (rev 14503)
@@ -8,7 +8,6 @@
if(typeof(Storage)!=="undefined")
{
sessionStorage.cached_menu_tree_data = '';
- sessionStorage.cached_mapping =
'';
}
var sUrl = phpGWLink('logout.php');
@@ -59,9 +58,8 @@
</a>
</div>
- <div id="navbar" class="ui-layout-content"
style="overflow: auto;">
-{treemenu}
- </div>
+ <div id="navbar" class="ui-layout-content"
style="overflow: auto;">{treemenu}</div>
+ {tree_script}
</div>
<div id="center_content" class="ui-layout-center
content">
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Fmsystem-commits] [14503] more on new portico-layout,
Sigurd Nes <=