latest stable versions: v150827 (changelog)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Jason (Lead Developer)

Staff Member

My Latest Replies (From Various Topics)

Viewing 25 replies - 1,851 through 1,875 (of 1,909 total)
Author Replies
Author Replies
Posted: Tuesday Feb 14th, 2012 at 12:59 pm #5045
Staff Member

Hi there. Thanks for reporting this important issue.
Interesting. These .htaccess rules have been tested against Apache v2.x and Litespeed. What type of web server are you running please? Is it something other than Apache or Litespeed?

Posted: Tuesday Feb 14th, 2012 at 12:36 pm #5044
Staff Member

Hi Gail. Thanks for your inquiry.

I’ve located your account. I’m having your Username/Password sent over via email now. Please respond to that email with the details of your second site and we’ll discuss that with you there.

Posted: Tuesday Feb 14th, 2012 at 12:25 pm #5042
Staff Member

Thanks for the follow-up.

Well, I wouldn’t use this Hook, because depending on the type of transaction, a User ID might not even exist yet during IPN processing. Instead, I would use s2Member’s API Notification for Payments, which already includes the details you need through Replacement Codes listed in your Dashboard under: s2Member -> API Notifications -> Payment Notifications.

Keep in mind that your custom script connected to an API Notification can also take full advantage of the WordPress/s2Member Framework, by including the /wp-load.php file.

That being said, you might find this function useful in your custom coding endeavor.
c_ws_plugin__s2member_utils_users::get_user_id_with()
See also, source code documentation here.

I hope that helps :)

Posted: Friday Feb 10th, 2012 at 1:03 am #4720
Staff Member

Very welcome Jason :-)

Posted: Friday Feb 10th, 2012 at 1:01 am #4719
Staff Member

Hi there. Thanks for your inquiry.

s2Member and s2Member Pro are geared more toward ecommerce than social networking. However, s2Member is fully compatible with BuddyPress & bbPress, which can be connected together all within WordPress. The BuddyPress/s2Member combination is pretty awesome, and I think that’s what you’re looking for. Please see: http://buddypress.org/

Posted: Friday Feb 10th, 2012 at 12:49 am #4718
Staff Member

Regarding your original accusation.

Copy pasting this because my last response went ignored, which is frustrating. I’m considering doing a chargeback as this software has done nothing but cause me problems.

FYI: I just researched your previous post activity on our forums. I see that you’ve posted over 50 times in our forums and you’ve received responses numerous times, with well over 100 replies from myself and Support Reps such as Raam and Cristian. In fact, in many of your previous posts, you seemed quite satisfied with our support service.

You are: CN (aka: ChuckNorris, is this correct?)
See: http://www.primothemes.com/forums/search.php?author_id=551&sr=posts
See: http://www.primothemes.com/forums/viewtopic.php?f=4&t=15622&p=56202#p56202

I’d like you to address my previous question.
Please point me to the thread or forum post that went unanswered so that I may investigate that for you. If a request for support went unanswered, I need to identify where/when/why that occurred. The old forum system remains available in read-only mode, so you can look there if you need to. I took a quick look and found a couple of abandoned threads, but it looks like that was because we picked up with you in another thread which you posted shortly after.

First, I talked to CCBill, you can do datalink requests every hour.

Yes, I stand corrected. It seems this may have changed at some point. The document here clearly states that ccBill’s DataLink service can receive connections every 60 minutes.

Given the nature of this remote request to ccBill, we wouldn’t want to reconnect any more than we need to. Once each day is adequate for s2Member. A default installation of s2Member Pro will only make connections to the DataLink API once every 24 hours.

As seen here in the source code for s2Member.

/s2member-pro/includes/classes/separates/gateways/ccbill/ccbill-datalink.inc.php at line #72.

if (!($last = get_transient ("s2m_" . md5 ("s2member_pro_ccbill_last_datalink"))) || $last < (time () - 86400))
&#91;/hilite&#93;

The fact that you're seeing those repeated connections to ccBill would lead me to believe there is another underlying issue somewhere. Perhaps with another plugin or theme conflict which my be adversely affecting the &#91;hilite code&#93;get_transient()&#91;/hilite&#93; or &#91;hilite code&#93;set_transient()&#91;/hilite&#93; functions in WordPress.

Actually, your log shows that s2Member is attempting to re-connect every 10 minutes, which is the same schedule as the master WP-Cron Job. Which could mean, the WordPress functions &#91;hilite code&#93;get_transient()&#91;/hilite&#93; and &#91;hilite code&#93;set_transient()&#91;/hilite&#93; are not working properly on your installation, resulting in too many ccBill connections; because s2Member is unable to store the last time it ran the ccBill DataLink routine.

