JobClass - Application Web d'Offres d'Emploi
Dernière : v19.1.6 6 octobre 2026 159 versions
Retour au produit
  1. 19.1.6

    Dernière
    • Admin Panel (Settings): the "Application" settings group is renamed "General" (Settings > General). Its former address (/admin/settings/app) redirects to the new one.
    • The options of the "General" settings group now use the same names as the Larapen platform (e.g. site_name, site_tagline, site_logo, date_format). They are renamed during the update; add-ons and themes still using the former names keep working.
    • Admin Panel (Settings > General > Search): the "Smart search" and "Enable diacritics search" options are moved there from Settings > Listings List.
    • The "Enable diacritics search" option now applies to every search of the classic search engine (when the "Smart search" option is disabled), and is always shown in the settings.
    • Nouveau: Add-ons with searches (Blog, Domain Mapping and Stats) can override the "Smart search" and "Enable diacritics search" options in their own settings, for their searches only.
    • Admin Panel (Settings > General): the logos are gathered in a new "Logo Management" card (primary logo, logo for light backgrounds and logo for dark backgrounds), and the favicon has its own "Favicon" card.
    • Admin Panel (Settings > General > Logo Management): new "Logo Dimensions" options (max height, max width and mobile max height) to override the logo size of the theme. Leave them empty to keep the theme's sizing.
    • Admin Panel: the image upload fields of the settings now show a preview of the image (on a light or dark background for the logos), with "Upload" / "Change" and "Remove" buttons.
    • Amélioré: Updated the Laravel framework to 13.35 and the Laravel AI SDK to 1.2 (used by the AI translation of the language files). The AI providers now use the SDK's native connections.
    • Sécurité: Security: updated Laravel Socialite to 5.30 and phpseclib to 3.0.57, which fixes a phpseclib vulnerability (CVE-2026-84308).
    • Known bugs fixed.
    • Improvements.
    • Admin Panel: the bulk actions (approve, archive, unarchive, delete, activate, deactivate) now refresh the cached data right away. For instance, bulk-approved listings no longer stay missing from the homepage and the search results until the cache expires.
    • Sécurité: Security: uploaded files (custom field files, message attachments, resumes and images) are now always saved with an extension that matches their content. An extension that a web server can execute (such as .pht or .phps) is never kept, even when the file passes the format validation.
    • Changing the caching driver (Admin Panel → Settings → Optimization) now clears the cache. Switching back to a driver used before (e.g. from "None" to "File") could show outdated content, such as the homepage missing the listings posted in the meantime.
    • With the "File" cache driver, the expired cache files are now also deleted when no cron job is set up: when the scheduled clean up hasn't run for more than a day, short clean ups (about 1 second each, after the page is sent) run after some visits.
    • Listing pages and searches now store much less cache data: the similar listings are shared by all the listings of a category (or city), and the tracking parameters added to the URLs (utm_source, fbclid, gclid, etc.) no longer create copies of the search results.
    • Admin Panel: the Optimization settings page now warns when the "File" cache driver is used and the cron job doesn't seem to run.
    • Admin Panel: activating, deactivating or saving a language no longer fails when the "public/cache/" folder isn't writable. The installer now checks that this folder is writable, and the documentation lists it in the required permissions.
    • Admin Panel: saving a homepage section with a new background image no longer reports success when the image could not be saved. An image larger than the server's upload limit (PHP "upload_max_filesize") now shows an error with that limit, and an image that can't be written to the storage is reported and logged, instead of the previous image being silently kept.
    • Corrigé: Fixed the "Typed property ...FrontController::$og must not be accessed before initialization" error logged on some homepage requests (for instance from bots or monitoring tools asking for JSON).
    • Known bugs fixed.
    • Improvements.
    • With the "File" cache driver, the cache directory (storage/framework/cache/data/) no longer grows by several gigabytes: the listings visits counter and the users' last login and activity dates no longer refresh the cache, and the outdated cache files are now deleted as soon as the cached data changes.
    • The daily Cache Purge task (expired-cache:purge) now also deletes the outdated cache files left behind.
    • Documentation: the Cron Job section has been rewritten (complete list of the scheduled tasks, how to check that the cron job works, correct .env variables), and a new Cache & Disk Space section has been added.
    • Known bugs fixed.
    • Improvements.
    • Known bugs fixed.
    • Improvements.
    • Active free plans (price 0.00) now replace the related settings: the free subscription plan's listings limit replaces the "Listings Limit per User" setting, and the free plans' publication duration replaces the "Activated Ads Expiration" setting.
    • Plan limits (listings limit and publication duration) are now resolved in one place: when several plans apply at the same time (free plans, a paid subscription and a paid promotion), the highest value is used.
    • Admin Panel: the plans form and the Listing Form and Cron settings pages now explain how the free and paid plans replace these settings, and show when a setting is currently replaced.
    • Admin Panel: a paid plan's limits must now be at least the free tier values.
    • The Listings Purge command now uses the Cron settings saved in the Admin Panel (the default values were always used).
    • The Listings Purge command no longer applies a listing's plan duration to the listings processed after it.
    • A payment made for a free plan (e.g., through the Offline Payment add-on) no longer bypasses the free listings limit.
    • PHP object injection vulnerability in the app/Http/Controllers/Web/Public/Ajax/Location/ModalController.php file fixed. Thanks to Alizons Nematovs.
    • Known bugs fixed.
    • Improvements.
    • Known bugs fixed.
    • Improvements.
    • Corrigé: Bug fixed: HTTP 500 "Undefined variable $plan" when creating/editing any plan.
    • Corrigé: Bug fixed: Checkout shows "Payable Amount: 0", blocking payment.
    • Nouveau: Added a "Newsletter" section to the homepage sections (Admin Panel: Page sections).
    • The Newsletter section supports a per-locale title, sub-title, button label and email placeholder.
    • The Newsletter section can optionally collect the subscriber's name and phone number.
    • Subscribers coming from the Newsletter section can be assigned to one or more newsletter segments.
    • The Newsletter section is hidden in the Admin Panel and on the front-end when the Newsletter add-on is not active.
    • Admin Panel: missing homepage section rows are now created automatically, so sections added by an update appear without a manual step.
    • Admin Panel: the dashboard is now built from widgets that can be reordered by drag and drop.
    • Admin Panel: each administrator can show or hide dashboard widgets from the new "Customize" bar.
    • Nouveau: Add-ons can now contribute dashboard widgets through their provides.dashboard_widgets manifest entry.
    • Nouveau: Added dashboard widgets to the Blog, Newsletter, GDPR and Site Statistics add-ons.
    • Nouveau: Added the "Notifications" settings group (Admin Panel: Settings → Notifications) with a global master switch and per-type toggles.
    • Amélioré: Moved the "Transactional Emails" and "Transactional SMS" toggles from the Mail and SMS settings pages into the new Notifications settings group.
    • Amélioré: Moved the email/phone verification toggles into the Notifications settings group ("Verification" section).
    • Nouveau: Added the notification type registry (config/larapen/notification-types.php); add-ons can register their own types through their provides.notification_types manifest entry.
    • Nouveau: Added per-user notification preferences with Email, SMS and In-App channels (Account: Notifications page).
    • Nouveau: Added per-admin notification preferences (Admin Panel: My account → Notification preferences).
    • Nouveau: Added the Admin Panel notifications inbox (/admin/notifications) with all/unread/read filters, mark-as-read and delete actions.
    • Nouveau: Added the Admin Panel header bell with unread badge and dropdown, refreshed on page load or by polling.
    • Admin notifications (new user, new listing, payment received, contact form, listing report) are now also stored as in-app notifications.
    • Staff users can opt into receiving admin notifications by SMS (off by default).
    • Nouveau: Added the "Laravel Reverb (WebSocket)" refresh method option for the admin header bell (requires a self-hosted Laravel Reverb server with the Laravel Echo client; falls back to polling until they are configured).
    • Nouveau: Added the "Language Code in URLs" section to the Localization settings (Admin Panel: Settings → Localization) with the "Localized URLs", "URL Locale Format" and "Hide the default language code in URLs" options.
    • Nouveau: Added the localized front-office routes: every front URL is also reachable with a language code prefix (e.g. /fr/..., /fr_FR/...), enabled per request by the "Localized URLs" option.
    • Nouveau: Added the SetUrlLocale middleware: the URL's language code takes priority over the saved (cookie/session) language, non-localized URLs are redirected to their localized form when the option is enabled, and vice versa.
    • The language switcher now swaps the language code in the current URL (with translated category/page slugs) when the "Localized URLs" option is enabled.
    • Front-office URL generation (jobs, categories, companies, pages, search, account, etc.) now includes the current language's code when the "Localized URLs" option is enabled.
    • The "Multi-countries URLs" option (Settings → SEO) is now disabled while the "Localized URLs" option is enabled, since both features use the URLs first path segment (country code vs. language code); the Multi-Domain addon covers the multi-countries + localized URLs use case.
    • Existing installations keep the legacy (session/cookie based) language switching; the "Localized URLs" option is enabled by default on new installations only.
    • Nouveau: Added the "Email" option to the social sharing links (Admin Panel: Settings → Social Share), enabled by default: listings, pages and blog posts can now be shared through a mailto: link.
    • Shortened the header menu items labels in every language ("Browse Listings" → "Listings", "Create Listing" → "Post Listing", and a shorter wording for the "Pricing" link in the languages where it was verbose), since they were long enough to wrap the header navbar. Labels customized from the Admin Panel (Menus) are left untouched.
    • The homepage sections options (Admin Panel: Page Sections) are now saved per theme: the section's content fields and its styling fields are both stored against the theme that is active when you save.
    • Switching to another theme no longer carries over the previous theme's section options; a theme that has never been configured starts from the existing section content, so nothing changes visually until you edit it.
    • The page_section_theme_styles.styling column was renamed to data and now holds the section's whole per-theme value map; the existing options are copied into each theme's row during the update, so no configuration is lost.
    • The homepage sections cache is now keyed by the active theme, so switching themes no longer serves the other theme's sections until the cache is cleared.
    • Corrigé: Fixed the active-theme detection used by the homepage sections: it read a style_theme setting that no longer exists, so it always resolved to the theme literally named "default" and every theme shared the same section options. The active theme now comes from the Themes page; during the update, the options that were in use are copied to the theme that is currently activated, so the homepage keeps its current appearance.
    • Nouveau: New per-listing "Applications" page in the account area: every application received on a job is listed with the applicant's profile (or guest identity), application date, cover message, resume download and conversation link.
    • Recruitment pipeline: each application carries a status (New, Under review, Shortlisted, Interview, Hired, Rejected) the employer can update inline; the page can be filtered by status and shows per-status counts.
    • On every stage change, a per-status message is appended to the conversation thread in the employer's name, and the applicant is additionally notified by email unless the employer unticks the notify option in the status dropdown.
    • Nouveau: New "My applications" page in the jobseeker's account area: the jobs they applied to, with the current pipeline status, the application date and the conversation link (with a dedicated sidebar menu entry and counter).
    • Guest applications now create a conversation thread too, so they show up in the employer's applications manager; the guest's identity is stored on the thread, their resume goes to the private storage disk, and the employer's replies and status changes are relayed to the guest's email address.
    • The "My listings" page shows the number of applications received per job (with the number of new ones); the job's details page gets an "Applications" button for its author.
    • The threads table gets an indexed application_status column (default: new) plus guest_name, guest_email and guest_phone columns; existing conversation threads are treated as new applications.
    • Nouveau: Added a custom fields feature, letting you attach extra fields to listings per category.
    • Default setting values now work correctly.
    • Nouveau: Added Listing Email Address Verification and Listing Phone Verification options to verify the email address and phone number provided on each listing.
    • Nouveau: Added client-side JavaScript validation to the listing forms.
    • The "Listing Details" step is once again the first step, as in previous versions.
    • Corrigé: Fixed settings that use a password field type.
    • Footer social links can now be hidden by clearing their related option value in the Admin Panel.
    • Custom fields of the date type now accept future dates.
    • Nouveau: Added asterisks to mark mandatory fields.
    • Optional radio button groups can now be cleared after a selection.
    • Corrigé: Fixed an image upload error related to the file extension.
    • The SQL 1048 Integrity constraint violation: Column 'type' cannot be null. error when creating or editing a page is fixed.
    • Email notifications can now be rendered in right-to-left (RTL) direction.
    • Admin Panel: a new drag-and-drop reordering page is available for each list view.
    • Corrigé: Fixed the dark mode appearance.
    • Admin Panel: a new option to quickly hide the language switcher on the front-end is added.
    • Corrigé: Fixed a Select2 issue in RTL direction.
    • Minor bugs fixed.
    • Minor improvements.
    • Nouveau: Added support for Laravel 13+.
    • Admin Panel: complete redesign of the interface, dropping the previous (very outdated Laravel Backpack-based) admin panel for a modern, consistent design.
    • Admin Panel: AI and Translation API integration to automatically translate the language files.
    • "Packages" have been renamed to "Plans" throughout the application: in the Admin Panel, on the pricing pages, and on the listing submission form.
    • The out-to-date free PayPal add-on has been removed. New paid add-on is now available for only 5 USD.
    • Nouveau: New Alerts feature: visitors can save their searches and receive email notifications, at a frequency of their choice, when new matching listings are published. This replaces the previous "Saved Searches".
    • Listing submission form: the category and city selectors are now fast, searchable drop-down lists instead of pop-up windows. The company form's city selector has been updated the same way.
    • The single-step listing form has been removed; the clearer multi-step form is now the only way to post a listing.
    • Admin Panel: a dedicated "Queue" settings group has been added (previously a tab inside the Optimization page).
    • Admin Panel: the image and upload settings have been simplified, and image processing has been streamlined for better performance.
    • Admin Panel: the navigation has been reorganized; Plans, Payment Methods, Advertising, Languages and International are now top-level menus, and the settings groups have been simplified.
    • The theming system has been reworked for easier and safer template customization.
    • A new built-in update system makes applying future updates simpler and more reliable.
    • Minor bugs fixed.
    • Minor improvements.
    • Supprimé: Remove political information from the sweetalert2 package.
    • Admin Panel: Bots Blocking settings & feature added.
    • Compatibility for PHP 8.4+ is added.
    • Route & Config cache support is added.
    • Replace dynamic asset loading with loading from pre-cached static files. i.e., Switch from dynamically loading assets at runtime to using pre-cached static files for improved performance and stability.
    • Nouveau: Add-ons directory migration from extras/plugins/ to extensions/addons/.
    • Cache support added for add-ons assets files.
    • The selected front skin is now also applied to the auth pages.
    • Minor bugs fixed.
    • Minor improvements.