Softaculous https://www.softaculous.com/board/index.php? <![CDATA[[Virtualizor WHMCS Module] Bug Report: OS Reinstall fails with "The OS submitted is invalid"]]> https://www.softaculous.com/board/index.php?tid=22144&tpg=1#p62338
we have check on our end there is no issue on reinstall OS.
can you share the the screenshot of that page from where you reinstall the OS from whmcs client?
]]>
Tue, 14 Jul 2026 07:50:39 GMT https://www.softaculous.com/board/index.php?tid=22144&tpg=1#p62338
<![CDATA[[Virtualizor WHMCS Module] Bug Report: OS Reinstall fails with "The OS submitted is invalid"]]> https://www.softaculous.com/board/index.php?tid=22144&tpg=1#p62337 [Virtualizor WHMCS Module] Bug Report: OS Reinstall fails with "The OS submitted is invalid"

Summary

When a client attempts to reinstall the OS on their VPS via the WHMCS Client Area, the operation fails with the error "The OS submitted is invalid", even though the selected OS template is listed as available.

Environment

  • Product: Virtualizor WHMCS Module
  • Module version: 2.9.6, 2.9.8 (present in all recent versions)
  • Affected file: ui/js2/virtualizor.js
  • Affected function: os_badges()
  • Error key: os_invalid_os in enduser_lang.php
Root Cause
  1. The os_badges() function only binds a click event on .create_os badge elements.
  2. When the user opens the dropdown and selects an OS version, a change event fires, but there is NO change event handler to update the hidden field (newos / ps_osid / ei_osid ).
  3. The hidden field remains at its default value "0", and Virtualizor returns os_invalid_os.
