WishList Member Version 2.3

Below you will find important notes for the latest version of WishList Member (v 2.3).

It contains detailed info regarding new updates, new features and bug fixes contained within this release.

It also contains information regarding the new WishList Member API.

You can find the details below…

Important Notes for Version 2.3

  • As of Version 2.3 (any build), WishList Member now requires PHP5

Build 590
New functionality

  • function wlm_insert_user added. Use this instead of wp_insert_user now, because some servers experienced issues with wp_insert_user
  • AutoResponder integration using SendStudio.

Bugfixes

  • Clickbank integration is fixed and tested on hostgator accounts

Build 587
Changelog

  • Uses of the characters || passed in the transaction ID caused other parts of the system to malfunction. Removed the || from the stored version

Build 586
Changelog

  • Fixed issue with Cydec transactions truncating the transaction ID and only showing the order id on ADD command

Build 585
Changelog

  • support for WordPress 2.9 and 3.0 added to member management area. Now, WLM Version 2.3 can run on both versions of WordPress
  • fixed misspelling of MakeNoSequential to MakeNonSequential in API

Build 583
Bugfixes

  • Admin overwrite and wrong password issue is solved

Build 582
Bugfixes

  • fixed issues with paging and sort in the Members tab

Build 580
New Functionality

  • Added SendHTMLMail function for sending HTML mails

Changelog

  • Updated broadcast email admin user interface and applied some javascript fixes

Build 579
New Functionality

  • Added function GetContentByLevel this function allows you to find content tied to a specific level. You can pull for categories, posts, pages, and comments

Changelog

  • Added override for member id on function GetUserLevels. This override only works for extensions as the current user is not available with a remote call

Build 578
New Functionality

  • Added Hook capture $_POST values from the PayPal IPN Transactions

Build 576
Changelog

  • extra question Mark icon removed on the Settings page at the bottom
  • new shape of wlm version and build number added to dashboard

Build 574
Bugfixes

  • wlm/wp3 integration possible bugfix.


Build 573
New Functionality

  • core/PluginMethods.php – CreateEmailBroadcastTable –function called in the wpm.php to initialize table upon activation of the plugin
  • admin/members.sendbroadcast.php – holds the form used to update and send EmailBroadcast

API Updates

  • Added the following functions to the API
    • GetOption
    • GetMembers
    • GetLevels
    • MergedMembers
    • GetMemberCount
    • MakePending
    • MakeActive
    • MakeSequential
    • MakeNoSequential
    • MoveLevel
    • CancelLevel
    • UnCancelLevel

Changelog

  • Updated Email Broadcast and added HTML/TEXT emailing.
  • admin/members.broadcast.php – Change it to display and manage archived emails
  • admin/members.php – Change menu for broadcast EmailBroadcast
  • wpm.php – Added a line that calls the CreateEmailBroadcastTable function on activation

Bugfixes

  • wlm/wp3 add new member bug fix.

