WHMCS add on module Product::pricing() error logged - whmcs

I've taken over a company that is currently running WHMCS 8.4.1 and has a custom built add-on module.
I want to upgrade WHMCS to 8.5.1 so I set up a dev environment and installed the add-on files to it.
As soon as I try to open the add-on I get the following error:
Whoops\Exception\ErrorException: Declaration of ProductExtended\Core\Models\WHMCS\Product::pricing() must be compatible with WHMCS\Product\Product::pricing($currency = ): WHMCS\Product\Pricing in /Users/steph/Sites/localhost/whmcs/modules/addons/ProductExtended/Core/Models/WHMCS/Product.php:22
Stack trace:
#0 /Users/steph/Sites/localhost/whmcs/vendor/whmcs/whmcs-foundation/lib/Utility/Error/Run.php(0): WHMCS\Utility\Error\Run->handleError(64, 'Declaration of ...', '/Users/steph/Si...', 22)
#1 [internal function]: WHMCS\Utility\Error\Run->handleShutdown()
#2 {main}
I've never done any WHMCS coding before, but based on the error I would assume that there have been changes in the core way that
pricing()
is coded.
All the main files are encrypted so impossible to look at those to see what differs to version 8.4.1
Does anyone have any suggestions on where I might find some resources to help resolve this, and likely other changes that could affect the add-on?
I have looked at the 8.5.1 Realease Notes, Changelog and What's New documents, but found nothing specifically related to code changes.

Check to see whether /Users/steph/Sites/localhost/whmcs/modules/addons/ProductExtended/Core/Models/WHMCS/Product.php is coded by ioncube (the default WHMCS PHP encoder)

If you do not have access to the source code of the module, there's nothing you can do to fix the issue. You would need to contact the developer to have the module updated to support the version of WHMCS that you need.
If the module code is encoded, there's no way (at least legally) that you can decode it.

Related

How unload an extension when i cant login in the backend and the install tool is gone

when upgrading from TYPO3 8.7 to 9.5 i got this error message in the install tool :
Something went wrong. Please use Check for broken extensions to see if a loaded extension breaks this part of the install tool and unload it.
The box below may additionally reveal further details on what went wrong depending on your debug settings. It may help to temporarily switch to debug mode using Settings > Configuration Presets > Debug settings.
If this error happens at an early state and no full exception back trace is shown, it may also help to manually increase debugging output in typo3conf/LocalConfiguration.php:['BE']['debug'] => true, ['SYS']['devIPmask'] => '*', ['SYS']['displayErrors'] => 1,['SYS']['systemLogLevel'] => 0, ['SYS']['exceptionalErrors'] => 12290
Now i am lost because i dont know how to unload an extension ...
- i cant login in the backend
- the install tool is gone - no possibility to get it running again
- typo3conf/autoload is deleted
- typo3temp is deleted
- and in packagestate there is no possibility to unload an extension
I even emptied the complete extension folder but nothing changes.
How is it possible to unload a extension in TYPO3 9 and get the install tool running? Why does it break?
Thanks!
You could either use the command line with
vendor/bin/typo3 extension:deactivate <EXT-KEY>
or delete the array entry for your extension in the file public/typo3conf/PackageStates.php. In both cases, you may need to also clear public/typo3temp/var manually.

Custom ejabberd authentication no longer working

I have created an authentication module which was build against
ejabberd 16.02 and runs fine when auth_method is set. It also works against
16.03.
However, from 16.04 onwards it gives me the error "[error] ignoring
option 'auth_method' with invalid value: [jwt]"
I checked the code diff between those releases and the only change
seems to be to the mod_pubsub.erl file, specifically adding the
following:
ServerHost = serverhost(Host),
+ ejabberd_hooks:run(pubsub_subscribe_node, ServerHost,
+ [ServerHost, Host, Node, Subscriber, SubId]),
https://github.com/processone/ejabberd/commit/639c2fb6401391663206c0e4c946d1a699689ac7
I have tried disabling this module and even deleting the beam file as
i don't use it, but i can't seem ti get round it.
Does anyone have any insight as to why these changes will have broken
my authentication module?
My source is at the link below, but as i say has worked fine for a year:
https://github.com/ParamountVentures/ejabberd-auth-jwt
The answer is that from 16.04 onwards you need to drop the .erl file into the ejabberd src folder and compile it with the source. Dropping in the .beam file to use alternative authentication modules no longer works.

Couchapp - default template not found when running `couchapp generate ...` on Windows

