From: rich Date: Tue, 28 Sep 2004 11:56:52 +0000 (+0000) Subject: Improved this script so it also notes if a page is used in the site menu. X-Git-Url: http://git.annexia.org/?a=commitdiff_plain;h=d4a56348dfb9f36a15e0d9844b772a1bd2848518;p=cocanwiki.git Improved this script so it also notes if a page is used in the site menu. --- diff --git a/scripts/what_links_here.ml b/scripts/what_links_here.ml index ea9b572..0202ee9 100644 --- a/scripts/what_links_here.ml +++ b/scripts/what_links_here.ml @@ -1,7 +1,7 @@ (* COCANWIKI - a wiki written in Objective CAML. * Written by Richard W.M. Jones . * Copyright (C) 2004 Merjis Ltd. - * $Id: what_links_here.ml,v 1.1 2004/09/28 11:51:38 rich Exp $ + * $Id: what_links_here.ml,v 1.2 2004/09/28 11:56:52 rich Exp $ * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -54,6 +54,17 @@ let run r (q : cgi) (dbh : Dbi.connection) hostid _ _ = | _ -> assert false) in template#table "pages" table; + template#conditional "pages_empty" (table = []); + + (* Is the page in the site menu? If so, then every other page + * links here, so we should say so. + *) + let sth = dbh#prepare_cached "select 1 from sitemenu + where hostid = ? and url = ?" in + sth#execute [`Int hostid; `String page]; + + let in_sitemenu = try sth#fetch1int () = 1 with Not_found -> false in + template#conditional "in_sitemenu" in_sitemenu; q#template template diff --git a/templates/what_links_here.html b/templates/what_links_here.html index 16ed0bf..f3d22dd 100644 --- a/templates/what_links_here.html +++ b/templates/what_links_here.html @@ -10,15 +10,26 @@

What links to ::title_html::

-List of pages which link to +List of pages which link directly to ::title_html:::

+::if(pages_empty):: +

(No pages directly link here.)

+::else:: +::end:: + +::if(in_sitemenu):: +

+In addition, this page is in the site-wide menu, which +effectively means that every page links to it. +

+::end::