Build 569
New Functionality

  • Added “Reset Limit Counter” checkbox under the list of “IPs Logged in Today” in the member profile section. This allows the admin to reset the user’s login limit counter.
  • Added option to send email notification to admin if a daily login limit has been reached. This email contains the username, email address and the IP address of the user trying to login.
  • Added error handling routine that displays a link to WishList Products Support
  • Added [wlmuser post] and [wlmuser get] merge codes. this allows admin to display the data that was originally posted during registration on any page… example [wlmuser post licensekey]. useful for displaying data passed during registration.
  • Added pagination links at the bottom of the Content Protection admin area
  • Added MailChimp integration.
  • Added auto-backup trigger when a version change is detected
  • Added backup methods to core/PluginMethods.php. They are:
    • DoBackup – runs the backup routine
    • RestoreBackup – restores a previous backup
    • DeleteBackup – deletes a backup (useful for cleanup)
    • ListBackups – lists all backups
  • Added option to send email notification to admin if a daily login limit has been reached. This email contains the username, email address and the IP address of the user trying to login.
  • Added [ismember] and [nonmember] “private” tags.
  • Added “Enable File Protection” option in Settings page. Default value for this setting is “No”
  • Added ZeroClipboard functionality to allow copying of text to clipboard
  • Added Registration Email Confirmation Email template
  • Added checks for “registration email confirmation” in WPMRegister
  • Added checks for “require admin approval” in WPMRegister
  • Added LevelPending method – returns/sets user’s “Require Admin Approval” status for a level. Note that this is not related to the old Pending status that WishList used to have. That feature will be removed soon.
  • Added LevelUnconfirmed method – returns/sets user’s Email Registration Confirmation status for a level.
  • Added Active and Status properties to WishListMemberUser Class
  • Added GetMemberActiveLevels Method
  • Added GetMemberInactiveLevels Method
  • Added reCaptcha library to extlib/
  • Added reCaptchaResponse method in core/PluginMethods.php.
  • Added reCaptcha tooltip in Membership Levels tab
  • Added reCaptcha public and private key fields in Settings tab
  • Added wpm_showHideLevels and wpm_doAction javascript functions in admin_more.js. This is used by the new Members tab dropdown interface
  • Added $enc parameter to SaveOption and AddOption. Parameter defaults to false. If set to true, then the value of the data to be saved is encrypted before it is saved
  • Added $dec parameter to GetOption. Parameter defaults to false. If set to true, then the value of the data to be returned is decrypted before it is returned
  • Added Tooltips Links to WLM admin user interface.
  • Helpicon.png for ToolTips added.
  • Function Tooltip($tooltipid) added
  • Added option to hide/not hide after login and after registration pages
  • Removed MailChimp from Experimental mode
  • Add New Function CheckMemberTransID to PluginMethods for Cydec integration
  • Function GenerateRandomString , used to generate random TxnID
  • Comment protection for new post by default will be off. that means comment for members belong to selected levels at new post editor displays by default.
  • After Reg page is NEVER protected and After Login page it depends on the settings

API Updates

  • core/API.php:AddUser – API function call for adding WP Users
  • core/API.php:EditUser – API function call for editing WP Users
  • core/API.php:DeleteUser – API function call for deleting WP Users
  • Added isMagicPage() to API
  • SetProtect function added to API ( Set a post/page Protection to yes or no)
  • IsProtected($id) added to API. This function is useful to check a page/post is protected or not
  • Fixed API. Previous versions does not output the results on REST calls
  • Applied fixes to Api.php with regards to returning of levels
  • Added links for API Documentation and Release Notes

Changelog

  • Changed “new version available” text in dashboard to make it sound/read better.
  • Added checking for duplicate Registration URLs on membership levels and shopping cart integrations.
  • Changed color of error messages to red (using the WordPress “error” CSS class). Makes errors stand out even better.
  • Made upgrade notification in Dashboard more prominent.
  • Content protection .htaccess enhancements
  • Added 404 error to Content protection if file does not exist
  • Variable clean-ups
  • Sort levels by level order and subscription timestamp added to Login Hook
  • Orginal widget function modified to accept input $args["title"]; and $args["title2"]
  • Replaced buttons with a dropdown menu in Members tab
  • Added second parameter ($status) to isSequential method. This allows us to easily enable/disable user sequential upgrade with just one function call
  • Modified DoSequential to now accept a parameter ($id defaults to null). If this parameter is passed, then the sequential upgrade will be executed for that user ID only. Allows us to easily force a sequential upgrade on a per user basis
  • Modified interface for the Membership Levels tab. We now hide a few options under “Advanced Settings”. Makes the page look cleaner and less confusing for newbies
  • Added option to Require Captcha Image on Registration Page
  • Added option to Require Email Confirmation After Registration
  • Added option to Require Admin Approval After Registration
  • Added “Detailed Access” tooltip
  • Added “Registration Requirements” tooltip
  • Changed behaviour of GetMembershipLevels Method to also exclude “Pending” and “Unconfirmed” levels if third parameter is set to true. Also changed variable name for third parameter from $nocancel to $activeOnly
  • Added code to WPMRegister to set Unconfirmed status of user if level being registered to has this option enabled
  • Modified sidebar widget so that it also adds a strikethrough on pending and unconfirmed levels as well
  • Changed Members tab interface to now also allow manipulation of Confirmed and Approved status
  • Removed “OLD Pending” feature. (Note: Code is still there, either commented out or just skipped)
  • Modified LevelPending method to update Level timestamp (registration date)
  • Modified admin_more.js to accommodate new options in Membership Levels Tab
  • Word “Level(s)” from WLM loginout widget was missing from po file to translate. It is added now: “Level”, “Levels”
  • On IE 8 password field is shorter than username field. So new css class name added to original login widget.
  • Modify integration.shoppingcart.quickpaypro check for the full transaction id if it does not exist parse out the order ID and check for that Cydec Modification
  • Force Unprotected removed from “After login” and “After registration page”.
  • WishList Member now requires PHP5
  • Changed revision to 2.30.xxx

