diff --git a/rma_manage.php b/rma_manage.php
index 4fa7b8d..41969d0 100644
--- a/rma_manage.php
+++ b/rma_manage.php
@@ -260,11 +260,11 @@ $view .= '
'.$equipment_label10.'
diff --git a/settings/translations/translations_DE.php b/settings/translations/translations_DE.php
index f5c811e..458b03a 100644
--- a/settings/translations/translations_DE.php
+++ b/settings/translations/translations_DE.php
@@ -28,6 +28,9 @@ $menu_report_usage = 'Systemnutzung';
$menu_maintenance = 'Maintenance';
$menu_profiles = 'Profiles';
$menu_upgrades = 'Software Upgrades';
+$menu_sales_licenses = 'Lizenzen';
+$menu_softwaretool = 'Software-Aktualisierung';
+$menu_products_software_versions = 'Software';
$tab1 = 'Allgemein';
$tab2 = 'Partner';
$tab3 = 'Protokoll';
@@ -366,16 +369,15 @@ $register_3_term_consent_1 = 'Ich stimme den ';
$register_3_term_consent_2 = 'Allgemeinen Geschäftsbedingungen zu';
$register_button = 'Registrieren';
$register_mandatory = 'verpflichtend';
-$register_4_completed = '4. Registrierung abgeschlossen';
-$register_5_details = '5. Registrierungsdetails';
-$register_6_return = '6. Zurück zur Registrierung';
+$register_4_completed = 'Registrierung abgeschlossen';
+$register_5_details = 'Registrierungsdetails';
+$register_6_return = 'Zurück zur Registrierung';
$register_6_button = 'Zurück';
$register_message_1 = 'Seriennummer nicht erkannt, bitte wenden Sie sich an Ihren Lieferanten';
$register_message_2 = 'Produkt in Garantie oder Garantie abgelaufen. Falls dies nicht korrekt ist, wenden Sie sich bitte an Ihren Lieferanten';
$register_message_3 = 'Die Garantie wurde um ein zusätzliches Jahr verlängert';
$register_message_4 = 'Vielen Dank für Ihre Registrierung. Sie erhalten den Link zu unserem Software-Update-Tool per E-Mail, die Sie während der Registrierung angegeben haben.
-
-Falls Sie unsere E-Mail nicht erhalten, können Sie über unsere Website auf unser Software-Update-Tool zugreifen. Gehen Sie zu Mein Login und verwenden Sie Benutzername/Passwort:';
+
Falls Sie unsere E-Mail nicht erhalten, können Sie über unsere Website auf unser Software-Update-Tool zugreifen.
Gehen Sie zu Mein Login und verwenden Sie Benutzername/Passwort:';
$communication_h2 = 'Kommunikation';
$communication_p = 'Kommunikation anzeigen, verwalten und suchen.';
$communication_status = 'Status';
@@ -822,5 +824,6 @@ $focus_offering_0 = 'Economy - Premium';
$focus_offering_1 = 'Premium - Highend';
$dealer_type_0 = 'Lokal';
$dealer_type_1 = 'Professionell';
-$dealer_type_2 = 'Unternehmens';
-?>
\ No newline at end of file
+$dealer_type_2 = 'Unternehmens';$user_information_required = 'Benutzerinformationen Erforderlich';
+$user_information_description = 'Bitte geben Sie Ihre Daten ein, um mit Software-Updates fortzufahren';
+$general_continue = 'Fortfahren';?>
\ No newline at end of file
diff --git a/settings/translations/translations_ES.php b/settings/translations/translations_ES.php
index a2cda78..799a0ed 100644
--- a/settings/translations/translations_ES.php
+++ b/settings/translations/translations_ES.php
@@ -28,6 +28,9 @@ $menu_report_usage = 'Uso del Sistema';
$menu_maintenance = 'Mantenimiento';
$menu_profiles = 'Perfiles';
$menu_upgrades = 'Actualizaciones de Software';
+$menu_sales_licenses = 'Licencias';
+$menu_softwaretool = 'Actualización de Software';
+$menu_products_software_versions = 'Software';
$tab1 = 'General';
$tab2 = 'Socios';
$tab3 = 'Registro';
@@ -366,16 +369,14 @@ $register_3_term_consent_1 = 'Acepto ';
$register_3_term_consent_2 = 'términos y condiciones';
$register_button = 'Registrar';
$register_mandatory = 'obligatorio';
-$register_4_completed = '4. Registro Completado';
-$register_5_details = '5. Detalles del Registro';
-$register_6_return = '6. Volver al registro';
+$register_4_completed = 'Registro Completado';
+$register_5_details = 'Detalles del Registro';
+$register_6_return = 'Volver al registro';
$register_6_button = 'Atrás';
$register_message_1 = 'Número de serie no reconocido, comuníquese con su proveedor';
$register_message_2 = 'Producto bajo garantía o garantía expirada. Si no es correcto, comuníquese con su proveedor';
$register_message_3 = 'La garantía se extiende por 1 año adicional';
-$register_message_4 = 'Gracias por su registro. Recibirá el enlace a nuestra herramienta de actualización de software a través del correo electrónico proporcionado durante el registro.
-
-En caso de que no reciba nuestro correo electrónico, puede acceder a nuestra herramienta de actualización de software a través de nuestro sitio web. Vaya a Mi Login y utilice nombre de usuario/contraseña:';
+$register_message_4 = 'Gracias por su registro. Recibirá el enlace a nuestra herramienta de actualización de software a través del correo electrónico proporcionado durante el registro.
En caso de que no reciba nuestro correo electrónico, puede acceder a nuestra herramienta de actualización de software a través de nuestro sitio web.
Vaya a Mi Login y utilice nombre de usuario/contraseña:';
$communication_h2 = 'Comunicación';
$communication_p = 'Ver, gestionar y buscar comunicación.';
$communication_status = 'Estado';
@@ -829,4 +830,7 @@ $focus_offering_1 = 'Premium - Alta gama';
$dealer_type_0 = 'Local';
$dealer_type_1 = 'Profesional';
$dealer_type_2 = 'Corporativo';
+$user_information_required = 'Información del Usuario Requerida';
+$user_information_description = 'Por favor proporcione su información para continuar con las actualizaciones de software';
+$general_continue = 'Continuar';
?>
\ No newline at end of file
diff --git a/settings/translations/translations_NL.php b/settings/translations/translations_NL.php
index 0d26ee3..50828f6 100644
--- a/settings/translations/translations_NL.php
+++ b/settings/translations/translations_NL.php
@@ -28,6 +28,9 @@ $menu_report_usage = 'Systeemgebruik';
$menu_maintenance = 'Maintenance';
$menu_profiles = 'Profielen';
$menu_upgrades = 'Software Upgrades';
+$menu_sales_licenses = 'Licenties';
+$menu_softwaretool = 'Software Update';
+$menu_products_software_versions = 'Software';
$tab1 = 'Algemeen';
$tab2 = 'Hierarchy';
$tab3 = 'Log';
@@ -366,16 +369,14 @@ $register_3_term_consent_1 = 'Ik ga akkoord met de ';
$register_3_term_consent_2 = 'algemene voorwaarden';
$register_button = 'Registreren';
$register_mandatory = 'verplicht';
-$register_4_completed = '4. Registratie Voltooid';
-$register_5_details = '5. Registratiegegevens';
-$register_6_return = '6. Terug naar registratie';
+$register_4_completed = 'Registratie Voltooid';
+$register_5_details = 'Registratiegegevens';
+$register_6_return = 'Terug naar registratie';
$register_6_button = 'Terug';
$register_message_1 = 'Serienummer niet herkend, neem contact op met uw leverancier';
$register_message_2 = 'Product onder garantie of garantie verlopen. Neem contact op met uw leverancier als dit niet klopt';
$register_message_3 = 'Garantie is met 1 extra jaar verlengd';
-$register_message_4 = 'Bedankt voor uw registratie. U ontvangt de link naar onze software-update tool via de e-mail die u tijdens de registratie heeft opgegeven.
-
-Als u onze e-mail niet ontvangt, kunt u via onze website toegang krijgen tot onze software updatetool. Ga naar Mijn Login en gebruik gebruikersnaam/wachtwoord:';
+$register_message_4 = 'Bedankt voor uw registratie. U ontvangt de link naar onze software-update tool via de e-mail die u tijdens de registratie heeft opgegeven.
Als u onze e-mail niet ontvangt, kunt u via onze website toegang krijgen tot onze software updatetool.
Ga naar Mijn Login en gebruik gebruikersnaam/wachtwoord:';
$communication_h2 = 'Communicatie';
$communication_p = 'Bekijk, update, en zoek communicatie.';
$communication_status = 'Status';
@@ -1035,4 +1036,7 @@ $focus_offering_1 = 'Premium - Highend';
$dealer_type_0 = 'Lokaal';
$dealer_type_1 = 'Professioneel';
$dealer_type_2 = 'Bedrijf';
+$user_information_required = 'Gebruikersinformatie Vereist';
+$user_information_description = 'Geef uw gegevens op om door te gaan met software-updates';
+$general_continue = 'Doorgaan';
?>
\ No newline at end of file
diff --git a/settings/translations/translations_PL.php b/settings/translations/translations_PL.php
index 63abeed..645d187 100644
--- a/settings/translations/translations_PL.php
+++ b/settings/translations/translations_PL.php
@@ -28,6 +28,9 @@ $menu_report_usage = 'Użycie systemu';
$menu_maintenance = 'Konserwacja';
$menu_profiles = 'Profile';
$menu_upgrades = 'Aktualizacje Oprogramowania';
+$menu_sales_licenses = 'Licencje';
+$menu_softwaretool = 'Aktualizacja Oprogramowania';
+$menu_products_software_versions = 'Oprogramowanie';
$tab1 = 'Ogólne';
$tab2 = 'Partnerzy';
$tab3 = 'Dziennik';
@@ -373,7 +376,7 @@ $register_6_button = 'Wstecz';
$register_message_1 = 'Numer seryjny nie został rozpoznany, skontaktuj się z dostawcą';
$register_message_2 = 'Produkt objęty gwarancją lub gwarancja wygasła. Jeśli jest to nieprawidłowe, skontaktuj się z dostawcą';
$register_message_3 = 'Gwarancja przedłużona o 1 dodatkowy rok';
-$register_message_4 = 'Dziękujemy za rejestrację. Otrzymasz link do naszego narzędzia aktualizacji oprogramowania na adres e-mail podany podczas rejestracji. W przypadku nieotrzymania naszego e-maila możesz uzyskać dostęp do naszego narzędzia aktualizacji oprogramowania przez naszą stronę internetową. Przejdź do Moje logowanie i użyj nazwy użytkownika/hasła:';
+$register_message_4 = 'Dziękujemy za rejestrację. Otrzymasz link do naszego narzędzia aktualizacji oprogramowania na adres e-mail podany podczas rejestracji.
W przypadku nieotrzymania naszego e-maila możesz uzyskać dostęp do naszego narzędzia aktualizacji oprogramowania przez naszą stronę internetową.
Przejdź do Moje logowanie i użyj nazwy użytkownika/hasła:';
$communication_h2 = 'Komunikacja';
$communication_p = 'Przeglądaj, zarządzaj i wyszukuj komunikację.';
$communication_status = 'Status';
@@ -761,4 +764,7 @@ $general_currency_1 = '$';
$general_currency_0 = '€';
$general_modifier_0 = '-';
$general_modifier_1 = '+';
+$user_information_required = 'Wymagane Informacje o Użytkowniku';
+$user_information_description = 'Podaj swoje dane, aby kontynuować aktualizacje oprogramowania';
+$general_continue = 'Kontynuuj';
?>
\ No newline at end of file
diff --git a/settings/translations/translations_PT.php b/settings/translations/translations_PT.php
index 0858309..cfa1a59 100644
--- a/settings/translations/translations_PT.php
+++ b/settings/translations/translations_PT.php
@@ -28,6 +28,9 @@ $menu_report_usage = 'Uso do Sistema';
$menu_maintenance = 'Manutenção';
$menu_profiles = 'Perfis';
$menu_upgrades = 'Atualizações de Software';
+$menu_sales_licenses = 'Licenças';
+$menu_softwaretool = 'Atualização de Software';
+$menu_products_software_versions = 'Software';
$tab1 = 'Geral';
$tab2 = 'Parceiros';
$tab3 = 'Registro';
@@ -366,16 +369,14 @@ $register_3_term_consent_1 = 'Eu concordo com ';
$register_3_term_consent_2 = 'termos e condições';
$register_button = 'Registrar';
$register_mandatory = 'obrigatório';
-$register_4_completed = '4. Registro Concluído';
-$register_5_details = '5. Detalhes do Registro';
-$register_6_return = '6. Retornar ao registro';
+$register_4_completed = 'Registro Concluído';
+$register_5_details = 'Detalhes do Registro';
+$register_6_return = 'Retornar ao registro';
$register_6_button = 'Voltar';
$register_message_1 = 'Número de série não reconhecido, entre em contato com seu fornecedor';
$register_message_2 = 'Produto sob garantia ou garantia expirada. Se não estiver correto, entre em contato com seu fornecedor';
$register_message_3 = 'Garantia é estendida por 1 ano adicional';
-$register_message_4 = 'Obrigado pelo seu registro. Você receberá o link para nossa ferramenta de atualização de software pelo e-mail fornecido durante o registro.
-
-Caso não receba o nosso e-mail, pode aceder à nossa ferramenta de atualização de software através do nosso website. Vá para Meu Login e utilize o nome de utilizador/palavra-passe:';
+$register_message_4 = 'Obrigado pelo seu registro. Você receberá o link para nossa ferramenta de atualização de software pelo e-mail fornecido durante o registro.
Caso não receba o nosso e-mail, pode aceder à nossa ferramenta de atualização de software através do nosso website.
Vá para Meu Login e utilize o nome de utilizador/palavra-passe:';
$communication_h2 = 'Comunicação';
$communication_p = 'Ver, gerenciar e buscar comunicação.';
$communication_status = 'Status';
@@ -829,4 +830,7 @@ $focus_offering_1 = 'Premium - Alta gama';
$dealer_type_0 = 'Local';
$dealer_type_1 = 'Profissional';
$dealer_type_2 = 'Corporativo';
+$user_information_required = 'Informações do Usuário Obrigatórias';
+$user_information_description = 'Por favor, forneça suas informações para continuar com as atualizações de software';
+$general_continue = 'Continuar';
?>
\ No newline at end of file
diff --git a/settings/translations/translations_US.php b/settings/translations/translations_US.php
index 1858eb1..90120e4 100644
--- a/settings/translations/translations_US.php
+++ b/settings/translations/translations_US.php
@@ -29,6 +29,9 @@ $menu_report_usage = 'System usage';
$menu_maintenance = 'Maintenance';
$menu_profiles = 'Profiles';
$menu_upgrades = 'Software Upgrades';
+$menu_sales_licenses = 'Licenses';
+$menu_softwaretool = 'Software Update';
+$menu_products_software_versions = 'Software';
$tab1 = 'General';
$tab2 = 'Partners';
$tab3 = 'Log';
@@ -375,16 +378,14 @@ $register_3_term_consent_1 = 'I agree with ';
$register_3_term_consent_2 = 'terms and conditions';
$register_button = 'Register';
$register_mandatory = 'mandatory';
-$register_4_completed = '4. Registration Completed';
-$register_5_details = '5. Registration details';
-$register_6_return = '6. Return to registration';
+$register_4_completed = 'Registration Completed';
+$register_5_details = 'Registration details';
+$register_6_return = 'Return to registration';
$register_6_button = 'Back';
$register_message_1 = 'Serialnumber not recognized, please contact your supplier';
$register_message_2 = 'Product under warranty or warranty expired. If not correct please contact your supplier';
$register_message_3 = 'Warranty is extended with 1 additional year';
-$register_message_4 = 'Thank you for your registration. You will receive the link to our software update tool via the mail provided during the registration.
-
-In case you do not receive our email you can access our software update tool via our website. Go to My Login and use username/password:';
+$register_message_4 = 'Thank you for your registration. You will receive the link to our software update tool via the mail provided during the registration.
In case you do not receive our email you can access our software update tool via our website.
Go to My Login and use username/password:';
$communication_h2 = 'Communication';
$communication_p = 'View, manage, and search communication.';
$communication_status = 'Status';
@@ -1049,4 +1050,7 @@ $focus_offering_1 = 'Premium - Highend';
$dealer_type_0 = 'Local';
$dealer_type_1 = 'Professional';
$dealer_type_2 = 'Corporate';
+$user_information_required = 'User Information Required';
+$user_information_description = 'Please provide your information to continue with software updates';
+$general_continue = 'Continue';
?>
\ No newline at end of file
diff --git a/softwaretool.php b/softwaretool.php
index 1bdf7cc..6169e92 100644
--- a/softwaretool.php
+++ b/softwaretool.php
@@ -203,9 +203,11 @@ $view .= '
'.$softwaretool_checking.'
-
-
'.$softwaretool_select_upgrade.'
-
+
+
+
'.$softwaretool_select_upgrade.'
+
+
@@ -274,6 +276,18 @@ echo '
var MOLLIE_ENABLED = '.(mollie_enabled ? 'true' : 'false').';
var PAYPAL_ENABLED = '.(paypal_enabled ? 'true' : 'false').';
var PAY_ON_DELIVERY_ENABLED = '.(pay_on_delivery_enabled ? 'true' : 'false').';
+
+ // Translation variables
+ var TRANS_NAME = "'.($account_name ?? 'Name').'";
+ var TRANS_EMAIL = "'.($account_email ?? 'Email').'";
+ var TRANS_ADDRESS = "'.($shipping_address ?? 'Address').'";
+ var TRANS_CITY = "'.($shipping_city ?? 'City').'";
+ var TRANS_POSTAL = "'.($shipping_zip ?? 'Postal Code').'";
+ var TRANS_COUNTRY = "'.($shipping_country ?? 'Country').'";
+ var TRANS_USER_INFO_REQUIRED = "'.($user_information_required ?? 'User Information Required').'";
+ var TRANS_USER_INFO_DESCRIPTION = "'.($user_information_description ?? 'Please provide your information to continue with software updates').'";
+ var TRANS_CONTINUE = "'.($general_continue ?? 'Continue').'";
+
var port, textEncoder, writableStreamClosed, writer, historyIndex = -1;
const lineHistory = [];
diff --git a/style/admin.css b/style/admin.css
index 34cbd5e..0270618 100644
--- a/style/admin.css
+++ b/style/admin.css
@@ -1062,43 +1062,6 @@ main .manage-order-table .delete-item:hover {
color: #e26060;
}
-.table table tbody .status {
- padding: 6px 12px;
- border-radius: 6px;
- background-color: #10b981;
- font-weight: 500;
- font-size: 12px;
- color: var(--color-white);
- display: inline-block;
- text-align: center;
- min-width: 60px;
-}
-
-.table table tbody .status.enabled {
- padding: 6px 12px;
- border-radius: 6px;
- background-color: #10b981;
- font-weight: 500;
- font-size: 12px;
- color: var(--color-white);
- display: inline-block;
- text-align: center;
- min-width: 60px;
-}
-
-.table table tbody .status.disabled {
- padding: 6px 12px;
- border-radius: 6px;
- background-color: #ef4444;
- font-weight: 500;
- font-size: 12px;
- color: var(--color-white);
- display: inline-block;
- text-align: center;
- min-width: 60px;
-}
-
-
.status {
padding: 3px 6px;
border-radius: 4px;
@@ -1335,6 +1298,24 @@ background-color: var(--color-indicator-1);
font-style: italic;
}
+.link-with-icon {
+ text-decoration: none;
+ color: var(--color-green);
+ font-weight: 500;
+ transition: color 0.2s ease;
+}
+
+.link-with-icon:hover {
+ color: var(--color-dark-green);
+ text-decoration: underline;
+}
+
+.link-with-icon i {
+ font-size: 0.75em;
+ margin-left: 4px;
+ opacity: 0.7;
+}
+
.btn_link {
display: inline-flex;
align-items: center;
@@ -3128,4 +3109,128 @@ main .content-block .button-container {
align-items: center;
padding: 20px;
border-top: 1px solid #eee;
-}
\ No newline at end of file
+}
+
+/* Registration Modal Styles */
+
+.reg-modal {
+ display: none;
+ position: fixed;
+ top: 0;
+ left: 0;
+ width: 100%;
+ height: 100%;
+ background: rgba(0, 0, 0, 0.5);
+ z-index: 1000;
+ align-items: center;
+ justify-content: center;
+}
+
+.reg-modal-content {
+ background: white;
+ border-radius: 12px;
+ max-width: 600px;
+ width: 90%;
+ max-height: 90vh;
+ overflow-y: auto;
+ margin: 20px;
+ box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
+}
+
+.reg-modal-header {
+ padding: 25px;
+ border-bottom: 2px solid #e0e0e0;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.reg-modal-header h3 {
+ margin: 0;
+ color: #333;
+}
+
+.reg-modal-close {
+ background: transparent;
+ border: none;
+ font-size: 24px;
+ cursor: pointer;
+ color: #666;
+}
+
+.reg-tabs {
+ border-bottom: 1px solid #e0e0e0;
+}
+
+.reg-tab-link {
+ padding: 15px 25px;
+ display: inline-block;
+ text-decoration: none;
+ color: #666;
+ border-bottom: 2px solid transparent;
+ transition: all 0.3s;
+}
+
+.reg-tab-link.active {
+ border-bottom: 2px solid #04AA6D;
+ color: #04AA6D;
+}
+
+.reg-tab-content {
+ padding: 25px;
+}
+
+.reg-fields {
+ display: flex;
+ flex-direction: column;
+ gap: 15px;
+}
+
+.reg-field-group {
+ display: grid;
+ grid-template-columns: 1fr 1fr;
+ gap: 15px;
+}
+
+.reg-field label {
+ display: block;
+ margin-bottom: 5px;
+ color: #666;
+ font-size: 12px;
+ font-weight: 600;
+ text-transform: uppercase;
+}
+
+.reg-field p {
+ margin: 0;
+ padding: 10px;
+ background: #f8f9fa;
+ border-radius: 6px;
+ color: #333;
+}
+
+.reg-field-email {
+ color: #04AA6D;
+ cursor: pointer;
+ transition: background 0.2s;
+}
+
+.reg-field-email:hover {
+ background: #e9ecef;
+}
+
+.reg-empty-state {
+ text-align: center;
+ padding: 40px 20px;
+ color: #999;
+}
+
+.reg-empty-state i {
+ font-size: 48px;
+ margin-bottom: 15px;
+ opacity: 0.3;
+}
+
+.reg-empty-state p {
+ margin: 0;
+}
diff --git a/style/admin_login.css b/style/admin_login.css
index 45cff5e..e3ff6dc 100644
--- a/style/admin_login.css
+++ b/style/admin_login.css
@@ -80,9 +80,20 @@ body {
top: 20px;
right: 20px;
text-decoration: none;
+ margin-left: auto;
+ padding: 8px 16px;
+ background-color: transparent;
color: var(--text-color);
+ border: 1px solid var(--text-color);
+ border-radius: 4px;
+ font-size: 12px;
+ transition: all 0.3s ease;
+}
+
+.register-link:hover {
+ background-color: var(--text-color);
+ color: var(--color-white);
}
-
.header {
margin-bottom: 30px;
}