Recent Posts

Pages: [1] 2 3 ... 10
Bonsoir à tous,

Je reviens vers vous pour une question Echanges de bonnes pratiques.
Je cherche à faire ressortir la notion de "liste rouge" dans les numéros de téléphone de mes Particuliers. J'ai cherché quelques idées sur Internet, mais n'ai malheureusement rien trouvé qui me semblait pertinent sur ce sujet.

Alors je me tourne vers vous : comment avez-vous géré cette question de la liste rouge dans votre utilisation de CiviCRM ?

Merci par avance pour votre aide, et très bon dimanche.
Google Summer of Code / [GSoC 2016] Synchronization Framework
« Last post by adityak on Today at 10:46:32 am »
Hey Everyone,

This is Aditya. I am a big Star Wars fan so, To be a part of CiviCRM community, thrilled I am.8)

I will be working on the project Synchronization Framework through this year's GSoC. Although, I will be in constant touch with my mentor Nicolas (aka nganivet) throughout, I would really appreciate any suggestions from the community that may be helpful towards the project. I can be reached anytime through my email:

Presently, I am preoccupied with my end-semester examinations and bachelor's dissertation. Will be working full time on the project from 9th May onwards.

Meanwhile, following things are on my to-do list for the coming week:
  • Getting in touch with my mentor
  • Setting up the code locally for dev
  • Creating a GitHub repo for the project

Looking forward to a great learning experience this summer.

P.S: Kudos to the fellow GSoCers at CiviCRM this year ;)

I start with civicrm on wordpress.
Does-it possible to have a specific field's validation in form?

I would like verify a key for "legal indentity" in "organisation".

Thank you.

The verification's script is:

//Fonction verif
function isLuhnNum($num)
   //longueur de la chaine $num
   $length = strlen($num);
   //resultat de l'addition de tous les chiffres
   $tot = 0;
      $digit = substr($num, $i, 1);
      if ((($length - $i) % 2) == 0)
         $digit = $digit*2;
         if ($digit>9)
            $digit = $digit-9;
      $tot += $digit;
   return (($tot % 10) == 0);
Google Summer of Code / [GSoC 2016] Report Builder GUI
« Last post by ypranay on Today at 12:38:11 am »
[Log: April 26, 2016]
Skype call with Brian and Jaap.
Minutes of Meeting:
  • Weekly Check-ins via Skype on Wednesdays at 07:30 PM IST
  • Daily Check-ins on the CiviCRM GSoC Forum
  • Regular commits to the GitHub repo for the project (
  • The proposed Report Building module will be constructed as a CiviCRM extension
  • Setting up a Development website where Jaap and Brian can review and test my progress
  • Reaching out to them via email or skype if I run into any issues or have questions, etc.
  • Getting familiar with CiviCRM code-base and documentation
  • Begin development full-time after May 9 - post my end-semester examinations and thesis evaluation

[Log: April 30, 2016]
  • Publishing a development website on my domain
  • Get started with Civix: Extension Builder by totten
Google Summer of Code / What I did Today
« Last post by merci on April 29, 2016, 11:09:16 am »


 ** Installed the CiviRules extension on the online install

 ** Read CiviRules Cookbook at

  -  Wenr through the cookbook examples (

    CiviRules Basic Example Immediate Processing
    CiviRules Basic Example Scheduled Processing
    CiviRules Example Donor Classification
    Field Value Comparison Condition
)  on local install Detaily to understand how CiviRules extension can apply to user story 1

 ** Read on how Zapier support webhooks here
  -Documented new findings and shared and shared with mentor ( will be posted tomorrow if deemed necessary )

Google Summer of Code / Re: Gsoc '16 --- Integrating CiviCRM with Zapier
« Last post by Erik Hommel on April 29, 2016, 12:44:56 am »
A couple of remarks on your post:
- The API is used to query for the existing records on the contributions which meet the criteria specified in user story 1 ( donors with total amount >= 50 USD)
No, that is not what will happen in the end. The CiviRules extension will check each contribution that is entered in CiviCRM, and if it meets the condition criteria (financial type is donation and amount is 50 or more) it does the next step. So in the end solution you will create a CiviRules action to start the Zapier stuff. But that is in the future, let's get the communication rolling first. So as a test you could do it this way.

The rest looks good to me!
Thanks, Tim! I had assumed an extension was the way to go on this, but after your comments I am working on a PR for core. I'm not all the way there but was curious if you'd be willing to look over what I have so far.

 - I have a Setting now, which shows up on the Mailing Component settings page (screenshot attached).
 - I have text on the Message Templates page indicating whether or not Headers and Footers will be used with links to edit Headers/Footers and to the new setting (screenshot attached).
 - I have a dummy header and dummy footer inserted into the email in CRM_Core_BAO_MessageTemplate::sendTemplate() if the variable is set.

Now I just need to figure out how to pull the default Header and Footer. I have some code in there based off of what I found in CiviMail's code but it isn't working yet.
1. Re: variables -- Agree that page would benefit from having a section about adding a variable like that. There is a mechanism for storing simple settings -- which should work in core or extensions:

2. Re: override -- I don't think there's a good way to change CRM_Core_BAO_MessageTemplate::sendTemplate() from an extension. There might be a clever to use hook_civicrm_alterMailParams, although it's not obvious to me.

3. Since overrides are awkward, you might consider doing this as a PR for civicrm-core -- we've been making some changes in the release-cycle. In the past, a core patch like this would have been directed to the next-major (e.g. 4.8 or 5.0), but (a) the actual release would be 6 months later and (b) the release accumulated a lot of QA risk/debt over 6 months.

A thirty-thousand foot view of the new approach is . More specifically, for monthly iterations, the idea is to be more open to change... as long as the change receives aggressive QA beforehand. The best way to get that QA is to participate in a peer-review. To get a better idea of what I mean, follow links via:
Note to self: look into using a 'Setting' entity using the API to create/get:

Code: [Select]
    {crmAPI var='result' entity='Setting' action='get'}
    {foreach from=$result.values item=setting}
In the interest of keeping it simple since I'm still quite new at extension-writing... I'll go with the first option.

I've figured out how to include a template file in a simple civix-generated extension (duplicating the template from core in the extension and modifying), now I need to figure out how to add a variable in my extension which can be saved to the database, and then how to override the mailing function if that variable is set.

I'm not expecting anyone to do this for me, just documenting for posterity (and for myself next time I work on this). However if you know of a good example I should study I'm all ears -- I don't see variables covered on the Wiki.

Pages: [1] 2 3 ... 10