<?xml version="1.0" encoding="UTF-8"?>
<krpano version="1.19-pr16">

    
  <!-- Spot Style - Default Point Spot Style -->


  <style name="IconDefaultPointSpotStyle"
         url="%FIRSTXML%/spots/solefelsenhotel_fb_960x960px_rund_user_defaultpoint0.png"
         visible="false"
         edge="center"
         zoom="true"

         onloaded="if(scene[get(xml.scene)].planar,if(zoom,set(zoom, false);););showPermanentTooltip(all);"
         onover="onoverIconDefaultPointSpotStyle"
         onout="onoutIconDefaultPointSpotStyle"

         height="60"
         width="60"
         />
  <action name="onoverIconDefaultPointSpotStyle">
tween(scale, 1.2);

pauseautorotation(forcehotspot);

  </action>
  <action name="onoutIconDefaultPointSpotStyle">
    tween(scale, 1);

resumeautorotation(forcehotspot);

  </action>



  <!-- unsupported kind of display : PointMap -->


<!-- ********** -->
<!-- Titel -->
<!-- id : title -->
<!-- ********** -->

  <events name="title_events" 
    onTourStart="showtitle();"
    hidetourcontrols="hidetitle();" 
    showtourcontrols="showtitle();" 
    onnewpano="updatetitle();"
    changetourlanguage="changeLanguagetitle"
    keep="true" />

  <action name="hidetitle">set(layer[title].visible, false);</action>
  <action name="showtitle">set(layer[title].visible, true );</action>

  <action name="changeLanguagetitle">
    updatetitle();
  </action>

  <action name="updatetitle">
    getmessage(layer[title].html, get(scene[get(xml.scene)].titleid));
    escape(layer[title].html);
  </action>
  <layer name="title" keep="true" zorder="1"
         type="text"
         align="top" x="0" y="7"
         bg="false"
         bgborder="0"
         alpha="1"
         visible="false"
         capture="false" handcursor="false" enabled="false"
         interactivecontent="false" 
         txtshadow="1.0 1.0 4.0 0x000000 1.0"
         css="text-align:center;
              color:#ffffff;
              font-family:Arial;
              font-weight:bold;
              font-size:16px;"/>

<!-- ********** -->
<!-- Kopfzeile -->
<!-- id : header -->
<!-- ********** -->

  <layer name="header"
         keep="true"
         url="%FIRSTXML%/graphics/header/header.png" 
         bgalpha="0.40000000000000002"
         align="top"
         x="0"
         y="0"
         zorder="2"
         enabled="false"
         capture="true"
         visible="false"
         height="30"
         width="100%"
         accuracy="1"
         />

  <events name="headerevents"
    onTourStart="showheader();"
    hidetourcontrols="hideheader();"
    showtourcontrols="showheader();"
    keep="true" />

  <action name="hideheader">
    set(layer[header].visible, false);
  </action>
  <action name="showheader">
    set(layer[header].visible, true);
  </action>

