diff --git a/gadjo/static/css/gadjo.scss b/gadjo/static/css/gadjo.scss index 893fd05..9421d3d 100644 --- a/gadjo/static/css/gadjo.scss +++ b/gadjo/static/css/gadjo.scss @@ -539,6 +539,9 @@ table.main tr:nth-child(even) td { table.main tr:hover td { background: #dde; +} + +table.main.clickable-rows { cursor: pointer; } diff --git a/gadjo/static/js/gadjo.js b/gadjo/static/js/gadjo.js index 4125ab1..2af53d2 100644 --- a/gadjo/static/js/gadjo.js +++ b/gadjo/static/js/gadjo.js @@ -401,6 +401,26 @@ var gadjo_js = gadjo_js || {}; $('.extra-actions-menu').toggleClass('open'); }); }); + $(function() { + $('.clickable-rows tr').on('mouseup', function(event) { + var $target = $(event.target); + if ($target.is('input, button, a')) { + return false; + } + var data_link = $(this).find('a[href]').attr('href'); + if (data_link) { + if (data_link.indexOf('http://') == -1 && data_link.indexOf('https://') == -1) { + data_link = window.location.pathname + data_link; + } + if (event.which == 2 || event.ctrlKey) { + window.open(data_link, '_blank'); + } else { + window.location = data_link; + } + return false; + } + }); + }); $(function() { $('.varname').on('click', function() { var doc = window.document, sel, range;