<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://help.hoteliga.com/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Milka</id>
		<title>hoteliga - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://help.hoteliga.com/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Milka"/>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php/Special:Contributions/Milka"/>
		<updated>2026-06-15T16:21:03Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.28.0</generator>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=SES.Hospedajes&amp;diff=3187</id>
		<title>SES.Hospedajes</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=SES.Hospedajes&amp;diff=3187"/>
				<updated>2024-11-28T14:23:53Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Enable SES Hospedajes Web Service */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
== '''Setting up automatic Spanish police upload (SES.Hospedajes)''' ==&lt;br /&gt;
&lt;br /&gt;
As with the new law changes of obligatory data sending to the Spanish police hoteliga has made the needed changes accordingly, so the customers will be able to accomplish this.&lt;br /&gt;
In order to be able to use the automatic upload of the data sending to the Spanish police, customers will need to set up some settings and add credentials. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Enable SES Hospedajes Web Service ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In order to connect hoteliga to your SES.Hospedajes platform you need to enable the &amp;quot;web service&amp;quot; option for your account. &lt;br /&gt;
&lt;br /&gt;
To enable the web services&lt;br /&gt;
&lt;br /&gt;
1. Visit the SES Hospedajes page.&lt;br /&gt;
&lt;br /&gt;
If it's the first time you create an account for SES Hospedajes, you will have to complete the account creation setup in the same [https://sede.mir.gob.es/opencms/export/sites/default/es/procedimientos-y-servicios/hospedajes-y-alquiler-de-vehiculos/ SES.Hospedajes].&lt;br /&gt;
&lt;br /&gt;
2. In the table look for &amp;quot;Acceso al registro de establecimiento y entidades&amp;quot; and click in the &amp;quot;@&amp;quot; button in the &amp;quot;Acceso&amp;quot; column.&lt;br /&gt;
&lt;br /&gt;
[[File:registro de establecimientos y propiedades.png|850px]]&lt;br /&gt;
&lt;br /&gt;
3. Search for the &amp;quot;Mis datos registrados&amp;quot; and click in the button.&lt;br /&gt;
&lt;br /&gt;
[[File:mis datos registrados.png|850px]]&lt;br /&gt;
&lt;br /&gt;
4. Here's you'll see your account data, find the checkbox ad the end of the form for &amp;quot;send communications via web service&amp;quot;&lt;br /&gt;
&lt;br /&gt;
5. Check this box and save the changes. &lt;br /&gt;
&lt;br /&gt;
[[File:click servicio web.png|850px]]&lt;br /&gt;
 &lt;br /&gt;