<!-- ********** -->
<!-- Panorama Kombobox -->
<!-- id : panoramacombobox -->
<!-- ********** -->

  <!-- path to the scrollarea plugin -->
  <panoramacombobox_kr_scrollareaplugin
    url.html5="%FIRSTXML%/graphics/scrollarea.js"
    url.flash="%FIRSTXML%/graphics/scrollarea.swf"
    />

  <!-- core internal layer styles -->
  <style name="panoramacombobox_kr_container_style" type="container" maskchildren="true" bgcapture="true" visible="false" onclick="panoramacombobox_kr_onclick_event();" mergedalpha="false" alpha="1.0" />
  <style name="panoramacombobox_kr_marker_style" type="text" align="righttop" edge="center" html="▼" havemarkersize="false" onautosized="set(havemarkersize,true);" mergedalpha="false" alpha="1.0" />
  <style name="panoramacombobox_kr_item_style"  type="text" wordwrap="false" vcenter="true" align="lefttop" onover="if(!combbox_item_pressed,onoveritem());asyncloop(hovering,,if(!combbox_item_pressed,onoutitem()));" ondown="onoveritem(); set(combbox_item_pressed,true);" onup="onoutitem(); set(combbox_item_pressed,false);" onoveritem="set(bg,true);" onoutitem="set(bg,false);" mergedalpha="false" alpha="1.0" />



  <panoramacombobox_kr_design name="default" margin="2" open_close_speed="0.25">
    <!-- default design - white box with black text and blue selection -->
    <style name="panoramacombobox_kr_container_style" bgalpha="1.0" bgcolor="0xFFFFFF" bgborder="1 0xFFFFFF 0.5" bgroundedge="1" bgshadow="0 1 3 0x000000 1.0" />
    <style name="panoramacombobox_kr_marker_style" css="color:#FFFFFF;" bg="false" txtshadow="0 0 2 0x000000 1" />
    <style name="panoramacombobox_kr_item_style" css="color:#222222;" padding="4" bg="false" bgcolor="0xC7E4FC" bgalpha="1.0" bgroundedge="1" txtshadow="0 0 1 0xFFFFFF 1.0" />
  </panoramacombobox_kr_design>




  <!-- internal events -->
  <events name="panoramacombobox_kr_xml_plugin_events" keep="true"
    onxmlcomplete="panoramacombobox_kr_parse_xml_elements();"
    onresize="panoramacombobox_kr_closelist();"
    />

  <!-- krpano version check -->
  <action name="panoramacombobox_kr_versioncheck" autorun="preinit">
    if(build LT '2017-09-13',
      error('combobox.xml - too old krpano version!');
      set(events[panoramacombobox_kr_xml_plugin_events].name, null);
      set(action[panoramacombobox_kr_addComboboxLayer].content, '');
      set(action[panoramacombobox_kr_removeComboboxLayer].content, '');
    );
  </action>

  <action name="panoramacombobox_kr_parse_xml_elements" scope="local">
        copy(cb, combobox["panoramacombobox"]);
        if(cb AND cb.name AND cb.parsed != true,
          set(cb.parsed, true);
          panoramacombobox_kr_addComboboxLayer(get(cb.name), get(cb.design));
          copy(ly, layer[get(cb.name)]);
          copyattributes(get(ly), get(cb));
          set(ly.keep, true);
          def(item_cnt, integer, get(cb.item.count));
          if(item_cnt GT 0,
            def(item_i, integer, 0);
            loop(item_i LT  item_cnt,
              panoramacombobox_kr_additem(get(ly.name), get(cb.item[get(item_i)].name), get(cb.item[get(item_i)].caption), get(cb.item[get(item_i)].onclick));
              inc(item_i);
            );
          );
        );
  </action>

  <!-- dynamically add a combobox layer -->
  <action name="panoramacombobox_kr_addComboboxLayer" scope="local" args="cbname, design">
    <!-- create the layer -->
    addlayer(get(cbname));
    copy(cb, layer[get(cbname)]);
    set(cb.keep, true);

    <!-- copy the design settings (or set defaults) -->
    if(!panoramacombobox_kr_design[get(design)].name, set(design,'default'));
    copy(cb.cbdesign, panoramacombobox_kr_design[get(design)]);
    calc(cb.margin, cb.cbdesign.margin !== null ? cb.cbdesign.margin : 2);
    calc(cb.open_close_speed, cb.cbdesign.open_close_speed !== null ? cb.cbdesign.open_close_speed : 0.25);
    <!-- load the styles and copy the design style settings -->
    cb.loadstyle(panoramacombobox_kr_container_style);
    copyattributes(get(cb), get(cb.cbdesign.style[panoramacombobox_kr_container_style]));

    <!-- add/build/map actions -->
    calc(cb.addItem,          'panoramacombobox_kr_additem(' + cbname + ', null, "%%1", "%%2");');
    calc(cb.addNamedItem,     'panoramacombobox_kr_additem(' + cbname + ', "%%1", "%%2", "%%3");');
    calc(cb.addIdItem,        'panoramacombobox_kr_additem(' + cbname + ', "%%1", "%%2", "%%3");');
    calc(cb.selectItem,       'panoramacombobox_kr_finditem(' + cbname + ', "%%1", __cb_fi); if(__cb_fi GE 0, panoramacombobox_kr_selectitem(' + cbname + ', get(__cb_fi))); delete(__cb_fi);');
    calc(cb.selectItemByName, 'panoramacombobox_kr_selectitem(' + cbname + ', "%%1");');
    calc(cb.selectIdItem,     'panoramacombobox_kr_selectitem(' + cbname + ', "%%1");');
    calc(cb.removeAll,        'panoramacombobox_kr_removeitems(' + cbname + ');');
    calc(cb.openList,         'panoramacombobox_kr_openlist(' + cbname + ');');
    calc(cb.closeList,        'panoramacombobox_kr_closelist(' + cbname + ');');

    <!-- create sub-layers -->
    def(saname, string, 'panoramacombobox_kr_%1_scrollarea');
    addlayer(get(saname));
    copy(sa, layer[get(saname)]);
    copy(sa.parent, cbname);
    copy(sa.url, panoramacombobox_kr_scrollareaplugin.url);
    copy(sa.keep, true);
    copy(sa.align, lefttop);
    set(sa.direction, v);
    set(sa.enabled, false);
    set(sa.width, 100%);
    set(sa.height, 100%);
    copy(cb.scrollarea, sa);

    def(mkname, string, 'panoramacombobox_kr_%1_marker');
    addlayer(get(mkname));
    copy(mk, layer[get(mkname)]);
    copy(mk.parent, saname);
    copy(mk.keep, true);
    mk.loadstyle(panoramacombobox_kr_marker_style);
    copyattributes(get(mk), get(cb.cbdesign.style[panoramacombobox_kr_marker_style]));
    copy(cb.marker, mk);

    <!-- item data array -->
    cb.createarray('item');

    <!-- item autosizing information -->
    set(cb.autosize_i, 0);
    set(cb.autosize_cnt, 0);
    set(cb.autosize_max_w, 0);
    set(cb.autosize_max_h, 0);

    set(cb.lastselecteditemindex, 0);
    set(cb.selecteditemindex, 0);
  </action>


  <!-- dynamically remove a combobox element -->
  <action name="panoramacombobox_kr_removeComboboxLayer" scope="local" args="cbname">
    if(layer[get(cbname)],
      copy(cb, layer[get(cbname)]);
      if(cb === global.openedcombobox, delete(global.openedcombobox));
      if(cb,
        removelayer(get(cbname), true);
      );
    );
  </action>


  <!-- default onclick event for combobox elements: open the list -->
  <action name="panoramacombobox_kr_onclick_event">
    panoramacombobox_kr_openlist(get(name));
  </action>


  <!-- dynamically add items -->
  <action name="panoramacombobox_kr_additem" scope="local" args="cbname, itemname, itemcaption, itemonclick">
    copy(cb, layer[get(cbname)]);

    <!-- when no item name is set, generate an automatic one -->
    if(itemname === null, calc(itemname, 'autoname_' + cb.item.count); );

    <!-- save the item caption and onclick event -->
    copy(cb.item[get(itemname)].caption, itemcaption);
    copy(cb.item[get(itemname)].onclick, itemonclick);

    inc(cb.autosize_cnt);

    <!-- create the item layer/textfield -->
    calc(itemlayername, 'comboboxitem_' + cbname + '_' + itemname);
    addlayer(get(itemlayername));
    copy(li, layer[get(itemlayername)]);



    li.loadstyle(panoramacombobox_kr_item_style);
    copyattributes(get(li), get(cb.cbdesign.style[panoramacombobox_kr_item_style]));




    copy(li.parent, cb.scrollarea.name);
    copy(li.keep, true);
    copy(li.cblayername, cb.name);
    copy(li.itemname, itemname);
    copy(li.html, itemcaption);
    set(li.onautosized, delayedcall(0,panoramacombobox_kr_item_autosize_update()) );
    set(li.onclick, panoramacombobox_kr_item_onclick() );

    copy(cb.item[get(itemname)].itemlayername, itemlayername);
  </action>


  <!-- onautosized callback from the item textfield -->
  <action name="panoramacombobox_kr_item_autosize_update" scope="local">
    copy(cb, layer[get(caller.cblayername)]);
    inc(cb.autosize_i);
    Math.max(cb.autosize_max_w, caller.width);
    Math.max(cb.autosize_max_h, caller.height);
    if(cb.autosize_i == cb.autosize_cnt, panoramacombobox_kr_align_items(get(cb.name)); );
  </action>


  <!-- align the image and set the combobox size -->
  <action name="panoramacombobox_kr_align_items" scope="local" args="cbname">
    copy(cb, layer[get(cbname)]);
    if(cb.marker.havemarkersize == false OR cb.scrollarea.loaded == false,
      <!-- wait until everything is ready -->
      delayedcall(calc(cb.name + '_waitformarkersize'), 0.01, panoramacombobox_kr_align_items(get(cbname)) );
      ,
      <!-- set the item positions and the combobox size -->
      if(global.openedcombobox === cb, panoramacombobox_kr_closelist() );
      copy(sa, cb.scrollarea);
      calc(itemwidth, cb.margin GT 0 ? -2 * cb.margin : '100%');
      copy(mk_w, cb.marker.width);
      copy(item_cnt, cb.autosize_cnt);

      for(def(item_i, integer, 0), item_i LT item_cnt, inc(item_i),
        copy(li, layer[get(cb.item[get(item_i)].itemlayername)]);
        set(li.x, get(cb.margin));
        copy(li.width, itemwidth);
        copy(li.height, cb.autosize_max_h);
        calc(li.y, cb.margin + item_i * (cb.autosize_max_h + cb.margin));
      );

      if(cb.width == null OR cb.width == cb.lastautosizedwidth,
        <!-- no combobox width (or an autosized width) set - set the largest item width -->
        calc(cb.width, cb.margin + cb.autosize_max_w + 2 + mk_w + cb.margin);
        copy(cb.lastautosizedwidth, cb.width);
      );

      calc(cb.height, 2*cb.margin + cb.autosize_max_h);
      calc(sa.height, cb.margin + item_cnt*(cb.margin+cb.autosize_max_h));
      calc(sa.y, -(cb.selecteditemindex * (cb.autosize_max_h + cb.margin)));
      calc(cb.marker.x, cb.margin + mk_w/2);
      tween(layer[get(cb.name)].marker.y, calc(cb.margin + cb.selecteditemindex*(cb.autosize_max_h + cb.margin) + cb.autosize_max_h/2), 0.1);
    );
  </action>


  <!-- default onclick event for items: select the current item, close the list and call the item onclick event -->
  <action name="panoramacombobox_kr_item_onclick" scope="local">
    copy(cb, layer[get(caller.cblayername)]);
    copy(itemname, caller.itemname);
    panoramacombobox_kr_selectitem(get(cb.name), get(itemname));

    if(global.openedcombobox === cb, panoramacombobox_kr_closelist() );

    if(cb.item[get(itemname)].onclick,
      <!-- call the onclick event after the combobox has closed -->
      delayedcall(get(cb.open_close_speed),
        copy(cb.curitem, cb.item[get(itemname)]);
        callwith(cb,
          cb.item[get(itemname)].onclick();
        );
      );
    );
  </action>


  <!-- select an item -->
  <action name="panoramacombobox_kr_selectitem" scope="local" args="cbname, itemname">
    if(global.combbox_item_pressed != true,
      copy(cb, layer[get(cbname)]);
      copy(cb.lastselecteditemindex, cb.selecteditemindex);
      copy(cb.selecteditemindex, cb.item[get(itemname)].index);
      <!-- call onchange event on selection change -->
      if(cb.lastselecteditemindex != cb.selecteditemindex AND cb.onchange,
        callwith(cb, onchange() );
      );
      if(global.openedcombobox === cb,
        <!-- when opened, just close to the selected item -->
        panoramacombobox_kr_closelist();
        ,
        if(layer[get(cbname)].scrollarea.loaded,
          layer[get(cbname)].scrollarea.stopscrolling();
          calc(offset, cb.selecteditemindex*(cb.autosize_max_h + cb.margin));
          tween(layer[get(cbname)].marker.y, calc(cb.margin + offset + cb.autosize_max_h/2), 0);
          tween(layer[get(cbname)].scrollarea.y, calc(-offset), 0, default, layer[get(cbname)].scrollarea.update(); );
        );
      );
    );
  </action>


  <!-- find an item by its caption, the global variable defined in 'returnvariable' will contain the index  -->
  <action name="panoramacombobox_kr_finditem" scope="local" args="cbname, itemcaption, returnvariable">
    copy(cb, layer[get(cbname)]);
    copy(item_cnt, cb.item.count);
    set(calc('global.' + returnvariable), -1);
    for(def(item_i, integer, 0), item_i LT  item_cnt, inc(item_i),
      if(cb.item[get(item_i)].caption == itemcaption,
        copy(calc('global.' + returnvariable), item_i);
        copy(item_i, item_cnt);
      );
    );
  </action>


  <!-- remove all items (to be able to add new ones) -->
  <action name="panoramacombobox_kr_removeitems" scope="local" args="cbname">
    copy(cb, layer[get(cbname)]);
    if(global.openedcombobox === cb, panoramacombobox_kr_closelist() );

    <!-- remove all item layers -->
    calc(item_i, cb.item.count - 1);
    loop(item_i GE 0,
      removelayer(get(cb.item[get(item_i)].itemlayername));
      dec(item_i);
    );

    <!-- reset the item information -->
    set(cb.item.count, 0);
    set(cb.autosize_i,0);
    set(cb.autosize_cnt, 0);
    set(cb.autosize_max_w, 0);
    set(cb.autosize_max_h, 0);
    set(cb.selecteditemindex, 0);
    set(cb.lastselecteditemindex, 0);
    if(cb.width == cb.lastautosizedwidth, set(cb.width, null));
  </action>


  <!-- open the combobox list -->
  <action name="panoramacombobox_kr_openlist" scope="local" args="cbname">
    <!-- if another combobox is already open, close that one first -->
    if(global.openedcombobox !== null, panoramacombobox_kr_closelist() );

    copy(cb, layer[get(cbname)]);
    copy(global.openedcombobox, cb);

    <!-- find the available screen space above or below the combobox -->
    calc(cbheight, 2*cb.margin + cb.autosize_max_h);
    set(lx1, 0);
    set(ly1, 0);
    copy(lx2, cb.pixelwidth);
    copy(ly2, cbheight);
    layertoscreen(get(cbname), lx1,ly1, lx1,ly1);
    layertoscreen(get(cbname), lx2,ly2, lx2,ly2);
    calc(space_above, ly1 - area.pixely);
    calc(space_below, area.pixelheight - (ly2 - area.pixely));

    <!-- the required space for full opening: -->
    calc(openheight, cb.margin + cb.autosize_cnt*(cb.margin+cb.autosize_max_h) );

    <!-- vertical centered alignment? -->
    calc(cb_edge, cb.edge ? cb.edge : cb.align);
    calc(iscentered, cb_edge == 'left' OR cb_edge == 'center' OR cb_edge == 'right');
    if(iscentered,
      calc(openheight_max, space_above + space_below);
      ,
      Math.max(openheight_max, space_above, space_below);
    );

    <!-- limit the height to the available space (minus some margin) -->
    Math.min(openheight, calc(openheight_max + cbheight - 20));

    <!-- need vertical offset? (depending on the available space and the align/edge setting) -->
    set(yoffset, null);
    calc(top_overflow, -ly1 + area.pixely + openheight/2);
    calc(bottom_overflow, ly2 - area.pixely + openheight/2 - area.pixelheight);
    if(cb.parent,
      <!-- no vertical offset inside other layers, do only a height clipping -->
      Math.max(max_overflow, top_overflow, bottom_overflow, 0);
      sub(openheight, max_overflow);
      ,
      if(iscentered,
        if(openheight GE (area.pixelheight - 20),
          set(yoffset,0);
          ,
          if(top_overflow GT 0, calc(yoffset, cb.y + top_overflow); );
          if(bottom_overflow GT 0, calc(yoffset, cb.y - bottom_overflow); );
        );
      ,
        indexoftxt(isbottomalign, get(cb_edge), 'bottom');
        if(space_above GT space_below,
          if(isbottomalign LT 0, calc(yoffset, cb.y - openheight + cbheight); );
          ,
          if(isbottomalign GE 0, calc(yoffset, cb.y - openheight + cbheight); );
        );
      );
    );
    if(yoffset != null,
      copy(cb.ybackup, cb.y);
      tween(layer[get(cbname)].y, calc(yoffset), get(cb.open_close_speed));
    );

    <!-- center the opened list at the selected item -->
    calc(centeritem_y, -1 * (cb.margin + cb.selecteditemindex*(cb.margin+cb.autosize_max_h) + cb.autosize_max_h/2 - openheight/2));
    clamp(centeritem_y, calc(openheight - cb.scrollarea.height), 0);

    <!-- apply the changes now -->
    tween(layer[get(cbname)].height, get(openheight), get(cb.open_close_speed));
    tween(layer[get(cbname)].scrollarea.y, get(centeritem_y), get(cb.open_close_speed), default, layer[get(cbname)].scrollarea.update(); );

    <!-- special html5/flash case:
       rotating textfields (the marker symbol here) are not possible in
       flash (a flashplayer limitation), so use a rotated symbol instead.
    -->
    if(device.html5,
      tween(layer[get(cbname)].marker.rotate, 90, get(cb.open_close_speed));
      ,
      set(layer[get(cbname)].marker.html, '◀');
    );

    <!-- enable the scrollarea to allow the user to drag it -->
    set(cb.scrollarea.enabled, true);

    <!-- install a global onmousedown event to close the list when clicking at the pano -->
    set(events[panoramacombobox_kr_xml_plugin_events].onmousedown, panoramacombobox_kr_closelist() );
  </action>


  <!-- close the current open list -->
  <action name="panoramacombobox_kr_closelist" scope="local">
    if(global.openedcombobox !== null,
      copy(cb, global.openedcombobox);
      delete(global.openedcombobox);

      <!-- clear the global onmousedown event -->
      set(events[panoramacombobox_kr_xml_plugin_events].onmousedown, null);

      <!-- disable the dragging -->
      set(cb.scrollarea.enabled, false);

      <!-- closing animations -->
      calc(offset, cb.selecteditemindex*(cb.autosize_max_h + cb.margin));
      if(cb.ybackup !== null, tween(cb.y, get(cb.ybackup), get(cb.open_close_speed)));
      layer[get(cb.name)].scrollarea.stopscrolling();
      tween(layer[get(cb.name)].height, calc(2*cb.margin + cb.autosize_max_h), get(cb.open_close_speed));
      tween(layer[get(cb.name)].scrollarea.y, calc(-offset), get(cb.open_close_speed), default, layer[get(cb.name)].scrollarea.update(); );
      tween(layer[get(cb.name)].marker.y, calc(cb.margin + offset + cb.autosize_max_h/2), get(cb.open_close_speed));
      <!-- special html5/flash case: rotate marker or change symbol -->
      if(device.html5,
        tween(layer[get(cb.name)].marker.rotate, 0, get(cb.open_close_speed));
        ,
        set(layer[get(cb.name)].marker.html, '▼');
      );
    );
  </action>

  <events name="panoramacomboboxStartTourEvents" onTourStart="set(layer[panoramacombobox].isStarted, true);if(layer[panoramacombobox].isLoaded,panoramacomboboxShow(););" keep="true" />


  <combobox name="panoramacombobox"
    design=""
    keep="true"
    visible="false"
    zorder="3"
    align="topright"
    x="5" y="40"
    onloaded="panoramacomboboxLoaded();"
    isStarted="false"
    isLoaded="false"
    />

  <action name="panoramacomboboxLoaded">

    layer[panoramacombobox].removeAll();


    panoramacomboboxAddItem(pano47_title, pano47, pano47, false);
    panoramacomboboxAddItem(pano49_title, pano49, pano49, false);
    panoramacomboboxAddItem(pano51_title, pano51, pano51, false);
    panoramacomboboxAddItem(pano57_title, pano57, pano57, false);
    panoramacomboboxAddItem(pano59_title, pano59, pano59, false);
    panoramacomboboxAddItem(pano61_title, pano61, pano61, false);
    panoramacomboboxAddItem(pano67_title, pano67, pano67, false);
    panoramacomboboxAddItem(pano63_title, pano63, pano63, false);
    panoramacomboboxAddItem(pano65_title, pano65, pano65, false);
    panoramacomboboxAddItem(pano74_title, pano74, pano74, false);
    panoramacomboboxAddItem(pano76_title, pano76, pano76, false);
    panoramacomboboxAddItem(pano72_title, pano72, pano72, false);
    panoramacomboboxAddItem(pano118_title, pano118, pano118, false);
    panoramacomboboxAddItem(pano120_title, pano120, pano120, false);
    panoramacomboboxAddItem(pano116_title, pano116, pano116, false);
    panoramacomboboxAddItem(pano124_title, pano124, pano124, false);
    panoramacomboboxAddItem(pano126_title, pano126, pano126, false);
    panoramacomboboxAddItem(pano122_title, pano122, pano122, false);
    panoramacomboboxAddItem(pano111_title, pano111, pano111, false);
    panoramacomboboxAddItem(pano113_title, pano113, pano113, false);
    panoramacomboboxAddItem(pano109_title, pano109, pano109, false);
    panoramacomboboxAddItem(pano177_title, pano177, pano177, false);
    panoramacomboboxAddItem(pano179_title, pano179, pano179, false);
    panoramacomboboxAddItem(pano175_title, pano175, pano175, false);
    panoramacomboboxAddItem(pano55_title, pano55, pano55, false);
    panoramacomboboxAddItem(pano53_title, pano53, pano53, false);
    set(layer[panoramacombobox].isLoaded, true);

    if(layer[panoramacombobox].isStarted,
      panoramacomboboxShow();
    );
  </action>


  <action name="panoramacomboboxAddItem">
    getmessage(caption, %1);

    indexoftxt(found, get(caption), '&amp;');
    if(found GE 0,
      subtxt(part1, get(caption), 0, get(found));
      add(found, 1);
      subtxt(part2, get(caption), get(found), get(caption.length));
      txtadd(caption, get(part1), '&amp;', get(part2));
    );
    if(%4,
      txtadd(title, "&#x00A0;&#x00A0;&#x00A0;", get(caption));
    ,
      set(title, get(caption));
    );

    layer[panoramacombobox].addNamedItem(%2, get(title), mainloadscene(%3));
  </action>

  <action name="panoramacomboboxUpdateLanguage">
    layer[panoramacombobox].closeList();
    layer[panoramacombobox].removeAll();

    panoramacomboboxAddItem(pano47_title, pano47, pano47, false);
    panoramacomboboxAddItem(pano49_title, pano49, pano49, false);
    panoramacomboboxAddItem(pano51_title, pano51, pano51, false);
    panoramacomboboxAddItem(pano57_title, pano57, pano57, false);
    panoramacomboboxAddItem(pano59_title, pano59, pano59, false);
    panoramacomboboxAddItem(pano61_title, pano61, pano61, false);
    panoramacomboboxAddItem(pano67_title, pano67, pano67, false);
    panoramacomboboxAddItem(pano63_title, pano63, pano63, false);
    panoramacomboboxAddItem(pano65_title, pano65, pano65, false);
    panoramacomboboxAddItem(pano74_title, pano74, pano74, false);
    panoramacomboboxAddItem(pano76_title, pano76, pano76, false);
    panoramacomboboxAddItem(pano72_title, pano72, pano72, false);
    panoramacomboboxAddItem(pano118_title, pano118, pano118, false);
    panoramacomboboxAddItem(pano120_title, pano120, pano120, false);
    panoramacomboboxAddItem(pano116_title, pano116, pano116, false);
    panoramacomboboxAddItem(pano124_title, pano124, pano124, false);
    panoramacomboboxAddItem(pano126_title, pano126, pano126, false);
    panoramacomboboxAddItem(pano122_title, pano122, pano122, false);
    panoramacomboboxAddItem(pano111_title, pano111, pano111, false);
    panoramacomboboxAddItem(pano113_title, pano113, pano113, false);
    panoramacomboboxAddItem(pano109_title, pano109, pano109, false);
    panoramacomboboxAddItem(pano177_title, pano177, pano177, false);
    panoramacomboboxAddItem(pano179_title, pano179, pano179, false);
    panoramacomboboxAddItem(pano175_title, pano175, pano175, false);
    panoramacomboboxAddItem(pano55_title, pano55, pano55, false);
    panoramacomboboxAddItem(pano53_title, pano53, pano53, false);

    panoramacomboboxUpdateList();
  </action>

  <events name="panoramacomboboxEvents"
    hidetourcontrols="panoramacomboboxHide();"
    showtourcontrols="panoramacomboboxShow();"
    onnewpano="panoramacomboboxOnPanorama();"
    changetourlanguage="panoramacomboboxUpdateLanguage();"
    keep="true"
    />

  <action name="panoramacomboboxHide">
    set(layer[panoramacombobox].visible, false);
  </action>

  <action name="panoramacomboboxShow">
  if(layer[panoramacombobox].isLoaded,
    if (layer[panoramacombobox].item.count GT 0,
      set(layer[panoramacombobox].visible, true);
    ,
      set(layer[panoramacombobox].visible, false);
    );
  ,
    set(layer[panoramacombobox].visible, false);
  );
  </action>

  <action name="panoramacomboboxOnPanorama">
    if(layer[panoramacombobox].isLoaded,
      panoramacomboboxUpdateList();
    ,
      delayedcall(0.2, panoramacomboboxOnPanorama);
    );
  </action>

  <action name="panoramacomboboxUpdateList">
    set(itemtoselect, get(scene[get(xml.scene)].name));
    layer[panoramacombobox].selectItemByName(get(itemtoselect));
  </action>

  <action name="panoramacomboboxOpenComboboxList">
    layer[panoramacombobox].openList();
  </action>

  <action name="panoramacomboboxCloseComboboxList">
    layer[panoramacombobox].closeList();
  </action>

