[horde] Display separate web-application

Andy Dorman adorman at ironicdesign.com
Tue Feb 3 14:09:41 UTC 2015


On 02/03/2015 02:28 AM, Jan Niggemann wrote:
>
> Hi list,
>
> I'd like to display a separate web application below the horde main menu.
> It should not be integrated in the horde framework, i.e. not exchange
> data with horde applications, it should only be an entry in the main
> menu which displays the content of a website below the main menu.
>
> It would be just like on the horde portal when using an "external
> website" block.
>
> Is there some kind of scaffold I could use for that or some primer on
> how I would need to set this up?
>
> Regards
> jan

Use the Horde registry (http://wiki.horde.org/Doc/Dev/Registry)

For an example, below are the main bits of our registry.d/antespam.php 
file that provides a main menu option (antespam) and sub-menu items 
(some with the antespam parent, the last two use Horde parents).

This provides our users direct access to the AnteSpam spam & virus 
filtering application we use with our Horde/Imp installation.

In our case we specify a new 'target' window in order to preserve the 
Horde window/tab because returning to Horde after opening a new 
application is not simple without getting "nested" menus...at least we 
have not figured out how.  ;-)

<?php

$this->applications['antespam'] = array(
     'name' => _("AnteSpam"),
     'icon' => '/themes/graphics/asicon.png',
     'status' => 'heading'
);
>
$this->applications['as_sideline'] = array(
     'initial_page' => 'sideline',
     'menu_parent' => 'antespam',
     'name' => _("Sideline"),
     'status' => 'link',
     'target' => 'AnteSpam',
     'url' => 'http://antespam.com/address/' . $user . '/sideline?uid=' 
. $user
);
>
$this->applications['as_settings'] = array(
     'initial_page' => 'update',
     'menu_parent' => 'antespam',
     'name' => _("Settings"),
     'status' => 'link',
     'target' => 'AnteSpam',
     'url' => 'http://antespam.com/address/' . $user . '/update?uid=' . 
$user
);
>
$this->applications['as_passlist'] = array(
     'initial_page' => 'list/pass/',
     'menu_parent' => 'antespam',
     'name' => _("Passlist"),
     'status' => 'link',
     'target' => 'AnteSpam',
     'url' => 'http://antespam.com/address/' . $user . 
'/list/pass/?uid=' . $user
);
>
$this->applications['as_blocklist'] = array(
     'initial_page' => 'list/block/',
     'menu_parent' => 'antespam',
     'name' => _("Blocklist"),
     'status' => 'link',
     'target' => 'AnteSpam',
     'url' => 'http://antespam.com/address/' . $user . 
'/list/block/?uid=' . $user
);
>
$this->applications['as_upgrade'] = array(
     'initial_page' => 'upgrade',
     'menu_parent' => 'others',
     'name' => _("Upgrade"),
     'status' => 'link',
     'target' => 'AnteSpam',
     'url' => 'http://fmp.signup.fanmail.com/address/' . $user . 
'/upgrade?uid=' . $user
);
>
$this->applications['as_security'] = array(
     'initial_page' => 'update',
     'menu_parent' => 'myaccount',
     'name' => _("Security Settings"),
     'status' => 'link',
     'target' => 'AnteSpam',
     'url' => 'http://fmp.fanmail.com/address/' . $user . 
'/update?current=account&uid=' . $user
);


-- 
Andy Dorman


FanMail.com
Ironic Design, Inc.
AnteSpam.com, ComeHome.net

CONFIDENTIALITY NOTICE: This message is for the named person's use only. 
It may contain confidential, proprietary or legally privileged 
information. No confidentiality or privilege is waived or lost by any 
erroneous transmission. If you receive this message in error, please 
immediately destroy it and notify the sender. You must not, directly or 
indirectly, use, disclose, distribute, or copy any part of this message 
if you are not the intended recipient.



More information about the horde mailing list