The buggy code
Code
function os_badges(ele1, ele2, prefix) {     prefix = prefix || '';     // Only listens to click - NO change handler     $('.'+prefix+'create_os').click(function(){         var os_id = $(this).find('.version').val();         if(os_id > 1) {             $('#'+ele2).val(os_id);         }     });     // Missing: change handler for the version dropdown };
Scope This bug affects all callers of os_badges():
  • show_osreinstall_window() line 3847: os_badges('os_list', 'newos') - OS reinstall
  • fill_ostemplates() line 10322: os_badges(prefix+'osid-box', prefix+'osid', prefix) - Create / Edit VPS
Patch File: ui/js2/virtualizor.js Before:
Code
function os_badges(ele1, ele2, prefix) {     prefix = prefix || '';     $('.'+prefix+'create_os').click(function(){         $(this).siblings().each(function(){             $(this).find('.version').val(-1);         });         $('#'+prefix+'selected_os_icon').remove();         $('#'+ele1+' .'+prefix+'create_os').removeClass('selected');         var os_id = $(this).find('.version').val();         if(os_id > 1) {             $(this).addClass('selected');             $('#'+ele2).val(os_id);             $('.selected').append('... SVG icon ...');         }     }); };
After:
Code
function os_badges(ele1, ele2, prefix) {     prefix = prefix || '';     var select_os = function($badge){         $badge.siblings().each(function(){             $(this).find('.version').val(-1);         });         $('#'+prefix+'selected_os_icon').remove();         $('#'+ele1+' .'+prefix+'create_os').removeClass('selected');         var os_id = $badge.find('.version').val();         if(os_id > 1) {             $badge.addClass('selected');             $('#'+ele2).val(os_id);             $badge.append('... SVG icon ...');         }     };     $('.'+prefix+'create_os').click(function(){         select_os($(this));     });     // FIX: also handle dropdown change event     $('.'+prefix+'create_os .version').change(function(){         select_os($(this).closest('.'+prefix+'create_os'));     }); };
What changed
  • Extracted the selection logic into select_os($badge) to avoid code duplication
  • Replaced $('.selected').append() with $badge.append() for better precision
  • Added a change event handler on the .version dropdown, so the hidden field is updated when the user selects a version


Git Patch

Code

diff --git a/ui/js2/virtualizor.js b/ui/js2/virtualizor.js
--- a/ui/js2/virtualizor.js
+++ b/ui/js2/virtualizor.js
@@ -12021,11 +12021,9 @@ function os_badges(ele1, ele2, prefix) {

    prefix = prefix || '';
   
-    // While clicking on the OS Icons we will reset the other dropdowns
-    $('.'+prefix+'create_os').click(function(){
-
+    var select_os = function($badge){
        // Check for the other OS
-        $(this).siblings().each(function(){
+        $badge.siblings().each(function(){
            // Reset it to -1
            $(this).find('.version').val(-1);
        });
@@ -12034,13 +12032,23 @@ function os_badges(ele1, ele2, prefix) {
        // Remove the selected class from other divs
        $('#'+ele1+' .'+prefix+'create_os').removeClass('selected');
        // Get the value which is OSname
-        var os_id = $(this).find('.version').val();
+        var os_id = $badge.find('.version').val();
       
        if(os_id > 1) {
-            $(this).addClass('selected');
+            $badge.addClass('selected');
            $('#'+ele2).val(os_id);
-            $('.selected').append('...');
+            $badge.append('...');
        }
+    };
+   
+    // While clicking on the OS Icons we will reset the other dropdowns
+    $('.'+prefix+'create_os').click(function(){
+        select_os($(this));
+    });
+   
+    // FIX: also handle dropdown change event to update hidden field
+    $('.'+prefix+'create_os .version').change(function(){
+        select_os($(this).closest('.'+prefix+'create_os'));
    });
};


Recommendation

The guard condition if(os_id > 1) works for numeric OS IDs greater than 1, but would reject string-based OS identifiers (e.g. "ubuntu-2404") or OS ID 1. A more robust guard:

Code

if(os_id !== null && os_id !== undefined && os_id != '-1' && os_id !== '') {


Report prepared: 2026-07-14
]]>
Tue, 14 Jul 2026 03:00:22 GMT https://www.softaculous.com/board/index.php?tid=22144&tpg=1#p62337
<![CDATA[CSF Firewall and Webuzo]]> https://www.softaculous.com/board/index.php?tid=21920&tpg=1#p62336 Mon, 13 Jul 2026 16:04:50 GMT https://www.softaculous.com/board/index.php?tid=21920&tpg=1#p62336 <![CDATA[Issue with Webuzo Scheduled Backups Not Running]]> https://www.softaculous.com/board/index.php?tid=20389&tpg=1#p62335 Mon, 13 Jul 2026 03:31:41 GMT https://www.softaculous.com/board/index.php?tid=20389&tpg=1#p62335 <![CDATA[Search on task list]]> https://www.softaculous.com/board/index.php?tid=22143&tpg=1#p62334
This way, we could know what are the users with issues during backup.]]>
Sat, 11 Jul 2026 13:52:08 GMT https://www.softaculous.com/board/index.php?tid=22143&tpg=1#p62334
<![CDATA[Deskuss v1.0.2— First Public Release]]> https://www.softaculous.com/board/index.php?tid=22142&tpg=1#p62333 After months of design, development, and testing alongside early users, the helpdesk platform we set out to build is finally ready for everyone.

What's in v1.0.2 This release includes the complete helpdesk toolkit you need to run support for a small team or a growing organization:

  • Ticket Management — open, answered, closed, reopened lifecycle with priorities and internal notes.
  • Departments & Staff Roles — route tickets to the right team with admin, manager, and staff permissions.
  • Knowledge Base — searchable FAQ articles with categories and public, private, or internal visibility.
  • SLA Tracking — per-department service level agreements with overdue detection.
  • Custom Forms — collect exactly the information each department needs from customers.
  • Email Notifications — fully configurable alerts and templates for every event.
  • Dashboard & Reports — interactive charts with CSV export for performance analysis.
Try It TodayYou can install the WordPress plugin directly from your site. Browse the installation guide, the features overview, or jump straight to pricing.
Found a bug or have a feature request? Reach out through the contact page or open an issue on the support portal. Every piece of feedback helps shape the next release.

Thank you to everyone who tested early versions and shared feedback. Deskuss v1.0.2 is just the starting line.

Regards,
The Deskuss Team]]>
Sat, 11 Jul 2026 12:46:17 GMT https://www.softaculous.com/board/index.php?tid=22142&tpg=1#p62333
<![CDATA[CookieAdmin 1.2.2: Geotargeting]]> https://www.softaculous.com/board/index.php?tid=22141&tpg=1#p62332
The change log is as follow:-
[Pro Feature] Geotargeting, apply rules based on the visitors geo location.
[Pro Improvement] Improved string translation support via WPML.
[Bug Fix Pro] There was an issue while adding the cookies manually from Scan Cookies page, that has been solved.
[Bug Fix] There was an issue in the block script, that has been solved.

To read the full release post check https://cookieadmin.net/blog/cookieadmin-1-2-2-launched/

Regards,
CookieAdmin Team]]>
Sat, 11 Jul 2026 10:44:55 GMT https://www.softaculous.com/board/index.php?tid=22141&tpg=1#p62332
<![CDATA[Pagelayer 2.1.4 Launched]]> https://www.softaculous.com/board/index.php?tid=22140&tpg=1#p62331
The Pagelayer team has launched version 2.1.4 this release contains new features, some bug fixes and improvements.

  • [Feature] Added Ctrl + K shortcut for widget search.
  • [Improvement] Improved the builder UI/UX.
  • [Bug-Fix] There was some PHP warnings. This is fixed.


Pagelayer team is working on improving the plugin. If you have any suggestions or feedback, then reach us at support@pagelayer.com

Regards,
Pagelayer Team]]>
Fri, 10 Jul 2026 05:13:24 GMT https://www.softaculous.com/board/index.php?tid=22140&tpg=1#p62331
<![CDATA[How do I fix the CVE-2026-53359 vulnerability?]]> https://www.softaculous.com/board/index.php?tid=22139&tpg=1#p62329

If the linux kernel update is available then its better to update it or you can disable the loading of module upon reboot as well (Need to run the following command and then reboot) :



echo "options kvm_intel nested=0" >> /etc/modprobe.d/kvm.conf

OR


echo "options kvm_amd nested=0" >> /etc/modprobe.d/kvm.conf



If it was enabled using our parameter then the file would be /etc/modprobe.d/kvm-nested.conf

We are not doing anything extra.]]>
Wed, 08 Jul 2026 09:59:18 GMT https://www.softaculous.com/board/index.php?tid=22139&tpg=1#p62329
<![CDATA[How do I fix the CVE-2026-53359 vulnerability?]]> https://www.softaculous.com/board/index.php?tid=22139&tpg=1#p62328 I am running Virtualizor KVM on Ubuntu 22.04. How can I fix this? Thanks.]]> Wed, 08 Jul 2026 09:00:41 GMT https://www.softaculous.com/board/index.php?tid=22139&tpg=1#p62328