<!-- ********** -->
<!-- Context menue -->
<!-- id : contextmenu -->
<!-- ********** -->
  <contextmenu fullscreen="false" versioninfo="false" touch="true">
    <item name="website1" onclick="getmessage(urltoopen,contextmenuwebsiteurl1);openurl(get(urltoopen),_blank);" />
    <item name="website2" onclick="getmessage(urltoopen,contextmenuwebsiteurl2);openurl(get(urltoopen),_blank);" />
    <item name="fullscreenentry" onclick="enterFullscreen();
" separator="true"/>
  </contextmenu>

  <events name="contextmenuevents" keep="true" 
    onenterfullscreen="updateContextMenu" onexitfullscreen="updateContextMenu" 
    onxmlcomplete="updateContextMenu" 
    changetourlanguage="updateContextMenu" 
    />
  <events name="contextmenuvrevents" keep="true" 
    onvravailable="updateContextMenu();" onvrunavailable="updateContextMenu();"
    devices="html5"
    />
  <action name="updateContextMenu">
    getmessage(contextmenu.item[website1].caption, contextmenuopenwebsitelabel1);
    getmessage(contextmenu.item[website2].caption, contextmenuopenwebsitelabel2);
    if (device.fullscreensupport,
      if(tour_fullscreen,
        getmessage(contextmenu.item[fullscreenentry].caption, contextmenucloseFsLabel);
        set(contextmenu.item[fullscreenentry].onclick, exitFullscreen();
);
       ,
        getmessage(contextmenu.item[fullscreenentry].caption, contextmenuopenFsLabel);
        set(contextmenu.item[fullscreenentry].onclick, enterFullscreen();
);
      );
     ,
      set(contextmenu.item[fullscreenentry].visible, false);
    );
  </action>

