03 October, 2010

Today at the Bristol Code sprint a few of us made a concerted effort on getting making Giftaid 'plug and play' for Civi.

Our starting point is code written by Millertech and our aim is to get it into a state that we can package it as a Drupal module.  Once we've done that, we're hopeful that we'll be able to package it for Joomla also.

We're having to make a few improvements to Civi's hooks, and some modifications to the existing functionality to enable us to package it up, but the benefits are obvious: much easier installation and thus wider uptake of the module, and thus higher CiviCRM adpotion in the UK :)

We spent most of the morning familiarising ourselves with the code and discussing the necessary changes we would need to make.  This threw up some difficult problems (I'll spare you the details) but the result was this outline of...

Read more
01 September, 2010
By kurund
Filed under CiviCRM, Meetups, Sprints, Training

CiviCRM Trainings / Code Sprint:

Read more
02 May, 2010
By scyrma
Filed under CiviCRM, Drupal, Sprints

Over the first three days of the code sprint, we got through most of the tasks to be done. So, on the last day it was decided that some time could be allocated to something different, taking advantage of developpers from different continents being together. Three of us spent a few hours working on coding a way to deploy CiviCRM site with Aegir.

Aegir is an installation profile and a group of modules (mostly hosting and provision, along with drush) that make it possible to provision (install, update, clone, backup, etc.) new Drupal sites with the click of a button. Leveraging this system for CiviCRM will have great benefits: making installation quick and easy for non-technical users, keeping the Drupal and CiviCRM installations up to date more easily, which improves security....

Read more
29 April, 2010
By lobo

The past 8 days have been an amazing period for the CiviCRM community and core team members. Its been incredibly intense, extremely fulfilling and mind-blowing. A huge thank you and tip of the hat to the members of the community who participated in the event and came together from various parts of the world (asia, europe, north america) to push the project to greater heights, from a usability, documentation and localization viewpoint.

Thank you to Jimmy H, Erik B, Goran G, Matheiu L, Mathieu P for working on improving CiviCRM's localization and internationalization features. Thank you to Michael M, Xavier D, Adam H, Sarah G, Mari T, Alice G, Jack A, Josue G, Kyle J for burning the midnight oil to update, improve and extend the CiviCRM: A comprehensive guide. Thank you to OSI and our program officer: Janet Haven, Chintu Gudiya Foundation, Yellow Dog Foundation and ...

Read more
28 April, 2010
By shot
As you have already read in the previous blog posts, one of the outcomes of the translation sprint is the fact that we’re switching our translation server to a new tool, Transifex. We decided to go with Transifex for various reasons:
  • Transifex allows teams of people to collaborate on translations – this is not an issue when you have a single person working on a translation, but as soon as you have two or more contributors working remotely, it’s crucial to use a tool that streamlines the process and allows for easy and centralised communication,
  • the user hierarchy is simple, clean and seems to be efficient: project maintainers accept language maintainers who, in turn, accept language team members and coordinate given language’s...
Read more
27 April, 2010
By goran
Filed under Architecture, CiviCRM, Sprints
It is said that optimizing too early is the root of all evil. However it is not so easy to say when is the right time. Looking at CiviCRM performance there are a number of instances where even on medium sized installations search queries take a long time to execute. One of the searches that caught my eye is the AJAX search at the top left in the menu bar. Returning a maximum of ten entries from a medium sized database (~50k records) should take negligible time and on the CiviCRM test data this request was taking around 3 seconds (putting full load on server). The culprit query from CRM/Contact/Page/AJAX.php is: $query = " SELECT DISTINCT(cc.id) as id, CONCAT_WS( ' :: ', {$select} ) as data FROM civicrm_contact cc {$from} {$aclFrom} {$additionalFrom} {$whereClause} ORDER BY sort_name LIMIT 0, {$limit} "; First of all, MySQL does not have DISTINCT(field) statement that returns rows distinct only in value of a single field. Still MySQL does not give errors on ... Read more
26 April, 2010
By bgm
Today's localisation sprint started with a presentation from Piotr on how multilingual installations works in CiviCRM. Multilingual is when you want to have not only a localised interface, but many co-existing languages. So for example the labels of custom fields may need to be in English or Spanish if the organisation has a bilingual website. In general, most labels can be translated using multilingual, but not the data itself. The main except to this is the contact name, so that it can be entered in multiple alphabets. Multilingual was labeled as an experimental feature until CiviCRM 3.1, but this warning might be removed in 3.2. A few large installs have reported using it successfully. On the coding side,
  • Lobo and Goran have pretty much wrapped up the multi-currency support. For now this allows to enter contributions offline (in the backend) in multiple currencies. Changes in the frontend will probably appear in 3.3.
  • Lobo and Goran have also worked on "per...
Read more
25 April, 2010
By scyrma

Well, it's been done, we chose the translation platform: Transifex. We're fully aware that we did not actually choose a platform that fully supports the ideal situation, but such a platform does not exists. This is more the choice of a promising back-end which we hope we can eventually develop into the ideal situation.

The interesting part in the discussion was finding a balance between the technical and functional interests.

Programmers were not too keen on choosing a platform that would require big changes to the way strings are stored and manipulated. On the other hand translators would benefit from more intuitive user interface, giving immediate feedback on results and overall progress, such as being able to find the context in which a string is used. The Drupal localization client's "on-screen translator" offers...

Read more
25 April, 2010
By michal
That's right, you probably noticed there are two sprints going on here in Tahoe. You can read the report from the book sprint in Jack blog post, now it's time you found out what's the second sprint about. Internationalisation has been available in CiviCRM almost from the very beginning, but we never had a chance to sit down with people who use it and work on different issues that appear when you want to use CiviCRM in other languages and environments than English. So, this time finally came and we have an excellent group of folks sitting in one room and working on making CiviCRM better from i18n perspective. Our three main goals include:
  • choosing the best translation platform and possibly switching to it
  • mapping the best community process for maintaining translations
  • wiping out various issues connected to internationalisation and localisation
We started in the... Read more