User credit bundle for use with Symfony2

Installs: 202

Dependents: 0

Watchers: 5

Forks: 3

Type: symfony-bundle

1.0.0 2013-12-16 15:19 UTC


Build Status Scrutinizer Quality Score

Symfony 2 Bundle for storing user credits/points

Currently supports only Doctrine MongoDB



Just add to your composer.json file:

    "require": {
        "cometcult/credit-bundle": "dev-master"

Application Kernel

Add the bundle to your application's kernel:

// app/AppKernel.php

public function registerBundles()
    return array(
        // ...
        new CometCult\CreditsBundle\CometCultCreditsBundle(),
        // ...


CometCultCreditsBundle should be operated from CreditsManager

Create credit instance

$creditsManager = $this->get('comet_cult_credits.manager');
$credit = $creditsManager->createCredit(200, 'abc123');

Then persist credit instance with updateCredit() method


Basic operations should be performed providing {ownerId} and amount of credit if needed

$creditsManager->addCredit(100, 'abc123');
$creditsManager->subtractCredit(42, 'abc123');

You can always check the balance of a user with the BalanceChecker

$creditBalanceChecker = $this->get('comet_cult_credits.balance_checker');

Or check against a configurable threshold. By default the minimum threshold is 0 and maximum threshold is 100



You can configure your own threshold values. To do that just add to your Symfony config:

    min_threshold: 0 # min value of your choice
    max_threshold: 100 # max value of your choice