<!-- ********** -->
<!-- klassiche Kontrolleiste -->
<!-- id : controlBar_classic -->
<!-- ********** -->

  <krpano controlBar_classicbarbuilt="false" controlBar_classicbackgroundwidthwhenclosed="0" controlBar_classicbackgroundwidthwhenopened="0" controlBar_classicIsOpened="false" />
  <events name="controlBar_classicevents" 
    onxmlcomplete="controlBar_classicbuildMenuBar();" 


    keep="true" />



  <action name="controlBar_classicbuildMenuBar">
    ifnot (controlBar_classicbarbuilt, controlBar_classicbuildMenu(); set(controlBar_classicbarbuilt, true););
  </action>

  <action name="controlBar_classicbuildMenu">
    
    set(controlBar_classicbutton_pos, 20);

    set(layer[controlBar_classicbtn_hidecontrols].x, get(controlBar_classicbutton_pos));
    set(layer[controlBar_classicbtn_showcontrols].x, get(controlBar_classicbutton_pos));
    inc(controlBar_classicbutton_pos, 36);
    add(controlBar_classicbackgroundwidthwhenclosed, get(controlBar_classicbutton_pos), 20);



    if (device.desktop,
      set(layer[controlBar_classicbtn_display_help].x, get(controlBar_classicbutton_pos));
      set(layer[controlBar_classicbtn_close_help  ].x, get(controlBar_classicbutton_pos));
      inc(controlBar_classicbutton_pos, 36);
    );

    if (device.fullscreensupport,
      set(layer[controlBar_classicbtn_openfs ].x, get(controlBar_classicbutton_pos));
      set(layer[controlBar_classicbtn_closefs].x, get(controlBar_classicbutton_pos));
      inc(controlBar_classicbutton_pos, 36);
    );


    set(layer[controlBar_classicbtn_display_floorplan].x, get(controlBar_classicbutton_pos));
    set(layer[controlBar_classicbtn_hide_floorplan   ].x, get(controlBar_classicbutton_pos));
    inc(controlBar_classicbutton_pos, 36);


    set(layer[controlBar_classicbtn_autorotate_on ].x, get(controlBar_classicbutton_pos));
    set(layer[controlBar_classicbtn_autorotate_off].x, get(controlBar_classicbutton_pos));
    inc(controlBar_classicbutton_pos, 36);



    if (device.desktop,
      set(layer[controlBar_classicbtn_ctrlmode_drag_to].x, get(controlBar_classicbutton_pos));
      set(layer[controlBar_classicbtn_ctrlmode_move_to].x, get(controlBar_classicbutton_pos));
      inc(controlBar_classicbutton_pos, 36);
    );


    if(plugin[ptpvrmode] AND device.html5,
      set(layer[controlBar_classicbtn_enter_vr].x, get(controlBar_classicbutton_pos));
      set(layer[controlBar_classicbtn_enter_vr_not].x, get(controlBar_classicbutton_pos));
      inc(controlBar_classicbutton_pos, 36);
    );

    set(layer[controlBar_classicbtn_show_hotspots].x, get(controlBar_classicbutton_pos));
    set(layer[controlBar_classicbtn_hide_hotspots].x, get(controlBar_classicbutton_pos));
    inc(controlBar_classicbutton_pos, 36);


    if(plugin[gyroscope],
      set(controlBar_classicDisplayGyroscopeButton, false);
      if (device.tablet, set(controlBar_classicDisplayGyroscopeButton, true););
      if (device.mobile, set(controlBar_classicDisplayGyroscopeButton, true););
      if(controlBar_classicDisplayGyroscopeButton,
        set(layer[controlBar_classicbtn_gyroscope_on ].x, get(controlBar_classicbutton_pos));
        set(layer[controlBar_classicbtn_gyroscope_off].x, get(controlBar_classicbutton_pos));
        set(layer[controlBar_classicbtn_gyroscope_not].x, get(controlBar_classicbutton_pos));
        inc(controlBar_classicbutton_pos, 36);
      );
    );


    if (device.desktop,
        set(layer[controlBar_classicbtn_right].x, get(controlBar_classicbutton_pos));
        inc(controlBar_classicbutton_pos, 36);
        set(layer[controlBar_classicbtn_left].x, get(controlBar_classicbutton_pos));
        inc(controlBar_classicbutton_pos, 36);
    );
    if (device.desktop,
        set(layer[controlBar_classicbtn_down].x, get(controlBar_classicbutton_pos));
        inc(controlBar_classicbutton_pos, 36);
        set(layer[controlBar_classicbtn_up].x, get(controlBar_classicbutton_pos));
        inc(controlBar_classicbutton_pos, 36);
    );
    if (device.desktop,
        set(layer[controlBar_classicbtn_out].x, get(controlBar_classicbutton_pos));
        inc(controlBar_classicbutton_pos, 36);
        set(layer[controlBar_classicbtn_in].x, get(controlBar_classicbutton_pos));
        inc(controlBar_classicbutton_pos, 36);
    );


    inc(controlBar_classicbutton_pos, 20);

    set(controlBar_classicbackgroundwidthwhenopened, get(controlBar_classicbutton_pos));



    
    add(controlBar_classicVerifyVisibility, 20, 20);
    if(controlBar_classicbackgroundwidthwhenopened == controlBar_classicVerifyVisibility,
      set(controlBar_classicbackgroundwidthwhenopened, 0);


    );

	
	
  </action>

	<events name="controlBar_classicStartTourEvents" onTourStart="controlBar_classicCallOnStartTour();" keep="true" />

	<action name="controlBar_classicCallOnStartTour">
		
		set(layer[controlBar_classicmenu_controlbar_bg_img].width, get(controlBar_classicbutton_pos));
		set(layer[controlBar_classicmenu_controlbar_bg].width, get(controlBar_classicbutton_pos));
		controlBar_classicshowMenuControls();
	</action>



  <style name="controlBar_classic_btn_style"
         keep="true"
         alpha="0.8"
         edge="right" align="right"
         width="36" height="36"
         zorder="7"
         onover="controlBar_classicctrlbaronoveraction();"
         onout="controlBar_classicctrlbaronoutaction();"
         onhover="showTooltip('plugin', controlBar_classicmenuTooltipStyle, bottom);"
         />
  <action name="controlBar_classicctrlbaronoveraction">
    tween(alpha,1,0.1,easeoutquad);
    tween(y,-2,0.1,easeoutquad);
  </action>  
  <action name="controlBar_classicctrlbaronoutaction">
    tween(alpha,0.8);
    tween(y,0,0.1,easeoutquad);
    hideTooltip();
  </action>

  <layer name="controlBar_classicmenu_controlbar_bg_img"
         keep="true"
         align="bottom"
         x="0" y="10"
         url="%FIRSTXML%/graphics/classiccontrolbar/footer.png"
         zorder="5"
         width="40"
         height="40"
         scale9grid="10|10|80|80"
         visible="false"
         />
  <layer name="controlBar_classicmenu_controlbar_bg"
         keep="true"
         align="bottom"
         x="0" y="10"
         type="container"
         zorder="6"
         width="40"
         height="40"
         visible="false"
         alpha="1.0"
         >

    <layer name="controlBar_classicbtn_hide_hotspots"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_hide_show_hotspots.png"
            style="controlBar_classic_btn_style"
            onclick="hideHotspots();
"
            tooltip="controlBar_classichideSpotsTip"
            visible="false"
            />
    <layer name="controlBar_classicbtn_show_hotspots"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_hide_show_hotspots.png"
            style="controlBar_classic_btn_style"
            onclick="showHotspots();
"
            tooltip="controlBar_classicshowSpotsTip"
            visible="false"
            />


    <layer name="controlBar_classicbtn_gyroscope_off"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_gyroscope.png"
            style="controlBar_classic_btn_style"
            onclick="disableGyroscope();
"
            devices="html5"
            tooltip="controlBar_classicgyroOffTip"
            visible="false"
            />
    <layer name="controlBar_classicbtn_gyroscope_on"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_gyroscope.png"
            style="controlBar_classic_btn_style"
            onclick="enableGyroscope();
"
            devices="html5"
            tooltip="controlBar_classicgyroOnTip"
            visible="false"
            />
    <layer name="controlBar_classicbtn_gyroscope_not"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_gyroscope_off.png"
            style="controlBar_classic_btn_style"
            enabled="true"
            capture="false"
            devices="html5"
            tooltip="controlBar_classicgyroNotTip"
            visible="false"
            />


    <layer name="controlBar_classicbtn_ctrlmode_move_to"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_move_to.png"
            style="controlBar_classic_btn_style"
            tooltip="controlBar_classicctrlmodeMoveTip"
            onclick="setControlModeMoveTo();
"
            visible="false"
            devices="desktop"
            />
    <layer name="controlBar_classicbtn_ctrlmode_drag_to"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_drag_to.png"
            style="controlBar_classic_btn_style"
            tooltip="controlBar_classicctrlmodeDragTip"
            onclick="setControlModeDragTo();
"
            visible="false"
            devices="desktop"
            />

    <layer name="controlBar_classicbtn_in"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_zoom_in.png"
            ondown="viewControlZoomIn(false);"
            onup="viewControlZoomStop();
"
            style="controlBar_classic_btn_style"
            tooltip="controlBar_classiczoomInTip"
            devices="desktop"
            visible="false"
            />
    <layer name="controlBar_classicbtn_out"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_zoom_out.png"
            ondown="viewControlZoomOut(false);
"
            onup="viewControlZoomStop();
"
            style="controlBar_classic_btn_style"
            tooltip="controlBar_classiczoomOutTip"
            devices="desktop"
            visible="false"
            />

    <layer name="controlBar_classicbtn_left"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_move_left.png"
            ondown="viewControlMoveLeft(false);
"
            onup="viewControlMoveHoriStop();
"
            style="controlBar_classic_btn_style"
            tooltip="controlBar_classicmoveLeftTip"
            devices="desktop"
            visible="false"
            />
    <layer name="controlBar_classicbtn_right"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_move_right.png"
            ondown="viewControlMoveRight(false);
"
            onup="viewControlMoveHoriStop();
"
            style="controlBar_classic_btn_style"
            tooltip="controlBar_classicmoveRightTip"
            devices="desktop"
            visible="false"
            />

    <layer name="controlBar_classicbtn_up"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_move_up.png"
            ondown="viewControlMoveUp(false);
"
            onup="viewControlMoveVertStop();
"
            style="controlBar_classic_btn_style"
            tooltip="controlBar_classicmoveUpTip"
            devices="desktop"
            visible="false"
            />
    <layer name="controlBar_classicbtn_down"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_move_down.png"
            ondown="viewControlMoveDown(false);
"
            onup="viewControlMoveVertStop();
"
            style="controlBar_classic_btn_style"
            tooltip="controlBar_classicmoveDownTip"
            devices="desktop"
            visible="false"
            />




    <layer name="controlBar_classicbtn_display_floorplan"
           url="%FIRSTXML%/graphics/classiccontrolbar/btn_floorplan.png"
           onclick="showFloorplan();
"
           style="controlBar_classic_btn_style"
           visible="false"
           tooltip="controlBar_classicdisplayFloorplanTip"
           />
    <layer name="controlBar_classicbtn_hide_floorplan"
           url="%FIRSTXML%/graphics/classiccontrolbar/btn_floorplan.png"
           onclick="hideFloorplan();
"
           style="controlBar_classic_btn_style"
           visible="false"
           tooltip="controlBar_classichideFloorplanTip"
           />


    <layer name="controlBar_classicbtn_openfs"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_enter_fs.png"
            onclick="enterFullscreen();
"
            style="controlBar_classic_btn_style"
            devices="fullscreensupport"
            visible="false"
            tooltip="controlBar_classicopenFsTip"
            />
    <layer name="controlBar_classicbtn_closefs"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_close_fs.png"
            onclick="exitFullscreen();
"
            style="controlBar_classic_btn_style"
            visible="false"
            devices="fullscreensupport"
            tooltip="controlBar_classiccloseFsTip"
            />

    <layer name="controlBar_classicbtn_autorotate_on"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_start_autorotation.png"
            onclick="resumeautorotation();
"
            style="controlBar_classic_btn_style"
            visible="false"
            tooltip="controlBar_classicautorotateOnTip"
            />
    <layer name="controlBar_classicbtn_autorotate_off"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_stop_autorotation.png"
            onclick="pauseautorotation();
"
            style="controlBar_classic_btn_style"
            visible="false"
            tooltip="controlBar_classicautorotateOffTip"
            />


    <layer name="controlBar_classicbtn_enter_vr"
           url="%FIRSTXML%/graphics/classiccontrolbar/btn_vr_mode.png"
           onclick="if(scene[get(xml.scene)].full360 AND disableCurrentSceneVrConservation !== true,
    js(accessWebVr(get(xml.scene),get(videoscenestarttime)));
,
    js(accessWebVr(null));
);"
           style="controlBar_classic_btn_style"
           visible="false"
           devices="html5"
           tooltip="controlBar_classicenterVRTip"
           />
    <layer name="controlBar_classicbtn_enter_vr_not"
           url="%FIRSTXML%/graphics/classiccontrolbar/btn_vr_mode_off.png"
           style="controlBar_classic_btn_style"
           enabled="true"
           capture="false"
           visible="false"
           devices="html5"
           tooltip="controlBar_classicenterVRNotTip"
           />

    <layer name="controlBar_classicbtn_display_help"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_help.png"
            onclick="controlBar_classicdisplayHelp();"
            style="controlBar_classic_btn_style"
            devices="desktop"
            visible="false"
            tooltip="controlBar_classicdisplayHelpTip"
            />
    <layer name="controlBar_classicbtn_close_help"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_help.png"
            onclick="controlBar_classiccloseHelp();"
            style="controlBar_classic_btn_style"
            visible="false"
            devices="desktop"
            tooltip="controlBar_classichideHelpTip"
            />



    <layer name="controlBar_classicbtn_hidecontrols"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_hide_controls.png"
            style="controlBar_classic_btn_style"
            onclick="controlBar_classichideMenuControls();hideTourControls();
"
            visible="false"
            tooltip="controlBar_classichideControlsTip"
            />
    <layer name="controlBar_classicbtn_showcontrols"
            url="%FIRSTXML%/graphics/classiccontrolbar/btn_show_controls.png"
            style="controlBar_classic_btn_style"
            onclick="controlBar_classicshowMenuControls();showTourControls();
"
            tooltip="controlBar_classicdisplayControlsTip"
            visible="false"
            />
  </layer>


