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 - 876 through 900 (of 1,909 total)
Author Replies
Author Replies
Posted: Thursday Jan 17th, 2013 at 6:59 am #37871
Staff Member
UPDATE: Byte-range requests are now supported by s2Member, starting with v130116.
See: http://www.s2member.com/changelog/#s2-changes-v130116

Thanks for your patience.

Posted: Wednesday Jan 16th, 2013 at 12:41 pm #37780
Staff Member

Thanks for your patience.

I confirmed the missing log entries, which also explains the missing Payment Notification you mentioned. In order to solve the missing Payment Notification issue, we just need to solve the missing log entries (e.g. to determine why s2Member is failing to receive the IPN data related to this type of transaction).

I was unable to reproduce this in our lab, so I have to assume (at this point), the issue is installation-specific. Whenever I see data in the paypal-api.log file, but there is no matching data in the paypal-ipn.log file, it indicates to me that s2Member’s remote connection to it’s IPN handler is failing internally (e.g. the remote URL connection is timing out, or failing to connect – either all the time, or some of the time).

Because s2Member uses the built-in WordPress WP_Http class to make these connections, we can attach a logger to this class, and monitor errors that occur. My hope is this will shed light on the underlying issue for you.

Please create this directory and file:
/wp-content/mu-plugins/s2-http-api-debug.php
(NOTE: these are MUST USE plugins, see: http://codex.wordpress.org/Must_Use_Plugins)
(See also: http://www.s2member.com/kb/hacking-s2member/)

<?php
add_action('http_api_debug', 's2_http_api_debug', 1000, 5);
function s2_http_api_debug($response = NULL, $state = NULL, $class = NULL, $args = NULL, $url = NULL)
	{
		$info = array(
			'state'           => $state,
			'transport_class' => $class,
			'args'            => $args,
			'url'             => $url,
			'response'        => $response
		);
		
		$logs_dir = WP_CONTENT_DIR.'/plugins/s2member-logs';
		
		if(!is_dir($logs_dir))
			{
				mkdir($logs_dir, 0777, TRUE);
				file_put_contents($logs_dir.'/.htaccess', 'deny from all');
			}
		file_put_contents($logs_dir.'/http-api-debug.log', var_export($info, TRUE)."\n\n", FILE_APPEND);
	}
Please monitor this log file (/s2member-logs/http-api-debug.log), and let us know if you come up with anything. Feel free to send this log over to us for review if this problem occurs again, so we can help you determine what the underlying issue really is. Thanks!
Posted: Wednesday Jan 16th, 2013 at 9:14 am #37720
Staff Member

Details received. Thank you!

There is only one entry your log file, and s2Member logged the following important snippet.

'ipn_track_id' => '5335e3d0bdef5',
's2member_log' => 
array (
  0 => 'IPN received on: Sun Jan 13, 2013 10:12:19 pm UTC',
  1 => 's2Member POST vars verified through a POST back to PayPal®.',
  2 => 's2Member originating domain ( `$_SERVER["HTTP_HOST"]` ) validated.',
  3 => 's2Member `txn_type` identified as ( `web_accept|subscr_signup` ).',
  4 => 's2Member `txn_type` identified as ( `web_accept|subscr_signup` ) w/ update vars.',
  5 => 'Unable to modify Subscription. The existing User ID is associated with an Administrator. Stopping here. Otherwise, an Administrator could lose access.',
),
This indicates that you ran a test transaction while being logged in as an Administrator of the site. Please log out of your site before testing what a customer will see.

See also: Knowledge Base » Testing User/Member Perspectives

Please let us know if problems persist :-)

Posted: Tuesday Jan 15th, 2013 at 7:29 pm #37685
Staff Member
Excellent work. You’re VERY welcome.
Posted: Tuesday Jan 15th, 2013 at 7:05 pm #37683
Staff Member

Thanks for your patience.

Please see this thread regarding the inFocus theme, and for a solution to this issue.
See: http://mysitemyway.com/support/topic/infocus-adding-tags-into-plugin-content
See also: http://wordpress.stackexchange.com/questions/49305/wordpress-adding-br-tags-into-plugin-content

Please let us know if problems persist :-)

Posted: Tuesday Jan 15th, 2013 at 6:17 pm #37681
Staff Member

Details received. Thank you!

~ Investigating.

Posted: Tuesday Jan 15th, 2013 at 5:53 pm #37678
Staff Member

Details received. Thank you!

~ Investigating.

Posted: Tuesday Jan 15th, 2013 at 5:45 pm #37676
Staff Member

Details received. Thank you!