Security Enhancements

  • WLM no longer reduces the login limit counter when someone logs out. This prevents abusers from logging and out sequentially allowing access to an unlimited number of people to actually get access

Bug Fixes

  • Fixed Login Limit issue wherein stale logins are not being removed from database. Also, the logout redirect feature messed up the login limit a bit. Fixed that too.
  • Relocated loading of $this->attachments (File Protection) from the class Constructor to the Init method instead (hooked to WP init) because it uses WordPress functions that are not yet loaded on class creation thereby causing it to fail in some blogs
  • Update MagicPage due to conflict with WP E-commerce (also known as WP Shopping Cart) plugin. The conflict was Wishlist Member Magic Page is duplicated when the WP E-commerce plugin is activated. We now make sure that No page wth title ‘Wishlist Member’ is duplicated.
  • Added “Content-type: text/plain; charset=us-ascii\r\n” to mails being sent by aweber, getresponse and generic integration. This would hopefully fix the issues with Aweber
  • Added check for availability of “mime_content_type” function before using it in FileProtect. If it’s available then use it, if not then just use the mime type provided by WordPress
  • Replaced all instances of $this with $that in all lib/integration.shopping.*.php files
  • File protection does not return the correct filename. Fixed that now.
  • Fixed file protection bug that prevents downloading of files directly uploaded into the WP uploads folder. We no longer protect files in the WP uploads folder that are uploaded directly via FTP as they don’t exist in the WP database. Also fixed mime type problems – we no longer rely on the WP stored mime types but use the PHP function mime_content_type instead.
  • Fixed code that calls shopping cart integration methods. It was hard coded before which makes no sense anymore since we now allow plugging in new shopping carts.
  • Added code to attempt to fix data corruption caused by rolling back to an older version of WishList Member not supporting the WLMDecrypt and WLMEncrypt functions.
  • Fixed page attachments bug wherein WL Member does not inherit an attachment parent’s protection settings if the parent is a page.
  • Fixed SetContentLevels method. It now makes use of the passed $id together with the value of $_POST['post_ID']
  • FileProtection – included the file being accessed in the session name that’s being generated. This prevents the user from downloading all files within the next 30 seconds because his IP is granted access.
  • Fixed profile update redirect.
  • Fixed PHP Warning Reports
  • Increased max length per CSV line to 10000. the old limit of 1024 doesn’t seem to be enough for some people’s CSV files.
  • Made use of sessions to make content protection work with download managers.
  • Removed trailing space from lib/integration.shoppingcart.authorize.net – there should be no trailing spaces.
  • We now only auto-generate backup if the current version is not empty.
  • Loaded WP’s wp-includes/pluggable.php in the Activate method because it’s required by WP_User.
  • Fixed blank registration page problem in WordPress 2.9 when the magic page is moved to trash. Now we regenerate the magic page’s status is not publish
  • Rewrote the MagicPage method to deal with conflicting plugins causing WL Member to create tons and tons and tons and tons of magic pages
  • Added array casts to foreach, array_values and array_keys. eliminates more PHP warning messages.
  • Fixed problems with member import for Mac users by enabling auto_detect_line_endings in PHP
  • Fixed download protection bug that let’s public users access protected posts
  • Fixed page attachments bug wherein WL Member does not inherit an attachment parent’s protection settings if the parent is a page.
  • Fixed SetContentLevels method. It now makes use of the passed $id together with the value of $_POST['post_ID']
  • Added code to attempt to fix data corruption caused by rolling back to an older version of WishList Member not supporting the WLMDecrypt and WLMEncrypt functions.
  • File protection does not return the correct filename. Fixed that now.
  • Replaced all instances of $this with $that in all lib/integration.shopping.*.php files
  • Added check for availability of “mime_content_type” function before using it in FileProtect. If it’s available then use it, if not then just use the mime type provided by WordPress
  • core/PluginMethods.php:FileProtect — made use of sessions to make content protection work with download managers.
  • core/PluginMethods.php:SetFileProtection – PHP Warnings on non-array parameters
  • Fixed PHP Warnings when exporting members
  • Fixed PHP Warning (passing array to md5)
  • Fixed more PHP Warning on arrays
  • FileProtection – included the file being accessed in the session name that’s being generated. This prevents the user from downloading all files within the next 30 seconds because his IP is granted access.
  • Loaded WP’s wp-includes/pluggable.php in the Activate method because it’s required by WP_User.
  • We only auto-generate backup if the current version is not empty.
  • Updated the Concatenation of Name for MailChimp 1. Michael John Lopez becomes firstname – Michael; lastname – John Lopez 2. Juan dela Cruz becomes firstname – Juan; lastname – dela Cruz
  • WP 2.9 bug fix. When we deactivate WLM, we permanently delete the Magic Page and not simply move it to trash.
  • PreventDuplicatePosts Fix. We now base it on the contents of $_POST and not $this->OrigPost
  • Added global After Login and After Logout pages to ExcludePages. This automatically unprotects said pages.
  • Added per level After Login pages to ExcludePages. This automatically unprotects said pages.
  • Plugin Conflict: Pretty link. It block the redirections that happen after the registration form is submitted.
  • Added redirect to homepage on invalid SC integration requests. prevents 404 to be returned when an SC integration URI is visited thereby reducing “check errors” with the supported shopping carts.
  • Fixed MagicPage conflict with the “Yet Another Related Posts” plugin.
  • Fixed slowdown caused by loading file attachments by running the process as a cron event. This speeds up loading time (especially when there are many attachments on the site).
  • Fixed Sequential upgrade bug that removes users from inactive levels when sequential upgrade runs.
  • Fixed email confirmation process
  • Fixed registration bug that keeps on complaining about reCaptcha by moving the “return $recaptcha” line in the reCaptchaResponse method to the right place – outside the if block
  • Fixed Sequential upgrade bug that messes up the membership levels when ADD and MOVE are combined. The DoSequential method now pre-determines the levels first and adds them all at once at the bottom of the method.
  • Fixed WishListMemberUser::LoadLevels code that retrieves the transaction IDs. Problem was that it was looping through the wrong variable.
  • Paypal IPN Fix – we no longer redirect on ShoppingCartRegistration. Found out that Paypal IPN expects a 200 OK header response.
  • Fixed slowdown of large sites caused by the WLMDecrypt routine. We no longer Encrypt WLM data. Rather we only Encrypt data that needs to be encrypted
  • Fixed ReadURL bug wherein it calls the URL twice if page returned is a blank page. The bug is caused by WP_Http returning “false” in the request body if page returned is blank making our code think that an error occured and thus trying to retrieve the URL via file_get_contents. Fix made by appending empty string to request body.
  • Fixed default category protection bug
  • Added category protection radio buttons on the “Add Category” form for newer WP versions
  • Possible fix for this issue – If you add another levels( more than two) newest added level will be removed by seq upgrade in the code, you can see this at login widget when user logs in. (because Transaction ID is left empty?)
  • Remove_action(‘init’…) removed. Fix for Semiologic plugin.
  • Updated the Mailchimp Integration
  • Change to fix the GetUserLevels. When the idsonly flag was passed with the value of false or the default of false it would still only show id’s.
  • Method FileProtectLoadAttachments – changed UpdateOption to SaveOption. SaveOption is the right method call
  • Changed file protection htaccess so that it does not protect images
  • File protection bug fix: we now call FileProtectLoadAttachments first before checking for protection status.
  • Sequential upgrade bug fix. Prevent members with empty TxnID or wrong Member Since Date move to wrong level.

Tags: ,

Comments are closed

About WPWL Team

WishList Products is a company dedicated to creating easy-to-use tools for small business owners looking to boost their bottom line profits.

,

Comments are closed.