solilokiam / summernotebundle
This bundle provides a WYSIWYG editor form type based on summernote
Installs: 798
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 3
Forks: 2
Open Issues: 3
Language:CSS
Requires
- php: >=5.3.2
- symfony/form: ~2.3
- symfony/framework-bundle: ~2.3
Requires (Dev)
- doctrine/doctrine-bundle: *
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2024-11-09 16:48:04 UTC
README
What is SummernoteBundle?
Summernotebundle integrates SummerNote WYSIWYG Editor into Symfony form type.
Status
Requirements
Minimum requirements for this bundle are:
- Symfony 2.3
- Twitter's Bootstrap 3.0
- jQuery 1.9
Installation
Add SummernoteBundle to your application's composer.json
file
{ "require": { "solilokiam/summernotebundle": "dev-master" } }
Add SummernoteBundle to your application's AppKernel.php
file
new Solilokiam\SummernoteBundle\SolilokiamSummernoteBundle()
Add Routing information to your application's routing.yml
:
solilokiam_summernote_bundle: resource: "@SolilokiamSummernoteBundle/Resources/config/routing.xml" prefix: /summernote
Minimal Configuration
You must determine which object manager are you using. Currently it only supports Doctrine ODM, and doctrine ORM.
app/config/config.yml
solilokiam_summernote: db_driver: mongodb #supported orm,mongodb for odm
You must also tell which class is going to inherit the bundle asset class.
solilokiam_summernote: asset_class: Acme\DemoBundle\Document\Asset
An example for the asset class can be like this (doctrine odm):
<?php namespace Acme\DemoBundle\Document; use Solilokiam\SummernoteBundle\Model\SummernoteAsset; use Doctrine\ODM\MongoDB\Mapping\Annotations as MongoDB; /** * Class Asset * @package Acme\DemoBundle\Document * @MongoDB\Document(collection="assets") */ class Asset extends SummernoteAsset { /** * @MongoDB\Id(strategy="auto") */ protected $id; ... }
Additional Configuration
Summernote supports some configuration parameters. This parameters can configured application wide in config.yml.
- width: This is the width of summernote widget
solilokiam_summernote: ... width: 500
- focus: Autofocus the widget.
solilokiam_summernote: ... focus: true
- toolbar: Configure toolbars of the widget.Every line in toolbar config is a different button group. You can check available buttons at summernote documentation
solilokiam_summernote: ... toolbar: - { name: style, buttons: ['bold', 'italic', 'underline', 'clear'] } - { name: paragraph, buttons: ['ul', 'ol', 'paragraph']}
Usage
Summernote bundle provides a formtype. This example form uses it:
class TestFormType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { ... $builder->add('test_text', 'summernote'); ... } ... }
You need also to add some twig tags in your templates to import all CSS and JS needed to make summernote work:
... {% block stylesheets %} {{ summernote_form_stylesheet(form) }} {% endblock %} {% block javascripts %} {{ summernote_form_javascript(form) }} {% endblock %}