It appears to me that s2Member is redirecting the Free Subscriber properly, to your Membership Options Page. However, your Apache web server is responding with the following HTTP status code.

HTTP/1.1 414 Request-URI Too Long
Server: Apache

HTTP/1.1 414 Request-URI Too Long

The URL that s2Member is attempting to serve is only 308 characters. Generally speaking, the maximum length of a URL should be capped around 2000 characters, not at 300 or less. I suggest that you contact your hosting company about this, and see if they can provide you with some insight.

You might also want to have a look at this KB article. It could be Mod Security, implemented by your web host.
http://www.s2member.com/kb/mod-security-random-503-403-errors/

Posted: Tuesday Jan 15th, 2013 at 5:28 pm #37673
Staff Member

Yes, that is correct! Nice work :-)

Posted: Tuesday Jan 15th, 2013 at 5:01 pm #37664
Staff Member

Thanks for your reply :-)

Your shortcode contains: custom="www.feedbackappreciated.net". That matches up with the previous installation that you sent over. Does this also match up with the new test installation that you’ve setup?

Posted: Tuesday Jan 15th, 2013 at 4:56 pm #37662
Staff Member

Thanks for the follow-up :-)

No, I’m sorry but a value of 0.5 is not supported in that attribute.

I suggest that you sell Membership Level Access with a One Day Fixed-Term, when you configure your Pro Form. Then, create a script and connect it to s2Member’s API Notification for Payments. In that script, you would set a customer’s Auto-EOT Time to 12 hours later, instead of 24 hours later.


This code sample assumes that you’re selling Membership Level Access with a One Day Fixed-Term. This Payment Notification Handler will convert the ONE day, into a 12 hour term for you.

Step #1.