After thorough browsing I decided to post here as I could not find a working prompt on the problem.
I installed CouchDB and Couchapp (in version 1.0.0, freshest one on Github) on Win8 machine and when I try to run couchapp generate app contacts I get:
2014-11-21 22:01:00 [ERROR] couchapp error: Can't create a CouchApp in C:\Users\
Michal\Desktop\contacts: default template not found.
I have not so far dug deeper into the Couchapp code to see if I can fix it. Fixes applied by Couchapp creator, Benoit, don't work for me.
All advice/constructive criticism much appreciated.
OK, I got it working - all that was needed was to include an environment variable for couchapp.exe. So, if you are installing a standalone version of Couchapp from the downloads section ( https://github.com/downloads/couchapp/couchapp/couchapp-1.0.0-win.zip, e.g. ) you NEED TO MAKE SURE that you first of all execute the installer and then point you environment variables Path to it, that's all. Hope it helps.

Flash Builder - Platform conversion failed error during release build

This is a very annoying problem while generating release build files. Here is the steps I did while building:
Select Project > Export Release Build
Select Signed Native Installer
Import certificate
Click Next.
I always got the following error:
https://forums.adobe.com/servlet/JiveServlet/showImage/2-6524012-651585/build_error.png
Platform conversion failed. Process exited with error 5. Output was
"[ErrorEvent type="error" bubbles=false cancelable=false eventPhase=2
text="Unhandled exception Error: EndUpdateResource: Windows Error #5"
errorID=0]
I have the following setup:
OS: Windows 8.1
System type: 64-bit
Flash Builder Version: 4.6 Premium
Installed FB: FlashBuilder_4_6_LS10.exe
Please help. This is giving me a lot of headaches for a couple of days now.
Additionally, here's the stack trace:
java.io.IOException: Platform conversion failed. Process exited with
error 5. Output was "[ErrorEvent type="error" bubbles=false
cancelable=false eventPhase=2 text="Unhandled exception Error:
EndUpdateResource: Windows Error #5" errorID=0] " at
com.adobe.air.nai.NativePackager.conversionFail(NativePackager.java:222)
at
com.adobe.air.nai.NativePackager.invokePlatformConversion(NativePackager.java:203)
at
com.adobe.air.nai.NativePackager.createPackage(NativePackager.java:92)
at
com.adobe.flexbuilder.multisdk.apollo.export.AIRNativeInstallerPackager.create(AIRNativeI
nstallerPackager.java:129) at
com.adobe.flexbuilder.exportimport.releaseversion.ExportReleaseVersionManager.doExport(Ex
portReleaseVersionManager.java:586) at
com.adobe.flexbuilder.exportimport.releaseversion.ui.ExportReleaseVersionWizard$1.run(Exp
ortReleaseVersionWizard.java:208)
I also suspect this is because of the following settings:
Eclipse.ini
https://forums.adobe.com/servlet/JiveServlet/showImage/2-6525217-651726/eclipse.png
...
-startup plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher_library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502.jar
...
Notice that the plugin used is not intended for x64 processors.
#ActionScript3030 is correct, for anyone finding this later on, if you re-link your Library Paths (even if they look correct) this should rectify your issue.
The issue is caused by the links not being able to resolve to their GUID counterparts in your AppData/Local folder. This happens quite commonly when you create a new user profile and try to copy over your old user profiles information.
I already figured this out. I created a virtual machine with windows 7 32bit operating system and I'm happy now :)
If you initially created your project on a different system then try to compile it in another system, the class source and swc paths may not match. These paths could be there but not being implemented in code, so you will not get any run time errors while debugging, but it will give you the error 5 during compilation.
Solution:
Remove the idle paths not directly in use in your code. You can identify them by simply checking the path.
Found the same issue when trying to use Microsoft Essential Security on my Windows 7 x32. When i uinstall it - problem gone. So try to check your firewall settings if stucking the same problem.
Just to add an alternative solution (I'm on an x64 Windows and want to keep build exported for x64), in my case the error popped up when building the project with the AIR SDK defined in the app.xml (an older one, 3.9) and went away when I explicitly used a newer SDK (19).
(Disclaimer: I used the command line adt tool from the SDK to build, not Flash Builder).
A little late, but might possibly help someone.
I had the same error recently with FlashDevelop. Figured out that the my path was too long. When I renamed some long folder and file names, the error disappeared.
Try to disable UAC on Windows 8. Change it to "Never notify". The problem

Yii:: WARNING unable to include files on some pages; please explain

I have been recently running into this issue once I uploaded my Application to an online server,
I keep receiving Warnings such as:
YiiBase::include(CJuiInputWidget.php) [<a href='yiibase.include'>yiibase.include</a>]: failed to open stream: No such file or directory
--OR--
YiiBase::include(YiiMailer.php) [<a href='yiibase.include'>yiibase.include</a>]: failed to open stream: No such file or directory
--OR--
YiiBase::include(CGridColumn.php) [<a href='yiibase.include'>yiibase.include</a>]: failed to open stream: No such file or directory
The real issue here is that all of these pages are working perfectly on my localhost or on other pages on
the online server.
When I hid the warnings, some pages are displayed normally while others are not, I know the error is still there.
My Localhost specs are:
XAMPP, Windows 7 OS, PHP Version 5.3.8
Online Server Specs:
XAMPP, Windows 7 OS, PHP Version 5.2.6
I am currently solving the issue by importing the required widgets in main.
What is also crazy for example is that CGridColumn and CJuiInputwidget are working perfectly on other pages ,
I have made sure that case sensitivity is considered.
Can anyone point me in the right direction or give me any pointers or thoughts on what is happening, any tips or advices are amazingly appreciated!
Here is also a stack trace of whats going on:
**Stack trace:
#0 D:\...\yii\framework\YiiBase.php(395): spl_autoload_call()
#1 D:\...\yii\framework\YiiBase.php(395): autoload()
#2 D:\...\yii\framework\YiiBase.php(296): autoload()
#3 D:\...\yii\framework\YiiBase.php(196): import()
#4 D:\...\yii\framework\zii\widgets\grid\CGridView.php(363):
createComponent()**
as you can see the major issue has to do with the autoload
Thank you, for taking the time to read this,
Could be the common problem of developing on windows, hosting on Linux. Windows doesn't care about the case of the filename, Linux does. I'd have a check through any widgets you've written or are including and any custom package definitions you have. Just ensure the case is correct.
Well I added this to the Index.php in order to hide warnings...very dirty in my POV
ini_set('error_reporting', E_NOTICE);
and the problem dissolved, still I can't comprehend what was happening!