Panda Multi Resorts - 5.0.0 (Jul 10, 2017)
Replace the following files and execute the queries in your SQL manager to perform the updates.
NEW FEATURES/IMPROVEMENTS
Multilingual support for admin panel
/common/define.php
/common/config(-tmp).php
>> New entry ADMIN_LANG_FILE
/admin/settings.php
/admin/includes/langs/
/admin/includes/fn_list.php
/admin/includes/fn_form.php
/admin/includes/fn_module.php
/admin/modules/(all_modules)/config.xml
Graphical adjustments
/admin/index.php
/admin/css/layout.css
/admin/modules/default/list.php
/admin/modules/default/form.php
/common/css/shortcodes.css
/templates/default/css/layout.css
/templates/default/css/main.css
/templates/default/css/colors.css
/templates/default/models/hotel.php
/templates/default/models/booking.php
/templates/default/models/activity.php
/templates/default/models/home.php
/templates/default/common/header.php
/templates/default/common/page-header.php
Possibility to share hotel
/templates/default/models/hotel.php
New module Coupons
/common/db.sql
>> New table pm_coupon
-- =============== CREATION OF THE TABLE pm_coupon ============== CREATE TABLE pm_coupon( id int NOT NULL AUTO_INCREMENT, title varchar(250), code varchar(50), discount double DEFAULT 0, discount_type varchar(10), rooms text, checked int DEFAULT 0, publish_date int, unpublish_date int, PRIMARY KEY(id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
>> New column "discount" in the table pm_booking
ALTER TABLE pm_booking ADD discount FLOAT NULL DEFAULT 0 AFTER tourist_tax;
>> New entries in the table pm_text (!replace with your translation and lang ids):
INSERT INTO pm_text (id, lang, name, value) VALUES (165, 3, 'COUPON_CODE_SUCCESS', 'Congratulations! The coupon code has been successfully added.'), (165, 2, 'COUPON_CODE_SUCCESS', 'Congratulations! The coupon code has been successfully added.'), (165, 1, 'COUPON_CODE_SUCCESS', 'Félicitations ! Le code promo a été ajouté avec succès.'), (164, 3, 'DISCOUNT', 'Discount'), (164, 2, 'DISCOUNT', 'Discount'), (164, 1, 'DISCOUNT', 'Réduction'), (163, 3, 'DO_YOU_HAVE_A_COUPON', 'Do you have a coupon?'), (163, 2, 'DO_YOU_HAVE_A_COUPON', 'Do you have a coupon?'), (163, 1, 'DO_YOU_HAVE_A_COUPON', 'Avez-vous un code promo ?');
/templates/default/models/booking.php
/templates/default/models/details.php
/templates/default/models/summary.php
/templates/default/models/payment.php
/templates/default/common/paypal_notify.php
/templates/default/common/2checkout_notify.php
/templates/default/common/update_booking.php
/admin/modules/booking/coupon/
New module Email templates
/common/db.sql
>> New table pm_email_content
-- ============ CREATION OF THE TABLE pm_email_content =========== CREATE TABLE IF NOT EXISTS pm_email_content( id int NOT NULL AUTO_INCREMENT, lang int NOT NULL, name varchar(50), subject varchar(250), content text, PRIMARY KEY(id, lang) ) ENGINE=INNODB DEFAULT CHARSET=utf8; ALTER TABLE pm_email_content ADD CONSTRAINT email_content_lang_fkey FOREIGN KEY (lang) REFERENCES pm_lang(id) ON DELETE CASCADE ON UPDATE NO ACTION; -- -- Content of the table pm_email_content -- INSERT INTO pm_email_content (id, lang, name, subject, content) VALUES (1, 1, 'CONTACT', 'Contact', '<b>Nom:</b> {name}<b>Adresse:</b> {address}<b>Téléphone:</b> {phone}<b>E-mail:</b> {email}<b>Message:</b>{msg}'), (1, 2, 'CONTACT', 'Contact', '<b>Name:</b> {name}<br><b>Address:</b> {address}<br><b>Phone:</b> {phone}<br><b>E-mail:</b> {email}<br><b>Message:</b><br>{msg}'), (1, 3, 'CONTACT', 'Contact', '<b>Name:</b> {name}<b>Address:</b> {address}<b>Phone:</b> {phone}<b>E-mail:</b> {email}<b>Message:</b>{msg}'), (2, 1, 'BOOKING_REQUEST', 'Demande de réservation', '<p><b>Adresse de facturation</b><br>{firstname} {lastname}<br>{address}<br>{postcode} {city}<br>Société : {company}<br>Téléphone : {phone}<br>Mobile : {mobile}<br>Email : {email}</p><p><strong>Détails de la réservation</strong><br>Chambre : <b>{room}</b><br>Arrivée : <b>{Check_in}</b><br>Départ : <b>{Check_out}</b><br><b>{num_nights}</b> nuit(s)<br><b>{num_guests}</b> personne(s) - Adulte(s) : <b>{num_adults}</b> / Enfant(s) : <b>{num_children}</b></p><p><b>Services supplémentaires</b></p><p>{extra_services}</p><p><b>Activités</b></p><p>{activities}</p><p><b>Commentaires</b><br>{comments}</p>'), (2, 2, 'BOOKING_REQUEST', 'Booking request', '<p><b>Billing address</b><br>{firstname} {lastname}<br>{address}<br>{postcode} {city}<br>Company: {company}<br>Phone: {phone}<br>Mobile: {mobile}<br>Email: {email}</p><p><strong>Booking details</strong><br>Room : <b>{room}</b><br>Check in <b>{Check_in}</b><br>Check out <b>{Check_out}</b><br><b>{num_nights}</b> nights<br><b>{num_guests}</b> persons - Adults: <b>{num_adults}</b> / Children: <b>{num_children}</b></p><p><b>Extra services</b></p><p>{extra_services}</p><p><b>Activities</b></p><p>{activities}</p><p><b>Comments</b><br>{comments}</p>'), (2, 3, 'BOOKING_REQUEST', 'Booking request', '<p><b>Billing address</b><br>{firstname} {lastname}<br>{address}<br>{postcode} {city}<br>Company: {company}<br>Phone: {phone}<br>Mobile: {mobile}<br>Email: {email}</p><p><strong>Booking details</strong><br>Room : <b>{room}</b><br>Check in <b>{Check_in}</b><br>Check out <b>{Check_out}</b><br><b>{num_nights}</b> nights<br><b>{num_guests}</b> persons - Adults: <b>{num_adults}</b> / Children: <b>{num_children}</b></p><p><b>Extra services</b></p><p>{extra_services}</p><p><b>Activities</b></p><p>{activities}</p><p><b>Comments</b><br>{comments}</p>'), (3, 1, 'BOOKING_CONFIRMATION', 'Confirmation de réservation', '<p><b>Adresse de facturation</b><br>{firstname} {lastname}<br>{address}<br>{postcode} {city}<br>Société : {company}<br>Téléphone : {phone}<br>Mobile : {mobile}<br>Email : {email}</p><p><strong>Détails de la réservation</strong><br>Chambre : <b>{room}</b><br>Arrivée : <b>{Check_in}</b><br>Départ : <b>{Check_out}</b><br><b>{num_nights}</b> nuit(s)<br><b>{num_guests}</b> personne(s) - Adulte(s) : <b>{num_adults}</b> / Enfant(s) : <b>{num_children}</b><br>Montant : <b>{amount_rooms} TTC</b></p><p><b>Services supplémentaires</b></p><p>{extra_services}</p><p><b>Activités</b></p><p>{activities}</p><p>Taxe de séjour : {tourist_tax}<br>Réduction: {discount}<br>{taxes}<br>Total : <strong>{total} TTC</strong></p><p>Acompte : <strong>{down_payment} TTC</strong></p><p><b>Commentaires</b><br>{comments}</p><p>{payment_notice}</p>'), (3, 2, 'BOOKING_CONFIRMATION', 'Booking confirmation', '<p><b>Billing address</b><br>{firstname} {lastname}<br>{address}<br>{postcode} {city}<br>Company: {company}<br>Phone: {phone}<br>Mobile: {mobile}<br>Email: {email}</p><p><strong>Booking details</strong><br>Room : <b>{room}</b><br>Check in <b>{Check_in}</b><br>Check out <b>{Check_out}</b><br><b>{num_nights}</b> nights<br><b>{num_guests}</b> persons - Adults: <b>{num_adults}</b> / Children: <b>{num_children}</b><br>Amount: <b>{amount_rooms} incl. VAT</b></p><p><b>Extra services</b></p><p>{extra_services}</p><p><b>Activities</b></p><p>{activities}</p><p>Tourist tax: {tourist_tax}<br>Discount: {discount}<br>{taxes}<br>Total: <strong>{total} incl. VAT</strong></p><p>Down payment: <strong>{down_payment} incl. VAT</strong></p><p><b>Comments</b><br>{comments}</p><p>{payment_notice}</p>'), (3, 3, 'BOOKING_CONFIRMATION', 'Booking confirmation', '<p><b>Billing address</b><br>{firstname} {lastname}<br>{address}<br>{postcode} {city}<br>Company: {company}<br>Phone: {phone}<br>Mobile: {mobile}<br>Email: {email}</p><p><strong>Booking details</strong><br>Room : <b>{room}</b><br>Check in <b>{Check_in}</b><br>Check out <b>{Check_out}</b><br><b>{num_nights}</b> nights<br><b>{num_guests}</b> persons - Adults: <b>{num_adults}</b> / Children: <b>{num_children}</b><br>Amount: <b>{amount_rooms} incl. VAT</b></p><p><b>Extra services</b></p><p>{extra_services}</p><p><b>Activities</b></p><p>{activities}</p><p>Tourist tax: {tourist_tax}<br>Discount: {discount}<br>{taxes}<br>Total: <strong>{total} incl. VAT</strong></p><p>Down payment: <strong>{down_payment} incl. VAT</strong></p><p><b>Comments</b><br>{comments}</p><p>{payment_notice}</p>');
/common/lib.php
/admin/modules/email_content/
/templates/default/models/contact.php
/templates/default/models/details.php
/templates/default/models/payment.php
/templates/default/common/paypal_notify.php
/templates/default/common/2checkout_notify.php
FIXED ISSUES
Search error with non-alphabetic caracters (cyrillic, greek...)
/common/lib.php
Bug in error management in admin panel since PHP7
/common/setenv.php
Bug on booking details printing
/templates/default/common/booking-popup.php
Hidden fields reseted on login/sign up
/js/custom.js
/templates/default/common/header.php
Additionnal room images not displayed
/templates/default/models/booking.php
Wrong number format in price range slider
/templates/default/common/search.php