Have you been able to reproduce this problem on a clean installation of WordPress, with only s2Member active, and with the default theme for WordPress? If so, please send us a Dashboard login and we'll run diagnostics for you.

If you're running in a live environment with a custom theme, or with other 3rd party plugins, I would recommend that you disable any that might be in conflict with s2Member and see if this resolves the issues that you're having.

<strong>Another option:</strong> I'm attaching a debugging version of the DataLink handler that s2Member uses, which will log some additional details for us to review with you. If you'd like to unzip and upload this file to your installation of s2Member Pro v111220, please do. Allow this file to override your existing copy of /s2member-pro/includes/classes/separates/gateways/ccbill-datalink.inc.php

<a href="http://d1v41qemfjie0l.cloudfront.net/s2member/uploads/ccbill-datalink.inc_.php_.zip" rel="nofollow">http://d1v41qemfjie0l.cloudfront.net/s2member/uploads/ccbill-datalink.inc_.php_.zip</a>

If this happens again, please send us the log file located here:
/plugins/s2member-logs/s2-debug.log

“1 => ‘Ignoring this DataLink IPN. No IPN signup vars for Subscr. ID: 0111338xxxxxx028940.’,”

And then I looked up the customer number in my dashboard and the customer is there! In the dashboard!

Very good. So the Subscr ID. is there. Now, what about the IPN Signup Vars? Did you check your database to see if s2Member has the IPN Signup Vars for this User/Member? If you’re not sure how to check the database, you can use this method provided by s2Member.

<?php
if($ipn_signup_vars = c_ws_plugin__s2member_utils_users::get_user_ipn_signup_vars(false, "0111338701000028940"))
	print_r($ipn_signup_vars);
else
	echo 'This Paid Subscr. ID was not found.';
?>

If you do check the database, what you’re looking for is the entry that s2Member stored in the wp_usermeta table with this meta_key “wp_s2member_ipn_signup_vars“.

Posted: Thursday Feb 9th, 2012 at 9:54 pm #4710
Staff Member

Excellent. Thank you for posting that John.

Posted: Thursday Feb 9th, 2012 at 9:47 pm #4709
Staff Member

Thanks for the follow-up.

Your installation of WordPress should already have user_nicename stored in the wp_users table for each User/Member; this happens automatically during registration via core WordPress functionality.

user_nicename is the same as user_login, except it’s sanitized by these three functions:
http://codex.wordpress.org/Function_Reference/remove_accents
http://codex.wordpress.org/Function_Reference/sanitize_title
http://codex.wordpress.org/Function_Reference/sanitize_title_with_dashes

In the event of a collision, WordPress will suffix user_nicename with “-2“, and if that fails, it will increment the value of “-2” until it finds a unique value when compared to other users.

when you try to get to their profile page?

What profile page are you referring to please? s2Member doesn’t use the Username in any URLs leading to a Profile page, and neither does WordPress that I’m aware of.

Posted: Thursday Feb 9th, 2012 at 9:13 pm #4707
Staff Member

Hi Brian. This message should only appear for a customer who originally paid you through a PayPal Button. In that particular case, there’s no way for s2Member to cancel them dynamically through the PayPal API (i.e. they MUST log into their PayPal account to cancel their “Standard Subscription”).

In all other cases, the Pro Form for cancellations should work as you describe. Have you tried testing this on an account that originally signed up through your Pro Form? Anything recurring that goes through a Pro Form is considered a “Recurring Profile”, and those can be cancelled easily by s2Member’s Pro Form for cancellations.

Posted: Thursday Feb 9th, 2012 at 9:08 pm #4706
Staff Member

Hi Debbie. Thanks for your inquiry.

When you configure Custom Registration/Profile Fields with s2Member, those will show on your Pro Form during registration just as you describe. However, they’ll only be visible in the context in which they were configured. For example, if you configure Custom Registration/Profile Fields for Members at Level #1, they’ll only be displayed during registration if your Pro Form is configured to provide access to Level #1.

Also, if you’re already logged-in when you test your Pro Forms, you won’t see these fields, because s2Member assumes they’ve already been collected (i.e. you’re already logged in). Please log out before testing.

Posted: Thursday Feb 9th, 2012 at 9:03 pm #4704
Staff Member

Hi there. Thanks for your inquiry.

You said “custom UI directories”. I’m not sure what that means. It’s not a term that we use with s2Member. Are you referring to your Pro Form templates? (i.e. the layout of your checkout forms).

