Code Monkey home page Code Monkey logo

starratingbundle's Introduction

NurikabeStarRatingBundle

SensioLabsInsight

Form type and Twig filter for FyneWorks' super fine jQuery Star Rating Plugin.

Installation

Manually add a repository for the Star Rating Plugin

This is the easiest way to ensure that you have the Star Rating Plugin installed. Add a repository to composer.json:

    "repositories": [
        {
            "type": "package",
            "package": {
                "name": "fyneworks/star-rating",
                "version": "dev-master",
                "source": {
                    "type": "git",
                    "url": "https://github.com/fyneworks/star-rating.git",
                    "reference": "master"
                }
            }
        }
    ]

Add the bundle to your dependencies

    "require": {
        "nurikabe/star-rating-bundle": "2.0.0"
        ...
    }

Register the bundle in your kernel

public function registerBundles()
{
    $bundles = array(
        // ...
        new Nurikabe\StarRatingBundle\NurikabeStarRatingBundle(),
        // ...
    );

Update your packages

$ php composer.phar update nurikabe/star-rating-bundle

If you define a repository for fyneworks/star-rating as per the above then installing nurikabe/star-rating-bundle should also install the fyneworks/star-rating dependency.

Usage

Load the Star Rating plugin in your layout. For example, if you are using Assetic and you have installed Star Rating via Composer as per above:

{% stylesheets '@NurikabeStarRatingBundle/Resources/rating.css' %}
    <link rel="stylesheet" href="{{ asset_url }}" />
{% endstylesheets %}
{% javascripts '%kernel.root_dir%/../vendor/fyneworks/star-rating/jquery.rating.js' %}
    <script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %}

Of course, remember to dump your assets if use_controller is off:

$ app/console assetic:dump

This bundle contains a new FormType star_rating field type:

$builder->add('rating', 'star_rating', array(
    'choices' => array(1 => 'ichi', 2  => 'ni', 3 => 'san', 4=> 'shi', 5 => 'go'),
    'expanded' => true,  // radio or checkbox...
    'multiple' => false  // ...but not checkbox
));

star_rating extends choice and will render expanded choice fields as a Star Rating field.

Original choice field:

before

As a star_rating field:

after

A Twig filter is also available that will render a static Star Rating widget given a numeric input:

{{ entity.rating|star_rating }}

starratingbundle's People

Contributors

cedcannes avatar rccc avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.