<?xml version='1.0' encoding='UTF-8'?><uidget><metadata><name>Carte</name><api_version>1.0</api_version><size height='400' width='400' /><blog en='22' /></metadata><view><content></content><properties><hidden default='&apos;&apos;' name='message' /><select class='uim_version' default='&apos;a&apos;' display='Adresse|Carte personnalisée|Hotels &amp;amp; AirBnb|Ancien mode' name='map_version' title='Type de carte' values='a|c|s|o' /><checkbox class='uic_prop_slider_anim' default='false' help='La largeur de la carte sera ajustée à celle du navigateur de l&apos;internaute. Notez que ce mode désactivera le zoom au scroll de votre souris sur la carte, afin que le visiteur puisse scroller votre site.' name='full_width' value='Pleine largeur d&apos;écran' /><!-- OLD MODE --><checkbox class='uim_scale' default='false' help='Les visiteurs peuvent voir l&apos;échelle sur le bas de la carte' name='scaleCtrl' value='Échelle' /><select class='uim_zoom' default='&apos;large&apos;' display='Aucun|Petit|Large' help='Ajuste la taille de la commande de zoom.&lt;br&gt; Si Aucun est choisi, vos visiteurs ne pourront pas changer le zoom de la carte.' name='zoomCtrl' title='Zoom' values='none|small|large' /><option class='uim_type' default='&apos;m&apos;' display='Plan|Satellite|Mixte|Relief' help='Sélectionnez les types de cartes que vous voulez rendre disponibles.' name='mapTypeCtrl' title='Type de carte' values='m|k|h|p' /><trigger class='uim_draw' help='Arrêter l&apos;édition de la carte' img='/components/UI_Map/h.gif' name='h_btn' node='span' trigger='stopDrawing' /><trigger class='uim_draw' help='Ajouter des petits marqueurs sur la carte' img='/components/UI_Map/dis-m.gif' name='m_btn' node='span' trigger='placeMarker' /><trigger class='uim_draw' help='Dessiner des lignes sur la carte&lt;br&gt;Pour arrêter le dessin, cliquez sur le dernier nœud.&lt;br&gt;Pour ajouter un nœud, déplacez un nœud transparent.&lt;br&gt;Pour supprimer un nœud, cliquez sur un nœud opaque.' img='/components/UI_Map/dis-l.gif' name='l_btn' node='span' trigger='startLine' /><trigger class='uim_draw' help='Dessiner des zones sur la carte&lt;br&gt;Pour terminer la zone, cliquez sur le premier nœud.&lt;br&gt;Pour ajouter un nœud, déplacez un nœud transparent.&lt;br&gt;Pour supprimer un nœud, cliquez sur un nœud opaque.&lt;br&gt;Pour supprimer la zone, supprimez tous ses nœuds.' img='/components/UI_Map/dis-s.gif' name='s_btn' node='span' trigger='startShape' /><!-- / OLD MODE --><!-- CUSTOM MODE --><kml_selector class='uim_kml' default='&apos;&apos;' help='Sélectionner un KML' icon='ui_map' name='kmlFile' /><mymaps_selector class='uim_mymaps' default='&apos;&apos;' help='Carte Google' icon='ui_map' name='kmlFile' /><!-- / CUSTOM MODE --><!-- ADDRESS MODE --><inputText class='uim_address' default='"Avenue Gustave Eiffel, Paris"' name='address' title='Adresse sur la carte' /><number class='uim_zoomLevel' default='10' maximum='20' minimum='1' name='zoomLevel' title='Zoom' /><radio class='uim_type_address' default='&apos;m&apos;' display='Plan|Satellite' help='Sélectionnez les types de cartes que vous voulez rendre disponibles.' name='mapTypeCtrl_address' title='Type de carte' values='m|k' /><!-- / ADDRESS MODE --><!-- HOTELS --><checkbox class='uim_s_dates' default='false' name='s_dates' value='Date de début et de fin' /><date class='uim_s_checkin' format='YYYY-MM-DD' name='s_checkin' title='Date d&apos;arrivée' /><date class='uim_s_checkout' format='YYYY-MM-DD' name='s_checkout' title='Date de sortie' /><checkbox class='uim_s_hidefilters' default='false' name='s_hidefilters' value='Cacher les filtres' /><checkbox class='uim_s_dotlistings' default='false' name='s_dotlistings' value='Affichage en points' /><checkbox class='uim_s_showhotels' default='true' name='s_showhotels' value='Afficher les hôtels' /><checkbox class='uim_s_showairbnbs' default='true' name='s_showairbnbs' value='Afficher les AirBnbs' /><checkbox class='uim_s_showothers' default='true' name='s_showothers' value='Afficher les autres' /><!-- / HOTELS --><!--<hidden name="zoomLevel" default="4"/>--></properties><design_properties><mapStyle class='map_styles' default='0' name='map_style' title='Style de la carte' /><select class='uim_s_mapstyle' default='&apos;d&apos;' display='Défaut|Clair' name='s_mapstyle' title='Style de la carte' values='default|light' /><colors background='split|split|split' class='uim_s_buttoncolors' default='[&apos;rgba(0,119,231, 1)&apos;, &apos;rgba(2,105,202, 1)&apos;, &apos;rgba(2,105,202, 1)&apos;]' display='Fond|Au survol|Activée' elts='3' name='s_buttoncolors' title='Couleurs des boutons' /><colors background='split|split' class='uim_s_hotelscolors' default='[&apos;rgba(255,255,255, 1)&apos;, &apos;rgba(18,92,197, 1)&apos;]' display='Texte|Fond' elts='2' name='s_hotelscolors' title='Couleurs des hôtels' /><colors background='split|split' class='uim_s_rentalscolors' default='[&apos;rgba(255,255,255, 1)&apos;, &apos;rgba(253,92,99, 1)&apos;]' display='Texte|Fond' elts='2' name='s_rentalscolors' title='Couleurs des locations' /></design_properties></view><script>UI_List.UI_Map={initialize:function(t){this.cpt=t
;this.map_created=!1;t.setOptions([&quot;locked&quot;,&quot;footer&quot;,&quot;sticky&quot;])
},onDisplay:function(t){var e=this;this.node=t
;this.findVersion();this.cleanData();this._loadProperties()
;this.sigCtl=new Signal(this);e=this
;this.sigCtl.connect(&quot;Theme.changed&quot;,function(){e.map_created=!1
});this._setFullWidth()
;is_colored()&amp;&amp;sigCtl.connect(&quot;Theme.changed&quot;,function(){
if(!e.loading){e.loading=!0;e._createMap()
;setTimeout(function(){e.loading=!1},500)}})},onShow:function(){
this.findVersion();if(!this.map_created){this._createMap()
;this.map_created=!0}},onSelect:function(){var t=this
;this._loadProperties();this._showProp()
;this.cpt.propertyNode&amp;&amp;&quot;o&quot;==this.cpt.data.map_version&amp;&amp;Misc.poll(function(){
return t.map},function(){t.map.set_select(function(e){
t.cpt.propertyNode.find(&quot;.btn_prop&quot;).enableImg(!1)
;t.cpt.propertyNode.find(&quot;.&quot;+e+&quot;_btn&quot;).enableImg()})})},
onDeselect:function(){
this.map&amp;&amp;&quot;o&quot;==this.cpt.data.map_version&amp;&amp;this.map.stopDrawing()
},onResizeStart:function(){},onResize:function(){},
onResizeStop:function(){this._setFullWidth()},
onMoveStart:function(){
this.node.css(&quot;background&quot;,&quot; #fff url(/components/UI_Map/bg.jpg) repeat top left&quot;)
;this.iframe&amp;&amp;this.iframe.hide()},onMoveStop:function(){
this.iframe&amp;&amp;this.iframe.show();this._setFullWidth()},
onRotateStart:function(){
this.node.css(&quot;background&quot;,&quot; #fff url(/components/UI_Map/bg.jpg) repeat top left&quot;)
;this.iframe&amp;&amp;this.iframe.hide()},onRotateStop:function(){
this.iframe&amp;&amp;this.iframe.show();this._setFullWidth()},
findVersion:function(){
if(this.cpt.from_clone&amp;&amp;&quot;o&quot;==this.cpt.data.map_version){
statusController.message(&quot;Nouveau module Carte : pour personnaliser votre carte, utilisez le type Carte personnalis\xe9e&quot;,&quot;warning&quot;)
;this.cpt.data.map_version=&quot;a&quot;
}else this.cpt.data.map_version||(this.useAPI()?this.cpt.data.map_version=&quot;o&quot;:this.cpt.data.kmlFile?&quot;google_drive&quot;==this.cpt.data.kmlFile.api?this.cpt.data.map_version=&quot;c&quot;:this.cpt.data.map_version=&quot;o&quot;:this.cpt.data.map_version=&quot;a&quot;)
},cleanData:function(){this.findVersion()
;if(&quot;o&quot;!=$.extend({},this.cpt.data).map_version){
delete this.cpt.data.lines;delete this.cpt.data.shapes
;delete this.cpt.data.markers;delete this.cpt.data.message
;delete this.cpt.data.zoomCtrl;delete this.cpt.data.map_style}},
_loadProperties:function(){
var t=this,e=$(this.component.propertyNode).add(this.component.propertyDesignNode)
;this.pn=e;if(&quot;o&quot;!=this.cpt.data.map_version){
$(&apos;li.uim_version select option[value=&quot;o&quot;]&apos;,e).remove()
;$(&apos;li.uim_type input[value=&quot;h&quot;], li.uim_type input[value=&quot;p&quot;]&apos;).parent().hide()
}
$(&quot;span.propContainer, li.propContainer&quot;,e).not(&quot;li.uic_prop_slider_anim, li.uim_version&quot;).hide()
;switch(this.cpt.data.map_version){case&quot;a&quot;:
$(&quot;li.uim_type_address&quot;).val(this.cpt.data.mapTypeCtrl_address?this.cpt.data.mapTypeCtrl_address:this.cpt.data.mapTypeCtrl[0])
;$(&quot;li.uim_type_address, li.uim_address, li.uim_zoomLevel&quot;,e).show()
;break;case&quot;c&quot;:$(&quot;li.uim_mymaps&quot;,e).show();break;case&quot;s&quot;:
$(&apos;li[class^=&quot;uim_s_&quot;], li.uim_zoomLevel, li.uim_address&apos;,e).show()
;$(&quot;li.uim_s_checkin, li.uim_s_checkout&quot;,e).toggle(this.cpt.data.s_dates||!1)
;break;case&quot;o&quot;:
$(&apos;li.uim_type input[value=&quot;h&quot;], li.uim_type input[value=&quot;p&quot;]&apos;).parent().show()
;$(&quot;li.uim_type&quot;).val(this.cpt.data.mapTypeCtrl)
;$(&quot;li.uim_type, li.uim_scale, li.uim_zoom, li.uim_zoomLevel, li.map_styles, li.uim_kml, span.uim_draw&quot;,e).show()
}
$(&quot;li.uim_address input&quot;,e).off().trigger_enter().on(&quot;change blur enter&quot;,function(){
t.cpt.data.address=this.value;t._createMap()})},
useAPI:function(){
var t=this.cpt.data.shapes&amp;&amp;this.cpt.data.shapes.find(function(t){
return t.points})
;return!this.cpt.from_clone&amp;&amp;(this.cpt.data.markers&amp;&amp;this.cpt.data.markers.length&gt;0||t||this.cpt.data.lines&amp;&amp;this.cpt.data.lines.length&gt;0||this.cpt.data.map_style||this.cpt.data.map_version&amp;&amp;&quot;o&quot;==this.cpt.data.map_version)
},_init:function(){eval(&quot;this.map=ggmap&quot;+this.uniqueNb)
;if(&quot;editor&quot;==v.mode){var self=this
;if(this.useAPI())if(this.map){
this.map.propertyChangedCallback(function(t,e){
historyController.offRecords(function(){self.cpt.setData(t,e)})
});this.map.initParams(this.cpt.data,this.kmlUrl())
}else setTimeout(function(){this._init()},500)}},
getStay22Color:function(t){
return(t.startsWith(&quot;hsl&quot;)?hslToHex.apply(this,Color.hslToArray(t)):$.fn.rgbToHex(t)).replace(&quot;#&quot;,&quot;&quot;)
},checkStay22Dates:function(){this.cpt.data.s_checkin},
_createMap:function(){
this.uniqueNb=this.cpt.component_type.getCounter()
;this.node.empty();this.map=null;var t=this
;this.progress&amp;&amp;this.progress.update(100)
;var e=this.progress=this.cpt.statusLoading();this.cpt.W()
;this.cpt.data.full_width&amp;&amp;this.component.node.find(&quot;div:first&quot;).width()
;this.waitImg=$(&apos;&lt;img src=&quot;/assets/loadingAnimation.gif?infinite_cache&quot;/&gt;&apos;).appendTo(this.node.css(&quot;background&quot;,&quot; #fff url(/components/UI_Map/bg.jpg?infinite_cache) repeat top left&quot;))
;var i=&quot;&quot;,a=!1,s=Date.format.toUpperCase(),o={config:{
dateFormat:&quot;YYYY-MM-DD&quot;}};switch(this.cpt.data.map_version){
case&quot;o&quot;:
i+=&quot;editor&quot;==v.mode||(&quot;&quot;+window.location).match(/\/\/localhost/)?&quot;/&quot;:&quot;https://www.sitew.com/&quot;
;i+=&quot;api/googlemap?&amp;version_mode=&quot;+v.mode+&quot;&amp;cptid=&quot;+(this.cpt.id||&quot;&quot;)
;break;case&quot;c&quot;:
if(this.cpt.data.kmlFile&amp;&amp;&quot;google_drive&quot;==this.cpt.data.kmlFile.api)i=&quot;https://www.google.com/maps/d/embed?vomp=1&amp;mid=&quot;+this.cpt.data.kmlFile.id;else{
a=!0
;i=&quot;https://www.google.com/maps/embed/v1/place?key=AIzaSyCWforQeNUlsCkrtK_BcmLtfifWJ0Ic0d0&amp;&amp;zoom=10&amp;maptype=roadmap&amp;q=Avenue Gustave Eiffel, Paris&quot;
}break;case&quot;s&quot;:var c={aid:&quot;sitew&quot;,hideshare:!0,hidenavbar:!0,
hidebrandlogo:!0,hideppn:!0,disableautohover:!0,openmenu:&quot;null&quot;
},n={
buttoncolor:this.getStay22Color(this.cpt.getData(&quot;s_buttoncolors&quot;)[0]),
buttoncolorhover:this.getStay22Color(this.cpt.getData(&quot;s_buttoncolors&quot;)[1]),
buttoncoloractive:this.getStay22Color(this.cpt.getData(&quot;s_buttoncolors&quot;)[2]),
hotelscolor:this.getStay22Color(this.cpt.getData(&quot;s_hotelscolors&quot;)[1]),
rentalscolor:this.getStay22Color(this.cpt.getData(&quot;s_rentalscolors&quot;)[1]),
hotelsfontcolor:this.getStay22Color(this.cpt.getData(&quot;s_hotelscolors&quot;)[0]),
rentalsfontcolor:this.getStay22Color(this.cpt.getData(&quot;s_rentalscolors&quot;)[0])
},p=moment(this.cpt.data.s_checkin||moment().format(o.config.dateFormat),o.config.dateFormat),r=moment(this.cpt.data.s_checkout||moment().add(1,&quot;d&quot;).format(o.config.dateFormat),o.config.dateFormat),l=!1
;if((!this.cpt.data.s_checkin||!this.cpt.data.s_checkout)&amp;&amp;this.cpt.data.s_dates){
this.cpt.data.s_checkin=p.format(o.config.dateFormat)
;this.cpt.data.s_checkout=r.format(o.config.dateFormat);l=!0}
if(p&gt;r){this.cpt.data.s_checkout=p.format(o.config.dateFormat)
;this.cpt.data.s_checkin=r.format(o.config.dateFormat);l=!0
}else if(p.startOf(&quot;d&quot;).isSame(r.startOf(&quot;d&quot;))){l=!0
;this.cpt.data.s_checkout=moment(this.cpt.data.s_checkin,o.config.dateFormat).add(1,&quot;d&quot;).format(o.config.dateFormat)
}var h=this.cpt.data.s_checkin,d=this.cpt.data.s_checkout
;l&amp;&amp;&quot;editor&quot;==v.mode&amp;&amp;setTimeout(function(){
$(&quot;li.uim_s_checkin .display_input&quot;).val(moment(h,o.config.dateFormat).format(s))
;$(&quot;li.uim_s_checkout .display_input&quot;).val(moment(d,o.config.dateFormat).format(s))
;$(&quot;li.uim_s_checkin .value_input&quot;,this.pn).val(h)
;$(&quot;li.uim_s_checkout .value_input&quot;,this.pn).val(d)},100)
;var m={};$.each(this.cpt.data,function(t,e){
t.indexOf(&quot;s_&quot;,0)&gt;-1&amp;&amp;!t.indexOf(&quot;color&quot;)&gt;-1&amp;&amp;(m[t.replace(&quot;s_&quot;,&quot;&quot;)]=e)
});var u={checkin:this.cpt.data.s_checkin,
checkout:this.cpt.data.s_checkout};$.extend(m,c,n,u,{
address:this.cpt.data.address,zoom:this.cpt.data.zoomLevel})
;if(!this.cpt.data.s_dates){delete m.checkin;delete m.checkout
;delete m.s_dates}sigCtl.connectOnce(&quot;Theme.changed&quot;,function(){
t._createMap()});i=&quot;https://www.stay22.com/embed/gm?&quot;+$.param(m)
;break;default:
i=&quot;https://www.google.com/maps/embed/v1/place?key=AIzaSyCWforQeNUlsCkrtK_BcmLtfifWJ0Ic0d0&amp;&amp;zoom=&quot;+this.cpt.data.zoomLevel+&quot;&amp;maptype=&quot;+({
m:&quot;roadmap&quot;,k:&quot;satellite&quot;
}[this.cpt.data.mapTypeCtrl_address]||&quot;roadmap&quot;)
;this.cpt.data.address&amp;&amp;this.cpt.data.address.length&gt;3?i+=&quot;&amp;q=&quot;+encodeURI(this.cpt.data.address):i+=&quot;&amp;q=&quot;+encodeURI(this.cpt.data.markerPosition)
}if(a&amp;&amp;&quot;viewer&quot;==v.mode)this.cpt.node.hide();else{var _={
position:&quot;absolute&quot;,left:this.cpt.W(),display:&quot;none&quot;}
;/mobile/.test(deviceController.device)&amp;&amp;(_={display:&quot;none&quot;})
;this.iframe=$(&apos;&lt;iframe src=&quot;&apos;+i+&apos;&quot; scrolling=&quot;no&quot; frameborder=&quot;0&quot; name=&quot;ggmap&apos;+this.uniqueNb+&apos;&quot;&gt;&lt;/iframe&gt;&apos;).width(&quot;100%&quot;).height(&quot;100%&quot;).css(_).one(&quot;load error abort&quot;,function(i){
t.waitImg.hide();t.iframe.css(&quot;left&quot;,0);t.iframe.show()
;&quot;o&quot;==t.cpt.data.map_version&amp;&amp;&quot;load&quot;==i.type&amp;&amp;t._init()
;e.update(100)}).appendTo(this.node)}
&quot;c&quot;==this.cpt.data.map_version&amp;&amp;t.iframe.on(&quot;load&quot;,function(){
t.iframe.attr(&quot;src&quot;,t.iframe.attr(&quot;src&quot;).replace(&quot;vomp=1&quot;,&quot;&quot;))
;t.iframe.off(&quot;load&quot;)})},kmlUrl:function(){
var t=this.cpt.data.kmlFile
;if(t)return&quot;application/vnd.google-apps.map&quot;==t.type?&quot;https://www.google.com/maps/d/kml?forcekml=1&amp;mid=&quot;+t.id:cdn_url(t.url).replace(/(https?\:)?\/\//,&quot;https://&quot;)
},onPropertyChanged:function(t){
if(this.map||!this.map&amp;&amp;&quot;o&quot;!=this.cpt.data.map_version){
if(this.map&amp;&amp;&quot;o&quot;==this.cpt.data.map_version){
t.include(&quot;zoomCtrl&quot;)&amp;&amp;this.map.showZoomCtrl(this.cpt.data.zoomCtrl,!0,this.cpt.data)
;t.include(&quot;mapTypeCtrl&quot;)&amp;&amp;this.map.showMapTypeCtrl(this.cpt.data)
;t.include(&quot;scaleCtrl&quot;)&amp;&amp;this.map.showScaleCtrl(this.cpt.data.scaleCtrl,!0,this.cpt.data)
}t.include(&quot;mapTypeCtrl_address&quot;)&amp;&amp;this._createMap()
;t.include(&quot;stopDrawing&quot;)&amp;&amp;this.map.stopDrawing()
;t.include(&quot;placeMarker&quot;)?this.map.placeMarker():t.include(&quot;startShape&quot;)?this.map.startShape():t.include(&quot;startLine&quot;)&amp;&amp;this.map.startLine()
;t.include(&quot;kmlFile&quot;)&amp;&amp;(&quot;o&quot;==this.cpt.data.map_version?this.map.initKml(this.kmlUrl()):this._createMap())
;if(t.include(&quot;full_width&quot;)){this._setFullWidth()
;this._createMap()}t.include(&quot;map_style&quot;)&amp;&amp;this._createMap()
;if(t.include(&quot;map_version&quot;)){this._loadProperties()
;this._createMap()}if(&quot;s&quot;==this.cpt.data.map_version){
(t.include(&quot;s_dotlistings&quot;)||t.include(&quot;s_hidefilters&quot;)||t.include(&quot;s_checkin&quot;)||t.include(&quot;s_checkout&quot;)||t.include(&quot;s_mapstyle&quot;)||t.include(&quot;s_showhotels&quot;)||t.include(&quot;s_showairbnbs&quot;)||t.include(&quot;s_showothers&quot;))&amp;&amp;this._createMap()
;if(t.include(&quot;s_buttoncolors&quot;)||t.include(&quot;s_hotelscolors&quot;)||t.include(&quot;s_rentalscolors&quot;)){
var e=this;if(!this.loading){this.loading=!0;this._createMap()
;setTimeout(function(){e.loading=!1},500)}}
if(t.include(&quot;s_dates&quot;)){this._loadProperties()
;this._createMap()}}}else{e=this;setTimeout(function(){
e.onPropertyChanged(t)},500)}this.toggleStyleProp()},
_showProp:function(){blockSelector.selected_blocks.length},
toggleStyleProp:function(){
var t=$(this.cpt.propertyNode).add(this.cpt.propertyDesignNode)
;&quot;&quot;==this.cpt.data.mapTypeCtrl||this.cpt.data.mapTypeCtrl.indexOf(&quot;m&quot;)&gt;-1?$(&quot;.prop_mapStyle&quot;,t).show():$(&quot;.prop_mapStyle&quot;,t).hide()
},_setFullWidth:function(){
this.component.setFullWidth(this.component.data.full_width)},
onDeviceChanged:function(){this._createMap()}};</script></uidget>