<events name="controlBar_classicvravailableevent"
		onvravailable="controlBar_classicupdateVrButtonsAvailability();"
		onvrunavailable="controlBar_classicupdateVrButtonsAvailability();"
		keep="true" devices="html5" />
	<krpano controlBar_classicmenuvravailable="false" />
	<action name="controlBar_classicupdateVrButtonsAvailability">
		if (tour_vrdevices,
			set(controlBar_classicmenuvravailable, true);
		,
			set(controlBar_classicmenuvravailable, false);
		);
		controlBar_classicupdateVrButtons();
	</action>
	<action name="controlBar_classicHideVrButtons">
		set(layer[controlBar_classicbtn_enter_vr].visible, false);
		if('%1' == 'true' AND plugin[ptpvrmode],
			set(layer[controlBar_classicbtn_enter_vr_not].visible, true);
		,
			set(layer[controlBar_classicbtn_enter_vr_not].visible, false);
		);
	</action>
	<action name="controlBar_classicShowVrButtons">
		if (controlBar_classicmenuvravailable,
			set(layer[controlBar_classicbtn_enter_vr].visible, true);
			set(layer[controlBar_classicbtn_enter_vr_not].visible, false);
		,
			controlBar_classicHideVrButtons(true);
		);
	</action>
	<action name="controlBar_classicupdateVrButtons">
	if (tour_vrdevices,
		if (controlBar_classicIsOpened,
			controlBar_classicShowVrButtons();
		,
			controlBar_classicHideVrButtons();
		);
	,
		if (controlBar_classicIsOpened,
			controlBar_classicHideVrButtons(true);
		,
			controlBar_classicHideVrButtons();
		);
	);
	</action>

	<events name="controlBar_classicgyroscopeavailableevent"
		ongyroscopeavailable="controlBar_classicupdateGyroscopeButtonsAvailability();"
		ongyroscopeunavailable="controlBar_classicupdateGyroscopeButtonsAvailability();"
		ongyroscopeon="controlBar_classicenableGyroscopeButtons(true);"
		ongyroscopeoff="controlBar_classicenableGyroscopeButtons(false);"
		keep="true" devices="html5" />
	<krpano controlBar_classicmenugyroscopeavailable="false" controlBar_classicmenugyroscopeenabled="false" />
	<action name="controlBar_classicupdateGyroscopeButtonsAvailability">
		if (tour_gyroscopedevices,
			set(controlBar_classicmenugyroscopeavailable, true);
			controlBar_classicupdateGyroscopeButtons();
		,
			set(controlBar_classicmenugyroscopeavailable, false);
			controlBar_classicupdateGyroscopeButtons();
		);
	</action>
	<action name="controlBar_classicenableGyroscopeButtons">
		if (tour_gyroscopedevices,
			set(controlBar_classicmenugyroscopeenabled, %1);
			controlBar_classicupdateGyroscopeButtons();
		);
	</action>
	<action name="controlBar_classicHideGyroscopeButtons">
		set(layer[controlBar_classicbtn_gyroscope_off].visible, false);
		set(layer[controlBar_classicbtn_gyroscope_on].visible, false);
		if('%1' == 'true' AND plugin[gyroscope],
			set(layer[controlBar_classicbtn_gyroscope_not].visible, true);
		,
			set(layer[controlBar_classicbtn_gyroscope_not].visible, false);
		);
	</action>
	<action name="controlBar_classicShowGyroscopeButtons">
		if (controlBar_classicmenugyroscopeavailable,
			if (controlBar_classicmenugyroscopeenabled,
				set(layer[controlBar_classicbtn_gyroscope_off].visible, true);
				set(layer[controlBar_classicbtn_gyroscope_on].visible, false);
			,
				set(layer[controlBar_classicbtn_gyroscope_off].visible, false);
				set(layer[controlBar_classicbtn_gyroscope_on].visible, true);
			);
			set(layer[controlBar_classicbtn_gyroscope_not].visible, false);
		,
			controlBar_classicHideGyroscopeButtons(true);
		);
	</action>
	<action name="controlBar_classicupdateGyroscopeButtons">
	if (tour_gyroscopedevices,
		if (controlBar_classicIsOpened,
			controlBar_classicShowGyroscopeButtons();
		,
			controlBar_classicHideGyroscopeButtons();
		);
	,
		if (controlBar_classicIsOpened,
			controlBar_classicHideGyroscopeButtons(true);
		,
			controlBar_classicHideGyroscopeButtons();
		);
	);
	</action>


	<events name="controlBar_classiccontrolmodechangedevent" 
		oncontrolmodechanged="controlBar_classicupdateControlModeButtons();" 
		keep="true" />
	<action name="controlBar_classicHideControlModeButtons">
		set(layer[controlBar_classicbtn_ctrlmode_move_to].visible, false);
		set(layer[controlBar_classicbtn_ctrlmode_drag_to].visible, false);
	</action>
	<action name="controlBar_classicShowControlModeButtons">
		if (tour_controlmodemousetype == "moveto",
			set(layer[controlBar_classicbtn_ctrlmode_drag_to].visible, true);
			set(layer[controlBar_classicbtn_ctrlmode_move_to].visible, false);
		,
			set(layer[controlBar_classicbtn_ctrlmode_move_to].visible, true);
			set(layer[controlBar_classicbtn_ctrlmode_drag_to].visible, false);
		);
	</action>
	<action name="controlBar_classicupdateControlModeButtons">
	if (device.desktop,
		if (controlBar_classicIsOpened,
			controlBar_classicShowControlModeButtons();
		,
			controlBar_classicHideControlModeButtons();
		);
	,
		controlBar_classicHideControlModeButtons();
	);
	</action>


  <action name="controlBar_classichideMenuControls">
    set(controlBar_classicIsOpened, false);
    set(layer[controlBar_classicbtn_hidecontrols].visible, false);
    set(layer[controlBar_classicbtn_showcontrols].visible, true);
    controlBar_classicupdateFullscreenButtons();

    controlBar_classicupdateVrButtons();

    controlBar_classicupdateAutorotationButtons();


    set(layer[controlBar_classicbtn_up].visible  , false);
    set(layer[controlBar_classicbtn_down].visible, false);
    set(layer[controlBar_classicbtn_right].visible, false);
    set(layer[controlBar_classicbtn_left].visible , false);
    set(layer[controlBar_classicbtn_in].visible , false);
    set(layer[controlBar_classicbtn_out].visible, false);

    controlBar_classicupdateFloorplanButtons();

    controlBar_classicupdateControlModeButtons();
    controlBar_classicupdateHideShowHotspotsButtons();

    controlBar_classicupdateGyroscopeButtons();

    controlBar_classicupdateHelpButtons();


    if(controlBar_classicbackgroundwidthwhenclosed == 0,
      set(layer[controlBar_classicmenu_controlbar_bg_img].visible, false);
      set(layer[controlBar_classicmenu_controlbar_bg].visible, false);
    ,
      set(layer[controlBar_classicmenu_controlbar_bg_img].visible, true);
      set(layer[controlBar_classicmenu_controlbar_bg].visible, true);
    );
    tween(layer[controlBar_classicmenu_controlbar_bg_img].width,get(controlBar_classicbackgroundwidthwhenclosed),0.5,easeOutQuad);
    tween(layer[controlBar_classicmenu_controlbar_bg].width,get(controlBar_classicbackgroundwidthwhenclosed),0.5,easeOutQuad);
    tween(layer[controlBar_classicmenu_controlbar_bg_img].alpha,1.0,0.5,easeOutQuad);
  </action>
  <action name="controlBar_classicshowMenuControls">
    set(controlBar_classicIsOpened, true);
    set(layer[controlBar_classicbtn_hidecontrols].visible, true);
    set(layer[controlBar_classicbtn_showcontrols].visible, false);
    if(controlBar_classicbackgroundwidthwhenopened == 0,
      set(layer[controlBar_classicmenu_controlbar_bg_img].visible, false);
      set(layer[controlBar_classicmenu_controlbar_bg].visible, false);
    ,
      set(layer[controlBar_classicmenu_controlbar_bg_img].visible, true);
      set(layer[controlBar_classicmenu_controlbar_bg].visible, true);
    );
    tween(layer[controlBar_classicmenu_controlbar_bg_img].alpha,1.0,0.5,easeOutQuad);
    controlBar_classicshowMenuButtons();


      tween(layer[controlBar_classicmenu_controlbar_bg_img].width, get(controlBar_classicbackgroundwidthwhenopened),0.5,easeOutQuad);
      tween(layer[controlBar_classicmenu_controlbar_bg].width, get(controlBar_classicbackgroundwidthwhenopened),0.5,easeOutQuad);


  </action>
  <action name="controlBar_classicshowMenuButtons">
    if (device.desktop,
    set(layer[controlBar_classicbtn_up].visible  , true);
    set(layer[controlBar_classicbtn_down].visible, true);
    );
    if (device.desktop,
    set(layer[controlBar_classicbtn_right].visible, true);
    set(layer[controlBar_classicbtn_left].visible , true);
    );
    if (device.desktop,
    set(layer[controlBar_classicbtn_in].visible , true);
    set(layer[controlBar_classicbtn_out].visible, true);
    );

    controlBar_classicupdateFloorplanButtons();

    controlBar_classicupdateControlModeButtons();
    controlBar_classicupdateHideShowHotspotsButtons();

    controlBar_classicupdateGyroscopeButtons();

    controlBar_classicupdateHelpButtons();


    controlBar_classicupdateFullscreenButtons();

    controlBar_classicupdateVrButtons();

    controlBar_classicupdateAutorotationButtons();


  </action>

  <layer name="controlBar_classichelpScreen" align="center" keep="true" onclick="controlBar_classiccloseHelp();" url="%FIRSTXML%/graphics/classiccontrolbar/help_screen_bg.png" visible="false" zorder="97" height="10%" width="prop" />

  <layer name="controlBar_classichelpScreenFg" align="center" keep="true" onclick="controlBar_classiccloseHelp();" displayed="false" 
         url="%FIRSTXML%/graphics/classiccontrolbar/help_screen_fg.png" 
         alpha="0.8" 
         height="50%" 
         width="prop" 
         zorder="98"
         visible="false" />
  <action name="controlBar_classicdisplayHelp">
    set(layer[controlBar_classichelpScreenFg].displayed,true);
    set(layer[controlBar_classichelpScreen].visible,true);
    tween(layer[controlBar_classichelpScreen].height, 50%, 1, easeOutQuad,
      set(layer[controlBar_classichelpScreenFg].visible,true);
    );
    controlBar_classicupdateHelpButtons();
  </action>
  <action name="controlBar_classiccloseHelp">
    set(layer[controlBar_classichelpScreenFg].displayed,false);
    set(layer[controlBar_classichelpScreenFg].visible,false);
    tween(layer[controlBar_classichelpScreen].height, 10%, 1, easeOutQuad,
      set(layer[controlBar_classichelpScreen].visible,false);
    );
    controlBar_classicupdateHelpButtons();
  </action>
	<action name="controlBar_classicHideHelpButtons">
		set(layer[controlBar_classicbtn_display_help].visible, false);
		set(layer[controlBar_classicbtn_close_help].visible, false);
	</action>
	<action name="controlBar_classicShowHelpButtons">
		if (layer[controlBar_classichelpScreenFg].displayed,
			set(layer[controlBar_classicbtn_close_help].visible, true);
			set(layer[controlBar_classicbtn_display_help].visible, false);
		,
			set(layer[controlBar_classicbtn_display_help].visible, true);
			set(layer[controlBar_classicbtn_close_help].visible, false);
		);
	</action>
	<action name="controlBar_classicupdateHelpButtons">
	if (device.desktop,
		if (controlBar_classicIsOpened,
			controlBar_classicShowHelpButtons();
		,
			controlBar_classicHideHelpButtons();
		);
	,
		controlBar_classicHideHelpButtons();
	);
	</action>


	<events name="controlBar_classicDisplayFloorPlanEvents" 
		onshowtourfloorplan="controlBar_classicupdateFloorplanButtons();" 
		onhidetourfloorplan="controlBar_classicupdateFloorplanButtons();" 
		keep="true" />
	<action name="controlBar_classicHideFloorplanButtons">
		set(layer[controlBar_classicbtn_display_floorplan].visible, false);
		set(layer[controlBar_classicbtn_hide_floorplan].visible, false);
	</action>
	<action name="controlBar_classicShowFloorplanButtons">
		if (tour_displayfloorplan,
			set(layer[controlBar_classicbtn_hide_floorplan].visible, true);
			set(layer[controlBar_classicbtn_display_floorplan].visible, false);
		,
			set(layer[controlBar_classicbtn_display_floorplan].visible, true);
			set(layer[controlBar_classicbtn_hide_floorplan].visible, false);
		);
	</action>
	<action name="controlBar_classicupdateFloorplanButtons">
		if (controlBar_classicIsOpened,
			controlBar_classicShowFloorplanButtons();
		,
			controlBar_classicHideFloorplanButtons();
		);
	</action>


	<events name="controlBar_classicmenufullscreenchangeevent"
		onenterfullscreen="controlBar_classicupdateFullscreenButtons();"
		onexitfullscreen="controlBar_classicupdateFullscreenButtons();"
		keep="true"/>
	<action name="controlBar_classicHideFullscreenButtons">
		set(layer[controlBar_classicbtn_openfs].visible , false);
		set(layer[controlBar_classicbtn_closefs].visible, false);
	</action>
	<action name="controlBar_classicShowFullscreenButtons">
		if (device.fullscreensupport,
			if(tour_fullscreen,
				set(layer[controlBar_classicbtn_openfs].visible , false);
				set(layer[controlBar_classicbtn_closefs].visible, true);
			,
				set(layer[controlBar_classicbtn_openfs].visible ,true);
				set(layer[controlBar_classicbtn_closefs].visible,false);
			);
		,
			controlBar_classicHideFullscreenButtons();
		);
	</action>
	<action name="controlBar_classicupdateFullscreenButtons">
		if (controlBar_classicIsOpened,
			controlBar_classicShowFullscreenButtons();
		,
			controlBar_classicHideFullscreenButtons();
		);
	</action>

	<events name="controlBar_classicAutorotationEvents"
		onstartautorotation="controlBar_classicupdateAutorotationButtons();"
		onresumeautorotation="controlBar_classicupdateAutorotationButtons();"
		onstopautorotation="controlBar_classicupdateAutorotationButtons();"
		onpauseautorotation="controlBar_classicupdateAutorotationButtons();"
		keep="true"/>
	<action name="controlBar_classicHideAutorotationButtons">
		set(layer[controlBar_classicbtn_autorotate_off].visible, false);
		set(layer[controlBar_classicbtn_autorotate_on].visible , false);
	</action>
	<action name="controlBar_classicShowAutorotationButtons">
		if(autorotate.enabled == false,
			set(layer[controlBar_classicbtn_autorotate_off].visible, false);
			set(layer[controlBar_classicbtn_autorotate_on].visible , true);
		,
			set(layer[controlBar_classicbtn_autorotate_off].visible, true);
			set(layer[controlBar_classicbtn_autorotate_on].visible , false);
		);
	</action>
	<action name="controlBar_classicupdateAutorotationButtons">
		if (controlBar_classicIsOpened,
			controlBar_classicShowAutorotationButtons();
		,
			controlBar_classicHideAutorotationButtons();
		);
	</action>



	<events name="controlBar_classichotspotsdisplayevents"
		hotspots_visibility_changed="controlBar_classicupdateHideShowHotspotsButtons"
		keep="true"/>
	<action name="controlBar_classicHideHideShowHotspotsButtons">
		set(layer[controlBar_classicbtn_show_hotspots].visible, false);
		set(layer[controlBar_classicbtn_hide_hotspots].visible, false);
	</action>
	<action name="controlBar_classicShowHideShowHotspotsButtons">
		if (tour_displayspots,
			set(layer[controlBar_classicbtn_hide_hotspots].visible, true);
			set(layer[controlBar_classicbtn_show_hotspots].visible, false);
		,
			set(layer[controlBar_classicbtn_show_hotspots].visible, true);
			set(layer[controlBar_classicbtn_hide_hotspots].visible, false);
		);
	</action>
	<action name="controlBar_classicupdateHideShowHotspotsButtons">
		if (controlBar_classicIsOpened,
			controlBar_classicShowHideShowHotspotsButtons();
		,
			controlBar_classicHideHideShowHotspotsButtons();
		);
	</action>


