Time to deprecate the Popups module

While working on a Drupal project this week which used popup windows to create nodes that were linked via node reference fields, I started running into major stability problems between a variety of modules that were being used, particularly Popups_Reference and Vertical_Tabs. Popups_Reference is a pretty neat little module that uses the Popups API module to provide the interface and lets you add buttons underneath a modal, which Vertical Tabs is a new interface style used heavily in Drupal 7 which presents form framesets as a series of vertically-aligned tabs; this module is a port of the D7 code for Drupal 6.

I happened to tweet about fixing Popups_Reference and had several people reply that Popups API had been deprecated in favor of Modal Frame API (Bangpound) and I should try using NodeRelationships instead (JerDavis, Hefoxed). Looking at the Popups API project page it actually says:

This module is not currently maintained. Please check out http://drupal.org/project/modalframe, or contact me if you would like to become a maintainer.

While the project could be continued, with ModalFrame having lots of support from other modules and being a core part of Drupal 7, it makes sense to just deprecate Popups API entirely and move all modules to using ModalFrame instead.

Towards the goal of deprecating Popups API I have added / updated tickets for a number of modules to promote this effort:

In the interest to helping to organize the effort I've added an issue tag "Popups API deprecated" which can be used to quickly see which modules have been migrated or deprecated.

If you use one of the modules above I strongly urge you to get involved and help the effort to migrate it to using ModalFrame.


Not sure about this yet. Note

Not sure about this yet.

Note that there's also http://drupal.org/project/dialog

Also note that D7's Overlay is no longer remotely comparable to http://drupal.org/project/modalframe - it has been completely rewritten in the meantime; not even using jQuery UI's dialog anymore.

Furthermore, the primary reasons for not going with http://drupal.org/project/popups for D7's original Overlay implementation were:

1) duplicate HTML IDs -- elegantly fixed in D7's ajax.js

2) lazy-loading of CSS/JS -- which is required either way; http://drupal.org/node/561858

i.e., both reasons have been or have to be resolved independently from the future of these modules.

Effectively, I think that Dialog + Popups + Modalframe + CTools's modal are still competing. Without resolving bullet 2) lazy-loading of above, we won't be able to properly handle non-IFRAME solutions. Since IFRAMEs suck, but the currently working solutions need to use them, the last word has not been spoken yet.

However, it would be great if all of us JavaScript masters would be joining forces instead of duplicating thoughts, discussions, work, and efforts.

Sun, I agree completely,

Sun, I agree completely, duplicate effort for an API like this is a complete waste of time. I suspect that once D7 is released we'll see a new version of Modalframe that's a backport of the D7 code.

How to reply

Care to add your own 2 cents? Let me know via Twitter or my contact page.