Developer Connection
Use this forum to interact with our development team on technical issues, suggestions and official best practices advice.
1,736 topics in this forum
-
- 1 follower
- 5 replies
- 1.7k views
I have 2 different \IPS\Helpers\Form\Node on the same form. Both use the same class of node and have only class set and a default value. Somehow it is messing one up where it just says "Select" and does not have the default option selected from it, even though I confirmed the correct values. In fact I can even put just ONE Node input on the form and sometimes it has this problem. It did not do this before 4.5. the code is as simple as this: $form->add( new \IPS\Helpers\Form\Node( 'pickemsx_away_team', $game ? $game->team_two_id : NULL, TRUE, array( 'class' => '\IPS\pickemsx\Pickem\Team' ) ) ); I even changed that default to a hardcoded 11 …
Last reply by Midnight Modding, -
- 2 followers
- 4 replies
- 1.3k views
Debugging eval() issues (hooks, etc.) are very hard since the code is loaded in the memory, so I wrote a class that can write in the /tmp/ directory the php eval'd code so one can use xdebug on the code. Moreover, it does search for the namespace and the first class name and sets the file names based on that (for the ones that do not have a class insides the file name will be sha1($code)). I have shared this patch in hope you can implement something similar for a better debugging mechanism. It can be imported with git so you can verify it. It would be great if the core would use a class like EvalDebug::eval($code) instead of eval($code) which is impossible to modify …
Last reply by PurplePixel, -
- 1 follower
- 1 reply
- 1.5k views
Hello guys. I have got question about React. Whats the best practice to include react to newest version of IPS ? I would like to use react class component as well as functions components as a custom blocks or inject them somewhere on website. Also would like to use some of external libraries like gsap. How you import those libraries into react component and then use this component inside IPS 4 ? Normally : import React { Component } from 'react'; import { gsap } from 'gsap'; class MyClassName extends Component { state = {} /* some gsap code let say its here */ render() { return ( <div> <h1>Hello</h1> <p>Everybody<…
Last reply by CodingJungle, -
- 0 replies
- 2.7k views
Hey, we have published the first article of a series about upcoming 4.6 changes. We took the opportunity for some spring cleaning, so we have removed most of the deprecated methods! They were all marked as deprecated for a while, so you should already be aware of these methods, but here’s a full list of the methods and the new approaches to make your life easier, so if you haven’t already, now it’s the best time to review your code and make sure that none of these methods is used. Most of the changes can already be implemented while the 4.5.x lifecycle.
Last reply by Daniel F, -
- 1 follower
- 8 replies
- 1.5k views
Hi All, GA (Google Analytics) currently reports about 1.5 to 2 million pageviews per month for my site, while AWstats actually reports 11.8 million, this with ICS 4.5.4.2. The discrepancy is huge, IOW, a multiple of what it was with 3.4.x, when the factor difference was about 2. On the Analytics page in the ACP, you can actually enter GA code, Matomo, etc. However, it appears to be muttually exclusive because it empties the 2nd and 3rd block when you use any of the other options. Which means the only choice is to use the "Other" field and copy all of your code there. This is needed too, I guess, for advertising scripts and such, which require parts to be in the …
Last reply by wimg, -
- 2 replies
- 813 views
I have found a few bugs which I have fixed through hooks. It would be great if you fix them in the forum directly. Here's a list: #1 // File: system/Theme/Advanced/Theme.php // From: ... protected static function _writeThemePathDirectory( $app, $container, $path ) { ... if ( ! @mkdir( $dirToWrite ) ) ... } ... // To: ... protected static function _writeThemePathDirectory( $app, $container, $path ) { ... // This fixes recursive directory creation as some applications seem to need. if ( ! @mkdir( $dirToWrite, 0777, true ) ) ... } ... #2 // File: system/Image/Image.php // From: ... public static function create( $contents ) { ... $signatu…
Last reply by PurplePixel, -
- 3 replies
- 1.1k views
I managed successfully on setting up the conversion data and start the conversion but I cannot see any of the imported forum in the front-end. I tried to figure it out and discovered that forums do not have permissions set, so that is why. Is there any way to automate permissions to be set to visible on all imported data? Or at least a fast way to mass-edit the forums? We have a few hundreds...
Last reply by PurplePixel, -
- 1 reply
- 2.6k views
Invision Community has an exciting opportunity for an experienced PHP developer to join our team. The Role As a back end PHP developer, you will be working closely within a tight nimble team. You are a clear thinking problem solver and are able to demonstrate skills in creativity and innovation with the ability to meet deadlines. You thrive when given a brief and create well structured efficient code. Key Responsibilities Write well designed testable efficient code by using sound development processes Cooperate with other team members to develop new features Gather and refine specifications are requirements based on technical needs Cre…
Last reply by Charles, -
- 4 replies
- 1.1k views
Hello. We are development an IPB app that expose and API to access the forums. It is working fine and we are testing it into a forum that is set as private Members->Groups->Guest->CanAccessSite = disable.Of course with this configuration, a guest user cannot access our furl endpoint sitename.com/apiendpoint.Is there a way we can make some code or configuration that guest can access always that /apiendpoint/* furls? of course our plugin in this case will return to our app that the site is not public and user must login, but we need our api respond that. Any hint?
Last reply by Pavel Chernitsky, -
- 1 follower
- 5 replies
- 691 views
Are there tests suites available for the core Invision code and functionality? We would like to know if our plugins and app potentially break key functionality in an automated way.
Last reply by Joel R, -
- 1 follower
- 6 replies
- 1.4k views
Hi there, I recently launched a IPBoard community that is beginning to show traction. It's well placed for some explosive growth over the next few months. With that being said, I have some industry (trading card game) related functionality I'd like to integrate into the forum. As such, I'm hoping to find a suitable developer, but I'm a little lost as to where to look, and what kind of skills I should be looking for. My background: I used to work at Shopify, and currently work as a Product Owner in an industry leading company. I have technical, design and product experience. The rough functionality I'm looking to implement over time is as follows: …
Last reply by DawPi, -
- 2 followers
- 1 reply
- 585 views
Hi, I wanted to know if IPS uses any kind of solution such a kafka to listen/react to database changes and trigger events. Basically, I want to trigger certain actions when particular changes in the DB occur. But it's much cleaner to use a system like kafka to just wait for the changes, rather than have to manually trigger them all over the place in code. Does IPS have such a functionality in place? Thanks
Last reply by bfarber, -
- 6 replies
- 1k views
Is it possible in the acp to have all posted content in a list in chronological order with pagination and moderation options etc similar to the way it is in Wordpress ?
Last reply by Mark Round, -
- 1 follower
- 1 reply
- 543 views
I've been using constructLoadQuery to add table joins for member and group data without any problems but this won't work with the forums database. I assume due to the node permissions. Is there a work around for this or should I just use get_fieldname and cache my database queries? (I've got several fields in the table I want to join with forum data.) protected static function constructLoadQuery( $id, $idField, $extraWhereClause ) { /* Get parent contruct query */ $parentDB = parent::constructLoadQuery( $id, $idField, $extraWhereClause ); /* Add our custom join */ $parentDB->join( 'basicpoints_forums', 'basicpoints_foru…
Last reply by Matt, -
- 1 follower
- 1 reply
- 541 views
Something I've brought up previously in the Contributor Chat forum, but it drifted off into the ether...never to be seen again. I've recently gone back to the POC for something, and this behaviour is still there and it's frankly nonsense. Background: there is something in the POC application which will be relying on the order of entry being kept 'as is' as the setting is going to be used later to display things in the chosen order. My settings code - nice and simple, it works... //<?php $form->add(new \IPS\Helpers\Form\Item('tids', \IPS\Settings::i()->tids, TRUE, array('class' => '\IPS\forums\Topic'))); if ($values = $form->values()) { …
Last reply by Matt, -
- 1 follower
- 3 replies
- 898 views
Hi Invision, Something is bothering me with the new referral system on IPS 4.5. In /Session/Front: public function init() { /* Get cached page if available */ $this->checkCached(); […] /* Set a referral cookie */ if( \IPS\Settings::i()->ref_on and isset( \IPS\Request::i()->_rid ) ) { \IPS\Request::i()->setCookie( 'referred_by', \intval( \IPS\Request::i()->_rid ), \IPS\DateTime::create()->add( new \DateInterval( 'P1Y' ) ) ); } […] } Doesn't it look like that when a page is cached, the referral system doesn't work, as the page is sent before a cookie is set? Thank you,
Last reply by Matt, -
- 1 reply
- 451 views
Widget ips.ui.drawer is not present here https://invisioncommunity.com/4guides/themes-and-customizations/javascript-framework/using-ui-widgets/ I want to know how can I catch on show event when the mobile menu becomes visible?
Last reply by bfarber, -
- 1 follower
- 1 reply
- 442 views
Custom field of type CheckboxSet has always multiple values. It cannot be used with type INT in database, or you get an error for wrong integer type '' if no value is selected. However, in the converter you set the field to the type INT if is not defined as multiple: case 'CheckboxSet': case 'Member': if ( $data['multiple'] ) { $columnDefinition['type'] = 'TEXT'; } else { $columnDefinition['type'] = 'INT'; $columnDefinition['length'] = 10; } break; It is not possible to save a record with field type CheckboxSet that is defined as INT. The type should be moved down to: case 'CheckboxSet': &l…
Last reply by bfarber, -
- 1 reply
- 558 views
When I override the template's front end files, everything is fine. The modifications are applied. However, when I tried to change the admin files, I don't see any changes. For example, I want to customize a login page by editing the file ../theme/html/core/admin/system/login.phtml However, the website does not reflect my modifications. I tried to clear the cache, no success.
Last reply by CoffeeCake, -
- 1 follower
- 1 reply
- 513 views
I'm working with Radio Helper with 'parse'=>'image' option in a widget . look at this please: $form->add(new \IPS\Helpers\Form\Radio("var_name", isset($widgetConfig['var_name']) ? $widgetConfig['var_name'] : 'val1', FALSE, array( 'parse' => 'image', 'options' => [ 'val1' => \IPS\Theme::i()->resource('display/filename.jpg', 'myapp', 'admin'), 'val2' => \IPS\Theme::i()->resource('display/filename2.jpg', 'myapp', 'admin') ] , 'descriptions' => [ 'val1' => 'Description', 'val2' => 'Description' ] ))); in the development mode, the code works and shows images with radio button but i…
Last reply by ReyDev, -
- 3 followers
- 11 replies
- 921 views
Hi, Tried in a ticket (#68225), but Rhett wants me to get developer assistance here instead. There is an issue with Community Map where one of your CIC clients is getting a 404 from all the files it's supposed to serve from the interface folder. This is where I store the LeafletJS files and plugins. I am not sure how I can debug this issues, which to me seems to be isolated to CIC customers only. There's currently 20 purchases of this file, where 19 of them work perfectly fine, not including all my local test installations. My initial thought on this was that it could be related to how you changed where application files are stored for CIC2 customers. …
Last reply by bfarber, -
- 2 replies
- 439 views
I get error EX0 Bad Method Call Exception NO_TEMPLATE_FILE ../theme/html/core/front/moderationLog/table.phtml with Invision Community v4.5.4.2 when I try to look for moderation history/log at front end. The problem is that on my server the folder is called "moderationlog" instead of "moderationLog". I don't know exactly what version update of Invision Community caused this. Perhaps this information will be useful.
Last reply by bfarber, -
- 1 follower
- 12 replies
- 1.2k views
I am trying to create a custom conversion class and I am not sure what is the right approach. I have seen these two buttons inside the ACP conversion view when I am in developer mode: And I have used them to create Library and Converter class files, but I don't understand how they hook with the converter or with IPS framework. Also, is there any specific path I need to create these files into in order to be included? I tried searching for documentation related to these buttons and the classes they create, but did not seem to find any. Thank you!
Last reply by PurplePixel, -
- 1 reply
- 416 views
Other than online doc that is available, are there any other resources for plugin and app developers? Can we get official workshops/training sessions? I think we are happy to pay for a session as well.
Last reply by bfarber, -
- 1 reply
- 418 views
Can we get access to Invision's repo and make PRs for fixes/tidying? Eg: Wrong description from my point of view, because it is thrown when a dataset is empty as well.
Last reply by bfarber,