Skip to content
This repository has been archived by the owner on Oct 29, 2021. It is now read-only.
/ IoFormBundle Public archive

a set of form types for symfony2 using jquery/ui, datepicker, slider, autocomplete/combobox Entity and more..

License

Notifications You must be signed in to change notification settings

ioalessio/IoFormBundle

Repository files navigation

This bundle is no more developed, you can use this bundle for same functionality http://github.com/genemu/GenemuFormBundle

===============================================

A set of Form Types for symfony2 framework using JQuery

How to Install

  1. Add this bundle to your vendor/ dir * Vendor Mode Add the following lines in your deps file::
[IoFormBundle]
  git=git://github.com/ioalessio/IoFormBundle.git
  target=/bundles/Io/FormBundle

Run the vendor script:

./bin/vendors install
  • Submodule Mode
$ git submodule add git://github.com/ioalessio/IoFormBundle.git vendor/bundles/Io/FormBundle
  1. Add the "Io" namespace to your autoloader:
<?php
// app/autoload.php
$loader->registerNamespaces(array(
    'Io' => __DIR__.'/../vendor/bundles',
// your other namespaces
));
  1. Add the "Io" namespace to your autoloader:
<?php
        // app/ApplicationKernel.php
        public function registerBundles()
        {
            return array(
                // ...
                new Io\FormBundle\IoFormBundle(),
                // ...
            );
        }
  1. Add the twig form configuration:
        // app/config/config.yml
        twig:
            form:
                resources:
                    - 'IoFormBundle:Form:fields.html.twig'

        io_form:
            jquery_tinymce:
              source: /bundles/yourbundle/js/tiny_mce/tiny_mce.js
              theme:  simple

How to use Form Type

Build your form:

<?php
    public function buildForm(FormBuilder $builder, array $options)
    {
        $builder
            ->add('user', 'jquery_entity_combobox', array('class' => 'Io\MyBundle\Entity\MyEntity'))
            ->add('date', 'jquery_date', array('format' => 'dd/MM/y')
            ->add('int_field', 'jquery_range', array('min' => 0, 'max' => 50, 'step' => 2)
            ->add('note', 'jquery_tinymce')
        );
    }

Several options are available on jquery_date widget

<?php
$builder->add('the_date', 'jquery_date', array(
 'format' => 'dd/MM/y'  'dd.MM.yy' 'd MMM, y'
 'changeMonth'=> 'true',
 'changeYear' => true,
 'minDate'=> '-1y',
 'maxDate'=> '+1y',
 'yearRange' => '-1y:+1y',
 'showOn' => 'focus'
));

In addition, non-supported datepicker options can be added by prepending with "jqd."

<?php
 $builder->add('the_date', 'jquery_date', array(
 ...
  'jqd.appendText' => 'extra text',
  'jqd.buttonText' => 'BUTTON!'
))

Will render as:

$( "#wn_trackingbundle_resulttype_date" ).datepicker({
    ...
    appendText: 'boosh!',
    buttonText: 'BUTTON!'
});

More details on some types:

THAT'S ALL

WARNINGS: Form Types uses last version of Jquery v1.6 and JQueryUI v1.8 Libraries You must have jquery and jquery ui already loaded in your template You must include jquery tinymce library (v3.4.4) in your project ( http://www.tinymce.com/download/download.php )

#yourlayout.html.twig
<body>
  ...
  {% block js %}
  <script type="text/javascript" src="{{ asset('path/js/jquery-ui-1.8.15.custom.min.js') }}"></script>
  <script type="text/javascript" src="{{ asset('path/js/js/combobox.js') }}"></script>
  <script type="text/javascript" src="{{ asset('path/js/js/tiny_mce/jquery.tinymce.js') }}"></script>
  {% endblock %}
</body>

About

a set of form types for symfony2 using jquery/ui, datepicker, slider, autocomplete/combobox Entity and more..

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •