Drupal is all about the modules

Yes, almost anything you want to do in Drupal, you can do by adding another module. It’s pretty easy to add new modules and to find out which modules you need by searching on the Drupal site (or by asking your friend who knows almost everything about Drupal), although sometimes there is more than one way to do something and you need to figure out which is the best way. The module system is unique to Drupal and it allows developers to constantly update the software and add new functionality and make it immediately available to users without having to wait for the release of the next version of the software.

Here are some key modules we added yesterday:

Views: With this you can create queries/reports, such as a list of overdue items, with selected fields and specific criteria. Views may also allow you to create search pages. Creating more complex searches will be necessary since the default search is basic (1 field).

Date: This allows you to create a field with a date format.

Profile: This was a particularly easy module to add because it’s one of the core modules of the Content Creation Kit and it only needed to be selected. This allows you to add other fields to the user registration form, such as first name and last name. It allows us to collect necessary information about our patrons for circulation.

Nodetitles: We installed this module because every content type/table has a title field, no matter what, and we don’t need titles for our circulation content type/table. The nodetitles module allows you to automatically generate a title, so we figured we could use this to automatically generate a random letter or number combination that would take the place of a title each time something is checked out and an entry is made in the circulation content type/table. Zac is working on figuring out some PHP code that will automatically generate this number, as otherwise the system automatically assigns everything the title of the content type (e.g., “zine,” “patron”).

We continued to debate over whether we should track circulation via a circulation content type/table or by adding a field to the zine content type/table. We realized that if we go with the latter option we can keep track of check out and due dates by also adding fields for these to the zine content type/table. However, I am in support of using a circulation content type because it will allow us to keep information about a zine’s circulation history. If we go with this option, we will still want to somehow indicate in each zine record whether it is in the library or not. I assume we could set something up that does this automatically when a zine is checked out but I’m not sure exactly how yet.

I also looked into taxonomies. These allow you to set up a controlled vocabulary and attach it to a content type, which essentially creates a field in that content type. For example, I set up a vocabulary called “subject,” entered a series of terms in it, and attached it to the content type “zines.” Now when I enter a new item in the zine table, I see a field called “subject” and can select a subject from the list I created. Drupal gives you the option of making your vocabulary hierarchical and adding synonyms (”use for” terms) and related terms, but then this information doesn’t appear in the system anywhere else. I found discussion about this on the Drupal site that confirmed for me that synonyms in particular currently have no function in the database. I think there may be a “synonyms” module that can be added to amend this but I didn’t look into this in much detail. Synonyms would be useful to have in the system so that people who search for an incorrect term can be directed to a correct term.

I’m going to stop there because I have to work on our official report comparing Drupal and Koha, which is due Friday. We will post the report to the blog when it’s finished, however.

I will just add… The more we play around in Drupal, the more we are getting to like it. It sometimes seems complicated, but I haven’t found it frustrating yet, as my questions are quickly answered and problems quickly resolved. It will be hard to decide whether to use Drupal or Koha.