<layer name="controlBar_classicmenuTooltipStyle"
	keep="true"
	enabled="false"
	capture="false"
	type="text"
	align="center"
	bg="false"
	bgborder="0"
	txtshadow="1.0 1.0 4.0 0x000000 1"
	css="color:#e6e6e6;font-family:Helvetica;font-weight:bold;font-size:14px;text-align:left;"
	interactivecontent="false"
	zorder="0"
	visible="false"
	html=""
	padding="2"
	xoffset="0"
	yoffset="0"
	edge="bottom"
	/>



<!-- ********** -->
<!-- Grundriss -->
<!-- id : floorPlan -->
<!-- ********** -->

	<ptplugin name="floorPlan" engine="KolorFloorPlan">
		<settings>
			<option name="background_color" value="f2f2f2" type="string" />
			<option name="background_lighter_color" value="ffffff" type="string" />
			<option name="background_darker_color" value="cacaca" type="string" />
			<option name="background_alpha" value="0" type="float" />
			<option name="text_color" value="000000" type="string" />

			<option name="resize" value="true" type="bool" />
			<option name="fp_selector" value="one" type="string" />
			<option name="fp_selector_label" value="floorPlanmenu_label" type="string" />
			<option name="display_title" value="false" type="bool" />
			<option name="title_font" value="Verdana" type="string" />
			<option name="title_size" value="14" type="int" />
			<option name="title_weight" value="normal" type="string" />
			<option name="title_decoration" value="normal" type="string" />
			<option name="title_color" value="000000" type="string" />
			<option name="display_orientation" value="false" type="bool" />
			<option name="display_radar" value="true" type="bool" />
			<option name="radar_radius" value="25" type="int" />
			<option name="radar_line_width" value="1" type="int" />
			<option name="radar_line_color" value="ffffff" type="string" />
			<option name="radar_line_alpha" value="0.50000762951094835" type="float" />
			<option name="radar_fill_color" value="2672ff" type="string" />
			<option name="radar_fill_alpha" value="0.50000762951094835" type="float" />
			<option name="selected_effect" value="bounce" type="string" />
			<option name="close_on_click" value="false" type="bool" />
			<option name="position" value="bottomleft" type="string" />
			<option name="zorder" value="8" type="int" />
			<option name="use_i18n" value="true" type="bool" />
		</settings>
		
		<floorplanItems selectedItem="" selectedSpot="" selectedSpotScene="" selectedSpotHeading="" selectedSpotFov="">
			
			
							<floorplanItem 
								name="fpitempanogroup48" 
								width="651" 
								height="507" 
								groupName="panogroup48" 
								url="floorplan/karte_entwurf_eg_final_panogroup48.png" 
								title="panogroup48_floor_title"
								heading="0">
										<spot name="spotmap961" posX="0.599725008" posY="0.178444996" heading="126.39999999999949" desc="spotmap961_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano47" jsClick="spotmap961ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap962" posX="0.415405989" posY="0.226147994" heading="-169.6000000000009" desc="spotmap962_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano49" jsClick="spotmap962ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap963" posX="0.795047998" posY="0.190813005" heading="-159.4000000000006" desc="spotmap963_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano51" jsClick="spotmap963ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap964" posX="0.558458984" posY="0.621908009" heading="59.200000000000223" desc="spotmap964_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano57" jsClick="spotmap964ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap965" posX="0.297111005" posY="0.651943028" heading="10.9999999999996" desc="spotmap965_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano59" jsClick="spotmap965ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap990" posX="0.903714001" posY="0.160777003" heading="-90.600000000000222" desc="spotmap990_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano53" jsClick="spotmap990ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
							</floorplanItem>
							<floorplanItem 
								name="fpitempanogroup62" 
								width="563" 
								height="918" 
								groupName="panogroup62" 
								url="floorplan/karte_entwurf_og_final_panogroup62.png" 
								title="panogroup62_floor_title"
								heading="0">
										<spot name="spotmap966" posX="0.549769998" posY="0.281426013" heading="-90.600000000000222" desc="spotmap966_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano53" jsClick="spotmap966ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap967" posX="0.485451996" posY="0.764540017" heading="174.0000000000002" desc="spotmap967_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano55" jsClick="spotmap967ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap969" posX="0.269524992" posY="0.347092003" heading="-102.8000000000001" desc="spotmap969_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano126" jsClick="spotmap969ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap970" posX="0.41347599" posY="0.366791993" heading="-80.400000000000063" desc="spotmap970_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano122" jsClick="spotmap970ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap971" posX="0.234302998" posY="0.824577987" heading="40.599999999999568" desc="spotmap971_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano175" jsClick="spotmap971ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap972" posX="0.153138995" posY="0.826453984" heading="-118.1999999999999" desc="spotmap972_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano177" jsClick="spotmap972ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap973" posX="0.166922003" posY="0.911819994" heading="84.600000000000591" desc="spotmap973_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano179" jsClick="spotmap973ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap974" posX="0.912711024" posY="0.303002" heading="171.00000000000011" desc="spotmap974_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano120" jsClick="spotmap974ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap975" posX="0.744256973" posY="0.314258993" heading="141.59999999999889" desc="spotmap975_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano118" jsClick="spotmap975ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap976" posX="0.751914024" posY="0.278611988" heading="10.799999999999759" desc="spotmap976_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano116" jsClick="spotmap976ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap977" posX="0.699846983" posY="0.106004" heading="0" desc="spotmap977_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano109" jsClick="spotmap977ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap978" posX="0.856049001" posY="0.0666041002" heading="125.4000000000004" desc="spotmap978_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano113" jsClick="spotmap978ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap979" posX="0.692189991" posY="0.0506566986" heading="-144.59999999999971" desc="spotmap979_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano111" jsClick="spotmap979ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap980" posX="0.358345985" posY="0.831143975" heading="-91.199999999999704" desc="spotmap980_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano61" jsClick="spotmap980ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap981" posX="0.405818999" posY="0.914633989" heading="128.19999999999911" desc="spotmap981_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano67" jsClick="spotmap981ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap982" posX="0.58958602" posY="0.909006" heading="129.80000000000041" desc="spotmap982_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano65" jsClick="spotmap982ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap983" posX="0.502296984" posY="0.881801009" heading="-91.600000000000207" desc="spotmap983_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano63" jsClick="spotmap983ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap984" posX="0.398162007" posY="0.693246007" heading="135.19999999999939" desc="spotmap984_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano74" jsClick="spotmap984ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap985" posX="0.390504986" posY="0.652908027" heading="0" desc="spotmap985_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano72" jsClick="spotmap985ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap986" posX="0.226646006" posY="0.680113018" heading="-77.800000000000395" desc="spotmap986_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano76" jsClick="spotmap986ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
										<spot name="spotmap968" posX="0.395099998" posY="0.323639989" heading="-146.40000000000089" desc="spotmap968_tooltip" descType="tooltip" groupName="" isScene="true" planar="false" scene="pano124" jsClick="spotmap968ActionSpotFloorPlan">
											<icon url="spots/hotspot_neutral_user_defaultmap0.png" iconWidth="32" iconHeight="32" iconAnchor="center" />
										</spot>
							</floorplanItem>
		</floorplanItems>
	</ptplugin>
	
	<action name="kolorFloorplanJsReady_floorPlan">
		set(ptplugin[floorPlan].jsready, true);
		
		ifnot(ptplugin[floorPlan].floorplanItems.selectedSpot == "",
			set(ptplugin[floorPlan].floorplanItems.selectedSpotFov, get(view.hfov));
			js(invokePluginFunction(floorPlan, setKolorFloorPlanSelectedSpotOptions, get(xml.scene), get(view.hlookat), get(view.hfov)));
		);
	</action>
	
	
	
					<!-- floorplan panogroup48 spots counter : 6 -->
						<action name="spotmap961ActionSpotFloorPlan">
          mainloadscene(pano47);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap962ActionSpotFloorPlan">
          mainloadscene(pano49);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap963ActionSpotFloorPlan">
          mainloadscene(pano51);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap964ActionSpotFloorPlan">
          mainloadscene(pano57);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap965ActionSpotFloorPlan">
          mainloadscene(pano59);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap990ActionSpotFloorPlan">
          mainloadscene(pano53);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
					<!-- floorplan panogroup62 spots counter : 21 -->
						<action name="spotmap966ActionSpotFloorPlan">
          mainloadscene(pano53);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap967ActionSpotFloorPlan">
          mainloadscene(pano55);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap969ActionSpotFloorPlan">
          mainloadscene(pano126);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap970ActionSpotFloorPlan">
          mainloadscene(pano122);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap971ActionSpotFloorPlan">
          mainloadscene(pano175);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap972ActionSpotFloorPlan">
          mainloadscene(pano177);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap973ActionSpotFloorPlan">
          mainloadscene(pano179);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap974ActionSpotFloorPlan">
          mainloadscene(pano120);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap975ActionSpotFloorPlan">
          mainloadscene(pano118);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap976ActionSpotFloorPlan">
          mainloadscene(pano116);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap977ActionSpotFloorPlan">
          mainloadscene(pano109);lookat(-6.900000, 8.050000, 90.000000);

</action>
						<action name="spotmap978ActionSpotFloorPlan">
          mainloadscene(pano113);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap979ActionSpotFloorPlan">
          mainloadscene(pano111);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap980ActionSpotFloorPlan">
          mainloadscene(pano61);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap981ActionSpotFloorPlan">
          mainloadscene(pano67);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap982ActionSpotFloorPlan">
          mainloadscene(pano65);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap983ActionSpotFloorPlan">
          mainloadscene(pano63);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap984ActionSpotFloorPlan">
          mainloadscene(pano74);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap985ActionSpotFloorPlan">
          mainloadscene(pano72);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap986ActionSpotFloorPlan">
          mainloadscene(pano76);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
						<action name="spotmap968ActionSpotFloorPlan">
          mainloadscene(pano124);lookat(get(panoview.h), get(panoview.v), get(panoview.fov));

</action>
	
	
	<events name="floorPlanEvents" 
	onxmlcomplete="ifnot(floorPlanFloorPlanLoaded,set(tour_displayfloorplan,true););floorPlanActivateDefaultSpot();" 
	onviewchanged="floorPlanOnViewChange();" 
	onhidetourfloorplan="floorPlanCloseTourFloorPlan();" 
	onshowtourfloorplan="if(tour_displayfloorplan,floorPlanOpenTourFloorPlan(););" 
	onTourStart="floorPlanOpenTourFloorPlan();"
	changetourlanguage="floorPlanChangeLanguage();"
	keep="true" />
	
	<action name="floorPlanChangeLanguage">
		if(ptplugin[floorPlan].jsready,
			stopdelayedcall(delay_floorPlan);
			js(invokePluginFunction(floorPlanArea, changeLanguage, false));
			js(invokePluginFunction(floorPlan, changeLanguage));
		,
			delayedcall(delay_floorPlan, 0.1, floorPlanChangeLanguage(););
		);
	</action>
	
	
	<krpano floorPlanFloorPlanLoaded="false" />
	
	<action name="floorPlanHideTourFloorPlan">
		hideKolorArea_floorPlanArea(true);
	</action>
	
	<action name="floorPlanCloseTourFloorPlan">
		closeKolorArea_floorPlanArea();
	</action>
	
	<action name="floorPlanShowTourFloorPlan">
		if(ptplugin[floorPlanArea].isOpen === null,
			openKolorArea_floorPlanArea();
		,
			showKolorArea_floorPlanArea(true);
		);
	</action>
	
	<action name="floorPlanOpenTourFloorPlan">
		openKolorArea_floorPlanArea();
	</action>
	
	<action name="floorPlanOnViewChange">
		if (floorPlanFloorPlanLoaded == true,
			ifnot(ptplugin[floorPlan].floorplanItems.selectedSpot == "",
				ifnot(scene[get(xml.scene)].planar,
					js(invokePluginFunction(floorPlan, changeDirection, get(xml.scene), get(view.hlookat), get(view.hfov)));
				);
			);
		);
	</action>
	
	<action name="floorPlanActivateSpot">
		
		set(ptplugin[floorPlan].floorplanItems.selectedSpot, %1);
		set(ptplugin[floorPlan].floorplanItems.selectedItem, %2);
		
		if(%1 !== "",
			set(ptplugin[floorPlan].floorplanItems.selectedSpotScene, get(xml.scene));
			set(ptplugin[floorPlan].floorplanItems.selectedSpotHeading, get(view.hlookat));
			set(ptplugin[floorPlan].floorplanItems.selectedSpotFov, get(view.hfov));
		);
		
		
		if(ptplugin[floorPlanArea].isOpen,
			floorPlanSelectActivatedSpot(%1, %2, %3);
		);
	</action>
	
	<action name="floorPlanSelectActivatedSpot">
		js(invokePluginFunction(floorPlan, selectSpot, %1, %2, %3));

		if(%1 !== "",
			if(scene[get(xml.scene)].planar,
				js(invokePluginFunction(floorPlan, hideRadar));
			,
				js(invokePluginFunction(floorPlan, changeDirection, get(xml.scene), get(view.hlookat), get(view.hfov)));
			);
		);
	</action>
	
	<action name="floorPlanDeactivateSpot">
		set(ptplugin[floorPlan].floorplanItems.selectedSpot, "");
		
		js(invokePluginFunction(floorPlan, unselectSpot));
	</action>
	
	<action name="floorPlanActivateDefaultSpot">
		set(floorPlanFloorPlanLoaded, true);
		
		set(floorPlanSpotFound, "");
		set(floorPlanSpotScene, "");
		set(floorPlanItemFound, "");
		set(floorPlanItemSearch, true);
		set(floorPlanSpotSearchActivated, true);
		set(floorPlanSpotSearchContinue, true);
		
		
		for(set(defaultfloorplaniteminc,0), defaultfloorplaniteminc LT ptplugin[floorPlan].floorplanItems.floorplanItem.count , inc(defaultfloorplaniteminc),
                        if(floorPlanSpotSearchActivated == true,
				
				if(ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].groupName == scene[get(xml.scene)].group,
					set(floorPlanItemFound, get(ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].name));
					set(ptplugin[floorPlan].floorplanItems.selectedItem, get(ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].name));
					set(floorPlanItemSearch, false);
				,
					
					if(floorPlanItemFound == "",
						set(floorPlanItemFound, get(ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].name));
					);
				);
			);
			if(floorPlanSpotSearchActivated == true,
                                for(set(defaultspotinc,0), defaultspotinc LT ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].spot.count , inc(defaultspotinc),
                                        if(ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].spot[get(defaultspotinc)].isScene == true,
					
						if(floorPlanSpotSearchContinue == true,
							if(ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].spot[get(defaultspotinc)].scene == xml.scene,
								set(floorPlanSpotFound, get(ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].spot[get(defaultspotinc)].name));
								set(floorPlanSpotScene, get(ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].spot[get(defaultspotinc)].scene));
								set(ptplugin[floorPlan].floorplanItems.selectedItem, get(ptplugin[floorPlan].floorplanItems.floorplanItem[get(defaultfloorplaniteminc)].name));
								if(floorPlanItemSearch == false,
									set(floorPlanSpotSearchContinue, false);
									set(floorPlanSpotSearchActivated, false);
								);
							);
						);
					);
					
				);
			);
		);
		
		if(floorPlanSpotFound == "",
			
			
			floorPlanDeactivateSpot();
			
			
			set(ptplugin[floorPlan].floorplanItems.selectedItem, get(floorPlanItemFound));
			
			
			ifnot(ptplugin[floorPlan].floorplanItems.selectedItem == "",
				floorPlanActivateSpot("", get(ptplugin[floorPlan].floorplanItems.selectedItem), "");
			);
		,
			
			floorPlanActivateSpot(get(floorPlanSpotFound), get(ptplugin[floorPlan].floorplanItems.selectedItem), get(floorPlanSpotScene));
		);
	</action>
	
	<action name="floorPlanChangeTitle">
		js(invokePluginFunction(floorPlan, changeTitle, %1));
	</action>
	
	<ptplugin name="floorPlanArea" engine="kolorArea">
	<settings>
		<option name="position" value="bottomleft" type="string" />
		<option name="start_position" value="left" type="string" />
		<option name="margin_x" value="0" type="int" />
		<option name="margin_y" value="0" type="int" />
		<option name="display_title" value="false" type="bool" />
		<option name="title_font" value="Verdana" type="string" />
		<option name="title_size" value="14" type="int" />
		<option name="title_weight" value="normal" type="string" />
		<option name="title_decoration" value="normal" type="string" />
		<option name="title_color" value="000000" type="string" />
		<option name="close_displayed" value="false" type="bool" />
		<option name="close_text" value="floorPlandisplay_close_text" type="string" />

		<option name="background_color" value="f2f2f2" type="string" />
		<option name="background_alpha" value="0" type="float" />
		<option name="overlay_displayed" value="false" type="bool" />
		<option name="overlay_color" value="000000" type="string" />
		<option name="overlay_alpha" value="0.50000762951094835" type="float" />

		<option name="padding" value="15" type="int" />
		<option name="topleft_radius" value="0" type="int" />
		<option name="topright_radius" value="0" type="int" />
		<option name="bottomleft_radius" value="0" type="int" />
		<option name="bottomright_radius" value="0" type="int" />
		<option name="area_border_width" value="0" type="int" />
		<option name="area_border_color" value="f2f2f2" type="string" />
		<option name="area_border_alpha" value="0" type="float" />
		<option name="area_width" value="30" type="int" />
		<option name="area_height" value="45" type="int" />
		<option name="area_width_unit" value="percent" type="string" />
		<option name="area_height_unit" value="percent" type="string" />
		<option name="animation" value="true" type="bool" />
		<option name="animation_duration" value="500" type="int" />
		<option name="close_on_click" value="false" type="bool" />
		<option name="refresh_content" value="false" type="bool" />
		<option name="open_callback" value="addKolorFloorPlan('floorPlan', 'floorPlanArea_floorplanDIV');" type="string" />
		<option name="close_callback" value="invokeKrFunction('closeKolorAreaCallback_floorPlanArea')" type="string" />
		<option name="zorder" value="8" type="int" />
		<option name="use_i18n" value="true" type="bool" />
	</settings>
	</ptplugin>
	
	<action name="kolorAreaJsReady_floorPlanArea">
		set(ptplugin[floorPlanArea].jsready, true);

	</action>
	
	<action name="openKolorArea_floorPlanArea">
		ifnot(ptplugin[floorPlanArea].isOpen,
			set(ptplugin[floorPlanArea].isOpen, true);
			
			js(showKolorArea(floorPlanArea, &lt;div id="floorPlanArea_floorplanDIV"&gt;&lt;/div&gt;));
			
			if(ptplugin[floorPlan].floorplanItems.selectedSpot != "",
				floorPlanSelectActivatedSpot(get(ptplugin[floorPlan].floorplanItems.selectedSpot), get(ptplugin[floorPlan].floorplanItems.selectedItem), get(ptplugin[floorPlan].floorplanItems.selectedSpotScene));
			);
			events.dispatch(onremovedisplayedobject);
		);
	</action>
	
	<action name="closeKolorArea_floorPlanArea">
		if(ptplugin[floorPlanArea].isOpen,
			js(invokePluginFunction(floorPlanArea, closeKolorArea));
		);
	</action>
	
	<action name="toggleKolorArea_floorPlanArea">
		if(ptplugin[floorPlanArea].isOpen,
			closeKolorArea_floorPlanArea();
		,
			openKolorArea_floorPlanArea();
		);
	</action>
	
	<action name="closeKolorAreaCallback_floorPlanArea">
		set(ptplugin[floorPlanArea].isOpen, false);hideFloorplan();

	</action>
	
	<action name="changeTitleKolorArea_floorPlanArea">
		js(invokePluginFunction(floorPlanArea, changeTitle, %1));
	</action>
	
	<action name="showKolorArea_floorPlanArea">
		set(ptplugin[floorPlanArea].isOpen, true);
		
		js(invokePluginFunction(floorPlanArea, showKolorArea, %1));
		events.dispatch(onremovedisplayedobject);
	</action>
		
	<action name="hideKolorArea_floorPlanArea">
		
		set(ptplugin[floorPlanArea].isOpen, false);
		js(invokePluginFunction(floorPlanArea, hideKolorArea, %1));
	</action>
	
	<events name="kolorAreaEvents_floorPlanArea" 
		keep="true"
	/>
	

