Forums / Developer / how to create custom tab with submenu in admin interface

how to create custom tab with submenu in admin interface

Author Message

Vytautas Germanavičius

Wednesday 08 February 2006 11:00:48 am

i have extension which hase several functions.
How to make theese function acessible from menu in admin interface.

{set-block scope=root variable=cache_ttl}0{/set-block}

Bruce Morrison

Wednesday 08 February 2006 2:22:20 pm

Hi Vytis

You need to add a menu.ini.append.php to the settings directory of your extension.

<?php /* #?ini charset="iso-8859-1"?
[NavigationPart]
Part[ezformsnavigationpart]=Forms

[TopAdminMenu]
Tabs[]=[modulename]

[Topmenu_[modulename]]
NavigationPartIdentifier=ez[modulename]navigationpart
Name=[Text you want to appear on tab]
Tooltip=[Tooltip when you mouse over the tab]
URL[]
URL[default]=[URL to extension main function]
Enabled[]
Enabled[default]=true
Enabled[browse]=false
Enabled[edit]=false
Shown[]
Shown[default]=true
Shown[navigation]=true
Shown[browse]=true

*/ ?>

To ensure the Tab is selected when you are within your extension you need to define the function views in modules/modulename/module.php like this

$ViewList["setup"] = array(
    'functions' => array( 'edit' ),
    "script" => "setup.php",
    "params" => array( ),
    "default_navigation_part" => 'ez[modulename]navigationpart'
);

in all examples [modulename] (including [] ) should be replaced with your module name.

HTH

Cheers
Bruce

My Blog: http://www.stuffandcontent.com/
Follow me on twitter: http://twitter.com/brucemorrison
Consolidated eZ Publish Feed : http://friendfeed.com/rooms/ez-publish

Vytautas Germanavičius

Wednesday 08 February 2006 11:09:51 pm

tab in the top - it's easy. i found description how to do it in documentation.
Thing what i missed - how to craete submenu in the left side. I need it , because my extension has several function and i cannot put everything to top menu.
Looked to all ini files, and php files, but i did not found where it is created.
I cannot believe, that menu is hardcoded to templates...

{set-block scope=root variable=cache_ttl}0{/set-block}

Łukasz Serwatka

Wednesday 08 February 2006 11:25:34 pm

This is currently not supported by eZ publish 3. If you want to add right sub-menu you need to edit design/admin/templates/pagelayout.tpl template.

Personal website -> http://serwatka.net
Blog (about eZ Publish) -> http://serwatka.net/blog

Bruce Morrison

Thursday 09 February 2006 3:09:22 pm

Hi Vytis & Lukasz

@Lukasz
This is something I posted as a suggestion back in May 05
http://ez.no/community/bugs/ability_to_include_extension_specific_left_hand_menus_in_admin_interface

Do you know if there is any chance that this may be added ? Having modifed pagelayout for admin just for an extension is a real overkill and makes upgrades an issue.

@Vytis
In the meantime I end up adding the extension specific menu items to the main content area via an include.

Cheers
Bruce

My Blog: http://www.stuffandcontent.com/
Follow me on twitter: http://twitter.com/brucemorrison
Consolidated eZ Publish Feed : http://friendfeed.com/rooms/ez-publish

Łukasz Serwatka

Thursday 09 February 2006 11:44:29 pm

Hi Bruce,

Yes, this will be definitely improved in version 4 of eZ publish.

Personal website -> http://serwatka.net
Blog (about eZ Publish) -> http://serwatka.net/blog

eZ debug

Timing: Jan 31 2025 04:26:07
Script start
Timing: Jan 31 2025 04:26:07
Module start 'content'
Timing: Jan 31 2025 04:26:07
Module end 'content'
Timing: Jan 31 2025 04:26:07
Script end

Main resources:

Total runtime0.2627 sec
Peak memory usage2,048.0000 KB
Database Queries141

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0088 588.1875180.7969
Module start 'content' 0.00880.0043 768.9844102.1016
Module end 'content' 0.01310.2495 871.0859530.0469
Script end 0.2627  1,401.1328 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00321.2005200.0002
Check MTime0.00120.4618200.0001
Mysql Total
Database connection0.00080.288110.0008
Mysqli_queries0.214581.65541410.0015
Looping result0.00150.57481390.0000
Template Total0.249394.910.2493
Template load0.00070.271410.0007
Template processing0.248594.600610.2485
Override
Cache load0.00050.174710.0005
Sytem overhead
Fetch class attribute can translate value0.00130.497510.0013
XML
Image XML parsing0.00030.111510.0003
General
dbfile0.00682.5979200.0003
String conversion0.00000.002730.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 1
 Number of unique templates used: 1

Time used to render debug report: 0.0001 secs