There is One File that creates these errors, especially the $this statement. This is ongoing ,especially any and all Older Modules, such as the Credits Module , and much more. Here is a simple fix to test it and see if the Errors disappear, if works, then leave it the way it is. Again, for some strange reason unless your running php version 5.3.xx, you will get errors with any and all newer versions of the PHP version on your Server. I am running on my Site 90% of the Older Module’s such as The Credits module, the popup news , and the Exams module, all on php 5.6.xx. Server version.
Here is the simple fix, “REMEMBER” to make a copy of the original somewhere, or re-name it to codeon.config.php.bak. The file obviously is the codeon.config.php file, below are the changes you can make to it, its “ONLY” ONE line that needs to be changed, don’t mess with anything else. This file lives in the "www.mysite.com/core/codeon.config.php
Look for line 40-42, around there, you will see this, pay attention to the changes I’ve made;
session\_start(); error\_reporting(E\_ALL ^ E\_NOTICE); # @ini\_set('display\_errors', 'on'); This is the only line to CHANGE nothing else as you can see below is off now @ini\_set('display\_errors', 'off'); define('DS', DIRECTORY\_SEPARATOR); define('SITE\_ROOT', str\_replace('core', '', dirname(\_\_FILE\_\_))); define('CORE\_PATH', dirname(\_\_FILE\_\_) ); define('CORE\_LIB\_PATH', CORE\_PATH.DS.'lib'); define('CLASS\_PATH', CORE\_PATH.DS.'classes'); define('LOGS\_PATH', CORE\_PATH.DS.'logs'); define('TEMPLATES\_PATH', CORE\_PATH.DS.'templates'); define('MODULES\_PATH', CORE\_PATH.DS.'modules'); define('CACHE\_PATH', CORE\_PATH.DS.'cache'); define('COMMON\_PATH', CORE\_PATH.DS.'common'); define('PAGES\_PATH', CORE\_PATH.DS.'pages'); define('LIB\_PATH', SITE\_ROOT.DS.'lib'); define('VENDORS\_PATH', CORE\_PATH.DS.'vendors');
Again , do NOT change anything else unless you know what your doing, make a backup also, this works flawlessly on my Web Site, hope this helps you.
Jim