<!-- ********* -->
<!-- Gyroscope -->
<!-- ********* -->


<plugin name="gyroscope"
        url="%FIRSTXML%/graphics/gyro2.js"
        keep="true"
        devices="no-desktop.and.html5"

        onunavailable="checkGyroUnavailable();"
        sensor_mode="1"
        friction="auto"
        autocalibration="true"
        touch_mode="full"
        onavailable="delayedcall(1, checkGyroAvailability(););"
        enabled="false"
        activated="false"
        />

<events name="gyroscopeEvents" onnewpano="planarGyroscopeTest();" keep="true" />

<action name="planarGyroscopeTest">
  if(plugin[gyroscope],
    if(scene[get(xml.scene)].full360,
      set(sceneisfull360, false);
      sub(viewhfov, panoview.hmax, panoview.hmin);
      if (viewhfov == 360,
        sub(viewvfov, panoview.vmax, panoview.vmin);
        if (viewvfov == 180,
          set(sceneisfull360, true);
        );
      );
      if (sceneisfull360,
        set(plugin[gyroscope].camroll, true);
      ,
        set(plugin[gyroscope].camroll, false);
      );
    ,
      set(plugin[gyroscope].camroll, false);
    );
  );
</action>

<action name="changeGyroscopeState">
  if(plugin[gyroscope],
    if (plugin[gyroscope].isavailable,
      if(%1,
        set(plugin[gyroscope].activated,true);
      ,
        set(plugin[gyroscope].activated,false);
      );
      if (%1 != plugin[gyroscope].enabled,
        if(plugin[gyroscope].activated,
          switch(plugin[gyroscope].enabled);
        ,
          set(plugin[gyroscope].enabled, false);
        );
        if (plugin[gyroscope].enabled, events.dispatch(ongyroscopeon);, events.dispatch(ongyroscopeoff););
      );
    );
  );
</action>

<action name="checkGyroAvailability">
  if(plugin[gyroscope],
    if (plugin[gyroscope].isavailable,
      
      set(sceneisfull360, false);
      if (scene[get(xml.scene)].full360,
        sub(viewhfov, panoview.hmax, panoview.hmin);
        if (viewhfov == 360,
          sub(viewvfov, panoview.vmax, panoview.vmin);
          if (viewvfov == 180,
            set(sceneisfull360, true);
          );
        );
      );
      set(delaythegyrocheck, false);
      if (sceneisfull360 AND tour_firstlittleplanet, set(delaythegyrocheck, true));

      ifnot(delaythegyrocheck,
        switch(plugin[gyroscope].enabled);
        set(plugin[gyroscope].activated,true);
        set(tour_gyroscopedevices, true);
        events.dispatch(ongyroscopeavailable);
      ,
        delayedcall(1, checkGyroAvailability(););
      );
    ,
      set(tour_gyroscopedevices, false);
    );
    if (plugin[gyroscope].enabled, events.dispatch(ongyroscopeon);, events.dispatch(ongyroscopeoff););
  ,
    checkGyroUnavailable();
  );
</action>

<action name="checkGyroUnavailable">
  set(plugin[gyroscope].activated, false);
  set(plugin[gyroscope].enabled, false);
  set(tour_gyroscopedevices, false);
  events.dispatch(ongyroscopeunavailable);
</action>

<!-- ********** -->
<!-- Gyro Button -->
<!-- id : gyroButton -->
<!-- ********** -->
  <!-- EMPTY GYRO BUTTON : no image file -->
  <!-- Fullscreen Management -->
  <action name="exitFullScreen" devices="fullscreensupport">set(tour_fullscreen,false);js(setFullscreen(false));</action>
  <action name="enterFullScreen" devices="fullscreensupport">set(tour_fullscreen,true);js(setFullscreen(true));</action>
  <action name="switchFullScreen">if(tour_fullscreen,exitFullScreen();,enterFullScreen(););</action>

  
  <events name="krpanoExitFullscreenEvent"
    onexitfullscreen="if(tour_fullscreen,exitFullScreenChangeEvent(););"
    keep="true" />

  <action name="exitFullScreenChangeEvent" devices="fullscreensupport">set(tour_fullscreen,false);events.dispatch(onexitfullscreen);</action>
  <action name="enterFullScreenChangeEvent" devices="fullscreensupport">set(tour_fullscreen,true);events.dispatch(onenterfullscreen);</action>
  <action name="exitFullScreenFallback">set(fullscreen,false);</action>
  <action name="enterFullScreenFallback">set(fullscreen,true);</action>
  
  <action name="resizeFullScreenEvent">delayedcall(0,updatescreen(););</action>

<action name="viewControlZoomIn">
	if(%1,
		if(%2,
			if(%2 LT view.fovmin,
				zoomto(get(view.fovmin));
			,
				if(%2 LT view.fov,
					zoomto(%2);
				);
			);
		,
			set(fov_moveforce, -1);
			delayedcall(0.1, viewControlZoomStop());
		);
	,
		set(fov_moveforce, -1);
	);
</action>
<action name="viewControlZoomOut">
	if(%1,
		if(%2,
			if(%2 GT view.fovmax,
				zoomto(get(view.fovmax));
			,
				if(%2 GT view.fov,
					zoomto(%2);
				);
			);
		,
			set(fov_moveforce, +1);
			delayedcall(0.1, viewControlZoomStop());
		);
	,
		set(fov_moveforce, +1);
	);
</action>
<action name="viewControlZoomStop">
	set(fov_moveforce, 0);
</action>

  <!-- Hide / Show Controls -->
  <action name="hideTourControls">set(tour_displaycontrols, false);events.dispatch(hidetourcontrols);</action>
  <action name="showTourControls">set(tour_displaycontrols, true); events.dispatch(showtourcontrols);</action>


  <!-- FLOORPLAN -->
  <action name="hideFloorplan">set(tour_displayfloorplan, false);events.dispatch(onhidetourfloorplan);</action>
  <action name="showFloorplan">set(tour_displayfloorplan, true); events.dispatch(onshowtourfloorplan);</action>


	<!-- WebVR plugin for VR availability tests -->

	<plugin name="ptpvrmode" devices="html5" keep="true"
		url="%FIRSTXML%/graphics/webvr.js"
		mobilevr_support="true"
		mobilevr_fake_support="false"
		vr_cursor=""
		vr_cursor_enabled="false"
		onavailable="delayedcall(1, checkVrAvailability(););"
		onunavailable="checkVrUnavailable();"
		/>
	<action name="checkVrAvailability">
		if(plugin[ptpvrmode],
			if (plugin[ptpvrmode].isavailable,
				set(tour_vrdevices, true);
				events.dispatch(onvravailable);
			,
				set(tour_vrdevices, false);
			);
		,
			checkVrUnavailable();
		);
	</action>
	<action name="checkVrUnavailable">
		set(tour_vrdevices, false);
		events.dispatch(onvrunavailable);
	</action>
<action name="viewControlMoveUp">
	if(%1,
		if(%2,
			set(isfullvertical, false);
			ifnot(scene[get(xml.scene)].planar,
				sub(viewvfov, panoview.vmax, panoview.vmin);
				if (viewvfov == 180,
					set(isfullvertical, true);
				);
			);
			if(isfullvertical == false AND calc(view.vlookat-%2) LT view.vlookatmin,
				moveto(get(view.hlookat), get(view.vlookatmin));
			,
				moveto(get(view.hlookat), calc(view.vlookat-%2));
			);
		,
			set(vlookat_moveforce, -1);
			delayedcall(0.1, viewControlMoveVertStop());
		);
	,
		set(vlookat_moveforce, -1);
	);
</action>
<action name="viewControlMoveDown">
	if(%1,
		if(%2,
			set(isfullvertical, false);
			ifnot(scene[get(xml.scene)].planar,
				sub(viewvfov, panoview.vmax, panoview.vmin);
				if (viewvfov == 180,
					set(isfullvertical, true);
				);
			);
			if(sceneisfull360 == false AND calc(view.vlookat+%2) GT view.vlookatmax,
				moveto(get(view.hlookat), get(view.vlookatmax));
			,
				moveto(get(view.hlookat), calc(view.vlookat+%2));
			);
		,
			set(vlookat_moveforce, +1);
			delayedcall(0.1, viewControlMoveVertStop());
		);
	,
		set(vlookat_moveforce, +1);
	);
</action>
<action name="viewControlMoveLeft">
	if(%1,
		if(%2,
			set(isfullhorizontal, false);
			ifnot(scene[get(xml.scene)].planar,
				sub(viewhfov, panoview.hmax, panoview.hmin);
				if (viewhfov == 360,
					set(isfullhorizontal, true);
				);
			);
			if(isfullhorizontal == false AND calc(view.hlookat-%2) LT view.hlookatmin,
				moveto(get(view.hlookatmin), get(view.vlookat));
			,
				moveto(calc(view.hlookat-%2), get(view.vlookat));
			);
		,
			set(hlookat_moveforce, -1);
			delayedcall(0.1, viewControlMoveHoriStop());
		);
	,
		set(hlookat_moveforce, -1);
	);
</action>
<action name="viewControlMoveRight">
	if(%1,
		if(%2,
			set(isfullhorizontal, false);
			ifnot(scene[get(xml.scene)].planar,
				sub(viewhfov, panoview.hmax, panoview.hmin);
				if (viewhfov == 360,
					set(isfullhorizontal, true);
				);
			);
			if(isfullhorizontal == false AND calc(view.hlookat+%2) GT view.hlookatmax,
				moveto(get(view.hlookatmax), get(view.vlookat));
			,
				moveto(calc(view.hlookat+%2), get(view.vlookat));
			);
		,
			set(hlookat_moveforce, +1);
			delayedcall(0.1, viewControlMoveHoriStop());
			
		);
	,
		set(hlookat_moveforce, +1);
	);
</action>
<action name="viewControlMoveHoriStop">
	set(hlookat_moveforce, 0);
</action>
<action name="viewControlMoveVertStop">
	set(vlookat_moveforce, 0);
</action>

  <action name="enableGyroscope">
    changeGyroscopeState(true);
  </action>
  <action name="disableGyroscope">
    changeGyroscopeState(false);
  </action>


</krpano>