From 934fb13d8c539d067dfcf25cebb172e88a7c9426 Mon Sep 17 00:00:00 2001 From: chriskl Date: Mon, 3 Nov 2003 01:26:37 +0000 Subject: [PATCH] make table icons link to browse table. from Oliver Meyer. --- HISTORY | 1 + browser.php | 6 ++++-- classes/HTML_TreeMenu/TreeMenu.js | 27 ++++++++++++++++----------- classes/HTML_TreeMenu/TreeMenu.php | 15 ++++++++++++--- 4 files changed, 33 insertions(+), 16 deletions(-) diff --git a/HISTORY b/HISTORY index bc9c2d15..d03a1d53 100644 --- a/HISTORY +++ b/HISTORY @@ -18,6 +18,7 @@ Features * Show casts * Show conversions * Show languages +* Make table icon link to browse table Bugs * Added legal DOCTYPE diff --git a/browser.php b/browser.php index ab5c00d0..46bc3a5a 100644 --- a/browser.php +++ b/browser.php @@ -5,7 +5,7 @@ * if you click on a database it shows a list of database objects in that * database. * - * $Id: browser.php,v 1.22 2003/10/27 05:43:18 chriskl Exp $ + * $Id: browser.php,v 1.23 2003/11/03 01:26:37 chriskl Exp $ */ // Include application functions @@ -63,7 +63,9 @@ 'icon' => "../../../images/themes/{$conf['theme']}/tables.png", 'expandedIcon' => "../../../images/themes/{$conf['theme']}/tables.png", 'expanded' => false, - 'linkTarget' => 'detail')); + 'linkTarget' => 'detail', + 'browseLink' => addslashes(htmlspecialchars('tables.php?action=browse&page=1&table='.urlencode($tables->f[$data->tbFields['tbname']]).'&'.$querystr)) + )); // Add table folder to schema $table_node->addItem($item_node); diff --git a/classes/HTML_TreeMenu/TreeMenu.js b/classes/HTML_TreeMenu/TreeMenu.js index 32a4b527..83a80c69 100755 --- a/classes/HTML_TreeMenu/TreeMenu.js +++ b/classes/HTML_TreeMenu/TreeMenu.js @@ -32,7 +32,7 @@ // | Harald Radi | // +-----------------------------------------------------------------------+ // -// $Id: TreeMenu.js,v 1.2 2003/05/25 07:00:26 chriskl Exp $ +// $Id: TreeMenu.js,v 1.3 2003/11/03 01:26:37 chriskl Exp $ /** @@ -182,7 +182,7 @@ * Branch images */ var gifname = nodes[i].n.length && this.doesMenu() && nodes[i].isDynamic ? (expanded ? 'minus' : 'plus') : 'branch'; - var iconimg = nodes[i].icon ? this.stringFormat('', this.iconpath, nodes[i].icon, layerID) : ''; + var iconimg = nodes[i].icon ? this.stringFormat('', this.iconpath, nodes[i].icon, layerID) : ''; /** * Add event handlers @@ -197,18 +197,22 @@ * IMPORTANT: * document.write()ing the string: '
', layerID, visibility, (nodes[i].cssClass ? nodes[i].cssClass : this.defaultClass)) : this.stringFormat('
', nodes[i].cssClass ? nodes[i].cssClass : this.defaultClass); - var onMDown = this.doesMenu() && nodes[i].n.length && nodes[i].isDynamic ? this.stringFormat('onmousedown="{0}.toggleBranch(\'{1}\', true)" style="cursor: pointer; cursor: hand"', this.myname, layerID) : ''; - var imgTag = this.stringFormat('', this.iconpath, gifname, modifier, layerID, onMDown); - var linkTarget= nodes[i].linkTarget ? nodes[i].linkTarget : this.linkTarget; - var linkStart = nodes[i].link ? this.stringFormat('', nodes[i].link, linkTarget) : ''; - var linkEnd = nodes[i].link ? '' : ''; - - output = this.stringFormat('{0}{1}{2}{3}{4}{6}{7}
', + var layerTag = this.doesMenu() ? this.stringFormat('
', layerID, visibility, (nodes[i].cssClass ? nodes[i].cssClass : this.defaultClass)) : this.stringFormat('
', nodes[i].cssClass ? nodes[i].cssClass : this.defaultClass); + var onMDown = this.doesMenu() && nodes[i].n.length && nodes[i].isDynamic ? this.stringFormat('onmousedown="{0}.toggleBranch(\'{1}\', true)" style="cursor: pointer; cursor: hand"', this.myname, layerID) : ''; + var imgTag = this.stringFormat('', this.iconpath, gifname, modifier, layerID, onMDown); + var linkTarget = nodes[i].linkTarget ? nodes[i].linkTarget : this.linkTarget; + var linkStart = nodes[i].link ? this.stringFormat('', nodes[i].link, linkTarget) : ''; + var linkEnd = nodes[i].link ? '' : ''; + var browseStart = nodes[i].browseLink ? '' : ''; + var browseEnd = nodes[i].browseLink ? '' : ''; + + output = this.stringFormat('{0}{1}{2}{3}{4}{5}{6}{8}{9}
', layerTag, prepend, parentLayerID == null && (nodes.length == 1 || this.noTopLevelImages) ? '' : imgTag, + browseStart, iconimg, + browseEnd, linkStart, eventHandlers, nodes[i].title, @@ -525,7 +529,7 @@ /** * TreeNode Class */ - function TreeNode(title, icon, link, expanded, isDynamic, cssClass, linkTarget, expandedIcon) + function TreeNode(title, icon, link, expanded, isDynamic, cssClass, linkTarget, expandedIcon, browseLink) { this.title = title; this.icon = icon; @@ -541,6 +545,7 @@ this.oncollapse = null; this.onexpand = null; this.ontoggle = null; + this.browseLink = browseLink; } /** diff --git a/classes/HTML_TreeMenu/TreeMenu.php b/classes/HTML_TreeMenu/TreeMenu.php index a053e6f5..dbb9e41d 100755 --- a/classes/HTML_TreeMenu/TreeMenu.php +++ b/classes/HTML_TreeMenu/TreeMenu.php @@ -33,7 +33,7 @@ // | Harald Radi | // +-----------------------------------------------------------------------+ // -// $Id: TreeMenu.php,v 1.1 2003/05/12 09:55:14 chriskl Exp $ +// $Id: TreeMenu.php,v 1.2 2003/11/03 01:26:37 chriskl Exp $ /** * HTML_TreeMenu Class @@ -302,6 +302,12 @@ class HTML_TreeNode */ var $linkTarget; + /** + * The link for browsing a specific table + * @var string + */ + var $browseLink; + /** * Indexed array of subnodes * @var array @@ -374,6 +380,7 @@ class HTML_TreeNode $this->isDynamic = true; $this->ensureVisible = false; $this->linkTarget = null; + $this->browseLink = ''; $this->parent = null; $this->events = $events; @@ -623,7 +630,7 @@ class HTML_TreeMenu_DHTML extends HTML_TreeMenu_Presentation { $expanded = $this->isDynamic ? ($nodeObj->expanded ? 'true' : 'false') : 'true'; $isDynamic = $this->isDynamic ? ($nodeObj->isDynamic ? 'true' : 'false') : 'false'; - $html = sprintf("\t %s = %s.addItem(new TreeNode('%s', %s, %s, %s, %s, '%s', '%s', %s));\n", + $html = sprintf("\t %s = %s.addItem(new TreeNode('%s', %s, %s, %s, %s, '%s', '%s', %s, '%s'));\n", $return, $prefix, $nodeObj->text, @@ -633,7 +640,9 @@ class HTML_TreeMenu_DHTML extends HTML_TreeMenu_Presentation $isDynamic, $nodeObj->cssClass, $nodeObj->linkTarget, - !empty($nodeObj->expandedIcon) ? "'" . $nodeObj->expandedIcon . "'" : 'null'); + !empty($nodeObj->expandedIcon) ? "'" . $nodeObj->expandedIcon . "'" : 'null', + $nodeObj->browseLink + ); foreach ($nodeObj->events as $event => $handler) { $html .= sprintf("\t %s.setEvent('%s', '%s');\n", -- 2.39.5