Please create this directory and file:
/wp-content/mu-plugins/s2-hacks.php
(NOTE: these are MUST USE plugins, see: http://codex.wordpress.org/Must_Use_Plugins)
(See also: http://www.s2member.com/kb/hacking-s2member/)

<?php
add_action('init', 's2_payment_notification_handler');
function s2_payment_notification_handler()
	{
		if(!empty($_GET&#91;'s2_payment_notification'&#93;) & !empty($_GET&#91;'user_id'&#93;) && !empty($_GET&#91;'item_number'&#93;))
			{
				if(preg_match('/\:1 D$/', $_GET&#91;'item_number'&#93;))
					update_user_option((integer)$_GET&#91;'user_id'&#93;, 's2member_auto_eot_time', strtotime('+12 hours'));
				exit;
			}
	}
&#91;/hilite&#93;

&#91;warning_box&#93;
This code is untested and may contain bugs. Please let us know if you have trouble.
&#91;/warning_box&#93;

<h4>Step #2</h4>
See: Dashboard -› s2Member® -› API / Notifications -› Payment Notifications

Enter the following URL in the text box provided by s2Member®

http://www.example.com/?s2_payment_notification=1&user_id=%%user_id%%&item_number=%%item_number%%

Of course, replace http://www.example.com with your WordPress installation domain.


You will know this code is working, when a customer pays for a ONE Day membership, and upon inspection of their account in your WordPress Dashboard, you will see that your customer’s Auto-EOT Time, has been set to 12 hours after the payment was received, instead of the ONE day that would have normally occurred.

Also, please be sure that you have s2Member’s Auto EOT System turned on.
See: Dashboard -› s2Member® -› PayPal® Options -› Automatic EOT Behavior

Posted: Tuesday Jan 15th, 2013 at 4:22 pm #37653
Staff Member

Thanks for your inquiry. ~ We appreciate your patience :-)

Please create this directory and file:
/wp-content/mu-plugins/s2-hacks.php
(NOTE: these are MUST USE plugins, see: http://codex.wordpress.org/Must_Use_Plugins)
(See also: http://www.s2member.com/kb/hacking-s2member/)

Posted: Tuesday Jan 15th, 2013 at 4:13 pm #37648
Staff Member

Thanks for the follow-up :-)

May I please see the s2Member Shortcode that was used to originate the purchase? Please verify that you have the following shortcode attribute, and that it matches up with your new installation domain name.

custom="www.example.com" (this MUST match up with your installation domain)

See also: Dashboard -› s2Member® -› PayPal® Buttons -› Shortcode Attributes (Explained)

Posted: Tuesday Jan 15th, 2013 at 4:09 pm #37647
Staff Member

Thanks for your inquiry. ~ We appreciate your patience :-)

Yes, that is possible with s2Member’s “Specific Post/Page Access” functionality.
Please see these sections of your Dashboard for further details.

Dashboard -› s2Member® -› Restriction Options -› Specific Post/Page Access Restrictions
Dashboard -› s2Member® -› PayPal® Pro Forms -› Specific Post/Page (Buy Now) Forms

There is also a video tutorial that goes into some detail on this feature here.
Video » s2Member (Specific Posts/Pages)

Posted: Tuesday Jan 15th, 2013 at 4:03 pm #37643
Staff Member

Thanks for the follow-up :-)

Yea, I’m not seeing anything wrong with those shortcodes. Please submit a Dashboard login for us and we’ll take a look at this for you. Based on the HTML source code that we’re seeing, I suspect that you have a plugin doing some dirty things with the WordPress content filters on your installation.

Please submit your Dashboard login privately: s2Member® » Private Contact Form

Posted: Tuesday Jan 15th, 2013 at 3:58 pm #37642
Staff Member

Thanks for your reply :-)

You might also consider adding a new Role to your WordPress installation. That’s pretty simple to do. You could add a new Role that you might call “Sub Administrator”, or “WP Administrator”, if you like that better.

With this new Role, you could grant these Administrators everything that a normal Administrator would have access to. The only difference is that they are NOT a true Administrator, in the eyes of s2Member; and thus, they will NOT have access to every Custom Capability.

I recommend this plugin to add new Roles:
http://wordpress.org/extend/plugins/capability-manager-enhanced/

See also: http://codex.wordpress.org/Roles_and_Capabilities

Posted: Tuesday Jan 15th, 2013 at 3:52 pm #37640
Staff Member

Thanks for the follow-up :-)

I have a test account that I am walking through all the stages of a refund. I have gotten the PayPal account refund to immediately demote the refunded user to a Subscriber role.

Awesome!

Now, the issue is that the refunded/demoted Subscriber account can still log in to the site and access the Login Welcome Page which I thought would be restricted to s2Member 1 level and above. The page in question has this in the s2Member area of the page in the admin area:

This Page is your:
Login Welcome Page
( automatically guarded by s2Member )

I understand. I’ll try to clarify this for you.

This special Page is protected from public access at all times. A User/Member MUST be logged-in to access your Login Welcome Page. However, anyone with a WordPress Subscriber Role, or higher (i.e. s2Member Membership Level 1, 2, 3, etc) will be able to access your Login Welcome Page. The Login Welcome Page is the first page a User/Member will see upon logging in. If they can login, they can see this Page.

If there is other content that requires Membership Level #1 or higher, a Free Subscriber will NOT be able to access that content of course. If you have content on your Login Welcome Page that is intended for paying Members ONLY (and NOT for Free Subscribers), you can either move that content to a Post/Page that requires Membership Level Access, or you can wrap that content in your Login Welcome Page with s2Member’s Conditionals. See: Dashboard -› s2Member® -› API / Scripting -› Simple/Shortcode Conditionals


The second issue is that when that refunded/demoted Subscriber account clicks on other pages in the site that are restricted to s2Member Level 1 using the Post Level Restriction, a blank page appears, not the Membership Options Page.

That’s very strange. I’m not aware of any bug in s2Member that would cause such a thing. If problems like this persist, please send us a Dashboard login and we’ll have a quick look for you. Please do that privately. See: s2Member® » Private Contact Form

Posted: Tuesday Jan 15th, 2013 at 3:41 pm #37638
Staff Member

Thanks for the follow-up :-)

Have you tested this against a clean installation of WordPress yet?

With that many plugins, there is a good chance for conflicts to occur. It’s very difficult to pinpoint this and say “Oh, it’s s2Member!”, without having tried this on a clean installation first. I understand your concern about upgrading if what you have in the free version is not functioning properly. However, we’ll need to reproduce the bug you’re reporting on a clean installation before we can continue this topic with you.

Posted: Tuesday Jan 15th, 2013 at 3:38 pm #37637
Staff Member

Thanks for reporting this important issue.

Please send us a copy of all of your recent log files privately, along with a reference to the specific transaction that you mentioned. I will review the log files for you and provide some clarity on this. Or, if you would prefer NOT to send us all of your log files, please send me all of the log entries related to a specific customer. Feel free to xxxxx out any sensitive information before you send them over.

Please use: s2Member® » Private Contact Form

Posted: Tuesday Jan 15th, 2013 at 3:33 pm #37636
Staff Member

Thanks for your inquiry. ~ We appreciate your patience :-)

Import/Export functionality is a feature provided by s2Member® Pro. You will need to look over the documentation in your Dashboard regarding the format of your CSV import file. Regardless of what platform you’re coming from, you will need to construct a CSV import file to the specs detailed here please.

See: Dashboard -› s2Member® -› Import/Export -› User/Member Importation

Since you don’t have s2Member® Pro yet, I’m attaching a screenshot of the importation panel so you can get an idea of how this works. Please let us know if you have any other questions/concerns about this.

Please click screenshot to enlarge (right-click “Save As” to download).

Or click: http://d1v41qemfjie0l.cloudfront.net/s2member/uploads/imports.png

Posted: Tuesday Jan 15th, 2013 at 3:25 pm #37632
Staff Member

Thanks for your reply :-)

