Jump to content

teraßyte

Clients
  • Posts

    33,811
  • Joined

  • Last visited

  • Days Won

    55

 Content Type 

Downloads

Release Notes

IPS4 Guides

IPS4 Developer Documentation

Invision Community Blog

Development Blog

Deprecation Tracker

Providers Directory

Projects

Release Notes v5

Invision Community 5 Bug Tracker

Forums

Events

Store

Gallery

Everything posted by teraßyte

  1. No. Don't enable IN_DEV on a production site. Everything will slow to a crawl since the cache data is rebuilt on each page load, etc. If you really need it, make a test site using a copy of the live site's data (database + files), update conf_global with the test site details, clear the cache in ACP, upload the IN_DEV files, and finally enable the IN_DEV constant in the constants.php file.
  2. Maybe your hosting is doing something to the file after the upload? Like removing a forbidden function? I've seen it happen a couple of times. Try downloading the file and comparing it to the file from the IPS client area. This might help you find if the server is automatically editing the file after the upload.
  3. Yes, as Jim mentioned, the only way is a custom modification because there is no setting to disable it. It's easy enough to make if you want to go ahead with it. You can send me a PM if you're interested.
  4. This issue is reproducible only on a page with 2 editors with each having a different area assigned: Create a page with 2 editors in it. Let's say the editors use the following keys in the same application: EditorA EditorB Case 1: Disable the button ONLY for editor A The button is disabled for both editors A and B. Case 2: Disable the button ONLY for editor B The button is visible for both editors A and B. === If you have 2 editors (A & B) that use 2 different areas on the same page, the cached result of the first editor (A) displayed on the page is always used for the second editor (B) without checking if the button is actually available also for the second area. This issue is caused by the static function \IPS\Text\Parser::canUse( $member, $key, $area ) because it caches the result of each button only using 2 values: member_id and $key: static::$permissions[ $member->member_id ][ $key ]; The $area value is only checked if there is no cached result: /** * Can use plugin? * * @param \IPS\Member $member The member * @param string $key Plugin key * @param string $area The Editor area * @return bool */ public static function canUse( \IPS\Member $member, $key, $area ) { $permissionSettings = json_decode( \IPS\Settings::i()->ckeditor_permissions, TRUE ); if ( !isset( static::$permissions[ $member->member_id ][ $key ] ) ) { if ( !isset( $permissionSettings[ $key ] ) ) { static::$permissions[ $member->member_id ][ $key ] = TRUE; } else { $val = TRUE; if ( $permissionSettings[ $key ]['groups'] !== '*' ) { if ( !$member->inGroup( $permissionSettings[ $key ]['groups'] ) ) { $val = FALSE; } } if ( $permissionSettings[ $key ]['areas'] !== '*' ) { if ( !\in_array( $area, $permissionSettings[ $key ]['areas'] ) ) { $val = FALSE; } } static::$permissions[ $member->member_id ][ $key ] = $val; } } return static::$permissions[ $member->member_id ][ $key ]; } If you also want to slightly optimize the code, the json_decode() call can be moved inside the first IF since the data isn't used if a cached result is found.
  5. This is fixed in 4.7.17 Beta 1. Marking as resolved.
  6. This exception is thrown when editing a member's Warnings & Restrictions from an ACP profile: Whoops\Exception\ErrorException thrown with message "Undefined array key "idm_block_submissions"" Stacktrace: #7 Whoops\Exception\ErrorException in \system\Patterns\Bitwise.php:112 #6 Whoops\Run:handleError in \system\Patterns\Bitwise.php:112 #5 IPS\Patterns\_Bitwise:offsetGet in \applications\downloads\extensions\core\MemberRestrictions\Downloads.php:48 #4 IPS\downloads\extensions\core\MemberRestrictions\_Downloads:save in \applications\core\extensions\core\MemberACPProfileBlocks\Warnings.php:130 #3 IPS\core\extensions\core\MemberACPProfileBlocks\_Warnings:edit in \applications\core\modules\admin\members\members.php:1307 #2 IPS\core\modules\admin\members\_members:editBlock in \system\Dispatcher\Controller.php:107 #1 IPS\Dispatcher\_Controller:execute in \system\Dispatcher\Dispatcher.php:153 #0 IPS\_Dispatcher:run in \init.php:934 The issue is caused by the save function's code in /applications/downloads/extensions/core/MemberRestrictions/Downloads.php (line 48): public function save( $values ) { $return = array(); if ( $this->member->idm_block_submissions == $values['idm_block_submissions'] ) { $return['idm_block_submissions'] = array( 'old' => $this->member->members_bitoptions['idm_block_submissions'], 'new' => !$values['idm_block_submissions'] ); $this->member->idm_block_submissions = !$values['idm_block_submissions']; } return $return; } The value for the old array key is using the wrong "bitoptions" syntax: $this->member->members_bitoptions['idm_block_submissions'] when it should be: $this->member->idm_block_submissions
  7. @Marc Stridgen I noticed there's a missing language string for the legend in the first post's screenshot. You might want to make a bug report about it: notification_account_del_request_rejected 😋
  8. Only PHP 8.0 and 8.1 are supported. Using PHP 8.3 the code is most likely throwing errors behind the scenes and causing the slowness you noticed.
  9. @Jim M I've mentioned it before already, but that CHMOD warning is easily missed. It should be made a bit more obvious. 🙄
  10. Upgrades from 3.4 aren't directly supported anymore by IPS (unless I remember wrongly). That said, I did plenty of upgrades from 3.4 in the past, but I never encountered this specific error. Which PHP version are you using?
  11. Yes, it's not possible with the core software. The only way is a custom modification. I had a client in the past who needed something similar. I made them a script that could be run from SSH because that's what they wanted. 🤔
  12. As Marc said, you have to upload those files via FTP to your server. Ignore that "Install Application" popup. It's not what you need right now. You use that only when you have a TAR file to install/update single applications. IPS doesn't provide individual TAR files for their applications.
  13. Are you using products or subscriptions? If you use normal products, I have an application for it: https://invisionbyte.net/store/product/48-tb-custom-pms-for-commerce-products/ If you're using the subscriptions option, it needs to be adapted as a custom request.
  14. @Joel R In the past it was also more useful because you could post things to FB or Twitter (X), but both are not an option anymore now. The FB option was removed ages ago, and Twitter has been broken for months, too. 🤷‍♂️
  15. No. While you can download an application's folder from the server, plugins aren't the same. When plugins are installed, the setup folder is NOT saved on the server. And the original XML file is not available, either. You'll need to rebuild the XML file from scratch based on the files on the server, plus rewrite from scratch the setup folder (if the plugin creates tables or adds columns). It may take some time, but it can be done. I've done it several times for clients, especially recently after the marketplace closed.
  16. I assume templates are wiped (since they're completely different?), but this will leave a lot of unused settings, tasks, widgets, etc, around in the database then. 🤨
  17. Will plugins be "uninstalled" (deleting all settings, templates, etc) or is the table simply dropped in the upgrade step?
  18. I don't remember any modification for it, but it should be easy to make. At worst, you can edit the template to remove it if there's no hook point for a modification.
  19. That means the file is not being overwritten properly. I'd start by checking the file owner/group/permissions. Sometimes the file is owned by another user/group and it can't be overwritten. In such cases, a simple chown command from SSH would fix it. If you have no idea what I'm talking about, ask your host for help.
  20. Looks like some of your files are not up-to-date. Download the suite package file from your client area and re-upload all the files to your server (be sure to overwrite the old files).
  21. PHP 8.2 is not supported. Downgrade to either 8.0 or 8.1.
  22. It's also possible it's a problem with the image library. Are you using GD or ImageMagick? For example, I've seen people have issues with specific ImageMagick versions.
  23. Looks like one or more files are missing. Try reuploading the files to your server.
  24. No, there is no function like that in the suite. There might be a modification for it if you look around, or you might need a 3rd party Provider to make it for you.
×
×
  • Create New...