Development

sfBreadNavPlugin

You must first sign up to be able to contribute.

sfBreadNav 1.1.1 May 5, 2008

A very basic navigation system for Symfony 1.1 templates. This is a lightweight alternative for when you just want a quick way to add navigation to a site or prototype.

Allows the managegment of a navigational tree for the purpose of generating a bread crumb and credential controlled menu.

Drop down menu is css based for search engine compatibility and easy customization. Includes IE hacks for IE5.5 and IE6

Features include unlimited number of menus, so you can create seperate menus for frontend and backend apps and have multiple menus for a single app.

After making any changes to the menu be sure to clear the cache if you have application caching enabled. The breadcrumb and nav menu will be cached when allowed.

Requirements

Symfony 1.1

sfPropelActAsNestedSetPlugin http://trac.symfony-project.com/wiki/sfPropelActAsNestedSetBehaviorPlugin

sfGuardPlugin http://trac.symfony-project.com/wiki/sfGuardPluginFor11

Installation

Install plugin

$ php symfony plugin:install sfBreadNavPlugin

$ php symfony propel:build-all

$ php symfony cc

If your going to use the Menu generator ensure that the web assets were copied to the web directory These are just the css files for the nav bar.

Configuration

-Setting up admin panel.

In your backend add sfBreadNavAdmin module to your settings.yml

Example

all:
  .settings:
    enabled_modules:        [default, sfGuardGroup, sfGuardUser, sfGuardPermission, sfBreadNavAdmin]

http://localhost/backend.php/sfBreadNavAdmin

First you need to create a menu, the name is used to identify the menu in the templates.

Next define a home page. if you wish to hid this button simply give an unused credential such as hide.

Each node requires a name, module and action. Credential is optional.

To simply hide a menu button for people not logged in set the credential to authenticated. Credentials do not cascade so you can apply them to nodes individually and orphaned nodes will propagate up.

The catch all flag is used to select a bread crumb for for any actions in a module without their own nav bar entry.

-Setting up bread crumb

add the following line to your template body.

<?php include_partial('sfBreadNav/breadcrumb','menu_name') ?>

-Setting up the navigation menu

Add the following to your template body.

<?php include_partial('sfBreadNav/navmenu', 'menu_name') ?>

Add the following to your template head.

<link rel="stylesheet" type="text/css" media="screen" href="/sfBreadNavPlugin/css/menuh.css" />
<?php include_partial('sfBreadNav/iehack') ?>

To Do

Enable i8ln

create an option for vertical menus

License

LGPL --Author Jarred Freeman

Attachments