Services in Drupal 6 or Drupal 7

So contratz to the Drupal community on releasing Drupal 7 !

We're about to do some projects involving Drupal as a content store supplying data to various sources using services.

I did some research on how to best do this and if we can already use Drupal 7 or should still stick to Drupal 6 for a while.

SVG enlarge with PHP

Sounds simple. But as you searched for documentation on this topic you will see that solutions doesn't work. At least that is what I've found out while doing so.

You can find a lot of documentation on actually creating a SVG and filling it with all kinds of things. But none that I could find will explain what to do when you want to enlarge an existing SVG file in order to generate a bigger bitmap image from it without loosing quality. 

PNG from SVG with PHP

Because of the lack of support for SVG in current web browsers we need a solution for showing the users the icons within our project MAP-it.

The default GD library doesn't support the SVG graphic format. We had to turn to Image Magick. If you are not allowed to execute on your webserver you can't use the Image Magick Library from Linux. But you can always ask your webhost to install the iMagick php library which offers the same functionality without requiring exec() rights.

Drupal PDF generation for MAP-it project

When it comes to PDF functionality Drupal is pretty scarse of modules to help.
The ones that you can always find at drupal.orgprintpdfflyerpdf2texthtml2pdfpdfview.
But none of them can actually offer the ability to build PDFs from custom data.

We needed a solution of writing SVG content inside PDFs and help user to print out those generated PDFs.

Debugging "Headers Already Sent" and "PHP Notice: unserialize() ..." errors in Drupal

Debugging in Drupal isn't always the easiest job in the world. PHP's error reporting is not always very clear and when something goes wrong behind your Drupal screens, you might not necessarily be pointed to the exact location of the error.

This is the fact for those wonderful "Headers already sent" errors that sometimes appear all the way at the top of your page.

When that happens, you know that some bit of code, somewhere in your drupal directory has outputted something before Drupal was fully ready to do so.

Use case : an expandible nav tree

Use case description : Create an expandible nav tree for drupal that would allow a dynamic navigation of a hiërarchy of elements that are related to each other using cck node reference fields .

Platform : Drupal 6.13

Use case : editable node reference fields in Drupal

Use case description : being able to edit a node reference field in view mode and getting a popup that allows the creation of the referenced content type node if the user wants to create a new node.

Platform : Drupal 6.13

Solution : I tried different combinations of modules, as there are many cck node-reference related modules that claim to do something like what I wanted but never exactly that. The winning combo proved to be the following list of modules:

In fide Graphviz generation

So we needed a way to automatically output the network created by the nodereferences on an iphone. Normally, I would have used flex to do this, as it has a nice programming paradigm (object oriented) and loads quickly in a browser. Unfortunately, the wise men at apple do not allow flash to work it's magic, so another solution had to be found.
Wouter one day sent me a link to a Durpal content filter for Graphviz. Graphviz is a command-line tool creating static network visualisations based on text files. For example, you can create a jpg network representation based on a text represenation. The content filter didn't work, but Graphviz did. In the infideconstans custom durpal module, I wrote a function that outputs the relevant content in the system as a *.dot file. This file is then converted every 15 minuntes as a part of a cron job which was set on the debian server itself.

In fide constans game flow : workflow_ng and ACL integration

So the way to go for the development of the in fide constans game flow seems to be to combine workflow_ng with ACL. ACL stands for access control list, which allows the controle of access by users to content on a per node level. It's just an API, without any UI. The integration of workflow_ng and ACL is only available as a patch. Basically, it defines some extra actions that can be carried out on $node objects and that call ACL functions.

game flow in "in fide"

After looking at several options, I think I found a way to regulate game flow. I'll be using the cck, the quiz and workflow_ng modules to change the permissions on the different nodes of content type "persoon", "object" and "gesprek". I've now managed to add an event to the quiz module as described here. The "quiz passed" event is launched when the user successfully passed a quiz. The workflow_ng module is quite powerfull, btw.

Syndicate content