Jump to content

Mark

Clients
  • Joined

  • Last visited

Everything posted by Mark

  1. We all agree 😂 Unfortunately your mockup is pretty much exactly one of their "no, you can't do that" examples https://developers.google.com/identity/branding-guidelines
  2. Rather than make the change every new version, you might want to take a look at writing a plugin. This guide has a complete walkthrough but you can skip everything except steps 1, 6 and 8, because all you'll need is a code hook on that class with something like: public function __construct( $url, $timeout=5, $httpVersion=NULL, $followRedirects=TRUE, $allowedProtocols=NULL ) { parent::__construct( $url, $timeout, $httpVersion, $followRedirects, $allowedProtocols ); curl_setopt_array( $this->curl, [ CURLOPT_PROXY => "10.0.0.33", CURLOPT_PROXYPORT => "1080", CURLOPT_PROXYTYPE => CURLPROXY_SOCKS5, CURLOPT_PROXYUSERPWD => "forum:password" ] ); }
  3. It's no longer supported. Do a separate count query: {{$total = \IPS\Db::i()->select( 'COUNT(*)', 'cms_custom_database_8', array( 'field_140=?', $record->primary_id_field ) )->first();}}
  4. Mark replied to Mike I's post in a topic in Feedback
    AdminCP > Commerce > Payments > Settings > Payment Methods > Stripe. Sounds like the webhook isn't set up correctly.
  5. Mark replied to Mike I's post in a topic in Feedback
    Invision Community should automatically capture the transaction once it has verified the transaction passes any anti-fraud rules you've set up (or void it if it doesn't). Check that you've got all the Stripe settings correct and then if you submit a support ticket we can take a look. To do this, go to the Support section of the AdminCP and choose "Something isn't working correctly" and then follow the instructions through until you get to the page to submit a support ticket.
  6. Thanks for letting us know - we'll get that fixed 👍
  7. The form helper already provides CSRF-protection if every change of state is contained within the if ( $values = $form->values() ) { ... }
  8. One of the most popular requests we get for Commerce is for a free trial period for subscriptions. We've heard from many clients that wish to allow their members a free, or reduced cost trial period before auto-renewing the full price. I'm pleased to say that we've now added this functionality into Invision Community 4.5. Let us take a look at how it works. Initial Terms In 4.5 you can now specify an initial term that is different to the normal renewal term for any subscription plan or product. For example, you could make the initial term $0 for 1 week and the normal renewal term $10 per month which will allow you to create 1 week free trial. The initial term doesn't have to be $0, you can use any special price for the initial term you like. Subscription Plans showing Free Trials For developers creating their own applications with Commerce integration, this functionality is also available to you simply by passing a DateInterval object representing the initial term when creating the invoice. Collecting Payment Details for Free Trials Previously, if you were buying something that is free, the entire of the last step of the checkout would just be skipped and the invoice marked as paid. In 4.5, if: The user is purchasing something which has a free initial period, but also has a renewal term (i.e. is a free trial), and You have a payment method which can collect card details (Stripe, Braintree, etc) The user will be prompted to provide payment details that will not be charged until after the free trial. If the user already has a card on file they will not be prompted to provide the details again but will see a confirmation screen rather than the order just being marked paid immediately. Checkout Process for a Free Trial As you can see, allowing a free or reduced cost trial period has never been easier. We hope that you enjoy using this new feature of Invision Community 4.5.
  9. Zapier is a service that allows you to connect over 2,000 web apps. In Invision Community 4.5 we are launching a beta service of Zapier integration for Invision Community in the Cloud. What does Zapier do? Zapier acts as a bridge between Invision Community and other apps, such as Google Docs, Twitter, Facebook, Slack, Trello, Facebook Ads, ActiveCampaign, Zendesk, Asana, Salesforce, Hubspot, Discord, Stripe and more. Zapier has over 2000 apps registered currently, and that number grows every single day. Let us look at a real life example. Right now, if you wanted to add a member to a Google Sheets document each time a new registration was completed, you'd need some fairly complex code to be written that was "triggered" by this registration event. This would take days to write at some cost. Zapier simplifies this by allowing you to connect Invision Community with Google Sheets without needing a single line of code. Zapier allows you to streamline your workflows in minutes. Zapier has two types of events, triggers and actions. Triggers When a certain thing happens on Invision Community, like a member registering or a topic being posted, a trigger can be sent to Zapier to then run actions in other apps. For example, you might create a zaps to... When a member registers, add their email to a Mailchimp list. When a moderator posts a topic in a news forum, share it on Facebook, Twitter and other social platforms. When a member posts something that requires moderator approval, send a message to a Slack channel for your moderators. Invision Community Integration with Mailchimp through Zapier Actions You can also set up Zaps so that when something happens in an external application, it triggers an action in your Invision Community. For example, you might create a zaps to... When you add an event in a Google Calendar, create a Calendar Event on your community. When you receive an email to a feedback email address, create a topic on your community in a forum for moderators. When you create a task in Trello, add a record to a Pages Database on your community. Invision Community Integration with Google Calendar through Zapier Self-Integration In addition to using Zapier to integrate with third party services, you can also connect an Invision Community trigger to an Invision Community action. For example: when a member registers, create a topic in a welcome forum. Self-Integration through Zapier Frequently Asked Questions What integrations are available? In the beta launching with Invision Community 4.5, Zapier will be able receive a trigger when a member account or content (forum post, gallery image, etc.) is created and send actions to create the same. More triggers and actions will be added over time. When will this integration be out of beta? Later this year. Will third party applications and plugins be able to create Zapier triggers and actions? Because the integration requires an app hosted with Zapier (which is written in Node.js) and this has to be submitted directly by the vendor, it will be difficult for third party applications and plugins to integrate with Zapier through Invision Community's integration. In the future we may be able to provide basic abstracted integrations for third party applications and plugins through an extension API. In the meantime, third party authors can of course write their own Zapier Apps if desired.
  10. Which of the devices you listed was your answer to question #4?
  11. @Gauravk Out of interest, can you tell me: Are you in the UAE or a different country? What country is selected by default for you? What language is your computer/browser set to? What does this tool say for "Your browser's Accept-Language header:"? Which OS and browser are you using? I am trying to improve the auto detection and understanding more details about anyone it's incorrect for will be very useful.
  12. And you definitely want to prevent sending out hidden posts, posts in any forums normal users can't see, etc. If you're using PHP, you can use the \IPS\forums\Topic\Post::getItemsWithPermission() function. Alternatively, use the REST API setting "hidden" to 0 and "forums" to the ones you want to include.
  13. Mark posted a release in Release Notes
    This is a maintenance release to fix bugs.
  14. Yes. To put Stripe into test mode you need to use the test mode API keys from your Stripe account.
  15. Just to note on the test gateways one: some providers (off the top of my head, I think Stripe is the only one) don't use that constant but give you different keys for test/live environments. Those two (emails and gateways) are the big ones, but there are probably quite a few others. For example, every now and again we get people who have managed to block themselves in our Spam Defense service by registering several accounts on a test site. Really you should avoid using any live data (like real people's emails) and disable all integrations with external sites/services on a test install.
  16. Mark posted a release in Release Notes
    Version 4.4.6 is a maintenance update to fix issues reported since 4.4.5.
  17. Mark replied to Platinumwealth.co.za's post in a topic in Feedback
    It looks like (though I am still waiting for more details to emerge) that it can be done on standalone websites but you'd need to sign up for Apple's Developer Program, which costs $99/year. We can't create one thing and use it for all sites because each domain and email address you will send emails from to cloaked addresses has to be registered, and there's a limit of 10.
  18. Braintree is a payment gateway provided by PayPal which provides some great additional features for PayPal transactions including a significantly improved recurring payments model. We are delighted to be bringing full support for Braintree for Commerce in Invision Community 4.4. What is Braintree? Braintree is a payment gateway provided by PayPal which supports taking payments by credit cards (including Apple Pay and Google Pay) and Venmo as well as PayPal, providing a good option for communities wanting to use a single payment gateway, and also brings improved functionality for recurring PayPal transactions. For PayPal transactions, there are no additional fees and the checkout experience uses the normal PayPal experience your customers are used to. Recurring PayPal Improvements Recurring payments / Billing Agreements in PayPal have up until now been initiated by PayPal. Invision Community tells PayPal what the renewal terms of a purchase are, but then it's up to PayPal to take that payment and notify your community when it succeeds (or fails). This comes with a number of limitations and problems. It makes it difficult for you as an admin to modify an existing purchase or for the customer to upgrade/downgrade. It also means the customer has to create separate Billing Agreements for each purchase. Most significantly though, it means if there is a delay in receiving the payment (such as an expired card) it is sometimes unclear what should happen on your community's end, and how it can be resolved if/when the payment is received. Other payment gateways work the other way around. When a customer pays by card, for example, they have the option of storing their card details. Later, if they make another purchase or a renewal invoice is generated, Invision Community can tell the gateway to recharge the same card - and if it fails, allow the customer to provide an alternative payment method. This allow both you and your customers to have much greater control, and is much more reliable. Braintree resolves this by allowing customers when paying with PayPal to save their PayPal account in the same way they would save a credit card on file. When paying with PayPal, users will see a simple checkbox which, if checked, will allow future payments to be taken with PayPal automatically. Storing PayPal Accounts for Recurring Payments Other Features In addition to an improved checkout experience, our integration with Braintree supports: Taking payments by Credit Card, including 3DSecure checking and the ability for customer to store card details on file. Braintree uses a fully PCI-compliant method of taking card details in a way that ensures the card information never reaches your server. Apple Pay and Google Pay Venmo, which also allows storing accounts in the same way as PayPal accounts. Offering PayPal Credit Handling chargebacks/disputes Support for Braintree's Advanced Fraud Tools A Disputed PayPal Transaction Existing Setups and Upgrading The existing PayPal gateway will continue to be available for basic PayPal integration, and your existing set up will continue to work exactly as it does now after upgrading. If you are using PayPal, especially if you are using Billing Agreements, we strongly recommend switching to Braintree after upgrading. While it isn't possible to convert existing Billing Agreements, you can allow existing ones to continue to work and use Braintree for new purchases. Please note that while existing setups will work fine, from 4.4 it will no longer be possible to set up a new PayPal method with either Billing Agreements, or to take payments by card, as PayPal has deprecated the API this was using in favour of Braintree and it can no longer be enabled on new accounts. As mentioned though, this does not affect any existing setups, which, if you do not switch to Braintree, will continue to work as they do now. This blog is about our upcoming release Invision Community 4.4.
  19. Mark replied to Yamamura's post in a topic in Feedback
    To clarify since @Joel R mentioned me specifically... 😂 We will be sticking with CKEditor 4 for a little while. While we will presumably move to CKEditor 5 some time in the future, it is currently still very new and maturing (when Joel asked me, it was before 5.11.2.0 was released which is when they re-added paste from word). But most importantly, to move would require a lot of development time (to upgrade our custom plugins) for what will be, to the end-user, very little change. And since CKEditor plans to continue releasing updates to version 4 for the foreseeable future we're not missing out on bug fixes or security patches. Obviously if you're experiencing issues, please submit a support ticket and we can look into that - if you're not seeing the same problems on CKEditor's demo, the problem is likely our end and so it's probable that moving to CKEditor 5 wouldn't resolve it.
  20. Mark replied to AlexWright's post in a topic in Feedback
    We haven't used salted md5s since v4 😉 We use bcrypt.
  21. Allowing your customers to find exactly what they need as fast as possible will no doubt increase sales. A good number of our customers use Commerce to sell physical items. Until now, it's always been a little tricky to set up the store to allow customers to drill down into specific items within the store. In Invision Community 4.4, the sidebar in the store now includes filter options to help customers find the product they're looking for. Using the filter sidebar Administrators can set up whatever filters they like for each product. In this video above, you can see we have set up filters for color and price. You can set these filters up in the AdminCP by simply specifying each possible option: Creating a custom filter Once the filters have been set up, you can then add each filter to the categories it applies to (so you can have different filters for different categories) and when editing any product you can specify as many values for each filter as is appropriate (for example, if you have a color filter, you can choose multiple colors if the product allows the customer to choose a color, or if the product has multiple colors). Choosing the filter values when creating/editing a product In addition to these custom filters, you will also see filters for price (you can set appropriate bands for each category), rating, and stock level. Other Commerce Improvements In addition, we also have a few more features new to Commerce in 4.4: There are new sidebar blocks for best selling products, latest products, product reviews and a featured product. When sending a bulk mail, you can target recipients by the total amount they have spent. Categories with no products in them are hidden automatically in the store. Notification emails sent to customers to let them know their purchase will expire soon (including if they will be automatically charged) have been improved to show more clearly what will happen. When viewing a customer page in the AdminCP, active purchases are separated from expired and cancelled purchases to make it easier to discern which are active. Custom field values are now included on printed invoices. When filtering support requests in the AdminCP, you can now choose "more than" or "less than" for all time-based filter options. When using stock actions to reply to support requests, the stock reply can be incorporated into the staff member's default reply content rather than overwriting it. Invoices in the AdminCP can now be filtered by status. This blog is part of our series introducing new features for Invision Community 4.4.
  22. It's very easy to focus on a single metric to gauge the success of your community. It's very common for community owners to look at page hits and determine if their SEO and marketing efforts have paid off. Getting traffic to your site is only half the equation though. The most valuable metric is how many casual visitors you're converting to engaged members. Invision Community already makes it easy for guests to sign up using external services such as Facebook, Twitter and Google. However, there has to be a conscious decision to click that sign-up button. For some, this may be a barrier too many. Invision Community 4.4 reduces this barrier by allowing guests to create a post to a topic they want to engage with. Once they have posted, they are asked to simply complete their registration. They are more likely to do this now they have invested in your community. This will be incredibly valuable when you consider how much traffic a forum receives from inbound Google searches. With Post Before Registering, you'll increase your chances of turning that inbound lead into a registered member contributing to your site. Let me take you through the feature and show you how it works. When browsing the community guests will see the ability to submit a post, with an explanation that they can post now and complete registration later. The only thing they have to provide in addition to their post is an email address. Posting as a guest This works in any application for new content (topics, Gallery images, etc.) as well as comments and reviews. It will only show when a newly registered member would be able to post in that area - for example, it will not show in a forum that only administrators can post in. After submitting the post, the post will not be visible to any user, but the user will immediately be redirected to the registration form with an explanation to complete the registration. The email address they provided will already be filled in. Registration form after posting as a guest At this point, the user can either fill in the registration form, or use a social sign in method like Facebook or Twitter to create an account. After the account has been created, and validation has been completed if necessary, their post will automatically be made visible just as if they had registered and then posted. If the user abandons the registration after they've submitted their post, an email will be sent to them to remind them to complete the registration. Email reminding user to finish registering Some Notes Invision Community already has a feature that allows guests to post as guests without registration if granted permission. That feature has not been removed and so if you already allow guests to post, the behaviour will not change. This new feature is only available when a guest can't post in a given area, but a member would be able to. The entire feature can also be turned off if undesired. If the area the guest is posting in requires moderator approval, or newly registered members require approval of new posts, the post will enter the moderation queue as normal once their account has been created. Third party applications will require minor updates to support this feature. Once your casual visitor has invested time in your community by crafting a post, they are much more likely to finish the registration to get it posted. If you have set up external log in methods, then registration only takes a few more clicks. This blog is part of our series introducing new features for Invision Community 4.4.
  23. Do you recall that scene in Harry Potter where young Harry is sitting in his Uncle’s living room when hundreds of letters from Hogwarts burst through the fireplace, filling the room? Sometimes, when you log into the administrator’s control panel, it can feel a bit like that. As the administration control panel has evolved, there has been more of a need to display notifications, alerts and warnings to the administrators. There are several things which may require an administrator's attention which may show a notice on the AdminCP dashboard, a banner on the community, or send an email. For example: When a new version of Invision Community is released. A new member registers and requires administrator validation. A configuration issue is detected, for example if dangerous PHP functions are enabled on the server. There are items Commerce which require manual action, such as transactions pending manual approval or items to be shipped. Up until now, each such area would manage how these notifications show and are sent independently. In 4.4 we have introduced a new section of the AdminCP which shows all things which require administrator attention in one place, easily accessible from any AdminCP page. AdminCP Notification Menu Clicking on any of these notifications will take you to the relevant area of the AdminCP, or there is also a full-screen Notification Center which allows you to quickly take common actions such as approving members. AdminCP Notification Center While the best approach is to take the appropriate action (which will automatically dismiss the notification) so you always have an empty Notification Center, most notification types can be hidden, either temporarily on a per-notification basis by clicking the cross in the top-right, or administrators can hide all notifications of a certain type from their individual settings. Administrators can also choose which type of notifications to receive an email notification about. Notification Settings Each notification has a severity indicated by the coloured bar on the side and certain notifications can also show banners either across the AdminCP, or also on the front-end (to administrators). Notifications group automatically (so for example, if there are 5 members pending approval, you will see 1 notification rather than 5 separate ones) and where appropriate each administrator can choose if they want to receive a single email, or a separate email with each occurrence. Now you won't miss an invitation to Hogwarts, or anything important again. This is a blog about our upcoming Invision Community 4.4 release, due later this year.