Developer Connection
Use this forum to interact with our development team on technical issues, suggestions and official best practices advice.
1,734 topics in this forum
-
- 1 follower
- 1 reply
- 750 views
hi my lords, in Persian language, in profile, when I click on "community answers", URL display as topic title. Persian: English: with best regards!
Last reply by SeNioR-, -
-
- 1 follower
- 1 reply
- 758 views
Firefox console reports some unreachable code after return statement in root_front.js Around line 2221 when unminified, line 141 in minified version: _updateAttachmentImage: function (attachment, response) { return; if (!(attachment.is('img'))) { return; }
Last reply by Stuart Silvester, -
-
-
- 1 follower
- 3 replies
- 738 views
I have a print-on-demand account with a company in the UK who have an API for managing their processes with 3rd party storefronts. It works seemlessly with shopify for instance. Is there any such API two-way communication built into Invision's store front? Or any plans to do so in the future at all? Thanks, Evan
Last reply by Randy Calvert, -
-
-
- 2 followers
- 7 replies
- 1.1k views
The scheduled topic showing different dates everywhere. Some places it shows the time it was posted and scheduled, or it shows the time it was scheduled to be posted on, for example Forums viewing topics Viewing forums I believe it should show only the time that was scheduled to be posted on everywhere not the time you published and scheduled it.
Last reply by Gary, -
-
- 0 replies
- 456 views
Hey everyone! I need to generate an invoice with a subscription product. This creates everything just fine for any product, but never adds the renewals part. I can see there is a separate $recurrings variable on the checkoutAndPay page. Should I populate that somehow? A bit lost how renewals work. $invoice_new = new \IPS\nexus\Invoice; $invoice_new->member = \IPS\nexus\Customer::loggedIn(); $invoice_new->currency = "USD"; $package = \IPS\nexus\Package::load( 1 ); $item = $package->createItemForCart( $package->price() ); $invoice_new->addItem( $item ); $invoice_new->save(); I'm using a regular product that renews, not…
Last reply by Dominyka, -
-
- 2 followers
- 2 replies
- 797 views
http://localhost/ips/admin/?app=nexus&module=subscriptions&controller=subscriptions&do=convertToSubscription&id=1&csrfKey=3ed05127f5b65a77dcf8987de5da8e5c causes a whoops error because the CSRF key is left in (and is required).
Last reply by Marc, -
-
-
- 1 follower
- 1 reply
- 783 views
I'm not sure why, but recently the number of submissions with some issues related to guests and handling them increased a lot recently. Sometimes it's harmless, like showing some content and using \IPS\Member::loggedIn()->member_id in the where condition, but sometimes it's really dangerous because either you're allowing an attacker/or just random visitor to delete all the guest accounts,to spam the board as guest, to flood peoples member table with hundreds of guest accounts and and and... There are dozen of bad scenarios which I've seen in the last months. So, when working with the visitor object ( Member::loggedIn() ) in controllers, ask yourself=> Shou…
Last reply by Kirill Gromov, -
-
Hello, I've discovered a bug in how IPS' lazyloading works on dynamic elements. in ./dev/js/library/app.js, line 61, you define a hook/override for $.fn.html. This makes sure that if dynamically loaded HTML contains lazyload elgible content, you instate the lazyload handler on it. The problem seems to be instead of looping each lazyload element, ips.utils.lazyLoad.observe is called on the entire element. This then registers the IntersectionObserver on the entire element, causing each lazyloading element to be loaded straight away, defeating the point of the lazyload. The fix is to instead call ips.utils.lazyLoad.observe on each lazyload capable element…
Last reply by Stuart Silvester, -
- 1 reply
- 858 views
Just catch this on a test: Probably not included in the togglesOff or missing the field ID.
Last reply by Adriano Faria, -
-
- 2 followers
- 6 replies
- 768 views
First here a list of the plugins attached to this topic with a list of what they do in each upgrade step: 1.0.0 => Adds 1 setting (testing_upgrade_setting). The install script creates 1 table (aaaa_install) and updates the setting value to 3. 1.0.1 => The upgrade script updates the setting value to 4. 1.0.2 => The upgrade script creates 1 table (aaaa_upgrade). 2.0.0 => The upgrade scripts for versions 1.0.1 and 1.02 are removed (empty XML entries). The upgrade script for version 2.0.0 creates 1 table (aaaa_upgrade) and updates the setting value to 5. 2.0.1 => The upgrade scripts for versions 1.0.1 and 1.02 are restored (no empt…
Last reply by teraßyte, -
-
-
- 3 replies
- 762 views
Posting here since email support is no longer a thing. We noticed that L341 in the ips4.php requirements checker (ref https://invisioncommunity.com/files/file/7046-invision-community-requirements-checker/) attempts to communicate with the IPS licensing server through HTTP?? Is this not a security vulnerability by not using HTTPS - you're basically just transmitting the key in cleartext over unencrypted channels. The line in question: <?php if ( file_exists( 'conf_global.php' ) and isset( $mysql ) and $licensekey = @$mysql->query("SELECT * FROM core_sys_conf_settings WHERE conf_key='ipb_reg_number';") and $licensekey = @$licensekey->fetch_assoc() and …
Last reply by Aaron M, -
-
-
- 2 followers
- 2 replies
- 805 views
hi There is a responsive issue in all released versions on Firefox browser (android and desktop). I have checked most of the forums, but unfortunately this problem has not been solved yet! https://mega.nz/file/mENUwZbS#pS9Z8vM30rKHz69_sCYh4x2AcRi5yyx_v8GnAqScG6Y If you look at the video, you will see that there is no problem in LTR mode, but in RTL mode, the page has a responsive issue. please fix this problem in next release! thanks in advance.
Last reply by ArashDev, -
-
-
- 2 followers
- 2 replies
- 493 views
hi 1. In the Firefox browser in RTL mode, when the registration button is clicked, the registration form does not open correctly and has a responsive problem. https://mega.nz/file/6E0kXBrS#-tPQ2eeL_sFpgYYBvGxZTCAtS0tURuijY1X8uvBAKX4 2. In the Chrome browser in RTL mode, when the registration button is clicked, you cannot scroll and fill the registration form. https://mega.nz/file/TQFnmDba#_KIODtE-8XDA0G3f5kfCenj0nun0UH-drTpBBmGemBI I've checked this issue in different browsers and it happens in all of them. please fix these issues in the next release. thanks in advance.
Last reply by ArashDev, -
-
- 1 follower
- 2 replies
- 779 views
I am working on a custom php test app that validates the user for an API call using OATH2 with PKCE. I am able to successfully get the authorization_code from the invision server, but when I post that back to get the access_token to make the API calls I get the following error: "invalid_grant","error_description":400 For background I'm using the following code to get the authorization_code // Remove all previous session variables as they are not valid at this point session_unset(); // generate a random 16 digit string for the session $_SESSION['state']= bin2hex(random_bytes(16)); // Request the authorization code from the auth0 server $hr…
Last reply by Brian Peterson, -
- 0 replies
- 598 views
Hey there! I need to add an order bump to the final checkout process page (where the user enters payment info). (What is an order bump?) Basically, a button that edits the invoice currently displayed to add/remove a product. I can find a method "acpAddToInvoice", but that's for the admin side. Is there a method to edit the invoice? Or should I perhaps just alter the database record of the invoice and reload the page? Anyone encountered editing an invoice from the user side? Ty!
Last reply by Dominyka, -
-
- 1 follower
- 0 replies
- 1.2k views
One of the biggest benefits from IPS is also one of the most annoying things.. The Proxy Classes and full IDE support! I have related a small script which generates a file with class aliases. https://github.com/DanielFatkic/ipsaliases This can be installed global on the system via composer composer global require danielfatkic/ipsaliases and then just call vendor/bin/generatealiases . inside your IPS dev instance, or you can also pass the full path to an IPS installation, which will generate a file called aliases.php
Last reply by Daniel F, -
-
-
- 1 follower
- 3 replies
- 634 views
There is a new option to rotate images in 4.7.7, but when you click on it, you get an error. Error: Oops! Something went wrong. Please try again. Link: https://invisioncommunity.com/attachments/?do=rotate&id=159223&direction=left¤t=
Last reply by SeNioR-, -
-
- 2 replies
- 787 views
Hi Guys. On many websites, when registering an account, there are only two fields, e-mail address and password. The username is set based on the email address, usually in its entirety or set based on what comes before the @ symbol e.g. emial: olivia.johnson@coldmail.com Username: Olivia.johnson My primitive working code looks like this: $GetNameEmail = substr($values['email_address'], 0, strrpos($values['email_address'], '@')); $member->name = ucfirst($GetNameEmail); I need to check if username is already in the database. How can I achieve it? Something like when registering via the social media method where if the nick is taken, we have t…
Last reply by SeNioR-, -
- 4 replies
- 892 views
I'm attempting to upgrade to the latest version of the forum software, so I'm porting over some of our customizations, but for some reason I can't get the theme to load a custom template file. In forums>front>topics>postContainer, on line 92, I've added an else condition to load a template bit: {{if !$comment->isAnonymous()}} <li data-role='group'>{expression="\IPS\Member\Group::load( $comment->author()->member_group_id )->formattedName" raw="true"}</li> {{if \IPS\Member\Group::load( $comment->author()->member_group_id )->g_icon }} <li data-role='group-icon'><img src='{file="$comment->author()->group['g_…
Last reply by Jyosua, -
- 0 replies
- 442 views
Since the topic author cannot mark his first post as solved, this code below should not show if there is no reply in the topic. {{if $topic->canSolve() AND ! $topic->isSolved() AND $topic->isNotModeratorButCanSolve()}} <div class='cContentMessage cContentMessage_color ipsMessage_success ipsMargin_vertical' data-controller='forums.front.topic.solved'> <h3 class='cContentMessage__header'>{lang="solved_did_it_tho_title" sprintf="\IPS\Member::loggedIn()->name"}</h3> <div class='ipsPadding'> {lang="solved_did_it_tho_desc"} {{if member.members_bitoptions['no_solved_reenage']}} <div class='ipsMargin_top'> …
Last reply by SeNioR-, -
- 1 follower
- 0 replies
- 355 views
I am trying to do a "From/To or Permanent" type of field. When saving, the following... $form->add(new \IPS\Helpers\Form\DateRange('daterange', array('start' => NULL, 'end' => NULL), TRUE, array('unlimited' => 1, 'unlimitedLang' => 'permanent'))); ...results in... I should be able to overcome it with some custom validation, but would be good if it could work as-is (you don't appear to use a DateRange with a required = true anywhere in the code I have availability to)
Last reply by Nathan Explosion, -
- 1 follower
- 5 replies
- 961 views
We recently decided to opt for an s3 compatible on-premise solution, namely https://min.io/. We would like to use a subdomain of our own domain to identify the storage, but the implementation made in IPS generates something like https://bucketname.file.example.com , which we were unable to do by using the free version of cloudflare. The alternative is to use the bucket as the path name, as supported by the official amazon SDK (see the javascript snippet below). const AWS = require('aws-sdk'); const fs = require('fs'); const s3 = new AWS.S3({ endpoint: 'https://files.example.com', //alternative compatible s3 software accessKeyId: 'foo', secretAc…
Last reply by G17 Media, -
- 0 replies
- 498 views
Guys, can someone explain me what this code is for? 🤔 .ipsDataItem_title .ipsBadge.ipsBadge_small { position: relative; top: -2px; } I know it's supposed to fix what other classes break, but there are many more such "corrections" in many places. It just makes the CSS sheet contain more unnecessary code. Instead of correcting "things" in this way, you can position them nicely, for example by flexbox. Less code and more correct. I hope you will take this into account when rewriting the theme.
Last reply by SeNioR-, -
- 1 follower
- 4 replies
- 1.1k views
Hi, When linking a Nexus product group to somewhere like Facebook, no image or the wrong image appears because the groups do not have og:image meta tags configured by default. We currently deal with this by running a mysql script periodically to add meta_url's and meta_tags to the core_seo_meta table. ( the live tag editor )
Last reply by IPCommerceFan, -
- 1 follower
- 4 replies
- 731 views
Hello there, If I created a js file with pages, how can I add it to the theme? Shouldn't it be something like {template="includeJS" app="cms" file="file.js" type="js"} ?
Last reply by Colombia Humana,