Error# 11586. DPRP is disabled.
If a transaction is still going through, it’s because you’re charging something initially? An initial charge might go through, but if DPRP is disabled, s2Member will fail to create a Recurring Profile that goes with it (i.e. to handle future billing). Thus, your configuration is only half-way right. You’ll need to resolve the DPRP issue first please.

3. Our service works by giving credits based on the package the customer signs up for. We are having a problem with the way the credit is initially granted. In other words, the credit is not being assigned once the person enrolls.

Sorry, can you please elaborate on this just a bit further for me? I’m not sure I understand. It almost sounds like this could be related to the DPRP issue as well though.

Posted: Thursday Feb 9th, 2012 at 8:57 pm #4703
Staff Member

Hi John. Yes, certainly possible. Not as easy as we’d like, but we’re working to improve that. In the mean time, you can use the instructions here, they apply also to Authorize.Net Pro Forms.

You’ll just need to setup a form which collects the amount, and pass that to your checkout page, which contains the Pro Form. The trick here is that you’ll want to fill your Pro Form Shortcode with the amount (dynamically), perhaps using a variable that comes from another location of your site.

I think this will give you some creative ideas.
http://www.primothemes.com/forums/viewtopic.php?f=36&t=1604#p15263

Posted: Thursday Feb 9th, 2012 at 8:52 pm #4702
Staff Member

Hi there. Thanks for your inquiry.

Nope, not out of the picture, you’ll see this feature added one day soon. We moved away from phpBB just because it’s a separate application, which does not integrate as deeply with our other offerings.

Posted: Thursday Feb 9th, 2012 at 8:48 pm #4701
Staff Member

Hi there. Thanks for your inquiry.

This is a quick fix. It looks like your options are configured wrong is all. You have the same option value for every line, so no matter what the registrant chooses, he also ends up with US as the form field value. A browser will default to Wyoming, because it’s the last one in the list.

You should have…
option value|option label

AL|Alabama
AK|Alaska
AZ|Arizona

etc..

Posted: Thursday Feb 9th, 2012 at 8:42 pm #4700
Staff Member

Hi Kirk. Thanks for your inquiry.

s2Member can be used to sell both Membership Access, and also to sell access to Specific Posts/Pages. This is integrated with ClickBank, so yes.

However, s2Member is NOT yet compatible with ClickBank’s Pitch Plus Upsell feature.
http://www.clickbank.com/blog/tag/pitch-plus/

You can certainly sell a single customer multiple items though, or even Independent Custom Capabilities. You’ll just need to be sure that you’re setting things up “the s2Member way”, using s2Member’s existing architecture. I recommend this video tutorial: http://www.s2member.com/videos/ED64B278374AB72F/

Posted: Thursday Feb 9th, 2012 at 8:31 pm #4698
Staff Member

Hi there. Thanks for your inquiry.

Can you please state the version of WordPress & s2Member that you’re running?
Also, you mentioned that inline files are not working properly. Who is your hosting provider please? Do you know if your web host is running Apache, Windows IIS, LiteSpeed, etc?

Posted: Thursday Feb 9th, 2012 at 8:26 pm #4697
Staff Member

There’s a related article here which might be of interest.
http://www.primothemes.com/forums/viewtopic.php?f=36&t=1604

Posted: Thursday Feb 9th, 2012 at 7:00 pm #4692
Staff Member

Hi Ryan. Thanks for your inquiry.

Are you running s2Member Pro Forms for free registration,
or using the default WordPress Registration Form?

Posted: Thursday Feb 9th, 2012 at 6:37 pm #4691
Staff Member

Thanks for your inquiry.

Yes, that’s certainly possible. This video tutorial might be of some assistance to you.
http://www.s2member.com/videos/330982E83739ABDF/

Pro Forms for Free Registration can also be configured to produce an EOT event, by specifying a trial period in your Pro Form Shortcode. For instance, if you navigate in your Dashboard to: s2Member -> PayPal Pro Forms -> Free Registration Forms, you will be given a Shortcode like this:

[s2Member-Pro-PayPal-Form register="1" level="0" ccaps="" desc="Signup now, it&#039;s Free!" custom="www.example.com" tp="0" tt="D" captcha="clean" /]

You can modify this Shortcode to provide free access at Level #1 if you prefer, and also limit that access to a period of 14 days, by specifying tp="14" tt="D" in your Shortcodes. For further details on Shortcode Attributes, please check your Dashboard under: s2Member -> PayPal Pro Forms -> Shortcode Attributes Explained.

[s2Member-Pro-PayPal-Form register="1" level="1" ccaps="" desc="Signup now, it&#039;s Free!" custom="www.example.com" tp="14" tt="D" captcha="clean" /]
Posted: Thursday Feb 9th, 2012 at 6:28 pm #4687
Staff Member

