You are not logged in.
Download here (works in TXP 4.0.3, 4.0.4, 4.0.5 and higher versions in the TXP 4.0.x series):
zem_contact_reborn
zem_contact_lang
Report problems or ask questions about this version of the plugin here in this topic please.
The only change that might affect people is that label attribute values are assumed to be plain text, not html escaped text, since the emails need the plain text values and it’s much easier in the plugin to escape the label when showing it in the browser (if needed). In the older versions no escaping or unescaping was done which could cause problems in either email or in HTML.
See also: upgrade info and changes in older versions
If you get a blank screen or a HTTP 304 or a HTTP 404 error during plugin installation, put the following in a .htaccess file in your textpattern folder (not your website root!) during the install and remove it afterwards:
<IfModule mod_security.c>
SecFilterScanPOST Off
</IfModule>
If you get an error message during plugin installation that reads “malformed or empty plugin code”, you either didn’t copy/paste the entire plugin code (try again!) or your webhost has restricted the maximum amount of text that can be transmitted using a form. In the latter case, try installing the compressed version of the plugin (requires TXP 4.0.4 or higher).
Apparently very few people still use this version with the rather old TXP 4.0.3, because it took almost 3 months before someone pointed out that TXP 4.0.3 does not have a built in is_valid_email() function. If you are still using TXP 4.0.3 (please, please upgrade!), then you can temporarily restore 4.0.3 compatibility by editing the plugin and adding the following code at the end. You’ll have to remove it when upgrading to a higher version:
function is_valid_email($address)
{
return preg_match('/^[a-z0-9](\.?[a-z0-9_+%-])*@([a-z0-9](-*[a-z0-9])*\.)+[a-z]{2,6}$/i', $address);
}
Last edited by ruud (2007-11-14 19:28:52)
Offline
Hi Ruud, thanks for the update, however, attempts to install this plugin result on a blank page.
Regards,
D
Offline
Works without a flaw, but I also had to disable SecFilterScanPOST of mod_security to avoid the “WSOD” upon installation.
Try wet_quicklink | Me | @rwetzlmayr | +Robert Wetzlmayr | Repos
Offline
I’ve written a little API plugin that improves compatibility between zem_contact_reborn and asy_jpcache. The plugin gets rid of “form already used” errors by clearing the cache when a ZCR form is submitted. Basically, it makes asy_jpcache handle ZCR forms the same way it already handles comment submissions.
“Never attribute to malice that which can be adequately explained by stupidity.”
— Hanlon’s Razor
Offline
Can you do anything with optgroup in your txp:zem_contact_select tag? Check out my workaround by turning off CSS at this site.
Notice that I created a Recipient2 field to actually work, and a Recipient field to look pretty. On submit, Javascript sets Recipient2=Recipient to make the form go the correct person: not ideal.
Thanks!
Last edited by lrumley (2007-09-11 02:32:29)
Before you criticize someone, you should walk a mile in their shoes. That way, when you criticize them, you’re a mile away and you have their shoes.
Offline
Works beautifully. Can we disable or remove pap_contact_cleaner now, or is it still a good idea to use it?
TXP Tips | @txptips | Me | @jonathanstubbs | Github
TXP Builders – finely-crafted code, design and txp @txpbuilders
Offline
pap_contact_cleaner still helps to reduce spam, so if you get a lot of spam it can be a useful plugin to install (I have it installed on the websites I maintain).
Offline
jstubbs wrote:
Works beautifully. Can we disable or remove pap_contact_cleaner now, or is it still a good idea to use it?
As Ruud mentioned, pap_contact_cleaner is still a good idea. As originally written, however, it can trip up some software that pre-fills forms. This is because the field ids that it uses are things like “phone,” which those programs use to single out fields that can be pre-filled.
With a couple of edits, the plugin can be almost as effective without causing problems. Look for two function calls:
finput('text','phone',ps('phone'),'','','','','','phone')
and
finput('text','mail',ps('mail'),'','','','','','mail')
Change the first and third occurrences of “phone” and “mail” in each function call, like so:
finput('text','eggs',ps('phone'),'','','','','','eggs')
and
finput('text','spam',ps('mail'),'','','','','','spam')
You can use any word to replace the defaults, so long as it’s a valid HTML name or id attribute value. Don’t use words that might be common id or name values for fields on other forms (like “user”). Also, don’t use the examples I gave above. If spammers know which fields are bogus, this technique loses its effectiveness. Our chief weapon is surprise!
Last edited by Logoleptic (2007-09-16 02:15:30)
“Never attribute to malice that which can be adequately explained by stupidity.”
— Hanlon’s Razor
Offline