fmsystem-commits
[Top][All Lists]
Advanced

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

[Fmsystem-commits] [14660] add context menu


From: Sigurd Nes
Subject: [Fmsystem-commits] [14660] add context menu
Date: Mon, 18 Jan 2016 14:13:53 +0000

Revision: 14660
          http://svn.sv.gnu.org/viewvc/?view=rev&root=fmsystem&revision=14660
Author:   sigurdne
Date:     2016-01-18 14:13:52 +0000 (Mon, 18 Jan 2016)
Log Message:
-----------
add context menu

Modified Paths:
--------------
    branches/dev-syncromind/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        
2016-01-18 13:02:23 UTC (rev 14659)
+++ branches/dev-syncromind/phpgwapi/templates/portico/js/ajax_jsmenu.js        
2016-01-18 14:13:52 UTC (rev 14660)
@@ -1,118 +1,98 @@
 $(function () {
-/*
-       $('#navbar_').jstree({
-               'core': {
-                       'data': {
-                               'url': function (node) {
+       $("#navbar")
+                       .on("select_node.jstree", function (e, data) {
+                               if (typeof (data.event) == 'undefined')
+                               {
+                                       return false;
+                               }
 
-//                                     console.log(node);
-
-                                       var oArgs = {};
-                                       if(node.id === '#')
-                                       {
-                                               oArgs 
={menuaction:'phpgwapi.menu.get_local_menu_ajax',node:'top_level'};
-                                       }
-                                       else
-                                       {
-                                               
-                                               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};
-                                       }
-
-                                       return phpGWLink('index.php', oArgs, 
true);
-                               },
-                               'data': function (node) {
-                                       return {'id': node.id};
+                               if (data.event.type == 'contextmenu')
+                               {
+                                       return false;
                                }
-                       }
-               },
-               plugins: ["state", "search"]
 
-       });
-       $('#navbar_').bind('select_node.jstree', function (e, data) {
-               if (typeof (data.event) == 'undefined')
-               {
-                       return false;
-               }
-               setTimeout(function () {
-                       window.location.href = data.node.original.url;
-               }, 200);
+                               /*
+                                console.log(data.changed.selected); // newly 
selected
+                                console.log(data.changed.deselected); // newly 
deselected
+                                */
+//                             console.log(data);
+                               setTimeout(function () {
+                                       window.location.href = 
data.node.original.url;
+                               }, 200);
 
-       });
-*/
-       $("#navbar")
-    .on("select_node.jstree", function (e, data) {
-               if (typeof (data.event) == 'undefined')
-               {
-                       return false;
-               }
-//             console.log(data);return
+                       })
+                       .jstree({
+                               "plugins": ["state", "search", "contextmenu"], 
//"changed"
+                               'core': {
+//                                     "check_callback": true,
+                                       'data': {
+                                               'url': function (node) {
 
-/*     
-      console.log(data.changed.selected); // newly selected
-      console.log(data.changed.deselected); // newly deselected
-*/
-         setTimeout(function () {
-                       window.location.href = data.node.original.url;
-               }, 200);
+                                                       var oArgs = {};
+                                                       if (node.id === '#')
+                                                       {
+                                                               oArgs = 
{menuaction: 'phpgwapi.menu.get_local_menu_ajax', node: 'top_level'};
+                                                       } else
+                                                       {
 
-    })
-    .jstree({
-               'core': {
-                       'data': {
-                               'url': function (node) {
+                                                               var app = 
node.original.app;
+                                                               if (typeof 
(node.original.key) !== 'undefined')
+                                                               {
+                                                                       app += 
'|' + node.original.key;
+                                                               }
 
-//                                     console.log(node);
+                                                               oArgs = 
{menuaction: 'phpgwapi.menu.get_local_menu_ajax', node: app};
+                                                       }
 
-                                       var oArgs = {};
-                                       if(node.id === '#')
-                                       {
-                                               oArgs 
={menuaction:'phpgwapi.menu.get_local_menu_ajax',node:'top_level'};
+                                                       return 
phpGWLink('index.php', oArgs, true);
+                                               },
+                                               'data': function (node) {
+                                                       return {'id': node.id};
+                                               },
+                                               href: {href: "URI"}
                                        }
-                                       else
-                                       {
-
-                                               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};
+                               },
+                               // example: 
http://stackoverflow.com/questions/14133984/create-custom-item-in-jstree-context-menu
+                               "contextmenu": {
+                                       "items": function (node) {
+                                               return {
+                                                       "Open": {
+                                                               "label": "Åpne 
i ny fane",
+                                                               "action": 
function (obj) {
+                                                                       var win 
= window.open(node.original.url, '_blank');
+                                                                       if 
(win) {
+                                                                               
//Browser has allowed it to be opened
+                                                                               
win.focus();
+                                                                       } else {
+                                                                               
//Broswer has blocked it
+                                                                               
alert('Please allow popups for this site');
+                                                                       }
+                                               //                              
console.log(node);
+                                               //                              
console.log(obj);
+                                                               }
+                                                       },
+                                               };
                                        }
+                               }
 
-                                       return phpGWLink('index.php', oArgs, 
true);
-                               },
-                               'data': function (node) {
-                                       return {'id': node.id};
-                               },
-                               href: { href: "URI" }
-                       }
-               },
-      "plugins" : ["state", "search", "changed" ]
-    });
+                       });
 
        var to = false;
 
        $('#navbar_search').hide();
 
        $('#collapseNavbar').on('click', function () {
-                       $(this).attr('href', 'javascript:;');
-                       $('#navbar').jstree('close_all');
-                       $('#navbar_search').hide();
-               })
+               $(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);




reply via email to

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