It depends on what Role they have in WordPress.

s2Member® Membership Levels Provide Incremental Access
* A Member with Level 4 access, will also be able to access Levels 0, 1, 2 & 3.
* A Member with Level 3 access, will also be able to access Levels 0, 1 & 2.
* A Member with Level 2 access, will also be able to access Levels 0 & 1.
* A Member with Level 1 access, will also be able to access Level 0.
* A Subscriber with Level 0 access, will ONLY be able to access Level 0.
* A public Visitor will have NO access to protected content.

New and/or existing WordPress® “Subscribers” are at Membership Level 0. If you’re allowing Open Registration, Subscribers will be at Level 0 (a Free Subscriber). WordPress® “Administrators”, “Editors”, “Authors”, and “Contributors” have Level 4 access, with respect to s2Member. All of their other Roles/Capabilities are left untouched.

See also: Dashboard -› s2Member® -› General Options -› Open Registration
See also: Dashboard -› s2Member® -› General Options -› Membership Levels/Labels

Posted: Tuesday Jan 15th, 2013 at 2:29 pm #37624
Staff Member

Thanks for your patience.

OK. The site that you submitted privately is NOT a clean installation of WordPress. You have many others plugins running there, along with a custom theme. This makes it difficult for you, or for us, to narrow this down to the s2Member plugin as the underlying cause of the bug you are reporting. I suggest that you create a new test installation of WordPress and make an effort to reproduce the bug under a default installation of WordPress (only s2Member/s2Member Pro), and running a default WP theme please.

I did take a quick look to see if I could reproduce the issue you reported; where you wrote:

wp-login.php?action=register is not working in safari its working ok in chrome and firefox.

I tested in Firefox, Chrome (you said these are working). I concur. I also tested in Safari, but I was unable to reproduce the issue that you mentioned. Please let us know if there is something more we need to do, in order to reproduce the bug you’re reporting. Thanks!


Also when a user purchases a subscription it is not creating a new site for them, only registering them as a member. I have sent you login details

Your account status here at s2Member.com shows me that you’ve purchased a Single-Site License for s2Member Pro. In order to obtain supporting documentation, along with our assistance with a Multisite Blog Farm installation, you will need to upgrade your account to a Network Support License please.

What you’re trying to accomplish with a new site being created upon registration, falls under what we consider to be a Multisite Blog Farm. Please see: http://www.s2member.com/terms/#s2-terms-blog-farming

You can upgrade your account by following this link:
https://www.s2member.com/network-support-co/?s2-ssl=yes
(please update this ticket once your account has been upgraded and I will assist you)

You can learn more about the different licensing options here:
http://www.s2member.com/prices/

Posted: Tuesday Jan 15th, 2013 at 1:46 pm #37614
Staff Member

Thanks for the follow-up :-)

When a user is created via s2member, does it add that user to the existing WordPress user/subscriber database?

Yes, that is correct. s2Member integrates seamlessly with WordPress. We use the same database tables that come with WordPress. Users are stored in the `wp_users` table, and meta data is stored in `wp_usermeta`.

Posted: Tuesday Jan 15th, 2013 at 1:43 pm #37613
Staff Member

Details received. Thank you!

Investigating now.

Posted: Tuesday Jan 15th, 2013 at 1:26 pm #37599
Staff Member

Thanks for your inquiry. ~ We appreciate your patience :-)

What most site owners will do is create test accounts from the Dashboard. You can do this from Users -> Add New in WordPress. You might give your test accounts usernames like: subscriber, level1, level2, leve1_ccap_music, level1_ccap_videos, etc. Just use the same password for all of them. These test accounts should be given Roles (or even Custom Capabilities) as you create them from the Dashboard. This way you can log in as one of these test accounts; allowing you to view things from different customer perspectives.

It is also possible to generate links that will automatically log you in as different Users.
This requires a small plugin. I’ll provide instructions below.

Please create this directory and file:
/wp-content/mu-plugins/s2-login-links.php
(NOTE: these are MUST USE plugins, see: http://codex.wordpress.org/Must_Use_Plugins)
(See also: http://www.s2member.com/kb/hacking-s2member/)

Viewing 25 replies - 876 through 900 (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.