Jump to content
You're invited! Join our 4.6 Live Event on ZOOM 6/24 ×



  • Posts

  • Joined

  • Last visited

  • Days Won


MrFisc last won the day on June 17 2019

MrFisc had the most liked content!


About MrFisc

  • Birthday 05/10/1995

Contact Methods

IPS Marketplace

  • Resources Contributor
    Total file submissions: 3

Profile Information

  • Gender

Recent Profile Visitors

2,712 profile views

MrFisc's Achievements

  1. Hey MrFisc I am getting a weird PHP error with the integration I have a screenshot of it and have messaged you with it. I can post it here if you would like. Unsure why this is an issue. 

    1. MrFisc


      Send me a PM and I’ll take a look with you

  2. Sorry you’re having this issue. Send me a PM and I can try to help you resolve it.
  3. I sent you a DM, sorry for the trouble
  4. This was corrected in version 3.0.2 which is now live on the marketplace. If you have further issues I encourage you to use the GitHub issue tracker as I'm much more active there (it's also publicly accessible).
  5. Thanks for letting me know. Can you send me a PM so I can assist further?
  6. I figured it out. My confusion was around the `csrfProtected` property. I needed to add it to any Controller that uses the Node due to the nodes reliance on an `\IPS\Helpers\Form`.
  7. I've read that too. It's still totally unclear what I need to do with my node subclass. Do I just add the `public static $csrfProtected = TRUE;` to the top of the class? Do i need to add `\IPS\Session::i()->csrfCheck();` to the `saveForm` function? But that doesn't make any sense, since it's using the `\IPS\Helpers\Form` class and not creating my own URL (so i can't use `->csrf()` on any URLs). I assume it's calling `$form->values()` before calling `saveForm`?
  8. I use `\IPS\Node\Model` to manage some things in my application, yet any time I save the form I get a CSRF error. I looked into the Security Considerations documentation and it only mentions that calling `$form->values()` will automatically handle CSRF, but it also only explains how to use CSRF for URLs, which aren't used with `\IPS\Node\Model` subclasses. The nodes example also doesn't mention anything about CSRF.
  9. I will take a look at this on my end, thanks for the heads up. I'll shoot you a PM when the issue is resolved.
  10. I realized i made a mistake after uploading a new version of my application that I need to correct. How can i cancel the "review" process so that i can upload the proper file?
  11. All of the following testing was done on a production style ICS installation without `IN_DEV=true` or the developer toolset installed. It was just a naked ICS 4.5 installation with only my application installed as a third party application. The hook in question: //<?php /* To prevent PHP errors (extending class does not exist) revealing path */ if ( !defined( '\IPS\SUITE_UNIQUE_KEY' ) ) { exit; } class ts3integration_hook_AppLogo extends _HOOK_CLASS_ { /* !Hook Data - DO NOT REMOVE */ public static function hookData() { return array_merge_recursive( array ( 'appmenu' => array ( 0 => array ( 'selector' => '#acpAppList', 'type' => 'add_before', 'content' => '', ), ), ), parent::hookData() ); } /* End Hook Data */ } Note that it has no content in it. The parser error I see is: How I verified it was my hook When i include this hook in my project, compile my project and install it on a fresh installation of IPS, I get a 500 error. After a lot of debugging i've confirmed it is this hook that's causing the issue by filtering it out in the \IPS\Theme PHP file (./system/Theme/Theme.php). if ($data['class'] != 'ts3integration_hook_AppLogo') { $class = "IPS\\Theme\\" . $data['class'] . "_tmp"; $templateHooks = array_merge_recursive( $templateHooks, $class::hookData() ); } When I wrap that code in an if statement filtering out my hook, the page loads just fine. How I debugged further I found the relevant code in Theme.php and updated it to print a lot of information. try { if ( @eval( $compiledGroup ) === FALSE ) { throw new \IPS\Theme\TemplateException( 'Invalid Template', 1000, NULL, array( 'group' => $group, 'app' => $app, 'location' => $location ), $this ); } } catch ( \ParseError $e ) { header('Content-Type: text/plain;'); echo $app . '/' . $location . '/' . $group . PHP_EOL; print_r($e); echo $compiledGroup; exit; } Which resulted in this core/admin/global ParseError Object ( [message:protected] => syntax error, unexpected 'endforeach' (T_ENDFOREACH), expecting elseif (T_ELSEIF) or else (T_ELSE) or endif (T_ENDIF) [string:Error:private] => [code:protected] => 0 [file:protected] => /var/www/html/system/Theme/Theme.php(854) : eval()'d code [line:protected] => 238 [trace:Error:private] => Array ( [0] => Array ( [file] => /var/www/html/system/Dispatcher/Admin.php [line] => 120 [function] => getTemplate [class] => IPS\_Theme [type] => -> ) [1] => Array ( [file] => /var/www/html/system/Dispatcher/Dispatcher.php [line] => 109 [function] => init [class] => IPS\Dispatcher\_Admin [type] => -> ) [2] => Array ( [file] => /var/www/html/admin/index.php [line] => 14 [function] => i [class] => IPS\_Dispatcher [type] => :: ) ) [previous:Error:private] => ) // REMOVED LONG $compiledGroup OUTPUT The $compiledGroup output was too long to display here, however I did discover which line was causing the issue by running it through a PHP syntax validator and found the unexpected `endforeach;`. You can see it on the last line of this block: if ( $appAndModule . "_" . $key === $currentItem ): $return .= <<<CONTENT > </ul> </li> CONTENT; endforeach; Conclusion I don't understand how my hook above causes this issue. Especially since the unexpected endforeach; has nothing to do with my hook. To me this seems like a bug in ICS and not an issue with my application, but I can't tell for certain.
  12. What's New in Version 3.0.0 Updated for Invision Community 4.5 Please report any issues you encounter on the official bug report GitHub Repository https://github.com/nathan-fiscaletti/TeamSpeak-Integration-Issue-Tracker/
  13. What's New in Version 2.0.9 Change Log: Added support for clubs in Group Association
  14. What's New in Version 2.0.8 Change Log: Added a new warning message to the snapshot section of the application Fixed an issue with group association forms not submitting
  15. What's New in Version 2.0.7 Change Log: Fixed an issue with Tasks getting locked Please note that you will need to update the intervals for your tasks in Profile Settings -> Run as Task -> Cache For and in Server Groups -> Auto Sync -> Run as Task -> Task Frequency Fixes SyncTeamSpeakInBackground returned a NULL offset bug
  • Create New...

Important Information

We use technologies, such as cookies, to customise content and advertising, to provide social media features and to analyse traffic to the site. We also share information about your use of our site with our trusted social media, advertising and analytics partners. See more about cookies and our Privacy Policy