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
-
- 2 replies
- 334 views
Hello! After update to 4.4.0 my custom product type in no longer avaliable. Although the file is still here /applications/nexus/sources/Package And file is still extend Package namespace IPS\nexus\Package; /* To prevent PHP errors (extending class does not exist) revealing path */ if (!defined('\IPS\SUITE_UNIQUE_KEY')) { header((isset($_SERVER['SERVER_PROTOCOL']) ? $_SERVER['SERVER_PROTOCOL'] : 'HTTP/1.0') . ' 403 Forbidden'); exit; } /** * Product Package */ class _Selfitem extends \IPS\nexus\Package { How to make it available again?
Last reply by goldmorphin, -
- 5 replies
- 307 views
When updating a member record ($member) for something important, such as $member->name or $member->member_group_id, am I overlooking anything additional I should do, such as updating any particular cache, logging, or anything else? I see in my 3.x code there was a built in IPS method for updating the member's name, but I don't see anything like that in 4.x. Also, in 3.x I was working around display name changes per x amount of time in the group settings, which needed to just be ignored, so I assume now I could just ignore that, as I don't see anything in function save() that would stop the name change, ie if there is still a limit, it must get checked by u…
Last reply by Midnight Modding, -
- 1 reply
- 259 views
Good Morning, I'm developing a custom login handler using OneLogin's PHP SAML library. The way that saml works is the user clicks a button to login -> redirected to the login page -> login page realizes user needs to login, builds a SAML request and redirects to the Identity Provider (IDP) -> User Logs in -> User is redirected back to an "assertion consumer" page which consumes either HTTP POST or GET XML containing the login information. I have the button handler setup and the login redirect is working thanks to the documentation Invision provides. My question is how do I create a custom Assertion Consumer URL (Example: https://mysite.com/Asse…
Last reply by bfarber, -
- 1 follower
- 2 replies
- 375 views
Hi, I have a question about this 4.4 developer change: I assumed this would allow third-party developers to store files for custom share services, payment gateways, license keys, etc. within their own application directory, and not require the user to upload them into specific locations anymore. Which would be a very welcome change 🙂 However, this doesn't actually work. The code still loads all these classes from hard-coded directories. For example, Commerce loads gateways with: $classname = 'IPS\nexus\Gateway\\' . $data['m_gateway']; Meaning that in practice, we still need to upload our custom gateways to /applications/nexus/sources/Gateway/ folder f…
Last reply by Daniel F, -
- 5 replies
- 514 views
Hello, I'm using: {{if request.module == 'forums' && request.controller == 'topic'}} {{$topic = \IPS\forums\Topic::loadAndCheckPerms( \IPS\Request::i()->id );}} {{$forumid = $topic->container()->id;}} forum-{$forumid} {{endif}} in globalTemplate to get the forum ID for styling purposes. It does its job, however, if users view topics they lack access to, they're presented with a: [[Template core/front/global/globalTemplate is throwing an error. This theme may be out of date. Run the support tool in the AdminCP to restore the default theme.]] which logs as a template error: OutOfRangeException::0
Last reply by bfarber, -
- 1 reply
- 279 views
This is not exactly a bug so I'm not sure I should report it via ticket. That's how it shows up when using English: Then I tried with Brazilian Portuguese and Russian and it shows misaligned: Could you improve this specific area by this request or should I report as a bug? Thank you.
Last reply by bfarber, -
- 2 followers
- 2 replies
- 394 views
Will Progressive Web Apps be supported in 4.4 GA? If yes, can I build and submit an app to the Apple Store and Google Play Store? Is this process documented? I really need to have an app for my site on IOS and Android for my users to download to their mobile devices. I realize it won't be as good an experience as a native app (especially on Apple devices since Apple is pretty hostile to fully embrace PWA apps on an Apple device), but it will be better than telling the users to save a link to their home screen. Mobile users are trained to download apps from the app store. Here is the blog that inspired me to ask this question (free music PWA app if you like religious …
Last reply by KT Walrus, -
- 0 replies
- 236 views
One thing that would be useful is if we had a built in way to do our own permission check on some of these form elements that are on default IPS forms throughout the system. For instance, in deleteOrMoveForm(), I need to change which categories can be in that list of categories to move subcategories to. And I can't simply do it in my canAdd() because the specifics of the main one being DELETED make a difference in my particular case. So I guess what I am going to have to do is make my own deleteOrMoveForm(), but due to the particulars of that method I can't just call the parent and then do something before or after it, because the whole form is already created i…
Last reply by Midnight Modding, -
- 0 replies
- 263 views
Hey there, I created new template files for an existing database. After switching to this new template files the listing view was changed in an instant also one single record of the database entries which shows the new display template. There are 3 more entries which are shwoing the old template. I already cleared the cache but it didn't help. What else can I do to clear some cache? I use the apc cache with mysql storage but I don't know what I have to clear to get rid of the old cached files. Best regards, Marc --- Problem was found. Forgot to check the categories. There was another display template set 😕 sry
Last reply by Marc Krapalis, -
- 2 followers
- 8 replies
- 379 views
I have a library of function/formulae that i want to be able to type into the editor by using something similar to using the @ to auto select a person perhaps use [[ to trigger the popup and as you type it suggest values like if i type [[ave it would show value translates to Average ( field { ; field ; field .. } ) if i choose the value it would embed to the editor without the trigger value and the data would be hyper linked to a specific url based on my glossary. Alternatively a button in the editor that when clicked will display a listing of functions formula where they could select and insert into the editor.
Last reply by bfarber, -
- 1 follower
- 7 replies
- 369 views
Hi, what can I do to show one profile field under users avatars on topic view which should be visible only for admins? Something like "internal customer rating", it can not be visible for any users. So I need something like this: But visible for admin on topic view. Is there any option to do it via themes etc.? Bes reagrds, Damon
Last reply by Adriano Faria, -
- 1 follower
- 9 replies
- 395 views
Hey there ... I searched about an hour now and tried different things but I can't fetch the thumbnail of a single uploaded image in a pages database custom field. Would be nice to know how to get the created thumbnail.
Last reply by Daniel F, -
- 2 followers
- 3 replies
- 340 views
Is there a built in form class in the FormAbstract that allows me create Time Frame form field? For example: From "00:30" to "02:00" I know there's Date class with time option, but I need only time not date or datetime
Last reply by A Zayed, -
- 1 follower
- 4 replies
- 398 views
on the event "tokenAdded", could you also send the name of the autocomplete it came from? this way i can filter it in the listener. right now i have several on the page, and i'm checking each one to see if they have "tokens" to see which one it came from, so it would be much more efficient if i could do something like: switch( data.tokenContainer ){ case 'tokenContainer1': //do something break; case 'tokenContainer2': //do something else break; }
Last reply by CodingJungle, -
- 1 follower
- 6 replies
- 574 views
Hello everyone, so I've had a client contact me due to the following issue: When someone pays for some product (let's say an ad) through my commerce gateway (Coinpayments in this case), the ad is never created. The transaction shows up and is marked as approved but what the package is supposed to do, doesn't happen (be it create an ad, move into customer group etc.). Now after debugging I found out what the issue is: The commerce app was disabled except for some groups, what happens in this case is the following: IPN is received by the gateway - all ok Gateway tries to approve the transaction by calling "$transaction->approve()" In…
Last reply by Bluto, -
- 1 follower
- 9 replies
- 447 views
Hi, is there any way to include extra file with plugin? e.g. mtasa php sdk? (https://github.com/multitheftauto/mtasa-php-sdk/releases)
Last reply by szalik.dev, -
- 1 follower
- 1 reply
- 337 views
so, bassicaly, i created a plugin which should output widget on index with number of members online on discord, here is my code for it: public function render() { function settings($name) { $key = \IPS\Settings::i()->$name; return $key; } $mc = 0; $this->output( $mc ); return ""; } i've added in init() this: $this->template( array( \IPS\Theme::i()->getTemplate( 'plugins', 'core', 'global'), $this->key)); parent::init(); and when i visit my website, i get this error: ParseError: syntax error, unexpected '$return' (T_VARIABLE) (0) #0 /usr/home/devjakso/domains/dev.jakso.pl/public_html/system/Theme/Theme.php(…
Last reply by szalik.dev, -
- 1 follower
- 3 replies
- 292 views
Hi, On my 4.3.6 installation, the tasks are performed with a cron. I just enabled Redis, and the website runs great. However, there is an error for cron tasks. Here is the log: BadMethodCallException: (0) #0 /Users/nicolas/Sites/workspace/system/Redis/Redis.php(295): IPS\_Redis->connection('write') #1 /Users/nicolas/Sites/workspace/system/Data/Store/Redis.php(53): IPS\_Redis->setEx('redisKey_store', 604800, '4d89efe3ce0360a...') #2 /Users/nicolas/Sites/workspace/system/Data/Store/Redis.php(80): IPS\Data\Store\_Redis->_getRedisKey() #3 /Users/nicolas/Sites/workspace/system/Data/Store/Redis.php(137): IPS\Data\Store\_Redis->get('settings'…
Last reply by Daniel F, -
- 2 replies
- 318 views
I'm trying to load a language string using \IPS\Lang::load('sign_out'); But I get an OutOfRangeException::0 error. I've also tried passing the idField like so: \IPS\Lang::load('sign_out', 'word_key'); But there I get a InvalidArgumentException (0) error. Any idea what I'm doing wrong?
Last reply by Tom S., -
- 1 follower
- 10 replies
- 400 views
When I turn on developer mode, the theme of the suite starts using the default theme. How can I get it to use my custom theme?
Last reply by bfarber, -
- 1 follower
- 3 replies
- 341 views
ips.ui.dialog first off i would like to say, i love this widget, its amazing all it can be made to do, but there is one suggestion i would like to make, add a 'not' option, so if i click on the "not" element, it doesn't trigger, example: <a href='http://myurl.com/myapp/' data-ipsDialog data-ipsDialog-not='#otherthing'> <div id='otherthing'>some text</div> <div id='notOtherThing'>some more text</div> </a> this way if i click on anything outside of #otherThing, it will activate the dialog, but if i click inside #otherThing, it will not do anything. make sense? I can do this easily with programmatically using the dialog, but al…
Last reply by CodingJungle, -
- 4 followers
- 14 replies
- 521 views
Hi, I'm pulling my hair out trying to construct a form Stack with \Helpers\Form\Member fields... new \IPS\Helpers\Form\Stack('mystack', array(), false, array('stackFieldType' => '\IPS\Helpers\Form\Member', 'maxItems' => 20)); When adding a new stack row, it looks like several Member autocomplete fields are added in a same field: Apparently, the javascript in ips.ui.stack.js doesn't manage to handle the situation. Am I doing something wrong, or the Stack simply doesn't work with Member fields? Or is it a bug? Thank you!
Last reply by Aiwa, -
- 5 followers
- 34 replies
- 1.7k views
Hi all, Would be great if someone could help. I'm trying to override the theme on my site at a certain set of URLs. The site for reference: https://meta-plays.com/landing/ Note how when you choose a game from the landing page, a "game ID" (e.g 5 or 60) gets appended to everything you visit, until you go back to the landing page and pick another game. This is how we filter the content on the site to only display what we want on a per game basis. For example, the Age of Mythology link will lead to the portal app, but because we are on game=5, only content that matches that ID is shown. I'd like each of the games to have a different theme, it's not enough to c…
Last reply by Brian A., -
- 1 follower
- 1 reply
- 349 views
Regarding this: https://invisioncommunity.com/forums/topic/430442-links-directory/?do=findComment&comment=2770214 The user doesn't has comments enabled in the app but the IPS\core\extensions\core\Sitemap\Content::generateSitemap() rely in the comment date: $data = array( 'url' => $node->url(), 'lastmod' => $node->getLastCommentTime() ); The getLastCommentTime() in my node model returns the last added record: public function getLastCommentTime() { return $this->last_link_date ? \IPS\DateTime::ts( $this->last_link_date ) : NULL; } At least, it should, as it has data. Below in generateSitempa() still has: $dat…
Last reply by Daniel F, -
- 1 reply
- 298 views
Can you please increase the plugin_name length in the form? Currently it has max length 32 only! The column is varchar(255). Increase to 50 or 64. Plugin_location is 32 and that's fine but 32 characters for the name is too little!
Last reply by Daniel F,