Hi there. Thanks for your inquiry.

I just took a look at your site and I find that you
have some JavaScript errors in the Page with your Pro Form Shortcode for s2Member.

These errors are occurring because this file is failing to load properly.

403 Permission Denied:
http://www.ospvideovault.com/wp-content/plugins/s2member/s2member-o.php?ws_plugin__s2member_js_w_globals=1&qcABC=1&ver=111220-111220-4271877967

I would recommend that you contact BlueHost again and show this URL to them. They’ll need to correct whatever issue remains on the server so that this file will load successfully. If they’re not running mod_security, perhaps they’re running a similar application under a different name.

403 errors are definitely a server configuration issue. That’s a forbidden error, indicating your server is configured not to allow this file to load from it’s current location.

Posted: Thursday Feb 9th, 2012 at 6:20 pm #4686
Staff Member

Hi Jeffry, thanks for the follow-up.

Yes, it does. Please check your Dashboard under:
s2Member -> Authorize.Net Options – Signup Confirmation Email.

Same interface there as well. Just list the recipients that you’d like.

For example:

"%%full_name%%" <%%payer_email%%>; "Webmaster" <webmaster@example.com>
Posted: Thursday Feb 9th, 2012 at 6:14 pm #4685
Staff Member

Hi Grace. Thanks for your inquiry.

Actually, WordPress does allow those characters in a Username. s2Member uses existing validation routines provided by the WordPress core, which make use of this framework function. Please see: http://codex.wordpress.org/Function_Reference/sanitize_user

alphanumeric characters plus these: _ space . - * @

Sorry if the Pro Form is misleading in this regard. s2Member encourages Users/Members to use only alphanumerics, but s2Member does need to obey the core framework routines also. If WordPress allows those characters, so will s2Member.

If you’re having trouble with these types of Usernames in Profiles, you might consider using the user_nicename field from the database, instead of the Username. WordPress stores the user_nicename field specifically for that purpose (i.e. for URL formulation).

If you continue to have trouble, please describe what you’re trying to accomplish exactly, and we’ll try to assist you. Where are the Profiles that are breaking? Is that in another plugin/theme perhaps? If so, you might try contacting the developer to see if they can use the user_nicename field instead.

Posted: Thursday Feb 9th, 2012 at 4:59 pm #4676
Staff Member

Hi there. Thanks for your inquiry.

Yes, in your Dashboard, please navigate to:
s2Member -> PayPal Options -> Signup Confirmation Email

There you can type a list of recipients. Feel free to include yourself. s2Member sends each email separately, to each recipient that you list. In other words, you won’t have to worry that your customer will know the email came to you as well. s2Member makes sure that doesn’t happen :-)

Posted: Thursday Feb 9th, 2012 at 4:52 pm #4672
Staff Member

Hi there. Thanks for your inquiry.

It sounds like you deleted Users from the wp_users table, but left references to these Users in the wp_usermeta table. You’ll need to make sure that all related entries matching the user_id column in your wp_usermeta table are removed. Otherwise WordPress will think they still exist.

* Be sure to back things up before deleting :-)

Posted: Thursday Feb 9th, 2012 at 3:05 pm #4663
Staff Member

To answer your question…

A script to set the EOT Time will force s2Member to EOT each of those Users/Members at a specific date/time in the future. Future payments will NOT override this, no. Once you set an EOT manually, the only things that may override that value are as follows:

1. A new purchase is processed (not a payment, a new purchase, of something new).
2. A chargeback or refund is processed, and you have s2Member configured to force an immediate EOT on a chargeback or refund, under: s2Member -> PayPal Options -> EOT Behavior.

In all other cases, s2Member will respect whatever manual EOT Time you’ve configured for a customer. This is one of the primary purposes of this feature, is to put control into the site owner’s hands when it’s required for one reason or another.

A script. A utility script to force EOT Times for all Users/Members might look something like this.

<?php
$eot_time = strotime("2012-12-31");
foreach(get_users("role=s2member_level1") as $user)
	{
		update_user_meta($user->ID, "s2member_auto_eot_time", $eot_time);
	}
?>

You could tune this in further perhaps, with the documentation here on the get_users() function for WordPress®. Please see: http://codex.wordpress.org/Function_Reference/get_users

* I don’t think you’ll need this however, if you apply the patch file I submitted previously.

Viewing 25 replies - 1,851 through 1,875 (of 1,909 total)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Contacting s2Member: Please use our Support Center for bug reports, pre-sale questions & technical assistance.