Views issue queue guidelines

Overview

This document provides guidelines for submitting a Views issue. Please read the document and use the checklist as a reminder of the key points.

Submission checklist

  • Is this really a Views issue? (It could be a Drupal, CCK or other module's issue.)
  • Are you using the latest version of Views? Is the problem fixed in the development version?
  • Is it a duplicate? Have you searched?
  • Do not hijack other issues (if you have to change the title you should probably open a new issue)
  • Issues should be specific. Broad topics are better in the forums.
  • Do not post issues that can be fixed with CSS.
  • Describe, in detail, the steps to reproduce the issue.
  • Try to reproduce your problem using a Drupal core theme and turning off as many modules as possible.
  • Screenshots are always helpful.

Import Mailman subscriptions status

The User Mailman Register Import Tool submodule can be used to quick import and syncronize subscriptions of existing users (status and passwords) from a mailman dumpdb file.
In most cases you don't need it, because the main module itself is able to syncronize subscriptions status "at request", but it's useful if other modules (like Mailman Manager) needs also mailman passwords or you want provide status information when the mailman server is unreachable by the web server for a long time.

User warning: Illegal mix of collations (PDOException: SQLSTATE[HY000]: General error: 1267)

Situation:

You installed Drupal core using a third-party installer. Then, you installed or enabled more modules to add more features to your site.

You encounter illegal mix of collation errors involving latin1_swedish_ci and utf8_general_ci collations.
For example, whenever you perform a search using a Chinese keyword, you encounter an illegal mix of collation error.

You realised that about 40 tables in the Drupal database have been created with latin1_swedish_ci collation.
And, Drupal created the rest of the tables with utf8_general_ci collation.

Solution:

Manual Method (30 mins to 1 hr)

1. Put your site to offline mode.

2. Backup all your databases (Important).

3. Select phpMyAdmin.

4. Select the correct Drupal database.

5. Modify table collation:

  • Locate table with latin1_swedish_ci collation
  • Select Structure (Index finger pointing icon)
  • Select Operations tab
  • Change collation to utf8_general_ci
  • Go

6. Modify field collation:

* Some fields have collations, some do not have collation. Do not modify those fields without collation.

  • (Select Structure tab)
  • Locate field with latin1_swedish_ci collation
  • Select Change (Pencil icon)
  • Change collation to utf8_general_ci
  • Save

Permissions and anonymous subscriptions

The access user_mailman_register permission controls the general access to the subscription form page, permitting in a quick way to filter roles that can or cannot manage own subscriptions for allowed lists.
The can subscribe to permission controls what previously created lists are displayed by a user in the subscription form page.
Drupal administrator and users with administer mailman_manager permission can access and manage subscriptions of every user from the subscription form in their profile.

If you need to make a list avaiable in the new user registration form with the global setting Visible in user registration form, you'll need also to apply the can subscribe to permission of that list to the authenticated user.

The two above permissions control also if the anonymous user is allowed to subscribe authorized lists: pay attention to set them correctly or unknown users will be able to subscribe your lists without registering in your site.
If enabled for this role, the subscription form will be accessed at the "/user_mailman_register" url, like for other authorized roles, but in addition it'll request also a valid email address.

How to preserve old URLs during Drupal to Drupal migration by preserving nids and using mod_rewrite

The problem: When migrating content into a Drupal site, no contributed modules provide a way to preserve old NID's during content import when consolidating several Drupal sites into a single installation. Please post counterexamples to this thread, if you know any.

Therefore, it is impossible to preserve old URLs with those modules. Without a way of mapping the old NIDs to their new NIDs, it is impossible to ensure that inbound links from other sites will be preserved.

My particular challenge: This is a write up of how to merge three sites into one while preserving NIDs. When a request comes from oldsite2.com/node/23 it forwards to that nodes new location on the new site, newsite.com/node/2023, likewise from oldsite1.com/node/23 to newsite.com/node/4023. See the problem this solves? I imagine that most people won't find this entire post particularly useful, but you can take parts of it as you might need.

This was a requirement for our client, and so I underwent a somewhat lengthy process to do this. There are probably several steps of this process that can be handled in a different way (for instance, the awk script could have been an SQL or PHP script). Feel free to post those to this thread.

After Upgrade Checklist

After completing the main steps for upgrading, check to ensure the process was successful.

Pages

Subscribe with RSS Subscribe to RSS - Site administrators