After saving, you will receive and email from &amp;quot;no-reply@hospedajes.mir.es&amp;quot;  with the credentials required to connect hoteliga with your SES.Hospedajes account.&lt;br /&gt;
&lt;br /&gt;
[[File:credenciales servicio web.png|850px]]&lt;br /&gt;
&lt;br /&gt;
The information highlighted in yellow it's the data you need to add in hoteliga in order to establish the connection:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Código de arrendador&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Código de establecimiento&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Usuario&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&amp;quot;Contraseña&amp;quot;&lt;br /&gt;
&lt;br /&gt;
'''''Note:''' This user and password generated by the SES Hospedajes system helps to make the connection with hoteliga and it's different from your user and password used for the login in the SES system.''&lt;br /&gt;
&lt;br /&gt;
== Connect your SES account in hoteliga ==&lt;br /&gt;
&lt;br /&gt;
Once you have created your SES Hospedajes account and activated the web service, you are ready to make the connection in Chekin. To connect you account:&lt;br /&gt;
&lt;br /&gt;
First the following setting “Enable automatic data upload to Spanish police (SES.Hospedajes)” found under '''Option =&amp;gt; Settings =&amp;gt; Reservation Options''', needs to be enabled.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[File:Enable SES_Hospedajes.png|850px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After this under '''Options=&amp;gt; Tools''' customers will be able to see the new sub menu '''“Spanish police”''' where the property data and mappings need to be set.&lt;br /&gt;
&lt;br /&gt;
[[File:Tools_Spanish_Police_SES_Hospedajes.png|850px]]&lt;br /&gt;
&lt;br /&gt;
Under properties the customer needs to add the property and company data.&lt;br /&gt;
&lt;br /&gt;
[[File:New Property.png|850px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After that mappings need to be set for each room depending if the rooms are under the same or different property.  When clicking one of the room in the mapping grid the following window opens and the customer can select the account that he set before by the dropdown under friendly name. If the customer has one property he/she can select the property and select update all rooms so all rooms will be mapped with this value, otherwise if there are different properties customers can also map rooms separately one by one.  &lt;br /&gt;
&lt;br /&gt;
[[File:Spanish Police Mappings - hoteliga.png|850px]]&lt;br /&gt;
&lt;br /&gt;
[[File:ses mapping.png|850px]]&lt;br /&gt;
&lt;br /&gt;
With the steps above the customer has prepared the configuration needed for the upload and the reservation data will be sent to the police on reservation creation. &lt;br /&gt;
For the guests data, the customer can see additional data that he needs to add when registering guests under reservation. After adding the guests, customers can click the send data to police button which will send the data to Spanish police and customers will get notification later if there have been any errors with the data sent or if it has been sent successfully.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3141</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3141"/>
				<updated>2024-04-18T12:26:04Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* If You Already Have SPF Records */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have DMARC Records==&lt;br /&gt;
If you have already some DMARC settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
the '''p''' property can have value of 'none', 'quarantine', or 'reject'. If the value is set to quarantine the mails that don't have DMARC setup will go to spam mails and if it is set to reject emails without DMARC set, won't be received and rejected. So the best is to set the value to none so all emails will proceed with sending. &lt;br /&gt;
&lt;br /&gt;
Additional way that the DMARC record can look is &lt;br /&gt;
&amp;lt;pre&amp;gt;v=DMARC1; p=quarantine; adkim=s; aspf=s&amp;lt;/pre&amp;gt; &lt;br /&gt;
The '''adkim''' indicates whether strict or relaxed DKIM Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
The '''aspf''' indicates whether strict or relaxed SPF Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
From our side we suggest both of this properties adkim and aspf to be set with values 'r' that means relaxed mode.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address or  to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=spf1 include:amazonses.com ~all&amp;quot;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''include:amazonses.com''' Allows your own domain as the MAIL FROM domain when sending using amazon the server&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=spf1 ip4:188.164.201.250 include:_spf.google.com include:amazonses.com ~all&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in the case amazon missing from the record to add:&lt;br /&gt;
&amp;lt;pre&amp;gt;include:amazonses.com&amp;lt;/pre&amp;gt;&lt;br /&gt;
before ~all like in the example above.&lt;br /&gt;
By adding this, you 're essentially approving the Amazon server to send emails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3140</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3140"/>
				<updated>2024-04-18T12:25:43Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* If You Already Have SPF Records */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have DMARC Records==&lt;br /&gt;
If you have already some DMARC settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
the '''p''' property can have value of 'none', 'quarantine', or 'reject'. If the value is set to quarantine the mails that don't have DMARC setup will go to spam mails and if it is set to reject emails without DMARC set, won't be received and rejected. So the best is to set the value to none so all emails will proceed with sending. &lt;br /&gt;
&lt;br /&gt;
Additional way that the DMARC record can look is &lt;br /&gt;
&amp;lt;pre&amp;gt;v=DMARC1; p=quarantine; adkim=s; aspf=s&amp;lt;/pre&amp;gt; &lt;br /&gt;
The '''adkim''' indicates whether strict or relaxed DKIM Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
The '''aspf''' indicates whether strict or relaxed SPF Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
From our side we suggest both of this properties adkim and aspf to be set with values 'r' that means relaxed mode.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address or  to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=spf1 include:amazonses.com ~all&amp;quot;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''include:amazonses.com''' Allows your own domain as the MAIL FROM domain when sending using amazon the server&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=spf1 ip4:188.164.201.250 include:_spf.google.com include:amazonses.com ~all&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in the case amazon missing from the record to add:&lt;br /&gt;
&amp;lt;pre&amp;gt;include:amazonses.com&amp;lt;/pre&amp;gt;&lt;br /&gt;
before ~all like in the example above.&lt;br /&gt;
By adding this, you 're essentially approving the Amazon server to send emails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3139</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3139"/>
				<updated>2024-04-18T12:22:30Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* If You Don't Have SPF Records At All */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have DMARC Records==&lt;br /&gt;
If you have already some DMARC settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
the '''p''' property can have value of 'none', 'quarantine', or 'reject'. If the value is set to quarantine the mails that don't have DMARC setup will go to spam mails and if it is set to reject emails without DMARC set, won't be received and rejected. So the best is to set the value to none so all emails will proceed with sending. &lt;br /&gt;
&lt;br /&gt;
Additional way that the DMARC record can look is &lt;br /&gt;
&amp;lt;pre&amp;gt;v=DMARC1; p=quarantine; adkim=s; aspf=s&amp;lt;/pre&amp;gt; &lt;br /&gt;
The '''adkim''' indicates whether strict or relaxed DKIM Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
The '''aspf''' indicates whether strict or relaxed SPF Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
From our side we suggest both of this properties adkim and aspf to be set with values 'r' that means relaxed mode.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address or  to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=spf1 include:amazonses.com ~all&amp;quot;&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''include:amazonses.com''' Allows your own domain as the MAIL FROM domain when sending using amazon the server&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3138</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3138"/>
				<updated>2024-04-18T12:10:53Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* If You Already Have DMARC Records */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have DMARC Records==&lt;br /&gt;
If you have already some DMARC settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
the '''p''' property can have value of 'none', 'quarantine', or 'reject'. If the value is set to quarantine the mails that don't have DMARC setup will go to spam mails and if it is set to reject emails without DMARC set, won't be received and rejected. So the best is to set the value to none so all emails will proceed with sending. &lt;br /&gt;
&lt;br /&gt;
Additional way that the DMARC record can look is &lt;br /&gt;
&amp;lt;pre&amp;gt;v=DMARC1; p=quarantine; adkim=s; aspf=s&amp;lt;/pre&amp;gt; &lt;br /&gt;
The '''adkim''' indicates whether strict or relaxed DKIM Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
The '''aspf''' indicates whether strict or relaxed SPF Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
From our side we suggest both of this properties adkim and aspf to be set with values 'r' that means relaxed mode.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3137</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3137"/>
				<updated>2024-04-18T12:10:35Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* If You Already Have DMARC Records */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have DMARC Records==&lt;br /&gt;
If you have already some DMARC settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
the '''p''' property can have value of 'none', 'quarantine', or 'reject'. If the value is set to quarantine the mails that don't have DMARC setup will go to spam mails and if it is set to reject emails without DMARC set, won't be received and rejected. So the best is to set the value to none so all emails will proceed with sending. &lt;br /&gt;
&lt;br /&gt;
Additional way that the DMARC record can look is &lt;br /&gt;
&amp;lt;pre&amp;gt;v=DMARC1; p=quarantine; adkim=s; aspf=s&amp;lt;/pre&amp;gt; &lt;br /&gt;
The '''adkim''' indicates whether strict or relaxed DKIM Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
The '''aspf''' indicates whether strict or relaxed SPF Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
From our side we suggest both of this properties adkim and aspf to be set with values 'r' that means relaxed mode.&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3136</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3136"/>
				<updated>2024-04-18T12:10:20Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* If You Already Have DMARC Records */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have DMARC Records==&lt;br /&gt;
If you have already some DMARC settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
the '''p''' property can have value of 'none', 'quarantine', or 'reject'. If the value is set to quarantine the mails that don't have DMARC setup will go to spam mails and if it is set to reject emails without DMARC set, won't be received and rejected. So the best is to set the value to none so all emails will proceed with sending. &lt;br /&gt;
&lt;br /&gt;
Additional way that the DMARC record can look is &lt;br /&gt;
&amp;lt;pre&amp;gt;v=DMARC1; p=quarantine; adkim=s; aspf=s&amp;lt;/pre&amp;gt; &lt;br /&gt;
The '''adkim''' indicates whether strict or relaxed DKIM Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
&lt;br /&gt;
The '''aspf''' indicates whether strict or relaxed SPF Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
From our side we suggest both of this properties adkim and aspf to be set with values 'r' that means relaxed mode.&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3135</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3135"/>
				<updated>2024-04-18T12:09:40Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* If You Already Have DMARC Records */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have DMARC Records==&lt;br /&gt;
If you have already some DMARC settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
the '''p''' property can have value of 'none', 'quarantine', or 'reject'. If the value is set to quarantine the mails that don't have DMARC setup will go to spam mails and if it is set to reject emails without DMARC set, won't be received and rejected. So the best is to set the value to none so all emails will proceed with sending. &lt;br /&gt;
&lt;br /&gt;
Additional way that the DMARC record can look is &lt;br /&gt;
&amp;lt;pre&amp;gt;v=DMARC1; p=quarantine; adkim=s; aspf=s&amp;lt;/pre&amp;gt; &lt;br /&gt;
The '''adkim''' indicates whether strict or relaxed DKIM Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
The '''aspf'' indicates whether strict or relaxed SPF Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
From our side we suggest both of this properties adkim and aspf to be set with values 'r' that means relaxed mode.&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3134</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3134"/>
				<updated>2024-04-18T12:08:18Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding DMARC Records to Your Internet Domain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have DMARC Records==&lt;br /&gt;
If you have already some DMARC settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
the '''p''' value can have value of 'none', 'quarantine', or 'reject'. If the value is set to quarantine the mails that don't have DMARC setup will go to spam mails and if it is set to reject emails without DMARC set, won't be received and rejected. So the best is to set the value to none so all emails will proceed with sending. &lt;br /&gt;
&lt;br /&gt;
Additional way that the DMARC record can look is &lt;br /&gt;
&amp;lt;pre&amp;gt;v=DMARC1; p=quarantine; adkim=s; aspf=s&amp;lt;/pre&amp;gt; &lt;br /&gt;
The '''adkim''' indicates whether strict or relaxed DKIM Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
The '''aspf'' indicates whether strict or relaxed SPF Identifier Alignment mode is required by the Domain Owner. Valid values can be 'r' (relaxed) or 's' (strict mode).&lt;br /&gt;
From our side we suggest both of this properties adkim and aspf to be set with values 'r' that means relaxed mode.&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3133</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3133"/>
				<updated>2024-04-18T12:00:12Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding DMARC Records to Your Internet Domain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Already Have DMARC Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3132</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3132"/>
				<updated>2024-04-18T11:58:43Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding DMARC Records to Your Internet Domain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have DMARC Records At All==&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3131</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3131"/>
				<updated>2024-04-18T11:57:16Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding DMARC Records to Your Internet Domain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3130</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3130"/>
				<updated>2024-04-18T11:57:01Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding DMARC Records to Your Internet Domain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of &amp;lt;pre&amp;gt;&amp;quot;v=DMARC1; p=none;&amp;lt;/pre&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3129</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3129"/>
				<updated>2024-04-18T11:56:01Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding DMARC Records to Your Internet Domain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of '''_dmarc.yourdomain.com''' and a value of '''&amp;quot;v=DMARC1; p=none;&amp;quot;'''.&lt;br /&gt;
&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3128</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3128"/>
				<updated>2024-04-18T11:54:57Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding DMARC Records to Your Internet Domain */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com), create and save a TXT record with a name of _dmarc.yourdomain.com and a value of &amp;quot;v=DMARC1; p=none;&amp;quot;.&lt;br /&gt;
Replace yourdomain.com with the domain you're setting up. Some domain hosts automatically add yourdomain.com after the initial value—contact your domain provider for any specifics.&lt;br /&gt;
&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3127</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS_with_the_new_DMARC_and_DKIM_setup&amp;diff=3127"/>
				<updated>2024-03-04T11:41:58Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: Created page with &amp;quot;=Introduction= The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.  Those e-mails are...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com).&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3126</id>
		<title>PMS</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3126"/>
				<updated>2024-03-04T11:40:26Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PMS stands for Property Management System&lt;br /&gt;
&lt;br /&gt;
== Main Functionality ==&lt;br /&gt;
hoteliga PMS has the following features:&lt;br /&gt;
&lt;br /&gt;
'''Reservations Management''' &lt;br /&gt;
:*[[The Dashboard (Home Page)|dashboard]] &lt;br /&gt;
:*[[The Reservations Calendar|reservations calendar]]&lt;br /&gt;
:*[[The Reservations Table|reservations table]] &lt;br /&gt;
:*[[The Room Layout|room layout]]&lt;br /&gt;
'''[[Customer Management]]''' &lt;br /&gt;
:*[[customer reservation history|customer reservation history]]&lt;br /&gt;
:*[[transactions|Transactions]]&lt;br /&gt;
:*[[customer categorization|Customer Categorization]]&lt;br /&gt;
'''Guest Management''' &lt;br /&gt;
:*[[Guest details|Guest details]]&lt;br /&gt;
:*[[Guest reports|Guest reports]]&lt;br /&gt;
'''Agencies Management''' &lt;br /&gt;
:*[[Contracts]]&lt;br /&gt;
:*[[Agencies_Management#Transactions|transactions]]&lt;br /&gt;
:*[[Agencies_Management#Balances|balances]]&lt;br /&gt;
:*[[Booking agency Setup|Booking agency]]&lt;br /&gt;
'''[[Housekeeping]]''' &lt;br /&gt;
:*plans&lt;br /&gt;
:*tasks&lt;br /&gt;
:*mobile app&lt;br /&gt;
'''[[Invoicing]]''' &lt;br /&gt;
:*taxes&lt;br /&gt;
:*counters&lt;br /&gt;
:*[[templates]]&lt;br /&gt;
:*[[reports]]&lt;br /&gt;
:*[[QR code myData]]&lt;br /&gt;
'''[[Room Maintenance]]''' &lt;br /&gt;
&lt;br /&gt;
'''[[Export Data for the Authorities]]''' &lt;br /&gt;
:*police and statistics authorities&lt;br /&gt;
'''[[Automation]]''' &lt;br /&gt;
:*automated emails&lt;br /&gt;
&lt;br /&gt;
== Key Characteristics ==&lt;br /&gt;
* Highly localizable (languages, currencies, taxation)&lt;br /&gt;
* Multiple [[Contracts|contracts]]&lt;br /&gt;
* [[Price Lists|Price lists]] season-based or day-by-day&lt;br /&gt;
* [[Users|User management]]&lt;br /&gt;
* Dynamic [[Templates|templates]]&lt;br /&gt;
* Many general and detailed [[Reports|reports]]&lt;br /&gt;
* Optional integrated direct connections with OTAs ([[Channel Manager|hoteliga channel manager]]) or third-party channel managers&lt;br /&gt;
* Optional integration with [[Booking Engine|hoteliga booking engine]]&lt;br /&gt;
* [[API]] available for custom applications&lt;br /&gt;
* [[Connected Rooms]]&lt;br /&gt;
&lt;br /&gt;
== The User Interface ==&lt;br /&gt;
* [[The Dashboard (Home Page)]]&lt;br /&gt;
* [[The Reservations Calendar]]&lt;br /&gt;
* [[The Reservation Window]]&lt;br /&gt;
* [[The Room Layout]]&lt;br /&gt;
* [[Other Settings]]&lt;br /&gt;
&lt;br /&gt;
== Key Concepts ==&lt;br /&gt;
* Simplified Look, Easy to Understand&lt;br /&gt;
* [[The Normal and the Agreed Price|Normal price and agreed price]]&lt;br /&gt;
* Overbooking allowed (and highlighted)&lt;br /&gt;
* Room capacity on room level, not on room-type level&lt;br /&gt;
* No night audits&lt;br /&gt;
* Similar user experience in desktop and mobile&lt;br /&gt;
&lt;br /&gt;
== HOW-TO's ==&lt;br /&gt;
* How to [[Property Setup|setup your property]]&lt;br /&gt;
* How to [[Room Setup|set room types, room groups and rooms]]&lt;br /&gt;
* How to [[Special prices Setup|set special prices]]&lt;br /&gt;
* How to [[Booking agency Setup|create a booking agency]]&lt;br /&gt;
* How to [[Housekeeping Setup|set rules for housekeeping]]&lt;br /&gt;
* How to [[Extra charges|add extra charges]]&lt;br /&gt;
* How to [[Change Board name|change board name]]&lt;br /&gt;
* How to [[Create New Users|create new users]]&lt;br /&gt;
* How to [[Create Vouchers|create new vouchers]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS with the new DMARC and DKIM setup|ensure delivery of e-mails sent through the PMS with the new DMARC and DKIM setup]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|ensure delivery of e-mails sent through the PMS]]&lt;br /&gt;
&lt;br /&gt;
== Integrations ==&lt;br /&gt;
* '''[[Chekin]]'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3125</id>
		<title>PMS</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3125"/>
				<updated>2024-03-04T11:39:38Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PMS stands for Property Management System&lt;br /&gt;
&lt;br /&gt;
== Main Functionality ==&lt;br /&gt;
hoteliga PMS has the following features:&lt;br /&gt;
&lt;br /&gt;
'''Reservations Management''' &lt;br /&gt;
:*[[The Dashboard (Home Page)|dashboard]] &lt;br /&gt;
:*[[The Reservations Calendar|reservations calendar]]&lt;br /&gt;
:*[[The Reservations Table|reservations table]] &lt;br /&gt;
:*[[The Room Layout|room layout]]&lt;br /&gt;
'''[[Customer Management]]''' &lt;br /&gt;
:*[[customer reservation history|customer reservation history]]&lt;br /&gt;
:*[[transactions|Transactions]]&lt;br /&gt;
:*[[customer categorization|Customer Categorization]]&lt;br /&gt;
'''Guest Management''' &lt;br /&gt;
:*[[Guest details|Guest details]]&lt;br /&gt;
:*[[Guest reports|Guest reports]]&lt;br /&gt;
'''Agencies Management''' &lt;br /&gt;
:*[[Contracts]]&lt;br /&gt;
:*[[Agencies_Management#Transactions|transactions]]&lt;br /&gt;
:*[[Agencies_Management#Balances|balances]]&lt;br /&gt;
:*[[Booking agency Setup|Booking agency]]&lt;br /&gt;
'''[[Housekeeping]]''' &lt;br /&gt;
:*plans&lt;br /&gt;
:*tasks&lt;br /&gt;
:*mobile app&lt;br /&gt;
'''[[Invoicing]]''' &lt;br /&gt;
:*taxes&lt;br /&gt;
:*counters&lt;br /&gt;
:*[[templates]]&lt;br /&gt;
:*[[reports]]&lt;br /&gt;
:*[[QR code myData]]&lt;br /&gt;
'''[[Room Maintenance]]''' &lt;br /&gt;
&lt;br /&gt;
'''[[Export Data for the Authorities]]''' &lt;br /&gt;
:*police and statistics authorities&lt;br /&gt;
'''[[Automation]]''' &lt;br /&gt;
:*automated emails&lt;br /&gt;
&lt;br /&gt;
== Key Characteristics ==&lt;br /&gt;
* Highly localizable (languages, currencies, taxation)&lt;br /&gt;
* Multiple [[Contracts|contracts]]&lt;br /&gt;
* [[Price Lists|Price lists]] season-based or day-by-day&lt;br /&gt;
* [[Users|User management]]&lt;br /&gt;
* Dynamic [[Templates|templates]]&lt;br /&gt;
* Many general and detailed [[Reports|reports]]&lt;br /&gt;
* Optional integrated direct connections with OTAs ([[Channel Manager|hoteliga channel manager]]) or third-party channel managers&lt;br /&gt;
* Optional integration with [[Booking Engine|hoteliga booking engine]]&lt;br /&gt;
* [[API]] available for custom applications&lt;br /&gt;
* [[Connected Rooms]]&lt;br /&gt;
&lt;br /&gt;
== The User Interface ==&lt;br /&gt;
* [[The Dashboard (Home Page)]]&lt;br /&gt;
* [[The Reservations Calendar]]&lt;br /&gt;
* [[The Reservation Window]]&lt;br /&gt;
* [[The Room Layout]]&lt;br /&gt;
* [[Other Settings]]&lt;br /&gt;
&lt;br /&gt;
== Key Concepts ==&lt;br /&gt;
* Simplified Look, Easy to Understand&lt;br /&gt;
* [[The Normal and the Agreed Price|Normal price and agreed price]]&lt;br /&gt;
* Overbooking allowed (and highlighted)&lt;br /&gt;
* Room capacity on room level, not on room-type level&lt;br /&gt;
* No night audits&lt;br /&gt;
* Similar user experience in desktop and mobile&lt;br /&gt;
&lt;br /&gt;
== HOW-TO's ==&lt;br /&gt;
* How to [[Property Setup|setup your property]]&lt;br /&gt;
* How to [[Room Setup|set room types, room groups and rooms]]&lt;br /&gt;
* How to [[Special prices Setup|set special prices]]&lt;br /&gt;
* How to [[Booking agency Setup|create a booking agency]]&lt;br /&gt;
* How to [[Housekeeping Setup|set rules for housekeeping]]&lt;br /&gt;
* How to [[Extra charges|add extra charges]]&lt;br /&gt;
* How to [[Change Board name|change board name]]&lt;br /&gt;
* How to [[Create New Users|create new users]]&lt;br /&gt;
* How to [[Create Vouchers|create new vouchers]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|ensure delivery of e-mails sent through the PMS with the new DMARC and DKIM setup]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|ensure delivery of e-mails sent through the PMS]]&lt;br /&gt;
&lt;br /&gt;
== Integrations ==&lt;br /&gt;
* '''[[Chekin]]'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3124</id>
		<title>PMS</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3124"/>
				<updated>2024-03-04T11:39:10Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PMS stands for Property Management System&lt;br /&gt;
&lt;br /&gt;
== Main Functionality ==&lt;br /&gt;
hoteliga PMS has the following features:&lt;br /&gt;
&lt;br /&gt;
'''Reservations Management''' &lt;br /&gt;
:*[[The Dashboard (Home Page)|dashboard]] &lt;br /&gt;
:*[[The Reservations Calendar|reservations calendar]]&lt;br /&gt;
:*[[The Reservations Table|reservations table]] &lt;br /&gt;
:*[[The Room Layout|room layout]]&lt;br /&gt;
'''[[Customer Management]]''' &lt;br /&gt;
:*[[customer reservation history|customer reservation history]]&lt;br /&gt;
:*[[transactions|Transactions]]&lt;br /&gt;
:*[[customer categorization|Customer Categorization]]&lt;br /&gt;
'''Guest Management''' &lt;br /&gt;
:*[[Guest details|Guest details]]&lt;br /&gt;
:*[[Guest reports|Guest reports]]&lt;br /&gt;
'''Agencies Management''' &lt;br /&gt;
:*[[Contracts]]&lt;br /&gt;
:*[[Agencies_Management#Transactions|transactions]]&lt;br /&gt;
:*[[Agencies_Management#Balances|balances]]&lt;br /&gt;
:*[[Booking agency Setup|Booking agency]]&lt;br /&gt;
'''[[Housekeeping]]''' &lt;br /&gt;
:*plans&lt;br /&gt;
:*tasks&lt;br /&gt;
:*mobile app&lt;br /&gt;
'''[[Invoicing]]''' &lt;br /&gt;
:*taxes&lt;br /&gt;
:*counters&lt;br /&gt;
:*[[templates]]&lt;br /&gt;
:*[[reports]]&lt;br /&gt;
:*[[QR code myData]]&lt;br /&gt;
'''[[Room Maintenance]]''' &lt;br /&gt;
&lt;br /&gt;
'''[[Export Data for the Authorities]]''' &lt;br /&gt;
:*police and statistics authorities&lt;br /&gt;
'''[[Automation]]''' &lt;br /&gt;
:*automated emails&lt;br /&gt;
&lt;br /&gt;
== Key Characteristics ==&lt;br /&gt;
* Highly localizable (languages, currencies, taxation)&lt;br /&gt;
* Multiple [[Contracts|contracts]]&lt;br /&gt;
* [[Price Lists|Price lists]] season-based or day-by-day&lt;br /&gt;
* [[Users|User management]]&lt;br /&gt;
* Dynamic [[Templates|templates]]&lt;br /&gt;
* Many general and detailed [[Reports|reports]]&lt;br /&gt;
* Optional integrated direct connections with OTAs ([[Channel Manager|hoteliga channel manager]]) or third-party channel managers&lt;br /&gt;
* Optional integration with [[Booking Engine|hoteliga booking engine]]&lt;br /&gt;
* [[API]] available for custom applications&lt;br /&gt;
* [[Connected Rooms]]&lt;br /&gt;
&lt;br /&gt;
== The User Interface ==&lt;br /&gt;
* [[The Dashboard (Home Page)]]&lt;br /&gt;
* [[The Reservations Calendar]]&lt;br /&gt;
* [[The Reservation Window]]&lt;br /&gt;
* [[The Room Layout]]&lt;br /&gt;
* [[Other Settings]]&lt;br /&gt;
&lt;br /&gt;
== Key Concepts ==&lt;br /&gt;
* Simplified Look, Easy to Understand&lt;br /&gt;
* [[The Normal and the Agreed Price|Normal price and agreed price]]&lt;br /&gt;
* Overbooking allowed (and highlighted)&lt;br /&gt;
* Room capacity on room level, not on room-type level&lt;br /&gt;
* No night audits&lt;br /&gt;
* Similar user experience in desktop and mobile&lt;br /&gt;
&lt;br /&gt;
== HOW-TO's ==&lt;br /&gt;
* How to [[Property Setup|setup your property]]&lt;br /&gt;
* How to [[Room Setup|set room types, room groups and rooms]]&lt;br /&gt;
* How to [[Special prices Setup|set special prices]]&lt;br /&gt;
* How to [[Booking agency Setup|create a booking agency]]&lt;br /&gt;
* How to [[Housekeeping Setup|set rules for housekeeping]]&lt;br /&gt;
* How to [[Extra charges|add extra charges]]&lt;br /&gt;
* How to [[Change Board name|change board name]]&lt;br /&gt;
* How to [[Create New Users|create new users]]&lt;br /&gt;
* How to [[Create Vouchers|create new vouchers]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS  with the new DMARC and DKIM setup|ensure delivery of e-mails sent through the PMS with the new DMARC and DKIM setup]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|ensure delivery of e-mails sent through the PMS]]&lt;br /&gt;
&lt;br /&gt;
== Integrations ==&lt;br /&gt;
* '''[[Chekin]]'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3123</id>
		<title>PMS</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3123"/>
				<updated>2024-03-04T11:38:36Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PMS stands for Property Management System&lt;br /&gt;
&lt;br /&gt;
== Main Functionality ==&lt;br /&gt;
hoteliga PMS has the following features:&lt;br /&gt;
&lt;br /&gt;
'''Reservations Management''' &lt;br /&gt;
:*[[The Dashboard (Home Page)|dashboard]] &lt;br /&gt;
:*[[The Reservations Calendar|reservations calendar]]&lt;br /&gt;
:*[[The Reservations Table|reservations table]] &lt;br /&gt;
:*[[The Room Layout|room layout]]&lt;br /&gt;
'''[[Customer Management]]''' &lt;br /&gt;
:*[[customer reservation history|customer reservation history]]&lt;br /&gt;
:*[[transactions|Transactions]]&lt;br /&gt;
:*[[customer categorization|Customer Categorization]]&lt;br /&gt;
'''Guest Management''' &lt;br /&gt;
:*[[Guest details|Guest details]]&lt;br /&gt;
:*[[Guest reports|Guest reports]]&lt;br /&gt;
'''Agencies Management''' &lt;br /&gt;
:*[[Contracts]]&lt;br /&gt;
:*[[Agencies_Management#Transactions|transactions]]&lt;br /&gt;
:*[[Agencies_Management#Balances|balances]]&lt;br /&gt;
:*[[Booking agency Setup|Booking agency]]&lt;br /&gt;
'''[[Housekeeping]]''' &lt;br /&gt;
:*plans&lt;br /&gt;
:*tasks&lt;br /&gt;
:*mobile app&lt;br /&gt;
'''[[Invoicing]]''' &lt;br /&gt;
:*taxes&lt;br /&gt;
:*counters&lt;br /&gt;
:*[[templates]]&lt;br /&gt;
:*[[reports]]&lt;br /&gt;
:*[[QR code myData]]&lt;br /&gt;
'''[[Room Maintenance]]''' &lt;br /&gt;
&lt;br /&gt;
'''[[Export Data for the Authorities]]''' &lt;br /&gt;
:*police and statistics authorities&lt;br /&gt;
'''[[Automation]]''' &lt;br /&gt;
:*automated emails&lt;br /&gt;
&lt;br /&gt;
== Key Characteristics ==&lt;br /&gt;
* Highly localizable (languages, currencies, taxation)&lt;br /&gt;
* Multiple [[Contracts|contracts]]&lt;br /&gt;
* [[Price Lists|Price lists]] season-based or day-by-day&lt;br /&gt;
* [[Users|User management]]&lt;br /&gt;
* Dynamic [[Templates|templates]]&lt;br /&gt;
* Many general and detailed [[Reports|reports]]&lt;br /&gt;
* Optional integrated direct connections with OTAs ([[Channel Manager|hoteliga channel manager]]) or third-party channel managers&lt;br /&gt;
* Optional integration with [[Booking Engine|hoteliga booking engine]]&lt;br /&gt;
* [[API]] available for custom applications&lt;br /&gt;
* [[Connected Rooms]]&lt;br /&gt;
&lt;br /&gt;
== The User Interface ==&lt;br /&gt;
* [[The Dashboard (Home Page)]]&lt;br /&gt;
* [[The Reservations Calendar]]&lt;br /&gt;
* [[The Reservation Window]]&lt;br /&gt;
* [[The Room Layout]]&lt;br /&gt;
* [[Other Settings]]&lt;br /&gt;
&lt;br /&gt;
== Key Concepts ==&lt;br /&gt;
* Simplified Look, Easy to Understand&lt;br /&gt;
* [[The Normal and the Agreed Price|Normal price and agreed price]]&lt;br /&gt;
* Overbooking allowed (and highlighted)&lt;br /&gt;
* Room capacity on room level, not on room-type level&lt;br /&gt;
* No night audits&lt;br /&gt;
* Similar user experience in desktop and mobile&lt;br /&gt;
&lt;br /&gt;
== HOW-TO's ==&lt;br /&gt;
* How to [[Property Setup|setup your property]]&lt;br /&gt;
* How to [[Room Setup|set room types, room groups and rooms]]&lt;br /&gt;
* How to [[Special prices Setup|set special prices]]&lt;br /&gt;
* How to [[Booking agency Setup|create a booking agency]]&lt;br /&gt;
* How to [[Housekeeping Setup|set rules for housekeeping]]&lt;br /&gt;
* How to [[Extra charges|add extra charges]]&lt;br /&gt;
* How to [[Change Board name|change board name]]&lt;br /&gt;
* How to [[Create New Users|create new users]]&lt;br /&gt;
* How to [[Create Vouchers|create new vouchers]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|ensure delivery of e-mails sent through the PMS with the new DMARC and DKIM setup]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|ensure delivery of e-mails sent through the PMS]]&lt;br /&gt;
&lt;br /&gt;
== Integrations ==&lt;br /&gt;
* '''[[Chekin]]'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS&amp;diff=3122</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS&amp;diff=3122"/>
				<updated>2024-03-04T11:37:04Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding DMARC Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com).&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS&amp;diff=3121</id>
		<title>How to Ensure Delivery of E-mails Sent Through the PMS</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Ensure_Delivery_of_E-mails_Sent_Through_the_PMS&amp;diff=3121"/>
				<updated>2024-03-04T11:36:32Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The hoteliga PMS has a template system where the user can prepare and send from inside a reservation various preset and personalized e-mails.&lt;br /&gt;
&lt;br /&gt;
Those e-mails are sent with the sender being the e-mail that is defined in the basic settings of the property (Settings⇒Basic data) and are sent through Amazon mail server.&lt;br /&gt;
&lt;br /&gt;
If you have also the hoteliga booking engine, the reservation confirmation e-mails are also sent through the same Amazon server.&lt;br /&gt;
&lt;br /&gt;
Recently Google and Yahoo announced new sending requirements that will go into effect in February 2024, which should be applied also to mails sent trough the Amazon server. While these changes will require you to take a few new steps, enacting these measures will help improve deliverability and fix the issues with mails not sent or sent to spam.&lt;br /&gt;
&lt;br /&gt;
This can be done by adjusting your domain's DNS settings. For example, if your internet domain is hotel.com, then you or your technical contact need to access the control panel of your hosting provider and go to the DNS section of hotel.com and do some adjustments.&lt;br /&gt;
&lt;br /&gt;
'''Note:''' If your sender e-mail is not based on your own domain (e.g. info@hotel.com) but is a Gmail, Yahoo!, Hotmail or similar account, then you won't be able to do these adjustments and most probably e-mails sent through hoteliga won't be delivered at all or will enter the spam folder of the recipient.&lt;br /&gt;
&lt;br /&gt;
The technical term for allowing hoteliga's e-mail server to send emails on your behalf is called '''Sender Policy Framework (SPF)'''.&lt;br /&gt;
&lt;br /&gt;
=Adding SPF Records to Your Internet Domain=&lt;br /&gt;
Log in to the control panel of your hosting provider. '''Note:''' The hoteliga support team is not authorized to assist you with logging in to your internet domain control panel. If you are not sure how to do this, please contact your technical IT contact.&lt;br /&gt;
&lt;br /&gt;
After successful log in, go to the DNS settings of your internet domain (e.g. hotel.com).&lt;br /&gt;
==If You Don't Have SPF Records At All==&lt;br /&gt;
In that case, all you need to do is to add a new record of type TXT after all the other records you already have (e.g. of type A, CNAME etc.). That TXT record is actually a specially formatted line that actually says &amp;quot;allow this IP address to be the sender of e-mails on behalf of me&amp;quot;. The content of the TXT record should be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:40.113.112.27 ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
This command consists of the following parts:&lt;br /&gt;
* '''v=spf1''' Sets the SPF version that is used.&lt;br /&gt;
* '''ip4:40.113.112.27''' Allow the IP address (of protocol version 4) 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
* '''~all''' Indicates that servers that are not listed previously are not authorized to send e-mails. &lt;br /&gt;
==If You Already Have SPF Records==&lt;br /&gt;
If you have already some SPF settings, there must be already some TXT records with something like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 a mx ip4:136.243.149.225 include:mailgun.org include:zoho.com -all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or this:&lt;br /&gt;
&amp;lt;pre&amp;gt;v=spf1 ip4:188.164.201.250 ip4:188.164.201.231 +a +mx ~all&amp;lt;/pre&amp;gt;&lt;br /&gt;
or any TXT record starting with '''v=spf1''' and after that one or more '''ip4:''' prefixes followed by IP addresses or multiple '''include:''' prefixes with domains (e.g. mailgun.org for transactional e-mails).&lt;br /&gt;
&lt;br /&gt;
What you need to do in this case is to edit this configuration and just add the following in between:&lt;br /&gt;
&amp;lt;pre&amp;gt;ip4:40.113.112.27&amp;lt;/pre&amp;gt;&lt;br /&gt;
By adding this, you 're essentially approving the IP address 40.113.112.27 (hoteliga's e-mail server) to send e-mails on your behalf.&lt;br /&gt;
After doing that, save the changes in your DNS setup.&lt;br /&gt;
&lt;br /&gt;
You should be able to send e-mails from within the hoteliga PMS and the hoteliga booking engine (if activated) without any problems.&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3120</id>
		<title>PMS</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3120"/>
				<updated>2024-03-04T11:25:35Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* HOW-TO's */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PMS stands for Property Management System&lt;br /&gt;
&lt;br /&gt;
== Main Functionality ==&lt;br /&gt;
hoteliga PMS has the following features:&lt;br /&gt;
&lt;br /&gt;
'''Reservations Management''' &lt;br /&gt;
:*[[The Dashboard (Home Page)|dashboard]] &lt;br /&gt;
:*[[The Reservations Calendar|reservations calendar]]&lt;br /&gt;
:*[[The Reservations Table|reservations table]] &lt;br /&gt;
:*[[The Room Layout|room layout]]&lt;br /&gt;
'''[[Customer Management]]''' &lt;br /&gt;
:*[[customer reservation history|customer reservation history]]&lt;br /&gt;
:*[[transactions|Transactions]]&lt;br /&gt;
:*[[customer categorization|Customer Categorization]]&lt;br /&gt;
'''Guest Management''' &lt;br /&gt;
:*[[Guest details|Guest details]]&lt;br /&gt;
:*[[Guest reports|Guest reports]]&lt;br /&gt;
'''Agencies Management''' &lt;br /&gt;
:*[[Contracts]]&lt;br /&gt;
:*[[Agencies_Management#Transactions|transactions]]&lt;br /&gt;
:*[[Agencies_Management#Balances|balances]]&lt;br /&gt;
:*[[Booking agency Setup|Booking agency]]&lt;br /&gt;
'''[[Housekeeping]]''' &lt;br /&gt;
:*plans&lt;br /&gt;
:*tasks&lt;br /&gt;
:*mobile app&lt;br /&gt;
'''[[Invoicing]]''' &lt;br /&gt;
:*taxes&lt;br /&gt;
:*counters&lt;br /&gt;
:*[[templates]]&lt;br /&gt;
:*[[reports]]&lt;br /&gt;
:*[[QR code myData]]&lt;br /&gt;
'''[[Room Maintenance]]''' &lt;br /&gt;
&lt;br /&gt;
'''[[Export Data for the Authorities]]''' &lt;br /&gt;
:*police and statistics authorities&lt;br /&gt;
'''[[Automation]]''' &lt;br /&gt;
:*automated emails&lt;br /&gt;
&lt;br /&gt;
== Key Characteristics ==&lt;br /&gt;
* Highly localizable (languages, currencies, taxation)&lt;br /&gt;
* Multiple [[Contracts|contracts]]&lt;br /&gt;
* [[Price Lists|Price lists]] season-based or day-by-day&lt;br /&gt;
* [[Users|User management]]&lt;br /&gt;
* Dynamic [[Templates|templates]]&lt;br /&gt;
* Many general and detailed [[Reports|reports]]&lt;br /&gt;
* Optional integrated direct connections with OTAs ([[Channel Manager|hoteliga channel manager]]) or third-party channel managers&lt;br /&gt;
* Optional integration with [[Booking Engine|hoteliga booking engine]]&lt;br /&gt;
* [[API]] available for custom applications&lt;br /&gt;
* [[Connected Rooms]]&lt;br /&gt;
&lt;br /&gt;
== The User Interface ==&lt;br /&gt;
* [[The Dashboard (Home Page)]]&lt;br /&gt;
* [[The Reservations Calendar]]&lt;br /&gt;
* [[The Reservation Window]]&lt;br /&gt;
* [[The Room Layout]]&lt;br /&gt;
* [[Other Settings]]&lt;br /&gt;
&lt;br /&gt;
== Key Concepts ==&lt;br /&gt;
* Simplified Look, Easy to Understand&lt;br /&gt;
* [[The Normal and the Agreed Price|Normal price and agreed price]]&lt;br /&gt;
* Overbooking allowed (and highlighted)&lt;br /&gt;
* Room capacity on room level, not on room-type level&lt;br /&gt;
* No night audits&lt;br /&gt;
* Similar user experience in desktop and mobile&lt;br /&gt;
&lt;br /&gt;
== HOW-TO's ==&lt;br /&gt;
* How to [[Property Setup|setup your property]]&lt;br /&gt;
* How to [[Room Setup|set room types, room groups and rooms]]&lt;br /&gt;
* How to [[Special prices Setup|set special prices]]&lt;br /&gt;
* How to [[Booking agency Setup|create a booking agency]]&lt;br /&gt;
* How to [[Housekeeping Setup|set rules for housekeeping]]&lt;br /&gt;
* How to [[Extra charges|add extra charges]]&lt;br /&gt;
* How to [[Change Board name|change board name]]&lt;br /&gt;
* How to [[Create New Users|create new users]]&lt;br /&gt;
* How to [[Create Vouchers|create new vouchers]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|ensure delivery of e-mails sent through the PMS]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|ensure delivery of e-mails sent through the PMS with the new DMARC and DKIM setup]]&lt;br /&gt;
&lt;br /&gt;
== Integrations ==&lt;br /&gt;
* '''[[Chekin]]'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3119</id>
		<title>PMS</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=PMS&amp;diff=3119"/>
				<updated>2024-03-04T11:24:56Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* HOW-TO's */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;PMS stands for Property Management System&lt;br /&gt;
&lt;br /&gt;
== Main Functionality ==&lt;br /&gt;
hoteliga PMS has the following features:&lt;br /&gt;
&lt;br /&gt;
'''Reservations Management''' &lt;br /&gt;
:*[[The Dashboard (Home Page)|dashboard]] &lt;br /&gt;
:*[[The Reservations Calendar|reservations calendar]]&lt;br /&gt;
:*[[The Reservations Table|reservations table]] &lt;br /&gt;
:*[[The Room Layout|room layout]]&lt;br /&gt;
'''[[Customer Management]]''' &lt;br /&gt;
:*[[customer reservation history|customer reservation history]]&lt;br /&gt;
:*[[transactions|Transactions]]&lt;br /&gt;
:*[[customer categorization|Customer Categorization]]&lt;br /&gt;
'''Guest Management''' &lt;br /&gt;
:*[[Guest details|Guest details]]&lt;br /&gt;
:*[[Guest reports|Guest reports]]&lt;br /&gt;
'''Agencies Management''' &lt;br /&gt;
:*[[Contracts]]&lt;br /&gt;
:*[[Agencies_Management#Transactions|transactions]]&lt;br /&gt;
:*[[Agencies_Management#Balances|balances]]&lt;br /&gt;
:*[[Booking agency Setup|Booking agency]]&lt;br /&gt;
'''[[Housekeeping]]''' &lt;br /&gt;
:*plans&lt;br /&gt;
:*tasks&lt;br /&gt;
:*mobile app&lt;br /&gt;
'''[[Invoicing]]''' &lt;br /&gt;
:*taxes&lt;br /&gt;
:*counters&lt;br /&gt;
:*[[templates]]&lt;br /&gt;
:*[[reports]]&lt;br /&gt;
:*[[QR code myData]]&lt;br /&gt;
'''[[Room Maintenance]]''' &lt;br /&gt;
&lt;br /&gt;
'''[[Export Data for the Authorities]]''' &lt;br /&gt;
:*police and statistics authorities&lt;br /&gt;
'''[[Automation]]''' &lt;br /&gt;
:*automated emails&lt;br /&gt;
&lt;br /&gt;
== Key Characteristics ==&lt;br /&gt;
* Highly localizable (languages, currencies, taxation)&lt;br /&gt;
* Multiple [[Contracts|contracts]]&lt;br /&gt;
* [[Price Lists|Price lists]] season-based or day-by-day&lt;br /&gt;
* [[Users|User management]]&lt;br /&gt;
* Dynamic [[Templates|templates]]&lt;br /&gt;
* Many general and detailed [[Reports|reports]]&lt;br /&gt;
* Optional integrated direct connections with OTAs ([[Channel Manager|hoteliga channel manager]]) or third-party channel managers&lt;br /&gt;
* Optional integration with [[Booking Engine|hoteliga booking engine]]&lt;br /&gt;
* [[API]] available for custom applications&lt;br /&gt;
* [[Connected Rooms]]&lt;br /&gt;
&lt;br /&gt;
== The User Interface ==&lt;br /&gt;
* [[The Dashboard (Home Page)]]&lt;br /&gt;
* [[The Reservations Calendar]]&lt;br /&gt;
* [[The Reservation Window]]&lt;br /&gt;
* [[The Room Layout]]&lt;br /&gt;
* [[Other Settings]]&lt;br /&gt;
&lt;br /&gt;
== Key Concepts ==&lt;br /&gt;
* Simplified Look, Easy to Understand&lt;br /&gt;
* [[The Normal and the Agreed Price|Normal price and agreed price]]&lt;br /&gt;
* Overbooking allowed (and highlighted)&lt;br /&gt;
* Room capacity on room level, not on room-type level&lt;br /&gt;
* No night audits&lt;br /&gt;
* Similar user experience in desktop and mobile&lt;br /&gt;
&lt;br /&gt;
== HOW-TO's ==&lt;br /&gt;
* How to [[Property Setup|setup your property]]&lt;br /&gt;
* How to [[Room Setup|set room types, room groups and rooms]]&lt;br /&gt;
* How to [[Special prices Setup|set special prices]]&lt;br /&gt;
* How to [[Booking agency Setup|create a booking agency]]&lt;br /&gt;
* How to [[Housekeeping Setup|set rules for housekeeping]]&lt;br /&gt;
* How to [[Extra charges|add extra charges]]&lt;br /&gt;
* How to [[Change Board name|change board name]]&lt;br /&gt;
* How to [[Create New Users|create new users]]&lt;br /&gt;
* How to [[Create Vouchers|create new vouchers]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|ensure delivery of e-mails sent through the PMS]]&lt;br /&gt;
* How to [[How to Ensure Delivery of E-mails Sent Through the PMS|DMARC and DKIM setup]]&lt;br /&gt;
&lt;br /&gt;
== Integrations ==&lt;br /&gt;
* '''[[Chekin]]'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=Templates&amp;diff=2789</id>
		<title>Templates</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=Templates&amp;diff=2789"/>
				<updated>2022-02-28T09:34:50Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;With templates you can adjust and personalize the view of the following:&lt;br /&gt;
&lt;br /&gt;
* e-mails about reservations (confirmation e-mail, instructions on how to get to the property, &amp;quot;thank you&amp;quot; e-mail etc.)&lt;br /&gt;
* Invoices (including receipts, payment receipts, credit invoices)&lt;br /&gt;
* Registration card (including similar forms, such as the ones for police authorities)&lt;br /&gt;
* Folio&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== Accessing Templates==&lt;br /&gt;
&lt;br /&gt;
Accessing templates can be done through: &lt;br /&gt;
&lt;br /&gt;
'''Options⇒ Settings⇒ Templates'''&lt;br /&gt;
&lt;br /&gt;
[[File:tem_list_en.png]]&lt;br /&gt;
&lt;br /&gt;
In this list, there are some templates already registered  by the system. The type of the template is displayed in the 3rd column '''(&amp;quot;Type&amp;quot;)'''.&lt;br /&gt;
&lt;br /&gt;
'''New template:''' Is used for creating a new template.&lt;br /&gt;
&lt;br /&gt;
'''Show filter:''' Is used for searching templates in the list, using the available filters.&lt;br /&gt;
&lt;br /&gt;
== Creating a New Template ==&lt;br /&gt;
A new template can be created by following these steps: &lt;br /&gt;
&lt;br /&gt;
''' Options⇒ Settings⇒ Templates⇒ New template'''&lt;br /&gt;
&lt;br /&gt;
[[File:tem_new_en.png]]&lt;br /&gt;
&lt;br /&gt;
'''1. Title:''' The name of the template should be inserted in this field.&lt;br /&gt;
&lt;br /&gt;
'''2. Template type :''' It defines what kind of template will be created. Further details are included in the table below.  &lt;br /&gt;
&lt;br /&gt;
'''3. Language:''' The correct selection of the language ensures that the recipient of the template (invoice, email etc) will understand the content.&lt;br /&gt;
&lt;br /&gt;
'''4. Subject:''' It is valid only in case that a template is used for emails, e.g. &amp;quot;thank you for your stay&amp;quot; etc.&lt;br /&gt;
&lt;br /&gt;
'''5. Content:''' This is the main part of the template. Formatting is possible using the standard formatting buttons like included in Microsoft Word. If the view is limited, the button &amp;quot;full screen&amp;quot; shows a larger view.&lt;br /&gt;
&lt;br /&gt;
'''6. Ok:''' To save the registration.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
! colspan=&amp;quot;2&amp;quot; style=&amp;quot;text-align: center;&amp;quot; | Template Types&lt;br /&gt;
|-&lt;br /&gt;
| Reservation&lt;br /&gt;
| It is related to a reservation and it is used for emails e.g. confirmation of the reservation,&amp;quot;thank you&amp;quot; e-mail,&lt;br /&gt;
 &lt;br /&gt;
instructions how to come to the hotel etc.&lt;br /&gt;
|-&lt;br /&gt;
| Invoice&lt;br /&gt;
| This is a standard layout with fields that should include specific information for invoicing, e.g. the counter,customer's billing &lt;br /&gt;
&lt;br /&gt;
information, various taxes applied etc.&lt;br /&gt;
|-&lt;br /&gt;
| Receipt&lt;br /&gt;
| This is a similar concept to invoice but used only in Greece. It does not apply to other countries.&lt;br /&gt;
|-&lt;br /&gt;
| Payment receipt&lt;br /&gt;
| This is a similar concept to invoice but used only in Greece. It does not apply to other countries.&lt;br /&gt;
|-&lt;br /&gt;
| Reservation request&lt;br /&gt;
| This is related to the e-mail that is automatically generated by the booking engine. It is called &amp;quot;request&amp;quot; because the reservations coming from the &lt;br /&gt;
&lt;br /&gt;
booking engine have to be confirmed by the hotelier or the property manager first.&lt;br /&gt;
|-&lt;br /&gt;
| Registration card&lt;br /&gt;
| This is a kind of form given to the customer to sign and accept the terms of the property e.g. any damage takes place, the customer&lt;br /&gt;
&lt;br /&gt;
is liable for.&lt;br /&gt;
|-&lt;br /&gt;
| Credit invoice&lt;br /&gt;
| It belongs to the invoicing documents used to credit or return money to the customer.&lt;br /&gt;
|-&lt;br /&gt;
| Folio&lt;br /&gt;
| It is a hotel business term that includes the total amount of the charges that a customer should pay so far. It is like a proforma&lt;br /&gt;
&lt;br /&gt;
invoice. For example, a customer has scheduled to stay in a hotel for 10 nights and the 5th one he wants to know what is the total &lt;br /&gt;
&lt;br /&gt;
amount he owes for extra charges, minibar etc. This template will include these charges.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Use of Templates==&lt;br /&gt;
&lt;br /&gt;
===Templates Related to Reservations===&lt;br /&gt;
&lt;br /&gt;
====Reservation====&lt;br /&gt;
[[File:tem_res_email_en.png]]&lt;br /&gt;
&lt;br /&gt;
All the &amp;quot;reservation&amp;quot; templates are included in the tab &amp;quot;E-mail&amp;quot; of a reservation window.&lt;br /&gt;
&lt;br /&gt;
When one of them is selected, it is automatically populated by the system with data like the name, address etc.&lt;br /&gt;
&lt;br /&gt;
====Registration Card====&lt;br /&gt;
[[File:Tem res reg card en.png]]&lt;br /&gt;
&lt;br /&gt;
After clicking the '''&amp;quot;registration card&amp;quot;''' button the following window opens.&lt;br /&gt;
&lt;br /&gt;
[[File:Tem res reg card 2 en.png]]&lt;br /&gt;
&lt;br /&gt;
All the &amp;quot;registration card&amp;quot; templates are included in this drop-down list.&lt;br /&gt;
When one of them is selected, it is automatically populated by the system with the predefined data.&lt;br /&gt;
&lt;br /&gt;
====Folio====&lt;br /&gt;
[[File:Tem res folio en.png]]&lt;br /&gt;
&lt;br /&gt;
After clicking the &amp;quot;folio&amp;quot; button the following window opens.&lt;br /&gt;
&lt;br /&gt;
MISSING PHOTO&lt;br /&gt;
&lt;br /&gt;
All the &amp;quot;folio&amp;quot; templates are included in this drop-down list. When one of them is selected, it is automatically populated by the system with the predefined data.&lt;br /&gt;
&lt;br /&gt;
''real folio at the end of the presentation''&lt;br /&gt;
&lt;br /&gt;
====Reservation request====&lt;br /&gt;
The &amp;quot;reservation request&amp;quot; template type is used for the e-mails that are sent automatically by the Booking Engine. &lt;br /&gt;
&lt;br /&gt;
They include the reservation information that is useful to the customers.&lt;br /&gt;
&lt;br /&gt;
'''Options⇒ Booking Engine⇒ E-mail'''&lt;br /&gt;
&lt;br /&gt;
[[File:Tem be en.png]]&lt;br /&gt;
&lt;br /&gt;
Every activated language can be connected to various templates. In the example, only the English language is activated, so the respective templates are appeared.&lt;br /&gt;
&lt;br /&gt;
===Templates Related to Invoicing===&lt;br /&gt;
The &amp;quot;invoice&amp;quot;, &amp;quot;credit invoice&amp;quot; and &amp;quot;receipt&amp;quot; are related to invoicing.&lt;br /&gt;
&lt;br /&gt;
At this step of the invoicing procedure, the system requests the template to be defined.&lt;br /&gt;
&lt;br /&gt;
[[File:Tem credit 1 en.png]]&lt;br /&gt;
&lt;br /&gt;
When the template is selected from the drop-down list, it is automatically populated by the system with the predefined data.&lt;br /&gt;
&lt;br /&gt;
===Templates Related to Payments===&lt;br /&gt;
&lt;br /&gt;
[[File:tem_res_rec_en.png]]&lt;br /&gt;
&lt;br /&gt;
In the tab '''&amp;quot;Payments&amp;quot;''', a payment should be selected '''(1)''' and then the '''&amp;quot;2. Receipt&amp;quot;''' button should be clicked.&lt;br /&gt;
&lt;br /&gt;
[[File:tem_res_rec_2_en.png]]&lt;br /&gt;
&lt;br /&gt;
In this window the system requests the template to be defined.&lt;br /&gt;
&lt;br /&gt;
When a template is selected, it is automatically populated by the system with data like the name, address etc.&lt;br /&gt;
&lt;br /&gt;
This receipt has no legal validity. It is just a proof of receiving money.&lt;br /&gt;
&lt;br /&gt;
==How to Edit the Content of a Template==&lt;br /&gt;
The formatting of the template content is possible by using the tools given by the system. &lt;br /&gt;
&lt;br /&gt;
First of all, there are the standard formatting buttons -like included in Microsoft Word- that allow, for example the letters to be bold, the alignment in the center etc. If a user feels comfortable with HTML code, then he/she can go to '''View ⇒ Source Code''' and make any change in the window that opens. By clicking &amp;quot;Ok&amp;quot; the changes are reflected directly to the template content.&lt;br /&gt;
&lt;br /&gt;
Every template type has its own family or set of fields that allow the system to retrieve the information needed depending on the case. &lt;br /&gt;
&lt;br /&gt;
For example, in a reservation e-mail, if it is typed: &lt;br /&gt;
&lt;br /&gt;
:&amp;quot;Dear Mr. '''&amp;lt;nowiki&amp;gt;{{firstname}} {{lastname}}&amp;lt;/nowiki&amp;gt;''', your reservation is confirmed.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
the result can be:&lt;br /&gt;
&lt;br /&gt;
:&amp;quot;Dear Mr. '''Michael Willson''', your reservation is confirmed&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Sometimes, a field can have '''nested''' fields. If a field is followed by a block surrounded with '''curly braces''' ( '''{...}''' ), then, it has nested fields. &lt;br /&gt;
&lt;br /&gt;
In order to access a nested field, dot (.) notation should be used, like in the example below:&lt;br /&gt;
&lt;br /&gt;
:&amp;quot;Dear Mr. '''&amp;lt;nowiki&amp;gt;{{customer.firstname}} {{customer.lastname}}&amp;lt;/nowiki&amp;gt;''', your reservation is confirmed.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
A field can also represent an array. If a field's name is followed by '''double brackets''', then it is an array of set of other fields, which are listed in the following block denoted by curly braces.&lt;br /&gt;
&lt;br /&gt;
In such cases, we have to use the index and access the '''set of fields'''. Example is given below for accessing price of reservation for Folio.&lt;br /&gt;
&lt;br /&gt;
:&amp;quot;Price of the reservation is '''{{reservations[0].price}}'''&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Note, that every field is followed by a semicolon and the self-description, except for the ones with nested fields. &lt;br /&gt;
&lt;br /&gt;
There are two sets of reservation fields, depending on whether the reservation is single or it's part of a group of reservations:&lt;br /&gt;
&lt;br /&gt;
=== Reservation (Single) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! field&lt;br /&gt;
! is populated with&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ reservationId }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the hoteliga reservation ID, e.g. 2325&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ lastname }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the last name of the customer, e.g. &amp;quot;Willson&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ firstname }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the first name of the customer, e.g. &amp;quot;Michael&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ datefrom }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the arrival date of the reservation, e.g. 24/08/2017. Date formatting will follow regional settings&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ dateto }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the departure date of the reservation, e.g. 31/08/2017. Date formatting will follow regional settings&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ nights }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the number of the total nights registered in the reservation, e.g. 7&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ adults }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the number of the adults registered in the reservation, e.g. 2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ children }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the number of the children registered in the reservation, e.g. 2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ board }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the localized description of the board, based on the template language&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalprice }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total price of the reservation in the property's currency, e.g. 448,00 EUR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ balance }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the balance of the reservation in the property's currency, e.g. 368,00 EUR&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ roomtype }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the title of the room type, based on the template language&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ roomtitle }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the title of the room&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ notes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| notes about the reservation&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ customernotes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| notes about the customer&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ bookingagencytitle }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the title of the booking agency&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ bookingagencycode }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the booking agency code&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ allPlannedPayments }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the list of all planned payments in the reservation&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalPlannedPayments }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total amount of the planned payments in the reservation&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Reservation (Group) ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! field&lt;br /&gt;
! is populated with&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ lastname }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the last name of the customer, e.g. &amp;quot;Willson&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ firstname }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the first name of the customer, e.g. &amp;quot;Michael&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ customernotes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| ...&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ bookingagencytitle }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| ...&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ bookingagencycode }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| ...&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalpricegroup }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| ...&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ balancegroup }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| ...&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ reservations }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| ...&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ allPlannedPayments }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the list of all planned payments in the group&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalPlannedPayments }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total amount of the planned payments in the group&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Invoice===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! parent object&lt;br /&gt;
! parent object&lt;br /&gt;
! field&lt;br /&gt;
! it is populated with&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ netSubtotal }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the net amount of the subtotal formatted with currency code&lt;br /&gt;
|-&lt;br /&gt;
| lines &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ netSubtotalCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ grossSubtotal }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the gross amount of the subtotal formatted with currency code&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ grossSubtotalCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ serviceStart }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| starting day of reservation for that particular line of invoice&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ serviceEnd }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| ending day of reservation for that particular line of invoice&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ serviceDuration }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| duration of reservation for that particular line of invoice&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ itemType }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ numAdults }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| number of adults for this particular line of invoice&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ numChildren }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| number of children for this particular line of invoice&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ quantity }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| number of days or items for this particular line of invoice&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ itemDescription }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ grossUnitPrice }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| gross price of the item&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ grossUnitPriceCurrency  }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ netUnitPrice }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| net price of the item&lt;br /&gt;
|-&lt;br /&gt;
| lines &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ netUnitPriceCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
| taxes&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ percentage }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| amount of tax in percentage&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
| taxes&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ amount}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
| taxes &lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ amountCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
| taxes&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ breakdown  }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
| taxes&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ rawAmount }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ netSubtotalRaw }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| lines &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ reservationId }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| Id of the reservation&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalNumAdults }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total number of adults in the reservation&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalNumChildren }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total number of children in the reservation&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalNumPersons }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total number of persons in the reservation&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalNet }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| net amount of reservation&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalNetCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalGross }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| gross amount of reservation&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalGrossCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalGrossBefore }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalGrossBeforeCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalUninvoicedPayments }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalUninvoicedPaymentsCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ remainingBalance }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ remainingBalanceCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ extraTaxes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| totalTaxes&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ percentage }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| totalTaxes&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ amount }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| totalTaxes&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ amountCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| totalTaxes&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ title }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| totalTaxes&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ breakdown }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| totalTaxes&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ rawAmount }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalTax }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ totalTaxCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ date }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ number }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ numbervalue }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ series }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ lastname }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ firstname }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ taxid }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ taxid2 }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ occupation }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ address1 }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ address2 }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ city }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ zip }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ country }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ rooms }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ notes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ bookingAgencyReferenceCodes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ guests }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ stayFrom }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{ stayTo }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Registration Card===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! parent object&lt;br /&gt;
! field&lt;br /&gt;
! it is populated with&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ todayDateEspanol }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ todayHourEspanol }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ hotelInternationalTitle }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ hotelDomesticTitle }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ reservationId }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| Id of the reservation&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ arrivalDate }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| date of arrival&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ departureDate }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| date of departure&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ numAdults }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| number of adults&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ numChildren }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| number of children&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ boardTitle }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ bookingAgencyReferenceCode }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| reference code of the booking agency&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ bookingAgencyTitle }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| title of the booking agency&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ roomTitle }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| title of the room&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ roomTypeTitle }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| title of the room type&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerFirstName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| first name of the customer&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerLastName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| last name of the customer&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ reservationNotes }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| notes about reservation&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerTaxId }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| tax id of the customer&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerEmail }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| email of the customer&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerPhone }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| phone number of the customer&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerAddress }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| address of the customer&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerZipCode }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| zip code of the customer&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerCity }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| city of the customer&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalExtraTaxes }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| total amount of extra taxes&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalWithoutExtraTaxes }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| total amount without extra taxes&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalAgreedPrice }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalPayments }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalWithExtraTaxes }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| total amount with extra taxes&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ balance }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerCountry }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| country of the customer&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ numGuests }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| number of guests&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalWithoutExtraTaxes }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| total amount without extra taxes&lt;br /&gt;
|-&lt;br /&gt;
| idDocTypes&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ id }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document type id&lt;br /&gt;
|-&lt;br /&gt;
| idDocTypes&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ title }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document type title&lt;br /&gt;
|-&lt;br /&gt;
| sexes&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ id }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| sex id&lt;br /&gt;
|-&lt;br /&gt;
| sexes&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ title }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| sex title&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ salutationId }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| salutation type id&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ salutation }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| salutation type&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerLastName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| last name of the customer&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerLastName2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| middle name of the customer&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerFirstName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| first name of the customer&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ lastName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| last name&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ lastName2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| middle name&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ firstName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| first name&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ dateOfBirth }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| date of birth&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ dateOfBirth2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ nationalityCountryName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocType }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document type&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocTypeEspana }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocNumber }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document number&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocTitle }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document title&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocIssueDate }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document issue date&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocIssueDate2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ provinceName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| name of the province&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ sex }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| sex&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ sex2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ checkinDate }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| date of checking in&lt;br /&gt;
|-&lt;br /&gt;
| guests&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ checkinDate2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ salutationId }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| salutation type id&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ salutation }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| salutation type&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerLastName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| last name of the customer&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerLastName2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| middle name of the customer&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerFirstName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| first name of the customer&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ lastName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| last name&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ lastName2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| middle name&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ firstName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| first name&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ dateOfBirth }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| date of birth&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ dateOfBirth2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ nationalityCountryName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocType }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document type&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocTypeEspana }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocNumber }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document number&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocTitle }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document title&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocIssueDate }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| document issue date&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ idDocIssueDate2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ provinceName }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| name of the province&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ sex }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| sex&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ sex2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ checkinDate }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| date of checking in&lt;br /&gt;
|-&lt;br /&gt;
| guestPairs&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ checkinDate2 }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ customerNotes }} &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| customer notes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Folio===&lt;br /&gt;
{&lt;br /&gt;
:&amp;quot;printdate&amp;quot;,&lt;br /&gt;
:&amp;quot;customer&amp;quot; : {&lt;br /&gt;
::&amp;quot;lastname&amp;quot; : &amp;quot;last name of the customer&amp;quot;,&lt;br /&gt;
::&amp;quot;firstname&amp;quot; : &amp;quot;first name of the customer&amp;quot;,&lt;br /&gt;
::&amp;quot;phone&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;mobile&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;email&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;address&amp;quot; : &amp;quot; &amp;quot;&lt;br /&gt;
:},&lt;br /&gt;
:&amp;quot;reservations&amp;quot; '''[ ]''' : {&lt;br /&gt;
::&amp;quot;id&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;promocode&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;datefrom&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;dateto&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;roomtype&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;room&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;price&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;tax&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;pricewithtax&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;numnights&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;numadults&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;numchildren&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;numadultschildren&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;reservationdate&amp;quot; : &amp;quot; &amp;quot;&lt;br /&gt;
:},&lt;br /&gt;
:&amp;quot;roomcharges&amp;quot; '''[ ]''' : {&lt;br /&gt;
::&amp;quot;date&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;description&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;reservationid&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;price&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;tax&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;pricewithtax&amp;quot; : &amp;quot; &amp;quot;&lt;br /&gt;
:},&lt;br /&gt;
:&amp;quot;roomchargestotals&amp;quot; : {&lt;br /&gt;
::&amp;quot;price&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;tax&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;pricewithtax&amp;quot; : &amp;quot; &amp;quot;&lt;br /&gt;
:},&lt;br /&gt;
:&amp;quot;extrachargestotals&amp;quot; : {&lt;br /&gt;
::&amp;quot;price&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;tax&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;pricewithtax&amp;quot; : &amp;quot; &amp;quot;&lt;br /&gt;
:},&lt;br /&gt;
:&amp;quot;paymentstotal&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
:&amp;quot;extracharges&amp;quot; '''[ ]''' : {&lt;br /&gt;
::&amp;quot;date&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;description&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;Quantity&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;reservationid&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;price&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;tax&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;pricewithtax&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;notes&amp;quot; : &amp;quot; &amp;quot;&lt;br /&gt;
:},&lt;br /&gt;
:&amp;quot;payments&amp;quot; '''[ ]''' : {&lt;br /&gt;
::&amp;quot;date&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;method&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;reservationid&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;amount&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;amountCurrency&amp;quot; : &amp;quot; &amp;quot;,&lt;br /&gt;
::&amp;quot;notes&amp;quot; : &amp;quot; &amp;quot;&lt;br /&gt;
:},&lt;br /&gt;
:&amp;quot;balance&amp;quot; : &amp;quot; &amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
===Tax Receipt===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! parent object&lt;br /&gt;
! parent object&lt;br /&gt;
! field&lt;br /&gt;
! it is populated with&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ netSubtotal }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the net amount of the subtotal formatted with currency code &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ netSubtotalCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| currency of the net subtotal&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ grossSubtotal }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the gross amount of the subtotal formatted with currency code&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ grossSubtotalCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| currency of the gross subtotal&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ serviceStart }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| starting day of reservation for that particular line of invoice&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ serviceEnd }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| ending day of reservation for that particular line of invoice &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ serviceDuration }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| duration of reservation for that particular line of invoice&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ itemType }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ numAdults }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| number of adults&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ numChildren }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| number of children&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ quantity }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| number of days or items&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ itemDescription }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ grossUnitPrice }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| gross price of the item &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ grossUnitPriceCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| currency of the gross price&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ netUnitPrice }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| net price of the item &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ netUnitPriceCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| currency of the net price&lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ taxes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ netSubtotalRaw }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ reservationId }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| Id of the reservation &lt;br /&gt;
|-&lt;br /&gt;
| lines&lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ extraChargesNotes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| notes about extra charges&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalNumAdults }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total number of adults in the reservation&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalNumChildren }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total number of children in the reservation&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalNumPersons }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total number of persons in the reservation &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalNet }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| net amount of reservation&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalNetCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| currency of net amount of reservation&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalGross }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| gross amount of reservation&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalGrossCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| currency of the gross amount of reservation&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalGrossBefore }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalGrossBeforeCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalUninvoicedPayments }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalUninvoicedPaymentsCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ remainingBalance }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| remaining balance&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ remainingBalanceCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| currency of the remaining balance&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ extraTaxes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| extra amount of taxes&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalTaxes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| total amount of taxes&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalTax }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| total amount of tax&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ totalTaxCurrency }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| currency of the total amount of tax&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ date }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ number }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ numbervalue }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ series }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ lastname }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ firstname }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ taxid }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ taxid2 }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ occupation }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ address1 }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ address2 }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ city }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ zip }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ country }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ rooms }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ notes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ bookingAgencyReferenceCodes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ guests }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ stayFrom }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ stayTo }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ referenceInvoiceNumber }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ referenceInvoiceIssueDate }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ invoiceNotes }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ paymentMethod }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
| reservationNotes&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ --- }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
| payments&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ --- }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
| &amp;lt;nowiki&amp;gt; {{ nights }}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Payment Receipt===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field&lt;br /&gt;
! it is populated with&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{date}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the current date&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{number}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the next available number of the payment receipt&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{numbervalue}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{series}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{lastname}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the  last name of the customer included in the reservation&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{firstname}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the first name of the customer included in the reservation&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.datefrom}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the first date of the specific reservation.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.dateto}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the last date of the specific reservation.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.nights}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the nights included in the specific reservation&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.adults}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the number of adults included in the specific reservation.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.children}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the number of children included in the specific reservation.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.board}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.notes}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the reservation notes.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.customernotes}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the customer's notes included in the reservation.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.totalprice}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the total amount of the reservation.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{reservation.roomtype}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the type of the room, according to the types that are registered in the system.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{amount}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the amount of the payment.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{paymentmethod}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the payment method of the specific payment&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{notes}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| notes included in the payment&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;{{paymentdate}}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| the date that the payment is registered&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==OLD CONTENT==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You can easily create beautiful email templates in minutes.&lt;br /&gt;
&lt;br /&gt;
You can create as many templates as you need e.g. 'Confirmation reservation' email, 'Thank you' email etc. and use these from inside the reservation to send dynamic emails to your customers. By using the dynamic emails feature you will save a lot of time in communications with your customers and you will improve customer loyalty.&lt;br /&gt;
&lt;br /&gt;
Below you will find a range of variables that you can use inside the template. By using the variables, you can send relevant and personalized emails to your customers without the need of typing anything manually again and at the same time your emails look personalized as they dynamically generate all information related to your customers’ reservation.&lt;br /&gt;
&lt;br /&gt;
We don't impose any design restrictions.&lt;br /&gt;
Got the skills to roll your own email designs? You can create your own HTML template and paste it in templates.&lt;br /&gt;
You do not know HTML or how to design an email? No worries, you can use the provided simple to use editor and just type in the text you want.&lt;br /&gt;
To create dynamic email templates go to Settings-Templates and click the New template button.&lt;br /&gt;
&lt;br /&gt;
NOTICE: Variables are case sensitive and should be used exactly as they are defined in the system. e.g. {{ firstname }}. Below you will find all variables that can be used in email templates. Copy and paste them in your email templates.&lt;br /&gt;
&lt;br /&gt;
[[File:variables.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:variables_exam.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:variables_exam1.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:variables_exam2.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:variables_exam3.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:variables_exam4.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===HOW-TO's ===&lt;br /&gt;
* How to make a small change in an existing template&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=Channel_Manager&amp;diff=2264</id>
		<title>Channel Manager</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=Channel_Manager&amp;diff=2264"/>
				<updated>2020-09-14T08:28:58Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
A channel manager is software that allows your property to directly connect with various [[Glossary#O|OTA]]s. With this tool, you can easily update rates, allotment, availability and restrictions.&lt;br /&gt;
&lt;br /&gt;
== Why it is Necessary to Have a Channel Manager ==&lt;br /&gt;
If your property is contracted with many OTAs, you have to login frequently to each and every one of the OTA extranets and update mostly prices and allotment (i.e. rooms to sell). This process is very time-consuming and can also lead to mistakes, as it is done manually.&lt;br /&gt;
But the greatest risk is to get overbookings for not being able to update in time. For example: Let's say that your hotel has contracted with booking.com and Expedia. Now suppose that the hotel has one double room left for a given night, let's say the 15th of August. At 3.00 am local time, a reservation is made in booking.com for a double room for the 15th of August. The allotment (rooms to sell) in booking.com is now automatically set to zero for this date. But the rooms to sell in Expedia for a double room in the 15th of August is still one.&lt;br /&gt;
&lt;br /&gt;
If no one sets the allotment for this room type and this date in Expedia to zero (after 3.00 am in the night), it could happen that at 3.30 am, another reservation arrives, this time from Expedia, for a double room for the 15th of August. But there is no free double room any more, as it was booked 30 minutes ago in booking.com. That is an overbooking, and it is the hotel responsibility to find another accommodation for the hotel guest.&lt;br /&gt;
&lt;br /&gt;
As it is practically impossible for someone to manually update all extranets all day and night (what if the contracted OTAs where 5, or 10?), a channel manager takes care the automatic update of room allotment (rooms to sell), among others.&lt;br /&gt;
&lt;br /&gt;
== Channel Manager Options ==&lt;br /&gt;
With hoteliga you can choose among three channel managers:&lt;br /&gt;
* the [[hoteliga Channel Manager]], the most integrated solution with direct certified connections&lt;br /&gt;
* [[Parity Rate]], an affordable channel manager&lt;br /&gt;
* [[SiteMinder]], a very popular channel manager&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;width:60%;text-align:center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width: 40%;&amp;quot; |&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | hoteliga channel manager&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | Parity Rate&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | SiteMinder&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot; | Available channels&lt;br /&gt;
| booking.com, Expedia (Hotels.com, Expedia Affiliante Network, Travelocity), Hotelbeds, Agoda, TripAdvisor*, Airbnb&lt;br /&gt;
| [https://www.parityrate.com/en/integrations/ click here]&lt;br /&gt;
| [https://www.siteminder.com/integrations/online-travel-agencies/ click here]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Support for multiple IDs&lt;br /&gt;
| YES&lt;br /&gt;
| NO&lt;br /&gt;
| NO&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Download frequency for reservations&lt;br /&gt;
| Instant download for Airbnb, Hotelbeds and TripAdvisor,&amp;lt;br/&amp;gt;every 1 min. for booking.com,&amp;lt;br/&amp;gt;every 5 min. for the rest&lt;br /&gt;
| every 5 min.&lt;br /&gt;
| every  5 min.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Synchronization of available rooms (allotment)&lt;br /&gt;
| Real time&lt;br /&gt;
| Real time&lt;br /&gt;
| Real time&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Upload of rates, restrictions, stop sales&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Integration with hoteliga PMS&lt;br /&gt;
| Direct&lt;br /&gt;
| Indirect&lt;br /&gt;
| Indirect&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Billing cycle&lt;br /&gt;
| Monthly/Annually&lt;br /&gt;
| Annually Only&lt;br /&gt;
| Monthly&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Pay per channel&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
| NO&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Synchronization with vacation portals&amp;lt;br/&amp;gt;(availability only)&lt;br /&gt;
| Free&lt;br /&gt;
| Pay&lt;br /&gt;
| Pay&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; requires hoteliga booking engine&lt;br /&gt;
&lt;br /&gt;
After choosing the right channel manager for you, you need to decide the way that data will be synchronized between hoteliga PMS and the [[Glossary#O|OTA]]s. The following options exist:&lt;br /&gt;
* '''One-way connection'''. The [[Glossary#O|OTA]] only sends reservations to the hoteliga PMS, nothing else. Choose this option if you are used to manage prices/rates from the [[Glossary#O|OTA]]'s extranet. &lt;br /&gt;
* '''Two-way connection'''. The [[Glossary#O|OTA]] sends reservations to the hoteliga PMS, and at the same time the hoteliga PMS sends room allotment, room rate/type availability, prices and restrictions to the [[Glossary#O|OTA]]. This is the full and most complete connection one can get.&lt;br /&gt;
&lt;br /&gt;
Every channel manager has different costs, please consult the [http://www.hoteliga.com hoteliga website] for more information.&lt;br /&gt;
&lt;br /&gt;
== Setting Up the Channel Manager in hoteliga PMS ==&lt;br /&gt;
In order to start using the channel manager in hoteliga PMS, the following requirements exist:&lt;br /&gt;
* You need to have signed a contract and activated the connection with at least an OTA. If you don't have any contracts, see also &amp;quot;[[How Do I Connect With a New OTA?]]&amp;quot;.&lt;br /&gt;
* You need to have selected and purchased the channel manager connection that is best for you.&lt;br /&gt;
&lt;br /&gt;
The next thing to do is to contact hoteliga support in order to arrange the setup of the channels. This setup is included in the cost of channel manager connection and '''it is very important that it is done together with hoteliga staff to avoid mistakes.'''&lt;br /&gt;
&lt;br /&gt;
The setup process includes the following steps:&lt;br /&gt;
* Ensure with hoteliga staff that access to the OTA extranet is available (or access to Parity Rate/SiteMinder extranet is available).&lt;br /&gt;
* Ensure with hoteliga staff that the OTA has issued credentials (username &amp;amp; password) for the channel manager (these credentials may be different for human and system access).&lt;br /&gt;
* Ensure with hoteliga staff that the property, rates and room type setup on the OTA is reasonable and compatible with hoteliga concepts.&lt;br /&gt;
* Activate the channel connection from inside the extranet (if applicable) with the assistance of hoteliga staff.&lt;br /&gt;
* Do the correct room type and rate mapping inside hoteliga channel manager configuration with the assistance of hoteliga staff.&lt;br /&gt;
* Upload room allotment and prices from inside the hoteliga PMS for the first time with the assistance of hoteliga staff.&lt;br /&gt;
* Do visual checks for random dates and room types and compare the prices and values in the OTA extranet and hoteliga PMS.&lt;br /&gt;
&lt;br /&gt;
== FAQs ==&lt;br /&gt;
* [[How Do I Connect With a New OTA?]]&lt;br /&gt;
* [[How to Connect an Airbnb Account and its Listings]]&lt;br /&gt;
* [[How Do I Get the Credit Card Information From a Reservation?]]&lt;br /&gt;
* [[What Information hoteliga exchanges with Channels?]]&lt;br /&gt;
* [[What Kind of Restrictions are in Booking.com?]]&lt;br /&gt;
* [[How can the Hotel add a Room/Rate?]]&lt;br /&gt;
* [[How can I add or set Special Prices to each Channel?]]&lt;br /&gt;
* [[What happens when I get a reservation with a Special Price that is not set in hoteliga?]]&lt;br /&gt;
* [[How can I change the Cancelation Policy in a Channel?]]&lt;br /&gt;
* [[Derived / Linked Prices]]&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=Channel_Manager&amp;diff=2263</id>
		<title>Channel Manager</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=Channel_Manager&amp;diff=2263"/>
				<updated>2020-09-14T08:28:27Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
A channel manager is software that allows your property to directly connect with various [[Glossary#O|OTA]]s. With this tool, you can easily update rates, allotment, availability and restrictions.&lt;br /&gt;
&lt;br /&gt;
== Why it is Necessary to Have a Channel Manager ==&lt;br /&gt;
If your property is contracted with many OTAs, you have to login frequently to each and every one of the OTA extranets and update mostly prices and allotment (i.e. rooms to sell). This process is very time-consuming and can also lead to mistakes, as it is done manually.&lt;br /&gt;
But the greatest risk is to get overbookings for not being able to update in time. For example: Let's say that your hotel has contracted with booking.com and Expedia. Now suppose that the hotel has one double room left for a given night, let's say the 15th of August. At 3.00 am local time, a reservation is made in booking.com for a double room for the 15th of August. The allotment (rooms to sell) in booking.com is now automatically set to zero for this date. But the rooms to sell in Expedia for a double room in the 15th of August is still one.&lt;br /&gt;
&lt;br /&gt;
If no one sets the allotment for this room type and this date in Expedia to zero (after 3.00 am in the night), it could happen that at 3.30 am, another reservation arrives, this time from Expedia, for a double room for the 15th of August. But there is no free double room any more, as it was booked 30 minutes ago in booking.com. That is an overbooking, and it is the hotel responsibility to find another accommodation for the hotel guest.&lt;br /&gt;
&lt;br /&gt;
As it is practically impossible for someone to manually update all extranets all day and night (what if the contracted OTAs where 5, or 10?), a channel manager takes care the automatic update of room allotment (rooms to sell), among others.&lt;br /&gt;
&lt;br /&gt;
== Channel Manager Options ==&lt;br /&gt;
With hoteliga you can choose among three channel managers:&lt;br /&gt;
* the [[hoteliga Channel Manager]], the most integrated solution with direct certified connections&lt;br /&gt;
* [[Parity Rate]], an affordable channel manager&lt;br /&gt;
* [[SiteMinder]], a very popular channel manager&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;width:60%;text-align:center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width: 40%;&amp;quot; |&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | hoteliga channel manager&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | Parity Rate&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | SiteMinder&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot; | Available channels&lt;br /&gt;
| booking.com, Expedia (Hotels.com, Expedia Affiliante Network, Travelocity), Hotelbeds, Agoda, TripAdvisor*, Airbnb&lt;br /&gt;
| [https://www.parityrate.com/en/integrations/ click here]&lt;br /&gt;
| [https://www.siteminder.com/integrations/online-travel-agencies/ click here]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Support for multiple IDs&lt;br /&gt;
| YES&lt;br /&gt;
| NO&lt;br /&gt;
| NO&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Download frequency for reservations&lt;br /&gt;
| Instant download for Airbnb, Hotelbeds and TripAdvisor,&amp;lt;br/&amp;gt;every 1 min. for booking.com&amp;lt;br/&amp;gt;every 5 min. for the rest&lt;br /&gt;
| every 5 min.&lt;br /&gt;
| every  5 min.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Synchronization of available rooms (allotment)&lt;br /&gt;
| Real time&lt;br /&gt;
| Real time&lt;br /&gt;
| Real time&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Upload of rates, restrictions, stop sales&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Integration with hoteliga PMS&lt;br /&gt;
| Direct&lt;br /&gt;
| Indirect&lt;br /&gt;
| Indirect&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Billing cycle&lt;br /&gt;
| Monthly/Annually&lt;br /&gt;
| Annually Only&lt;br /&gt;
| Monthly&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Pay per channel&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
| NO&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Synchronization with vacation portals&amp;lt;br/&amp;gt;(availability only)&lt;br /&gt;
| Free&lt;br /&gt;
| Pay&lt;br /&gt;
| Pay&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; requires hoteliga booking engine&lt;br /&gt;
&lt;br /&gt;
After choosing the right channel manager for you, you need to decide the way that data will be synchronized between hoteliga PMS and the [[Glossary#O|OTA]]s. The following options exist:&lt;br /&gt;
* '''One-way connection'''. The [[Glossary#O|OTA]] only sends reservations to the hoteliga PMS, nothing else. Choose this option if you are used to manage prices/rates from the [[Glossary#O|OTA]]'s extranet. &lt;br /&gt;
* '''Two-way connection'''. The [[Glossary#O|OTA]] sends reservations to the hoteliga PMS, and at the same time the hoteliga PMS sends room allotment, room rate/type availability, prices and restrictions to the [[Glossary#O|OTA]]. This is the full and most complete connection one can get.&lt;br /&gt;
&lt;br /&gt;
Every channel manager has different costs, please consult the [http://www.hoteliga.com hoteliga website] for more information.&lt;br /&gt;
&lt;br /&gt;
== Setting Up the Channel Manager in hoteliga PMS ==&lt;br /&gt;
In order to start using the channel manager in hoteliga PMS, the following requirements exist:&lt;br /&gt;
* You need to have signed a contract and activated the connection with at least an OTA. If you don't have any contracts, see also &amp;quot;[[How Do I Connect With a New OTA?]]&amp;quot;.&lt;br /&gt;
* You need to have selected and purchased the channel manager connection that is best for you.&lt;br /&gt;
&lt;br /&gt;
The next thing to do is to contact hoteliga support in order to arrange the setup of the channels. This setup is included in the cost of channel manager connection and '''it is very important that it is done together with hoteliga staff to avoid mistakes.'''&lt;br /&gt;
&lt;br /&gt;
The setup process includes the following steps:&lt;br /&gt;
* Ensure with hoteliga staff that access to the OTA extranet is available (or access to Parity Rate/SiteMinder extranet is available).&lt;br /&gt;
* Ensure with hoteliga staff that the OTA has issued credentials (username &amp;amp; password) for the channel manager (these credentials may be different for human and system access).&lt;br /&gt;
* Ensure with hoteliga staff that the property, rates and room type setup on the OTA is reasonable and compatible with hoteliga concepts.&lt;br /&gt;
* Activate the channel connection from inside the extranet (if applicable) with the assistance of hoteliga staff.&lt;br /&gt;
* Do the correct room type and rate mapping inside hoteliga channel manager configuration with the assistance of hoteliga staff.&lt;br /&gt;
* Upload room allotment and prices from inside the hoteliga PMS for the first time with the assistance of hoteliga staff.&lt;br /&gt;
* Do visual checks for random dates and room types and compare the prices and values in the OTA extranet and hoteliga PMS.&lt;br /&gt;
&lt;br /&gt;
== FAQs ==&lt;br /&gt;
* [[How Do I Connect With a New OTA?]]&lt;br /&gt;
* [[How to Connect an Airbnb Account and its Listings]]&lt;br /&gt;
* [[How Do I Get the Credit Card Information From a Reservation?]]&lt;br /&gt;
* [[What Information hoteliga exchanges with Channels?]]&lt;br /&gt;
* [[What Kind of Restrictions are in Booking.com?]]&lt;br /&gt;
* [[How can the Hotel add a Room/Rate?]]&lt;br /&gt;
* [[How can I add or set Special Prices to each Channel?]]&lt;br /&gt;
* [[What happens when I get a reservation with a Special Price that is not set in hoteliga?]]&lt;br /&gt;
* [[How can I change the Cancelation Policy in a Channel?]]&lt;br /&gt;
* [[Derived / Linked Prices]]&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=Channel_Manager&amp;diff=2262</id>
		<title>Channel Manager</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=Channel_Manager&amp;diff=2262"/>
				<updated>2020-09-14T08:28:08Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
A channel manager is software that allows your property to directly connect with various [[Glossary#O|OTA]]s. With this tool, you can easily update rates, allotment, availability and restrictions.&lt;br /&gt;
&lt;br /&gt;
== Why it is Necessary to Have a Channel Manager ==&lt;br /&gt;
If your property is contracted with many OTAs, you have to login frequently to each and every one of the OTA extranets and update mostly prices and allotment (i.e. rooms to sell). This process is very time-consuming and can also lead to mistakes, as it is done manually.&lt;br /&gt;
But the greatest risk is to get overbookings for not being able to update in time. For example: Let's say that your hotel has contracted with booking.com and Expedia. Now suppose that the hotel has one double room left for a given night, let's say the 15th of August. At 3.00 am local time, a reservation is made in booking.com for a double room for the 15th of August. The allotment (rooms to sell) in booking.com is now automatically set to zero for this date. But the rooms to sell in Expedia for a double room in the 15th of August is still one.&lt;br /&gt;
&lt;br /&gt;
If no one sets the allotment for this room type and this date in Expedia to zero (after 3.00 am in the night), it could happen that at 3.30 am, another reservation arrives, this time from Expedia, for a double room for the 15th of August. But there is no free double room any more, as it was booked 30 minutes ago in booking.com. That is an overbooking, and it is the hotel responsibility to find another accommodation for the hotel guest.&lt;br /&gt;
&lt;br /&gt;
As it is practically impossible for someone to manually update all extranets all day and night (what if the contracted OTAs where 5, or 10?), a channel manager takes care the automatic update of room allotment (rooms to sell), among others.&lt;br /&gt;
&lt;br /&gt;
== Channel Manager Options ==&lt;br /&gt;
With hoteliga you can choose among three channel managers:&lt;br /&gt;
* the [[hoteliga Channel Manager]], the most integrated solution with direct certified connections&lt;br /&gt;
* [[Parity Rate]], an affordable channel manager&lt;br /&gt;
* [[SiteMinder]], a very popular channel manager&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;width:60%;text-align:center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width: 40%;&amp;quot; |&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | hoteliga channel manager&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | Parity Rate&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | SiteMinder&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot; | Available channels&lt;br /&gt;
| booking.com, Expedia (Hotels.com, Expedia Affiliante Network, Travelocity), Hotelbeds, Agoda, TripAdvisor*, Airbnb&lt;br /&gt;
| [https://www.parityrate.com/en/integrations/ click here]&lt;br /&gt;
| [https://www.siteminder.com/integrations/online-travel-agencies/ click here]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Support for multiple IDs&lt;br /&gt;
| YES&lt;br /&gt;
| NO&lt;br /&gt;
| NO&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Download frequency for reservations&lt;br /&gt;
| Instant download for for Airbnb, Hotelbeds and TripAdvisor,&amp;lt;br/&amp;gt;every 1 min. for booking.com&amp;lt;br/&amp;gt;every 5 min. for the rest&lt;br /&gt;
| every 5 min.&lt;br /&gt;
| every  5 min.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Synchronization of available rooms (allotment)&lt;br /&gt;
| Real time&lt;br /&gt;
| Real time&lt;br /&gt;
| Real time&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Upload of rates, restrictions, stop sales&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Integration with hoteliga PMS&lt;br /&gt;
| Direct&lt;br /&gt;
| Indirect&lt;br /&gt;
| Indirect&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Billing cycle&lt;br /&gt;
| Monthly/Annually&lt;br /&gt;
| Annually Only&lt;br /&gt;
| Monthly&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Pay per channel&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
| NO&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Synchronization with vacation portals&amp;lt;br/&amp;gt;(availability only)&lt;br /&gt;
| Free&lt;br /&gt;
| Pay&lt;br /&gt;
| Pay&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; requires hoteliga booking engine&lt;br /&gt;
&lt;br /&gt;
After choosing the right channel manager for you, you need to decide the way that data will be synchronized between hoteliga PMS and the [[Glossary#O|OTA]]s. The following options exist:&lt;br /&gt;
* '''One-way connection'''. The [[Glossary#O|OTA]] only sends reservations to the hoteliga PMS, nothing else. Choose this option if you are used to manage prices/rates from the [[Glossary#O|OTA]]'s extranet. &lt;br /&gt;
* '''Two-way connection'''. The [[Glossary#O|OTA]] sends reservations to the hoteliga PMS, and at the same time the hoteliga PMS sends room allotment, room rate/type availability, prices and restrictions to the [[Glossary#O|OTA]]. This is the full and most complete connection one can get.&lt;br /&gt;
&lt;br /&gt;
Every channel manager has different costs, please consult the [http://www.hoteliga.com hoteliga website] for more information.&lt;br /&gt;
&lt;br /&gt;
== Setting Up the Channel Manager in hoteliga PMS ==&lt;br /&gt;
In order to start using the channel manager in hoteliga PMS, the following requirements exist:&lt;br /&gt;
* You need to have signed a contract and activated the connection with at least an OTA. If you don't have any contracts, see also &amp;quot;[[How Do I Connect With a New OTA?]]&amp;quot;.&lt;br /&gt;
* You need to have selected and purchased the channel manager connection that is best for you.&lt;br /&gt;
&lt;br /&gt;
The next thing to do is to contact hoteliga support in order to arrange the setup of the channels. This setup is included in the cost of channel manager connection and '''it is very important that it is done together with hoteliga staff to avoid mistakes.'''&lt;br /&gt;
&lt;br /&gt;
The setup process includes the following steps:&lt;br /&gt;
* Ensure with hoteliga staff that access to the OTA extranet is available (or access to Parity Rate/SiteMinder extranet is available).&lt;br /&gt;
* Ensure with hoteliga staff that the OTA has issued credentials (username &amp;amp; password) for the channel manager (these credentials may be different for human and system access).&lt;br /&gt;
* Ensure with hoteliga staff that the property, rates and room type setup on the OTA is reasonable and compatible with hoteliga concepts.&lt;br /&gt;
* Activate the channel connection from inside the extranet (if applicable) with the assistance of hoteliga staff.&lt;br /&gt;
* Do the correct room type and rate mapping inside hoteliga channel manager configuration with the assistance of hoteliga staff.&lt;br /&gt;
* Upload room allotment and prices from inside the hoteliga PMS for the first time with the assistance of hoteliga staff.&lt;br /&gt;
* Do visual checks for random dates and room types and compare the prices and values in the OTA extranet and hoteliga PMS.&lt;br /&gt;
&lt;br /&gt;
== FAQs ==&lt;br /&gt;
* [[How Do I Connect With a New OTA?]]&lt;br /&gt;
* [[How to Connect an Airbnb Account and its Listings]]&lt;br /&gt;
* [[How Do I Get the Credit Card Information From a Reservation?]]&lt;br /&gt;
* [[What Information hoteliga exchanges with Channels?]]&lt;br /&gt;
* [[What Kind of Restrictions are in Booking.com?]]&lt;br /&gt;
* [[How can the Hotel add a Room/Rate?]]&lt;br /&gt;
* [[How can I add or set Special Prices to each Channel?]]&lt;br /&gt;
* [[What happens when I get a reservation with a Special Price that is not set in hoteliga?]]&lt;br /&gt;
* [[How can I change the Cancelation Policy in a Channel?]]&lt;br /&gt;
* [[Derived / Linked Prices]]&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=Channel_Manager&amp;diff=2261</id>
		<title>Channel Manager</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=Channel_Manager&amp;diff=2261"/>
				<updated>2020-09-14T08:16:25Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
A channel manager is software that allows your property to directly connect with various [[Glossary#O|OTA]]s. With this tool, you can easily update rates, allotment, availability and restrictions.&lt;br /&gt;
&lt;br /&gt;
== Why it is Necessary to Have a Channel Manager ==&lt;br /&gt;
If your property is contracted with many OTAs, you have to login frequently to each and every one of the OTA extranets and update mostly prices and allotment (i.e. rooms to sell). This process is very time-consuming and can also lead to mistakes, as it is done manually.&lt;br /&gt;
But the greatest risk is to get overbookings for not being able to update in time. For example: Let's say that your hotel has contracted with booking.com and Expedia. Now suppose that the hotel has one double room left for a given night, let's say the 15th of August. At 3.00 am local time, a reservation is made in booking.com for a double room for the 15th of August. The allotment (rooms to sell) in booking.com is now automatically set to zero for this date. But the rooms to sell in Expedia for a double room in the 15th of August is still one.&lt;br /&gt;
&lt;br /&gt;
If no one sets the allotment for this room type and this date in Expedia to zero (after 3.00 am in the night), it could happen that at 3.30 am, another reservation arrives, this time from Expedia, for a double room for the 15th of August. But there is no free double room any more, as it was booked 30 minutes ago in booking.com. That is an overbooking, and it is the hotel responsibility to find another accommodation for the hotel guest.&lt;br /&gt;
&lt;br /&gt;
As it is practically impossible for someone to manually update all extranets all day and night (what if the contracted OTAs where 5, or 10?), a channel manager takes care the automatic update of room allotment (rooms to sell), among others.&lt;br /&gt;
&lt;br /&gt;
== Channel Manager Options ==&lt;br /&gt;
With hoteliga you can choose among three channel managers:&lt;br /&gt;
* the [[hoteliga Channel Manager]], the most integrated solution with direct certified connections&lt;br /&gt;
* [[Parity Rate]], an affordable channel manager&lt;br /&gt;
* [[SiteMinder]], a very popular channel manager&lt;br /&gt;
&lt;br /&gt;
{| style=&amp;quot;width:60%;text-align:center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! style=&amp;quot;width: 40%;&amp;quot; |&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | hoteliga channel manager&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | Parity Rate&lt;br /&gt;
! style=&amp;quot;width: 20%;&amp;quot; | SiteMinder&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot; | Available channels&lt;br /&gt;
| booking.com, Expedia (Hotels.com, Expedia Affiliante Network, Travelocity), Hotelbeds, Agoda, TripAdvisor*, Airbnb&lt;br /&gt;
| [https://www.parityrate.com/en/integrations/ click here]&lt;br /&gt;
| [https://www.siteminder.com/integrations/online-travel-agencies/ click here]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Support for multiple IDs&lt;br /&gt;
| YES&lt;br /&gt;
| NO&lt;br /&gt;
| NO&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Download frequency for reservations&lt;br /&gt;
| Instant download for booking.com&amp;lt;br/&amp;gt;every 10 min. for the rest&lt;br /&gt;
| every 10 min.&lt;br /&gt;
| every  5 min.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Synchronization of available rooms (allotment)&lt;br /&gt;
| Real time&lt;br /&gt;
| Real time&lt;br /&gt;
| Real time&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Upload of rates, restrictions, stop sales&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Integration with hoteliga PMS&lt;br /&gt;
| Direct&lt;br /&gt;
| Indirect&lt;br /&gt;
| Indirect&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Billing cycle&lt;br /&gt;
| Monthly/Annually&lt;br /&gt;
| Annually Only&lt;br /&gt;
| Monthly&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Pay per channel&lt;br /&gt;
| YES&lt;br /&gt;
| YES&lt;br /&gt;
| NO&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align:left&amp;quot;|Synchronization with vacation portals&amp;lt;br/&amp;gt;(availability only)&lt;br /&gt;
| Free&lt;br /&gt;
| Pay&lt;br /&gt;
| Pay&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; requires hoteliga booking engine&lt;br /&gt;
&lt;br /&gt;
After choosing the right channel manager for you, you need to decide the way that data will be synchronized between hoteliga PMS and the [[Glossary#O|OTA]]s. The following options exist:&lt;br /&gt;
* '''One-way connection'''. The [[Glossary#O|OTA]] only sends reservations to the hoteliga PMS, nothing else. Choose this option if you are used to manage prices/rates from the [[Glossary#O|OTA]]'s extranet. &lt;br /&gt;
* '''Two-way connection'''. The [[Glossary#O|OTA]] sends reservations to the hoteliga PMS, and at the same time the hoteliga PMS sends room allotment, room rate/type availability, prices and restrictions to the [[Glossary#O|OTA]]. This is the full and most complete connection one can get.&lt;br /&gt;
&lt;br /&gt;
Every channel manager has different costs, please consult the [http://www.hoteliga.com hoteliga website] for more information.&lt;br /&gt;
&lt;br /&gt;
== Setting Up the Channel Manager in hoteliga PMS ==&lt;br /&gt;
In order to start using the channel manager in hoteliga PMS, the following requirements exist:&lt;br /&gt;
* You need to have signed a contract and activated the connection with at least an OTA. If you don't have any contracts, see also &amp;quot;[[How Do I Connect With a New OTA?]]&amp;quot;.&lt;br /&gt;
* You need to have selected and purchased the channel manager connection that is best for you.&lt;br /&gt;
&lt;br /&gt;
The next thing to do is to contact hoteliga support in order to arrange the setup of the channels. This setup is included in the cost of channel manager connection and '''it is very important that it is done together with hoteliga staff to avoid mistakes.'''&lt;br /&gt;
&lt;br /&gt;
The setup process includes the following steps:&lt;br /&gt;
* Ensure with hoteliga staff that access to the OTA extranet is available (or access to Parity Rate/SiteMinder extranet is available).&lt;br /&gt;
* Ensure with hoteliga staff that the OTA has issued credentials (username &amp;amp; password) for the channel manager (these credentials may be different for human and system access).&lt;br /&gt;
* Ensure with hoteliga staff that the property, rates and room type setup on the OTA is reasonable and compatible with hoteliga concepts.&lt;br /&gt;
* Activate the channel connection from inside the extranet (if applicable) with the assistance of hoteliga staff.&lt;br /&gt;
* Do the correct room type and rate mapping inside hoteliga channel manager configuration with the assistance of hoteliga staff.&lt;br /&gt;
* Upload room allotment and prices from inside the hoteliga PMS for the first time with the assistance of hoteliga staff.&lt;br /&gt;
* Do visual checks for random dates and room types and compare the prices and values in the OTA extranet and hoteliga PMS.&lt;br /&gt;
&lt;br /&gt;
== FAQs ==&lt;br /&gt;
* [[How Do I Connect With a New OTA?]]&lt;br /&gt;
* [[How to Connect an Airbnb Account and its Listings]]&lt;br /&gt;
* [[How Do I Get the Credit Card Information From a Reservation?]]&lt;br /&gt;
* [[What Information hoteliga exchanges with Channels?]]&lt;br /&gt;
* [[What Kind of Restrictions are in Booking.com?]]&lt;br /&gt;
* [[How can the Hotel add a Room/Rate?]]&lt;br /&gt;
* [[How can I add or set Special Prices to each Channel?]]&lt;br /&gt;
* [[What happens when I get a reservation with a Special Price that is not set in hoteliga?]]&lt;br /&gt;
* [[How can I change the Cancelation Policy in a Channel?]]&lt;br /&gt;
* [[Derived / Linked Prices]]&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2098</id>
		<title>How to Integrate the Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2098"/>
				<updated>2019-10-23T16:40:23Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding a Search Form with Priority Display of Room Type */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_id.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form with Priority Display of Room Type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_id.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomType_Id.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:1200px-Result_roomType_Id.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only Available Properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=File:1200px-Result_roomType_Id.png&amp;diff=2097</id>
		<title>File:1200px-Result roomType Id.png</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=File:1200px-Result_roomType_Id.png&amp;diff=2097"/>
				<updated>2019-10-23T16:39:46Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2096</id>
		<title>How to Integrate the Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2096"/>
				<updated>2019-10-23T16:27:23Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding a Search Form with Priority Display of Room Type */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_id.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form with Priority Display of Room Type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_id.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomType_Id.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only Available Properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=File:Css_background_change_roomType_Id.png&amp;diff=2095</id>
		<title>File:Css background change roomType Id.png</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=File:Css_background_change_roomType_Id.png&amp;diff=2095"/>
				<updated>2019-10-23T16:26:47Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: Updated name&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Updated name&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=File:Room_Type_Id.png&amp;diff=2094</id>
		<title>File:Room Type Id.png</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=File:Room_Type_Id.png&amp;diff=2094"/>
				<updated>2019-10-23T16:23:44Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2093</id>
		<title>How to Integrate the Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2093"/>
				<updated>2019-10-23T16:13:43Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding a Search Form with Priority Display of Room Type */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_id.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form with Priority Display of Room Type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_id.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only Available Properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2092</id>
		<title>How to Integrate the Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2092"/>
				<updated>2019-10-23T16:13:24Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Redirecting to the General Search Form with Priority Display of Room Type */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_id.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form with Priority Display of Room Type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only Available Properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=File:Roomtype_by_id.png&amp;diff=2091</id>
		<title>File:Roomtype by id.png</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=File:Roomtype_by_id.png&amp;diff=2091"/>
				<updated>2019-10-23T16:12:51Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=File:Roomtype_by_ID.png&amp;diff=2090</id>
		<title>File:Roomtype by ID.png</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=File:Roomtype_by_ID.png&amp;diff=2090"/>
				<updated>2019-10-23T16:02:17Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: Milka uploaded a new version of File:Roomtype by ID.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=File:Roomtype_by_ID.png&amp;diff=2089</id>
		<title>File:Roomtype by ID.png</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=File:Roomtype_by_ID.png&amp;diff=2089"/>
				<updated>2019-10-23T15:49:30Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: Milka uploaded a new version of File:Roomtype by ID.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=File:Roomtype_by_ID.png&amp;diff=2088</id>
		<title>File:Roomtype by ID.png</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=File:Roomtype_by_ID.png&amp;diff=2088"/>
				<updated>2019-10-23T15:48:51Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: Milka uploaded a new version of File:Roomtype by ID.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2087</id>
		<title>How to Add the Booking Engine Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2087"/>
				<updated>2019-10-23T15:09:11Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Showing only available properties */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form with Priority Display of Room Type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only Available Properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2086</id>
		<title>How to Add the Booking Engine Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2086"/>
				<updated>2019-10-23T15:08:55Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding a search form with priority display of room type */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form with Priority Display of Room Type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only available properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2085</id>
		<title>How to Add the Booking Engine Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2085"/>
				<updated>2019-10-23T15:08:26Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding a search form */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form with priority display of room type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only available properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2084</id>
		<title>How to Add the Booking Engine Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2084"/>
				<updated>2019-10-23T15:08:12Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Redirecting to the general search form with priority display of room type */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form with priority display of room type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only available properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2083</id>
		<title>How to Add the Booking Engine Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Add_the_Booking_Engine_Search_Widget_in_Your_Website&amp;diff=2083"/>
				<updated>2019-10-23T15:07:37Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Redirecting to the general search form */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the general search form with priority display of room type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form with priority display of room type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only available properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2082</id>
		<title>How to Integrate the Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2082"/>
				<updated>2019-10-23T14:48:58Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Showing only available properties */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form with Priority Display of Room Type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only Available Properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2081</id>
		<title>How to Integrate the Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2081"/>
				<updated>2019-10-23T14:48:31Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding a search form with priority display of room type */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form with Priority Display of Room Type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only available properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2080</id>
		<title>How to Integrate the Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2080"/>
				<updated>2019-10-23T14:47:54Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Adding a search form */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a Search Form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form with priority display of room type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only available properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2079</id>
		<title>How to Integrate the Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2079"/>
				<updated>2019-10-23T14:40:04Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Redirecting to the general search form with priority display of room type */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form with Priority Display of Room Type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form with priority display of room type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only available properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	<entry>
		<id>http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2078</id>
		<title>How to Integrate the Search Widget in Your Website</title>
		<link rel="alternate" type="text/html" href="http://help.hoteliga.com/en/index.php?title=How_to_Integrate_the_Search_Widget_in_Your_Website&amp;diff=2078"/>
				<updated>2019-10-23T14:37:03Z</updated>
		
		<summary type="html">&lt;p&gt;Milka: /* Redirecting to the general search form */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction==&lt;br /&gt;
Having the hoteliga booking engine is an important step ahead in order to receive direct reservations to your property.&lt;br /&gt;
&lt;br /&gt;
However, without letting your website users know of the existence of it, won't help them check availability and proceed with bookings.&lt;br /&gt;
&lt;br /&gt;
Hoteliga team provides the tools to your web developer to integrate a link or a widget into your existing website. &lt;br /&gt;
&lt;br /&gt;
== Redirecting to the General Search Form ==&lt;br /&gt;
&lt;br /&gt;
A way to do achieve this, is to add a button that links your existing website to the Booking engine. &lt;br /&gt;
&lt;br /&gt;
First, add this link to your HTML file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, add the styling in the Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/yeq06tax/1/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Redirecting to the general search form with priority display of room type ==&lt;br /&gt;
This can be achieved using '''rtid''' on home page. '''Rtid''' refers to the room type ID, that is, the type of apartment you want to prioritize in search results.&lt;br /&gt;
&lt;br /&gt;
Suppose you want to prioritize ID 2.&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
After adding the &amp;quot;book now&amp;quot; button next to each compartment, you put the '''rtid=number''' of the page in the link as follows: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;a href=&amp;quot;https://book.hoteliga.com/demohoteliga?rtid=2&amp;quot; class=&amp;quot;hoteliga-button&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span&amp;gt;&amp;lt;i class=&amp;quot;fa glyphicon fa-chevron-circle-right&amp;quot; style=&amp;quot;padding-right:5px;&amp;quot;&amp;gt;&amp;lt;/i&amp;gt;Book now&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/a&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and when the search is completed the user will again see room type ID 2 first.&lt;br /&gt;
&lt;br /&gt;
Always remember to replace the '''demohoteliga''' with your hoteliga domain.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
And add the styling in Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteliga-button {&lt;br /&gt;
  padding: 10px;&lt;br /&gt;
  border: 1px solid #000;&lt;br /&gt;
}&lt;br /&gt;
.hoteliga-button:active, .hoteliga-button:hover, .hoteliga-button:visited, .hoteliga-button:link {&lt;br /&gt;
  color: inherit;&lt;br /&gt;
  text-decoration: none;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/7ysu6n1x/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form ==&lt;br /&gt;
A widget, as mentioned before, is a standalone area component that performs a certain function. In this case, this widget contains a search form, so guests can select dates without leaving the website.&lt;br /&gt;
&lt;br /&gt;
When guests select a specific room on the hotel website for specific dates, and clicks &amp;quot;book now&amp;quot;, they will be redirected to Booking Engine and continue from this point.&lt;br /&gt;
&lt;br /&gt;
Using this widget searching becomes way faster, since we avoid redirection to Booking engine's home page.&lt;br /&gt;
&lt;br /&gt;
Implementation of the search form widget is separated into 3 parts.&lt;br /&gt;
&lt;br /&gt;
First, place the following code in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Second, place the following code in your CSS file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And third, place the following code in your JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 10; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 5; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}'.format(domain, df, myf, dt, myt, promocode)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
});&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find the example [https://jsfiddle.net/hoteliga/ux5m6bx2/ here].'''&lt;br /&gt;
&lt;br /&gt;
== Adding a search form with priority display of room type ==&lt;br /&gt;
Rtid refers to the room type ID, that is, the type of apartment you want to prioritize in search results. If you plan to put a separate search widget next to each room type on the accommodation website, then:&lt;br /&gt;
&lt;br /&gt;
Suppose you want to show ID 2 first&lt;br /&gt;
&lt;br /&gt;
[[File:Roomtype_by_ID.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Place the room type ID in the search widget on the site next to the compartment you want to search.&lt;br /&gt;
&lt;br /&gt;
[[File:Room_type_ID_form.png|800px]]&lt;br /&gt;
&lt;br /&gt;
Eg, for the room type with ID 2 to be prioritized, set the number in the value attribute. &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
Add this in your HTML file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;roomTypeId&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;2&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Update the relevant CSS class from &amp;quot;Appearance&amp;quot; on the machine in the correct color, so the selected room type stands out with different background-color.&lt;br /&gt;
&lt;br /&gt;
[[File:Css_background_change_roomTypeId.png]]&lt;br /&gt;
&lt;br /&gt;
Then, in the Css file add the styling:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100px;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add this code in the JavaScript file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'demohoteliga'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;rtid={6}'.format(domain, df, myf, dt, myt, promocode, rtid)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var rtid = $(&amp;quot;#roomTypeId&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, rtid);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The result is the first selected partition with the optional color set in CSS.&lt;br /&gt;
&lt;br /&gt;
[[File:Result_roomTypeId.png|1000px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/okcvmsL1// here].'''&lt;br /&gt;
&lt;br /&gt;
== Showing only available properties ==&lt;br /&gt;
When you want to show only the available rooms in the search just use available (av) attribute as below:&lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;'''&lt;br /&gt;
&lt;br /&gt;
In the HTML file add the search form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;div class=&amp;quot;hoteligaForm&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;from&amp;quot;&amp;gt;From&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;from&amp;quot; name=&amp;quot;from&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;to&amp;quot;&amp;gt;to&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;to&amp;quot; name=&amp;quot;to&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;hidden&amp;quot; id=&amp;quot;av&amp;quot; name=&amp;quot;roomTypeId&amp;quot; value=&amp;quot;1&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;label for=&amp;quot;promocode&amp;quot;&amp;gt;promo code&amp;lt;/label&amp;gt;&lt;br /&gt;
    &amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;promocode&amp;quot; name=&amp;quot;promocode&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;button id=&amp;quot;searchBtn&amp;quot;&amp;gt;Search&amp;lt;/button&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Styling of the form achieved by adding this code in your Css file:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;.hoteligaForm{&lt;br /&gt;
  border: 1px solid black;&lt;br /&gt;
  padding: 30px;&lt;br /&gt;
  width: fit-content;&lt;br /&gt;
}&lt;br /&gt;
.hoteligaForm,&lt;br /&gt;
input,&lt;br /&gt;
button {&lt;br /&gt;
    margin-bottom: 20px;&lt;br /&gt;
    font-size: 16px;&lt;br /&gt;
    display: block;&lt;br /&gt;
    font-family: Arial, Helvetica, sans-serif;&lt;br /&gt;
}&lt;br /&gt;
input {&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    text-align: center;&lt;br /&gt;
}&lt;br /&gt;
#searchBtn {&lt;br /&gt;
    color: white;&lt;br /&gt;
    width: 100%;&lt;br /&gt;
    background-color: blue;&lt;br /&gt;
}&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And finally, adding this code in you JS file, and replace the '''demohoteliga''' with your hoteliga domain:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;var minArrivalOffset = 0; // minimum days ahead that one can book&lt;br /&gt;
var minStayDays = 3; // minimum stay in days at hotel&lt;br /&gt;
var maxStayDays = 31; // maximum stay in days at hotel&lt;br /&gt;
var numberOfMonths = 1; // how many months to display in pop-up calendar&lt;br /&gt;
var dateFormat = 'd/m/yy'; // or yy-mm-dd&lt;br /&gt;
var domain = 'fitur'; // your hoteliga domain here&lt;br /&gt;
&lt;br /&gt;
// helper function that returns a date in the future based on days offset&lt;br /&gt;
function getOffsetDate(dateRel, offset) {&lt;br /&gt;
    if (dateRel == null) dateRel = new Date();&lt;br /&gt;
    return new Date(dateRel.getFullYear(), dateRel.getMonth(), dateRel.getDate() + offset);&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// returns the month and year of a date as hoteliga booking engine requires&lt;br /&gt;
function getMonthYearFromDate(inputDate) {&lt;br /&gt;
    return (inputDate.getMonth() + 1) + '-' + inputDate.getFullYear();&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// event that fires when the user selects a date in the 'from'&lt;br /&gt;
// date picker. Min/max allowed dates in the 'to' datepicker&lt;br /&gt;
// are adjusted in this case&lt;br /&gt;
function onSelectDatepicker(selectedDate) {&lt;br /&gt;
    if (this.id == 'from') {&lt;br /&gt;
        var dateMin = $('#from').datepicker(&amp;quot;getDate&amp;quot;);&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;minDate&amp;quot;, getOffsetDate(dateMin, minStayDays));&lt;br /&gt;
        $('#to').datepicker(&amp;quot;option&amp;quot;, &amp;quot;maxDate&amp;quot;, getOffsetDate(dateMin, maxStayDays));&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// this creates string formatting functionality&lt;br /&gt;
// used by getHoteligaResultsUrl()&lt;br /&gt;
if (!String.prototype.format) {&lt;br /&gt;
    String.prototype.format = function() {&lt;br /&gt;
        var args = arguments;&lt;br /&gt;
        return this.replace(/{(\d+)}/g, function(match, number) {&lt;br /&gt;
            return typeof args[number] != 'undefined' ? args[number] : match;&lt;br /&gt;
        });&lt;br /&gt;
    };&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// generates the hoteliga results page where the user will&lt;br /&gt;
// be redirected when the 'search' button is clicked&lt;br /&gt;
function getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av) {&lt;br /&gt;
    return 'https://book.hoteliga.com/{0}/search/results?df={1}&amp;amp;myf={2}&amp;amp;dt={3}&amp;amp;myt={4}&amp;amp;promo={5}&amp;amp;av={6}'.format(domain, df, myf, dt, myt, promocode, av)&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
// code running on page load&lt;br /&gt;
$(function() {&lt;br /&gt;
&lt;br /&gt;
    // initialize the two datepickers&lt;br /&gt;
    $(&amp;quot;#from, #to&amp;quot;).datepicker({&lt;br /&gt;
        dateFormat: dateFormat,&lt;br /&gt;
        defaultDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        minDate: getOffsetDate(null, minArrivalOffset),&lt;br /&gt;
        changeMonth: true,&lt;br /&gt;
        numberOfMonths: numberOfMonths,&lt;br /&gt;
        onSelect: onSelectDatepicker&lt;br /&gt;
    });&lt;br /&gt;
&lt;br /&gt;
    // show initial values (from-to) on textboxes&lt;br /&gt;
    $(&amp;quot;#from&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset));&lt;br /&gt;
    $(&amp;quot;#to&amp;quot;).datepicker().datepicker(&amp;quot;setDate&amp;quot;, getOffsetDate(null, minArrivalOffset + minStayDays));&lt;br /&gt;
&lt;br /&gt;
    // redirect to results page on click of 'search' button&lt;br /&gt;
    $(&amp;quot;#searchBtn&amp;quot;).bind(&amp;quot;click&amp;quot;, function() {&lt;br /&gt;
        var df = $(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var dt = $(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;).getDate();&lt;br /&gt;
        var myf = getMonthYearFromDate($(&amp;quot;#from&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var myt = getMonthYearFromDate($(&amp;quot;#to&amp;quot;).datepicker(&amp;quot;getDate&amp;quot;));&lt;br /&gt;
        var promocode = $(&amp;quot;#promocode&amp;quot;).val();&lt;br /&gt;
        var av = $(&amp;quot;#av&amp;quot;).val();&lt;br /&gt;
        var url = getHoteligaResultsUrl(domain, df, myf, dt, myt, promocode, av);&lt;br /&gt;
        location.href = url;&lt;br /&gt;
    });&lt;br /&gt;
});&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Find this example [https://jsfiddle.net/gv6wdnuj/ here].'''&lt;/div&gt;</summary>
		<author><name>Milka</name></author>	</entry>

	</feed>